| 1 | $Id: History,v 1.90 2010/06/08 06:34:43 stesting Exp $
|
|---|
| 2 | -------------------------------------------------------------------
|
|---|
| 3 |
|
|---|
| 4 | ==========================================================
|
|---|
| 5 | Geant4 - an Object-Oriented Toolkit for Physics Simulation
|
|---|
| 6 | ==========================================================
|
|---|
| 7 |
|
|---|
| 8 | History file for hadronic/models/cascade
|
|---|
| 9 | ----------------------------------------
|
|---|
| 10 |
|
|---|
| 11 | This file should be used to summarize modifications introduced in the
|
|---|
| 12 | code and to keep track of all tags.
|
|---|
| 13 |
|
|---|
| 14 | ---------------------------------------------------------------
|
|---|
| 15 | * Please list in reverse chronological order (last date on top)
|
|---|
| 16 | ---------------------------------------------------------------
|
|---|
| 17 |
|
|---|
| 18 | 08 June 2010 Gunter Folger (hadr-casc-V09-03-42)
|
|---|
| 19 | - trivial fix for compiler warning on gcc43 on empty body in for(...) in
|
|---|
| 20 | cascade/include/G4CascadeInterpolator.icc:67
|
|---|
| 21 |
|
|---|
| 22 | 01 June 2010 Michael Kelsey (hadr-casc-V09-03-41)
|
|---|
| 23 | -------------------------------------------------
|
|---|
| 24 | - paraMaker.cc: Fix vector initialization for Windows crash.
|
|---|
| 25 |
|
|---|
| 26 | 26 May 2010 Dennis Wright (hadr-casc-V09-03-40)
|
|---|
| 27 | -----------------------------------------------
|
|---|
| 28 | - G4NucleiModel: remove conversion to fm, and conversion of cross
|
|---|
| 29 | sections to fm**2
|
|---|
| 30 |
|
|---|
| 31 | 21 May 2010 Michael Kelsey (hadr-casc-V09-03-39)
|
|---|
| 32 | ------------------------------------------------
|
|---|
| 33 | Final tag for inclusion in GEANT 4.9.4-beta. Will be validated internal and
|
|---|
| 34 | included in global Hadronics tag.
|
|---|
| 35 |
|
|---|
| 36 | - G4CascadeSampler.icc: Activate time-saving checks on single bins.
|
|---|
| 37 | - G4ElementaryParticleCollider.cc: Remove special case for nucleon elastic
|
|---|
| 38 | scattering.
|
|---|
| 39 |
|
|---|
| 40 | 21 May 2010 Michael Kelsey (kelsey-20100521c)
|
|---|
| 41 | ---------------------------------------------
|
|---|
| 42 | - G4CascadeInterface, G4PreCompoundCascadeInterface, G4InuclEvaporation:
|
|---|
| 43 | Simplify code: fetch G4DynamicParticle out of outgoing G4InuclParticles,
|
|---|
| 44 | rather than creating new ones. Remove all of the *Collider data members
|
|---|
| 45 | (instantiated within G4InuclCollider). Move final state rotations to
|
|---|
| 46 | G4CollisionOutput.
|
|---|
| 47 |
|
|---|
| 48 | - G4InuclParticle: Provide accessor to return G4DynamicParticle.
|
|---|
| 49 |
|
|---|
| 50 | - G4CollisionOutput: Add function to apply LorentzRotation to both lists;
|
|---|
| 51 | used by G4CascadeInterface.
|
|---|
| 52 |
|
|---|
| 53 | - G4ElementaryParticleCollider: Avoid memory churn with G4LorentzVector
|
|---|
| 54 | temporaries.
|
|---|
| 55 |
|
|---|
| 56 | 21 May 2010 Michael Kelsey (kelsey-20100521b)
|
|---|
| 57 | ---------------------------------------------
|
|---|
| 58 | - G4VCascadeCollider: New base class for all Colliders. Carries
|
|---|
| 59 | verboseLevel data member and set-function. ::collide() is pure virtual.
|
|---|
| 60 | Additional protected member functions will be defined to include all code
|
|---|
| 61 | shared across multiple Colliders.
|
|---|
| 62 |
|
|---|
| 63 | - Migrate all of the "Collider" factories to use new base class, removing
|
|---|
| 64 | common member functions, and replace passed-in sibling colliders with
|
|---|
| 65 | local data members (pointers for now). Since none of these classes have
|
|---|
| 66 | persistent (state preserving) data members, the cost of more than one
|
|---|
| 67 | instantiation is minimal.
|
|---|
| 68 |
|
|---|
| 69 | G4BigBanger
|
|---|
| 70 | G4ElementaryParticleCollider
|
|---|
| 71 | G4EquilibriumEvaporator
|
|---|
| 72 | G4EvaporationInuclCollider
|
|---|
| 73 | G4Fissioner
|
|---|
| 74 | G4IntraNucleiCascader
|
|---|
| 75 | G4InuclCollider
|
|---|
| 76 | G4NonEquilibriumEvaporator
|
|---|
| 77 | G4PreCompoundInuclCollider
|
|---|
| 78 |
|
|---|
| 79 | - G4CascadeInterface.cc, G4InuclEvaporation.cc,
|
|---|
| 80 | G4PreCompoundCascadeInterface.cc: Remove siblings from constructors for
|
|---|
| 81 | the Colliders.
|
|---|
| 82 |
|
|---|
| 83 | - G4InteractionCase.hh: Eliminate unnecessary copying of std::pair<>'s, use
|
|---|
| 84 | initializers in ctors, add clear() function to reset to 0-0-0. Move
|
|---|
| 85 | evaluation of bullet vs. target to new set() function, replacing separate
|
|---|
| 86 | bulletTargetSetter() in the colliders. Add boolean accessors to avoid
|
|---|
| 87 | hard-coding inter_case values. Change code numbers so nucleus collisions
|
|---|
| 88 | are negative, and positive codes refer to the "is" or "rtype" numbers.
|
|---|
| 89 |
|
|---|
| 90 | - G4ElementaryParticleCollider.cc: Use G4InteractionCase to compute "is",
|
|---|
| 91 | instead of hardwiring the meaning.
|
|---|
| 92 |
|
|---|
| 93 | - G4Collider.hh: Remove empty and never-used file.
|
|---|
| 94 |
|
|---|
| 95 | - G4EvaporationInuclCollider.cc: Eliminate unnecessary creation of
|
|---|
| 96 | duplicate G4InuclNuclei: pass input through to G4EquilibriumEvaporator.
|
|---|
| 97 |
|
|---|
| 98 | - G4LorentzConvertor: Add interfaces to pass G4InuclParticles directly.
|
|---|
| 99 |
|
|---|
| 100 | 21 May 2010 Michael Kelsey (kelsey-20100521a)
|
|---|
| 101 | ---------------------------------------------
|
|---|
| 102 | Replace hand-coded interpolation of arrays with use of G4CascadeInterpolator.
|
|---|
| 103 | In all cases, local arrays are replaced with static const, and the
|
|---|
| 104 | interpolator object itself is declared static, to reduce memory churn.
|
|---|
| 105 |
|
|---|
| 106 | G4NucleiModel::totalCrossSection()
|
|---|
| 107 | G4EquilibriumEvaporator::getQF()
|
|---|
| 108 | G4InuclSpecialFunctions::paraMaker[Truncated]() (in paraMaker.cc)
|
|---|
| 109 |
|
|---|
| 110 | - G4CascadSpecialFunctions: Remove. totalCrossSection() redundant with
|
|---|
| 111 | G4NucleiModel. Move absorptionCrossSection() to G4NucleiModel.
|
|---|
| 112 |
|
|---|
| 113 | - G4CascadeInterpolator.icc: Bug fix to catch special case of exact upper
|
|---|
| 114 | bin edge (occurs when !doExtrapolation). If index == last + 0., just
|
|---|
| 115 | return upper edge value, without calculation.
|
|---|
| 116 |
|
|---|
| 117 | - G4NucleiModel.cc: Use G4Cascade{Pi*}Channel and G4Cascade{NN,NP,PP}Channel
|
|---|
| 118 | classes to get total cross-sections for pi-N and N-N scattering. Arrays
|
|---|
| 119 | for kaon and hyperon scattering should be migrated as well, once binning
|
|---|
| 120 | is resolved. Move absorptionCrossSection() here from SpecialFunctions.
|
|---|
| 121 |
|
|---|
| 122 | 20 May 2010 Michael Kelsey (kelsey-20100521)
|
|---|
| 123 | --------------------------------------------
|
|---|
| 124 | - G4CascadeInterpolator.icc: Two bug fixes involving values at array edges.
|
|---|
| 125 |
|
|---|
| 126 | 19 May 2010 Michael Kelsey, Dennis Wright
|
|---|
| 127 | -----------------------------------------
|
|---|
| 128 | - G4BertiniData.hh,.cc: Remove unused and unnecessary class.
|
|---|
| 129 | - G4NucleiModel.cc: convert nuclear radii to fm and cross sections to
|
|---|
| 130 | fm**2. Use six-zone model for A > 99, and make alpha a 1-zone
|
|---|
| 131 | nucleus.
|
|---|
| 132 | - G4CascadSpecialFunctions: convert pion absorption cross sections from
|
|---|
| 133 | mb to fm**2, correct spelling of method absorptionCrossSection
|
|---|
| 134 |
|
|---|
| 135 | 17 May 2010 Michael Kelsey (hadr-casc-V09-03-38)
|
|---|
| 136 | ------------------------------------------------
|
|---|
| 137 | - paraMaker.cc (G4InuclSpecialFunctions::paraMaker[Truncated]): Upper edge
|
|---|
| 138 | of interpolation array not properly handled. Should be "if (Z >= 70.0)".
|
|---|
| 139 | This affects G4NonEquilibriumEvaporator output.
|
|---|
| 140 |
|
|---|
| 141 | 17 May 2010 Michael Kelsey (hadr-casc-V09-03-37)
|
|---|
| 142 | ------------------------------------------------
|
|---|
| 143 | Bug fixes for compiler warnings (not seen on MacOSX, even with g++ -Wall)
|
|---|
| 144 |
|
|---|
| 145 | - G4CascadeData.hh: Dummy arrays needed double-braces for initialization.
|
|---|
| 146 |
|
|---|
| 147 | - G4CascadeInterpolator.icc: Extraneous decimal point in "for (i=0.;".
|
|---|
| 148 |
|
|---|
| 149 | - G4CascadeKzeroBarNChannel.cc: Left three "old" arrays in place during
|
|---|
| 150 | conversion.
|
|---|
| 151 |
|
|---|
| 152 | 14 May 2010 Michael Kelsey (hadr-casc-V09-03-36)
|
|---|
| 153 | ------------------------------------------------
|
|---|
| 154 | Remove obsolete files following reorganization of two-body scattering
|
|---|
| 155 | lookup tables.
|
|---|
| 156 |
|
|---|
| 157 | G4CascadeElasticInterface.hh,.cc
|
|---|
| 158 | G4ElasticCascadeInterface.hh,.cc
|
|---|
| 159 | G4FinalStateSampler.hh,.cc
|
|---|
| 160 | G4NucleonSampler.hh,.cc
|
|---|
| 161 | G4PionSampler.hh,.cc
|
|---|
| 162 |
|
|---|
| 163 | - G4CascadeChannel.hh,.cc: All functionality removed, replaced with
|
|---|
| 164 | namespace containing only getQnums and CheckQnums validation functions.
|
|---|
| 165 |
|
|---|
| 166 | 14 May 2010 Michael Kelsey (hadr-casc-V09-03-35)
|
|---|
| 167 | ------------------------------------------------
|
|---|
| 168 | Replace independent parallel samplers with templated base class and single
|
|---|
| 169 | implementation. This completes the reorganization of the channel tables.
|
|---|
| 170 |
|
|---|
| 171 | - G4CascadeSampler: Redefine as templated base, taking binning array as
|
|---|
| 172 | constructor argument. Move implementation file from .cc to .icc.
|
|---|
| 173 | NOTE: G4CascadeSampler.cc is removed, since not consistent with new .hh.
|
|---|
| 174 |
|
|---|
| 175 | - G4PionNucSampler: Subclass of G4CascadeSampler<30>, replaces
|
|---|
| 176 | G4FinalStateSampler, using bins array from there.
|
|---|
| 177 |
|
|---|
| 178 | - G4KaonNucSampler: Sublcass of G4CascadeSampler<31>, replaces previous
|
|---|
| 179 | G4CascadeSampler, using bins array from there.
|
|---|
| 180 |
|
|---|
| 181 | - G4Cascade*Channel.hh: Change all typedefs to pass appropriate of two new
|
|---|
| 182 | samplers in template.
|
|---|
| 183 |
|
|---|
| 184 | - G4ElementaryParticleCollider.cc: Replace long "if (is==)"-cascades with
|
|---|
| 185 | switch blocks. Move all getOutgoing calls (for pions and nucleons) into
|
|---|
| 186 | one function, and call it from outside multiplicity checks. Use
|
|---|
| 187 | G4CascadeInterpolator for angular distributions. Set modelID=3 in all
|
|---|
| 188 | G4InuclParticle constructions.
|
|---|
| 189 |
|
|---|
| 190 | 14 May 2010 Michael Kelsey (hadr-casc-V09-03-34)
|
|---|
| 191 | ------------------------------------------------
|
|---|
| 192 | Extract lookup tables from G4PionSampler and G4NucleonSampler into
|
|---|
| 193 | individual "classes" defined and initialized with G4CascadeData.
|
|---|
| 194 |
|
|---|
| 195 | - G4CascadePi{Plus,Minus,Zero}{P,N}Channel.hh: Six new typedefs defined as
|
|---|
| 196 | with the existing G4CascadeXXXChannel, to replace G4PionSampler.
|
|---|
| 197 |
|
|---|
| 198 | - G4CascadeT33piNChannel.cc: Lookup tables for both PiPlusP and PiMinusN,
|
|---|
| 199 | implemented as with existing G4CascadeXXXChannel, from G4PionSampler.cc.
|
|---|
| 200 |
|
|---|
| 201 | - G4CascadeT31piNChannel.cc: Lookup tables for both PiMinusP and PiPlusN,
|
|---|
| 202 | implemented as with existing G4CascadeXXXChannel, from G4PionSampler.cc
|
|---|
| 203 |
|
|---|
| 204 | - G4CascadeT11pizNChannel.cc: Lookup tables for both PiZeroP and PiZeroN,
|
|---|
| 205 | implemented as with existing G4CascadeXXXChannel, from G4PionSampler.cc
|
|---|
| 206 |
|
|---|
| 207 | - G4Cascade{PP,NP,NN}Channel.hh: Three new typedefs defined as with the
|
|---|
| 208 | existing G4CascadeXXXChannel, to replace G4NucleonSampler.
|
|---|
| 209 |
|
|---|
| 210 | - G4CascadeT1NNChannel.cc: Lookup tables for both p-p and n-n scattering,
|
|---|
| 211 | implemented as with existing G4CascadeXXXChannel, from G4NucleonSampler.cc
|
|---|
| 212 |
|
|---|
| 213 | - G4CascadeT0npChannel.cc: Lookup tables for p-n scattering, implemented as
|
|---|
| 214 | with existing G4CascadeXXXChannel, from G4NucleonSampler.cc
|
|---|
| 215 |
|
|---|
| 216 | - G4CascadeFunctions.hh, .icc: Pass std::vector as non-const argument to
|
|---|
| 217 | getOutgoingParticleTypes() instead of returning internal buffer.
|
|---|
| 218 |
|
|---|
| 219 | - G4CascadeSampler.cc, G4FinalStateSampler.cc: Add some checks in
|
|---|
| 220 | findFinalStateIndex, fillSigmaBuffer, and sampleFlat(), such that
|
|---|
| 221 | single-entry ranges don't go through the analysis, just return index 0.
|
|---|
| 222 |
|
|---|
| 223 | - G4ElementaryParticleCollider.cc: Follow change to getOutgoingParticleTypes()
|
|---|
| 224 | in generateStrangeChannelPartTypes(). Replace all uses of G4PionSampler
|
|---|
| 225 | and G4NucleonSampler with new channel "classes".
|
|---|
| 226 |
|
|---|
| 227 | 14 May 2010 Michael Kelsey (hadr-casc-V09-03-33)
|
|---|
| 228 | ------------------------------------------------
|
|---|
| 229 | Continue consolidation of two-body collision lookup tables. Unify
|
|---|
| 230 | interfaces between pion/nucleon and kaon/hyperon samplers.
|
|---|
| 231 |
|
|---|
| 232 | - G4CascadeData: Many changes to support use as data class for both
|
|---|
| 233 | kaon/hyperon and pion/nucleon tables (migration will be next tag):
|
|---|
| 234 |
|
|---|
| 235 | 1) Add new first argument to template with number of bins in energy
|
|---|
| 236 | interpolation. This replaces the (temporary) use of
|
|---|
| 237 | G4CascadeSampler::energyBins within the class definition.
|
|---|
| 238 |
|
|---|
| 239 | 2) Add two additional template arguments, N8 and N9, with default values
|
|---|
| 240 | of zero. These will be used by the pion/nucleon tables, but not by the
|
|---|
| 241 | existing kaon/hyperon tables.
|
|---|
| 242 |
|
|---|
| 243 | 3) Define additional arrays for 8- and 9-body final states, using
|
|---|
| 244 | conditional dimensioning (e.g., if N8==0, use [1]). Define second
|
|---|
| 245 | 9-body constructor to accept and initialize the new arrays.
|
|---|
| 246 |
|
|---|
| 247 | 4) Eliminate static intialization of index[], moving it into
|
|---|
| 248 | initialize(). Template specialization can't be used with data!
|
|---|
| 249 |
|
|---|
| 250 | 5) Add separate "sum" (summed N-body cross-sections) and "tot" arrays
|
|---|
| 251 | (measured inclusive xsec). Latter is a const-ref, initialized to "sum"
|
|---|
| 252 | if not provided as ctor argument, with two new ctors as needed.
|
|---|
| 253 |
|
|---|
| 254 | 6) Add accessor to return maximum multiplicity (NM+1).
|
|---|
| 255 |
|
|---|
| 256 | - G4CascadeFunctions.hh: Add second template argument to specify which
|
|---|
| 257 | "final state sampler" is the base class. Use both T::data.tot and
|
|---|
| 258 | T::data.sum in GetMultiplicity(), to support sum/tot comparisons in
|
|---|
| 259 | pion/nucleon channels. Extend GetOutputParticleTypes() to support up to
|
|---|
| 260 | multiplicity 9.
|
|---|
| 261 |
|
|---|
| 262 | - G4CascadeFunctions.icc: Implementations of template class functions.
|
|---|
| 263 |
|
|---|
| 264 | - G4CascadeXXXChannel.hh: Add "31," as initial template argument for Data.
|
|---|
| 265 | Add G4CascadeSampler as second template argument in G4CascadeXXXChannel
|
|---|
| 266 | typedef.
|
|---|
| 267 |
|
|---|
| 268 |
|
|---|
| 269 | 14 May 2010 Michael Kelsey (hadr-casc-V09-03-32)
|
|---|
| 270 | ------------------------------------------------
|
|---|
| 271 | Continue revisions to two-body collision lookup tables. Make the kaon and
|
|---|
| 272 | hyperon channels compatible with the pion/nucleon samplers, before the next
|
|---|
| 273 | stage of unifying the structure.
|
|---|
| 274 |
|
|---|
| 275 | - G4CascadeSampler: NEW class, parallel to G4FinalStateSampler but with a
|
|---|
| 276 | different energy binning. Used as base class to G4CascadeFunctions<T>,
|
|---|
| 277 | from which the cross-section and other arrays are passed. Implement
|
|---|
| 278 | findMultiplicity (cf. G4CascadeFunctions::getMultiplicity) to return the
|
|---|
| 279 | true value, not the array index.
|
|---|
| 280 |
|
|---|
| 281 | This class replaces functionality of G4CascadeChannel, which is redundant.
|
|---|
| 282 |
|
|---|
| 283 | - G4CascadeChannel: Remove all interpolation code, leaving only getQnums().
|
|---|
| 284 |
|
|---|
| 285 | - G4CascadeFunctions: Inherit from G4CascadeSampler for interpolations,
|
|---|
| 286 | except for final-state extraction (where FS type arrays are dealt with
|
|---|
| 287 | locally, not passed). Public static functions rely on private instantiated
|
|---|
| 288 | version of class to do work, so that G4CascadeSampler gets instantiated.
|
|---|
| 289 |
|
|---|
| 290 | - G4CascadeData: Remove final template argument (total number of indices),
|
|---|
| 291 | as redundant with simple sum of multplicity indices. Use template args to
|
|---|
| 292 | dimension data member arrays (const references), and to statically
|
|---|
| 293 | initialize the start-stop index table. Make large cross-sections table
|
|---|
| 294 | G4double, not G4float. Define ctor to pass in array refs for initialization.
|
|---|
| 295 | Reduce index array to single dimension (start=index[i], stop=index[i+1]).
|
|---|
| 296 |
|
|---|
| 297 | - G4CascadeXXXChannel: All of the initial-state channel "classes"
|
|---|
| 298 | (typedef names) modified to follow G4CascadeData rewrite. In .cc file,
|
|---|
| 299 | the explicit lookup tables are static, and passed by const-ref to
|
|---|
| 300 | G4CascadeData. The "initializer" struct is dropped; with the static
|
|---|
| 301 | "data" object initialized by ctor here.
|
|---|
| 302 |
|
|---|
| 303 | - G4ElementaryParticleCollider.cc: In ::generateMultiplicity(), eliminate
|
|---|
| 304 | extra "+2" and "-2" applied to local "mul" variables. With change above,
|
|---|
| 305 | all functions return return true multiplicity, not array index.
|
|---|
| 306 |
|
|---|
| 307 | - G4FinalStateSampler: Add findFinalStateIndex() function, to make
|
|---|
| 308 | interface match G4CascadeSampler exactly. Reduce index array to single
|
|---|
| 309 | dimension.
|
|---|
| 310 |
|
|---|
| 311 | - G4PionSampler.cc, G4NucleonSampler.cc: Use new findFinalStateIndex()
|
|---|
| 312 | function in GetFSPartTypesXXX() functions. Reduce index array to single
|
|---|
| 313 | dimension (start=index[i], stop=index[i+1]).
|
|---|
| 314 |
|
|---|
| 315 | 14 May 2010 Michael Kelsey (hadr-casc-V09-03-31)
|
|---|
| 316 | ------------------------------------------------
|
|---|
| 317 | Begin revisions to two-body collision lookup tables. This will be a major
|
|---|
| 318 | reorganization, splitting the G4PionSampler and G4NucleonSampler into
|
|---|
| 319 | separate little "classes" (typedefs) for each initial state, in the same way
|
|---|
| 320 | that the kaon and hyperon states are done now. The underlying templated and
|
|---|
| 321 | base classes will be unified across all of the channels.
|
|---|
| 322 |
|
|---|
| 323 | - G4CascadeInterpolator: NEW class to encapsulate interpolation procedure.
|
|---|
| 324 | Uses C-style arrays passed by dimensioned reference, to allow compile-time
|
|---|
| 325 | array bounds checking. Template argument is array dimension, and array of
|
|---|
| 326 | energy bins is saved by ctor. User array to be interpolated is passed as
|
|---|
| 327 | function argument. Last value interpolated, along with result, is saved,
|
|---|
| 328 | to allow fast multiple interpolations.
|
|---|
| 329 |
|
|---|
| 330 | This class is substantially more lightweight than G4PhysicsVector.
|
|---|
| 331 |
|
|---|
| 332 | - G4FinalStateSampler: Replace manual interpolation with G4CascadeInterpolator.
|
|---|
| 333 | Remove redundant sampleFlat(...) function with argument. Rename member
|
|---|
| 334 | functions in anticipation of merging with G4CascadeFunctions.
|
|---|
| 335 |
|
|---|
| 336 | - G4PionSampler.cc, G4NucleonSampler.cc: Follow use of G4CascadeInterpolator
|
|---|
| 337 | above, and drop local caching of interpolation results. Reduce offset
|
|---|
| 338 | list for cross-sections to one dimension (start=index[i], stop=index[i+1]).
|
|---|
| 339 |
|
|---|
| 340 | 11 May 2010 Michael Kelsey (hadr-casc-V09-03-30)
|
|---|
| 341 | ------------------------------------------------
|
|---|
| 342 | Bug fixes in the two-body scattering code.
|
|---|
| 343 |
|
|---|
| 344 | - G4PionSampler.cc, G4NucleonSampler.cc: Fix long-standing bug with offset
|
|---|
| 345 | indices computed for cross-section tables. XXXindex[m][0] (start) and
|
|---|
| 346 | XXXindex[m][1] (stop) are computed in initChannels() as [start,stop]
|
|---|
| 347 | inclusive range (i.e., "for (i=start; i<=stop; i++)"), but used with
|
|---|
| 348 | G4FinalStateSampler::fillSigmaBuffer (and its predecessor code) as
|
|---|
| 349 | [start,stop) exclusive range (i.e., normal C style "for (i=start; i<stop;
|
|---|
| 350 | i++)"). This is fixed by properly setting XXXindex[m-1][1] =
|
|---|
| 351 | XXXindex[m][0], and using the ranges consistently in initChannels().
|
|---|
| 352 |
|
|---|
| 353 | - G4ElementaryParticleCollider.cc: In the six pion-nucleon scatters, the
|
|---|
| 354 | two-body final state is incorrectly tested for charge-exchange. All the
|
|---|
| 355 | if statements check whether "particle_kinds[0]" is the initial nucleon,
|
|---|
| 356 | but the outgoing baryon actually appears in particle_kinds[1]. Replace
|
|---|
| 357 | the individual tests with the use of "finaltype", moved out of the
|
|---|
| 358 | strangeness if-block.
|
|---|
| 359 |
|
|---|
| 360 | 06 May 2010 Michael Kelsey (hadr-casc-V09-03-29, hadr-casc-V09-03-23-01)
|
|---|
| 361 | ------------------------------------------------------------------------
|
|---|
| 362 | - G4Diproton.cc, G4Dineutron.cc, G4UnboundPN.cc: After creating instance
|
|---|
| 363 | of these "internal" particles, remove the pointer from G4ParticleTable.
|
|---|
| 364 | This avoids an issue with the FTFP de-excitation code, which occasionally
|
|---|
| 365 | picks up the diproton and puts it onto a final-state particle list.
|
|---|
| 366 |
|
|---|
| 367 | These three changes, and nothing else, are "backported" on top of -23 for
|
|---|
| 368 | continued validation tests.
|
|---|
| 369 |
|
|---|
| 370 | 30 Apr 2010 Dennis Wright (hadr-casc-V09-03-28)
|
|---|
| 371 | -----------------------------------------------
|
|---|
| 372 | - G4ElementaryParticleCollider:
|
|---|
| 373 | improved pi-nucleon two-body angular distributions, and made
|
|---|
| 374 | sampling of CM angle faster. As a result, the methods
|
|---|
| 375 | getElasticCase and adjustIntervalForElastic were made redundant
|
|---|
| 376 | and removed. Also removed array containing old angular distribution
|
|---|
| 377 | parameters.
|
|---|
| 378 |
|
|---|
| 379 | Now use nucleon-nucleon angular distributions for hyperon-nucleon
|
|---|
| 380 | scattering, and pi-nucleon dsitributions for kaon-nucleon scattering
|
|---|
| 381 | (until specific kaon distributions are added).
|
|---|
| 382 |
|
|---|
| 383 | 29 Apr 2010 Michael Kelsey (hadr-casc-V09-03-27)
|
|---|
| 384 | ------------------------------------------------
|
|---|
| 385 | - G4InuclPartcleNames.hh: Long name "gamma" conflicts with math function.
|
|---|
| 386 | Change back to "photon".
|
|---|
| 387 |
|
|---|
| 388 | - G4InuclElementaryParticle.cc, G4InuclEvaporation.cc,
|
|---|
| 389 | G4NonEquilibriumEvaporator.cc, G4NucleiModel.cc, G4NucleonSampler.cc,
|
|---|
| 390 | G4PionSampler.cc, G4PreCompoundCascadeInterface.cc,
|
|---|
| 391 | G4PreCompoundInuclCollider.cc: Replace "gamma" with "photon".
|
|---|
| 392 |
|
|---|
| 393 | - G4InuclElementaryParticle.hh: Change "photon()" to "isPhoton()" to avoid
|
|---|
| 394 | conflicts with names enum. Use names enum internally as well.
|
|---|
| 395 |
|
|---|
| 396 | - G4ElementaryParticleCollider.cc, G4InuclCollider.cc,
|
|---|
| 397 | G4PreCompoundInuclCollider.cc: Change "photon()" to "isPhoton()".
|
|---|
| 398 |
|
|---|
| 399 | 28 Apr 2010 Michael Kelsey (hadr-casc-V09-03-26)
|
|---|
| 400 | ------------------------------------------------
|
|---|
| 401 | All changes below within "cascade/" subdirectory:
|
|---|
| 402 |
|
|---|
| 403 | - G4InuclParticleNames.hh: Define enums for particle type codes, using both
|
|---|
| 404 | "long" and "short" names copied from existing duplicated enums. One
|
|---|
| 405 | change is that "kp" and "km" are replaced by "kpl" and "kmi" respectively,
|
|---|
| 406 | since "km" conflicts with GEANT4 "kilometers" unit. Deploy in classes:
|
|---|
| 407 |
|
|---|
| 408 | include/G4FinalStateSampler.hh
|
|---|
| 409 | src/G4CascadeElasticInterface.cc
|
|---|
| 410 | src/G4CascadeInterface.cc
|
|---|
| 411 | src/G4ElasticCascadeInterface.cc
|
|---|
| 412 | src/G4ElementaryParticleCollider.cc
|
|---|
| 413 | src/G4InuclElementaryParticle.cc
|
|---|
| 414 | src/G4InuclEvaporation.cc
|
|---|
| 415 | src/G4NucleonSampler.cc
|
|---|
| 416 | src/G4PionSampler.cc
|
|---|
| 417 | src/G4PreCompoundCascadeInterface.cc
|
|---|
| 418 |
|
|---|
| 419 | - G4InuclElementaryParticle.cc: Add Omega- and antinucleon partcles to lists.
|
|---|
| 420 | No code uses these (yet).
|
|---|
| 421 |
|
|---|
| 422 | 24 April 2010 Michael Kelsey (hadr-casc-V09-03-25)
|
|---|
| 423 | --------------------------------------------------
|
|---|
| 424 | Remove redundant classes, G4Ibertini and G4BertiniRegionModel.
|
|---|
| 425 |
|
|---|
| 426 | 21 April 2010 Michael Kelsey (hadr-casc-V09-03-24)
|
|---|
| 427 | --------------------------------------------------
|
|---|
| 428 | - G4NucleiModel.hh,cc: Eliminate last remaining hardwired baryon masses.
|
|---|
| 429 |
|
|---|
| 430 | 18 April 2010 Michael Kelsey (hadr-casc-V09-03-23)
|
|---|
| 431 | --------------------------------------------------
|
|---|
| 432 | Final revisions to access std::vector<particle> via const-references:
|
|---|
| 433 |
|
|---|
| 434 | G4CascadeInterface.cc
|
|---|
| 435 | G4EquilibriumEvaporator.cc
|
|---|
| 436 | G4IBertini.cc
|
|---|
| 437 | G4InuclCollier.cc
|
|---|
| 438 | G4NucleiModel.cc
|
|---|
| 439 | G4PreCompoundCascadeInterface.cc
|
|---|
| 440 |
|
|---|
| 441 | - G4CollisionOutput: Add new function to boost output lists to lab frame.
|
|---|
| 442 |
|
|---|
| 443 | 14 April 2010 Michael Kelsey (hadr-casc-V09-03-22)
|
|---|
| 444 | --------------------------------------------------
|
|---|
| 445 | - G4CascadeInterface.cc, G4IBertini.cc, G4PreCompoundCascadeInterface.cc:
|
|---|
| 446 | In ::ApplyYourself(), do the check on K0L/K0S _before_ passing G4PartDefn
|
|---|
| 447 | to G4InuclElemPart::type(). This avoids unnecessary warning message.
|
|---|
| 448 |
|
|---|
| 449 | 14 April 2010 Michael Kelsey (temporary: kelsey-memClean3)
|
|---|
| 450 | ----------------------------------------------------------
|
|---|
| 451 | All changes below within "cascade/" subdirectory:
|
|---|
| 452 |
|
|---|
| 453 | - G4FinalStateSampler: Replace "sigma" argument for sampling with data
|
|---|
| 454 | member, add functions to fill sigma buffer by passing in array references.
|
|---|
| 455 | Provide typedef for interpolator, and function to apply interpolation.
|
|---|
| 456 |
|
|---|
| 457 | - G4PionSampler, G4NucleonSampler: Follow changes to base class,
|
|---|
| 458 | eliminating much of the copy-and-paste code blocks via function calls.
|
|---|
| 459 | Replace G4float arrays with G4double, to support passing into functions.
|
|---|
| 460 |
|
|---|
| 461 | 13 April 2010 Michael Kelsey (hadr-casc-V09-03-21)
|
|---|
| 462 | --------------------------------------------------
|
|---|
| 463 | All changes below within "cascade/" subdirectory:
|
|---|
| 464 |
|
|---|
| 465 | - G4InuclSpecialFunctions.hh, paraMaker.cc, paraMakerTruncated.cc: Drop
|
|---|
| 466 | return-by-value from paraMaker() and paraMakerTruncated(). Add second
|
|---|
| 467 | argument with non-const reference to output buffer for return.
|
|---|
| 468 |
|
|---|
| 469 | - G4EquilibriumEvaporator.cc: Follow changes above to paraMaker(), use
|
|---|
| 470 | references to address parms.first and parms.second, instead of copying.
|
|---|
| 471 |
|
|---|
| 472 | - G4NonEquilibriumEvaporator.cc: Follow changes above to
|
|---|
| 473 | paraMakerTruncaed(), use references to address parms.first and
|
|---|
| 474 | parms.second, instead of copying.
|
|---|
| 475 |
|
|---|
| 476 | - G4Dineutron, G4Diproton, G4UnboundPN: Inherit from G4VShortLivedParticle,
|
|---|
| 477 | per Kurashige. Thought it would eliminate G4ElectronOccupancy churn, but
|
|---|
| 478 | did not.
|
|---|
| 479 |
|
|---|
| 480 | 12 April 2010 Michael Kelsey (hadr-casc-V09-03-20)
|
|---|
| 481 | --------------------------------------------------
|
|---|
| 482 | All changes below within "cascade/" subdirectory:
|
|---|
| 483 |
|
|---|
| 484 | - G4NucleiModel: Move function implementations from .hh to .cc. Replace
|
|---|
| 485 | manual sorting (inefficient O(N^2)) with std::sort() and simple
|
|---|
| 486 | "less-than" function for std::pair<> "partners".
|
|---|
| 487 |
|
|---|
| 488 | - G4CollisionOutput: Move function implementations from .hh to .cc. Use
|
|---|
| 489 | std::vevtor<>::insert() to add vectors together.
|
|---|
| 490 |
|
|---|
| 491 | - Replace return-by-value G4CollisionOutput with non-const reference buffer
|
|---|
| 492 | passed into xxx::collide(), in the following classes:
|
|---|
| 493 | G4BigBanger
|
|---|
| 494 | G4CascadeElasticInterface
|
|---|
| 495 | G4CascadeInterface
|
|---|
| 496 | G4ElasticCascadeInterface
|
|---|
| 497 | G4ElementaryParticleCollider
|
|---|
| 498 | G4EquilibriumEvaporator
|
|---|
| 499 | G4EvaporationInuclCollider
|
|---|
| 500 | G4Fissioner
|
|---|
| 501 | G4IBertini
|
|---|
| 502 | G4IntraNucleiCascader
|
|---|
| 503 | G4InuclCollider
|
|---|
| 504 | G4InuclEvaporation
|
|---|
| 505 | G4NonEquilibriumEvaporator
|
|---|
| 506 | G4NucleiModel
|
|---|
| 507 | G4PreCompoundCascadeInterface
|
|---|
| 508 | G4PreCompoundInuclCollider
|
|---|
| 509 |
|
|---|
| 510 | Note that some places where internal G4CollisionOutput buffers are being
|
|---|
| 511 | used (and their contents appended to the global output) have not been
|
|---|
| 512 | cleaned up yet. These will require some rearrangement of the algorithms,
|
|---|
| 513 | or/and elimination of debugging output.
|
|---|
| 514 |
|
|---|
| 515 | 09 April 2010 Michael Kelsey (hadr-casc-V09-03-16-01)
|
|---|
| 516 | -----------------------------------------------------
|
|---|
| 517 | This modification is included in a pseudo-patch of hadr-casc-V09-03-16,
|
|---|
| 518 | without brining in any of the -17 through -19 modifications.
|
|---|
| 519 |
|
|---|
| 520 | - G4LorentzVector.cc: Protect two instances of sqrt() against tiny negative
|
|---|
| 521 | arguments (due to tiny-tiny subtractions).
|
|---|
| 522 |
|
|---|
| 523 | 09 April 2010 Michael Kelsey (hadr-casc-V09-03-19)
|
|---|
| 524 | --------------------------------------------------
|
|---|
| 525 | All changes below within "cascade/" subdirectory:
|
|---|
| 526 |
|
|---|
| 527 | - G4InuclParticle, G4InuclElementaryParticle, G4InuclNuclei: Eliminate
|
|---|
| 528 | unused G4String ctor argument, introduced in hadr-casc-V09-03-01. Causes
|
|---|
| 529 | a lot of pointless memory churn.
|
|---|
| 530 |
|
|---|
| 531 | - G4BigBanger.cc: Fix type conversion warning I introduced by mistake.
|
|---|
| 532 |
|
|---|
| 533 | 08 April 2010 Michael Kelsey (hadr-casc-V09-03-18)
|
|---|
| 534 | --------------------------------------------------
|
|---|
| 535 | All changes below within "cascade/" subdirectory:
|
|---|
| 536 |
|
|---|
| 537 | - G4PionSampler, G4NucleonSampler: For all ::GetFSPartTypes*() functions,
|
|---|
| 538 | eliminate return-by-value std::vector<>, and pass in non-const reference
|
|---|
| 539 | for filling in situ. Buffer is cleared.
|
|---|
| 540 |
|
|---|
| 541 | - G4ElementaryParticleCollider.cc: Follow changes above for Sampler calls.
|
|---|
| 542 |
|
|---|
| 543 | 07 April 2010 Michael Kelsey (hadr-casc-V09-03-17)
|
|---|
| 544 | --------------------------------------------------
|
|---|
| 545 | All changes below within "cascade/" subdirectory:
|
|---|
| 546 |
|
|---|
| 547 | Replace return-by-value std::vector<> with either const-ref returns, or
|
|---|
| 548 | with use of an internal buffer which can be reused, to reduce memory
|
|---|
| 549 | churn due to copying, allocation, and resizing.
|
|---|
| 550 |
|
|---|
| 551 | - G4BigBanger: Create data buffer for lists of secondaries and momenta.
|
|---|
| 552 | Fill buffers in ::generateBangInSCM() and ::generateMomentumModules(),
|
|---|
| 553 | which are now non-const. Reference buffers in ::collide().
|
|---|
| 554 |
|
|---|
| 555 | - G4CascadeFunctions::getOutgoingParticleTypes(): Make "kinds" a static
|
|---|
| 556 | variable (buffer), and return it by const-ref.
|
|---|
| 557 |
|
|---|
| 558 | - G4ElementaryParticleCollider: Eliminate return-by-value std::vector<>
|
|---|
| 559 | on the functions listed below, by creating data buffers for particles,
|
|---|
| 560 | momenta, and particle types. The functions become non-const and void:
|
|---|
| 561 | ::generateSCMfinalState(), ::generateMomModules()
|
|---|
| 562 | ::generateStrangeChannelPartTypes(), ::generateSCMpionAbsorption()
|
|---|
| 563 |
|
|---|
| 564 | Also, in ::generateStrangeChannelPartTypes(), use a switch statement
|
|---|
| 565 | instead of the long cascade of if-else-else.
|
|---|
| 566 |
|
|---|
| 567 | - G4NucleiModel: Several member functions have different modifications:
|
|---|
| 568 |
|
|---|
| 569 | ::initializeCascad(bullet,target) -- Replace return value with a passed-in
|
|---|
| 570 | (non-const reference) buffer to be filled. The calling code can
|
|---|
| 571 | pass in a data member, local variable, or whatever.
|
|---|
| 572 |
|
|---|
| 573 | ::generateParticleFate() -- Replace local "thePartners" variable with data
|
|---|
| 574 | member, filled below. Move "outgouing_cparticles" to data member
|
|---|
| 575 | (fix the spelling!), and return by const-ref.
|
|---|
| 576 |
|
|---|
| 577 | ::generateInteractionPartners() -- Eliminate return value; fill data
|
|---|
| 578 | member instead, to be used by ::generateParticleFate().
|
|---|
| 579 |
|
|---|
| 580 | - G4IntraNucleiCascader.cc: Follow changes to initializeCascad() above.
|
|---|
| 581 |
|
|---|
| 582 | - G4NucleonSampler, G4PionSampler: ** DON'T KNOW WHAT TO DO HERE **
|
|---|
| 583 |
|
|---|
| 584 | - G4WatcherGun: Return const-ref to list of watchers, instead of copy.
|
|---|
| 585 |
|
|---|
| 586 | Replace all uses of std::vector<>::resize(0) with ::clear(). The former
|
|---|
| 587 | causes deallocation/reallocation/resizing cycles, while clear() just removes
|
|---|
| 588 | content, preserving the allocated buffer.
|
|---|
| 589 |
|
|---|
| 590 | include/G4CollisionOutput.hh
|
|---|
| 591 | src/G4ElementaryParticleCollider.cc
|
|---|
| 592 | src/G4NucleiModel.cc
|
|---|
| 593 | src/G4WatcherGun.cc
|
|---|
| 594 |
|
|---|
| 595 | 07 April 2010 Dennis Wright (hadr-casc-V09-03-16)
|
|---|
| 596 | -------------------------------------------------
|
|---|
| 597 | - fix negative energy bug in G4BigBanger, and switch to using
|
|---|
| 598 | G4NucleiProperties::GetBindingEnergy
|
|---|
| 599 |
|
|---|
| 600 | 07 April 2010 Michael Kelsey (hadr-casc-V09-03-15)
|
|---|
| 601 | --------------------------------------------------
|
|---|
| 602 | All changes below within "cascade/" subdirectory:
|
|---|
| 603 |
|
|---|
| 604 | 1) Systematically replace pass-by-value function arguments with const-refs.
|
|---|
| 605 | This is the first step in reducing unnecessary memory churn, to be followed
|
|---|
| 606 | by replacing return-by-value std::vector<> with non-const argument buffers.
|
|---|
| 607 |
|
|---|
| 608 | include/G4CascadeChannel.hh
|
|---|
| 609 | include/G4FinalStateSampler.hh
|
|---|
| 610 | include/G4InuclEvaporation.hh
|
|---|
| 611 | include/G4NuclWatcher.hh
|
|---|
| 612 | src/G4CascadeChannel.cc
|
|---|
| 613 | src/G4FinalStateSampler.cc
|
|---|
| 614 | src/G4InuclEvaporation.cc
|
|---|
| 615 | src/G4NuclWatcher.cc
|
|---|
| 616 |
|
|---|
| 617 | 2) Fix constness on some operator== and operator!= definitions.
|
|---|
| 618 |
|
|---|
| 619 | include/G4CascadeElasticInterface.hh
|
|---|
| 620 | include/G4CascadeInterface.hh
|
|---|
| 621 | include/G4ElasticCascadeInterface.hh
|
|---|
| 622 | include/G4IBertini.hh
|
|---|
| 623 | include/G4PreCompoundCascadeInterface.hh
|
|---|
| 624 |
|
|---|
| 625 | 07 Apr 2010 Michael Kelsey (hadr-casc-V09-03-14)
|
|---|
| 626 | ------------------------------------------------
|
|---|
| 627 | - G4Dineutron.hh, G4Diproton.hh, G4UnboundPN.hh:
|
|---|
| 628 | Reset static "theInstance" pointer to zero in (now virtual) destructor.
|
|---|
| 629 |
|
|---|
| 630 | - G4Dineutron.cc, G4Diproton.cc, G4UnboundPN.cc:
|
|---|
| 631 | Implement constructor to do the G4Ions initialization, rather than in
|
|---|
| 632 | ::Definition(). Drop use of G4ParticleTable; just monitor static pointer.
|
|---|
| 633 | Set "ShortLived" flag in G4Ions initialization, to avoid interactions with
|
|---|
| 634 | ProcessManager.
|
|---|
| 635 |
|
|---|
| 636 | - G4InuclNuclei.cc: In ::makeNuclearFragment(), set "ShortLived" flag for
|
|---|
| 637 | G4Ions, to avoid interactions with ProcessManager.
|
|---|
| 638 |
|
|---|
| 639 | 26 Mar 2010 Dennis Wright (hadr-casc-V09-03-13)
|
|---|
| 640 | -----------------------------------------------
|
|---|
| 641 | - G4EquilibriumEvaporator.cc: remove line #include "G4types.hh"
|
|---|
| 642 | (file doesn't exist)
|
|---|
| 643 |
|
|---|
| 644 | 20 Mar 2010 Michael Kelsey (hadr-casc-V09-03-12)
|
|---|
| 645 | ------------------------------------------------
|
|---|
| 646 | All changes below within "cascade/" subdirectory:
|
|---|
| 647 |
|
|---|
| 648 | - G4EquilibriumEvaporator.cc: Move subtraction of Q1[i] outside new
|
|---|
| 649 | GetBindingEnergy() call.
|
|---|
| 650 |
|
|---|
| 651 | - G4InuclNuclei.cc::makeNuclearFragment(): Add message warning users about
|
|---|
| 652 | non-physical creation. Use new GetBindingEnergy() function here as well
|
|---|
| 653 | (V09-03-05 didn't have this function, so wasn't included in migration).
|
|---|
| 654 |
|
|---|
| 655 | 19 Mar 2010 Michael Kelsey (hadr-casc-V09-03-11)
|
|---|
| 656 | ------------------------------------------------
|
|---|
| 657 | All changes below within "cascade/" subdirectory:
|
|---|
| 658 |
|
|---|
| 659 | - G4InuclSpecialFunctions: Two new functions:
|
|---|
| 660 |
|
|---|
| 661 | ::generateWithRandomAngles() to encapsulate random-direction generation.
|
|---|
| 662 | This function and existing generateWithFixedTheta() take optional mass
|
|---|
| 663 | argument to produce proper four-vector.
|
|---|
| 664 |
|
|---|
| 665 | Replace duplicated random angle code with new function above, and use new
|
|---|
| 666 | optional mass argument where available:
|
|---|
| 667 |
|
|---|
| 668 | G4BigBanger.cc
|
|---|
| 669 | G4ElementaryParticleCollider.cc
|
|---|
| 670 | G4EquilibriumEvaporator.cc
|
|---|
| 671 | G4Fissioner.cc
|
|---|
| 672 | G4NonEquilibriumEvaporator.cc
|
|---|
| 673 | G4NucleiModel.cc
|
|---|
| 674 |
|
|---|
| 675 | ::G4cbrt(): Define cube-root in terms of log and exp, rather than pow().
|
|---|
| 676 | Note that "cbrt()" can't be used, as it conflicts with <math.h> on Linux.
|
|---|
| 677 |
|
|---|
| 678 | Eliminate unnecessary uses of std::pow() with fixed arguments. For
|
|---|
| 679 | example, "pow(x,3)" -> "x*x*x", "pow(x,1/3)" -> G4cbrt(x):
|
|---|
| 680 |
|
|---|
| 681 | G4BertiniRegionModel.cc
|
|---|
| 682 | G4EquilibriumEvaporator.cc
|
|---|
| 683 | G4EvaporationInuclCollider.cc
|
|---|
| 684 | G4Fissioner.cc
|
|---|
| 685 | G4IntraNucleiCascader.cc
|
|---|
| 686 | G4InuclCollider.cc
|
|---|
| 687 | G4NonEquilibriumEvaporator.cc
|
|---|
| 688 | G4NucleiModel.cc
|
|---|
| 689 | G4PreCompoundInuclCollider.cc
|
|---|
| 690 | G4RegionModel.cc
|
|---|
| 691 | bindingEnergyAsymptotic.cc
|
|---|
| 692 | bindingEnergyKummel.cc
|
|---|
| 693 |
|
|---|
| 694 | WARNING! In G4IntraNucleiCascader.cc, the Coulomb barrier was calculated
|
|---|
| 695 | using "std::pow(A, 0.333)", rather than the "exact" 1./3. This leads to
|
|---|
| 696 | per-mil differences in the value, and occasional differences in wheter an
|
|---|
| 697 | outgoing particle tunnels through. The new code is exact to double
|
|---|
| 698 | precision, and therefore fixes a bug.
|
|---|
| 699 |
|
|---|
| 700 | - Move "using" directive from all .hh files to corresponding .cc, along with
|
|---|
| 701 | some unnecessary #includes:
|
|---|
| 702 |
|
|---|
| 703 | G4BigBanger.hh, .cc
|
|---|
| 704 | G4ElementaryParticleCollider.hh, .cc
|
|---|
| 705 | G4EquilibriumEvaporator.hh, .cc
|
|---|
| 706 | G4EvaporationInuclCollider.hh, .cc
|
|---|
| 707 | G4Fissioner.hh, .cc
|
|---|
| 708 | G4IntraNucleiCascader.hh, .cc
|
|---|
| 709 | G4InuclCollider.hh
|
|---|
| 710 | G4InuclNuclei.hh
|
|---|
| 711 | G4NonEquilibriumEvaporator.hh, .cc
|
|---|
| 712 | G4NucleiModel.hh, .cc
|
|---|
| 713 | G4PreCompoundInuclCollider.hh, .cc
|
|---|
| 714 |
|
|---|
| 715 | - G4NuclWatcher.hh and .cc (new): Move implementation code from .hh to .cc.
|
|---|
| 716 |
|
|---|
| 717 | 18 March 2010 Michael Kelsey (hadr-casc-V09-03-10)
|
|---|
| 718 | --------------------------------------------------
|
|---|
| 719 | All changes below within "cascade/" subdirectory:
|
|---|
| 720 |
|
|---|
| 721 | Missed one bug in repairs below, found when testing 4 GeV pi -> Pb.
|
|---|
| 722 |
|
|---|
| 723 | - G4Fissioner.cc: Replace incorrect G4LorentzVector ctor arguments
|
|---|
| 724 | (G4ThreeVector,m) with call to G4LV::setVectM().
|
|---|
| 725 |
|
|---|
| 726 | 17 March 2010 Dennis Wright (hadr-casc-V09-03-09)
|
|---|
| 727 | -------------------------------------------------
|
|---|
| 728 | Fix warning in G4InuclNuclei.cc: G4Ions:G4Ions was being called with
|
|---|
| 729 | a double (a) in its 13th argument, when an integer is required. Use
|
|---|
| 730 | G4lrint to convert.
|
|---|
| 731 |
|
|---|
| 732 | 16 March 2010 Michael Kelsey (hadr-casc-V09-03-08)
|
|---|
| 733 | --------------------------------------------------
|
|---|
| 734 | All changes below within "cascade/" subdirectory:
|
|---|
| 735 |
|
|---|
| 736 | Fix bugs introduced during migration from G4CascadeMomentum to
|
|---|
| 737 | G4LorentzVector (see hadr-casc-V09-03-03). With these bug fixes, 2000
|
|---|
| 738 | events generated with "ppi4GeV" test executable are equivalent to production
|
|---|
| 739 | output (GEANT 4.9.3), allowing for differences in hardwired nucleon masses.
|
|---|
| 740 | When compared with hadr-casc-V09-03-02 (which uses G4ParticleDefinition for
|
|---|
| 741 | all the particle masses) the 2000-event results are identical within
|
|---|
| 742 | floating point precision.
|
|---|
| 743 |
|
|---|
| 744 | - G4BigBanger.cc: Line 72, fix unit conversion bug, GeV/MeV vs. MeV/GeV.
|
|---|
| 745 | Replace incorrectly introduced cross-product with original vector
|
|---|
| 746 | manipulation, written with G4LorentzVector accessors.
|
|---|
| 747 |
|
|---|
| 748 | - G4CollisionOutput::selectPairToTune(): Test on "i3>0" not appropriate with
|
|---|
| 749 | G4LorentzVector indexing. Replace with failure-test on "i3<0". Also
|
|---|
| 750 | simplify final if-cascade for readability.
|
|---|
| 751 |
|
|---|
| 752 | - G4EquilibriumEvaporator.cc: Replace incorrect G4LorentzVector ctor
|
|---|
| 753 | arguments (px,py,pz,m) with call to G4LV::setVectM().
|
|---|
| 754 |
|
|---|
| 755 | - G4IntraNuclearCascader.cc: Replace leftover momentum_out[0] with .e().
|
|---|
| 756 |
|
|---|
| 757 | - G4InuclNuclei.cc,hh: Add new function ::makeNuclearFragment(a,z,exc),
|
|---|
| 758 | which "manually" construct a G4Ions object for cases where A/Z is not a
|
|---|
| 759 | valid stable or unstable nucleus. These unphysical objects are passed
|
|---|
| 760 | back from G4IntraNuclearCascader.cc and immediately passed to G4BigBanger
|
|---|
| 761 | for conversion to nucleons. A future change should move this action into
|
|---|
| 762 | G4INCascader and eliminate the need for unphysical nuclei.
|
|---|
| 763 |
|
|---|
| 764 | - G4LorentzConvertor::toTheTargetRestFrame(): Remove local declaration of
|
|---|
| 765 | scm_momentum, restoring access to data member with that name.
|
|---|
| 766 |
|
|---|
| 767 | - G4NucleiModel::generateQuasiDeutron(): Undo consolidation of dmom with
|
|---|
| 768 | local variables for each of the nucleon momenta. Stack corruption led to
|
|---|
| 769 | differences in unbound p-n state relative to pp and nn states.
|
|---|
| 770 |
|
|---|
| 771 | Minor updates: Changed all the "verboseLevel()" initializers to (0), via a
|
|---|
| 772 | shell script. This allows making the code uniformly verbose or quiet.
|
|---|
| 773 |
|
|---|
| 774 | include/G4NucleiModel.hh
|
|---|
| 775 | src/G4Analyser.cc
|
|---|
| 776 | src/G4CollisionOutput.cc
|
|---|
| 777 | src/G4ElementaryParticleCollider.cc
|
|---|
| 778 | src/G4FissionStore.cc
|
|---|
| 779 | src/G4Fissioner.cc
|
|---|
| 780 | src/G4IntraNucleiCascader.cc
|
|---|
| 781 | src/G4NonEquilibriumEvaporator.cc
|
|---|
| 782 | src/G4NucleiModel.cc
|
|---|
| 783 | src/G4WatcherGun.cc
|
|---|
| 784 |
|
|---|
| 785 | 16 March 2010 Michael Kelsey (hadr-casc-V09-03-DO-NOT-USE)
|
|---|
| 786 | --------------------------------------------------
|
|---|
| 787 | All changes below within "cascade/" subdirectory:
|
|---|
| 788 |
|
|---|
| 789 | Restore version hadr-casc-V09-03-05 to HEAD of CVS in order to apply bug
|
|---|
| 790 | fixes and re-deploy migration from G4CascadeMomentum to G4LorentzVector.
|
|---|
| 791 | This reversion is tagged as a checkpoint only, and should not be used for
|
|---|
| 792 | testing or running (since it restores the known bugs in V09-03-03).
|
|---|
| 793 |
|
|---|
| 794 | The update to G4InteractionCase.hh by Gabriele Cosmo in hadr-casc-V09-03-07
|
|---|
| 795 | is not touched by this reversion!
|
|---|
| 796 |
|
|---|
| 797 | The following CVS commands were used to perform the reversion:
|
|---|
| 798 |
|
|---|
| 799 | cvs update -j1.13 -j1.12 cascade/include/G4CascadParticle.hh
|
|---|
| 800 | cvs update -j1.4 -j1.3 cascade/include/G4CascadeMomentum.hh
|
|---|
| 801 | cvs update -j1.15 -j1.14 cascade/include/G4CollisionOutput.hh
|
|---|
| 802 | cvs update -j1.23 -j1.22 cascade/include/G4ElementaryParticleCollider.hh
|
|---|
| 803 | cvs update -j1.9 -j1.8 cascade/include/G4InuclCollider.hh
|
|---|
| 804 | cvs update -j1.19 -j1.18 cascade/include/G4InuclElementaryParticle.hh
|
|---|
| 805 | cvs update -j1.12 -j1.11 cascade/include/G4InuclNuclei.hh
|
|---|
| 806 | cvs update -j1.16 -j1.15 cascade/include/G4InuclParticle.hh
|
|---|
| 807 | cvs update -j1.13 -j1.12 cascade/include/G4InuclSpecialFunctions.hh
|
|---|
| 808 | cvs update -j1.13 -j1.12 cascade/include/G4LorentzConvertor.hh
|
|---|
| 809 | cvs update -j1.4 -j1.3 cascade/include/G4ParticleLargerBeta.hh
|
|---|
| 810 | cvs update -j1.9 -j1.8 cascade/include/G4ParticleLargerEkin.hh
|
|---|
| 811 | cvs update -j1.20 -j1.19 cascade/src/G4BigBanger.cc
|
|---|
| 812 | cvs update -j1.13 -j1.12 cascade/src/G4CascadParticle.cc
|
|---|
| 813 | cvs update -j1.6 -j1.5 cascade/src/G4CascadeElasticInterface.cc
|
|---|
| 814 | cvs update -j1.68 -j1.67 cascade/src/G4CascadeInterface.cc
|
|---|
| 815 | cvs update -j1.18 -j1.17 cascade/src/G4CollisionOutput.cc
|
|---|
| 816 | cvs update -j1.7 -j1.6 cascade/src/G4ElasticCascadeInterface.cc
|
|---|
| 817 | cvs update -j1.6 -j1.5 cascade/src/G4EvaporationInuclCollider.cc
|
|---|
| 818 | cvs update -j1.5 -j1.4 cascade/src/G4IBertini.cc
|
|---|
| 819 | cvs update -j1.3 -j1.2 cascade/src/G4InuclElementaryParticle.cc
|
|---|
| 820 | cvs update -j1.10 -j1.9 cascade/src/G4InuclEvaporation.cc
|
|---|
| 821 | cvs update -j1.3 -j1.2 cascade/src/G4InuclNuclei.cc
|
|---|
| 822 | cvs update -j1.4 -j1.3 cascade/src/G4InuclParticle.cc
|
|---|
| 823 | cvs update -j1.17 -j1.16 cascade/src/G4InuclSpecialFunctions.cc
|
|---|
| 824 | cvs update -j1.19 -j1.18 cascade/src/G4LorentzConvertor.cc
|
|---|
| 825 | cvs update -j1.5 -j1.4 cascade/src/G4PreCompoundCascadeInterface.cc
|
|---|
| 826 | cvs update -j1.4 -j1.3 cascade/src/G4PreCompoundInuclCollider.cc
|
|---|
| 827 |
|
|---|
| 828 | Intermediate versions below had bindingEnergy changes from -05 re-applied
|
|---|
| 829 |
|
|---|
| 830 | cvs update -j1.23 -j1.21 cascade/src/G4EquilibriumEvaporator.cc
|
|---|
| 831 | cvs update -j1.22 -j1.20 cascade/src/G4Fissioner.cc
|
|---|
| 832 | cvs update -j1.29 -j1.27 cascade/src/G4IntraNucleiCascader.cc
|
|---|
| 833 | cvs update -j1.24 -j1.22 cascade/src/G4InuclCollider.cc
|
|---|
| 834 | cvs update -j1.23 -j1.21 cascade/src/G4NonEquilibriumEvaporator.cc
|
|---|
| 835 | cvs update -j1.38 -j1.36 cascade/src/G4NucleiModel.cc
|
|---|
| 836 |
|
|---|
| 837 | G4ElementaryParticleCollider::particleSCMmomentumFor2to2: Restore new
|
|---|
| 838 | parametrization of elastic scattering added by D.Write in hadr-casc-V09-03-06
|
|---|
| 839 |
|
|---|
| 840 | cvs update -j1.47 -j1.45 cascade/src/G4ElementaryParticleCollider.cc
|
|---|
| 841 | + editing
|
|---|
| 842 |
|
|---|
| 843 | 05 Mar 2010 Gabriele Cosmo (hadr-casc-V09-03-07)
|
|---|
| 844 | ------------------------------------------------
|
|---|
| 845 | - Reinstated fix in G4InteractionCase.hh for initialisation in constructor to
|
|---|
| 846 | allow for porting on C++0x Standard.
|
|---|
| 847 |
|
|---|
| 848 | 07 Feb 2010 Dennis Wright (hadr-casc-V09-03-06)
|
|---|
| 849 | -----------------------------------------------
|
|---|
| 850 | - back out changes from tags V09-03-00 to V00-03-05 by restoring HEAD
|
|---|
| 851 | to V09-02-11, and keeping the di-nucleon classes
|
|---|
| 852 | - replace Bertini method bindingEnergy() with
|
|---|
| 853 | G4NucleiProperties::GetBindingEnergy() in classes
|
|---|
| 854 | G4IntraNuclearCascader, G4InuclCollider, G4NucleiModel, G4EquilibriumModel,
|
|---|
| 855 | G4NonEquilibriumModel, G4Fissioner. Note that G4Fissioner still uses the
|
|---|
| 856 | Bertini method bindingEnergyAsymptotic.
|
|---|
| 857 |
|
|---|
| 858 | - G4ElementaryParticleCollider::particleSCMmomentumFor2to2
|
|---|
| 859 | replace original (incorrect) pp, pn, nn 2-body to 2-body scattering angular
|
|---|
| 860 | distributions with a new parameterization of elastic scattering data using
|
|---|
| 861 | the sum of two exponentials
|
|---|
| 862 |
|
|---|
| 863 | 02 Feb 2010 Dennis Wright (hadr-casc-V09-03-05)
|
|---|
| 864 | -----------------------------------------------
|
|---|
| 865 | - replace all uses of bindingEnergy (local Bertini method) with the
|
|---|
| 866 | Geant4 standard G4NucleiProperties::GetBindingEnergy(A,Z)
|
|---|
| 867 | files modified:
|
|---|
| 868 | G4IntraNucleiCascader.cc
|
|---|
| 869 | G4InuclCollider.cc
|
|---|
| 870 | G4NucleiModel.cc
|
|---|
| 871 | G4EquilibriumEvaporator.cc
|
|---|
| 872 | G4NonEquilibriumEvaporator.cc
|
|---|
| 873 | G4Fissioner.cc
|
|---|
| 874 | - note that G4Fissioner still uses Bertini method bindingEnergyAsymptotic
|
|---|
| 875 |
|
|---|
| 876 | 28 Jan 2010 Dennis Wright (hadr-casc-V09-03-04)
|
|---|
| 877 | -----------------------------------------------
|
|---|
| 878 | - fix unused variable warnings in G4InuclParticle.hh, .cc and
|
|---|
| 879 | G4NonEquilibriumEvaporator.cc
|
|---|
| 880 |
|
|---|
| 881 | 26 Jan 2010 Michael Kelsey (hadr-casc-V09-03-03)
|
|---|
| 882 | ------------------------------------------------
|
|---|
| 883 | All changes below within "cascade/" subdirectory:
|
|---|
| 884 |
|
|---|
| 885 | - G4ParticleLargerBeta.hh: Fix to use of CVS "Name" tag; no code changes.
|
|---|
| 886 |
|
|---|
| 887 | - G4CascadParticle: Replace the position std::vector<> with G4ThreeVector.
|
|---|
| 888 |
|
|---|
| 889 | - G4NucleiModel: Replace all std::vector<> coordinates with G4ThreeVector,
|
|---|
| 890 | and use vector math for computations.
|
|---|
| 891 |
|
|---|
| 892 | Remove all use of G4CascadeMomentum (a simple container with a C-style
|
|---|
| 893 | four-element array) with G4LorentzVector. This is a fairly invasive change,
|
|---|
| 894 | since G4CascMom was used for all of the three- and four-vector operations
|
|---|
| 895 | throughout the Bertini code:
|
|---|
| 896 |
|
|---|
| 897 | include/G4CascadParticle.hh
|
|---|
| 898 | include/G4CollisionOutput.hh
|
|---|
| 899 | include/G4ElementaryParticleCollider.hh
|
|---|
| 900 | include/G4InuclCollider.hh
|
|---|
| 901 | include/G4InuclElementaryParticle.hh
|
|---|
| 902 | include/G4InuclNuclei.hh
|
|---|
| 903 | include/G4InuclParticle.hh
|
|---|
| 904 | include/G4InuclSpecialFunctions.hh
|
|---|
| 905 | include/G4LorentzConvertor.hh
|
|---|
| 906 |
|
|---|
| 907 | src/G4BigBanger.cc
|
|---|
| 908 | src/G4CascadParticle.cc
|
|---|
| 909 | src/G4CascadeElasticInterface.cc
|
|---|
| 910 | src/G4CascadeInterface.cc
|
|---|
| 911 | src/G4CollisionOutput.cc
|
|---|
| 912 | src/G4ElasticCascadeInterface.cc
|
|---|
| 913 | src/G4ElementaryParticleCollider.cc
|
|---|
| 914 | src/G4EquilibriumEvaporator.cc
|
|---|
| 915 | src/G4EvaporationInuclCollider.cc
|
|---|
| 916 | src/G4Fissioner.cc
|
|---|
| 917 | src/G4IBertini.cc
|
|---|
| 918 | src/G4IntraNucleiCascader.cc
|
|---|
| 919 | src/G4InuclCollider.cc
|
|---|
| 920 | src/G4InuclElementaryParticle.cc
|
|---|
| 921 | src/G4InuclEvaporation.cc
|
|---|
| 922 | src/G4InuclNuclei.cc
|
|---|
| 923 | src/G4InuclParticle.cc
|
|---|
| 924 | src/G4InuclSpecialFunctions.cc
|
|---|
| 925 | src/G4LorentzConvertor.cc
|
|---|
| 926 | src/G4NonEquilibriumEvaporator.cc
|
|---|
| 927 | src/G4NucleiModel.cc
|
|---|
| 928 | src/G4PreCompoundCascadeInterface.cc
|
|---|
| 929 | src/G4PreCompoundInuclCollider.cc
|
|---|
| 930 |
|
|---|
| 931 | The new code is not yet entirely "correct," since Bertini also does a lot of
|
|---|
| 932 | operations by way of three-momentum, imposing masses (and hence energy
|
|---|
| 933 | conservation) separately, after the fact.
|
|---|
| 934 |
|
|---|
| 935 | 20 Jan 2010 Gabriele Cosmo
|
|---|
| 936 | --------------------------
|
|---|
| 937 | - G4InteractionCase.hh: Minor fix in initialisation in constructor to
|
|---|
| 938 | allow for porting on C++0x Standard.
|
|---|
| 939 |
|
|---|
| 940 | 20 Jan 2010 Michael Kelsey (hadr-casc-V09-03-02)
|
|---|
| 941 | ------------------------------------------------
|
|---|
| 942 | - G4LorentzConvertor.hh: Fix scm_momentum data member to be G4ThreeVector
|
|---|
| 943 | (as used in previous versions) rather than G4LorentzVector.
|
|---|
| 944 |
|
|---|
| 945 | NOTE: I have *retagged* cascade/include/G4LorentzConverter.hh and this
|
|---|
| 946 | History file, rather than creating a new tag, since these are private
|
|---|
| 947 | development only, not public releases.
|
|---|
| 948 |
|
|---|
| 949 | 12 Jan 2010 Michael Kelsey (hadr-casc-V09-03-02)
|
|---|
| 950 | ------------------------------------------------
|
|---|
| 951 | All changes below within "cascade/" subdirectory:
|
|---|
| 952 |
|
|---|
| 953 | - G4CascadeMomentum: Replace use of static G4LV variables within functions
|
|---|
| 954 | with mutable data member of object; this does introduce more memory
|
|---|
| 955 | thrashing, but the plan is to get rid of the whole thing anyway. Improve
|
|---|
| 956 | implicit casting and add assignment from G4LV.
|
|---|
| 957 |
|
|---|
| 958 | - G4LorentzConverter: Change function signatures to accept G4LV as input,
|
|---|
| 959 | using implicit cast to convert existing G4CascadeMomentum argument
|
|---|
| 960 | passing. Use G4LV internally throughout, again using implicit cast to
|
|---|
| 961 | return G4CascMom values. This substantially increases (temporarily!)
|
|---|
| 962 | memory thrashing. Simplify ::rotate() functions to use G4LV and
|
|---|
| 963 | G4ThreeVec operations rather than array index gymnastics. Move some
|
|---|
| 964 | function implementations out of .hh file into .cc.
|
|---|
| 965 |
|
|---|
| 966 | - G4ParticleLargerEkin.hh: Fix use of CVS "Name" tag. No code changes.
|
|---|
| 967 |
|
|---|
| 968 | 12 Jan 2010 Michael Kelsey (hadr-casc-V09-03-01)
|
|---|
| 969 | ------------------------------------------------
|
|---|
| 970 | All changes below within "cascade/" subdirectory:
|
|---|
| 971 |
|
|---|
| 972 | - G4ParticleLargerBeta, G4ParticleLargerEkin: Add additional operator()
|
|---|
| 973 | which takes pointers (for future mods to reduce ctor/dtor cycling), and
|
|---|
| 974 | fix ordering bug in beta sorting. Add debugging printout togged with
|
|---|
| 975 | preprocessor flag.
|
|---|
| 976 |
|
|---|
| 977 | - G4InuclParticle, G4InuclNuclei, G4InuclElementaryParticle: Rewrite to
|
|---|
| 978 | carry G4DynamicParticle data member, and to instantiate particle
|
|---|
| 979 | properties via G4ParticleDefinition subclasses. This is first stage in
|
|---|
| 980 | eventually eliminating the G4InuclParticle stuff entirely in favor of
|
|---|
| 981 | direct use of G4DynamicParticle for internal propagation.
|
|---|
| 982 |
|
|---|
| 983 | These changes have been testing using debugging output on the production
|
|---|
| 984 | (4.9.3) code compared to the above changes. |diff| shows mostly identical
|
|---|
| 985 | results, with occasional ~1e-5 floating point differences.
|
|---|
| 986 |
|
|---|
| 987 | 08 Jan 2010 Michael Kelsey (hadr-casc-V09-03-00)
|
|---|
| 988 | ------------------------------------------------
|
|---|
| 989 | All changes below within "cascade/" subdirectory:
|
|---|
| 990 |
|
|---|
| 991 | - G4BertiniNuclearModel: REMOVE this class from the HEAD, and hopefully all
|
|---|
| 992 | future tags. It is redundant with the G4NuclearModel class, and is not
|
|---|
| 993 | used anywhere in the G4 distribtion; the latter is referenced in both
|
|---|
| 994 | regular G4 code and in examples.
|
|---|
| 995 |
|
|---|
| 996 | - G4Diproton, G4Dineutron, G4UnboundPN: New G4ParticleDefinition
|
|---|
| 997 | subclasses, which implement the Bertini-specific dibaryon states. These
|
|---|
| 998 | are not used anywhere as yet, but will be used in future modifications to
|
|---|
| 999 | the G4InuclParticle subclasses.
|
|---|
| 1000 |
|
|---|
| 1001 | - G4CascadeMomentum: Add interface to create from and cast to
|
|---|
| 1002 | G4LorentzVector. Will be used (in future) by G4InuclParticle modifications,
|
|---|
| 1003 | and provides a transition to eliminating this class entirely.
|
|---|
| 1004 |
|
|---|
| 1005 | 1 Dec 2009 Dennis Wright (hadr-casc-V09-02-11)
|
|---|
| 1006 | ----------------------------------------------
|
|---|
| 1007 | - G4PionSampler, G4NucleonSampler: change loop variable in ctor from i to j
|
|---|
| 1008 | in order to satisfy Windows compiler
|
|---|
| 1009 |
|
|---|
| 1010 | 11 Nov 2009 Dennis Wright (hadr-casc-V09-02-10)
|
|---|
| 1011 | -----------------------------------------------
|
|---|
| 1012 | - G4CascadParticle, G4InuclElementaryParticle: add integer argument to ctor
|
|---|
| 1013 | to indicate which generation cascade particle belongs to.
|
|---|
| 1014 | Also change G4NucleiModel and G4BertiniNucleiModel to use this.
|
|---|
| 1015 |
|
|---|
| 1016 | 8 Oct 2009 Dennis Wright (hadr-casc-V09-02-09)
|
|---|
| 1017 | -----------------------------------------------
|
|---|
| 1018 | - G4PionSampler: use charge exchange cross section for pi0-p, go back
|
|---|
| 1019 | original Bertini pi0-p elastic partial cs. Update pi0 total cross
|
|---|
| 1020 | section accordingly. Improve fits to pi-p partial cs and update
|
|---|
| 1021 | pi- total cross sections.
|
|---|
| 1022 | - G4NucleiModel: update pi- and pi0 total cross sections
|
|---|
| 1023 |
|
|---|
| 1024 | 24 Sep 2009 Dennis Wright (hadr-casc-V09-02-08)
|
|---|
| 1025 | -----------------------------------------------
|
|---|
| 1026 | - add class G4NucleonSampler which replaces old pp, pn, and nn partial and
|
|---|
| 1027 | total cross sections also modify other classes which use them
|
|---|
| 1028 | - move large arrays which are instantiated at every call of frequently
|
|---|
| 1029 | used methods. They are now initialized once in constructors.
|
|---|
| 1030 | - G4CascadSpecialFunctions: put copy of total cross section method
|
|---|
| 1031 | in G4NucleiModel, also remove unneeded energy scale arrays
|
|---|
| 1032 | (now replaced with a new one)
|
|---|
| 1033 | - G4CascadeInterface: move instantiation of various collider classes
|
|---|
| 1034 | outside of loop, and put on stack instead of heap
|
|---|
| 1035 | - G4ElementaryParticleCollider: re-design to use G4NucleonSampler and
|
|---|
| 1036 | remove instantiation of large arrays from within loops in code
|
|---|
| 1037 | - G4NucleiModel: remove instatiation of large arrays from with loops,
|
|---|
| 1038 | add new total cross section sampling, remove use of all but one
|
|---|
| 1039 | energy scale
|
|---|
| 1040 |
|
|---|
| 1041 | 17 Sep 2009 Dennis Wright (hadr-casc-V09-02-07)
|
|---|
| 1042 | -----------------------------------------------
|
|---|
| 1043 | - G4PionSampler: remove large static arrays
|
|---|
| 1044 | - G4FinalStateSampler: remove static array pointer to G4 particle types
|
|---|
| 1045 | - G4ElementaryParticleCollider: clean up
|
|---|
| 1046 |
|
|---|
| 1047 | 4 Sep 2009 Dennis Wright (hadr-casc-V09-02-06)
|
|---|
| 1048 | ----------------------------------------------
|
|---|
| 1049 | - add assignment operator to class G4CollisionOutput
|
|---|
| 1050 |
|
|---|
| 1051 | 31 Aug 2009 Dennis Wright (hadr-casc-V09-02-05)
|
|---|
| 1052 | -----------------------------------------------
|
|---|
| 1053 | - add class G4FinalStateSampler which was accidentally omitted from
|
|---|
| 1054 | the previous tag
|
|---|
| 1055 |
|
|---|
| 1056 | 25 Aug 2009 Dennis Wright (hadr-casc-V09-02-04)
|
|---|
| 1057 | -----------------------------------------------
|
|---|
| 1058 | - correct bug in particle ordering in G4PionSampler
|
|---|
| 1059 | - clean up dead code in G4NucleiModel and G4ElementaryParticleCollider
|
|---|
| 1060 |
|
|---|
| 1061 | 20 Aug 2009 Dennis Wright (hadr-casc-V09-02-03)
|
|---|
| 1062 | -----------------------------------------------
|
|---|
| 1063 | - create class G4PionSampler: samples partial cross sections, multiplicities
|
|---|
| 1064 | and final state particle types required for pi+, pi- and pi0 scattering
|
|---|
| 1065 | within a nucleus. This class uses re-evaluated pion partial cross sections
|
|---|
| 1066 | and includes production of strange particle pairs.
|
|---|
| 1067 | - G4CascadeSigmaPlusNChannel: correct sigma plus cross sections
|
|---|
| 1068 | - G4CascadSpecialFunctions: move pion, kaon, hyperon total cross sections
|
|---|
| 1069 | to this class
|
|---|
| 1070 | - G4ElementaryParticleCollider: re-write to use G4PionSampler class for
|
|---|
| 1071 | cross sections and multiplicities, remove method reChargering (now redundant)
|
|---|
| 1072 |
|
|---|
| 1073 | 15 Apr 2009 Dennis Wright (hadr-casc-V09-02-02)
|
|---|
| 1074 | -----------------------------------------------
|
|---|
| 1075 | - previous tag no longer used. Bring hadr-casc-V09-02-00 back to
|
|---|
| 1076 | HEAD and re-tag
|
|---|
| 1077 |
|
|---|
| 1078 | 21 Feb 2009 Dennis Wright (hadr-casc-V09-02-01)
|
|---|
| 1079 | -----------------------------------------------
|
|---|
| 1080 | - add printCrossSection method to G4CascadSpecialFunctions
|
|---|
| 1081 | - in GeElementaryParticleCollider, add high energy flag to distinguish
|
|---|
| 1082 | "string-like" behavior
|
|---|
| 1083 | - G4IntraNucleiCascader.cc - allow secondaries from HE interaction to
|
|---|
| 1084 | leave nucleus without interacting
|
|---|
| 1085 | - G4NucleiModel - get high_energy_interaction flag value from G4ElementaryParticleCollider
|
|---|
| 1086 |
|
|---|
| 1087 | 11 Feb 2009 V.Ivanchenko (hadr-casc-V09-02-00)
|
|---|
| 1088 | -----------------------------------------------
|
|---|
| 1089 | - set absorption coefficient 1.0 instead of 0.2 inside
|
|---|
| 1090 | G4CascadSpecialFunctions (D.Wright)
|
|---|
| 1091 |
|
|---|
| 1092 | 25 Nov 2008 Dennis Wright (hadr-casc-V09-01-10)
|
|---|
| 1093 | -----------------------------------------------
|
|---|
| 1094 | - fix multiplicity sampling in G4ElementaryParticleCollider::generateMultiplicity().
|
|---|
| 1095 | Now partial cross sections are normalized to the total cross section instead
|
|---|
| 1096 | of just the sum of 2-body to 6-body final state cross sections. Also fix
|
|---|
| 1097 | 2-body cross sections above 7 GeV where they were too small.
|
|---|
| 1098 | Fix the same cross sections which appear in G4CascadSpecialFunctions.cc
|
|---|
| 1099 |
|
|---|
| 1100 | 21 Nov 2008 Dennis Wright (hadr-casc-V09-01-09)
|
|---|
| 1101 | -----------------------------------------------
|
|---|
| 1102 | - add some comments to cross section tables in G4CascadSpecialFunctions.cc
|
|---|
| 1103 | and G4ElementaryParticleCollider.cc
|
|---|
| 1104 |
|
|---|
| 1105 | 24 Oct 2008 Dennis Wright (hadr-casc-V09-01-08)
|
|---|
| 1106 | -----------------------------------------------
|
|---|
| 1107 | - replace GetAtomicMass() with GetNuclearMass() in cascade/G4InuclEvaporation
|
|---|
| 1108 | and evaporation/G4BertiniEvaporation
|
|---|
| 1109 | - V. Ivantchenko added name to G4CascadeInterface ("Bertini Cascade")
|
|---|
| 1110 |
|
|---|
| 1111 | 17 Oct 2008 Dennis Wright (hadr-casc-V09-01-07)
|
|---|
| 1112 | -----------------------------------------------
|
|---|
| 1113 | - added Coulomb barrier plus barrier penetration in G4IntraNucleiCascader.cc
|
|---|
| 1114 |
|
|---|
| 1115 | 27 Sep 2008 Dennis Wright (hadr-casc-V09-01-06)
|
|---|
| 1116 | -----------------------------------------------
|
|---|
| 1117 | - Fixed 4.3 compiler warnings for G4InuclElementaryParticle.hh by providing
|
|---|
| 1118 | initializers for particle type and mass
|
|---|
| 1119 | - Remove unused variables totscm, totlab in G4BigBanger.cc,
|
|---|
| 1120 | G4ElementaryParticleCollider.cc, and unused mom1 from G4InuclSpecialFunctions.cc
|
|---|
| 1121 |
|
|---|
| 1122 | 22 Sep 2008 Gabriele Cosmo (hadr-casc-V09-01-05)
|
|---|
| 1123 | ------------------------------------------------
|
|---|
| 1124 | - Introduced simple wrapper class G4CascadeMomentum meant to replace usage
|
|---|
| 1125 | of std::vector<double> in the cascade code, to reduce memory allocations.
|
|---|
| 1126 | Courtesy of P.Elmer (princeton Univ.).
|
|---|
| 1127 | - Modified cascade code to make use of G4CascadeMomentum.
|
|---|
| 1128 |
|
|---|
| 1129 | 3 Sep 2008 Dennis Wright (hadr-casc-V09-01-04)
|
|---|
| 1130 | -----------------------------------------------
|
|---|
| 1131 | - G4ElementaryParticleCollider.cc: in method generateMultiplicity, remove
|
|---|
| 1132 | large_cut which increases multiplicity from 3 to 4 abruptly at 4 GeV
|
|---|
| 1133 | and above. This caused a sharp drop-off in the single pion spectra from
|
|---|
| 1134 | pH reactions. The effect in heavier nuclei is small.
|
|---|
| 1135 |
|
|---|
| 1136 | 29 Jun 2008 Dennis Wright (hadr-casc-V09-01-03)
|
|---|
| 1137 | -----------------------------------------------
|
|---|
| 1138 | - add changes made by M. Paterno, J. Kowalkowski, and M. Fischler (FNAL)
|
|---|
| 1139 | to speed up code. All G4Cascade***Channel classes and related code changed.
|
|---|
| 1140 |
|
|---|
| 1141 | 5 May 2008 Dennis Wright (hadr-casc-V09-01-02)
|
|---|
| 1142 | -----------------------------------------------
|
|---|
| 1143 | - retag hadr-casc-V09-csbug as hadr-casc-V09-01-02
|
|---|
| 1144 |
|
|---|
| 1145 | 30 Apr 2008 Dennis Wright (hadr-casc-V09-csbug)
|
|---|
| 1146 | -----------------------------------------------
|
|---|
| 1147 | - fix cross section bug in G4CascadSpecialFunctions that returned
|
|---|
| 1148 | low or zero total cross sections for pi-p, pi+n, np, and pi0
|
|---|
| 1149 | interactions
|
|---|
| 1150 |
|
|---|
| 1151 | 29 Apr 2008 Dennis Wright (hadr-casc-V09-01-01)
|
|---|
| 1152 | -----------------------------------------------
|
|---|
| 1153 | - bring tag hadr-casc-V09-01-coula to HEAD, make official tag
|
|---|
| 1154 |
|
|---|
| 1155 | 22 Apr 2008 Dennis Wright (hadr-casc-V09-01-param)
|
|---|
| 1156 | --------------------------------------------------
|
|---|
| 1157 | - changed pp, nn total cross section parameterization in
|
|---|
| 1158 | G4CascadSpecialFunctions to more closely reflect the PDG values (old one
|
|---|
| 1159 | was off by as much as a factor of 3.
|
|---|
| 1160 |
|
|---|
| 1161 | 3 Apr 2008 Dennis Wright (hadr-casc-V09-01-coula)
|
|---|
| 1162 | -------------------------------------------------
|
|---|
| 1163 | - removed Coulomb barrier from G4IntraNucleiCascader.cc (causes unphysical spike)
|
|---|
| 1164 |
|
|---|
| 1165 | 3 Apr 2008 Dennis Wright (hadr-casc-V09-01-coul)
|
|---|
| 1166 | ------------------------------------------------
|
|---|
| 1167 | - Added Coulomb barrier in G4EquilibriumEvaporator.cc, G4IntraNucleiCascader.cc
|
|---|
| 1168 |
|
|---|
| 1169 | 17 Nov 2007 Dennis Wright (hadr-casc-V09-00-02)
|
|---|
| 1170 | -----------------------------------------------
|
|---|
| 1171 | - Fix angular distribution for nucleon-nucleon elastic scattering
|
|---|
| 1172 | above 2.8 GeV, by modifying G4ElementaryParticleCollider::getElasticCase
|
|---|
| 1173 |
|
|---|
| 1174 | 25 May 2007 Dennis Wright for Aatos Heikkinen (hadr-casc-V08-03-00)
|
|---|
| 1175 | -------------------------------------------------------------------
|
|---|
| 1176 | - implemented interfaces for pre-equilibrium and equilbrium evaporation
|
|---|
| 1177 | models
|
|---|
| 1178 |
|
|---|
| 1179 | 04 May 2007 Aatos Heikkinen (hadr-casc-V08-02-00)
|
|---|
| 1180 | -------------------------------------------------
|
|---|
| 1181 |
|
|---|
| 1182 | - Added protection in G4ElementaryParticleCollider against negative
|
|---|
| 1183 | value to sqrt().
|
|---|
| 1184 |
|
|---|
| 1185 | 08 May 2006 Dennis Wright (hadr-casc-V08-00-00)
|
|---|
| 1186 | -----------------------------------------------
|
|---|
| 1187 |
|
|---|
| 1188 | - cascade: remove G4BERTINI_KAON conditional assembly flags. Files
|
|---|
| 1189 | affected:
|
|---|
| 1190 | G4ElementaryParticleCollider.hh, cc
|
|---|
| 1191 | G4InuclElementaryParticle.hh
|
|---|
| 1192 | G4NucleiModel.hh, cc
|
|---|
| 1193 | G4CascadeInterface.cc
|
|---|
| 1194 | G4IntraNucleiCascader.cc
|
|---|
| 1195 |
|
|---|
| 1196 | - cascade (Pekka Kaitaniemi): G4ElasticCascadeInterface: derive
|
|---|
| 1197 | from G4VIntraNuclearTransportModel instead of G4HadronElastic.
|
|---|
| 1198 | Check for case when no elastic scattering occurs. If so,
|
|---|
| 1199 | return original bullet and target.
|
|---|
| 1200 |
|
|---|
| 1201 | 24 Nov 2005 Dennis Wright (hadr-casc-V07-01-00)
|
|---|
| 1202 | ----------------------------------------------
|
|---|
| 1203 |
|
|---|
| 1204 | - cascade (bertini-V07-01-00 by Aatos Heikkinen)
|
|---|
| 1205 | elastic scattering interface added:
|
|---|
| 1206 | G4ElasticCascadeInterface.hh, .cc added
|
|---|
| 1207 | G4CascadeInterface.hh modified
|
|---|
| 1208 |
|
|---|