| [1340] | 1 | $Id: History,v 1.203 2010/10/22 20:41:05 mkelsey Exp $
|
|---|
| [819] | 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 |
|
|---|
| [1340] | 18 | 22 October 2010 Michael Kelsey (hadr-casc-V09-03-84)
|
|---|
| 19 | ----------------------------------------------------
|
|---|
| 20 | - G4WatcherGun.cc: Change first numeric argument to G4NuclWatcher to int.
|
|---|
| 21 |
|
|---|
| 22 | NOTE: Only this change is include in tag.
|
|---|
| 23 |
|
|---|
| 24 | 20 October 2010 Michael Kelsey (kelsey-20101020b)
|
|---|
| 25 | -------------------------------------------------
|
|---|
| 26 | - G4NucleiModel: Add scaling factors ("units") for nuclear radii and
|
|---|
| 27 | cross-sections, in order to adapt calculations to the literature.
|
|---|
| 28 |
|
|---|
| 29 | 20 October 2010 Michael Kelsey (kelsey-20101020a)
|
|---|
| 30 | -------------------------------------------------
|
|---|
| 31 | - G4NucleiModel: Re-activate changes in worthToPropagate() to use existing
|
|---|
| 32 | nuclear potential values for kaons and hyperons to decide on trapping.
|
|---|
| 33 |
|
|---|
| 34 | 20 October 2010 Michael Kelsey (kelsey-20101020)
|
|---|
| [1337] | 35 | ------------------------------------------------
|
|---|
| [1340] | 36 | - G4NucleiModel: Clean up some bugs in refactoring generateModel(). Back
|
|---|
| 37 | out changes (28 Sep) in worthToPropagate() in order to compare refactored
|
|---|
| 38 | to production code.
|
|---|
| 39 |
|
|---|
| 40 | 20 October 2010 Michael Kelsey (hadr-casc-V09-03-83)
|
|---|
| 41 | ----------------------------------------------------
|
|---|
| 42 | - G4CascadParticle.cc: Remove debugging output left in by accident.
|
|---|
| 43 |
|
|---|
| 44 | NOTE: Tag does not include reorganization of G4NucleiModel (5 Oct 2010)
|
|---|
| 45 |
|
|---|
| 46 | 19 October 2010 Michael Kelsey
|
|---|
| 47 | ------------------------------
|
|---|
| 48 | G4FissionStore, G4FissionConfiguration: Undo migration to integer A and Z.
|
|---|
| 49 |
|
|---|
| 50 | 19 October 2010 Michael Kelsey
|
|---|
| 51 | ------------------------------
|
|---|
| 52 | Clean up CoVerity software analysis reports (three are ignored from obsolete
|
|---|
| 53 | code):
|
|---|
| 54 | G4Analyser.cc
|
|---|
| 55 | G4CascadeCheckBalance.cc
|
|---|
| 56 | G4CascadeInterpolator.icc
|
|---|
| 57 | G4CascadeSampler.icc
|
|---|
| 58 | G4CollisionOutput.cc
|
|---|
| 59 | G4ElementaryParticleCollider.cc
|
|---|
| 60 | G4InuclCollider.cc
|
|---|
| 61 | G4NuclWatcher.cc
|
|---|
| 62 | G4NucleiModel.hh,cc
|
|---|
| 63 | G4RegionModel.cc
|
|---|
| 64 |
|
|---|
| 65 | 14 October 2010 Michael Kelsey
|
|---|
| 66 | ------------------------------
|
|---|
| 67 | - G4NucleiModel.cc: Fix misspelled "G4doulbe" -> G4double.
|
|---|
| 68 |
|
|---|
| 69 | Pick up several missed bits of the "integer A and Z migration," mostly in
|
|---|
| 70 | test and diagnostic code:
|
|---|
| 71 |
|
|---|
| 72 | G4Analyser.hh,cc
|
|---|
| 73 | G4FissionConfiguration.hh
|
|---|
| 74 | G4FissionStore.hh,cc
|
|---|
| 75 | G4NuclWatcher.hh,cc
|
|---|
| 76 |
|
|---|
| 77 | 14 October 2010 Michael Kelsey (hadr-casc-V09-03-82)
|
|---|
| 78 | ----------------------------------------------------
|
|---|
| 79 | - G4CascadParticle.cc: Add protection in getPathToTheNextZone() so that d2
|
|---|
| 80 | is always computed non-negative. Avoids 10^-5 FPEs.
|
|---|
| 81 |
|
|---|
| 82 | 05 October 2010 Michael Kelsey
|
|---|
| 83 | ------------------------------
|
|---|
| 84 | - G4NucleiModel: Major reorganization of generateModel() code.
|
|---|
| 85 | 1) Rename integration functions from "volNumInt[1]" to "zoneIntegralxxx"
|
|---|
| 86 | with "xxx" = "WoodsSaxon" or "Gaussian".
|
|---|
| 87 | 2) Move hardwired constants out to static data members, give clear names.
|
|---|
| 88 | 3) Split function into separate pieces to set binding energies, zone
|
|---|
| 89 | radii, volume/density values, and potential heights.
|
|---|
| 90 | 4) Within new functions, simplify if-cascades where possible, eliminate
|
|---|
| 91 | duplicated code.
|
|---|
| 92 | 5) Move std::vector<> buffers out to data members.
|
|---|
| 93 |
|
|---|
| 94 | Also, modify worthToPropagate() to use non-nucleon potential heights to
|
|---|
| 95 | terminate propagation. Previously, non-nucleons could never fail, as the
|
|---|
| 96 | "getFermiKinetic" always returned zero.
|
|---|
| 97 |
|
|---|
| 98 | 28 September 2010 Michael Kelsey (hadr-casc-V09-03-81)
|
|---|
| 99 | ------------------------------------------------------
|
|---|
| 100 | - G4BigBanger: Missed some integer A/Z migrations, which caused a bus error
|
|---|
| 101 | in test47.
|
|---|
| 102 |
|
|---|
| 103 | 26 September 2010 Michael Kelsey (hadr-casc-V09-03-80)
|
|---|
| 104 | ------------------------------------------------------
|
|---|
| 105 | - G4VCascadeDeexcitation.hh: NEW abstract base class for post-cascade
|
|---|
| 106 | processing. Some common activities will be implemented here from the two
|
|---|
| 107 | actual modules.
|
|---|
| 108 |
|
|---|
| 109 | - G4CascadeDeexcitation, G4PreCompoundDeexcitation: Use new base class
|
|---|
| 110 | above, reorganize code in collide() to use new deExcite(G4Fragment*) where
|
|---|
| 111 | appropriate.
|
|---|
| 112 |
|
|---|
| 113 | - G4InuclCascader.hh: Reference new base class for de-excitation modules.
|
|---|
| 114 |
|
|---|
| 115 | 25 September 2010 Michael Kelsey
|
|---|
| 116 | --------------------------------
|
|---|
| 117 | - G4CascadeColliderBase: Add explosion(G4Fragment*) and explosion(A,Z,Eexc).
|
|---|
| 118 | Move implementation to latter, and write others as call-throughs. Add
|
|---|
| 119 | Z==0 condition for explosion, regardless of A.
|
|---|
| 120 |
|
|---|
| 121 | - G4EquilibriumEvaporator.hh: Remove explosion(G4InuclNuclei*), as
|
|---|
| 122 | unnecessary. Existing explosion(A,Z,E) now overrides base class.
|
|---|
| 123 |
|
|---|
| 124 | - G4CollisionOutput: Add function to process G4ReactionProducts from
|
|---|
| 125 | PreCompound.
|
|---|
| 126 |
|
|---|
| 127 | - G4PreCompoundDeexcitation.cc: Move G4ReactionProducts loop to
|
|---|
| 128 | G4CollisionOutput.
|
|---|
| 129 |
|
|---|
| 130 | 24 September 2010 Michael Kelsey
|
|---|
| 131 | --------------------------------
|
|---|
| 132 | - G4IntraNucleiCascader.cc: Minor shuffle of post-cascade recoil checking,
|
|---|
| 133 | in preparation for moving fragment construction and processing away.
|
|---|
| 134 |
|
|---|
| 135 | - G4CollisionOutput.cc: Replace names "TargetFragment*" and "NucleiFragment*"
|
|---|
| 136 | with "OutgoingNuclei" and "OutgoingNucleus" for consistency with
|
|---|
| 137 | "OutgoingParticles" names. This affects the following source files, all
|
|---|
| 138 | of which are modified to match (using |sed|):
|
|---|
| 139 |
|
|---|
| 140 | cascade/include/G4Analyser.hh
|
|---|
| 141 | cascade/include/G4CollisionOutput.hh
|
|---|
| 142 | cascade/src/G4Analyser.cc
|
|---|
| 143 | cascade/src/G4CascadeCheckBalance.cc
|
|---|
| 144 | cascade/src/G4CascadeDeexcitation.cc
|
|---|
| 145 | cascade/src/G4CascadeInterface.cc
|
|---|
| 146 | cascade/src/G4CollisionOutput.cc
|
|---|
| 147 | cascade/src/G4EquilibriumEvaporator.cc
|
|---|
| 148 | cascade/src/G4Fissioner.cc
|
|---|
| 149 | cascade/src/G4IntraNucleiCascader.cc
|
|---|
| 150 | cascade/src/G4InuclCollider.cc
|
|---|
| 151 | cascade/src/G4InuclEvaporation.cc
|
|---|
| 152 | cascade/src/G4NonEquilibriumEvaporator.cc
|
|---|
| 153 | cascade/src/G4PreCompoundDeexcitation.cc
|
|---|
| 154 |
|
|---|
| 155 | - G4CollisionOutput: Add new G4Fragment data member, with get() and add()
|
|---|
| 156 | accessors. This fragment is *not* used by setOnShell() or by any of the
|
|---|
| 157 | event-total calculations. It will be filled by G4IntraNucleiCascader for
|
|---|
| 158 | use by de-excitation modules. Include G4Fragment in diagnostic output if
|
|---|
| 159 | not empty.
|
|---|
| 160 |
|
|---|
| 161 | - G4CascadeRecoilMaker.cc: Remove G4Fragment::SetExcitationEnergy() call.
|
|---|
| 162 |
|
|---|
| 163 | - G4InuclNuclei: Add new constructor to create from G4Fragment input, and
|
|---|
| 164 | new makeG4Fragment() to spit out a G4Fragment. Also provide a casting
|
|---|
| 165 | operator for the latter.
|
|---|
| 166 |
|
|---|
| 167 | 24 September 2010 Michael Kelsey (hadr-casc-V09-03-79)
|
|---|
| 168 | ------------------------------------------------------
|
|---|
| 169 | Fix numerous compilation warnings on Linux (not seen on MacOSX) left over
|
|---|
| 170 | from migration to integer A and Z (-73 tag).
|
|---|
| 171 |
|
|---|
| 172 | G4BigBanger.cc
|
|---|
| 173 | G4CascadeCheckBalance.hh
|
|---|
| 174 | G4CascadeColliderBase.cc
|
|---|
| 175 | G4CascadeRecoilMaker.cc
|
|---|
| 176 | G4EquilibriumEvaporator.hh,cc
|
|---|
| 177 | G4ExitonConfiguration.hh
|
|---|
| 178 | G4Fissioner.cc
|
|---|
| 179 | G4InuclCollider.cc
|
|---|
| 180 | G4NonEquilibriumEvaporator.cc
|
|---|
| 181 | G4NucleiModel.cc
|
|---|
| 182 |
|
|---|
| 183 | - G4PreCompoundDeexcitation.cc: Drop "G4int" casts as no longer required.
|
|---|
| 184 |
|
|---|
| 185 | 23 September 2010 Michael Kelsey (hadr-casc-V09-03-78)
|
|---|
| 186 | ------------------------------------------------------
|
|---|
| 187 | - G4CascadeInterface, G4InuclCollider: change user selection function name
|
|---|
| 188 | to usePreCompoundDeexcitation(), per Julia Yarba.
|
|---|
| 189 |
|
|---|
| 190 | - G4PreCompoundCascadeInterface.hh,.cc, G4PreCompountInuclCollider.hh,.cc:
|
|---|
| 191 | REMOVE THESE CLASSES. These were copied and modified versions of the
|
|---|
| 192 | standard versions, in order to test the new pre-compound de-excitation.
|
|---|
| 193 | That has been integrated with runtime flags, so the parallel versions are
|
|---|
| 194 | not required.
|
|---|
| 195 |
|
|---|
| 196 | 23 September 2010 Michael Kelsey
|
|---|
| 197 | --------------------------------
|
|---|
| 198 | - G4InuclElementaryParticle.cc: Drop warning message when converting
|
|---|
| 199 | G4ParticleDefinition to type code.
|
|---|
| 200 |
|
|---|
| 201 | - G4CascadeInterface: Add functions for user selection of which
|
|---|
| 202 | post-cascade module to use for de-excitation of the residual nucleus.
|
|---|
| 203 | These call through to the equivalent G4InuclCollider functions.
|
|---|
| 204 |
|
|---|
| 205 | - G4InuclCollider: Add functions for user selection of which
|
|---|
| 206 | post-cascade module to use for de-excitation of the residual nucleus.
|
|---|
| 207 | These delete and re-instantiate the appropriate de-excitation "collider".
|
|---|
| 208 |
|
|---|
| 209 | - G4PreCompoundDeexcitation: Remove convertFragment() function, remove
|
|---|
| 210 | pass-by-value std::vector<> from getDeExcitedFragments() (use data member
|
|---|
| 211 | instead). Clean up some obsolete code usage.
|
|---|
| 212 |
|
|---|
| 213 | - G4CascadeRecoilMaker: Change fragment-making interface:
|
|---|
| 214 | makeRecoilNuclei() now returns G4InuclNuclei* for standard Bertini colliders.
|
|---|
| 215 | makeRecoilFragment() returns G4Fragment* for external PreCompound models.
|
|---|
| 216 | addExcitonConfiguration() sets local copy of excitons, needed in order to
|
|---|
| 217 | call the individual G4Fragment->Setxxx() functions.
|
|---|
| 218 |
|
|---|
| 219 | - G4IntraNucleiCascader.cc: Follow renaming RecoilMaker::makeRecoilNuclei(),
|
|---|
| 220 | use new addExcitonConfiguration().
|
|---|
| 221 |
|
|---|
| 222 | - G4CascadeRecoilMaker: Change fragment-making interface:
|
|---|
| 223 | makeRecoilNuclei() now returns G4InuclNuclei*.
|
|---|
| 224 | makeRecoilFragment() returns G4Fragment*.
|
|---|
| 225 | addExcitonConfiguration() sets local copy of excitons, needed in order to
|
|---|
| 226 | call the individual G4Fragment->Setxxx() functions.
|
|---|
| 227 |
|
|---|
| 228 | - G4IntraNucleiCascader.cc: Follow renaming RecoilMaker::makeRecoilNuclei(),
|
|---|
| 229 | use new addExcitonConfiguration().
|
|---|
| 230 |
|
|---|
| 231 | 22 September 2010 Michael Kelsey
|
|---|
| 232 | --------------------------------
|
|---|
| 233 | - G4CascadeMomentum.hh: This should have been removed from the package long
|
|---|
| 234 | ago. Apologies for the oversight.
|
|---|
| 235 |
|
|---|
| 236 | 22 September 2010 Julia Yarba
|
|---|
| 237 | -----------------------------
|
|---|
| 238 | Added 1st prototype of interface between Bartini cascade and PreCompound model
|
|---|
| 239 | (post-cascade de-excitation).
|
|---|
| 240 |
|
|---|
| 241 | Changes only to:
|
|---|
| 242 | /geant4/source/processes/hadronic/models/cascade/cascade
|
|---|
| 243 |
|
|---|
| 244 | New developments are those G4PreCompound* classes; the GNUmakefile adapted to
|
|---|
| 245 | include necessary links.
|
|---|
| 246 |
|
|---|
| 247 | The PreComp wrapper is G4PreCompundDeexcitation class.
|
|---|
| 248 |
|
|---|
| 249 | The logic, loops, conditions, etc., in the event processing are the same as in
|
|---|
| 250 | the "native" Bertini code. I actually copied it over from G4CascadeInterface,
|
|---|
| 251 | and started from there.
|
|---|
| 252 |
|
|---|
| 253 | However, there're a few technical changes that I'd like to mention.
|
|---|
| 254 |
|
|---|
| 255 | 1. G4PreCompoundInterface inherits directly from G4HadronicInteraction.
|
|---|
| 256 | I felt that we'd not need G4VIntra..., because its only advantage is a pointer
|
|---|
| 257 | (and related access methods) to G4VPreCompoundModel.
|
|---|
| 258 | This has now moved to the de-excitation wrapper.
|
|---|
| 259 |
|
|---|
| 260 | 2. In the Collider itself, I've made the data member to be
|
|---|
| 261 | G4CascadeColliderBase* theDeexcitation
|
|---|
| 262 | This way, it can be transparently set to the native one or the PreComp one
|
|---|
| 263 | (both inherit from G4CascadeColliderBase).
|
|---|
| 264 |
|
|---|
| 265 | 3. There's a setDeExcitation(...) methond in the collider, and also in the interface
|
|---|
| 266 | (which will pass it down to the collider).
|
|---|
| 267 |
|
|---|
| 268 | 19 September 2010 Michael Kelsey (hadr-casc-V09-03-77)
|
|---|
| 269 | ------------------------------------------------------
|
|---|
| 270 | - G4CascadeInterface.cc: Bug fix to logic in retryInelasticNucleus()
|
|---|
| 271 |
|
|---|
| 272 | 17 September 2010 Michael Kelsey (hadr-casc-V09-03-76)
|
|---|
| 273 | ------------------------------------------------------
|
|---|
| 274 | - G4CascadeInterface: Add support to pass nucleus projectiles into
|
|---|
| 275 | collider. Not tested or guaranteed to work, but G4IntraNucleiCascader is
|
|---|
| 276 | supposed to deal with them.
|
|---|
| 277 |
|
|---|
| 278 | 16 September 2010 Michael Kelsey
|
|---|
| 279 | --------------------------------
|
|---|
| 280 | - G4CascadeInterface: Extensive reorganization, moving most
|
|---|
| 281 | functionality out of ApplyYourself and into small member functions.
|
|---|
| 282 | Complicated end-of-loop conditions encapsulated. Data members made into
|
|---|
| 283 | pointers to hide dependences from outside world.
|
|---|
| 284 |
|
|---|
| 285 | 16 September 2010 Michael Kelsey (hadr-casc-V09-03-75)
|
|---|
| 286 | ------------------------------------------------------
|
|---|
| 287 | - G4CascadeInterface.cc: Add parentheses in end-of-while block to fix
|
|---|
| 288 | compilation warning in GCC 4.3.
|
|---|
| 289 |
|
|---|
| 290 | - G4IntraNucleiCascader.cc: In decayTrappedParticle(), check for photon
|
|---|
| 291 | daughters and put them directly onto output list.
|
|---|
| 292 |
|
|---|
| 293 | 16 September 2010 Michael Kelsey
|
|---|
| 294 | --------------------------------
|
|---|
| 295 | - G4CascadParticle.hh: Make getGeneration() const.
|
|---|
| 296 |
|
|---|
| 297 | - G4CascadeDeexcitation.hh: Fix compiler warning about order of data members.
|
|---|
| 298 |
|
|---|
| 299 | - G4IntraNucleiCascader: Intercept hyperons which are "trapped" in nuclear
|
|---|
| 300 | potential, and decay them immediately to produce usable secondaries. This
|
|---|
| 301 | resolves problem with sub-MeV final-state hyperons (reported by A. Dotti),
|
|---|
| 302 | but is not entire correct. Properly, the hyperon should be incorporated
|
|---|
| 303 | into a hypernucleus fragment.
|
|---|
| 304 |
|
|---|
| 305 | - G4InuclElementaryParticle.hh: Add hyperon() identification function, and
|
|---|
| 306 | constructor to take G4DynamicParticle directly.
|
|---|
| 307 |
|
|---|
| 308 | - G4InuclParticle.hh, G4InuclNuclei.hh: Add constructor to take
|
|---|
| 309 | G4DynamicParticle directly.
|
|---|
| 310 |
|
|---|
| 311 | 15 September 2010 Michael Kelsey (hadr-casc-V09-03-74)
|
|---|
| 312 | ------------------------------------------------------
|
|---|
| 313 | - G4CascadeDeexcitation: NEW collider to handle post-cascade processing of
|
|---|
| 314 | nuclear fragment. Encapsulates BigBanger and Evaporators. Eventually
|
|---|
| 315 | will have alternative (configurable or #ifdef) implementation using G4
|
|---|
| 316 | external "pre-compound" models instead of Bertini factories.
|
|---|
| 317 |
|
|---|
| 318 | - G4InuclCollider: Remove post-cascade colliders (BigBanger, Evaporators),
|
|---|
| 319 | replace with new G4CascadeDeexcitation.
|
|---|
| 320 |
|
|---|
| 321 | - G4LorentzConverter: Move construtor implementations to .cc file, and make
|
|---|
| 322 | sure all constructors have initializers for all data members.
|
|---|
| 323 |
|
|---|
| 324 | 14 September 2010 Michael Kelsey (hadr-casc-V09-03-73)
|
|---|
| 325 | ------------------------------------------------------
|
|---|
| 326 | Migrate to integer A and Z values for nuclear configurations. Includes both
|
|---|
| 327 | explicit arguments for G4InuclNuclei, and function arguments, computational
|
|---|
| 328 | parameters involved in nuclear configurations, breakup, etc.
|
|---|
| 329 |
|
|---|
| 330 | G4CascadeCheckBalance.cc
|
|---|
| 331 | G4CascadeInterface.cc
|
|---|
| 332 | G4CascadeRecoilMaker.hh
|
|---|
| 333 | G4Fissioner.hh,cc
|
|---|
| 334 | G4InuclEvaporation.cc
|
|---|
| 335 | G4InuclNuclei.hh,cc
|
|---|
| 336 | G4InuclSpecialFunctions.hh
|
|---|
| 337 | G4NonEquilibriumEvaporator.hh,cc
|
|---|
| 338 | G4NucleiModel.hh,cc
|
|---|
| 339 | G4PreCompoundCascadeInterface.cc
|
|---|
| 340 | bindingEnergy.cc
|
|---|
| 341 | bindingEnergyAsymptotic.cc
|
|---|
| 342 | nuclearLevelDensity.cc
|
|---|
| 343 | paraMaker.cc
|
|---|
| 344 |
|
|---|
| 345 | - G4InuclSpecialFunctions.hh: Eliminate bindingEnergy functions which are
|
|---|
| 346 | no longer used, along with their .cc files:
|
|---|
| 347 |
|
|---|
| 348 | bindingEnergyKummel
|
|---|
| 349 | bindingEnergyExact
|
|---|
| 350 |
|
|---|
| 351 | Migration validated using 100 events (20 GeV pi+ on lead) with verbose==4.
|
|---|
| 352 | Entire log files (9.6M lines, 433 MB) identical before and after migration.
|
|---|
| 353 |
|
|---|
| 354 | 13 September 2010 Michael Kelsey
|
|---|
| 355 | --------------------------------
|
|---|
| 356 | - G4InuclElementaryParticle: Move printParticle() implementation to .cc,
|
|---|
| 357 | and add printing of particle name to output.
|
|---|
| 358 |
|
|---|
| 359 | - G4InuclNuclei.cc: Move base-class printing to first line of output, to
|
|---|
| 360 | match G4InuclEP.
|
|---|
| 361 |
|
|---|
| 362 | 10 September 2010 Michael Kelsey (hadr-casc-V09-03-72)
|
|---|
| 363 | ------------------------------------------------------
|
|---|
| 364 | - G4CascadeRecoilMaker: Add new goodNucleus() function with functionality
|
|---|
| 365 | from G4IntraNucleiCascader::goodCase(). Add parameter to set "rounding
|
|---|
| 366 | tolerance" for small/negative mass differences. Drop getRecoilFragment()
|
|---|
| 367 | in favor of user calling makeRecoilFragment() directly (instead of doing
|
|---|
| 368 | it collide()), which returns a non-const pointer.
|
|---|
| 369 |
|
|---|
| 370 | - G4IntraNucleiCascader: Remove previously introduced getResidualMass() and
|
|---|
| 371 | makeResidualFragment() functions, along with G4InuclNuclei object.
|
|---|
| 372 | Replace with new RecoilMaker utility. Move goodCase() to RecoilMaker, and
|
|---|
| 373 | begin to simplify end-of-cascade processing.
|
|---|
| 374 |
|
|---|
| 375 | - G4ExitonConfiguration.hh: Add function to reset values to zero.
|
|---|
| 376 |
|
|---|
| 377 | - G4InuclNuclei: Add function to zero out exciton configuration, and use
|
|---|
| 378 | it in fill() functions.
|
|---|
| 379 |
|
|---|
| 380 | 9 September 2010 Michael Kelsey
|
|---|
| 381 | -------------------------------
|
|---|
| 382 | - G4CascadeCheckBalance: Add new collide() interface to take lists of both
|
|---|
| 383 | G4InuclElementaryParticles and G4CascadParticles; supports use by
|
|---|
| 384 | G4IntraNucleiCascader and G4CascadeRecoilMaker.
|
|---|
| 385 |
|
|---|
| 386 | - G4CascadeRecoilMaker: NEW pseudo-Collider class to compute the nuclear
|
|---|
| 387 | recoil kinematics of a cascade, either in process or completed. To be
|
|---|
| 388 | used by G4IntraNucleiCascader; uses G4CascadeCheckBalance to do work.
|
|---|
| 389 |
|
|---|
| 390 | 6 September 2010 Michael Kelsey (hadr-casc-V09-03-71)
|
|---|
| 391 | -----------------------------------------------------
|
|---|
| 392 | - G4NucleiModel: Add protections in generateInteractionPartners() so that
|
|---|
| 393 | nucleon and quasideuteron interactions are only selected if there are
|
|---|
| 394 | "enough" nucleons of the necessary type still available (xxxNumberCurrent).
|
|---|
| 395 |
|
|---|
| 396 | - G4InuclNuclei: Add fill() functions which overwrite the entire particle
|
|---|
| 397 | structure, with same argument lists as constructors. Will be used mainly
|
|---|
| 398 | by G4IntraNucleiCascader::makeResidualFragment().
|
|---|
| 399 |
|
|---|
| 400 | - G4IntraNucleiCascader: Hide non-physical nucleus message behind verbose
|
|---|
| 401 | flag. Add function and data member to build recoil nucleus (fragment) at
|
|---|
| 402 | end of every iteration; will eventually replace functionality of
|
|---|
| 403 | getResidualMass().
|
|---|
| 404 |
|
|---|
| 405 | 2 September 2010 Michael Kelsey (hadr-casc-V09-03-70)
|
|---|
| 406 | -----------------------------------------------------
|
|---|
| 407 | - G4NucleiModel.cc: Restore hadr-casc-V09-03-68 revision 1.71, and remove
|
|---|
| 408 | the two resize(3) actions.
|
|---|
| 409 |
|
|---|
| 410 | NOTE: The exercise below has (finally) resolve the cross-section
|
|---|
| 411 | discrepancy reported by Sunanda Banerjee back in July. It turns out that my
|
|---|
| 412 | use of "resize(3)" to pre-allocate the qdeutron and acsec buffers on each
|
|---|
| 413 | interaction was incorrect. This doesn't just reserve memory, it fills the
|
|---|
| 414 | vectors with three elements, so that subsequent push_back()'s fill [3], [4],
|
|---|
| 415 | etc.
|
|---|
| 416 |
|
|---|
| 417 | 2 September 2010 Michael Kelsey
|
|---|
| 418 | -------------------------------
|
|---|
| 419 | - G4NucleiModel.cc: Reverted to hadr-casc-V09-03-38 revision 1.45, and
|
|---|
| 420 | interface changes incorporated. See NOTE below from 28 July 2010.
|
|---|
| 421 | Cross-section changes have not been resolved or validated. Since -38
|
|---|
| 422 | revision has better data/MC matching (ratio near 1), it is restored as the
|
|---|
| 423 | baseline version, and changes will be re-done incrementally.
|
|---|
| 424 |
|
|---|
| 425 | Each increment after (0) is tagged "kelsey-20100902x", x=a,b,c,d etc.
|
|---|
| 426 |
|
|---|
| 427 | 0) Implement new ctor and generateModel() calls
|
|---|
| 428 | Make cross-section tables statically initialized
|
|---|
| 429 | Include absorptionCrossSection definition
|
|---|
| 430 | 1) Use lookup tables for cross-sections, and new interpolator
|
|---|
| 431 | Change CHC_CHECK to G4CASCADE_DEBUG_CHARGE
|
|---|
| 432 | 2) Use this package's bindingEnergy() function
|
|---|
| 433 | 3) Update diagnostic messages and verbosity levels;
|
|---|
| 434 | Add missing initializers to all constructors;
|
|---|
| 435 | Use data-member buffer for G4CollisionOutput
|
|---|
| 436 | 4) Use generateWithRandomAngles() everywhere appropriate;
|
|---|
| 437 | Collapse if-cascades to use if-return where possible
|
|---|
| 438 | 5) Make generateModel() re-usable with data-member buffers
|
|---|
| 439 | 6) Energy-momentum conservation checking;
|
|---|
| 440 | Implement generateNucleonMomentum;
|
|---|
| 441 | Remove extraneous semicolons and blank lines
|
|---|
| 442 | 7) Use local variables in passFermi();
|
|---|
| 443 | Fix some minor LorentzVector calculations;
|
|---|
| 444 | Use generateNucleonMomentum() for quasi-deuterons
|
|---|
| 445 | 8) Use data-member buffers for quasideuterons, coords, mom.
|
|---|
| 446 | 9) Use enum labels for quasideuteron codes
|
|---|
| 447 | 10) Restore Dennis' improved potential (6-zone) calculations
|
|---|
| 448 |
|
|---|
| 449 | 4 August 2010 Michael Kelsey (hadr-casc-V09-03-69)
|
|---|
| 450 | --------------------------------------------------
|
|---|
| 451 | - G4CascadeData: Add name data member and optional ctor argument, use
|
|---|
| 452 | when printing tables.
|
|---|
| 453 |
|
|---|
| 454 | - G4CascadeFunctions.icc: Pretty-up printing output using name string.
|
|---|
| 455 |
|
|---|
| 456 | - G4Cascade*Channel.cc: Add name string to data() ctor, use central part of
|
|---|
| 457 | class name, e.g., "PiMinusP" for G4CascadePiMinusPChannel.
|
|---|
| 458 |
|
|---|
| 459 | - G4ElementaryParticleCollider.cc: Add printing of all final-state tables,
|
|---|
| 460 | one time only, protected by G4CASCADE_DEBUG_SAMPLER.
|
|---|
| 461 |
|
|---|
| 462 | - GNUmakefile: Add G4CASCADE_DEBUG_SAMPLER preprocessor flag.
|
|---|
| 463 |
|
|---|
| 464 | 3 August 2010 Michael Kelsey (hadr-casc-V09-03-68)
|
|---|
| 465 | --------------------------------------------------
|
|---|
| 466 | - G4CascadeData.hh: Add print() and printXsec() functions to dump tables.
|
|---|
| 467 | - G4CascadeData.icc: Move implementations out of G4CascadeData.hh file.
|
|---|
| 468 |
|
|---|
| 469 | - G4CascadeFunctions.hh,icc: Add printTable() to dump tables.
|
|---|
| 470 |
|
|---|
| 471 | - G4CascadeInterpolator.hh,icc: Add printBins() to dump energy bin edges.
|
|---|
| 472 |
|
|---|
| 473 | - G4CascadeSampler.hh,icc: Add print() to call through to interpolator.
|
|---|
| 474 |
|
|---|
| 475 | NOTE: This should be the last set of functional changes for a while.
|
|---|
| 476 | Sunanda Bannerjee reported substantial changes in validation plots for the
|
|---|
| 477 | Bertini cascade between 4.9.3-ref-05 (hadr-casc-V09-03-23-01) and
|
|---|
| 478 | 4.9.3-ref-06/4.9.4-beta-01 (hadr-casc-V09-03-43).
|
|---|
| 479 |
|
|---|
| 480 | 28 July 2010 Michael Kelsey (hadr-casc-V09-03-67)
|
|---|
| 481 | -------------------------------------------------
|
|---|
| 482 | - G4NucleiModel.cc: Set deuteron arrays to fixed length (3). Add A/Z
|
|---|
| 483 | values to generateModel diagnostic message.
|
|---|
| 484 |
|
|---|
| 485 | - G4EquilibriumEvaporator.cc: Change some fixed length std::vector<> to
|
|---|
| 486 | simple C arrays.
|
|---|
| 487 |
|
|---|
| 488 | - G4Fissioner.cc: Move G4FissionStore to class data member for reuse.
|
|---|
| 489 |
|
|---|
| 490 | - G4FissionStore: Add ::clear() function to support reuse, move addConfig()
|
|---|
| 491 | implementation to .cc file.
|
|---|
| 492 |
|
|---|
| 493 | - G4IntraNucleiCascader: Move G4NucleiModel to class-level data member
|
|---|
| 494 | (pointer) so it can be reused across collisions.
|
|---|
| 495 |
|
|---|
| 496 | 26 July 2010 Michael Kelsey
|
|---|
| 497 | ---------------------------
|
|---|
| 498 | - G4Analyzer.cc: Use const-refs for particle lists.
|
|---|
| 499 |
|
|---|
| 500 | - G4BigBanger, G4ElementaryParticleCollider: Move std::vector<> buffers to
|
|---|
| 501 | .hh file to allow reuse.
|
|---|
| 502 |
|
|---|
| 503 | - G4NucleiModel.cc: Simplify buffers used in generateModel() to reduce
|
|---|
| 504 | G4double allocations.
|
|---|
| 505 |
|
|---|
| 506 | 23 July 2010 Michael Kelsey (hadr-casc-V09-03-66)
|
|---|
| 507 | -------------------------------------------------
|
|---|
| 508 | - G4CascadeInterface: Move G4CollisionOutput to .hh file for reuse between
|
|---|
| 509 | events.
|
|---|
| 510 |
|
|---|
| 511 | - G4IntraNucleiCascader: Move buffers for cascade output to .hh file, so
|
|---|
| 512 | they can be reused between events.
|
|---|
| 513 |
|
|---|
| 514 | - G4NucleiModel: Move G4CollisionOutput to .hh file for reuse; use
|
|---|
| 515 | references for bullet and target args to G4EPCollider.
|
|---|
| 516 |
|
|---|
| 517 | 21 July 2010 Michael Kelsey (hadr-casc-V09-03-65)
|
|---|
| 518 | -------------------------------------------------
|
|---|
| 519 | - GNUmakefile: Add new G4CASCADE_CHECK_ECONS to turn off all of the
|
|---|
| 520 | internal conservation checks (reduce std::vector<> memory churn!).
|
|---|
| 521 |
|
|---|
| 522 | - G4CascadeColliderBase.cc: Use G4CASCADE_CHECK_ECONS to set the default
|
|---|
| 523 | value of "doConservationChecks": true if defined, false if not defined.
|
|---|
| 524 | This is done with #ifdef-else-endif block, NOT some fancy macro.
|
|---|
| 525 |
|
|---|
| 526 | - G4CascadeInterface.cc: Use G4CASCADE_SKIP_ECONS to toggle reporting
|
|---|
| 527 | violations before end of loop (don't need to call balance.okay() twice!).
|
|---|
| 528 |
|
|---|
| 529 | - G4ElementaryParticleCollider.cc: Put verbosity check before call to
|
|---|
| 530 | validateOutput() to avoid unnecessary vector manipulations.
|
|---|
| 531 |
|
|---|
| 532 | - G4IntraNucleiCascader.cc: Set doConservationChecks = true
|
|---|
| 533 | unconditionally; used to reject bad cascades.
|
|---|
| 534 |
|
|---|
| 535 | - G4NucleiModel.cc: Use G4CASCADE_CHECK_ECONS to hide balance.collide().
|
|---|
| 536 |
|
|---|
| 537 | 20 July 2010 Michael Kelsey (hadr-casc-V09-03-64)
|
|---|
| 538 | -------------------------------------------------
|
|---|
| 539 | - G4CascadeColliderBase: Make G4CascadeCheckBalance a pointer member, move
|
|---|
| 540 | ctor and dtor to .cc file. Change balance tolerances to 1 per mil and 1
|
|---|
| 541 | MeV.
|
|---|
| 542 |
|
|---|
| 543 | - G4InuclCollder: Make all colliders pointer members.
|
|---|
| 544 |
|
|---|
| 545 | - G4IntraNucleiCascader: Make EPCollider a pointer member, and call
|
|---|
| 546 | G4CollisionOutput::setOnShell() to balance energy-momentum for null fragments.
|
|---|
| 547 |
|
|---|
| 548 | - G4InuclNuclei.cc: Preserve momentum magnitude when setting excitation
|
|---|
| 549 | energy by setting mass and kinetic energy.
|
|---|
| 550 |
|
|---|
| 551 | 19 July 2010 Michael Kelsey (hadr-casc-V09-03-63)
|
|---|
| 552 | -------------------------------------------------
|
|---|
| 553 | - G4CascadeCheckBalance.cc: Change zero-tolerance to 10 keV (1e-5) from
|
|---|
| 554 | 1 keV (1e-6).
|
|---|
| 555 |
|
|---|
| 556 | - G4CollisionOutput.hh: Fix capitalization of "numberOfOutgoingParticles".
|
|---|
| 557 |
|
|---|
| 558 | - G4EquilibriumEvaporator.cc: Remove duplicate EEXS setting.
|
|---|
| 559 |
|
|---|
| 560 | - G4InuclNuclei: Change implementation of setExitationEnergy() to adjust
|
|---|
| 561 | mass while keeping momentum vector constant. Currently done with
|
|---|
| 562 | "expensive" LorentzVector manipuation. Should be done by recomputing
|
|---|
| 563 | kinetic energy given new mass value.
|
|---|
| 564 |
|
|---|
| 565 | - G4NonEquilibriumEvaporator.cc: Modify particle-creation block to work as
|
|---|
| 566 | G4EquilibriumEvaporator now does. Simplify some if-blocks.
|
|---|
| 567 |
|
|---|
| 568 | 16 July 2010 Michael Kelsey (hadr-casc-V09-03-62)
|
|---|
| 569 | -------------------------------------------------
|
|---|
| 570 | - G4CollisionOutput: Add interfaces to handle G4CascadParticles.
|
|---|
| 571 |
|
|---|
| 572 | - G4IntraNucleiCascader: Eliminate local "inter_case" data member and
|
|---|
| 573 | function. Use base class G4InteractionCase directly. Add functionality
|
|---|
| 574 | to test for conservation and recoil before exiting "itry" loop, and redo
|
|---|
| 575 | cascade if unbalanced recoil fragment.
|
|---|
| 576 |
|
|---|
| 577 | - G4{PreCompound}InuclCollider.cc: Drop "setInteractionCase()" function.
|
|---|
| 578 |
|
|---|
| 579 | 15 July 2010 Michael Kelsey (hadr-casc-V09-03-61)
|
|---|
| 580 | -------------------------------------------------
|
|---|
| 581 | - G4CollisionOutput: New ::add() function to combine two objects. New
|
|---|
| 582 | accessors to get total charge and baryon number.
|
|---|
| 583 |
|
|---|
| 584 | - G4CascadeCheckBalance: Make tempOutput data member, for thread-safety,
|
|---|
| 585 | rather than static variables. Use new G4CollisionOutput accessors.
|
|---|
| 586 |
|
|---|
| 587 | - G4IntraNucleiCascader.cc: Move local output buffers outside while loop,
|
|---|
| 588 | use std::vector<>::insert() for copying.
|
|---|
| 589 |
|
|---|
| 590 | - G4InuclCollider.cc: Use new G4CollisionOutput::add() interface.
|
|---|
| 591 |
|
|---|
| 592 | - G4NucleiModel.cc: Hide conservation checks behind verbose>2. Otherwise
|
|---|
| 593 | log files get too big
|
|---|
| 594 |
|
|---|
| 595 | 15 July 2010 Michael Kelsey (hadr-casc-V09-03-60)
|
|---|
| 596 | -------------------------------------------------
|
|---|
| 597 | - G4CascadeCheckBalance: Add layer of protection in relativeX() (check
|
|---|
| 598 | initial values) to avoid divide-by-zero errors. Add another interface to
|
|---|
| 599 | accept list of G4CascadParticles, for use with G4NucleiModel. Add check
|
|---|
| 600 | of momentum direction balance, not just magnitudes.
|
|---|
| 601 |
|
|---|
| 602 | - G4IntraNucleiCascader.cc: Rearrange end-of-loop if-blocks to allow for
|
|---|
| 603 | conservation checking prior to return. Add reporting of both too-low and
|
|---|
| 604 | too-high residual energy (at verbose=2) for single-nucleon fragments.
|
|---|
| 605 |
|
|---|
| 606 | - G4InuclCollider.cc: Remove re-named conservation checks, now all done by
|
|---|
| 607 | colliders themselves.
|
|---|
| 608 |
|
|---|
| 609 | - G4InuclParticle.hh: Add setKineticEnergy() function to simplify handling
|
|---|
| 610 | of some kinematics.
|
|---|
| 611 |
|
|---|
| 612 | - G4NucleiModel: Add G4InuclNuclei data member (created in generateModel()),
|
|---|
| 613 | for use with conservation checks. Do check at end of generateParticleFate().
|
|---|
| 614 |
|
|---|
| 615 | 15 July 2010 Michael Kelsey (hadr-casc-V09-03-59)
|
|---|
| 616 | -------------------------------------------------
|
|---|
| 617 | - G4InuclNuclei: Use G4DynamicParticle::theDynamicalMass to carry around
|
|---|
| 618 | excitation energy (== theDynamicalMass-thePDGMass). This allows
|
|---|
| 619 | excitation to be changed on the fly, with all kinematics handled
|
|---|
| 620 | correctly. It also allows ONLY the ground state nucleus to be created as
|
|---|
| 621 | a G4Ions object (whether global or private), reducing the number of such
|
|---|
| 622 | objects by a factor of thousands.
|
|---|
| 623 |
|
|---|
| 624 | 14 July 2010 Michael Kelsey (hadr-casc-V09-03-58)
|
|---|
| 625 | -------------------------------------------------
|
|---|
| 626 | - G4CollisionOutput.cc: For initial four-momentum adjustment, skip over
|
|---|
| 627 | particles which would acquire negative energy after "correction."
|
|---|
| 628 |
|
|---|
| 629 | - G4ElementaryParticleCollider.cc: Bug fix for two-body final states.
|
|---|
| 630 | Kinematics should not require "rescaling." That was driven by states
|
|---|
| 631 | which were kinematically forbidden, with m1+m2 > etot_scm (e.g., pi0 p ->
|
|---|
| 632 | pi+ n with just 5 MeV kinetic energy). Now those states are caught and
|
|---|
| 633 | rejected.
|
|---|
| 634 |
|
|---|
| 635 | - G4CascadeInterface.cc, G4InuclCollider.cc: Improve diagnostics reporting
|
|---|
| 636 | number of retries.
|
|---|
| 637 |
|
|---|
| 638 | - G4EquilibriumEvaporator.cc: When computing residual excitation
|
|---|
| 639 | (EEXS_new), original thrown energy, S, should be used, not reboosted
|
|---|
| 640 | particle after recoil. Simplify evaporation kinematics to conserve
|
|---|
| 641 | four-momentum automatically (PEX -= mom).
|
|---|
| 642 |
|
|---|
| 643 | 14 July 2010 Michael Kelsey (hadr-casc-V09-03-57)
|
|---|
| 644 | -------------------------------------------------
|
|---|
| 645 | - G4CascadeColliderBase: New subclass of G4VCascadeCollider, which takes
|
|---|
| 646 | over all of its concrete functionality, and adds conservation checker
|
|---|
| 647 | (G4CascadeCheckBalance) as data member. Wrapper functions and control
|
|---|
| 648 | flag allow colliders to user it transparently.
|
|---|
| 649 |
|
|---|
| 650 | - G4VCascadeCollider: Move concrete functionality to new base class.
|
|---|
| 651 |
|
|---|
| 652 | - All colliders: Change base class to new G4CascadeColliderBase. Remove
|
|---|
| 653 | local copies of conservation-checker, using new base function instead.
|
|---|
| 654 |
|
|---|
| 655 | cascade/include/G4BigBanger.hh
|
|---|
| 656 | cascade/include/G4ElementaryParticleCollider.hh
|
|---|
| 657 | cascade/include/G4EquilibriumEvaporator.hh
|
|---|
| 658 | cascade/include/G4EvaporationInuclCollider.hh
|
|---|
| 659 | cascade/include/G4Fissioner.hh
|
|---|
| 660 | cascade/include/G4IntraNucleiCascader.hh
|
|---|
| 661 | cascade/include/G4InuclCollider.hh
|
|---|
| 662 | cascade/include/G4NonEquilibriumEvaporator.hh
|
|---|
| 663 | cascade/include/G4PreCompoundInuclCollider.hh
|
|---|
| 664 | cascade/src/G4BigBanger.cc
|
|---|
| 665 | cascade/src/G4ElementaryParticleCollider.cc
|
|---|
| 666 | cascade/src/G4EquilibriumEvaporator.cc
|
|---|
| 667 | cascade/src/G4EvaporationInuclCollider.cc
|
|---|
| 668 | cascade/src/G4Fissioner.cc
|
|---|
| 669 | cascade/src/G4IntraNucleiCascader.cc
|
|---|
| 670 | cascade/src/G4InuclCollider.cc
|
|---|
| 671 | cascade/src/G4NonEquilibriumEvaporator.cc
|
|---|
| 672 | cascade/src/G4PreCompoundInuclCollider.cc
|
|---|
| 673 |
|
|---|
| 674 | - G4EquilibriumEvaporator: Use new functionality (above) to turn off
|
|---|
| 675 | conservation checks when evaporating fission products.
|
|---|
| 676 |
|
|---|
| 677 | - G4CascadeInterface.cc: Report number of retries in verbose messages.
|
|---|
| 678 |
|
|---|
| 679 | - G4IntraNucleiCascader.cc: Remove sanity check on afin/zfin vs. model.
|
|---|
| 680 |
|
|---|
| 681 | 13 July 2010 Michael Kelsey (hadr-casc-V09-03-56)
|
|---|
| 682 | -------------------------------------------------
|
|---|
| 683 | - G4CascadeCheckBalance: Add zero protection (needed for momentum ratio)
|
|---|
| 684 | using a static tolerance parameter.
|
|---|
| 685 |
|
|---|
| 686 | - G4EquilibriumEvaporator.cc: Add dumping of G4CollisionOutput before exit,
|
|---|
| 687 | some fixes for "PEX" adjustments as EEXS changes.
|
|---|
| 688 |
|
|---|
| 689 | - G4NonEquilibriumEvaporator.cc: Add conservation checking, dump of output,
|
|---|
| 690 | some fixes for "PEX" adjustments as EEXS changes.
|
|---|
| 691 |
|
|---|
| 692 | - G4Fissioner.cc: Add conservation checking, remove addition of excitation
|
|---|
| 693 | energy to input nucleus mass, since already included.
|
|---|
| 694 |
|
|---|
| 695 | 13 July 2010 Michael Kelsey
|
|---|
| 696 | ---------------------------
|
|---|
| 697 | - G4CascadeCheckBalance.cc: Hide violation reports behind verbose == 1.
|
|---|
| 698 |
|
|---|
| 699 | - G4ElementaryParticleCollider.cc: Bump ::collide() message to verbose > 1.
|
|---|
| 700 |
|
|---|
| 701 | - G4EquilibriumEvaporator.cc: Add conservation checking, collapse if-cascades
|
|---|
| 702 | by doing failure tests and exits up front, add sanity check on eex_real.
|
|---|
| 703 |
|
|---|
| 704 | - G4IntraNucleiCascader.cc: Add diagnostic messages and some FIXME
|
|---|
| 705 | comments, validate afin/zfin against G4NucleiModel result.
|
|---|
| 706 |
|
|---|
| 707 | - G4InuclCollider.cc: Move conservation check outside verbosity flag. This
|
|---|
| 708 | adds to CPU usage, so may need #ifdef protection later. Adjust a few
|
|---|
| 709 | verbosity levels.
|
|---|
| 710 |
|
|---|
| 711 | - G4LorentzConvertor.cc: Bump all diagnostic messages to verbose > 2.
|
|---|
| 712 |
|
|---|
| 713 | - G4NucleiModel.cc: Simplify main if-block to put failure up front; add
|
|---|
| 714 | debugging messages when decrementing proton or neutron counts.
|
|---|
| 715 |
|
|---|
| 716 | 11 July 2010 Michael Kelsey
|
|---|
| 717 | ---------------------------
|
|---|
| 718 | - G4CascadeCheckBalance: Add ctor argument with name of parent class; use
|
|---|
| 719 | this name when reporting results. Add interface for nuclear fragment
|
|---|
| 720 | list. Allow parent class name to be changed dynamically.
|
|---|
| 721 |
|
|---|
| 722 | - G4BigBanger.cc, G4CascadeInterface.cc, G4ElementaryParticleCollider.cc,
|
|---|
| 723 | G4InuclCollider.cc, G4NucleiModel.cc: Pass name to G4CascadeCheckBalance.
|
|---|
| 724 |
|
|---|
| 725 | - G4Fissioner.cc: Use G4CascadeCheckBalance to test energy conservation.
|
|---|
| 726 |
|
|---|
| 727 | - G4InuclNuclei.hh: Add model ID as optional ctor argument.
|
|---|
| 728 |
|
|---|
| 729 | - G4InuclCollider.cc: Move balance checks on evaporators outside verbosity.
|
|---|
| 730 | Adjust name of G4CascadeCheckBalance for clear reporting.
|
|---|
| 731 |
|
|---|
| 732 | - G4VCascadeCollider.hh: Add protected function to change name dynamically.
|
|---|
| 733 |
|
|---|
| 734 | 6 July 2010 Dennis Wright (hadr-casc-V09-03-55)
|
|---|
| 735 | -----------------------------------------------
|
|---|
| 736 | - G4IntraNucleiCascader.cc: add to final particle list those cascade
|
|---|
| 737 | particles which were formerly abandoned at cascade termination;
|
|---|
| 738 | - G4IntraNucleiCascader.cc: allow meson excitons to pass out of nucleus
|
|---|
| 739 | since they are not proper excitons, and would be lost otherwise
|
|---|
| 740 |
|
|---|
| 741 | 4 July 2010 Dennis Wright (hadr-casc-V09-03-54)
|
|---|
| 742 | -----------------------------------------------
|
|---|
| 743 | - tag changes up to now
|
|---|
| 744 |
|
|---|
| 745 | 2 July 2010 Michael Kelsey
|
|---|
| 746 | --------------------------
|
|---|
| 747 | - G4BigBanger.cc: Moving "generateMomentumModules()" inside loop. For
|
|---|
| 748 | three-body decays, the angles are not ajustable (so always fails).
|
|---|
| 749 |
|
|---|
| 750 | - G4CascadeInterface.cc: Set verbosity on G4CollisionOutput.
|
|---|
| 751 |
|
|---|
| 752 | - G4EquilibriumEvaporator.cc: Simplify if-cascades to reduce nesting (test
|
|---|
| 753 | for errors and exit up front, rather than in else-blocks).
|
|---|
| 754 |
|
|---|
| 755 | - G4InuclCollider.cc: Set verbosity on G4CollisionOutput.
|
|---|
| 756 |
|
|---|
| 757 | - G4IntraNucleiCascader.cc: Throw away casacde which leaves "negative energy
|
|---|
| 758 | recoil" (i.e. rest-frame energy of recoil less than mass of nucleus or
|
|---|
| 759 | nucleon).
|
|---|
| 760 |
|
|---|
| 761 | 1 July 2010 Michael Kelsey
|
|---|
| 762 | --------------------------
|
|---|
| 763 | - G4InuclCollider.cc: Used wrong input target for conservation-law checking
|
|---|
| 764 | subsequent to G4EquilibriumEvaporator.
|
|---|
| 765 |
|
|---|
| 766 | - G4EquilibriumEvaporator.cc, G4NonEquilibriumEvaporator.cc: Handle
|
|---|
| 767 | excitation energy differently with new G4InuclNuclei interface. Compute
|
|---|
| 768 | updated values correctly, by taking nuclear mass difference then
|
|---|
| 769 | subtracting energy of evaporated particle.
|
|---|
| 770 |
|
|---|
| 771 | - G4InuclNuclei: Reorganization to properly incorporate excited states.
|
|---|
| 772 | Excitation energy included in mass in all cases. setExcitationEnergy() now
|
|---|
| 773 | replaces G4PartDefn pointer with new excited state. getNucleiMass() takes
|
|---|
| 774 | (optional) excitation, calls G4NucleiProperties to get mass value. For
|
|---|
| 775 | weird fragments, multiple isomers allowed, assigned unique non-standard
|
|---|
| 776 | PDG codes. Include particle name in printout (now in .cc file).
|
|---|
| 777 |
|
|---|
| 778 | - G4CollisionOutput.cc: Do not include nuclear excitation energy in output
|
|---|
| 779 | sum; now included with nuclear mass automatically (and properly).
|
|---|
| 780 |
|
|---|
| 781 | - G4CascadeCheckBalance.cc: Do not include nucler excitation energy in input
|
|---|
| 782 | sum; now inluded with nuclear mass automatically (and properly).
|
|---|
| 783 |
|
|---|
| 784 | - G4IntraNucleiCascader.cc: For recoil nuclear fragments, treat excitation
|
|---|
| 785 | energy properly: compute as difference between recoil "mass" (recoil-frame
|
|---|
| 786 | energy) and ground-state A/Z mass, and pass into G4InuclNuclei ctor.
|
|---|
| 787 | After the cascade, add some recoil energy checks to deal with both
|
|---|
| 788 | floating-point round-off, and quasi-elastic scatters (which change the
|
|---|
| 789 | bullet direction, and leave the nucleus with "missing" energy).
|
|---|
| 790 |
|
|---|
| 791 | - G4BigBanger.cc: Simplify boost to "target" nucleus, using "boostVector"
|
|---|
| 792 | instead of G4LorentzConvertor machinery.
|
|---|
| 793 |
|
|---|
| 794 | 30 June 2010 Michael Kelsey
|
|---|
| 795 | ---------------------------
|
|---|
| 796 | - G4BigBanger.cc: Improve handling of excitation energy as part of nuclear
|
|---|
| 797 | mass, deal with two-body explosion properly (x=0.5, not random). Some
|
|---|
| 798 | tweaks to diagnostic messages.
|
|---|
| 799 |
|
|---|
| 800 | - G4CascadeCheckBalance: Add excitation energy to total energy for bullet
|
|---|
| 801 | and target nuclei. This is done in G4CollisionOutput for secondaries. It
|
|---|
| 802 | is NOT relativistically correct (should add to mass, not energy), but is
|
|---|
| 803 | consistent.
|
|---|
| 804 |
|
|---|
| 805 | - G4CollisionOutput.cc: Use "getExitationEnergyInGeV()" instead of "0.001*".
|
|---|
| 806 |
|
|---|
| 807 | - G4IntraNucleiCascader.cc: More diagnostic messages, improve the afin/zfin
|
|---|
| 808 | sanity check by requiring A>=Z.
|
|---|
| 809 |
|
|---|
| 810 | 28 June 2010 Michael Kelsey
|
|---|
| 811 | ---------------------------
|
|---|
| 812 | - G4CascadeCheckBalance: Report violations on G4cerr always, regardless
|
|---|
| 813 | of verbosity level. Add collide(...,<vector>) interface to allow use
|
|---|
| 814 | from within G4ElementaryParticleCollider.
|
|---|
| 815 |
|
|---|
| 816 | - G4ElementaryParticleCollider.cc: Add conservation checks within ::collide().
|
|---|
| 817 |
|
|---|
| 818 | - G4IntraNucleiCascader.cc: Add more diagnostic messages. Test for
|
|---|
| 819 | negative values of afin, zfin, and try again. Set round-off limit (1e-6),
|
|---|
| 820 | and test nuclear recoil energy for bound (setting to zero) before doing
|
|---|
| 821 | energy-violation test.
|
|---|
| 822 |
|
|---|
| 823 | - G4InuclNuclei.cc: Abort job if passed negative Z or A argument.
|
|---|
| 824 |
|
|---|
| 825 | 28 June 2010 Michael Kelsey
|
|---|
| 826 | ---------------------------
|
|---|
| 827 | - G4BigBanger.cc: Missed one instance of GetBindingEnergy().
|
|---|
| 828 |
|
|---|
| 829 | 26 June 2010 Dennis Wright
|
|---|
| 830 | --------------------------
|
|---|
| 831 | - G4InuclNuclei: Fix bug in calculation of PDG code.
|
|---|
| 832 |
|
|---|
| 833 | 25 June 2010 Michael Kelsey (hadr-casc-V09-03-53)
|
|---|
| 834 | -------------------------------------------------
|
|---|
| 835 | - G4ElementaryParticleCollider.cc: MAJOR BUG FIX: Three different places
|
|---|
| 836 | in generating N-body momenta had incorrect "recoil" calculations. The
|
|---|
| 837 | Nth four-vector was computed as simply -total, which produced negative
|
|---|
| 838 | energy states (obviously). The correct calculation should have been
|
|---|
| 839 | N = G4LV(0,0,0,etot) - (total) in each instance.
|
|---|
| 840 |
|
|---|
| 841 | 24 June 2010 Michael Kelsey (hadr-casc-V09-03-52)
|
|---|
| 842 | -------------------------------------------------
|
|---|
| 843 | - G4CascadeCheckBalance.cc: Bug fixes to limit checks; should be using
|
|---|
| 844 | std::abs(), or negative violations don't get caught! Also did some
|
|---|
| 845 | cleanup for compiler warnings see on Linux.
|
|---|
| 846 |
|
|---|
| 847 | 23 June 2010 Michael Kelsey
|
|---|
| 848 | ---------------------------
|
|---|
| 849 | - G4CascadeInterface.cc: Fix infinite-loop bug with energy-violation; must
|
|---|
| 850 | check for (nTries>maxTries) outside parenthetical, with balance.okay()
|
|---|
| 851 | inside. Do conservation checks all the time, not just with flag set. If
|
|---|
| 852 | e-violation is "infinite loop", dump last generated event and abort job.
|
|---|
| 853 |
|
|---|
| 854 | - G4CascadeCheckBalance: Add checks on baryon number, charge, and kinetic
|
|---|
| 855 | energy. "Global" sanity check (::okay() function) does not include K.E.
|
|---|
| 856 |
|
|---|
| 857 | 23 June 2010 Michael Kelsey (hadr-casc-V09-03-51)
|
|---|
| 858 | -------------------------------------------------
|
|---|
| 859 | - bindingEnergy.cc: Replace entire function with call-through to
|
|---|
| 860 | G4NucleiProperties. Copy test for valid A/Z from there, and return
|
|---|
| 861 | 0. directly on failure; suppresses warning message in 9.4-beta.
|
|---|
| 862 |
|
|---|
| 863 | - G4EquilibriumEvaporator.cc, G4Fissioner.cc, G4IntraNucleiCascader.cc
|
|---|
| 864 | G4InuclNuclei.cc, G4NonEquilibriumEvaporator.cc, G4NucleiModel.cc
|
|---|
| 865 | G4VCascadeCollider.cc: Restore calls to local "bindingEnergy()" to
|
|---|
| 866 | get wrapper function above; suppresses warning messages in 9.4-beta.
|
|---|
| 867 |
|
|---|
| 868 | - G4NucleiModel.cc: Make class re-usable (had been assumed in -47 tag, but
|
|---|
| 869 | was not true!), by clearing all parameter vectors in generateModel().
|
|---|
| 870 | Values of A,Z are tested first, and previous data kept if same nucleus is
|
|---|
| 871 | being modelled.
|
|---|
| 872 |
|
|---|
| 873 | 23 June 2010 Michael Kelsey
|
|---|
| 874 | ---------------------------
|
|---|
| 875 | - G4CascadeInterface.cc: Minor fix to rationalize version jumpings.
|
|---|
| 876 | - G4NucleiModel.cc: Fix bug in partners list termination mods below, and
|
|---|
| 877 | remove reflection-recoil from boundaryTransition().
|
|---|
| 878 |
|
|---|
| 879 |
|
|---|
| 880 | 21 June 2010 Michael Kelsey (MHK-20100621)
|
|---|
| 881 | ------------------------------------------
|
|---|
| 882 | - G4CascadeInterface.cc: Bring MHK-20100620 version back to HEAD, make same
|
|---|
| 883 | parenthesis fix for GCC 4.5 compilation.
|
|---|
| 884 |
|
|---|
| 885 | - G4IntraNucleiCascader.cc: Bug fix nuclear recoil kinematics introduced in
|
|---|
| 886 | MHK-20100620.
|
|---|
| 887 |
|
|---|
| 888 | - G4NucleiModel.cc: Bring MHK-20100620 version back to HEAD, apply ctor
|
|---|
| 889 | argument fix. Eliminate creating temporaries for terminal "partners" on
|
|---|
| 890 | list; default ctor will take care of it. Hide negative path-length report
|
|---|
| 891 | behind verbose flag, and don't return an empty list.
|
|---|
| 892 |
|
|---|
| 893 | Add block of code in ::boundaryTransition() which recoils the nucleus when
|
|---|
| 894 | the secondary is reflected off the potential, to balance the momentum
|
|---|
| 895 | transfer. This is implemented by computing the boost for the full nucleus
|
|---|
| 896 | using the computed three-momentum transfer, and applying that boost to the
|
|---|
| 897 | secondary.
|
|---|
| 898 |
|
|---|
| 899 | 23 June 2010 Michael Kelsey (hadr-casc-V09-03-50)
|
|---|
| 900 | -------------------------------------------------
|
|---|
| 901 | - G4IntraNucleiCascader.cc: Restore G4NucleiModel as local data member.
|
|---|
| 902 | Not well designed for reuse.
|
|---|
| 903 |
|
|---|
| 904 | 21 June 2010 Michael Kelsey (hadr-casc-V09-03-49)
|
|---|
| 905 | -------------------------------------------------
|
|---|
| 906 | NOTE: Changes below were version jumped into V09-03-48. Tag above ONLY
|
|---|
| 907 | includes these two changes!
|
|---|
| 908 |
|
|---|
| 909 | - G4CascadeInterface.cc: Add parentheses in main iteration loop to support
|
|---|
| 910 | mixed && and || (reported by gcc-4.5).
|
|---|
| 911 |
|
|---|
| 912 | - G4NucleiModel.cc: Fix mistake in passing ctor args to generateModel().
|
|---|
| 913 |
|
|---|
| 914 | 20 June 2010 Michael Kelsey (MHK-20100620)
|
|---|
| 915 | ------------------------------------------
|
|---|
| 916 | - G4CascadeCheckBalance: New utility class to do energy and momentum
|
|---|
| 917 | conservation testing. Implemented as a "collider" to resue interface.
|
|---|
| 918 |
|
|---|
| 919 | - G4CascadeInterface.cc: Use new G4CascadeCheckBalance for energy
|
|---|
| 920 | conservation.
|
|---|
| 921 |
|
|---|
| 922 | - G4CollisionOutput: Add setVerboseLevel() function, diagnostic reports in
|
|---|
| 923 | ::setOnShell(), and collapse if-cascades to use "if (!xxx) return" instead
|
|---|
| 924 | of multiple nestings.
|
|---|
| 925 |
|
|---|
| 926 | - G4ElementaryParticleCollider.cc: Collapse if-cascade to use "if (!xxx)
|
|---|
| 927 | return" instead of multiple nestings.
|
|---|
| 928 |
|
|---|
| 929 | - G4IntraNucleiCascader.cc: Improve diagnostic messages, change some G4cout
|
|---|
| 930 | to G4cerr.
|
|---|
| 931 |
|
|---|
| 932 | - G4InuclCollider: Make output buffers data members to reduce churn;
|
|---|
| 933 | simplify if-cascades to use "if (!xxx) return" instead of nesting; add
|
|---|
| 934 | energy-conservation checks at each stage of cascade.
|
|---|
| 935 |
|
|---|
| 936 | - G4NucleiModel.cc: Improve diagnostics, collapse if-cascades to use "if
|
|---|
| 937 | (!xxx) return" instead of multiple nestings.
|
|---|
| 938 |
|
|---|
| 939 | 18 June 2010 Michael Kelsey (hadr-casc-V09-03-48)
|
|---|
| 940 | -------------------------------------------------
|
|---|
| 941 | - G4CascadeInterface.cc: Add check on energy conservation between initial
|
|---|
| 942 | and final states; more than 5% imbalance triggers repeat generation of
|
|---|
| 943 | cascade. This check may be disabled with flag G4CASCADE_SKIP_ECONS. Also
|
|---|
| 944 | did some minor cleanup of the code.
|
|---|
| 945 |
|
|---|
| 946 | - cascade/GNUmakefile: Add support for new flag above.
|
|---|
| 947 |
|
|---|
| 948 | 17 June 2010 Michael Kelsey (hadr-casc-V09-03-47)
|
|---|
| 949 | -------------------------------------------------
|
|---|
| 950 | - G4CascadeInterface, G4PreCompoundCascadeInterface: Make G4InuclCollider a
|
|---|
| 951 | local data member, pass verbosity to it in ::ApplyYourself().
|
|---|
| 952 |
|
|---|
| 953 | - G4InuclCollider, G4ElementaryParticleCollider, G4IntraNucleiCascader,
|
|---|
| 954 | G4EquilibriumEvaporator, G4BigBanger: Make all sub-colliders local data
|
|---|
| 955 | members, pass verbosity to each of them.
|
|---|
| 956 |
|
|---|
| 957 | - G4NucleiModel: Add ctors and generateModel() signatures so both can do
|
|---|
| 958 | particle or A/Z initialization. Add setVerboseLevel() function.
|
|---|
| 959 |
|
|---|
| 960 | 17 June 2010 Michael Kelsey (hadr-casc-V09-03-46)
|
|---|
| 961 | -------------------------------------------------
|
|---|
| 962 | - cascade/GNUmakefile: Add series of "ifneq (,...)" blocks to map
|
|---|
| 963 | environment variables for debugging onto "-D..." compiler flags:
|
|---|
| 964 |
|
|---|
| 965 | G4CASCADE_COULOMB_DEV
|
|---|
| 966 | G4CASCADE_DEBUG_CHARGE
|
|---|
| 967 | G4CASCADE_DEBUG_INTERFACE
|
|---|
| 968 | G4CASCADE_DEBUG_SORT
|
|---|
| 969 | G4CASCADE_WATCHER_HIGHZ
|
|---|
| 970 |
|
|---|
| 971 | - G4CascadeInterface.cc: Replace preprocessor flags "debug_G4...Interface"
|
|---|
| 972 | with G4CASCADE_DEBUG_INTERFACE, and "BERTDEV" with G4CASCADE_COULOMB_DEV.
|
|---|
| 973 | Fix bug with information access in debugging block.
|
|---|
| 974 |
|
|---|
| 975 | - G4EquilibriumEvaporator.cc, G4IntraNucleiCascader.cc,
|
|---|
| 976 | G4NonEquilibriumEvaporator.cc: Eliminate preprocessor flag RUN and all
|
|---|
| 977 | code contained in "#else" blocks.
|
|---|
| 978 |
|
|---|
| 979 | - G4LorentzConverter.cc: Add diagnostic output with different levels: All
|
|---|
| 980 | " >>>" entry messages done for verboseLevel >= 1; all numeric reports for
|
|---|
| 981 | verboseLevel > 2.
|
|---|
| 982 |
|
|---|
| 983 | - G4NucleiModel: Replace preprocessor flag "CHC_CHECK" with
|
|---|
| 984 | G4CASCADE_DEBUG_CHARGE.
|
|---|
| 985 |
|
|---|
| 986 | - G4PreCompoundCascadeInterface.cc: Replace preprocessor flag
|
|---|
| 987 | "debug_G4...Interface" with G4CASCADE_DEBUG_INTERFACE. Fix bug with
|
|---|
| 988 | information access in debugging block.
|
|---|
| 989 |
|
|---|
| 990 | - G4WatcherGun.cc: Replace preprocessor flag "PB" with G4CASCADE_WATCHER_HIGHZ.
|
|---|
| 991 |
|
|---|
| 992 | 16 June 2010 Michael Kelsey
|
|---|
| 993 | ---------------------------
|
|---|
| 994 | - G4CascadeInterface.hh: Add setVerboseLevel() function.
|
|---|
| 995 |
|
|---|
| 996 | - G4IntraNucleiCascader.cc: Add reporting of momentum content for residual
|
|---|
| 997 | nuclear fragment, list of final-state particles, some cleanup of momentum
|
|---|
| 998 | balancing code.
|
|---|
| 999 |
|
|---|
| 1000 | - G4LorentzConvertor: Add reporting of bullet and target four-vectors.
|
|---|
| 1001 |
|
|---|
| 1002 | - G4NucleiModel.cc: Add diagnostic output for partner-list generation,
|
|---|
| 1003 | replace one random-angle code block with generateWithRandomAngles().
|
|---|
| 1004 |
|
|---|
| 1005 | 15 June 2010 Michael Kelsey (hadr-casc-V09-03-45)
|
|---|
| 1006 | -------------------------------------------------
|
|---|
| 1007 | - G4CascadeInterface.cc, G4PreCompoundCascadeInterface.cc: When converting
|
|---|
| 1008 | output particles from K0/K0bar to K0S/K0L, convert kinetic energy from
|
|---|
| 1009 | Bertini internal units (GeV) to GEANT4 units (MeV).
|
|---|
| 1010 |
|
|---|
| 1011 | - G4VCascadeCollider: Make two separate ctors, name and name+verbose, with
|
|---|
| 1012 | no default values. All subclasses *must* provide a literal name string.
|
|---|
| 1013 |
|
|---|
| 1014 | 12 June 2010 Michael Kelsey (hadr-casc-V09-03-44)
|
|---|
| 1015 | -------------------------------------------------
|
|---|
| 1016 | - G4CascadeT33piNChannel.cc: Swapped 8-body final state tables for pipP
|
|---|
| 1017 | vs. pimN.
|
|---|
| 1018 |
|
|---|
| 1019 | 11 June 2010 Michael Kelsey (hadr-casc-V09-03-43)
|
|---|
| 1020 | -------------------------------------------------
|
|---|
| [1337] | 1021 | - G4CascadeData.hh: Equally trivial fix for compiler warking on Intel ICC
|
|---|
| 1022 | for index[] array bounds in ::initialize(). Dimension array as [9], and
|
|---|
| 1023 | set all values.
|
|---|
| 1024 |
|
|---|
| 1025 | 08 June 2010 Gunter Folger (hadr-casc-V09-03-42)
|
|---|
| 1026 | ------------------------------------------------
|
|---|
| [1315] | 1027 | - trivial fix for compiler warning on gcc43 on empty body in for(...) in
|
|---|
| 1028 | cascade/include/G4CascadeInterpolator.icc:67
|
|---|
| 1029 |
|
|---|
| 1030 | 01 June 2010 Michael Kelsey (hadr-casc-V09-03-41)
|
|---|
| 1031 | -------------------------------------------------
|
|---|
| 1032 | - paraMaker.cc: Fix vector initialization for Windows crash.
|
|---|
| 1033 |
|
|---|
| 1034 | 26 May 2010 Dennis Wright (hadr-casc-V09-03-40)
|
|---|
| 1035 | -----------------------------------------------
|
|---|
| 1036 | - G4NucleiModel: remove conversion to fm, and conversion of cross
|
|---|
| 1037 | sections to fm**2
|
|---|
| 1038 |
|
|---|
| 1039 | 21 May 2010 Michael Kelsey (hadr-casc-V09-03-39)
|
|---|
| 1040 | ------------------------------------------------
|
|---|
| 1041 | Final tag for inclusion in GEANT 4.9.4-beta. Will be validated internal and
|
|---|
| 1042 | included in global Hadronics tag.
|
|---|
| 1043 |
|
|---|
| 1044 | - G4CascadeSampler.icc: Activate time-saving checks on single bins.
|
|---|
| 1045 | - G4ElementaryParticleCollider.cc: Remove special case for nucleon elastic
|
|---|
| 1046 | scattering.
|
|---|
| 1047 |
|
|---|
| 1048 | 21 May 2010 Michael Kelsey (kelsey-20100521c)
|
|---|
| 1049 | ---------------------------------------------
|
|---|
| 1050 | - G4CascadeInterface, G4PreCompoundCascadeInterface, G4InuclEvaporation:
|
|---|
| 1051 | Simplify code: fetch G4DynamicParticle out of outgoing G4InuclParticles,
|
|---|
| 1052 | rather than creating new ones. Remove all of the *Collider data members
|
|---|
| 1053 | (instantiated within G4InuclCollider). Move final state rotations to
|
|---|
| 1054 | G4CollisionOutput.
|
|---|
| 1055 |
|
|---|
| 1056 | - G4InuclParticle: Provide accessor to return G4DynamicParticle.
|
|---|
| 1057 |
|
|---|
| 1058 | - G4CollisionOutput: Add function to apply LorentzRotation to both lists;
|
|---|
| 1059 | used by G4CascadeInterface.
|
|---|
| 1060 |
|
|---|
| 1061 | - G4ElementaryParticleCollider: Avoid memory churn with G4LorentzVector
|
|---|
| 1062 | temporaries.
|
|---|
| 1063 |
|
|---|
| 1064 | 21 May 2010 Michael Kelsey (kelsey-20100521b)
|
|---|
| 1065 | ---------------------------------------------
|
|---|
| 1066 | - G4VCascadeCollider: New base class for all Colliders. Carries
|
|---|
| 1067 | verboseLevel data member and set-function. ::collide() is pure virtual.
|
|---|
| 1068 | Additional protected member functions will be defined to include all code
|
|---|
| 1069 | shared across multiple Colliders.
|
|---|
| 1070 |
|
|---|
| 1071 | - Migrate all of the "Collider" factories to use new base class, removing
|
|---|
| 1072 | common member functions, and replace passed-in sibling colliders with
|
|---|
| 1073 | local data members (pointers for now). Since none of these classes have
|
|---|
| 1074 | persistent (state preserving) data members, the cost of more than one
|
|---|
| 1075 | instantiation is minimal.
|
|---|
| 1076 |
|
|---|
| 1077 | G4BigBanger
|
|---|
| 1078 | G4ElementaryParticleCollider
|
|---|
| 1079 | G4EquilibriumEvaporator
|
|---|
| 1080 | G4EvaporationInuclCollider
|
|---|
| 1081 | G4Fissioner
|
|---|
| 1082 | G4IntraNucleiCascader
|
|---|
| 1083 | G4InuclCollider
|
|---|
| 1084 | G4NonEquilibriumEvaporator
|
|---|
| 1085 | G4PreCompoundInuclCollider
|
|---|
| 1086 |
|
|---|
| 1087 | - G4CascadeInterface.cc, G4InuclEvaporation.cc,
|
|---|
| 1088 | G4PreCompoundCascadeInterface.cc: Remove siblings from constructors for
|
|---|
| 1089 | the Colliders.
|
|---|
| 1090 |
|
|---|
| 1091 | - G4InteractionCase.hh: Eliminate unnecessary copying of std::pair<>'s, use
|
|---|
| 1092 | initializers in ctors, add clear() function to reset to 0-0-0. Move
|
|---|
| 1093 | evaluation of bullet vs. target to new set() function, replacing separate
|
|---|
| 1094 | bulletTargetSetter() in the colliders. Add boolean accessors to avoid
|
|---|
| 1095 | hard-coding inter_case values. Change code numbers so nucleus collisions
|
|---|
| 1096 | are negative, and positive codes refer to the "is" or "rtype" numbers.
|
|---|
| 1097 |
|
|---|
| 1098 | - G4ElementaryParticleCollider.cc: Use G4InteractionCase to compute "is",
|
|---|
| 1099 | instead of hardwiring the meaning.
|
|---|
| 1100 |
|
|---|
| 1101 | - G4Collider.hh: Remove empty and never-used file.
|
|---|
| 1102 |
|
|---|
| 1103 | - G4EvaporationInuclCollider.cc: Eliminate unnecessary creation of
|
|---|
| 1104 | duplicate G4InuclNuclei: pass input through to G4EquilibriumEvaporator.
|
|---|
| 1105 |
|
|---|
| 1106 | - G4LorentzConvertor: Add interfaces to pass G4InuclParticles directly.
|
|---|
| 1107 |
|
|---|
| 1108 | 21 May 2010 Michael Kelsey (kelsey-20100521a)
|
|---|
| 1109 | ---------------------------------------------
|
|---|
| 1110 | Replace hand-coded interpolation of arrays with use of G4CascadeInterpolator.
|
|---|
| 1111 | In all cases, local arrays are replaced with static const, and the
|
|---|
| 1112 | interpolator object itself is declared static, to reduce memory churn.
|
|---|
| 1113 |
|
|---|
| 1114 | G4NucleiModel::totalCrossSection()
|
|---|
| 1115 | G4EquilibriumEvaporator::getQF()
|
|---|
| 1116 | G4InuclSpecialFunctions::paraMaker[Truncated]() (in paraMaker.cc)
|
|---|
| 1117 |
|
|---|
| 1118 | - G4CascadSpecialFunctions: Remove. totalCrossSection() redundant with
|
|---|
| 1119 | G4NucleiModel. Move absorptionCrossSection() to G4NucleiModel.
|
|---|
| 1120 |
|
|---|
| 1121 | - G4CascadeInterpolator.icc: Bug fix to catch special case of exact upper
|
|---|
| 1122 | bin edge (occurs when !doExtrapolation). If index == last + 0., just
|
|---|
| 1123 | return upper edge value, without calculation.
|
|---|
| 1124 |
|
|---|
| 1125 | - G4NucleiModel.cc: Use G4Cascade{Pi*}Channel and G4Cascade{NN,NP,PP}Channel
|
|---|
| 1126 | classes to get total cross-sections for pi-N and N-N scattering. Arrays
|
|---|
| 1127 | for kaon and hyperon scattering should be migrated as well, once binning
|
|---|
| 1128 | is resolved. Move absorptionCrossSection() here from SpecialFunctions.
|
|---|
| 1129 |
|
|---|
| 1130 | 20 May 2010 Michael Kelsey (kelsey-20100521)
|
|---|
| 1131 | --------------------------------------------
|
|---|
| 1132 | - G4CascadeInterpolator.icc: Two bug fixes involving values at array edges.
|
|---|
| 1133 |
|
|---|
| 1134 | 19 May 2010 Michael Kelsey, Dennis Wright
|
|---|
| 1135 | -----------------------------------------
|
|---|
| 1136 | - G4BertiniData.hh,.cc: Remove unused and unnecessary class.
|
|---|
| 1137 | - G4NucleiModel.cc: convert nuclear radii to fm and cross sections to
|
|---|
| 1138 | fm**2. Use six-zone model for A > 99, and make alpha a 1-zone
|
|---|
| 1139 | nucleus.
|
|---|
| 1140 | - G4CascadSpecialFunctions: convert pion absorption cross sections from
|
|---|
| 1141 | mb to fm**2, correct spelling of method absorptionCrossSection
|
|---|
| 1142 |
|
|---|
| 1143 | 17 May 2010 Michael Kelsey (hadr-casc-V09-03-38)
|
|---|
| 1144 | ------------------------------------------------
|
|---|
| 1145 | - paraMaker.cc (G4InuclSpecialFunctions::paraMaker[Truncated]): Upper edge
|
|---|
| 1146 | of interpolation array not properly handled. Should be "if (Z >= 70.0)".
|
|---|
| 1147 | This affects G4NonEquilibriumEvaporator output.
|
|---|
| 1148 |
|
|---|
| 1149 | 17 May 2010 Michael Kelsey (hadr-casc-V09-03-37)
|
|---|
| 1150 | ------------------------------------------------
|
|---|
| 1151 | Bug fixes for compiler warnings (not seen on MacOSX, even with g++ -Wall)
|
|---|
| 1152 |
|
|---|
| 1153 | - G4CascadeData.hh: Dummy arrays needed double-braces for initialization.
|
|---|
| 1154 |
|
|---|
| 1155 | - G4CascadeInterpolator.icc: Extraneous decimal point in "for (i=0.;".
|
|---|
| 1156 |
|
|---|
| 1157 | - G4CascadeKzeroBarNChannel.cc: Left three "old" arrays in place during
|
|---|
| 1158 | conversion.
|
|---|
| 1159 |
|
|---|
| 1160 | 14 May 2010 Michael Kelsey (hadr-casc-V09-03-36)
|
|---|
| 1161 | ------------------------------------------------
|
|---|
| 1162 | Remove obsolete files following reorganization of two-body scattering
|
|---|
| 1163 | lookup tables.
|
|---|
| 1164 |
|
|---|
| 1165 | G4CascadeElasticInterface.hh,.cc
|
|---|
| 1166 | G4ElasticCascadeInterface.hh,.cc
|
|---|
| 1167 | G4FinalStateSampler.hh,.cc
|
|---|
| 1168 | G4NucleonSampler.hh,.cc
|
|---|
| 1169 | G4PionSampler.hh,.cc
|
|---|
| 1170 |
|
|---|
| 1171 | - G4CascadeChannel.hh,.cc: All functionality removed, replaced with
|
|---|
| 1172 | namespace containing only getQnums and CheckQnums validation functions.
|
|---|
| 1173 |
|
|---|
| 1174 | 14 May 2010 Michael Kelsey (hadr-casc-V09-03-35)
|
|---|
| 1175 | ------------------------------------------------
|
|---|
| 1176 | Replace independent parallel samplers with templated base class and single
|
|---|
| 1177 | implementation. This completes the reorganization of the channel tables.
|
|---|
| 1178 |
|
|---|
| 1179 | - G4CascadeSampler: Redefine as templated base, taking binning array as
|
|---|
| 1180 | constructor argument. Move implementation file from .cc to .icc.
|
|---|
| 1181 | NOTE: G4CascadeSampler.cc is removed, since not consistent with new .hh.
|
|---|
| 1182 |
|
|---|
| 1183 | - G4PionNucSampler: Subclass of G4CascadeSampler<30>, replaces
|
|---|
| 1184 | G4FinalStateSampler, using bins array from there.
|
|---|
| 1185 |
|
|---|
| 1186 | - G4KaonNucSampler: Sublcass of G4CascadeSampler<31>, replaces previous
|
|---|
| 1187 | G4CascadeSampler, using bins array from there.
|
|---|
| 1188 |
|
|---|
| 1189 | - G4Cascade*Channel.hh: Change all typedefs to pass appropriate of two new
|
|---|
| 1190 | samplers in template.
|
|---|
| 1191 |
|
|---|
| 1192 | - G4ElementaryParticleCollider.cc: Replace long "if (is==)"-cascades with
|
|---|
| 1193 | switch blocks. Move all getOutgoing calls (for pions and nucleons) into
|
|---|
| 1194 | one function, and call it from outside multiplicity checks. Use
|
|---|
| 1195 | G4CascadeInterpolator for angular distributions. Set modelID=3 in all
|
|---|
| 1196 | G4InuclParticle constructions.
|
|---|
| 1197 |
|
|---|
| 1198 | 14 May 2010 Michael Kelsey (hadr-casc-V09-03-34)
|
|---|
| 1199 | ------------------------------------------------
|
|---|
| 1200 | Extract lookup tables from G4PionSampler and G4NucleonSampler into
|
|---|
| 1201 | individual "classes" defined and initialized with G4CascadeData.
|
|---|
| 1202 |
|
|---|
| 1203 | - G4CascadePi{Plus,Minus,Zero}{P,N}Channel.hh: Six new typedefs defined as
|
|---|
| 1204 | with the existing G4CascadeXXXChannel, to replace G4PionSampler.
|
|---|
| 1205 |
|
|---|
| 1206 | - G4CascadeT33piNChannel.cc: Lookup tables for both PiPlusP and PiMinusN,
|
|---|
| 1207 | implemented as with existing G4CascadeXXXChannel, from G4PionSampler.cc.
|
|---|
| 1208 |
|
|---|
| 1209 | - G4CascadeT31piNChannel.cc: Lookup tables for both PiMinusP and PiPlusN,
|
|---|
| 1210 | implemented as with existing G4CascadeXXXChannel, from G4PionSampler.cc
|
|---|
| 1211 |
|
|---|
| 1212 | - G4CascadeT11pizNChannel.cc: Lookup tables for both PiZeroP and PiZeroN,
|
|---|
| 1213 | implemented as with existing G4CascadeXXXChannel, from G4PionSampler.cc
|
|---|
| 1214 |
|
|---|
| 1215 | - G4Cascade{PP,NP,NN}Channel.hh: Three new typedefs defined as with the
|
|---|
| 1216 | existing G4CascadeXXXChannel, to replace G4NucleonSampler.
|
|---|
| 1217 |
|
|---|
| 1218 | - G4CascadeT1NNChannel.cc: Lookup tables for both p-p and n-n scattering,
|
|---|
| 1219 | implemented as with existing G4CascadeXXXChannel, from G4NucleonSampler.cc
|
|---|
| 1220 |
|
|---|
| 1221 | - G4CascadeT0npChannel.cc: Lookup tables for p-n scattering, implemented as
|
|---|
| 1222 | with existing G4CascadeXXXChannel, from G4NucleonSampler.cc
|
|---|
| 1223 |
|
|---|
| 1224 | - G4CascadeFunctions.hh, .icc: Pass std::vector as non-const argument to
|
|---|
| 1225 | getOutgoingParticleTypes() instead of returning internal buffer.
|
|---|
| 1226 |
|
|---|
| 1227 | - G4CascadeSampler.cc, G4FinalStateSampler.cc: Add some checks in
|
|---|
| 1228 | findFinalStateIndex, fillSigmaBuffer, and sampleFlat(), such that
|
|---|
| 1229 | single-entry ranges don't go through the analysis, just return index 0.
|
|---|
| 1230 |
|
|---|
| 1231 | - G4ElementaryParticleCollider.cc: Follow change to getOutgoingParticleTypes()
|
|---|
| 1232 | in generateStrangeChannelPartTypes(). Replace all uses of G4PionSampler
|
|---|
| 1233 | and G4NucleonSampler with new channel "classes".
|
|---|
| 1234 |
|
|---|
| 1235 | 14 May 2010 Michael Kelsey (hadr-casc-V09-03-33)
|
|---|
| 1236 | ------------------------------------------------
|
|---|
| 1237 | Continue consolidation of two-body collision lookup tables. Unify
|
|---|
| 1238 | interfaces between pion/nucleon and kaon/hyperon samplers.
|
|---|
| 1239 |
|
|---|
| 1240 | - G4CascadeData: Many changes to support use as data class for both
|
|---|
| 1241 | kaon/hyperon and pion/nucleon tables (migration will be next tag):
|
|---|
| 1242 |
|
|---|
| 1243 | 1) Add new first argument to template with number of bins in energy
|
|---|
| 1244 | interpolation. This replaces the (temporary) use of
|
|---|
| 1245 | G4CascadeSampler::energyBins within the class definition.
|
|---|
| 1246 |
|
|---|
| 1247 | 2) Add two additional template arguments, N8 and N9, with default values
|
|---|
| 1248 | of zero. These will be used by the pion/nucleon tables, but not by the
|
|---|
| 1249 | existing kaon/hyperon tables.
|
|---|
| 1250 |
|
|---|
| 1251 | 3) Define additional arrays for 8- and 9-body final states, using
|
|---|
| 1252 | conditional dimensioning (e.g., if N8==0, use [1]). Define second
|
|---|
| 1253 | 9-body constructor to accept and initialize the new arrays.
|
|---|
| 1254 |
|
|---|
| 1255 | 4) Eliminate static intialization of index[], moving it into
|
|---|
| 1256 | initialize(). Template specialization can't be used with data!
|
|---|
| 1257 |
|
|---|
| 1258 | 5) Add separate "sum" (summed N-body cross-sections) and "tot" arrays
|
|---|
| 1259 | (measured inclusive xsec). Latter is a const-ref, initialized to "sum"
|
|---|
| 1260 | if not provided as ctor argument, with two new ctors as needed.
|
|---|
| 1261 |
|
|---|
| 1262 | 6) Add accessor to return maximum multiplicity (NM+1).
|
|---|
| 1263 |
|
|---|
| 1264 | - G4CascadeFunctions.hh: Add second template argument to specify which
|
|---|
| 1265 | "final state sampler" is the base class. Use both T::data.tot and
|
|---|
| 1266 | T::data.sum in GetMultiplicity(), to support sum/tot comparisons in
|
|---|
| 1267 | pion/nucleon channels. Extend GetOutputParticleTypes() to support up to
|
|---|
| 1268 | multiplicity 9.
|
|---|
| 1269 |
|
|---|
| 1270 | - G4CascadeFunctions.icc: Implementations of template class functions.
|
|---|
| 1271 |
|
|---|
| 1272 | - G4CascadeXXXChannel.hh: Add "31," as initial template argument for Data.
|
|---|
| 1273 | Add G4CascadeSampler as second template argument in G4CascadeXXXChannel
|
|---|
| 1274 | typedef.
|
|---|
| 1275 |
|
|---|
| 1276 |
|
|---|
| 1277 | 14 May 2010 Michael Kelsey (hadr-casc-V09-03-32)
|
|---|
| 1278 | ------------------------------------------------
|
|---|
| 1279 | Continue revisions to two-body collision lookup tables. Make the kaon and
|
|---|
| 1280 | hyperon channels compatible with the pion/nucleon samplers, before the next
|
|---|
| 1281 | stage of unifying the structure.
|
|---|
| 1282 |
|
|---|
| 1283 | - G4CascadeSampler: NEW class, parallel to G4FinalStateSampler but with a
|
|---|
| 1284 | different energy binning. Used as base class to G4CascadeFunctions<T>,
|
|---|
| 1285 | from which the cross-section and other arrays are passed. Implement
|
|---|
| 1286 | findMultiplicity (cf. G4CascadeFunctions::getMultiplicity) to return the
|
|---|
| 1287 | true value, not the array index.
|
|---|
| 1288 |
|
|---|
| 1289 | This class replaces functionality of G4CascadeChannel, which is redundant.
|
|---|
| 1290 |
|
|---|
| 1291 | - G4CascadeChannel: Remove all interpolation code, leaving only getQnums().
|
|---|
| 1292 |
|
|---|
| 1293 | - G4CascadeFunctions: Inherit from G4CascadeSampler for interpolations,
|
|---|
| 1294 | except for final-state extraction (where FS type arrays are dealt with
|
|---|
| 1295 | locally, not passed). Public static functions rely on private instantiated
|
|---|
| 1296 | version of class to do work, so that G4CascadeSampler gets instantiated.
|
|---|
| 1297 |
|
|---|
| 1298 | - G4CascadeData: Remove final template argument (total number of indices),
|
|---|
| 1299 | as redundant with simple sum of multplicity indices. Use template args to
|
|---|
| 1300 | dimension data member arrays (const references), and to statically
|
|---|
| 1301 | initialize the start-stop index table. Make large cross-sections table
|
|---|
| 1302 | G4double, not G4float. Define ctor to pass in array refs for initialization.
|
|---|
| 1303 | Reduce index array to single dimension (start=index[i], stop=index[i+1]).
|
|---|
| 1304 |
|
|---|
| 1305 | - G4CascadeXXXChannel: All of the initial-state channel "classes"
|
|---|
| 1306 | (typedef names) modified to follow G4CascadeData rewrite. In .cc file,
|
|---|
| 1307 | the explicit lookup tables are static, and passed by const-ref to
|
|---|
| 1308 | G4CascadeData. The "initializer" struct is dropped; with the static
|
|---|
| 1309 | "data" object initialized by ctor here.
|
|---|
| 1310 |
|
|---|
| 1311 | - G4ElementaryParticleCollider.cc: In ::generateMultiplicity(), eliminate
|
|---|
| 1312 | extra "+2" and "-2" applied to local "mul" variables. With change above,
|
|---|
| 1313 | all functions return return true multiplicity, not array index.
|
|---|
| 1314 |
|
|---|
| 1315 | - G4FinalStateSampler: Add findFinalStateIndex() function, to make
|
|---|
| 1316 | interface match G4CascadeSampler exactly. Reduce index array to single
|
|---|
| 1317 | dimension.
|
|---|
| 1318 |
|
|---|
| 1319 | - G4PionSampler.cc, G4NucleonSampler.cc: Use new findFinalStateIndex()
|
|---|
| 1320 | function in GetFSPartTypesXXX() functions. Reduce index array to single
|
|---|
| 1321 | dimension (start=index[i], stop=index[i+1]).
|
|---|
| 1322 |
|
|---|
| 1323 | 14 May 2010 Michael Kelsey (hadr-casc-V09-03-31)
|
|---|
| 1324 | ------------------------------------------------
|
|---|
| 1325 | Begin revisions to two-body collision lookup tables. This will be a major
|
|---|
| 1326 | reorganization, splitting the G4PionSampler and G4NucleonSampler into
|
|---|
| 1327 | separate little "classes" (typedefs) for each initial state, in the same way
|
|---|
| 1328 | that the kaon and hyperon states are done now. The underlying templated and
|
|---|
| 1329 | base classes will be unified across all of the channels.
|
|---|
| 1330 |
|
|---|
| 1331 | - G4CascadeInterpolator: NEW class to encapsulate interpolation procedure.
|
|---|
| 1332 | Uses C-style arrays passed by dimensioned reference, to allow compile-time
|
|---|
| 1333 | array bounds checking. Template argument is array dimension, and array of
|
|---|
| 1334 | energy bins is saved by ctor. User array to be interpolated is passed as
|
|---|
| 1335 | function argument. Last value interpolated, along with result, is saved,
|
|---|
| 1336 | to allow fast multiple interpolations.
|
|---|
| 1337 |
|
|---|
| 1338 | This class is substantially more lightweight than G4PhysicsVector.
|
|---|
| 1339 |
|
|---|
| 1340 | - G4FinalStateSampler: Replace manual interpolation with G4CascadeInterpolator.
|
|---|
| 1341 | Remove redundant sampleFlat(...) function with argument. Rename member
|
|---|
| 1342 | functions in anticipation of merging with G4CascadeFunctions.
|
|---|
| 1343 |
|
|---|
| 1344 | - G4PionSampler.cc, G4NucleonSampler.cc: Follow use of G4CascadeInterpolator
|
|---|
| 1345 | above, and drop local caching of interpolation results. Reduce offset
|
|---|
| 1346 | list for cross-sections to one dimension (start=index[i], stop=index[i+1]).
|
|---|
| 1347 |
|
|---|
| 1348 | 11 May 2010 Michael Kelsey (hadr-casc-V09-03-30)
|
|---|
| 1349 | ------------------------------------------------
|
|---|
| 1350 | Bug fixes in the two-body scattering code.
|
|---|
| 1351 |
|
|---|
| 1352 | - G4PionSampler.cc, G4NucleonSampler.cc: Fix long-standing bug with offset
|
|---|
| 1353 | indices computed for cross-section tables. XXXindex[m][0] (start) and
|
|---|
| 1354 | XXXindex[m][1] (stop) are computed in initChannels() as [start,stop]
|
|---|
| 1355 | inclusive range (i.e., "for (i=start; i<=stop; i++)"), but used with
|
|---|
| 1356 | G4FinalStateSampler::fillSigmaBuffer (and its predecessor code) as
|
|---|
| 1357 | [start,stop) exclusive range (i.e., normal C style "for (i=start; i<stop;
|
|---|
| 1358 | i++)"). This is fixed by properly setting XXXindex[m-1][1] =
|
|---|
| 1359 | XXXindex[m][0], and using the ranges consistently in initChannels().
|
|---|
| 1360 |
|
|---|
| 1361 | - G4ElementaryParticleCollider.cc: In the six pion-nucleon scatters, the
|
|---|
| 1362 | two-body final state is incorrectly tested for charge-exchange. All the
|
|---|
| 1363 | if statements check whether "particle_kinds[0]" is the initial nucleon,
|
|---|
| 1364 | but the outgoing baryon actually appears in particle_kinds[1]. Replace
|
|---|
| 1365 | the individual tests with the use of "finaltype", moved out of the
|
|---|
| 1366 | strangeness if-block.
|
|---|
| 1367 |
|
|---|
| 1368 | 06 May 2010 Michael Kelsey (hadr-casc-V09-03-29, hadr-casc-V09-03-23-01)
|
|---|
| 1369 | ------------------------------------------------------------------------
|
|---|
| 1370 | - G4Diproton.cc, G4Dineutron.cc, G4UnboundPN.cc: After creating instance
|
|---|
| 1371 | of these "internal" particles, remove the pointer from G4ParticleTable.
|
|---|
| 1372 | This avoids an issue with the FTFP de-excitation code, which occasionally
|
|---|
| 1373 | picks up the diproton and puts it onto a final-state particle list.
|
|---|
| 1374 |
|
|---|
| 1375 | These three changes, and nothing else, are "backported" on top of -23 for
|
|---|
| 1376 | continued validation tests.
|
|---|
| 1377 |
|
|---|
| 1378 | 30 Apr 2010 Dennis Wright (hadr-casc-V09-03-28)
|
|---|
| 1379 | -----------------------------------------------
|
|---|
| 1380 | - G4ElementaryParticleCollider:
|
|---|
| 1381 | improved pi-nucleon two-body angular distributions, and made
|
|---|
| 1382 | sampling of CM angle faster. As a result, the methods
|
|---|
| 1383 | getElasticCase and adjustIntervalForElastic were made redundant
|
|---|
| 1384 | and removed. Also removed array containing old angular distribution
|
|---|
| 1385 | parameters.
|
|---|
| 1386 |
|
|---|
| 1387 | Now use nucleon-nucleon angular distributions for hyperon-nucleon
|
|---|
| 1388 | scattering, and pi-nucleon dsitributions for kaon-nucleon scattering
|
|---|
| 1389 | (until specific kaon distributions are added).
|
|---|
| 1390 |
|
|---|
| 1391 | 29 Apr 2010 Michael Kelsey (hadr-casc-V09-03-27)
|
|---|
| 1392 | ------------------------------------------------
|
|---|
| 1393 | - G4InuclPartcleNames.hh: Long name "gamma" conflicts with math function.
|
|---|
| 1394 | Change back to "photon".
|
|---|
| 1395 |
|
|---|
| 1396 | - G4InuclElementaryParticle.cc, G4InuclEvaporation.cc,
|
|---|
| 1397 | G4NonEquilibriumEvaporator.cc, G4NucleiModel.cc, G4NucleonSampler.cc,
|
|---|
| 1398 | G4PionSampler.cc, G4PreCompoundCascadeInterface.cc,
|
|---|
| 1399 | G4PreCompoundInuclCollider.cc: Replace "gamma" with "photon".
|
|---|
| 1400 |
|
|---|
| 1401 | - G4InuclElementaryParticle.hh: Change "photon()" to "isPhoton()" to avoid
|
|---|
| 1402 | conflicts with names enum. Use names enum internally as well.
|
|---|
| 1403 |
|
|---|
| 1404 | - G4ElementaryParticleCollider.cc, G4InuclCollider.cc,
|
|---|
| 1405 | G4PreCompoundInuclCollider.cc: Change "photon()" to "isPhoton()".
|
|---|
| 1406 |
|
|---|
| 1407 | 28 Apr 2010 Michael Kelsey (hadr-casc-V09-03-26)
|
|---|
| 1408 | ------------------------------------------------
|
|---|
| 1409 | All changes below within "cascade/" subdirectory:
|
|---|
| 1410 |
|
|---|
| 1411 | - G4InuclParticleNames.hh: Define enums for particle type codes, using both
|
|---|
| 1412 | "long" and "short" names copied from existing duplicated enums. One
|
|---|
| 1413 | change is that "kp" and "km" are replaced by "kpl" and "kmi" respectively,
|
|---|
| 1414 | since "km" conflicts with GEANT4 "kilometers" unit. Deploy in classes:
|
|---|
| 1415 |
|
|---|
| 1416 | include/G4FinalStateSampler.hh
|
|---|
| 1417 | src/G4CascadeElasticInterface.cc
|
|---|
| 1418 | src/G4CascadeInterface.cc
|
|---|
| 1419 | src/G4ElasticCascadeInterface.cc
|
|---|
| 1420 | src/G4ElementaryParticleCollider.cc
|
|---|
| 1421 | src/G4InuclElementaryParticle.cc
|
|---|
| 1422 | src/G4InuclEvaporation.cc
|
|---|
| 1423 | src/G4NucleonSampler.cc
|
|---|
| 1424 | src/G4PionSampler.cc
|
|---|
| 1425 | src/G4PreCompoundCascadeInterface.cc
|
|---|
| 1426 |
|
|---|
| 1427 | - G4InuclElementaryParticle.cc: Add Omega- and antinucleon partcles to lists.
|
|---|
| 1428 | No code uses these (yet).
|
|---|
| 1429 |
|
|---|
| 1430 | 24 April 2010 Michael Kelsey (hadr-casc-V09-03-25)
|
|---|
| 1431 | --------------------------------------------------
|
|---|
| 1432 | Remove redundant classes, G4Ibertini and G4BertiniRegionModel.
|
|---|
| 1433 |
|
|---|
| 1434 | 21 April 2010 Michael Kelsey (hadr-casc-V09-03-24)
|
|---|
| 1435 | --------------------------------------------------
|
|---|
| 1436 | - G4NucleiModel.hh,cc: Eliminate last remaining hardwired baryon masses.
|
|---|
| 1437 |
|
|---|
| 1438 | 18 April 2010 Michael Kelsey (hadr-casc-V09-03-23)
|
|---|
| 1439 | --------------------------------------------------
|
|---|
| 1440 | Final revisions to access std::vector<particle> via const-references:
|
|---|
| 1441 |
|
|---|
| 1442 | G4CascadeInterface.cc
|
|---|
| 1443 | G4EquilibriumEvaporator.cc
|
|---|
| 1444 | G4IBertini.cc
|
|---|
| 1445 | G4InuclCollier.cc
|
|---|
| 1446 | G4NucleiModel.cc
|
|---|
| 1447 | G4PreCompoundCascadeInterface.cc
|
|---|
| 1448 |
|
|---|
| 1449 | - G4CollisionOutput: Add new function to boost output lists to lab frame.
|
|---|
| 1450 |
|
|---|
| 1451 | 14 April 2010 Michael Kelsey (hadr-casc-V09-03-22)
|
|---|
| 1452 | --------------------------------------------------
|
|---|
| 1453 | - G4CascadeInterface.cc, G4IBertini.cc, G4PreCompoundCascadeInterface.cc:
|
|---|
| 1454 | In ::ApplyYourself(), do the check on K0L/K0S _before_ passing G4PartDefn
|
|---|
| 1455 | to G4InuclElemPart::type(). This avoids unnecessary warning message.
|
|---|
| 1456 |
|
|---|
| 1457 | 14 April 2010 Michael Kelsey (temporary: kelsey-memClean3)
|
|---|
| 1458 | ----------------------------------------------------------
|
|---|
| 1459 | All changes below within "cascade/" subdirectory:
|
|---|
| 1460 |
|
|---|
| 1461 | - G4FinalStateSampler: Replace "sigma" argument for sampling with data
|
|---|
| 1462 | member, add functions to fill sigma buffer by passing in array references.
|
|---|
| 1463 | Provide typedef for interpolator, and function to apply interpolation.
|
|---|
| 1464 |
|
|---|
| 1465 | - G4PionSampler, G4NucleonSampler: Follow changes to base class,
|
|---|
| 1466 | eliminating much of the copy-and-paste code blocks via function calls.
|
|---|
| 1467 | Replace G4float arrays with G4double, to support passing into functions.
|
|---|
| 1468 |
|
|---|
| 1469 | 13 April 2010 Michael Kelsey (hadr-casc-V09-03-21)
|
|---|
| 1470 | --------------------------------------------------
|
|---|
| 1471 | All changes below within "cascade/" subdirectory:
|
|---|
| 1472 |
|
|---|
| 1473 | - G4InuclSpecialFunctions.hh, paraMaker.cc, paraMakerTruncated.cc: Drop
|
|---|
| 1474 | return-by-value from paraMaker() and paraMakerTruncated(). Add second
|
|---|
| 1475 | argument with non-const reference to output buffer for return.
|
|---|
| 1476 |
|
|---|
| 1477 | - G4EquilibriumEvaporator.cc: Follow changes above to paraMaker(), use
|
|---|
| 1478 | references to address parms.first and parms.second, instead of copying.
|
|---|
| 1479 |
|
|---|
| 1480 | - G4NonEquilibriumEvaporator.cc: Follow changes above to
|
|---|
| 1481 | paraMakerTruncaed(), use references to address parms.first and
|
|---|
| 1482 | parms.second, instead of copying.
|
|---|
| 1483 |
|
|---|
| 1484 | - G4Dineutron, G4Diproton, G4UnboundPN: Inherit from G4VShortLivedParticle,
|
|---|
| 1485 | per Kurashige. Thought it would eliminate G4ElectronOccupancy churn, but
|
|---|
| 1486 | did not.
|
|---|
| 1487 |
|
|---|
| 1488 | 12 April 2010 Michael Kelsey (hadr-casc-V09-03-20)
|
|---|
| 1489 | --------------------------------------------------
|
|---|
| 1490 | All changes below within "cascade/" subdirectory:
|
|---|
| 1491 |
|
|---|
| 1492 | - G4NucleiModel: Move function implementations from .hh to .cc. Replace
|
|---|
| 1493 | manual sorting (inefficient O(N^2)) with std::sort() and simple
|
|---|
| 1494 | "less-than" function for std::pair<> "partners".
|
|---|
| 1495 |
|
|---|
| 1496 | - G4CollisionOutput: Move function implementations from .hh to .cc. Use
|
|---|
| 1497 | std::vevtor<>::insert() to add vectors together.
|
|---|
| 1498 |
|
|---|
| 1499 | - Replace return-by-value G4CollisionOutput with non-const reference buffer
|
|---|
| 1500 | passed into xxx::collide(), in the following classes:
|
|---|
| 1501 | G4BigBanger
|
|---|
| 1502 | G4CascadeElasticInterface
|
|---|
| 1503 | G4CascadeInterface
|
|---|
| 1504 | G4ElasticCascadeInterface
|
|---|
| 1505 | G4ElementaryParticleCollider
|
|---|
| 1506 | G4EquilibriumEvaporator
|
|---|
| 1507 | G4EvaporationInuclCollider
|
|---|
| 1508 | G4Fissioner
|
|---|
| 1509 | G4IBertini
|
|---|
| 1510 | G4IntraNucleiCascader
|
|---|
| 1511 | G4InuclCollider
|
|---|
| 1512 | G4InuclEvaporation
|
|---|
| 1513 | G4NonEquilibriumEvaporator
|
|---|
| 1514 | G4NucleiModel
|
|---|
| 1515 | G4PreCompoundCascadeInterface
|
|---|
| 1516 | G4PreCompoundInuclCollider
|
|---|
| 1517 |
|
|---|
| 1518 | Note that some places where internal G4CollisionOutput buffers are being
|
|---|
| 1519 | used (and their contents appended to the global output) have not been
|
|---|
| 1520 | cleaned up yet. These will require some rearrangement of the algorithms,
|
|---|
| 1521 | or/and elimination of debugging output.
|
|---|
| 1522 |
|
|---|
| 1523 | 09 April 2010 Michael Kelsey (hadr-casc-V09-03-16-01)
|
|---|
| 1524 | -----------------------------------------------------
|
|---|
| 1525 | This modification is included in a pseudo-patch of hadr-casc-V09-03-16,
|
|---|
| 1526 | without brining in any of the -17 through -19 modifications.
|
|---|
| 1527 |
|
|---|
| 1528 | - G4LorentzVector.cc: Protect two instances of sqrt() against tiny negative
|
|---|
| 1529 | arguments (due to tiny-tiny subtractions).
|
|---|
| 1530 |
|
|---|
| 1531 | 09 April 2010 Michael Kelsey (hadr-casc-V09-03-19)
|
|---|
| 1532 | --------------------------------------------------
|
|---|
| 1533 | All changes below within "cascade/" subdirectory:
|
|---|
| 1534 |
|
|---|
| 1535 | - G4InuclParticle, G4InuclElementaryParticle, G4InuclNuclei: Eliminate
|
|---|
| 1536 | unused G4String ctor argument, introduced in hadr-casc-V09-03-01. Causes
|
|---|
| 1537 | a lot of pointless memory churn.
|
|---|
| 1538 |
|
|---|
| 1539 | - G4BigBanger.cc: Fix type conversion warning I introduced by mistake.
|
|---|
| 1540 |
|
|---|
| 1541 | 08 April 2010 Michael Kelsey (hadr-casc-V09-03-18)
|
|---|
| 1542 | --------------------------------------------------
|
|---|
| 1543 | All changes below within "cascade/" subdirectory:
|
|---|
| 1544 |
|
|---|
| 1545 | - G4PionSampler, G4NucleonSampler: For all ::GetFSPartTypes*() functions,
|
|---|
| 1546 | eliminate return-by-value std::vector<>, and pass in non-const reference
|
|---|
| 1547 | for filling in situ. Buffer is cleared.
|
|---|
| 1548 |
|
|---|
| 1549 | - G4ElementaryParticleCollider.cc: Follow changes above for Sampler calls.
|
|---|
| 1550 |
|
|---|
| 1551 | 07 April 2010 Michael Kelsey (hadr-casc-V09-03-17)
|
|---|
| 1552 | --------------------------------------------------
|
|---|
| 1553 | All changes below within "cascade/" subdirectory:
|
|---|
| 1554 |
|
|---|
| 1555 | Replace return-by-value std::vector<> with either const-ref returns, or
|
|---|
| 1556 | with use of an internal buffer which can be reused, to reduce memory
|
|---|
| 1557 | churn due to copying, allocation, and resizing.
|
|---|
| 1558 |
|
|---|
| 1559 | - G4BigBanger: Create data buffer for lists of secondaries and momenta.
|
|---|
| 1560 | Fill buffers in ::generateBangInSCM() and ::generateMomentumModules(),
|
|---|
| 1561 | which are now non-const. Reference buffers in ::collide().
|
|---|
| 1562 |
|
|---|
| 1563 | - G4CascadeFunctions::getOutgoingParticleTypes(): Make "kinds" a static
|
|---|
| 1564 | variable (buffer), and return it by const-ref.
|
|---|
| 1565 |
|
|---|
| 1566 | - G4ElementaryParticleCollider: Eliminate return-by-value std::vector<>
|
|---|
| 1567 | on the functions listed below, by creating data buffers for particles,
|
|---|
| 1568 | momenta, and particle types. The functions become non-const and void:
|
|---|
| 1569 | ::generateSCMfinalState(), ::generateMomModules()
|
|---|
| 1570 | ::generateStrangeChannelPartTypes(), ::generateSCMpionAbsorption()
|
|---|
| 1571 |
|
|---|
| 1572 | Also, in ::generateStrangeChannelPartTypes(), use a switch statement
|
|---|
| 1573 | instead of the long cascade of if-else-else.
|
|---|
| 1574 |
|
|---|
| 1575 | - G4NucleiModel: Several member functions have different modifications:
|
|---|
| 1576 |
|
|---|
| 1577 | ::initializeCascad(bullet,target) -- Replace return value with a passed-in
|
|---|
| 1578 | (non-const reference) buffer to be filled. The calling code can
|
|---|
| 1579 | pass in a data member, local variable, or whatever.
|
|---|
| 1580 |
|
|---|
| 1581 | ::generateParticleFate() -- Replace local "thePartners" variable with data
|
|---|
| 1582 | member, filled below. Move "outgouing_cparticles" to data member
|
|---|
| 1583 | (fix the spelling!), and return by const-ref.
|
|---|
| 1584 |
|
|---|
| 1585 | ::generateInteractionPartners() -- Eliminate return value; fill data
|
|---|
| 1586 | member instead, to be used by ::generateParticleFate().
|
|---|
| 1587 |
|
|---|
| 1588 | - G4IntraNucleiCascader.cc: Follow changes to initializeCascad() above.
|
|---|
| 1589 |
|
|---|
| 1590 | - G4NucleonSampler, G4PionSampler: ** DON'T KNOW WHAT TO DO HERE **
|
|---|
| 1591 |
|
|---|
| 1592 | - G4WatcherGun: Return const-ref to list of watchers, instead of copy.
|
|---|
| 1593 |
|
|---|
| 1594 | Replace all uses of std::vector<>::resize(0) with ::clear(). The former
|
|---|
| 1595 | causes deallocation/reallocation/resizing cycles, while clear() just removes
|
|---|
| 1596 | content, preserving the allocated buffer.
|
|---|
| 1597 |
|
|---|
| 1598 | include/G4CollisionOutput.hh
|
|---|
| 1599 | src/G4ElementaryParticleCollider.cc
|
|---|
| 1600 | src/G4NucleiModel.cc
|
|---|
| 1601 | src/G4WatcherGun.cc
|
|---|
| 1602 |
|
|---|
| 1603 | 07 April 2010 Dennis Wright (hadr-casc-V09-03-16)
|
|---|
| 1604 | -------------------------------------------------
|
|---|
| 1605 | - fix negative energy bug in G4BigBanger, and switch to using
|
|---|
| 1606 | G4NucleiProperties::GetBindingEnergy
|
|---|
| 1607 |
|
|---|
| 1608 | 07 April 2010 Michael Kelsey (hadr-casc-V09-03-15)
|
|---|
| 1609 | --------------------------------------------------
|
|---|
| 1610 | All changes below within "cascade/" subdirectory:
|
|---|
| 1611 |
|
|---|
| 1612 | 1) Systematically replace pass-by-value function arguments with const-refs.
|
|---|
| 1613 | This is the first step in reducing unnecessary memory churn, to be followed
|
|---|
| 1614 | by replacing return-by-value std::vector<> with non-const argument buffers.
|
|---|
| 1615 |
|
|---|
| 1616 | include/G4CascadeChannel.hh
|
|---|
| 1617 | include/G4FinalStateSampler.hh
|
|---|
| 1618 | include/G4InuclEvaporation.hh
|
|---|
| 1619 | include/G4NuclWatcher.hh
|
|---|
| 1620 | src/G4CascadeChannel.cc
|
|---|
| 1621 | src/G4FinalStateSampler.cc
|
|---|
| 1622 | src/G4InuclEvaporation.cc
|
|---|
| 1623 | src/G4NuclWatcher.cc
|
|---|
| 1624 |
|
|---|
| 1625 | 2) Fix constness on some operator== and operator!= definitions.
|
|---|
| 1626 |
|
|---|
| 1627 | include/G4CascadeElasticInterface.hh
|
|---|
| 1628 | include/G4CascadeInterface.hh
|
|---|
| 1629 | include/G4ElasticCascadeInterface.hh
|
|---|
| 1630 | include/G4IBertini.hh
|
|---|
| 1631 | include/G4PreCompoundCascadeInterface.hh
|
|---|
| 1632 |
|
|---|
| 1633 | 07 Apr 2010 Michael Kelsey (hadr-casc-V09-03-14)
|
|---|
| 1634 | ------------------------------------------------
|
|---|
| 1635 | - G4Dineutron.hh, G4Diproton.hh, G4UnboundPN.hh:
|
|---|
| 1636 | Reset static "theInstance" pointer to zero in (now virtual) destructor.
|
|---|
| 1637 |
|
|---|
| 1638 | - G4Dineutron.cc, G4Diproton.cc, G4UnboundPN.cc:
|
|---|
| 1639 | Implement constructor to do the G4Ions initialization, rather than in
|
|---|
| 1640 | ::Definition(). Drop use of G4ParticleTable; just monitor static pointer.
|
|---|
| 1641 | Set "ShortLived" flag in G4Ions initialization, to avoid interactions with
|
|---|
| 1642 | ProcessManager.
|
|---|
| 1643 |
|
|---|
| 1644 | - G4InuclNuclei.cc: In ::makeNuclearFragment(), set "ShortLived" flag for
|
|---|
| 1645 | G4Ions, to avoid interactions with ProcessManager.
|
|---|
| 1646 |
|
|---|
| 1647 | 26 Mar 2010 Dennis Wright (hadr-casc-V09-03-13)
|
|---|
| 1648 | -----------------------------------------------
|
|---|
| 1649 | - G4EquilibriumEvaporator.cc: remove line #include "G4types.hh"
|
|---|
| 1650 | (file doesn't exist)
|
|---|
| 1651 |
|
|---|
| 1652 | 20 Mar 2010 Michael Kelsey (hadr-casc-V09-03-12)
|
|---|
| 1653 | ------------------------------------------------
|
|---|
| 1654 | All changes below within "cascade/" subdirectory:
|
|---|
| 1655 |
|
|---|
| 1656 | - G4EquilibriumEvaporator.cc: Move subtraction of Q1[i] outside new
|
|---|
| 1657 | GetBindingEnergy() call.
|
|---|
| 1658 |
|
|---|
| 1659 | - G4InuclNuclei.cc::makeNuclearFragment(): Add message warning users about
|
|---|
| 1660 | non-physical creation. Use new GetBindingEnergy() function here as well
|
|---|
| 1661 | (V09-03-05 didn't have this function, so wasn't included in migration).
|
|---|
| 1662 |
|
|---|
| 1663 | 19 Mar 2010 Michael Kelsey (hadr-casc-V09-03-11)
|
|---|
| 1664 | ------------------------------------------------
|
|---|
| 1665 | All changes below within "cascade/" subdirectory:
|
|---|
| 1666 |
|
|---|
| 1667 | - G4InuclSpecialFunctions: Two new functions:
|
|---|
| 1668 |
|
|---|
| 1669 | ::generateWithRandomAngles() to encapsulate random-direction generation.
|
|---|
| 1670 | This function and existing generateWithFixedTheta() take optional mass
|
|---|
| 1671 | argument to produce proper four-vector.
|
|---|
| 1672 |
|
|---|
| 1673 | Replace duplicated random angle code with new function above, and use new
|
|---|
| 1674 | optional mass argument where available:
|
|---|
| 1675 |
|
|---|
| 1676 | G4BigBanger.cc
|
|---|
| 1677 | G4ElementaryParticleCollider.cc
|
|---|
| 1678 | G4EquilibriumEvaporator.cc
|
|---|
| 1679 | G4Fissioner.cc
|
|---|
| 1680 | G4NonEquilibriumEvaporator.cc
|
|---|
| 1681 | G4NucleiModel.cc
|
|---|
| 1682 |
|
|---|
| 1683 | ::G4cbrt(): Define cube-root in terms of log and exp, rather than pow().
|
|---|
| 1684 | Note that "cbrt()" can't be used, as it conflicts with <math.h> on Linux.
|
|---|
| 1685 |
|
|---|
| 1686 | Eliminate unnecessary uses of std::pow() with fixed arguments. For
|
|---|
| 1687 | example, "pow(x,3)" -> "x*x*x", "pow(x,1/3)" -> G4cbrt(x):
|
|---|
| 1688 |
|
|---|
| 1689 | G4BertiniRegionModel.cc
|
|---|
| 1690 | G4EquilibriumEvaporator.cc
|
|---|
| 1691 | G4EvaporationInuclCollider.cc
|
|---|
| 1692 | G4Fissioner.cc
|
|---|
| 1693 | G4IntraNucleiCascader.cc
|
|---|
| 1694 | G4InuclCollider.cc
|
|---|
| 1695 | G4NonEquilibriumEvaporator.cc
|
|---|
| 1696 | G4NucleiModel.cc
|
|---|
| 1697 | G4PreCompoundInuclCollider.cc
|
|---|
| 1698 | G4RegionModel.cc
|
|---|
| 1699 | bindingEnergyAsymptotic.cc
|
|---|
| 1700 | bindingEnergyKummel.cc
|
|---|
| 1701 |
|
|---|
| 1702 | WARNING! In G4IntraNucleiCascader.cc, the Coulomb barrier was calculated
|
|---|
| 1703 | using "std::pow(A, 0.333)", rather than the "exact" 1./3. This leads to
|
|---|
| 1704 | per-mil differences in the value, and occasional differences in wheter an
|
|---|
| 1705 | outgoing particle tunnels through. The new code is exact to double
|
|---|
| 1706 | precision, and therefore fixes a bug.
|
|---|
| 1707 |
|
|---|
| 1708 | - Move "using" directive from all .hh files to corresponding .cc, along with
|
|---|
| 1709 | some unnecessary #includes:
|
|---|
| 1710 |
|
|---|
| 1711 | G4BigBanger.hh, .cc
|
|---|
| 1712 | G4ElementaryParticleCollider.hh, .cc
|
|---|
| 1713 | G4EquilibriumEvaporator.hh, .cc
|
|---|
| 1714 | G4EvaporationInuclCollider.hh, .cc
|
|---|
| 1715 | G4Fissioner.hh, .cc
|
|---|
| 1716 | G4IntraNucleiCascader.hh, .cc
|
|---|
| 1717 | G4InuclCollider.hh
|
|---|
| 1718 | G4InuclNuclei.hh
|
|---|
| 1719 | G4NonEquilibriumEvaporator.hh, .cc
|
|---|
| 1720 | G4NucleiModel.hh, .cc
|
|---|
| 1721 | G4PreCompoundInuclCollider.hh, .cc
|
|---|
| 1722 |
|
|---|
| 1723 | - G4NuclWatcher.hh and .cc (new): Move implementation code from .hh to .cc.
|
|---|
| 1724 |
|
|---|
| 1725 | 18 March 2010 Michael Kelsey (hadr-casc-V09-03-10)
|
|---|
| 1726 | --------------------------------------------------
|
|---|
| 1727 | All changes below within "cascade/" subdirectory:
|
|---|
| 1728 |
|
|---|
| 1729 | Missed one bug in repairs below, found when testing 4 GeV pi -> Pb.
|
|---|
| 1730 |
|
|---|
| 1731 | - G4Fissioner.cc: Replace incorrect G4LorentzVector ctor arguments
|
|---|
| 1732 | (G4ThreeVector,m) with call to G4LV::setVectM().
|
|---|
| 1733 |
|
|---|
| 1734 | 17 March 2010 Dennis Wright (hadr-casc-V09-03-09)
|
|---|
| 1735 | -------------------------------------------------
|
|---|
| 1736 | Fix warning in G4InuclNuclei.cc: G4Ions:G4Ions was being called with
|
|---|
| 1737 | a double (a) in its 13th argument, when an integer is required. Use
|
|---|
| 1738 | G4lrint to convert.
|
|---|
| 1739 |
|
|---|
| 1740 | 16 March 2010 Michael Kelsey (hadr-casc-V09-03-08)
|
|---|
| 1741 | --------------------------------------------------
|
|---|
| 1742 | All changes below within "cascade/" subdirectory:
|
|---|
| 1743 |
|
|---|
| 1744 | Fix bugs introduced during migration from G4CascadeMomentum to
|
|---|
| 1745 | G4LorentzVector (see hadr-casc-V09-03-03). With these bug fixes, 2000
|
|---|
| 1746 | events generated with "ppi4GeV" test executable are equivalent to production
|
|---|
| 1747 | output (GEANT 4.9.3), allowing for differences in hardwired nucleon masses.
|
|---|
| 1748 | When compared with hadr-casc-V09-03-02 (which uses G4ParticleDefinition for
|
|---|
| 1749 | all the particle masses) the 2000-event results are identical within
|
|---|
| 1750 | floating point precision.
|
|---|
| 1751 |
|
|---|
| 1752 | - G4BigBanger.cc: Line 72, fix unit conversion bug, GeV/MeV vs. MeV/GeV.
|
|---|
| 1753 | Replace incorrectly introduced cross-product with original vector
|
|---|
| 1754 | manipulation, written with G4LorentzVector accessors.
|
|---|
| 1755 |
|
|---|
| 1756 | - G4CollisionOutput::selectPairToTune(): Test on "i3>0" not appropriate with
|
|---|
| 1757 | G4LorentzVector indexing. Replace with failure-test on "i3<0". Also
|
|---|
| 1758 | simplify final if-cascade for readability.
|
|---|
| 1759 |
|
|---|
| 1760 | - G4EquilibriumEvaporator.cc: Replace incorrect G4LorentzVector ctor
|
|---|
| 1761 | arguments (px,py,pz,m) with call to G4LV::setVectM().
|
|---|
| 1762 |
|
|---|
| 1763 | - G4IntraNuclearCascader.cc: Replace leftover momentum_out[0] with .e().
|
|---|
| 1764 |
|
|---|
| 1765 | - G4InuclNuclei.cc,hh: Add new function ::makeNuclearFragment(a,z,exc),
|
|---|
| 1766 | which "manually" construct a G4Ions object for cases where A/Z is not a
|
|---|
| 1767 | valid stable or unstable nucleus. These unphysical objects are passed
|
|---|
| 1768 | back from G4IntraNuclearCascader.cc and immediately passed to G4BigBanger
|
|---|
| 1769 | for conversion to nucleons. A future change should move this action into
|
|---|
| 1770 | G4INCascader and eliminate the need for unphysical nuclei.
|
|---|
| 1771 |
|
|---|
| 1772 | - G4LorentzConvertor::toTheTargetRestFrame(): Remove local declaration of
|
|---|
| 1773 | scm_momentum, restoring access to data member with that name.
|
|---|
| 1774 |
|
|---|
| 1775 | - G4NucleiModel::generateQuasiDeutron(): Undo consolidation of dmom with
|
|---|
| 1776 | local variables for each of the nucleon momenta. Stack corruption led to
|
|---|
| 1777 | differences in unbound p-n state relative to pp and nn states.
|
|---|
| 1778 |
|
|---|
| 1779 | Minor updates: Changed all the "verboseLevel()" initializers to (0), via a
|
|---|
| 1780 | shell script. This allows making the code uniformly verbose or quiet.
|
|---|
| 1781 |
|
|---|
| 1782 | include/G4NucleiModel.hh
|
|---|
| 1783 | src/G4Analyser.cc
|
|---|
| 1784 | src/G4CollisionOutput.cc
|
|---|
| 1785 | src/G4ElementaryParticleCollider.cc
|
|---|
| 1786 | src/G4FissionStore.cc
|
|---|
| 1787 | src/G4Fissioner.cc
|
|---|
| 1788 | src/G4IntraNucleiCascader.cc
|
|---|
| 1789 | src/G4NonEquilibriumEvaporator.cc
|
|---|
| 1790 | src/G4NucleiModel.cc
|
|---|
| 1791 | src/G4WatcherGun.cc
|
|---|
| 1792 |
|
|---|
| 1793 | 16 March 2010 Michael Kelsey (hadr-casc-V09-03-DO-NOT-USE)
|
|---|
| 1794 | --------------------------------------------------
|
|---|
| 1795 | All changes below within "cascade/" subdirectory:
|
|---|
| 1796 |
|
|---|
| 1797 | Restore version hadr-casc-V09-03-05 to HEAD of CVS in order to apply bug
|
|---|
| 1798 | fixes and re-deploy migration from G4CascadeMomentum to G4LorentzVector.
|
|---|
| 1799 | This reversion is tagged as a checkpoint only, and should not be used for
|
|---|
| 1800 | testing or running (since it restores the known bugs in V09-03-03).
|
|---|
| 1801 |
|
|---|
| 1802 | The update to G4InteractionCase.hh by Gabriele Cosmo in hadr-casc-V09-03-07
|
|---|
| 1803 | is not touched by this reversion!
|
|---|
| 1804 |
|
|---|
| 1805 | The following CVS commands were used to perform the reversion:
|
|---|
| 1806 |
|
|---|
| 1807 | cvs update -j1.13 -j1.12 cascade/include/G4CascadParticle.hh
|
|---|
| 1808 | cvs update -j1.4 -j1.3 cascade/include/G4CascadeMomentum.hh
|
|---|
| 1809 | cvs update -j1.15 -j1.14 cascade/include/G4CollisionOutput.hh
|
|---|
| 1810 | cvs update -j1.23 -j1.22 cascade/include/G4ElementaryParticleCollider.hh
|
|---|
| 1811 | cvs update -j1.9 -j1.8 cascade/include/G4InuclCollider.hh
|
|---|
| 1812 | cvs update -j1.19 -j1.18 cascade/include/G4InuclElementaryParticle.hh
|
|---|
| 1813 | cvs update -j1.12 -j1.11 cascade/include/G4InuclNuclei.hh
|
|---|
| 1814 | cvs update -j1.16 -j1.15 cascade/include/G4InuclParticle.hh
|
|---|
| 1815 | cvs update -j1.13 -j1.12 cascade/include/G4InuclSpecialFunctions.hh
|
|---|
| 1816 | cvs update -j1.13 -j1.12 cascade/include/G4LorentzConvertor.hh
|
|---|
| 1817 | cvs update -j1.4 -j1.3 cascade/include/G4ParticleLargerBeta.hh
|
|---|
| 1818 | cvs update -j1.9 -j1.8 cascade/include/G4ParticleLargerEkin.hh
|
|---|
| 1819 | cvs update -j1.20 -j1.19 cascade/src/G4BigBanger.cc
|
|---|
| 1820 | cvs update -j1.13 -j1.12 cascade/src/G4CascadParticle.cc
|
|---|
| 1821 | cvs update -j1.6 -j1.5 cascade/src/G4CascadeElasticInterface.cc
|
|---|
| 1822 | cvs update -j1.68 -j1.67 cascade/src/G4CascadeInterface.cc
|
|---|
| 1823 | cvs update -j1.18 -j1.17 cascade/src/G4CollisionOutput.cc
|
|---|
| 1824 | cvs update -j1.7 -j1.6 cascade/src/G4ElasticCascadeInterface.cc
|
|---|
| 1825 | cvs update -j1.6 -j1.5 cascade/src/G4EvaporationInuclCollider.cc
|
|---|
| 1826 | cvs update -j1.5 -j1.4 cascade/src/G4IBertini.cc
|
|---|
| 1827 | cvs update -j1.3 -j1.2 cascade/src/G4InuclElementaryParticle.cc
|
|---|
| 1828 | cvs update -j1.10 -j1.9 cascade/src/G4InuclEvaporation.cc
|
|---|
| 1829 | cvs update -j1.3 -j1.2 cascade/src/G4InuclNuclei.cc
|
|---|
| 1830 | cvs update -j1.4 -j1.3 cascade/src/G4InuclParticle.cc
|
|---|
| 1831 | cvs update -j1.17 -j1.16 cascade/src/G4InuclSpecialFunctions.cc
|
|---|
| 1832 | cvs update -j1.19 -j1.18 cascade/src/G4LorentzConvertor.cc
|
|---|
| 1833 | cvs update -j1.5 -j1.4 cascade/src/G4PreCompoundCascadeInterface.cc
|
|---|
| 1834 | cvs update -j1.4 -j1.3 cascade/src/G4PreCompoundInuclCollider.cc
|
|---|
| 1835 |
|
|---|
| 1836 | Intermediate versions below had bindingEnergy changes from -05 re-applied
|
|---|
| 1837 |
|
|---|
| 1838 | cvs update -j1.23 -j1.21 cascade/src/G4EquilibriumEvaporator.cc
|
|---|
| 1839 | cvs update -j1.22 -j1.20 cascade/src/G4Fissioner.cc
|
|---|
| 1840 | cvs update -j1.29 -j1.27 cascade/src/G4IntraNucleiCascader.cc
|
|---|
| 1841 | cvs update -j1.24 -j1.22 cascade/src/G4InuclCollider.cc
|
|---|
| 1842 | cvs update -j1.23 -j1.21 cascade/src/G4NonEquilibriumEvaporator.cc
|
|---|
| 1843 | cvs update -j1.38 -j1.36 cascade/src/G4NucleiModel.cc
|
|---|
| 1844 |
|
|---|
| 1845 | G4ElementaryParticleCollider::particleSCMmomentumFor2to2: Restore new
|
|---|
| 1846 | parametrization of elastic scattering added by D.Write in hadr-casc-V09-03-06
|
|---|
| 1847 |
|
|---|
| 1848 | cvs update -j1.47 -j1.45 cascade/src/G4ElementaryParticleCollider.cc
|
|---|
| 1849 | + editing
|
|---|
| 1850 |
|
|---|
| 1851 | 05 Mar 2010 Gabriele Cosmo (hadr-casc-V09-03-07)
|
|---|
| 1852 | ------------------------------------------------
|
|---|
| 1853 | - Reinstated fix in G4InteractionCase.hh for initialisation in constructor to
|
|---|
| 1854 | allow for porting on C++0x Standard.
|
|---|
| 1855 |
|
|---|
| 1856 | 07 Feb 2010 Dennis Wright (hadr-casc-V09-03-06)
|
|---|
| 1857 | -----------------------------------------------
|
|---|
| 1858 | - back out changes from tags V09-03-00 to V00-03-05 by restoring HEAD
|
|---|
| 1859 | to V09-02-11, and keeping the di-nucleon classes
|
|---|
| 1860 | - replace Bertini method bindingEnergy() with
|
|---|
| 1861 | G4NucleiProperties::GetBindingEnergy() in classes
|
|---|
| 1862 | G4IntraNuclearCascader, G4InuclCollider, G4NucleiModel, G4EquilibriumModel,
|
|---|
| 1863 | G4NonEquilibriumModel, G4Fissioner. Note that G4Fissioner still uses the
|
|---|
| 1864 | Bertini method bindingEnergyAsymptotic.
|
|---|
| 1865 |
|
|---|
| 1866 | - G4ElementaryParticleCollider::particleSCMmomentumFor2to2
|
|---|
| 1867 | replace original (incorrect) pp, pn, nn 2-body to 2-body scattering angular
|
|---|
| 1868 | distributions with a new parameterization of elastic scattering data using
|
|---|
| 1869 | the sum of two exponentials
|
|---|
| 1870 |
|
|---|
| 1871 | 02 Feb 2010 Dennis Wright (hadr-casc-V09-03-05)
|
|---|
| 1872 | -----------------------------------------------
|
|---|
| 1873 | - replace all uses of bindingEnergy (local Bertini method) with the
|
|---|
| 1874 | Geant4 standard G4NucleiProperties::GetBindingEnergy(A,Z)
|
|---|
| 1875 | files modified:
|
|---|
| 1876 | G4IntraNucleiCascader.cc
|
|---|
| 1877 | G4InuclCollider.cc
|
|---|
| 1878 | G4NucleiModel.cc
|
|---|
| 1879 | G4EquilibriumEvaporator.cc
|
|---|
| 1880 | G4NonEquilibriumEvaporator.cc
|
|---|
| 1881 | G4Fissioner.cc
|
|---|
| 1882 | - note that G4Fissioner still uses Bertini method bindingEnergyAsymptotic
|
|---|
| 1883 |
|
|---|
| 1884 | 28 Jan 2010 Dennis Wright (hadr-casc-V09-03-04)
|
|---|
| 1885 | -----------------------------------------------
|
|---|
| 1886 | - fix unused variable warnings in G4InuclParticle.hh, .cc and
|
|---|
| 1887 | G4NonEquilibriumEvaporator.cc
|
|---|
| 1888 |
|
|---|
| 1889 | 26 Jan 2010 Michael Kelsey (hadr-casc-V09-03-03)
|
|---|
| 1890 | ------------------------------------------------
|
|---|
| 1891 | All changes below within "cascade/" subdirectory:
|
|---|
| 1892 |
|
|---|
| 1893 | - G4ParticleLargerBeta.hh: Fix to use of CVS "Name" tag; no code changes.
|
|---|
| 1894 |
|
|---|
| 1895 | - G4CascadParticle: Replace the position std::vector<> with G4ThreeVector.
|
|---|
| 1896 |
|
|---|
| 1897 | - G4NucleiModel: Replace all std::vector<> coordinates with G4ThreeVector,
|
|---|
| 1898 | and use vector math for computations.
|
|---|
| 1899 |
|
|---|
| 1900 | Remove all use of G4CascadeMomentum (a simple container with a C-style
|
|---|
| 1901 | four-element array) with G4LorentzVector. This is a fairly invasive change,
|
|---|
| 1902 | since G4CascMom was used for all of the three- and four-vector operations
|
|---|
| 1903 | throughout the Bertini code:
|
|---|
| 1904 |
|
|---|
| 1905 | include/G4CascadParticle.hh
|
|---|
| 1906 | include/G4CollisionOutput.hh
|
|---|
| 1907 | include/G4ElementaryParticleCollider.hh
|
|---|
| 1908 | include/G4InuclCollider.hh
|
|---|
| 1909 | include/G4InuclElementaryParticle.hh
|
|---|
| 1910 | include/G4InuclNuclei.hh
|
|---|
| 1911 | include/G4InuclParticle.hh
|
|---|
| 1912 | include/G4InuclSpecialFunctions.hh
|
|---|
| 1913 | include/G4LorentzConvertor.hh
|
|---|
| 1914 |
|
|---|
| 1915 | src/G4BigBanger.cc
|
|---|
| 1916 | src/G4CascadParticle.cc
|
|---|
| 1917 | src/G4CascadeElasticInterface.cc
|
|---|
| 1918 | src/G4CascadeInterface.cc
|
|---|
| 1919 | src/G4CollisionOutput.cc
|
|---|
| 1920 | src/G4ElasticCascadeInterface.cc
|
|---|
| 1921 | src/G4ElementaryParticleCollider.cc
|
|---|
| 1922 | src/G4EquilibriumEvaporator.cc
|
|---|
| 1923 | src/G4EvaporationInuclCollider.cc
|
|---|
| 1924 | src/G4Fissioner.cc
|
|---|
| 1925 | src/G4IBertini.cc
|
|---|
| 1926 | src/G4IntraNucleiCascader.cc
|
|---|
| 1927 | src/G4InuclCollider.cc
|
|---|
| 1928 | src/G4InuclElementaryParticle.cc
|
|---|
| 1929 | src/G4InuclEvaporation.cc
|
|---|
| 1930 | src/G4InuclNuclei.cc
|
|---|
| 1931 | src/G4InuclParticle.cc
|
|---|
| 1932 | src/G4InuclSpecialFunctions.cc
|
|---|
| 1933 | src/G4LorentzConvertor.cc
|
|---|
| 1934 | src/G4NonEquilibriumEvaporator.cc
|
|---|
| 1935 | src/G4NucleiModel.cc
|
|---|
| 1936 | src/G4PreCompoundCascadeInterface.cc
|
|---|
| 1937 | src/G4PreCompoundInuclCollider.cc
|
|---|
| 1938 |
|
|---|
| 1939 | The new code is not yet entirely "correct," since Bertini also does a lot of
|
|---|
| 1940 | operations by way of three-momentum, imposing masses (and hence energy
|
|---|
| 1941 | conservation) separately, after the fact.
|
|---|
| 1942 |
|
|---|
| 1943 | 20 Jan 2010 Gabriele Cosmo
|
|---|
| 1944 | --------------------------
|
|---|
| 1945 | - G4InteractionCase.hh: Minor fix in initialisation in constructor to
|
|---|
| 1946 | allow for porting on C++0x Standard.
|
|---|
| 1947 |
|
|---|
| 1948 | 20 Jan 2010 Michael Kelsey (hadr-casc-V09-03-02)
|
|---|
| 1949 | ------------------------------------------------
|
|---|
| 1950 | - G4LorentzConvertor.hh: Fix scm_momentum data member to be G4ThreeVector
|
|---|
| 1951 | (as used in previous versions) rather than G4LorentzVector.
|
|---|
| 1952 |
|
|---|
| 1953 | NOTE: I have *retagged* cascade/include/G4LorentzConverter.hh and this
|
|---|
| 1954 | History file, rather than creating a new tag, since these are private
|
|---|
| 1955 | development only, not public releases.
|
|---|
| 1956 |
|
|---|
| 1957 | 12 Jan 2010 Michael Kelsey (hadr-casc-V09-03-02)
|
|---|
| 1958 | ------------------------------------------------
|
|---|
| 1959 | All changes below within "cascade/" subdirectory:
|
|---|
| 1960 |
|
|---|
| 1961 | - G4CascadeMomentum: Replace use of static G4LV variables within functions
|
|---|
| 1962 | with mutable data member of object; this does introduce more memory
|
|---|
| 1963 | thrashing, but the plan is to get rid of the whole thing anyway. Improve
|
|---|
| 1964 | implicit casting and add assignment from G4LV.
|
|---|
| 1965 |
|
|---|
| 1966 | - G4LorentzConverter: Change function signatures to accept G4LV as input,
|
|---|
| 1967 | using implicit cast to convert existing G4CascadeMomentum argument
|
|---|
| 1968 | passing. Use G4LV internally throughout, again using implicit cast to
|
|---|
| 1969 | return G4CascMom values. This substantially increases (temporarily!)
|
|---|
| 1970 | memory thrashing. Simplify ::rotate() functions to use G4LV and
|
|---|
| 1971 | G4ThreeVec operations rather than array index gymnastics. Move some
|
|---|
| 1972 | function implementations out of .hh file into .cc.
|
|---|
| 1973 |
|
|---|
| 1974 | - G4ParticleLargerEkin.hh: Fix use of CVS "Name" tag. No code changes.
|
|---|
| 1975 |
|
|---|
| 1976 | 12 Jan 2010 Michael Kelsey (hadr-casc-V09-03-01)
|
|---|
| 1977 | ------------------------------------------------
|
|---|
| 1978 | All changes below within "cascade/" subdirectory:
|
|---|
| 1979 |
|
|---|
| 1980 | - G4ParticleLargerBeta, G4ParticleLargerEkin: Add additional operator()
|
|---|
| 1981 | which takes pointers (for future mods to reduce ctor/dtor cycling), and
|
|---|
| 1982 | fix ordering bug in beta sorting. Add debugging printout togged with
|
|---|
| 1983 | preprocessor flag.
|
|---|
| 1984 |
|
|---|
| 1985 | - G4InuclParticle, G4InuclNuclei, G4InuclElementaryParticle: Rewrite to
|
|---|
| 1986 | carry G4DynamicParticle data member, and to instantiate particle
|
|---|
| 1987 | properties via G4ParticleDefinition subclasses. This is first stage in
|
|---|
| 1988 | eventually eliminating the G4InuclParticle stuff entirely in favor of
|
|---|
| 1989 | direct use of G4DynamicParticle for internal propagation.
|
|---|
| 1990 |
|
|---|
| 1991 | These changes have been testing using debugging output on the production
|
|---|
| 1992 | (4.9.3) code compared to the above changes. |diff| shows mostly identical
|
|---|
| 1993 | results, with occasional ~1e-5 floating point differences.
|
|---|
| 1994 |
|
|---|
| 1995 | 08 Jan 2010 Michael Kelsey (hadr-casc-V09-03-00)
|
|---|
| 1996 | ------------------------------------------------
|
|---|
| 1997 | All changes below within "cascade/" subdirectory:
|
|---|
| 1998 |
|
|---|
| 1999 | - G4BertiniNuclearModel: REMOVE this class from the HEAD, and hopefully all
|
|---|
| 2000 | future tags. It is redundant with the G4NuclearModel class, and is not
|
|---|
| 2001 | used anywhere in the G4 distribtion; the latter is referenced in both
|
|---|
| 2002 | regular G4 code and in examples.
|
|---|
| 2003 |
|
|---|
| 2004 | - G4Diproton, G4Dineutron, G4UnboundPN: New G4ParticleDefinition
|
|---|
| 2005 | subclasses, which implement the Bertini-specific dibaryon states. These
|
|---|
| 2006 | are not used anywhere as yet, but will be used in future modifications to
|
|---|
| 2007 | the G4InuclParticle subclasses.
|
|---|
| 2008 |
|
|---|
| 2009 | - G4CascadeMomentum: Add interface to create from and cast to
|
|---|
| 2010 | G4LorentzVector. Will be used (in future) by G4InuclParticle modifications,
|
|---|
| 2011 | and provides a transition to eliminating this class entirely.
|
|---|
| 2012 |
|
|---|
| [1228] | 2013 | 1 Dec 2009 Dennis Wright (hadr-casc-V09-02-11)
|
|---|
| 2014 | ----------------------------------------------
|
|---|
| 2015 | - G4PionSampler, G4NucleonSampler: change loop variable in ctor from i to j
|
|---|
| 2016 | in order to satisfy Windows compiler
|
|---|
| 2017 |
|
|---|
| [1196] | 2018 | 11 Nov 2009 Dennis Wright (hadr-casc-V09-02-10)
|
|---|
| 2019 | -----------------------------------------------
|
|---|
| 2020 | - G4CascadParticle, G4InuclElementaryParticle: add integer argument to ctor
|
|---|
| 2021 | to indicate which generation cascade particle belongs to.
|
|---|
| 2022 | Also change G4NucleiModel and G4BertiniNucleiModel to use this.
|
|---|
| 2023 |
|
|---|
| 2024 | 8 Oct 2009 Dennis Wright (hadr-casc-V09-02-09)
|
|---|
| 2025 | -----------------------------------------------
|
|---|
| 2026 | - G4PionSampler: use charge exchange cross section for pi0-p, go back
|
|---|
| 2027 | original Bertini pi0-p elastic partial cs. Update pi0 total cross
|
|---|
| 2028 | section accordingly. Improve fits to pi-p partial cs and update
|
|---|
| 2029 | pi- total cross sections.
|
|---|
| 2030 | - G4NucleiModel: update pi- and pi0 total cross sections
|
|---|
| 2031 |
|
|---|
| 2032 | 24 Sep 2009 Dennis Wright (hadr-casc-V09-02-08)
|
|---|
| 2033 | -----------------------------------------------
|
|---|
| 2034 | - add class G4NucleonSampler which replaces old pp, pn, and nn partial and
|
|---|
| 2035 | total cross sections also modify other classes which use them
|
|---|
| 2036 | - move large arrays which are instantiated at every call of frequently
|
|---|
| 2037 | used methods. They are now initialized once in constructors.
|
|---|
| 2038 | - G4CascadSpecialFunctions: put copy of total cross section method
|
|---|
| 2039 | in G4NucleiModel, also remove unneeded energy scale arrays
|
|---|
| 2040 | (now replaced with a new one)
|
|---|
| 2041 | - G4CascadeInterface: move instantiation of various collider classes
|
|---|
| 2042 | outside of loop, and put on stack instead of heap
|
|---|
| 2043 | - G4ElementaryParticleCollider: re-design to use G4NucleonSampler and
|
|---|
| 2044 | remove instantiation of large arrays from within loops in code
|
|---|
| 2045 | - G4NucleiModel: remove instatiation of large arrays from with loops,
|
|---|
| 2046 | add new total cross section sampling, remove use of all but one
|
|---|
| 2047 | energy scale
|
|---|
| 2048 |
|
|---|
| 2049 | 17 Sep 2009 Dennis Wright (hadr-casc-V09-02-07)
|
|---|
| 2050 | -----------------------------------------------
|
|---|
| 2051 | - G4PionSampler: remove large static arrays
|
|---|
| 2052 | - G4FinalStateSampler: remove static array pointer to G4 particle types
|
|---|
| 2053 | - G4ElementaryParticleCollider: clean up
|
|---|
| 2054 |
|
|---|
| 2055 | 4 Sep 2009 Dennis Wright (hadr-casc-V09-02-06)
|
|---|
| 2056 | ----------------------------------------------
|
|---|
| 2057 | - add assignment operator to class G4CollisionOutput
|
|---|
| 2058 |
|
|---|
| 2059 | 31 Aug 2009 Dennis Wright (hadr-casc-V09-02-05)
|
|---|
| 2060 | -----------------------------------------------
|
|---|
| 2061 | - add class G4FinalStateSampler which was accidentally omitted from
|
|---|
| 2062 | the previous tag
|
|---|
| 2063 |
|
|---|
| 2064 | 25 Aug 2009 Dennis Wright (hadr-casc-V09-02-04)
|
|---|
| 2065 | -----------------------------------------------
|
|---|
| 2066 | - correct bug in particle ordering in G4PionSampler
|
|---|
| 2067 | - clean up dead code in G4NucleiModel and G4ElementaryParticleCollider
|
|---|
| 2068 |
|
|---|
| 2069 | 20 Aug 2009 Dennis Wright (hadr-casc-V09-02-03)
|
|---|
| 2070 | -----------------------------------------------
|
|---|
| 2071 | - create class G4PionSampler: samples partial cross sections, multiplicities
|
|---|
| 2072 | and final state particle types required for pi+, pi- and pi0 scattering
|
|---|
| 2073 | within a nucleus. This class uses re-evaluated pion partial cross sections
|
|---|
| 2074 | and includes production of strange particle pairs.
|
|---|
| 2075 | - G4CascadeSigmaPlusNChannel: correct sigma plus cross sections
|
|---|
| 2076 | - G4CascadSpecialFunctions: move pion, kaon, hyperon total cross sections
|
|---|
| 2077 | to this class
|
|---|
| 2078 | - G4ElementaryParticleCollider: re-write to use G4PionSampler class for
|
|---|
| 2079 | cross sections and multiplicities, remove method reChargering (now redundant)
|
|---|
| 2080 |
|
|---|
| [1055] | 2081 | 15 Apr 2009 Dennis Wright (hadr-casc-V09-02-02)
|
|---|
| 2082 | -----------------------------------------------
|
|---|
| 2083 | - previous tag no longer used. Bring hadr-casc-V09-02-00 back to
|
|---|
| 2084 | HEAD and re-tag
|
|---|
| 2085 |
|
|---|
| 2086 | 21 Feb 2009 Dennis Wright (hadr-casc-V09-02-01)
|
|---|
| 2087 | -----------------------------------------------
|
|---|
| 2088 | - add printCrossSection method to G4CascadSpecialFunctions
|
|---|
| 2089 | - in GeElementaryParticleCollider, add high energy flag to distinguish
|
|---|
| 2090 | "string-like" behavior
|
|---|
| 2091 | - G4IntraNucleiCascader.cc - allow secondaries from HE interaction to
|
|---|
| 2092 | leave nucleus without interacting
|
|---|
| 2093 | - G4NucleiModel - get high_energy_interaction flag value from G4ElementaryParticleCollider
|
|---|
| 2094 |
|
|---|
| 2095 | 11 Feb 2009 V.Ivanchenko (hadr-casc-V09-02-00)
|
|---|
| 2096 | -----------------------------------------------
|
|---|
| 2097 | - set absorption coefficient 1.0 instead of 0.2 inside
|
|---|
| 2098 | G4CascadSpecialFunctions (D.Wright)
|
|---|
| 2099 |
|
|---|
| [962] | 2100 | 25 Nov 2008 Dennis Wright (hadr-casc-V09-01-10)
|
|---|
| 2101 | -----------------------------------------------
|
|---|
| 2102 | - fix multiplicity sampling in G4ElementaryParticleCollider::generateMultiplicity().
|
|---|
| 2103 | Now partial cross sections are normalized to the total cross section instead
|
|---|
| 2104 | of just the sum of 2-body to 6-body final state cross sections. Also fix
|
|---|
| 2105 | 2-body cross sections above 7 GeV where they were too small.
|
|---|
| 2106 | Fix the same cross sections which appear in G4CascadSpecialFunctions.cc
|
|---|
| 2107 |
|
|---|
| 2108 | 21 Nov 2008 Dennis Wright (hadr-casc-V09-01-09)
|
|---|
| 2109 | -----------------------------------------------
|
|---|
| 2110 | - add some comments to cross section tables in G4CascadSpecialFunctions.cc
|
|---|
| 2111 | and G4ElementaryParticleCollider.cc
|
|---|
| 2112 |
|
|---|
| 2113 | 24 Oct 2008 Dennis Wright (hadr-casc-V09-01-08)
|
|---|
| 2114 | -----------------------------------------------
|
|---|
| 2115 | - replace GetAtomicMass() with GetNuclearMass() in cascade/G4InuclEvaporation
|
|---|
| 2116 | and evaporation/G4BertiniEvaporation
|
|---|
| 2117 | - V. Ivantchenko added name to G4CascadeInterface ("Bertini Cascade")
|
|---|
| 2118 |
|
|---|
| 2119 | 17 Oct 2008 Dennis Wright (hadr-casc-V09-01-07)
|
|---|
| 2120 | -----------------------------------------------
|
|---|
| 2121 | - added Coulomb barrier plus barrier penetration in G4IntraNucleiCascader.cc
|
|---|
| 2122 |
|
|---|
| 2123 | 27 Sep 2008 Dennis Wright (hadr-casc-V09-01-06)
|
|---|
| 2124 | -----------------------------------------------
|
|---|
| 2125 | - Fixed 4.3 compiler warnings for G4InuclElementaryParticle.hh by providing
|
|---|
| 2126 | initializers for particle type and mass
|
|---|
| 2127 | - Remove unused variables totscm, totlab in G4BigBanger.cc,
|
|---|
| 2128 | G4ElementaryParticleCollider.cc, and unused mom1 from G4InuclSpecialFunctions.cc
|
|---|
| 2129 |
|
|---|
| 2130 | 22 Sep 2008 Gabriele Cosmo (hadr-casc-V09-01-05)
|
|---|
| 2131 | ------------------------------------------------
|
|---|
| 2132 | - Introduced simple wrapper class G4CascadeMomentum meant to replace usage
|
|---|
| 2133 | of std::vector<double> in the cascade code, to reduce memory allocations.
|
|---|
| 2134 | Courtesy of P.Elmer (princeton Univ.).
|
|---|
| 2135 | - Modified cascade code to make use of G4CascadeMomentum.
|
|---|
| 2136 |
|
|---|
| 2137 | 3 Sep 2008 Dennis Wright (hadr-casc-V09-01-04)
|
|---|
| 2138 | -----------------------------------------------
|
|---|
| 2139 | - G4ElementaryParticleCollider.cc: in method generateMultiplicity, remove
|
|---|
| 2140 | large_cut which increases multiplicity from 3 to 4 abruptly at 4 GeV
|
|---|
| 2141 | and above. This caused a sharp drop-off in the single pion spectra from
|
|---|
| 2142 | pH reactions. The effect in heavier nuclei is small.
|
|---|
| 2143 |
|
|---|
| 2144 | 29 Jun 2008 Dennis Wright (hadr-casc-V09-01-03)
|
|---|
| 2145 | -----------------------------------------------
|
|---|
| 2146 | - add changes made by M. Paterno, J. Kowalkowski, and M. Fischler (FNAL)
|
|---|
| 2147 | to speed up code. All G4Cascade***Channel classes and related code changed.
|
|---|
| 2148 |
|
|---|
| 2149 | 5 May 2008 Dennis Wright (hadr-casc-V09-01-02)
|
|---|
| 2150 | -----------------------------------------------
|
|---|
| 2151 | - retag hadr-casc-V09-csbug as hadr-casc-V09-01-02
|
|---|
| 2152 |
|
|---|
| 2153 | 30 Apr 2008 Dennis Wright (hadr-casc-V09-csbug)
|
|---|
| 2154 | -----------------------------------------------
|
|---|
| [819] | 2155 | - fix cross section bug in G4CascadSpecialFunctions that returned
|
|---|
| 2156 | low or zero total cross sections for pi-p, pi+n, np, and pi0
|
|---|
| 2157 | interactions
|
|---|
| 2158 |
|
|---|
| [962] | 2159 | 29 Apr 2008 Dennis Wright (hadr-casc-V09-01-01)
|
|---|
| [819] | 2160 | -----------------------------------------------
|
|---|
| [962] | 2161 | - bring tag hadr-casc-V09-01-coula to HEAD, make official tag
|
|---|
| 2162 |
|
|---|
| 2163 | 22 Apr 2008 Dennis Wright (hadr-casc-V09-01-param)
|
|---|
| 2164 | --------------------------------------------------
|
|---|
| [819] | 2165 | - changed pp, nn total cross section parameterization in
|
|---|
| 2166 | G4CascadSpecialFunctions to more closely reflect the PDG values (old one
|
|---|
| 2167 | was off by as much as a factor of 3.
|
|---|
| 2168 |
|
|---|
| 2169 | 3 Apr 2008 Dennis Wright (hadr-casc-V09-01-coula)
|
|---|
| 2170 | -------------------------------------------------
|
|---|
| 2171 | - removed Coulomb barrier from G4IntraNucleiCascader.cc (causes unphysical spike)
|
|---|
| 2172 |
|
|---|
| 2173 | 3 Apr 2008 Dennis Wright (hadr-casc-V09-01-coul)
|
|---|
| 2174 | ------------------------------------------------
|
|---|
| 2175 | - Added Coulomb barrier in G4EquilibriumEvaporator.cc, G4IntraNucleiCascader.cc
|
|---|
| 2176 |
|
|---|
| 2177 | 17 Nov 2007 Dennis Wright (hadr-casc-V09-00-02)
|
|---|
| 2178 | -----------------------------------------------
|
|---|
| 2179 | - Fix angular distribution for nucleon-nucleon elastic scattering
|
|---|
| 2180 | above 2.8 GeV, by modifying G4ElementaryParticleCollider::getElasticCase
|
|---|
| 2181 |
|
|---|
| 2182 | 25 May 2007 Dennis Wright for Aatos Heikkinen (hadr-casc-V08-03-00)
|
|---|
| 2183 | -------------------------------------------------------------------
|
|---|
| 2184 | - implemented interfaces for pre-equilibrium and equilbrium evaporation
|
|---|
| 2185 | models
|
|---|
| 2186 |
|
|---|
| 2187 | 04 May 2007 Aatos Heikkinen (hadr-casc-V08-02-00)
|
|---|
| 2188 | -------------------------------------------------
|
|---|
| 2189 |
|
|---|
| 2190 | - Added protection in G4ElementaryParticleCollider against negative
|
|---|
| 2191 | value to sqrt().
|
|---|
| 2192 |
|
|---|
| 2193 | 08 May 2006 Dennis Wright (hadr-casc-V08-00-00)
|
|---|
| 2194 | -----------------------------------------------
|
|---|
| 2195 |
|
|---|
| 2196 | - cascade: remove G4BERTINI_KAON conditional assembly flags. Files
|
|---|
| 2197 | affected:
|
|---|
| 2198 | G4ElementaryParticleCollider.hh, cc
|
|---|
| 2199 | G4InuclElementaryParticle.hh
|
|---|
| 2200 | G4NucleiModel.hh, cc
|
|---|
| 2201 | G4CascadeInterface.cc
|
|---|
| 2202 | G4IntraNucleiCascader.cc
|
|---|
| 2203 |
|
|---|
| 2204 | - cascade (Pekka Kaitaniemi): G4ElasticCascadeInterface: derive
|
|---|
| 2205 | from G4VIntraNuclearTransportModel instead of G4HadronElastic.
|
|---|
| 2206 | Check for case when no elastic scattering occurs. If so,
|
|---|
| 2207 | return original bullet and target.
|
|---|
| 2208 |
|
|---|
| 2209 | 24 Nov 2005 Dennis Wright (hadr-casc-V07-01-00)
|
|---|
| 2210 | ----------------------------------------------
|
|---|
| 2211 |
|
|---|
| 2212 | - cascade (bertini-V07-01-00 by Aatos Heikkinen)
|
|---|
| 2213 | elastic scattering interface added:
|
|---|
| 2214 | G4ElasticCascadeInterface.hh, .cc added
|
|---|
| 2215 | G4CascadeInterface.hh modified
|
|---|
| 2216 |
|
|---|