Geant4 Cross Reference |
1 # Category emutils History 2 3 See `CONTRIBUTING.rst` for details of **required** info/format for each entry, 4 which **must** added in reverse chronological order (newest at the top). 5 It must **not** be used as a substitute for writing good git commit messages! 6 7 ------------------------------------------------------------------------------- 8 9 ## 2024-10-31 V.Ivanchenko (emutils-V11-02-20) 10 - G4EmCalculator - fixed Coverity warning 11 12 ## 2024-10-23 V.Ivanchenko (emutils-V11-02-19) 13 - G4EmParameters - added flag to enable/disable the new Ricardo-Gerardo model 14 of e+e- pair production 15 - G4EmProcessSubType - added coherent channeling pair proction process type 16 17 ## 2024-10-17 V.Ivanchenko (emutils-V11-02-18) 18 - G4EmParameters, G4EmParametersMessenger - added flag to enable/disable 19 3 gamma annihilation on fly 20 - G4EmCalculator - fixed Coverity warning 21 22 ## 2024-10-10 J.Hahnfeld (emutils-V11-02-17) 23 - `G4EmConfigurator`: Handle G4TransportationWithMsc process name 24 25 ## 2024-10-08 J.Hahnfeld (emutils-V11-02-16) 26 - `G4TransportationWithMsc`: set `TRANSPORTATION_WITH_MSC` process sub type 27 28 ## 2024-09-17 V.Ivanchenko (emutils-V11-02-15) 29 - G4EmSaturation, G4EmCalculator, G4EmLowEParameters - fixed Coverity warnings 30 31 ## 2024-09-04 V.Ivanchenko (emutils-V11-02-14) 32 - G4EmParameters, G4EmParametersMessenger - removed parameter defining fraction 33 of orto positronium for all materials 34 35 ## 2024-08-22 V.Ivanchenko (emutils-V11-02-13) 36 - G4EmParameters, G4EmParametersMessenger - added Boolean flag UseEPICS2017 37 - G4EmProcessSubType - added sub-types for dynamic EM processes 38 (G4ParticleDefinition is not used, all computations on fly) 39 - G4EmElementXS - new helper class to x-section data 40 41 ## 2024-08-02 V.Ivanchenko (emutils-V11-02-12) 42 - G4EmParameters, G4EmParametersMessenger - added Ore-Powell models to 43 the list of models for positron annihilation at rest 44 45 ## 2024-07-02 V.Ivanchenko (emutils-V11-02-11) 46 - G4EmCorrections, G4EmParameters, G4EmExtraParameters, G4EmLowEParameters, 47 G4EmSaturation - fixed Coverity warnings 48 49 ## 2024-06-19 S.Johnson (emutils-V11-02-10) 50 - G4EmParameters - fix segmentation fault when data is unavailable 51 52 ## 2024-06-06 I.Semeniouk & D.Bernard (emutils-V11-02-09) 53 - G4EmParameters, G4EmParametersMessenger - added orto Positronion fraction flag 54 55 ## 2024-05-27 V.Ivanchenko (emutils-V11-02-08) 56 - G4VEmProcess - extended info printout for e+ annihilation at rest 57 - G4VEmProcess, G4VEnergyLossProcess - improved identification of model ID 58 for atomic de-excitation (fluorescence, Auger e-, PIXE). 59 60 ## 2024-05-22 V.Ivanchenko (emutils-V11-02-07) 61 - G4EmUtility - simplify computation of cross section maximum for discrete 62 processes to fix the problem of FPE if -O3 compiler option is used. 63 64 ## 2024-05-20 H. Tran (emutils-V11-02-06) 65 - G4EmParameters, G4EmLowEParameters, G4EmLowEParametersMessenger - added dna 66 chemistry time step model 67 68 ## 2024-05-14 V.Ivanchenko (emutils-V11-02-05) 69 - G4EmParameters, G4EmParametersMessenger - added enumerator and a new flag 70 G4PositronAtRestModel, which allows selectrion and configuration of 71 the model of positron annihilation at rest. 72 - G4VPositronAtRestModel - new virtual interface 73 - G4EmBiasingManager - cosmetic change 74 75 ## 2024-05-04 V.Ivanchenko (emutils-V11-02-04) 76 - G4EmDataRegistry - new class to keep EM data tables 77 - G4EmDataHandler - extended functionality 78 - G4LossTableManager - identify master thread using std method 79 - G4LossTableBUilder - more accurate use of static members and methods 80 - G4VEmModel, G4VEmProcess, G4VEnergyLossProcess, G4EmTableUtil - update 81 according to change in the data 82 - G4VMscModel - move initialisation of tables for model to G4EmTableUtil 83 84 ## 2024-04-21 Gabriele Cosmo (emutils-V11-02-03) 85 - Fixed compilation error in G4EmConfigurator on Windows VC++ with 86 C++20 Standard enabled. 87 Based on [GitHub PR#69](https://github.com/Geant4/geant4/pull/69). 88 89 ## 2023-04-04 V.Ivanchenko (emutils-V11-02-02) 90 - G4EmParameters - increased low-limit on maxKinEnergy parameter from 91 10 MeV to 600 MeV in order to have standard ionisation and 92 multiple scattering always defined for DNA physics configurations. 93 94 ## 2024-04-03 S.Okada (emutils-V11-02-01) 95 - G4LowEnergyEmProcessSubType 96 - add fLowEnergyTripleIonisation and fLowEnergyQuadrupleIonisation 97 for implementing multiple-ionization processes in Geant4-DNA 98 99 ## 2023-12-15 V.Ivanchenko (emutils-V11-02-00) 100 - G4VEmProcess, G4VEnergyLossProcess - minor CPU optimisation by reduction 101 of number of calls for Log of kinetic energy 102 103 ## 2022-12-01 John Allison (emutils-V11-01-25) 104 - G4EmParametersMessenger: 105 - Fix "/process/eloss/setFluctModel" - change "eloss" to "eLoss". 106 107 ## 2023-11-08 V.Ivanchenko (emutils-V11-01-24) 108 - G4VEmModel - fixed memory leak at exit 109 110 ## 2023-11-07 V.Ivanchenko (emutils-V11-01-23) 111 - G4EmSaturation - fixed problem #2572 (txenglish@lanl.gov) 112 113 ## 2023-11-03 J.Hahnfeld (emutils-V11-01-22) 114 - `G4TransportationWithMsc`: Initialize all members. 115 116 ## 2023-10-27 D.Sawkey (emutils-V11-01-21) 117 - G4OpticalParameters: set default verbosity to 1. 118 119 ## 2023-10-23 J.Hahnfeld (emutils-V11-01-20) 120 - Add SingleScattering option to `G4TransportationWithMsc`. 121 122 ## 2023-10-20 J.Hahnfeld (emutils-V11-01-19) 123 - `G4TransportationWithMsc`: Always update momentum direction. 124 125 ## 2023-10-10 V.Ivanchenko (emutils-V11-01-18) 126 - G4VEmModel - restore SetLPMFlag(..) method to allow build of CMSSW with the 127 Geant4 master and G4HepEm version of CMSSW; no change of any result 128 is expected; added warning about use of obsolete method. 129 130 ## 2023-10-06 V.Ivanchenko (emutils-V11-01-17) 131 - G4VEmModel - use std::size_t in all places 132 - G4EmParameters - added Get/Set method for a new integer number used 133 for logarithmic bin search in free vector 134 - G4EmParametersMessanger - added UI command "/process/em/nForFreeVector" 135 - G4LossTableManager - apply modified interface to G4LossTableBuilder 136 - G4LossTableBuilder - define logarithmic seach method for inverse range table 137 - G4EmCorrection - introduce "const" to all variables if possible, reduce 138 number of "if" statements, substitute "isMaster" flag by the new flag 139 "isInitializer", use CLHEP prefix. 140 EM testing suite show identical results, expected minor speed-up. 141 142 ## 2023-10-04 D.Sawkey (emutils-V11-01-16) 143 - G4OpticalParameters: Removed unused scintillation declarations. Responding 144 to issue #182 145 146 ## 2023-09-19 H.Burkhardt (emutils-V11-01-15) 147 - G4EmProcessSubType - new fGammaReflection = 26 148 149 ## 2023-09-04 V.Ivanchenko (emutils-V11-01-14) 150 - G4VEmModel - do not destruct G4ElementData, do not define LPM flag 151 152 ## 2023-06-16 V.Ivanchenko (emutils-V11-01-13) 153 - G4LossTableManager - fixed trivial Coverity report 154 155 ## 2023-06-04 V.Ivanchenko (emutils-V11-01-12) 156 - G4VEmModel - use LPM flag from G4EmParameters 157 158 ## 2023-06-02 J.Hahnfeld (emutils-V11-01-11) 159 - Fixes to `G4TransportationWithMsc`: 160 * Protect code for MultipleScattering 161 * Fix type of particle change 162 163 ## 2023-06-01 V.Ivanchenko (emutils-V11-01-10) 164 - G4LossTableManager - reserve memory for internal vectors; simplified 165 destructor; move a part of initialisation of class members to header 166 - G4ionEffectiveCharge - minor optimisation 167 168 ## 2023-05-23 V.Ivanchenko (emutils-V11-01-09) 169 - G4VEnergyLossProcess - added extra protection excluding negative range; 170 rename class member; change condition to stop low-energy ion - use kinetic 171 energy and not scaled energy; is proposed to address git issue #168 172 - G4VMscModel - removed empty lines 173 174 ## 2023-05-04 V.Ivanchenko (emutils-V11-01-08) 175 - G4VEnergyLossProcess - added extra protection for the case of negative 176 range of low-energy particle (problem #2542) 177 178 ## 2023-04-20 V.Ivanchenko (emutils-V11-01-07) 179 - G4VEnergyLossProcess - make more straightforward computation of ion 180 effective charge 181 - G4VEmModel - trigger computation of ion effective charge for G4EmCalculator 182 - G4EmCalculator - improved printout 183 184 ## 2023-04-08 V.Ivanchenko (emutils-V11-01-06) 185 - G4LossTableManager - improved debug printout and removed unused lines of code 186 - G4LossTableBuilder, G4VEnergyLossProcess - improved debug printout 187 188 ## 2023-04-03 V.Ivanchenko (emutils-V11-01-05) 189 - G4VEnergyLossProcess, G4VEmProcess, G4VMultipleScattering - use flag of 190 master thread from G4LossTableManager 191 - G4EmCorrections - class format, removed lock of threads instead use 192 flag from G4LossTableManager 193 194 ## 2023-03-20 V.Ivanchenko (emutils-V11-01-04) 195 - G4VEnergyLossProcess - fixed static analyzer warning 196 - G4EmTableUtil - fixed verbose output and class comments 197 198 ## 2023-03-06 J.Allison (emutils-V11-01-03) 199 - Allow /process/em/QuantumEntanglement in G4State_Idle. 200 201 ## 2023-02-21 V.Ivanchenko (emutils-V11-01-02) 202 - G4EmExtraParameters - fixed AddPAIModel(...) method and improved comments 203 - G4EmExtraParametersMessenger - fixed broadcasting 204 205 ## 2023-01-10 V.Ivanchenko (emutils-V11-01-01) 206 - G4EmParameters - added extra member and access method to G4LEDATA path 207 allowing check environment variable for the EM data only once 208 209 ## 2022-12-11 V.Ivanchenko (emutils-V11-01-00) 210 - G4EmParameters, G4EmParametersMessenger, added parameter, UI command, 211 GetSet methods - MscPositronCorrection 212 213 ## 2022-11-23 Gabriele Cosmo (emutils-V11-00-38) 214 - Fixed more compilation warnings for implicit type conversions. 215 216 ## 2022-11-18 Gabriele Cosmo (emutils-V11-00-37) 217 - Fixed compilation warnings for implicit type conversions on macOS/XCode 14.1. 218 219 ## 2022-10-19 V.Ivanchenko (emutils-V11-00-36) 220 - G4EmFluoDirectory - added new enumerator 221 - G4EmParameters, G4EmLowEParameters, G4EmLowEParametersMessenger 222 introduced directory for the fluorescence data as a parameter, 223 added new UI command, improved information printout 224 225 ## 2022-10-07 V.Ivanchenko (emutils-V11-00-35) 226 - G4VEnergyLossProcess - for ions compute effective charge 227 prestep and set this value to the model of energy loss 228 fluctuations 229 - G4EmCalculator - update computation of ion dEdx (problem #2495); 230 added extra flag applySmoothing to enable/disable smoothing 231 algorithms to connect low-energy and high energy models; 232 code clean-up 233 - G4LossTableManager - fix selection of energy loss process used 234 by G4EmCalculator 235 236 ## 2022-09-02 V.Ivanchenko (emutils-V11-00-34) 237 - G4VMultipleScattering - removed two virtual calls 238 - G4VMscModel - added Boolean flag "useSpline" and Set method 239 allowing to choose spline for transport x-section 240 - G4EmParameterMessenger - restore forgotten UI command to set 241 number of bins per decade 242 243 ## 2022-08-25 V.Ivanchenko (emutils-V11-00-33) 244 - G4EmExtraParameters - safe definition of StepFuction for the 245 G4GenericIon, related to problem #2495 246 247 ## 2022-07-08 J.Apostolakis (emutils-V11-00-32) 248 - Fix in `G4TransportationWithMsc`: StartTracking now calls 249 corresponding method of G4Transportation (to initialise values 250 used for propagation in field.) 251 252 ## 2022-07-08 V.Ivanchenko (emutils-V11-00-31) 253 - G4EmParameters, G4EmParametersMessenger - added extra boolean flag 254 for sampling of photoeffect below K-shell, which was introduced 255 in ATLAS 256 - G4EmProcessSubType - added extra types for muon pair production 257 by muons and dark particles bremsstrahlung 258 259 ## 2022-06-19 V.Ivanchenko (emutils-V11-00-30) 260 - G4EmExtraParametersMessenger - fixed typo (problem #2492) 261 262 ## 2022-06-17 V.Ivanchenko (emutils-V11-00-29) 263 - G4VEnergyLossProcess - fixed trivial Coverity warnings 264 265 ## 2022-06-07 V.Ivanchenko (emutils-V11-00-28) 266 - G4VEnergyLossProcess, G4EmDataHandler - improve StorePhysicsTable(..) 267 method and debug pritouts 268 269 ## 2022-06-07 V.Ivanchenko (emutils-V11-00-27) 270 - G4VEnergyLossProcess - moved out common computations to G4EmTableUtil, 271 use G4EmDataHandler, removed unused headers and methods 272 273 ## 2022-05-31 V.Ivanchenko (emutils-V11-00-26) 274 - G4VEmModel - fixed Coverity warning 275 276 ## 2022-05-28 V.Ivanchenko (emutils-V11-00-25) 277 - G4EmParametersMessenger - added extra UI command to define model of 278 fluctuations 279 280 ## 2022-05-23 V.Ivanchenko (emutils-V11-00-24) 281 - G4EmTableUtil - added extra methods 282 - G4VEmModel, G4VEmProcess, G4VEnergyLossProcess, 283 G4VMultipleScattering, G4LossTableManager - use new utiity methods, 284 updated sampling of random element in compounds and random 285 isotopes, code cleanup 286 - G4EmParameters - added extra parameter: type for of fluctuation model 287 288 ## 2022-05-20 Z.Li (emutils-V11-00-23) 289 - G4EmLowEParameters, change default photon database to EPICS2017 290 291 ## 2022-05-13 V.Ivanchenko (emutils-V11-00-22) 292 - G4EmUtility - added methods to sample isotopes or element 293 - G4VEmModel, G4EmCalculator, G4EmConfigurator - use G4EmUtility 294 295 ## 2022-05-12 V.Ivanchenko (emutils-V11-00-21) 296 - G4EmUtility - removed precision lost in energy value at 297 initialisation of integral method 298 - G4VEmProcess, G4VEnergyLossProcess - for integral method 299 use master thread cross section type and pointers directly 300 simplifing initialisation 301 302 ## 2022-05-11 J.Hahnfeld (emutils-V11-00-20) 303 - Remove dependency on `G4magneticfield` 304 305 ## 2022-05-02 J.Hahnfeld (emutils-V11-00-19) 306 - `G4TransportationWithMsc`: Add possibility of internal stepping 307 - `G4EmParameters`: Update flag to tristate for enabling it 308 309 ## 2022-04-29 V.Ivanchenko (emutils-V11-00-18) 310 - G4EmTableUtil - new utility to perform common computations at 311 initialisation 312 - G4VMultipleScattering - use G4EmTableUtil and fix Coverity warnings 313 - G4EmConfigurator, G4VEnergyLossProcess - fixed Coverity warnings 314 315 ## 2022-04-27 D.Sawkey (emutils-V11-00-17) 316 - many files: run clang-tidy. Use default ctors; keywords nullptr, auto, using 317 318 ## 2022-04-23 V.Ivanchenko (emutils-V11-00-16) 319 - G4EmConfigurator - implement model per region for G4TransportationWithMsc 320 - GNUmakefile, source.cmake - updated accordingly 321 322 ## 2022-04-19 J.Hahnfeld (emutil-V11-00-15) 323 - Create `G4TransportationWithMsc` process, add flag to `G4EmParameters` 324 325 ## 2022-04-13 V.Ivanchenko (emutils-V11-00-14) 326 - G4VEnergyLossProcess, G4VEmProcess - use G4EmUtility to compute cross 327 section shape parameters 328 - G4VMultipleScattering - updated arguments for AddEmModel, SetEmModel, 329 and EmModel methods from G4VEmModel* to G4VMscModel* 330 - G4EmConfigurator - updated interfaces 331 332 ## 2022-04-10 V.Ivanchenko (emutils-V11-00-13) 333 - G4EmUtility - added new static methods to prepare data structures for 334 integral method using EM tables or using GetCrossSection(..) method 335 from G4VDiscreteProcess based class, this will allow using it for hadronics 336 - G4VEnergyLossProcess, G4VEmProcess, G4VMultipleScattering - minor clean-up 337 338 ## 2022-04-07 V.Ivanchenko (emutils-V11-00-12) 339 - G4VMultipleScattering - fix #2480 responsible for energy deposition shift of 340 custom CMS Physics List FTFP_BERT_EMM 341 342 ## 2022-04-01 J.Hahnfeld (emutils-V11-00-11) 343 - Fix typo in Bremsstrahlung. 344 345 ## 2022-03-29 H.Tran (emutils-V11-00-10) 346 - G4LowEnergyEmProcessSubType - add fLowEnergyScavenger (66) for DNAScavenger process 347 348 ## 2022-03-24 V.Ivanchenko (emutils-V11-00-09) 349 - G4VEnergyLossProcess - fix fluctuation model pointer if an extra 350 model is added on top of the default list of models 351 352 ## 2022-03-17 V.Ivanchenko (emutils-V11-00-08) 353 - G4EmParametersMessenger - restored UI command "/process/em/integral" 354 - G4VEmProcess - updated methods to access cross section in run time, 355 implement new virtual method GetCrossSection, removed unused 356 methods 357 - G4EmCalculator - use updated method from G4VEmProcess 358 - G4EmUtility - a new utility class 359 360 ## 2022-03-09 V.Ivanchenko (emutils-V11-00-07) 361 - G4EmCalculator - fixed variable shadowing 362 363 ## 2022-03-07 V.Ivanchenko (emutils-V11-00-06) 364 - G4EmModelManager - updated interface to Initialise(.. ) method, 365 removed obsolete method Update(..) 366 - G4VEmProcess, G4VEnergyLossProcess, G4VMultipleScattering - use updated 367 method of G4EmModelManager 368 369 ## 2022-02-17 V.Ivanchenko (emutils-V11-00-05) 370 - G4EmParametersMessenger - instantion order of UI directories improved, 371 directories are created only in the master thread 372 373 ## 2022-01-22 V.Ivanchenko (emutils-V11-00-04) 374 - G4EmParametersMessenger - added forgotten UI command to enable polarisation 375 376 ## 2022-01-08 V.Ivanchenko (emutils-V11-00-03) 377 - G4VEmProcess - fixed methods, which implementation based on assumption that 378 the lambda table defined for full energy range: LambdaPhysicsVector(..), 379 CrossSEctionPerVolume(...), FindLambdaMax(...). No change is expected for 380 the default physics configuration, fix mainly affect positron annihilation 381 processes at high energies. 382 383 ## 2022-01-05 V.Ivanchenko (emutils-V11-00-02) 384 - Complete internal redesign started in 2021, results are identical 385 - G4EmTableType - added 3d peak energy in the data structure needed for bremsstrahlung 386 - G4VEnergyLossProcess - fill data structure for bremsstrahlung type of x-section 387 only in the master thread - do not repeat in each thread; removed ineffective 388 cache from run time computation of cross section. 389 - G4VMscModel, G4VEmProcess - move few methods and header files from header to 390 source in order to reduce dependencies between packages. 391 392 ## 2021-12-17 Ivana Hrivnacova (emutils-V11-00-01) 393 - Added info in setMaxBetaChange command description. 394 395 ## 2021-12-10 Ben Morgan (emutils-V11-00-00) 396 - Change to new Markdown History format 397 398 --- 399 400 # History entries prior to 11.0 401 402 19 November 21: V.Ivanchenko (emutils-V10-07-38) 403 - G4EmCalculator - fixed computation of dedx for He3 and alpha 404 (complete fix of #2440) 405 406 10 November 21: S. Guatelli (emutils-V10-07-37) 407 - changed ANSTO parameters in UI interface commands 408 409 30 October 21: V.Ivanchenko (emutils-V10-07-36) 410 - G4VEnergyLossProcess - exclude ion corrections only from d, t, alpha 411 in order to fix #2440 412 - G4ionEffectiveCharge - return back limit on effective charge 413 from 0.5 to 1 (used in previous releases) 414 415 25 October 21: V.Ivanchenko (emutils-V10-07-35) 416 - G4EmParameters - add ANSTO options for the atomic de-excitation; 417 removed obsolete AugerCascade() method 418 - G4EmLowEParameters, G4EmLowEParametersMessenger - added ANSTO 419 flag and UI commands 420 421 20 October 21: V.Ivanchenko (emutils-V10-07-34) 422 - G4EmProcessSubType : added new type for annihilation to the tau pair 423 424 12 October 21: V.Ivanchenko (emutils-V10-07-33) 425 - G4ionEffectiveCharge - code clean-up 426 - G4EmCorrections - do not use spline in various internal vectors, 427 because correction values are small and smooth, clean-up ion 428 correction computations 429 - G4VEnergyLossProcess - code clean-up for ions 430 431 06 October 21: A.Ribon (emutils-V10-07-32) 432 - G4LowEnergyEmProcessSubType : added new enum values, corresponding 433 to numerical values used in G4PhysicsListHelper 434 435 03 October 21: V.Ivanchenko (emutils-V10-07-31) 436 - G4VEmProcess, G4VEnergyLossProcess, G4VAtomDeexcitation, 437 G4LossTableBuilder - implemented updated numbering scheme for 438 secondary particle production, deprecate duplicate printout 439 of processes and models, move list of EM parameters printout 440 before printout on processes, code format improved 441 G4EmParameters, G4EmParametersMessenger - removed obsolete 442 methods, added protection agains duplicate printout 443 444 23 September 21: A.Ribon (emutils-V10-07-30) 445 - G4LowEnergyEmProcessSubType : created new enum for low-energy 446 electromagnetic process sub-types 447 448 16 September 21: V.Ivanchenko (emutils-V10-07-29) 449 - G4EmElementSelector - change computation for upper energy limit 450 fixing crashes in some applications 451 452 30 August 21: D.Sawkey (emutils-V10-07-28) 453 - G4OpticalParameters - removed deprecated function declarations 454 - G4OpticalParameters, G4OpticalParametersMessenger - apply 455 clang-format style guidelines 456 457 27 August 21: V.Ivanchenko (emutils-V10-07-27) 458 - G4LossTableBuilder - use updated interface to G4PhysicsVector 459 - G4EmElementSelector - change computation for corner cases 460 - G4VEnergyLossProcess - minor clean-up 461 462 25 August 21: J.Hahnfeld (emutils-V10-07-26) 463 - G4EmParametersMessenger - correct default value for GeomFactor 464 465 04 August 21: A.Ribon (emutils-V10-07-25) 466 - G4VEmProcess, G4VEnergyLossProcess, G4VAtomDeexcitation : migrated 467 to the new version of G4PhysicsModelCatalog 468 469 18 July 21: V.Ivanchenko (emutils-V10-07-24) 470 - G4VEmFluctuationModel - changed interface - both cut value and 471 max energy transfer are parameters of main methods; this 472 is needed in order to fix problem #2390 473 - G4VEnergyLossProcess, G4EmModelManager - adopted above interface 474 change 475 476 11 July 21: V.Ivanchenko (emutils-V10-07-23) 477 - G4VEmProcess, G4VEnergyLossProcess, G4VMultipleScattering, 478 G4LossTableBuilder, G4VEmModel, G4VMscModel, G4LossTableManager 479 implement and use base material approach only if base materials 480 are defined, this should bring a minor speed-up of the code and little 481 reduction of memory; fixed problems for the case, when materials 482 are changed between runs 483 - G4LossTableBuilder - base material flag may be disabled 484 485 08 June 21: V.Ivanchenko (emutils-V10-07-22) 486 - G4VEmProcess, G4VEnergyLossProcess - fixed computation of cross 487 section and rangle if base material approach is used; recover 488 Fano cavity test results; improved initialisation 489 - G4LossTableBuilder - fixed debug printout 490 491 01 June 21: V.Ivanchenko (emutils-V10-07-21) 492 - G4VEmProcess, G4VEnergyLossProcess - an attempt to improve 493 integral option 494 495 26 May 21: V.Ivanchenko (emutils-V10-07-20) 496 - G4VEmProcess, G4VEnergyLossProcess, G4EmDataHandler - updated 497 method RetrievePhysicsTable(...) 498 499 15 May 21: V.Ivanchenko (emutils-V10-07-19) 500 - G4VEmProcess, G4VEnergyLossProcess, G4EmTableType, G4EmBiasingManager, 501 G4LossTableManager - updated integral approach by introduction of a 502 cross section shape type and different actions depending on the type; 503 addition of cache for cross section and range; removed unused methods; 504 attempt to reduce number of "if" operators in the run time; integral 505 and spline flags are set to each process individually 506 - G4VMultipleScattering - fixed problem observed by CMS for specific 507 Physics List 508 509 10 May 21: V.Ivanchenko (emutils-V10-07-18) 510 - G4EmCorrections, G4VEmProcess - updated use of the spline flag 511 - G4ionEffectiveCharge - fixed bug in computation of effective 512 charge square 513 514 16 May 21: B.Morgan (emutils-V10-07-17) 515 - Migrate build to modular CMake API 516 517 06 May 21: G.Cosmo (emutils-V10-07-16) 518 - Fixed shadowing compilation warning in G4EmCorrections reported with gcc-11. 519 520 03 May 21: V.Ivanchenko (emutils-V10-07-15) 521 - G4EmCorrections, G4LossTableBuilder - substitute G4LPhysicsFreeVector 522 by G4PhysicsFreeVector 523 - G4TableType - added extra enumerator 524 525 28 April 21: V.Ivanchenko (emutils-V10-07-14) 526 - G4VEmModel, G4VEnergyLossProcess, G4EmCalculator - optimized signature 527 of the CorrectionsAlongStep method; use more const variables; 528 minor code optimisation 529 - G4VMscModel - improve printout 530 531 24 April 21: V.Ivanchenko (emutils-V10-07-13) 532 - G4VEmAngularDistribution - added virtual method 533 PrintGeneratorInformation() 534 535 14 April 21: V.Ivanchenko (emutils-V10-07-12) 536 - G4EmParameters - fix problem #2350 (correct line break) 537 538 10 April 21: V.Ivanchenko (emutils-V10-07-11) 539 - clean-up EM libraries for 11.0 including G4VEnergyLossProcess 540 and messengers for EM parameters 541 542 06 April 21: V.Ivanchenko (emutils-V10-07-10) 543 - clean-up EM libraries for 11.0 including G4LossTableManager 544 545 30 March 21: V.Ivanchenko (emutils-V10-07-09) 546 - clean-up EM libraries for 11.0: fixed model per region definition 547 for all base processes G4VEmProcess, G4VMultipleScattering, 548 G4VEnergyLossProcess; removed subcut facility for energy loss 549 processes; clean-up parameters classes 550 551 25 March 21: V.Ivanchenko (emutils-V10-07-08) 552 - clean-up EM libraries for 11.0 553 554 23 March 21: V.Ivanchenko (emutils-V10-07-07) 555 - clean-up EM libraries for 11.0 556 557 22 March 21: V.Ivanchenko (emutils-V10-07-06) 558 - G4VEmModel, G4EmElementSelectors, G4VAtomDeexcitation - general 559 clean-up, removed obsolete methods and members 560 561 18 March 21: V.Ivanchenko (emutils-V10-07-05) 562 - G4VEmProcess - general clean-up; reorganized class members; 563 removed obsolete methods 564 565 04 March 21: V.Ivanchenko (emutils-V10-07-04) 566 - G4VEmModel removed "virtual" keyward from ComputeDEDX method 567 - G4EmProcessOptions - removed obsolete 568 569 28 Febuary 21: V.Ivanchenko (emutils-V10-07-03) 570 - G4ionEffectiveCharge - code clean-up 571 - G4VMultipleScattering - removed obsolete unused methods, 572 reduced number of operations run time, use isIon flag 573 for scaling of energy limits for all particles with mass >1 GeV 574 - G4VMscModel - minor code clean-up 575 576 24 February 21: D.Sawkey (emutils-V10-07-02) 577 - G4OpticalParameters, G4OpticalParametersMessenger 578 - Remove deprecated optical commands and parameters. 579 - Replace CreateDir with new G4UIdirectory() 580 581 30 January 21: V.Ivanchenko (emutils-V10-07-01) 582 - G4VEnergyLossProcess, G4VEmProcess, - improved printout 583 G4EmExtraParameters, G4EmExtraParametersMessenger - fixed #2292 584 585 11 January 21: V.Ivanchenko (emutils-V10-07-00) 586 - G4EmCorrections - fix 2-D interpolation of shell corrections 587 (problem #2308), which provides minor change of ranges of 588 charge particles (< 0.1 mm) 589 590 12 November 20: B. Morgan (emutils-V10-06-15) 591 - Apply typo fixes from Gurkan Myczko (https://github.com/Geant4/geant4/pull/15) 592 593 10 November 20: V.Ivanchenko (emutils-V10-06-14) 594 - G4VEmAngularDistribution - changed order of initialisation 595 in order to fix valgrind warning 596 - G4VEmModel - do not set polarisation flag 597 598 04 November 20: V.Ivanchenko (emutils-V10-06-13) 599 - G4LossTableManager - make clean interface for electron and 600 positron general process 601 602 28 October 20: V.Ivanchenko (emutils-V10-06-12) 603 - G4VEmAngularDistribution - added flag of polarisation, the flag 604 is set at initialisation of a model 605 - G4VEmModel - define flag of polarisation for an angular generator; 606 compare with nullptr class pointers 607 - G4EmProcessSubType - added fSurfaceReflection 608 609 30 September 20: V.Ivanchenko (emutils-V10-06-11) 610 - G4VEmProcess - fixed problem #2277 for ion DNA physics 611 612 30 August 20: V.Ivanchenko (emutils-V10-06-10) 613 - G4EmParameters, G4EmParametersMessenger - added new flag threshold 614 for muon/hadron bremsstrahlung allowing stop track when high 615 energy bremsstrahlung is emitted (CMS request) 616 617 20 July 20: D.Sawkey (emutils-V10-06-09) 618 - G4OpticalParameters, G4OpticalParametersMessenger: add new files to 619 control optical parameters, following G4EmParameters. 620 621 11 July 20: V.Ivanchenko (emutils-V10-06-08) 622 - G4EmParameters, G4EmExtraParameters - added new flag defining type 623 of single scattering model 624 - G4EmModelManager, G4VMscModel, G4VEmModel, G4VMultipleScattering - 625 at initialisation call print extra line for all msc models instead 626 of the common printout for the msc process, which is needed when 627 different models are applied for regions in order to address 628 problem report #2106; minor code clean-up 629 630 11 June 20: V.Ivanchenko (emutils-V10-06-07) 631 - G4EmParameters, G4EmExtraParameters - FillStepFunction method is 632 applied in each thread - critical fix may affect Shielding CPU 633 - G4VEnergyLossProcess - better printout in a warning 634 635 30 May 20: V.Ivanchenko (emutils-V10-06-06) 636 - G4LossTableManager - make ResetParameters() method public 637 - G4VAtomicDeexcitation - optimized arrays initialisation 638 639 03 May 20: V.Ivanchenko (emutils-V10-06-05) 640 - G4EmParameters, G4EmParametersMessenger, G4EmExtraParametersMessenger, 641 G4VEnergyLossProcess - added two extra set of StepFunction parameters 642 for light ions and generic ions; added extra UI commands; modified 643 interfaces accordingly; removed old comments 644 645 28 April 20: V.Ivanchenko (emutils-V10-06-04) 646 - G4LossTableBuilder - fixed #2230 (typo in the code) 647 648 26 April 20: V.Ivanchenko (emutils-V10-06-03) 649 - G4EmParameters, G4EmParametersMessenger, G4VMultipleScattering 650 removed displacement beyond safety option - L.Urban studied 651 in details and we come to conclusion, that it does not bring 652 an advantages but may provoke crashes in some circomstances 653 - G4EmLowEParametersMessenger - extend number of DNA PhysicsList options 654 - G4EmCalculator - fixed printout 655 656 09 March 20: V.Ivanchenko (emutils-V10-06-02) 657 - G4VEmProcess - removed old not used methods; DefinedMaterial(..) 658 method is now protected (needed for AtRest processes) 659 660 06 March 20: V.Ivanchenko (emutils-V10-06-01) 661 - G4EmParameters, G4EmLowEParameters, G4EmLowEParametersMessenger 662 added a new parameter - name of the sub-directory with data for 663 Livermore models with variants: "livermore" (default), "epics_2017" 664 665 13 January 20: V.Ivanchenko (emutils-V10-06-00) 666 - G4EmParameters, G4EmParametersMessenger - added new parameter 667 to enable read of e+e- production table from file (CMS request) 668 669 16 October 19: D.Sawkey (emutils-V10-05-22) 670 - G4EmBiasingManager - delete non-tracked particles 671 672 11 October 19: W.G.Shin, S.Incerti (emutils-V10-05-21) 673 - G4DNAModelSubType.hh : added Kreipl and Meesungnoen amorphous 674 ice models 675 - G4EmLowEParametersMessenger.* : added corresponding commands 676 677 10 October 19: V.Ivanchenko (emutils-V10-05-20) 678 - G4EmSaturation - do not apply saturation for zero step length, 679 because this is possible only if a tracking cut is applied 680 681 08 October 19: V.Ivanchenko (emutils-V10-05-19) 682 - G4EmParameters, G4EmParametersMessenger - added new parameter 683 - G4LossTableManager - use std::getenv 684 685 01 October 19: V.Ivanchenko (emutils-V10-05-18) 686 - G4EmParameters, G4EmParametersMessenger - added new parameters 687 for msc FactorSafety and LambdaLimit, until now these parameters 688 were msc model internals, now a user can can customize these 689 values, default values are used the same as in 10.5 690 - G4VMscModel, G4VMultipleScattering - added new method 691 InitialiseParameters(..), make msc specific methods pure virtual 692 - DummyModel - added methods to be consistent with above modifications 693 694 11 September 19: V.Ivanchenko (emutils-V10-05-17) 695 - G4EmParameters - disable "General Process" for gamma by default 696 697 14 August 19: V.Ivanchenko (emutils-V10-05-16) 698 - G4LossTableBuilder, G4LossTableManager, G4VEmModel, G4VMscModel, 699 G4VEmProcess, G4VEnergyLossProcess, G4EmCalculator - allow both 700 approaches "General Process" and "Base Materials" work together 701 G4EmParameters - enable "General Process" for gamma by default 702 703 21 July 19: M.Novak (emutils-V10-05-15) 704 - G4EmElementSelector, G4VEmModel - clean away members not used anymore 705 706 18 July 19: M.Novak (emutils-V10-05-14) 707 - G4EmElementSelector - optimised version of element selector (in place linear 708 interpolation to avoid redundant energy grid related computations; branches, 709 used to handle rare corener cases are eliminated by increased robustness of 710 the algorithm) 711 712 17 July 19: M.Novak (emutils-V10-05-13) 713 - G4VEmProcess, G4VEnergyLossProcess, G4VMscModel, G4EmElementSelector 714 utilise the new, optimised LogVectorValue special (for log-vector) 715 G4PhysicsVector method in case of EM 716 717 31 May 19: V.Ivanchenko (emutils-V10-05-12) 718 - G4NIELCalculator - new helper class 719 - G4LossTableManager - added access and initialisation of 720 G4NIELCalculator 721 722 17 May 19: V.Ivanchenko (emutils-V10-05-11) 723 - G4EmParameters, G4EmParametersMessenger, G4EmExtraParameters, 724 G4EmExtraParametersMessenger - added extra parameters; 725 726 07 May 19: V.Ivanchenko (emutils-V10-05-10) 727 - G4EmParameters, G4EmParametersMessenger - split clases keeping the 728 user interface unchanged; 729 G4EmExtraParameters, G4EmExtraParametersMessenger - new classes for 730 complex EM parameters; 731 G4EmLowEParameters, G4EmLowEParametersMessenger - new classes for 732 low-energy and DNA parameters 733 734 19 April 19: V.Ivanchenko (emutils-V10-05-09) 735 - G4EmParameters - added polarisation flag, move implementation of splitting 736 parameters to source and added check on lock; added 9.99 MeV low limit 737 in the SetMaxEnergy() method, added thread lock to Dump method 738 739 01 April 19: V.Ivanchenko (emutils-V10-05-08) 740 - G4LossTableManager - added Register/DeRegister methods and vector 741 of pointers for G4VProcess classes for X-ray and optical processes 742 743 17 March 19: M.Novak (emutils-V10-05-07) 744 - G4EmElementSelector, G4VEmModel - added extra method to select the target atom 745 by making use of the already known log-energy value in the log-vector access 746 747 17 March 19: M.Novak (emutils-V10-05-06) 748 - G4VEmProcess, G4VEnergyLossProcess and G4VMscModel - added extra methods to 749 access log-vector tables by propagating the already known log-energy value 750 751 13 March 19: M.Asai (emutils-V10-05-05) 752 - G4EmParametersMessenger: Defining unit categories for UI commands 753 that take units. Co-working with intercoms-V10-05-02. 754 755 11 March 19: G.Cosmo (emutils-V10-05-04) 756 - Fixed typos in printouts in G4EmParametersMessenger. 757 758 04 March 19: D.Sawkey (emutils-V10-05-03) 759 - G4EmBiasingManager, G4VEmProcess, G4VEnergyLossProcess - fix 760 weights for biasing. Should be like version 10.4 now for range cut, 761 splitting, roulette 762 763 18 February 19: D.Sawkey (emutils-V10-05-02) 764 - G4VEmProcess, G4VEnergyLossProcess - make printout information 765 more compact 766 767 13 February 19: D.Sawkey (emutils-V10-05-01) 768 - G4EmBiasingManager: fix incorrect weights with brem splitting 769 introduced in 10.5 (problem #2125) 770 771 31 January 19: V.Ivant (emutils-V10-05-00) 772 - G4VEnergyLossProcess, G4VEmProcess, G4VMultipleScattering, 773 G4EmModelManager - make info printout at initialisation more 774 compact (fix problem #2105) 775 776 29 October 18: D.Sawkey (emutils-V10-04-25) 777 - G4EmBiasingManager - fix Valgrind warning 778 779 26 October 18: V.Ivant (emutils-V10-04-24) 780 - G4EmParameters - fixed typo in printout 781 782 16 October 18: D.Sawkey (emutils-V10-04-23) 783 - G4EmBiasingManager, G4VEmProcess, G4VEnergyLossProcess - move logic 784 for directional splitting to G4EmBiasingManager 785 786 03 October 18: D.Sawkey (emutils-V10-04-22) 787 - G4EmBiasingManager, G4EmParameters, G4EmParametersMessenger, 788 G4VEnergyLossProcess, G4VEmProcess - enable directional splitting 789 790 26 September 18: V.Ivant (emutils-V10-04-21) 791 - G4EmParameters, G4EmProcessSubType, G4LossTableManager - renamed 792 general process classes 793 - G4EmParametersMessenger - fixed UI command name, which enables 794 usage of the ICRU90 data (Lucas Norberto Burigo) 795 796 17 September 18: D.Sawkey (emutils-V10-04-20) 797 - G4EmModelManager, G4VEmModel, G4VEmProcess, G4VEnergyLossProcess, 798 G4VMultipleScattering: Auto-generated documentation no in rST format 799 800 31 August 18: V.Ivant (emutils-V10-04-19) 801 - G4EmCalculator - fixed computation dEdx for ions 802 803 14 August 18: V.Ivant (emutils-V10-04-18) 804 14 August 18: V.Ivant (emutils-V10-04-16) 805 - G4EmParameters, G4EmParametersMessenger - added extra parameter 806 to enable usage of ICRU90 data; fixed DNA parameters; 807 added checks of EM physics type 808 - G4VEmProcess, G4VEnergyLossProcess - take out attempt of 809 optimisation introduced previously, return back to 10.4 logic 810 811 27 July 18: V.Ivant (emutils-V10-04-15) 812 - G4EmParameters - added extra protection to avoid simulteneous 813 definition of options, which should not be enabled together 814 - G4VEmProcess - clean-up StorePhysicsTable(..) methods; introduce 815 isTheMaster flag 816 - G4EmDataHandler - added public interfaces 817 818 25 July 18: V.Ivant (emutils-V10-04-14) 819 - G4VEmProcess, G4VEnergyLossProcess - attempt optimise number of 820 calls to cross sections 821 - G4EmParameters, G4EmParametersMessenger - added extra parameters 822 - G4EmElementSelector - optimisation 823 824 13 July 18: V.Ivant (emutils-V10-04-13) 825 - G4VEmProcess, G4VEnergyLossProcess - move few class members from 826 private to protected, introduced check on energy change between 827 steps with factorDeltaE, allowing skip recomputation of cross 828 section at a step 829 - G4EmDataHandler - added methods 830 831 12 July 18: V.Ivant (emutils-V10-04-12) 832 - G4EmParameters, G4EmParameterMessenger, G4LossTableManager - minor 833 update of interfaces 834 835 30 May 18: V.Ivant (emutils-V10-04-11) 836 30 May 18: V.Ivant (emutils-V10-04-10) 837 - G4LossTableManager - moved inline run time method to source 838 - G4VMscModel, G4VEmModel, G4EmCorrections - minor cleanup 839 840 22 May 18: V.Ivant (emutils-V10-04-09) 841 - G4VEmAngularDistribution - added SamplePairDirections method 842 for sampling of e+e- pair production 843 844 18 May 18: V.Ivant (emutils-V10-04-08) 845 - G4EmParameters, G4EmParametersMessenger - added extra DNA UI directory 846 and DNA comand, improve dump of EM parameters 847 - G4DNAModelSubType - new enumerator 848 - G4EmCorrections - minor optimisation 849 850 01 April 18: V.Ivant (emutils-V10-04-07) 851 - G4VEmProcess - moved few private members to protected 852 853 28 March 18: V.Ivant (emutils-V10-04-06) 854 - G4EmParameters, G4EmParametersMessenger - added MscEnergyLimit() 855 and corresponding UI command (needed for bug fix 2045) 856 857 21 March 18: V.Ivant (emutils-V10-04-05) 858 - G4EmParameters, G4EmParametersMessenger - (I.Semeniouk) added 5D 859 gamma conversion model parameters 860 861 09 February 18: V.Ivant (emutils-V10-04-04) 862 09 February 18: V.Ivant (emutils-V10-04-03) 863 - G4EmCorrections, G4VEmModel, G4ionEffectiveCharge, G4VAtomDeexcitation 864 do not use static class members in inline methods, long methods are moved 865 to the source, add thread safe definition of model index for de-excitation 866 867 02 February 18: M.Novak (emutils-V10-04-02) 868 - G4EmCalculator - fixed GetCrossSectionPerVolume method in case of multiple 869 scattering process: the proper value of the 1st transport cross section is 870 retrived now 871 872 14 December 17: V.Ivant (emutils-V10-04-01) 873 - G4EmParametersMessenger - use G4Exception for warnings instead 874 of G4cout, review G4State for UI commands and make a signal to 875 the RunManager about modification of physics if a command 876 is issued in Idle state 877 - G4EmParameters, G4VEmProcess, G4VEnergyLossProcess - define the 878 same default values for few internal members (this is a 879 cleanup, which does not affect results) 880 881 13 December 17: V.Ivant (emutils-V10-04-00) 882 - G4EmParameters, G4EmParametersMessenger - fixed printout format 883 and add lock and protection in commands defining physics 884 pre region 885 886 08 November 17: D.Sawkey (emutils-V10-03-31) 887 - G4LossTableManager, G4VEmProcess, G4VEnergyLossProcess, 888 G4VMultipleScattering - fix html documentation 889 890 07 November 17: V.Ivant (emutils-V10-03-30) 891 - G4EmParameters - fixed SetDeexcitationIgnoreCut() method 892 893 03 November 17: V.Ivant (emutils-V10-03-28) 894 - G4EmParameters - set lateralDisplacementAlg96 true by default, 895 fixed typo in dump of parameters 896 897 03 November 17: V.Ivant (emutils-V10-03-27) 898 - G4EmParametersMessenger - atomic de-excitation commands 899 allowed in G4State_Init 900 901 31 October 17: D.Sawkey (emutils-V10-03-26) 902 - G4LossTableManager: formatting html documentation 903 904 25 October 17: V.Ivant (emutils-V10-03-25) 905 - G4VEmProcess - select models for ions by using energy per nucleon 906 907 19 October 17: D.Sawkey (emutils-V10-03-24) 908 - retry of previous; change PrintHtml to DumpHtml 909 910 18 October 17: D.Sawkey (emutils-V10-03-23) 911 - G4LossTableManager: add new method PrintHtml to generate html doc. 912 - G4VEmProcess, G4VEnergyLossPRocess, G4VMultipleScattering, 913 G4ModelManager, G4VEmModel: modify doc outputs incl. StreamInfo, 914 StreamProcessInfo, DumpModelList, to set end-of-line string. 915 916 12 October 17: V.Ivant (emutils-V10-03-22) 917 - G4VEnergyLossProcess, G4VEmProcess, G4VMultipleScattering - added 918 new protected method StreamProcessInfo(..) to be used by derived 919 processes 920 - G4EmModelManager - use general stream instead of G4cout in the 921 method DumpModelList(..) 922 - G4EmModelManager - use optimal header 923 924 11 October 17: V.Ivant (emutils-V10-03-21) 925 - G4VEmProcess - added method StreamInfo(..) allowing to print in 926 any stream, initialisation printout does not changed 927 - G4EmConfigurator - minor cleanup 928 929 10 October 17: V.Ivant (emutils-V10-03-20) 930 - G4VEnergyLossProcess, G4VEmProcess, G4VMultipleScattering - added 931 initialisation printout for DNA particles 932 933 09 October 17: V.Ivant (emutils-V10-03-19) 934 - G4EmParameters, G4EmParametersMessenger - added extra parameters 935 936 19 September 17: V.Ivant (emutils-V10-03-18) 937 - G4VEnergyLossProcess, G4VEmFluctuationModel - return back to tag 16 938 939 31 August 17: V.Ivant (emutils-V10-03-17) 940 - G4VMultipleScattering - improved initialisation printout 941 - G4VEnergyLossProcess, G4VEmFluctuationModel - added possibility 942 of smearing of the last step length of low-energy charged particle 943 944 21 August 17: V.Ivant (emutils-V10-03-16) 945 - G4EmParameters - fully thread safe singleton 946 947 18 August 17: V.Ivant (emutils-V10-03-15) 948 - G4EmDataHandler - class to keep G4PhysicsTables in easy way 949 - G4VMultipleScattering, G4VEmProcess, G4VEnergyLossProcess - code 950 cleanup/simplification 951 952 16 August 17: V.Ivant (emutils-V10-03-14) 953 - G4EmParametersMessenger, G4EmParameters - added parameters 954 "DNAFast", "DNAStationary", "DNAMsc" Get/Set methods and UI command 955 956 04 August 17: V.Ivant (emutils-V10-03-13) 957 - G4VMultipleScattering, G4VMscModel, G4VEnergyLossProcess - improved 958 comments to model interface 959 - G4VMultipleScattering - more safe access to models in run time 960 961 03 August 17: V.Ivant (emutils-V10-03-12) 962 - G4VMultipleScattering, G4VMscModel, G4VEnergyLossProcess, 963 G4VEmProcess, G4EmConfigurator, G4EmConfigurator - make 964 a new scheme of model initialisation in order do not create 965 extra fake model objects and reduce number of calls in run time 966 967 18 July 17: G.Cosmo (emutils-V10-03-11) 968 - Mark as 'override' ProcessDescription() method in G4VEmProcess, 969 G4VEnergyLossProcess and G4VMultipleScattering. 970 971 31 May 17: V.Ivant (emutils-V10-03-10) 972 - G4VEmModel - added triplet model pointer and Get/Set methods 973 974 26 May 17: V.Ivant (emutils-V10-03-09) 975 - G4EmSaturation - fixed typo in printout 976 977 25 May 17: V.Ivant (emutils-V10-03-08) 978 - G4VEmProcess - added DNA ionisation process for hydrogen and helium 979 to the list of processes, which have auger and fluo flags 980 981 24 May 17: V.Ivant (emutils-V10-03-07) 982 - G4VEnergyLossProcess, G4LossTableManager - minor cleanup of inline 983 methods 984 985 03 May 17: V.Ivant (emutils-V10-03-06) 986 - G4VEmProcess - added DNA ionisation process to the list of 987 discrete processes, which have auger and fluo flags for 988 secondary particles 989 - G4VEmModel - added extra protected class member for nuclear 990 stopping 991 - G4EmCorrections - removed computation of nuclear stopping power 992 - G4EmCalculator - for computation of the nuclear stopping power 993 use concrete model (applied in run time) instead of 994 G4EmCorrections emulation; to get cross section per volume 995 for discrete processes use interface of the process, addressing 996 http://hypernews.slac.stanford.edu/HyperNews/geant4/get/hadroprocess/1595/1.html 997 998 03 April 17: V.Ivant (emutils-V10-03-05) 999 - G4EmParameters - G4EmSaturation may be created at any 1000 moment (G4Mutex is used) 1001 1002 24 March 17: V.Ivant (emutils-V10-03-02) 1003 - G4EmParametersMessenger, G4EmParameters - added parameter 1004 "ScreeningFactor" Get/Set methods and UI command 1005 1006 14 December 16: V.Ivant (emutils-V10-03-00) 1007 - G4EmParametersMessenger - fixed typo (#1929) 1008 - G4EmParameters - added method with more correct name AddPhysics() 1009 in order to replace AddMsc in future (no change in functionality) 1010 1011 19 November 16: V.Ivant (emutils-V10-02-38) 1012 - G4EmParametersMessenger - fixed typo 1013 1014 09 November 16: V.Ivant (emutils-V10-02-37) 1015 - G4VAtomDeexcitation - fixed initialisation of de-excitation 1016 module per G4Region 1017 1018 18 October 16: V.Ivant (emutils-V10-02-36) 1019 - G4EmCorrections, G4ionEffectiveCharge - use more safe name 1020 for G4Pow pointer 1021 1022 18 October 16: V.Ivant (emutils-V10-02-35) 1023 - G4EmParameters - max energy back to 100 TeV 1024 - G4EmSaturation - cleanup; make it thread safe; default 1025 printout level set to 1 1026 1027 07 October 16: V.Ivant (emutils-V10-02-34) 1028 - G4EmParameters - reduce max energy back to 10 TeV 1029 1030 20 September 16: V.Ivant (emutils-V10-02-33) 1031 - G4EmParameters - added private method Initialise() additionally 1032 to SetDefaults() to provide more safe initialisation of 1033 custom EM physics lists 1034 1035 15 September 16: M.Asai (emutils-V10-02-32) 1036 - G4EmParameters - accept changes during the G4State_Init state. 1037 1038 06 September 16: V.Ivant (emutils-V10-02-31) 1039 - fixed compillation warning and test crash 1040 1041 06 September 16: V.Ivant (emutils-V10-02-29) 1042 - G4EmSaturation - make it thread safe, added data for G4_PbWO4, 1043 fixed data for G4_lAr using recent report from ATLAS, run time 1044 methods are now "const" 1045 - G4EmParameters, G4EmParametersMessenger - added interface and UI 1046 command to enable thread safe built-in Birks saturation 1047 corrections, added access to G4EmSaturation, set by default 1048 Gaussian nuclear form-factor 1049 - G4LossTableManager - changed initialisation of G4EmSaturation 1050 1051 27 August 16: V.Ivant (emutils-V10-02-28) 1052 - G4AtomicDeexcitation, G4EmParameters, G4EmParametersMessenger 1053 improved initialisation per region 1054 1055 15 July 16: V.Ivant (emutils-V10-02-27) 1056 - G4EmBiasingManager - fixed PVS-Studio warning (A.Karpov) 1057 1058 15 July 16: V.Ivant (emutils-V10-02-26) 1059 - G4EmParameters, G4EmParametersMessenger - added new methods and 1060 UI command to define optional EM physics per region 1061 1062 16 July 16: V.Ivant (emutils-V10-02-25) 1063 13 July 16: V.Ivant (emutils-V10-02-24) 1064 - G4EmParameters, G4VEmProcess, G4VEnergyLossProcess - default upper 1065 energy limits are extended from 10 TeV to 100 TeV of bins 1066 per decade is unchanged 1067 1068 07 June 16: V.Ivant (emutils-V10-02-23) 1069 - G4LossTableManager - removed debug printout 1070 1071 07 June 16: V.Ivant (emutils-V10-02-22) 1072 - G4VEmModel - fixed destruction in MT mode 1073 - G4VMultipleScattering, G4EmModelManager, G4LossTableManager 1074 improved debug printout 1075 1076 02 June 16: V.Ivant (emutils-V10-02-21) 1077 - G4VAtomicDeexcitation - extended printout at initialisation 1078 1079 02 June 16: V.Ivant (emutils-V10-02-20) 1080 - G4EmModelManager - review and fix model configuration (mainly 1081 for DNA models) 1082 - G4DummyModel - set default low-enegry limit to 0.0 (needed for DNA) 1083 - G4VMultipleScattering - added method NumberOfModels() 1084 - G4EmConfigurator - minor cleanup 1085 1086 11 May 16: V.Ivant (emutils-V10-02-19) 1087 - G4VEmModel, G4VAtomDeexcitation, G4EmCalculator - use new method 1088 G4Element::GetZasInt() 1089 - G4VEmModel - fixed SelectRandomAtomNumber() method 1090 1091 01 May 16: V.Ivant (emutils-V10-02-18) 1092 29 April 16: V.Ivant (emutils-V10-02-17) 1093 - G4EmCorrections - fixed Coverity warning 1094 - G4VAtomDeexcitation - fixed possible data race at initialistion 1095 1096 25 April 16: V.Ivant (emutils-V10-02-16) 1097 25 April 16: V.Ivant (emutils-V10-02-14) 1098 - G4AtomicShell - make the class pure inlined, use a default destructors 1099 - G4LossTableManager, G4VEmModel, G4VMultipleScattering - minor 1100 cleanup of static const data 1101 - G4EmCorrections - make part of data static, make internal vectors 1102 static, shared between threads 1103 1104 15 April 16: V.Ivant (emutils-V10-02-13) 1105 - G4EmParameters - allow to change parameters only from the master thread 1106 and only at PreInit or Idle states 1107 1108 15 April 16: V.Ivant (emutils-V10-02-12) 1109 - G4VAtomDeexcitation - complete migration to G4EmParameters interface; 1110 addresing data race in MT mode 1111 1112 11 April 16: V.Ivant (emutils-V10-02-11) 1113 - G4VMultipleScattering - move position change to AlongStep 1114 1115 17 March 16: V.Ivant (emutils-V10-02-10) 1116 - G4VEnergyLossProcess - return back removed method to fix compillation 1117 of reverse MC example 1118 1119 15 March 16: V.Ivant (emutils-V10-02-09) 1120 - removed commented lines left from the previous tag 1121 - G4EmCalculator - added protection against zero cut value - use 1122 lowest electron energy (fixed problem #1845) 1123 1124 11 March 16: V.Ivant (emutils-V10-02-08) 1125 - G4EmParameters, G4EmParametersMessenger - moved remaining 1126 parameters from G4EmProcessOptions, which become obsolete 1127 - G4EmCalculator, G4LossTableBuilder, G4LossTableManager, G4VMscModel, 1128 G4VEmModel, G4VEmProcess, G4VEnergyLossProcess - use only 1129 G4EmParameters class interfaces for initialisation 1130 - G4NuclearFormfactorType - added new enumerator 1131 1132 17 February 16: V.Ivant (emutils-V10-02-07) 1133 - G4EmMultiModel - changed "override" by "final" 1134 1135 17 February 16: V.Ivant (emutils-V10-02-06) 1136 - G4VEnegryLossProcess, G4EmCorrections - removed unused class members 1137 - G4VEmModel, G4EmMultiModel - address clang warnings 1138 1139 16 February 16: D.Sawkey (emutils-V10-02-05) 1140 - Again, added more overrides, to remove clang warnings in previous tag 1141 - put deleted copy/assignment operators back in private section 1142 1143 12 February 16: D.Sawkey (emutils-V10-02-04) 1144 - added more overrides, to remove clang warnings in previous tag 1145 1146 11 February 16: D.Sawkey (emutils-V10-02-03) 1147 - partial C++11 migration in header files: explicit, override, delete 1148 keywords; nullptr 1149 1150 10 February 16: V.Ivant 1151 - G4VEmProcess, G4EmModelManager - added extra methods to access models 1152 1153 22 January 16: V.Ivant (emutils-V10-02-01) 1154 - G4LossTableManager - avoid double addition of He3 and alpha to the 1155 loss table map (should not have any effect on results) 1156 - G4EmCalculator - fixed computation of dEdx and range for He3 and 1157 alpha (problem #1808) 1158 1159 14 January 16: V.Ivant (emutils-V10-02-00) 1160 - G4EmSaturation - fixed #1807 by changing method name from 1161 VisibleEnergyDeposition(..) to VisibleEnergyDepositionAtAStep(..) 1162 This fix change user interface in order to allow overload virtual 1163 method 1164 1165 09 November 15: V.Ivant (emutils-V10-01-40) 1166 - G4EmParameters - fixed typo in name of the new method 1167 1168 06 November 15: V.Ivant (emutils-V10-01-39) 1169 - G4EmParametersMessenger - fixed typo in few commands; added command 1170 "/process/msc/UseMottCorrection" 1171 - G4EmParameters - add useMottCorrection parameter and Get/Set method 1172 1173 05 November 15: V.Ivant (emutils-V10-01-38) 1174 - G4VMultipleScattering - added a protection in the algorithm of 1175 the displacement beyond to avoid crashes in geometry 1176 1177 01 November 15: V.Ivant (emutils-V10-01-36) 1178 - G4EmParametersMessenger - fixed typo in command "/process/msc/StepLimit" 1179 1180 24 October 15: V.Ivant (emutils-V10-01-35) 1181 - G4EmCorrections - use G4Exp, G4Log, G4pow, G4lrint 1182 - G4VMultipleScattering - fixed algorithm of displacement beyond 1183 the boundary 1184 1185 16 October 15: V.Ivant (emutils-V10-01-34) 1186 - G4EmParametersMessenger - the command "/process/em/fluoBearden" 1187 is active only PreInit 1188 1189 14 October 15: V.Ivant (emutils-V10-01-33) 1190 - G4EmCalculator - fixed GetDEDX for ions and removed debug cout 1191 1192 14 October 15: V.Ivant (emutils-V10-01-32) 1193 - G4EmCalculator - special computation of dEdx for ICRU'73 based 1194 ion ionisation model (fixed problem #1792) 1195 - G4VEmProcess, G4VEnergyLossProcess, G4VMultipleScattering, 1196 G4VEmModel - added new interfaces for automatic description 1197 of processes/models to generate web pages 1198 - G4VEmModel added new feature: a flag allowing a user to "lock" model 1199 parameters protecting from overwrite by default values. For today 1200 needed for the new GS model 1201 1202 30 September 15: V.Ivant (emutils-V10-01-31) 1203 - G4VEmProcess, G4VEnegryLossProcess - do not destroy 1204 G4PhysicsModelCatalog end of run 1205 1206 18 September 15: V.Ivant (emutils-V10-01-30) 1207 - G4EmParameters - disable Bearden files, removed debug cout 1208 - in all files use nullptr to initialise pointers 1209 - fixed Coveruty trivial warning 1210 1211 14 September 15: V.Ivant (emutils-V10-01-29) 1212 - G4EmParameters - enable Bearden files 1213 - G4EmParametersMessenger - fixed cross section names 1214 1215 04 September 15: V.Ivant (emutils-V10-01-26) 1216 - G4EmParameters, G4EmParametersMessenger - define allowed names 1217 for PIXE cross sections and to msc step limits, set by 1218 default usage of Bearden files for level energies 1219 - G4VAtomDeexcitation, G4EmProcessOptions - use only G4EmParameters 1220 for de-ecitation module parameters 1221 1222 03 September 2015: S. Incerti (emutils-V10-01-25) 1223 - added UI command for Bearden files in 1224 G4VAtomicDeexcitation 1225 G4EmParameters 1226 G4EmParametersMessenger 1227 1228 20 August 15: V.Ivant (emutils-V10-01-24) 1229 - G4VMscModel - compute distance to boundary even if a particle 1230 is inside World volume (M. Novak identify use-case when 1231 the world volume is filled not by vacuum but some material) 1232 1233 03 August 15: V.Ivant (emutils-V10-01-23) 1234 - Technical tag: fixed Coverty warning, substitute tabs by spaces, 1235 add comments to do/while and while loops 1236 1237 28 July 15: V.Ivant (emutils-V10-01-22) 1238 - G4VEnergyLossProcess - minor optimisation at the last step 1239 1240 27 July 15: V.Ivant (emutils-V10-01-21) 1241 - G4VEnergyLossProcess - use lowest energy from G4EmParameters 1242 1243 17 July 15: D. Sawkey (emutils-V10-01-19) 1244 - G4EmParameters - add SetDefaults() method, call in constructor 1245 1246 12 July 15: V.Ivant (emutils-V10-01-18) 1247 - G4VEmProcess, G4VEnergyLossProcess, G4LossTableManager, 1248 G4EmConfigurator - removed tabs and improve code formatting 1249 1250 12 July 15: V.Ivant (emutils-V10-01-17) 1251 - G4EmParameters, G4EmParametersMessenger - added extra parameters, 1252 C++ access methods and UI commends: dump parameters, lowest 1253 energy for e+- and muons/hadrons 1254 1255 25 May 15: V.Ivant (emutils-V10-01-16) 1256 - G4EmCalculator - added new methods: ComputeDEDXForCutInRange and 1257 ComputeCrossSectionPerShell 1258 1259 13 May 15: V.Ivant (emutils-V10-01-15) 1260 - G4EmParametersMessenger - added PreInit state for new commands 1261 1262 12 May 15: V.Ivant (emutils-V10-01-14) 1263 - G4EmParameters, G4EmParametersMessenger, G4VAtomDeexcitation 1264 S.Incerti added extra flag AugerCascade; 1265 - G4VAtomDeexcitation, G4LossTableManager - change initialisation, 1266 now happens before BuildPhysicsTable in each thread 1267 - G4EmParameters, G4EmParametersMessenger - added vector of regions 1268 for which PAI, MicroElec, or DNA models may be activated 1269 - G4VEmModel - added extra interface ComputeCrossSectionPerShell 1270 1271 08 May 15: V.Ivant (emutils-V10-01-13) 1272 30 April 15: V.Ivant (emutils-V10-01-12) 1273 - G4VEnergyLossProcess - fixed minor Coverity warning 1274 1275 27 April 15: V.Ivant (emutils-V10-01-11) 1276 - G4VEmModel, G4VEmFluctuationModel - removed pointers to random engine 1277 - G4VMultipleScattering, G4VMscModel, G4VEmAngularDistribution 1278 accurate initialisation of G4ThreeVectors and G4LorentzVector 1279 in constructors 1280 1281 04 March 15: V.Ivant (emutils-V10-01-10) 1282 - G4EmParameters, G4EmParametersMessenger added new methods and UI 1283 commands for muon/hadron/ion multiple scattering : 1284 SetMscMuHadRangeFactor(), SetMscMuHadStepLimitType(), 1285 /process/msc/RangeFactorMuHad, /process/msc/StepLimitMuHad 1286 - G4VMultipleScattering - use new methods 1287 1288 28 February 15: V.Ivant (emutils-V10-01-09) 1289 - G4EmCalculator - fixed compillation warning of previous tag 1290 1291 27 February 15: V.Ivant (emutils-V10-01-08) 1292 - G4LossTableManager - moved run time methods to be inlined 1293 - G4EmCalculator moved simple methods to inline; added public 1294 methods SetupMaterial(); for computation of cross section 1295 per atom add initialisation of material (problem reported 1296 by D. Mancusi about bremsstrahlung cross section), 1297 minor fix of printout 1298 1299 06 February 15: V.Ivant (emutils-V10-01-07) 1300 - G4VEmProcess - fixed crash in printout for verbose level > 2 1301 (reported by D.Mancusi) 1302 1303 30 January 15: V.Ivant (emutils-V10-01-06) 1304 - G4EmCalculator - fixed minor defect reported by Coverity 1305 1306 16 January 15: V.Ivant (emutils-V10-01-05) 1307 - G4VEmModel, G4VEmFluctuationModel - switch to use 1308 G4Random::getTheEngine() to have more clean code 1309 1310 15 January 15: V.Ivant (emutils-V10-01-04) 1311 - G4VEmModel - redefine random engine pointer in StartTracking() method 1312 to address problem reported by CMS 1313 1314 27 December 14: V.Ivant (emutils-V10-01-03) 1315 - G4VEnergyLossProcess - removed debug printout from previous tag 1316 1317 22 December 14: V.Ivant (emutils-V10-01-01) 1318 21 December 14: V.Ivant (emutils-V10-01-00) 1319 - G4EmParametersMessenger - allowed to set CSDA range flag only in 1320 the PreInit state to avoid crash in store/retrieve tables 1321 - G4VEnergyLossProcess, G4VEmProcess, G4VMultipleScattering - store 1322 physics table only from master thread 1323 - G4VEmProcess - fixed printout at initialisation for the case when 1324 process class is shared between different particles 1325 1326 18 November 14: V.Ivant (emutils-V10-00-46) 1327 - G4VAtomDeexcitation - fixed printout at initialisation 1328 (minor problem was introduced in the previous tag) 1329 1330 15 November 14: V.Ivant (emutils-V10-00-45) 1331 - G4VAtomDeexcitation - changed initialisation allowing to work in 1332 unit tests 1333 1334 07 November 14: V.Ivant (emutils-V10-00-44) 1335 - G4LossTableMananger, G4EmConfigurator - fixed minor Coverity reports 1336 1337 28 October 14: V.Ivant (emutils-V10-00-43) 1338 - removed old commented code 1339 1340 23 October 14: V.Ivant (emutils-V10-00-42) 1341 - G4VMultipleScattering - fixed displacement at boundary algorithm 1342 1343 23 October 14: V.Ivant (emutils-V10-00-40) 1344 - G4VEmProcess, G4VEnergyLossProcess - set step limit to DBL_MAX if 1345 selected model is inactive at such energy; addresses bug 1674 1346 - G4EmConfigurator - set high energy activation limit for a new 1347 model not more than high energy limit (needed for DNA models) 1348 1349 22 October 14: V.Ivant (emutils-V10-00-39) 1350 - G4VEmProcess - fixed definition of integral option 1351 1352 20 October 14: V.Ivant (emutils-V10-00-38) 1353 - G4LossTableManager - fixed non-initilized variable 1354 - G4VMultipleScattering - coherent definition of lateral 1355 displacement flag 1356 1357 17 October 14: V.Ivant (emutils-V10-00-37) 1358 - G4VEmProcess, G4VEnergyLossProcess - improved printout at 1359 initialisation, added extra initialisation 1360 - G4VEmProcess, G4VEmModel - added accessmethos for target element 1361 and isotope 1362 1363 15 October 14: V.Ivant (emutils-V10-00-36) 1364 15 October 14: V.Ivant (emutils-V10-00-35) 1365 - fixed G4VEnergyLossProcess 1366 1367 14 October 14: V.Ivant (emutils-V10-00-34) 1368 - fixed G4VMultipleScattering 1369 1370 14 October 14: V.Ivant (emutils-V10-00-33) 1371 - fixed logic of sub-cutoff mechnism 1372 1373 13 October 14: V.Ivant (emutils-V10-00-32) 1374 - fixed typo 1375 1376 13 October 14: V.Ivant (emutils-V10-00-31) 1377 - G4EmParameters, G4EmParametersMessenger - new classes for 1378 keeping EM parameters static for run time 1379 - G4VEmProcess, G4VEnergyLossProcess, G4VMultipleScattering, 1380 G4EmProcessOptions, G4VAtomDeexcitation - changed initialisation 1381 logic - use G4EmParameters class, fixed problem #1670 1382 1383 06 October 14: L.Urban (emutils-V10-00-30) 1384 - G4MscStepLimitType, G4EnergyLossMessenger - added new step limit 1385 type for msc: UseSafetyPlus 1386 1387 22 September 14: V.Ivant (emutils-V10-00-29) 1388 - G4VEmProcess, G4VEnergyLossProcess - fixed model type definition 1389 for secondary particle production (fluoresence, PIXE, splitting) 1390 1391 21 July 14: V.Ivant (emutils-V10-00-28) 1392 - G4EmCorrections, G4EmElementSelector, G4LossTableManager, 1393 G4VEmModel, G4VEmProcess, G4VEnergyLossProcess - introduced 1394 explicit delete of all PhysicsTables and PhysicsVectors at the 1395 end of job 1396 - G4EmCalculator - added public FindProcess() method 1397 1398 27 June 14: V.Ivant (emutils-V10-00-27) 1399 - G4VAtomDeexcitation - if de-excitation options are defined for the 1400 world G4Region, propagate these options to all G4Regions 1401 1402 6 June 14: V.Ivant (emutils-V10-00-26) 1403 - G4VEmProcess, G4VEnergyLossProcess - fixed Coverity reports 1404 1405 6 June 14: V.Ivant (emutils-V10-00-25) 1406 - G4EmSaturation - removed fatal exception if proton is not 1407 instantiated 1408 1409 5 June 14: V.Ivant (emutils-V10-00-24) 1410 - G4EmSaturation - moved check on existence of e- and proton 1411 from run time to initialisation (it is done only once) 1412 - G4LossTableManager, G4VEnergyLossProcess, G4VEmProcess - 1413 improved initialisation: moved set methods for parameters 1414 from inline to source and add extra check on parameter value, 1415 throw warnings if parameters are out of range 1416 - G4LossTableManager - helper classes are instantiated only if 1417 user requests via access method 1418 1419 4 June 14: A.Dotti (emutils-V10-00-23) 1420 - Added protection in G4EmSaturation to throw exception if e- or proton 1421 are not defined when used in G4EmSaturation::VisibleEnergyDeposition 1422 method. 1423 - Do not instantiate G4Electron and G4Proton by default in 1424 G4EmSaturation::InitialiseBirksCoefficient 1425 1426 2 June 14: V.Ivant (emutils-V10-00-22) 1427 - G4EmModelManager - fixed cuts for single scattering models (use 1428 "cut for protons") 1429 1430 27 May 14: V.Ivant (emutils-V10-00-21) 1431 - G4LossTableManager - minor change of Set methods 1432 1433 26 May 14: V.Ivant (emutils-V10-00-20) 1434 - G4EmManagerMessenger, G4EmProcessOptions, G4LossTableManager, 1435 G4VEnergyLossProcess - fixed (trivial) Coverity reports 1436 1437 20 May 14: V.Ivant (emutils-V10-00-19) 1438 - G4LossTableManager, G4EmSaturation - changed initialisation 1439 of G4EmSaturation class to work in MT mode 1440 1441 19 May 14: V.Ivant (emutils-V10-00-18) 1442 - G4LossTableManager, G4EmSaturation - improved printout; 1443 G4EmProcessOptions, G4LossTableManager - address Coverity reports 1444 1445 19 May 14: V.Ivant (emutils-V10-00-17) 1446 - G4LossTableManager, G4EmSaturation, G4EmCorrections, 1447 G4ElectronIonPair - improved verbosity 1448 1449 18 May 14: V.Ivant (emutils-V10-00-16) 1450 - G4EmSaturation - updated class design, VisibleEnergyDeposition() 1451 method become virtual allowing application of user alternative 1452 algorithm, improved warning message 1453 1454 17 May 14: V.Ivant (emutils-V10-00-15) 1455 - G4VEmModel, G4VEmFluctuationModel - defined different pattern to 1456 access random generator for sequential and MT modes (fix problem 1457 of previous tag) 1458 - G4EmProcessOptions, G4EnergyLossMessenger - added new c++ and UI 1459 interface "/process/msc/DisplacementBeyondSafety" 1460 1461 15 May 14: V.Ivant (emutils-V10-00-14) 1462 - G4VMultipleScattering - introduced mechanism of displacement at 1463 geometry boundary default 1464 - G4VEmModel, G4VEmFluctuationModel - added protected pointers 1465 to random engine in order to save CPU in derived classes 1466 - G4VEnergyLossProcess, G4VEmProcess, G4VMultipleScattering - fixed 1467 Coverity defects 1468 1469 09 May 14: V.Ivant (emutils-V10-00-13) 1470 - G4VEnergyLossProcess, G4VEmProcess, G4VMultipleScattering - fixed 1471 bug report #1594 (crash G4WrapperProcess in sequential mode) 1472 1473 28 April 14: V.Ivant (emutils-V10-00-12) 1474 - G4VSubCutProducer, G4LossTableManager, G4VEnergyLossProcess - new 1475 interface is added allowing production of delta-electrons below 1476 production threshold 1477 1478 28 April 14: V.Ivant (emutils-V10-00-11) 1479 - G4EnergyLossMessenger and G4EmProcessOption - added extra flag and 1480 UI command "/process/em/deexcitationIgnoreCut" allowing 1481 disable check on production threshold by deexcitation module; 1482 enable RunManager flag "/run/physicsModified" for all deexcitation 1483 UI commands 1484 1485 08 April 14: V.Ivant (emutils-V10-00-10) 1486 - G4VMultipleScattering - fixed old problem of displacement handling; 1487 set geomMin = 0.05 nm (Bohr radius) 1488 1489 08 April 14: V.Ivant (emutils-V10-00-09) 1490 - G4VMultipleScattering - return the limit to 0.01 nm; return condition 1491 that if step is below geomMin then no scattering is sampled 1492 1493 06 April 14: V.Ivant (emutils-V10-00-08) 1494 - G4VMultipleScattering - prepared for displacement on boundary; 1495 set geomMin = 0.05 nm (was 0.01 nm) - Bohr radius 1496 1497 28 February 14: V.Ivant (emutils-V10-00-07) 1498 - G4VMultipleScattering - minor cleanup for post-safety computation 1499 1500 27 February 14: V.Ivant (emutils-V10-00-06) 1501 - G4VEnergyLossProcess - for sub-cutoff regime add upper limit when 1502 call SafetyHelper as described in previous tag 1503 1504 27 February 14: J.Apostolakis (emutils-V10-00-05) 1505 - Fixed G4VMscModel::ComputeSafety: pass 2nd parameter to SafetyHelper 1506 ( this parameter is used for optimisation. It is guard= max radius 1507 to check for volumes. Estimate of safety obtained is limited by it. 1508 => The displacement must never exceed value of 2nd parameter. ) 1509 Added default for 2nd parameter, compatible with SafetyHelper. 1510 1511 26 February 14: V.Ivant (emutils-V10-00-04) 1512 - G4EmCorrections, G4EmElementSelector, G4VEmModel, G4VEmProcess, 1513 G4VEnergyLossProcess, G4VMultipleScattering, G4ionEffectiveCharge 1514 - general cleanup including: removed old commented code; use std::min 1515 and std::max instead of "if" where possible; use G4Log; 1516 reduced number of division 1517 - G4LossTableManager - minor change of ionisation for charm and bottom mesons; 1518 do not recompute x-section if a process is shared between particle and 1519 anti-particles; 1520 1521 21 February 14: V.Ivant (emutils-V10-00-03) 1522 - G4VMultipleScattering - added possibility to build extra table for a model 1523 1524 14 February 14: V.Ivant (emutils-V10-00-02) 1525 - G4LossTableMananger, G4EmProcessOptions - define default 1526 verbosity=0 for worket thread, so summary on EM processes 1527 is not printed out 1528 - G4VEnergyLossProcess, G4VEmProcess - define fixed precison=6 1529 for initialisation printout 1530 - G4EmCalculator - added G4Exception inside FindCouple() method if 1531 G4MaterialCutsCouple is not found out and incide GetCSDARange() 1532 when CSDA table is not initialized 1533 1534 13 February 14: V.Ivant (emutils-V10-00-01) 1535 - G4LossTableMananger - fixed bug for initialisation of several runs 1536 in one job (affecting muons and e- and providing non-reproducibility) 1537 1538 27 January 14: V.Ivant (emutils-V10-00-00) 1539 - G4VEnergyLossProcess - fixed division by zero for the case of 1540 an ion with charge zero 1541 - G4EmCalculator - in FindCouple method implemented loop over all 1542 regions if G4Region* argument of the method is NULL 1543 1544 21 November 13: V.Ivant (emutils-V09-06-67) 1545 - G4EnergyLossTables - removed G4ThreadLocal (this class is obsolete) 1546 1547 19 November 13: V.Ivant (emutils-V09-06-66) 1548 - G4VEmProcess, G4VEnergyLossProcess - complete fix for base 1549 materials for the case of positrons 1550 1551 18 November 13: V.Ivant (emutils-V09-06-65) 1552 - G4VEmProcess, G4VEnergyLossProcess - fixed bug seen in B5 example 1553 when based materail approach was used 1554 - G4EmModelMananger - improved debug printout 1555 1556 14 November 13: V.Ivant (emutils-V09-06-64) 1557 - G4EmBiasingManager - fixed bug reported by Andrey Karpov 1558 (<karpov@viva64.com>) static code analysis 1559 1560 08 November 13: V.Ivant (emutils-V09-06-63) 1561 - Cleanup comments in destructors 1562 1563 06 November 13: V.Ivant (emutils-V09-06-62) 1564 - G4LossTableManager uses G4ThreadLocalSingleton patern 1565 - G4VEmProcess, G4VEnergyLossProcess, G4VEmModel - do not delete 1566 G4PhysicsVectors 1567 1568 01 November 13: V.Ivant (emutils-V09-06-61) 1569 - G4VEmProcess, G4VEnergyLossProcess - fixed bug in GPIL computation 1570 when a particle enter a volume in whihc current EM model has 1571 different activation energy range than in the previous region 1572 - G4VEmModel - improved definition of min and max energy for 1573 element selectors 1574 1575 21 October 13: V.Ivant (emutils-V09-06-60) 1576 - G4VEmModel - added extra flag useAngularGenerator and Get/Set methods 1577 1578 20 October 13: V.Ivant (emutils-V09-06-59) 1579 - G4VEmModel - added extra method SelectRandomAtomNumber 1580 1581 17 October 13: V.Ivant (emutils-V09-06-58) 1582 - G4VMultipleScattering - increased lowestLimit from 1 eV to 10 eV 1583 because Urban msc model cannot handle low-energy e- below 10 eV; 1584 added Get/Set methods for this parameter 1585 - G4EmModelManager - fixed control on cut value per G4Region, the 1586 problem was observed when PAI model is used in a some region 1587 with very low cut 1588 1589 06 October 13: V.Ivant (emutils-V09-06-57) 1590 - G4VEmModel - fixed bug in fanoCavity test - element selectors are created 1591 even if cut value is high 1592 1593 03 October 13: V.Ivant (emutils-V09-06-56) 1594 - G4AngleDirect - dummy angular generator 1595 - G4ionEffectiveCharge - use G4Log, G4Exp, G4Pow 1596 - G4VEmProcess, G4VEnergyLossProcess, G4VAtomDeexcitation - added modelID 1597 for secondary tracks (different mecanisms of production of secondaries 1598 may be distingwished) 1599 - G4EnergyLossMessenger, G4EmProcessOptions - added UI command and c++ 1600 interface to set verbose level for worker thread 1601 1602 20 September 13: V.Ivant (emutils-V09-06-55) 1603 - G4VEmProcess - fixed Coverity warning 1604 1605 13 September 13: V.Ivant (emutils-V09-06-54) 1606 - G4VMultipleScattering, G4VEnergyLossProcess - removed obsolete 1607 methods SlavePreparePhysicsTable(..) and SlaveBuildPhysicsTable(..) 1608 - G4VEmAngularDistribution - added extra virtual method 1609 SampleDirectionForShell(...) 1610 1611 07 August 13: V.Ivant (emutils-V09-06-53) 1612 - G4VEmModel - added pointer to G4ElementData and GetElementData method 1613 in order to allow sharing G4ElementData between threads 1614 - G4EmModelManager - check MinEnergyCut method to address bug #1481 1615 1616 27 July 13: V.Ivant (emutils-V09-06-52) 1617 - G4VEnergyLossProcess, G4VMultipleScattering - use GetMasterProcess 1618 method in PreparePhysicsTable and BuildPhysicsTable methods 1619 1620 23 July 13: V.Ivant (emutils-V09-06-51) 1621 23 July 13: V.Ivant (emutils-V09-06-50) 1622 - G4VEmProcess - extra fix master/worker initialisation 1623 1624 22 July 13: V.Ivant (emutils-V09-06-49) 1625 - G4VEmProcess - fixed master/worker initialisation 1626 1627 21 July 13: V.Ivant (emutils-V09-06-48) 1628 - G4VEmProcess, G4LossTableManager - added master/worker initialisation 1629 to discrete processes 1630 1631 12 July 13: V.Ivant (emutils-V09-06-47) 1632 - G4VMultipleScattering - return back logic which was in 10.0beta (tag 1633 emutils-V09-06-42) 1634 1635 12 July 13: V.Ivant (emutils-V09-06-46) 1636 - G4VMultipleScattering - compute safety defining not only position but 1637 also radius of possible displacement 1638 1639 11 July 13: V.Ivant (emutils-V09-06-45) 1640 - G4VMultipleScattering - return back tag 43 with more strict control of 1641 safety 1642 1643 09 July 13: V.Ivant (emutils-V09-06-44) 1644 - G4VEmModel - changed signature of the method MinPrimaryEnergy(..) 1645 by addition "G4double cut"; return back virtual method MinEnergyCut; 1646 more accurate usage of inlined methods 1647 - G4VMultipleScattering - more accurate postStepSafety 1648 1649 08 July 13: V.Ivant (emutils-V09-06-43) 1650 - G4VMultipleScattering - moved displacement AlongStep 1651 1652 03 July 13: V.Ivant (emutils-V09-06-42) 1653 - G4LossTableManager - foxed Coverity report 1654 - G4VEmFluctuationModel changed interface in SampleFluctuations 1655 method - G4Material pointer is substituted by G4MaterialCutsCouple 1656 pointer - modification is needed to PAI model 1657 - G4VEnergyLossProcess - changed interface to G4VEmFluctuationModel 1658 1659 27 June 13: V.Ivant (emutils-V09-06-41) 1660 - G4LossTableManager - return back to tag-39, because setup of min/max 1661 energies inside EM tables in some tables is done incorrectly, 1662 also order of EM printout is not optimal 1663 1664 20 June 13: V.Ivant (emutils-V09-06-40) 1665 - G4LossTableManager - attempt to fix Coverity report 1666 1667 19 June 13: V.Ivant (emutils-V09-06-39) 1668 - G4VEnergyLossProcess - fixed Coverity report 1669 1670 17 June 13: V.Ivant (emutils-V09-06-38) 1671 - G4LossTableManager - return back ThreadLocal partern for the 1672 singleton (it was correct) 1673 - G4VMultipleScattering - fixed list models per msc process for ions 1674 1675 15 June 13: V.Ivant (emutils-V09-06-37) 1676 - G4VEnergyLossProcess - avoid unnecessary deletion of tables 1677 between runs 1678 1679 15 June 13: V.Ivant (emutils-V09-06-36) 1680 - G4LossTableManager - fixed ThreadLocal partern for the singleton 1681 1682 14 June 13: V.Ivant (emutils-V09-06-35) 1683 - G4VEnergyLossProcess, G4VEmProcess, G4VEmModel, G4VMscModel 1684 introduced cache for indexes in tables, CPU performance 1685 restored without any effect on results 1686 1687 14 June 13: V.Ivant (emutils-V09-06-34) 1688 - G4LossTableBuilder - optimized number of bins for tables 1689 built for models 1690 1691 14 June 13: V.Ivant (emutils-V09-06-33) 1692 - G4VEnergyLossProcess - fixed CrossSectionPerVolume method 1693 - G4VEmModel - take into account reaction threshold when initialise 1694 G4EmElementSelectors; set smallest number of bins to 3 (was 5); 1695 fixed initialisation 1696 - G4LossTableBuilder - do not use copy constructor when a new 1697 G4PhysicsLogVector for a model 1698 1699 13 June 13: V.Ivant (emutils-V09-06-32) 1700 - G4VEmProcess - fixed CrossSectionPerVolume method - use tablePrim for 1701 high energy if this table is defined 1702 1703 13 June 13: V.Ivant (emutils-V09-06-31) 1704 - G4VEnergyLossProcess, G4LossTableManager - cleanup comments 1705 1706 12 June 13: V.Ivant (emutils-V09-06-30) 1707 - G4VEnergyLossProcess - removed parasitic printout 1708 1709 12 June 13: V.Ivant (emutils-V09-06-29) 1710 - G4VEnergyLossProcess, G4LossTableManager, G4lossTableBuilder - cleanup 1711 table management 1712 1713 11 June 13: V.Ivant (emutils-V09-06-28) 1714 - G4VEnergyLossProcess, G4LossTableManager - cleanup table management 1715 for case of many runs in one session, improved printouts 1716 1717 10 June 13: V.Ivant (emutils-V09-06-27) 1718 - G4VEmModel - fixed SetCrossSectionTable method 1719 - G4VEnergyLossProcess - make ion initialisation assuming that each ion 1720 may have an individual process 1721 1722 07 June 13: G.Cosmo (emutils-V09-06-26) 1723 - Cleanup from automatic MT changes in G4LossTableManager 1724 and G4EnergyLossTables.cc. 1725 1726 06 June 13: V.Ivant (emutils-V09-06-25) 1727 - G4VEnergyLossProcess - do not destroy old tables in worker thread 1728 for the new run 1729 1730 06 June 13: V.Ivant (emutils-V09-06-24) 1731 - G4VEnergyLossProcess, G4VEmProcess - density factor correction 1732 array is assined to a process in BuildPhysicsTable instead of 1733 PreparePhysicsTable in order to get correct pointers in worker 1734 threads 1735 1736 06 June 13: V.Ivant (emutils-V09-06-23) 1737 - G4VEnergyLossProcess - an attempt to fix extra problem seen 1738 in CDASH by changing PrintInfoDefinition method signature 1739 1740 06 June 13: V.Ivant (emutils-V09-06-22) 1741 - G4VEnergyLossProcess - restore correct printout at initialisation 1742 of protons and anti_protons 1743 1744 05 June 13: V.Ivant (emutils-V09-06-21) 1745 - G4VEmModel - fixed crash in copy of element selectors from 1746 master to worker threads 1747 - G4VEnergyLossProcess - restore printout at initialisation 1748 of worker thread 1749 1750 05 June 13: V.Ivant (emutils-V09-06-20) 1751 - G4LossTableManager - SetIon method from previous is removed, old 1752 code to Get dedx, range, inverse range is restored 1753 - G4VEnergyLossProcess - removed debug printout 1754 1755 04 June 13: V.Ivant (emutils-V09-06-19) 1756 - G4LossTableManager - optimisation for MT mode: do not insert 1757 concrete ions into particle/energy loss process map, only 1758 G4GenericIon is inserted; added LocalPhysicsTables methods 1759 to copy pointers of G4PhysicsTables from master to local threads; 1760 SetIon method is added to define ion state 1761 - G4VEnergyLossProcess - optimisation for MT mode, added local 1762 cache inside GetRangeForLoss method, cleanup 1763 - G4VMultipleScattering, G4VMscModel - adaptation to MT mode 1764 1765 30 May 13: V.Ivant (emutils-V09-06-18) 1766 - G4LossTableManager, G4VEnergyLossProcess, G4VMultipleScattering, 1767 G4VEmModel, G4VMscModel - implemented copy of transport cross 1768 sections tables from master to worker threads; implemented 1769 a possibility to copy element selectors from master to worker 1770 threads (model may use or not this feature) 1771 1772 29 May 13: V.Ivant (emutils-V09-06-17) 1773 - G4EmCorrections - fixed typo 1774 1775 29 May 13: V.Ivant (emutils-V09-06-16) 1776 - G4EmCorrections - substituted FindIon from the G4ParticleTable by 1777 G4IonTable::GetIon(Z,A,0) 1778 1779 29 May 13: V.Ivant (emutils-V09-06-15) 1780 - G4LossTableMananger, G4VMultipleScattering - removed unused internal 1781 methods, cleanup code from old unused implementation for MT 1782 - G4EmCalculator - use GetIon(Z,A,0) method from G4IonTable, as 1783 recommended by particle category (instead of FindIon from particle 1784 table) 1785 1786 27 May 13: V.Ivant (emutils-V09-06-14) 1787 - G4EmCalculator - fixed typo 1788 1789 27 May 13: V.Ivant (emutils-V09-06-13) 1790 - G4EmCalculator - fixed compillation warning at gcc 4.1 1791 1792 27 May 13: V.Ivant (emutils-V09-06-12) 1793 - G4EmMessenger is renamed to G4EmManagerMessenger to avoid a clash 1794 with name of already existing file 1795 1796 26 May 13: V.Ivant (emutils-V09-06-11) 1797 - G4VEmModel - added extra methods needed for MT: InitialiseLocal, 1798 InitialiseForMaterial, InitialiseForElement, GetElementSelectors 1799 - G4VMultipleScattering, G4VEnegryLossProcess - more accurate 1800 initialisation for MT (some part of initialisation for worker 1801 thread was commented out in the first implementation). 1802 - G4LossTableManager - added new method SlavePhysicsTable which 1803 provides a correct copy and setup process parameters in MT mode 1804 - G4EmCalculator - added call to InitialiseForMaterial to give a 1805 possibility to a model to read data in any thread 1806 - G4EmElementSelector - make it be thread safe 1807 - G4EmManager, G4EmMessenger - new classes 1808 1809 30 April 13: V.Ivant (emutils-V09-06-10) 1810 - G4ElectronIonPair - fixed typo 1811 1812 30 April 13: V.Ivant (emutils-V09-06-09) 1813 - G4ElectronIonPair - CLHEP::RandGamma substituted by G4RandGamma 1814 - G4LossTableManager - fixed Coverity report (disable sub-cutoff 1815 for MT temporary) 1816 1817 04 April 13: V.Ivant (emutils-V09-06-08) 1818 - G4VEnergyLossProcess, G4VEmProcess - clean up filling of 1819 secondary particles to particle change, use AddSecondary 1820 from G4VParticleChange in all cases; little performance 1821 improvement expected 1822 1823 22 March 13: V.Ivant (emutils-V09-06-07) 1824 - G4VMultipleScattering, G4ionEffectiveCharge - for const parameters 1825 used "static const G4double" 1826 1827 18 March 13: V.Ivant (emutils-V09-06-06) 1828 - G4VMultipleScattering - L.Urban reduced geom limit from 1 um 1829 to 0.01 um (result of discussion at Space User Workshop) 1830 1831 15 March 13: V.Ivant (emutils-V09-06-05) 1832 - G4LossTableManager - fixed Coverity reports 1833 1834 24 February 13: V.Ivant (emutils-V09-06-04) 1835 - G4ionEffectiveCharge - static array become "const G4double" 1836 - G4VEnergyLossProcess - uncomment verbose output in new "Slave" methods 1837 - G4LossTableManager, G4EmModelManager - removed G4endl from description 1838 of exceptions 1839 1840 23 December 12: V.Ivant (emutils-V09-06-03) 1841 - G4VMultipleScattering - position is changed PostStep as it was in 9.6 1842 1843 23 December 12: V.Ivant (emutils-V09-06-02) 1844 - G4VMultipleScattering, G4VMscModel - used momentum direction from 1845 PostStepPoint and not from G4Track - major bug of migration 1846 of msc sampling from PostStepDoIt to AlongStepDoIt 1847 1848 12 December 12: V.Ivant (emutils-V09-06-01) 1849 - G4LossTableManager - removed calls to obsolete methods 1850 1851 07 December 12: V.Ivant (emutils-V09-06-00) 1852 - Removed obsolete classes G4VEnergyLoss, G4VBremAngularDistribution 1853 - G4VEmProcess, G4VMultipleScattering - removed obsolete methods 1854 SetModel(), Model() 1855 1856 09 November 12: V.Ivant (emutils-V09-05-56) 1857 08 November 12: V.Ivant (emutils-V09-05-55) 1858 - G4VEnergyLossProcess - fixed non-reproducibility for ions 1859 1860 08 November 12: V.Ivant (emutils-V09-05-54) 1861 - G4VMultipleScattering - improved logic of computation of PostStep 1862 safety and true step length, added more accurate protection 1863 against case when true length exceed physics step limit 1864 1865 06 November 12: V.Ivant (emutils-V09-05-53) 1866 - G4VMultipleScattering - fixed non-reproducibility for ions, added 1867 protection - do not sample scattering if range exceed true step 1868 length less than minGeom parameter (1e-6 mm) 1869 1870 03 November 12: V.Ivant (emutils-V09-05-52) 1871 - G4VEnergyLossProcess, G4VEmProcess, G4VMultipleScattering - fixed 1872 printout at initialisation 1873 1874 02 November 12: V.Ivant (emutils-V09-05-51) 1875 - G4VMultipleScattering - ion multiple scattering is defined 1876 in the class constructor 1877 - G4VMscModel - build table for all particles except case when 1878 multiple scattering process is shared with G4GenericIon 1879 1880 26 October 12: V.Ivant (emutils-V09-05-50) 1881 - G4VMultipleScattering - return version 48 1882 - G4VEmProcess - changed initialisation for ions 1883 1884 25 October 12: V.Ivant (emutils-V09-05-49) 1885 - G4VMultipleScattering - moved relocation AlongStep and do not 1886 call msc PostStep 1887 1888 21 October 12: V.Ivant (emutils-V09-05-48) 1889 - G4EmBiasingManager - cleanup the code; do not modify ParticleChange 1890 when apply RussianRoulette (monor CPU saving); moved 1891 RussianRoulette method to inline; added range cut option 1892 - G4VEmProcess, G4VEnergyLossProcess, G4EmProcessOption - add 1893 corresponding modifiction needed for biasing interface 1894 1895 20 October 12: V.Ivant (emutils-V09-05-47) 1896 - G4VMultipleScattering - fixed typo in previous tag; 1897 compute true path length even is msc model is inactive 1898 1899 20 October 12: V.Ivant (emutils-V09-05-46) 1900 - G4VMultipleScattering - critical fix for stopping particles 1901 (ATLAS report on small steps of low-energy ions) 1902 1903 19 October 12: V.Ivant (emutils-V09-05-45) 1904 - G4VEnergyLossProcess, G4VMultipleScattering - attempt to optimise 1905 run time methods called at each step 1906 - G4EmCalculator - added ComputeGammaAttenuationLength method 1907 - added warning to obsolete methods and classes 1908 1909 18 October 12: V.Ivant (emutils-V09-05-44) 1910 - G4VEnergyLossProcess - define flag isIon for all nucleus except 1911 deuteron, triton and special DNA ions 1912 - G4VEmProcess, G4EmModelManager - minor reduce of number of operations 1913 at each step 1914 - G4VMscModel - minor optimisation of inline methods 1915 1916 05 October 12: V.Ivant (emutils-V09-05-43) 1917 - G4VMultipleScatteringProcess - check that true step length proposed 1918 by msc model do not exceed physical true length 1919 1920 01 October 12: V.Ivant (emutils-V09-05-42) 1921 - G4VAtomDeexcitation - updated initialisation for the case 1922 when de-excitation is not used 1923 1924 27 September 12: V.Ivant (emutils-V09-05-41) 1925 - G4VMscModel - added GetDEDX method 1926 1927 21 September 12: V.Ivant (emutils-V09-05-40) 1928 - G4VAtomDeexcitation - removed forgotten debug printout 1929 - G4VMultipleScatteringProcess - minor cleanup 1930 1931 20 September 12: V.Ivant (emutils-V09-05-39) 1932 - G4VAtomDeexcitation - fixed logic of activation of de-excitation 1933 per region and for all geometry 1934 1935 20 September 12: V.Ivant (emutils-V09-05-38) 1936 - G4VAtomDeexcitation - added computation of sum of energies of 1937 de-excitation gamma and electron produced AlongStep; 1938 use logical OR instead of AND for de-exitation flags 1939 - G4VEnergyLossProcess - fixed energy balance for the case of de-excitation 1940 AlongStep 1941 1942 17 September 12: V.Ivant (emutils-V09-05-37) 1943 - G4VAtomDeexcitation - fixed de-excitation AlongStep by substitution 1944 which limited de-ecitation from ion ionisation 1945 - G4VEnergyLossProcess - take into account modifications for 1946 G4VAtomDeexcitation in order to keep energy balance 1947 1948 06 August 12: V.Ivant (emutils-V09-05-36) 1949 - G4VMultipleScatteringProcess - added call to ReLocate PostStep 1950 1951 06 August 12: V.Ivant (emutils-V09-05-35) 1952 - G4VMultipleScatteringProcess - change final position PostStep to 1953 bypass bug in parallel transportation 1954 1955 28 August 12: V.Ivant (emutils-V09-05-34) 1956 - G4VMultipleScatteringProcess - improved debug printout 1957 1958 24 August 12: V.Ivant (emutils-V09-05-33) 1959 - G4VMultipleScatteringProcess, G4VMscModel - sampling scattering 1960 is moved from PostStep to AlongStep 1961 - G4VEmProcess - fixed minor memory leak at destruction 1962 1963 14 August 12: V.Ivant (emutils-V09-05-32) 1964 - G4VEnergyLossProcess - fixed non-reproducibility by extention 1965 of initialisation in StertTracking method for ions 1966 - G4VEmProcess - removed over initialisation in StartTracking 1967 - G4EmModelManager - improve printout on models 1968 1969 09 August 12: V.Ivant (emutils-V09-05-31) 1970 - G4VMultipleScattering - allowed to change position and direction 1971 AlongStep 1972 1973 01 August 12: V.Ivant (emutils-V09-05-30) 1974 - G4EnergyLossMessenger - Allow to apply bising UI commands only 1975 in G4_Idle state 1976 1977 30 July 12: V.Ivant (emutils-V09-05-29) 1978 - G4VEnergyLossProcess, G4VEmProcess, G4VMultipleScattering - 1979 use the same list of particles for printout at initialisation 1980 in the case of verboseLevel=1 1981 1982 20 July 12: V.Ivant (emutils-V09-05-28) 1983 - G4VEnergyLossProcess - similar fix as for G4VEmProcess 1984 - G4VEmAngularGenerator - cleanup comments, removed obsolete methods 1985 1986 19 July 12: V.Ivant (emutils-V09-05-27) 1987 - G4VEmProcess - fixed problem introduced in previous tag making 1988 possible infinite loop in DNA tracking of 6 eV electron 1989 1990 17 July 12: V.Ivant (emutils-V09-05-26) 1991 - G4VEnergyLossProcess, G4VEmProcess - updated tracking parameters 1992 and flags in PostStepGetPhysicalInteractionLength 1993 - G4EmBiasingManager - fixed bug in bremsstrahlung splitting, which 1994 practically forbid splitting 1995 1996 13 July 12: V.Ivant (emutils-V09-05-25) 1997 - G4VEnergyLossProcess, G4LossTableManager - removed unused method 1998 InitialiseMSC 1999 2000 13 July 12: V.Ivant (emutils-V09-05-24) 2001 - G4EmBiasingManager - do not using dynamic weight for Russian roulette 2002 2003 12 July 12: V.Ivant (emutils-V09-05-23) 2004 - G4VEnergyLossProcess, G4VMultipleScattering, G4VEmModel - added 2005 implementation of new method StartTracking 2006 - G4VMscModel - changed initialisation of the new track using 2007 StartTracking method 2008 - G4VEmAngularDistribution - add temporary dummy implementation of virtual 2009 sampling methods - will be removed when all generators will migrated 2010 to the new signature 2011 2012 10 July 12: G.Cosmo (emutils-V09-05-22) 2013 - Explicitly use inclusion of headers for system of units and physical 2014 constants, in plan to remove implicit inclusion from globals.hh. 2015 2016 05 July 12: V.Ivant (emutils-V09-05-21) 2017 - G4EmCorrections, G4VEmModel, G4VMscModel - fixed shadowing 2018 2019 04 July 12: V.Ivant (emutils-V09-05-20) 2020 - G4VMscModel - method Value() is moved to G4VEmModel 2021 - G4VEmProcess - added extra option allowing to build two different tables 2022 for low-energy and high-energy using different interpolation method, 2023 for that added optinal extra energy limit and SetMinKinEnergyPrim(G4double) 2024 method, improved initialisation of tables and initialisation printout 2025 - G4EmTableType - added type fIsCrossSectionPrim 2026 - G4EmModelManager - added possibility to build high energy table of 2027 cross sections 2028 - G4VEmAngularDistribution - cleanup user interface 2029 2030 08 June 12: D. Sawkey 2031 - G4VEmProcess fix for first part of bug 1314. Force if step==1 (see 30May12) 2032 2033 08 June 12: V.Ivant (emutils-V09-05-19) 2034 - Fixed shadowing 2035 2036 06 June 12: V.Ivant (emutils-V09-05-18) 2037 - G4VMscModel - trying optimise inline methods 2038 - G4VMultipleScattering - trying optimise initialisation and reduce 2039 number of checks in run time 2040 - G4LossTableManager - moved inline methods to the source 2041 - G4EmBiasingmanager - add check on number of secondaries PostStep, 2042 if it is not 1 then disable both splitting and Russian roulette, 2043 this does not affect ordinary delta-electron and bremssrahlung 2044 secondary biasing (splitting and Russian roulette); 2045 Dynamic weight approach (weight is function of secondary energy) 2046 is applied for Russian roulette if biasing limit energy is set 2047 below 1 GeV, alternatively costant factor is used 2048 2049 05 June 12: V.Ivant (emutils-V09-05-17) 2050 - G4VMscModel - allow build transport x-section table for d,t,He3,He4 2051 2052 01 June 12: D. Sawkey (emutils-V09-05-16) 2053 - G4EnergyLossMessenger: Put back in guidance for high energy limit for 2054 bremsplitting, russian roulette 2055 31 May 12: D. Sawkey 2056 G4EmBiasingManager:Put back in high energy limit for Russian roulette, 2057 bremsplitting 2058 2059 31 May 12: V.Ivant (emutils-V09-05-15) 2060 30 May 12: D. Sawkey 2061 - G4VEnergyLossProcess bug 1314 fix: for forced biasing, now force if step==1 2062 2063 30 May 12: D. Sawkey 2064 - G4VEmProcess, G4VEnergyLossProcess. for forced interaction, cross- 2065 section biasing, set weight consistently 2066 2067 29 May 12: D. Sawkey 2068 - G4EmBiasingManager, G4VEmProcess, G4VEnergyLossProcess, 2069 G4EmProcessOptions, G4EnergyLossMessenger: Change brem splitting to 2070 EGS-style with unique secondaries. Only brem split particles with 2071 weight > 1/N (N=brem splitting factor), and only Russian Roulette 2072 with weight < 1. Energy limit no longer used. 2073 2074 28 May 12: V.Ivant (emutils-V09-05-14) 2075 - G4EmCalculator - fixed FindRegion 2076 2077 18 May 12: V.Ivant (emutils-V09-05-13) 2078 - G4EmModelManager - improved printout of model energy limits 2079 - G4VEmModel - added inline methods HighEnergyActivationLimit(), 2080 LowEnergyActivationLimit(), ForceBuildTableFlag(), ForceBuildTable() 2081 - G4VMscModel - updated GetRange() and GetEnergy() methods allowing to 2082 use the same model class for many particles 2083 2084 09 May 12: V.Ivant (emutils-V09-05-12) 2085 - G4ElectronIonPair - use inverse FanoFactor to simplify formula 2086 2087 09 May 12: V.Ivant (emutils-V09-05-11) 2088 - G4VMultipleScatetring - improved printout at initialisation 2089 - G4ElectronIonPair - cleanup implementation of sampling of number of ions 2090 2091 26 April 12: V.Ivant (emutils-V09-05-10) 2092 - G4EmCalculator - fixed GetMeanFreePath for msc processes (bug introduced 2093 in previous tags) 2094 2095 20 April 12: V.Ivant (emutils-V09-05-09) 2096 - G4LossTableManager - added methods MinKinEnergy, MaxkinEnergy 2097 - G4EmModelManager - extended printout if cross section table is built for 2098 the model 2099 - G4EmCalculator - improved model selection for msc processes 2100 - G4VMultipleScatetring - removed transport cross section table, 2101 simplified AlongStepGetPhysicalInteractionLength 2102 method, added protection against zero 2103 kinetic energy into PostStepDoIt, 2104 general cleanup of the code 2105 - G4VMscModel - added building of transport cross section table and new 2106 method GetTransportCrossSection to be used in run time 2107 - G4LossTableBuilder - added method BuildTableForModel 2108 2109 19 April 12: V.Ivant (emutils-V09-05-08) 2110 - G4EmCorrections : A.Ribon fixed reproducibility violation due to the cashing 2111 of IonHighOrderCorrections with a vector depending on the ion charge. 2112 The correction depends not only on the ion charge but also on its 2113 mass, therefore the cashing based on the ion charge only depends on 2114 which isotope is encountered first, which depends on the history, 2115 and violated the reproducibility. The fix consists of using a map 2116 for cashing, with the key given by the PDG encoding of the ion, 2117 which is unique for each isotope. 2118 - G4VEmProcess - use ProposeWeight instead of ProposeParentWeight 2119 to fix weights of secondary particle for gamma processes 2120 - G4LossTableManager - minor correction of number of bins per decade 2121 2122 15 April 12: V.Ivant (emutils-V09-05-07) 2123 - G4LossTableBuilder - added method BuildTableForModel allowing to build 2124 G4PhysicsTable for a model 2125 - G4VEmModel - added virtual method Value, by default computes cross section 2126 - G4VMscModel - added method GetTransportMeanFreePath 2127 2128 19 March 12: V.Ivant (emutils-V09-05-06) 2129 - G4EmCalculator - fixed compillation warning at gcc 4.6 2130 2131 15 March 12: V.Ivant (emutils-V09-05-05) 2132 - G4LossTableManager - added a check and protection against double 2133 registration of the same process; this addition allows to use 2134 the same EM energy loss process for different particle types 2135 - G4EmCalculator - modifed method to access a process taking into account 2136 that the same process may used by different particle type; 2137 added new methods ActiveForParticle, FindEnLossProcess, 2138 FindDiscreteProcess, FindMscProcess 2139 2140 5 March 12: V.Ivant (emutils-V09-05-04) 2141 - G4VEnergyLossProcess fixed crash due to apply G4hIonisation for ions; 2142 - G4VEnergyLossProcess, G4VEmProcess, G4LossTableBuilder - delete old 2143 G4PhysicsVectors if new vectors are built between runs 2144 - G4VAtomDeexcitation - use safe method to extract integer Z 2145 2146 29 February 12: V.Ivant (emutils-V09-05-03) 2147 - G4VEnergyLossProcess fixed computation of delta-electron cross section 2148 for ions and very small cuts (about 1 um), reported by Sergio Ibarmia 2149 2150 21 February 12: V.Ivant (emutils-V09-05-02) 2151 - G4VEmAngularDistribution added new method Initialise 2152 2153 21 February 12: V.Ivant (emutils-V09-05-01) 2154 - G4VEmAngularDistribution added two new methods SampleCosinePolarAngle 2155 and SampleDirection 2156 2157 7 February 12: V.Ivant (emutils-V09-05-00) 2158 - G4VAtomDeexcitation - add activation of deexcitation for the world 2159 if deexcitation is activated but G4Regions for deexcitation 2160 are not defined 2161 2162 10 November 11: V.Ivant (emutils-V09-04-51) 2163 - G4LossTableManager, G4EmModelManager - fixed defects reported by 2164 Coverity - private assignment operator and copy constructor added 2165 2166 3 November 11: V.Ivant (emutils-V09-04-50) 2167 - G4VEnergyLossProcess, G4VEmProcess - a check on zero kinetic 2168 energy PostStep is added; the status is changed to fStopAndKill or 2169 fStopButAlive 2170 2171 1 November 11: V.Ivant (emutils-V09-04-49) 2172 - G4VEnergyLossProcess, G4VEmProcess, G4EmBiasingManager - fixed 2173 initialisation and improved cout for usage of secondary biasing 2174 2175 31 October 11: V.Ivant (emutils-V09-04-48) 2176 - G4LossTableBuilder - fixed initialisation logic for usage by 2177 G4EnergyLossForExtrapolator 2178 2179 31 October 11: V.Ivant (emutils-V09-04-47) 2180 - G4VEnergyLossProcess, G4VEmProcess, G4VMultipleScattering, 2181 G4LossTableBuilder - fixed initialisation for the case of usage 2182 of variable density materials and a session with more than 1 run 2183 2184 28 October 11: V.Ivant (emutils-V09-04-46) 2185 - G4VEnergyLossProcess, G4VEmProcess, G4EmProcessOptions, 2186 G4EnergyLossMessenger - added a flag of change of weight for 2187 cross section biasing and forced interaction option 2188 2189 21 September 11: V.Ivant (emutils-V09-04-45) 2190 - G4VEnergyLossProcess, G4EmBiasingManager, G4EmProcessOptions, 2191 G4EnergyLossMessenger - added upper limit in energy for secondary 2192 particle biasing 2193 - G4EnergyLossMessenger - updated UI commands for PIXE 2194 2195 16 September 11: V.Ivant (emutils-V09-04-44) 2196 - G4VEnergyLossProcess - added extra protection for correction to 2197 energy loss to avoid ions travel forever 2198 2199 12 September 11: V.Ivant (emutils-V09-04-43) 2200 - G4EmBiasingManager - fixed biasing weight for splitting 2201 2202 12 September 11: V.Ivant (emutils-V09-04-42) 2203 - G4EnergyLossMessenger - fixed new biasing UI command 2204 2205 10 September 11: V.Ivant (emutils-V09-04-41) 2206 - G4VEnergyLossProcess, G4EmBiasingManager, G4EmProcessOptions, 2207 G4EnergyLossMessenger - added Russian roulette 2208 2209 7 September 11: V.Ivant (emutils-V09-04-40) 2210 - G4VEnergyLossProcess, G4EmBiasingManager, G4VEmProcess - updated 2211 computation of weight for biasing options 2212 2213 7 September 11: V.Ivant (emutils-V09-04-39) 2214 - G4VEnergyLossProcess, G4EmBiasingManager, G4EmProcessOptions, 2215 G4EnergyLossMessenger - added bremsstrahlung splitting 2216 - G4VEmModel - removed obsolete method SampleDeexcitationAlongStep 2217 2218 29 August 11: V.Ivant (emutils-V09-04-38) 2219 - G4VEnergyLossProcess - fixed initialisation for alpha and He3 2220 introduced in previous tag 2221 2222 29 August 11: V.Ivant (emutils-V09-04-37) 2223 - G4VEnergyLossProcess - fixed initialisation for ions defined by 2224 DNA ion manager 2225 - G4LossTableBuilder - fixed computation of range table for the case 2226 of zero dedx in first bins of dedx table 2227 2228 26 August 11: V.Ivant (emutils-V09-04-36) 2229 - G4LossTableManager, G4EmModelManager - implemented new G4Exceptions 2230 - G4EnergyLossMessenger, G4EmProcessOptions - added new UI commands 2231 for cross section biasing and forced interaction 2232 2233 18 August 11: V.Ivant (emutils-V09-04-35) 2234 - G4EmModelManager - bug fix in cross section computation for the case 2235 of more than 1 model; effect is seen for results 2236 when low cuts are used for low-energy Physics Lists 2237 2238 29 July 11: B.Morgan (emutils-V09-04-34) 2239 - sources.cmake : Fixed extension of G4EmBiasingManager.cc in SOURCES list. 2240 2241 28 July 11: V.Ivant (emutils-V09-04-33) 2242 - G4VEmProcess, G4VEnergyLossProcess - removed old obsolete 2243 deexcitation scheme; added forced interaction biasing 2244 - G4EmBiasingManager - new class for forced biasing 2245 2246 20 July 11: V.Ivant (emutils-V09-04-32) 2247 - G4VEmProcess, G4VEnergyLossProcess - improved computations 2248 for the base material approach; added cross section biasing option; 2249 removed old methods of sampling deexcitation PostStep 2250 - G4VEmModel, G4VAtomDeexcitation - cleanup method names and comments 2251 - G4EmModelManager - do not create local copy of vector with 2252 production thresholds (reducing run time memory); 2253 added printout of deexcitation flag per model 2254 2255 29 June 11: V.Ivant (emutils-V09-04-31) 2256 - G4EmModelManager - fixed smoothing function for cross section 2257 computations 2258 2259 21 May 11: V.Ivant (emutils-V09-04-30) 2260 - G4LossTableBuilder - removed forgotten debug printout 2261 2262 21 May 11: V.Ivant (emutils-V09-04-29) 2263 - G4LossTableBuilder, G4LossTablemanager - fixed initialisation of base 2264 material for the case of change of number production cuts between runs 2265 2266 16 May 11: V.Ivant (emutils-V09-04-28) 2267 - G4VEmModel - fixed non-accurate stl vector initialisation 2268 2269 06 May 11: V.Ivant (emutils-V09-04-27) 2270 - G4VAtomDeexcitation - improved printout 2271 - G4EnergyLossTables, G4VEnergyLoss - fixed Coverity warnings 2272 2273 30 May 11: V.Ivant (emutils-V09-04-26) 2274 - G4LossTableBuilder - fixed initialisation of variable density for the 2275 case when PhysicsTables are not used 2276 2277 27 May 11: V.Ivant (emutils-V09-04-25) 2278 - G4VEmProcess, G4VEnergyLossProcess - fixed previous tag for the case 2279 when tables are not built 2280 - G4VAtomDeexcitation - (A.Mantero) fixed inline method 2281 2282 27 May 11: V.Ivant (emutils-V09-04-24) 2283 - G4LossTablemanager, G4LossTableBuilder, G4VEmProcess, 2284 G4VMultipleScattering, G4VEnergyLossProcess - added base material 2285 approach - build Physics Vectors only for base materials and 2286 scale values for other materials 2287 2288 24 May 11: V.Ivant (emutils-V09-04-23) 2289 - G4EmModelManager, G4EmCalculator - changed smoothing function 2290 between two models, effect is seen for protons in non-NIST water 2291 2292 16 May 11: V.Ivant (emutils-V09-04-22) 2293 - G4VEnergyLoss - fixed gcc-4.6.0 warnings 2294 2295 04 May 11: V.Ivant (emutils-V09-04-21) 2296 - G4VEmProcess - removed parasitic printout due to tag 19 2297 2298 04 May 11: V.Ivant (emutils-V09-04-20) 2299 - Fixed Coverity warnings 2300 2301 03 May 11: V.Ivant (emutils-V09-04-19) 2302 03 May 11: V.Ivant (emutils-V09-04-18) 2303 - G4EmProcessSubType - added fNuclearStopping=8 sub-type 2304 2305 01 May 11: V.Ivant (emutils-V09-04-17) 2306 - G4VEmProcess - allow to use the Integral approach also if Physics 2307 Table is not built (before was forbidden) 2308 2309 19 April 11: V.Ivant (emutils-V09-04-16) 2310 - G4VEnergyLossProcess - start cross section table from energy threshold 2311 and not from minimal kinetic energy, number of bins is reduced, cross 2312 section starts from zero value 2313 2314 06 April 11: V.Ivant (emutils-V09-04-15) 2315 06 April 11: V.Ivant (emutils-V09-04-14) 2316 - G4ElectronIonPair - (V.Grichine) substitute Gaussian sampling 2317 by Gamma function sampling of number of electron/ion pairs 2318 2319 31 March 11: V.Ivant (emutils-V09-04-13) 2320 - G4VEmModel - use linear interpolation for G4EmElementSelectors 2321 to avoid numerical inprecision for small number of bins 2322 (increase number of bins will require extra memory) 2323 2324 30 March 11: V.Ivant (emutils-V09-04-12) 2325 - G4VEmModel - rename private members to avoid usage of the same names 2326 2327 28 March 11: V.Ivant (emutils-V09-04-11) 2328 - Return old methods in G4VAtomDeexcitation, which are still used 2329 in EM examples 2330 2331 28 March 11: V.Ivant (emutils-V09-04-10) 2332 - Cleanup G4VAtomDeexcitation methods 2333 2334 28 March 11: A. Mantero (emutils-V09-04-09) 2335 - Updated G4VAtomDeexcitation methods names and in referring classses 2336 - Created G4AtomicShellEnumerator (from old G4VAtomicDeexcitation) 2337 2338 28 March 11: V.Ivant (emutils-V09-04-08) 2339 - G4VMscModel - updated signature of GetRange and GetEnergy methods 2340 - G4EmProcessOptions - improved names of methods for deexcitation 2341 2342 25 March 11: V.Ivant (emutils-V09-04-07) 2343 - G4VMscModel - added Get/Set method for ionisation process 2344 - G4VMultipleScattering - use these methods in run time 2345 2346 18 March 11: V.Ivant (emutils-V09-04-06) 2347 - G4VMscModel - add protected method for common computation of 2348 range and energy for all msc models 2349 - G4EmProcessOptions, G4EnergyLossMessenger, G4LossTableManager, 2350 G4VAtomDeexcitation - cleanup options for deexcitation 2351 2352 04 March 11: V.Ivant (emutils-V09-04-05) 2353 - G4VEmModel - removed obsolete method MinEnergyCut 2354 - G4VMultipleScattering - fix problem of initialisation of true 2355 step length when multiple scattering model is inactive (needed for 2356 DNA Phsyics List) 2357 2358 02 February 11: V.Ivant (emutils-V09-04-04) 2359 - G4VEmModel - reduced in 2 times memory for element selectors data 2360 (ATLAS concern) 2361 2362 31 January 11: V.Ivant (emutils-V09-04-03) 2363 - G4VEmModel - fixed problem of deexcitation flags - allow 2364 set this flag by user command 2365 2366 17 January 11: V.Ivant (emutils-V09-04-02) 2367 - G4LossTableManager - fixed problem happens at initialisation, when 2368 bremsstrahlung process is instantiated but not added to the 2369 Physics List 2370 2371 04 January 11: V.Ivant (emutils-V09-04-01) 2372 - G4EmCalculator, G4VAtomDeexcitation, G4EnergyLossMessenger - 2373 cleanup logic of activation of deexcitation and computation of 2374 ionisation cross sections 2375 2376 24 December 10: V.Ivant (emutils-V09-04-00) 2377 - G4VEnergyLossProcess - fixed minor memory leak at initialisation 2378 - G4EnergyLossTables - fixed Coverity warnings 2379 2380 2 December 10: V.Ivant (emutils-V09-03-30) 2381 - G4EmCorrections - fixed minor memory leak at initialisation 2382 2383 23 November 10: V.Ivant (emutils-V09-03-29) 2384 - G4EmProcessOptions, G4EnergyLossMessenger - added forgotten option 2385 2386 22 November 10: V.Ivant (emutils-V09-03-28) 2387 - G4VAtomDeexcitation - added lowestKinEnergy (fixed FPE report) 2388 2389 21 November 10: V.Ivant (emutils-V09-03-27) 2390 - G4VAtomDeexcitation, G4EmProcessOptions - fixed initialisation 2391 - G4EmCalculator - improved cross section calculation 2392 2393 18 November 10: V.Ivant (emutils-V09-03-26) 2394 - G4VAtomDeexcitation, G4VEnergyLossProcess improved printout at 2395 initialisation 2396 2397 16 November 10: V.Ivant (emutils-V09-03-25) 2398 - G4EmCorrections - used G4PhysicsVector for approximation of the 2399 Barkas correction; cleanup comments 2400 2401 13 November 10: V.Ivant (emutils-V09-03-24) 2402 - G4EmCorrections - fixed computation of shell corrections according 2403 to prescriptions of original papers; added Bichsel approximation 2404 for Barkas corrections for the large Z > 47 2405 2406 04 November 10: V.Ivant (emutils-V09-03-23) 2407 - Fixed part of problems reported by the Coverity tool 2408 (mainly initialisation) 2409 2410 25 October 10: V.Ivant (emutils-V09-03-22) 2411 - Fixed problems reported by the Coverity tool (mainly initialisation) 2412 2413 15 October 10: V.Ivant (emutils-V09-03-21) 2414 - G4VEmAngularDistribution - new general interface 2415 - G4VBremAngularDistribution moved from lowenergy 2416 - G4VEmModel - G4VEmAngularDistribution added and Get/Set methods 2417 - G4VEnergyLossProcess - fixed bug #1141 (L.Pandola) 2418 2419 07 September 10: V.Ivant (emutils-V09-03-20) 2420 - G4VMscModel - in computation of the displacement added 2421 a protection limited displacement to be incide current 2422 volume (address bug #1128) 2423 - G4LossTableManager - a little cleanup of interfaces 2424 - G4ElectronIonPair - added method SampleNumberOfIonsAlongStep 2425 - G4EmCalculator - return back tag 18 2426 2427 23 August 10: V.Ivant (emutils-V09-03-19) 2428 G4VEnergyLossProcess - minor optimisation of PostStepDoIt (in some cases 2429 one call to the log of random number less) 2430 2431 17 August 10: V.Ivant (emutils-V09-03-18) 2432 G4VEmProcess, G4VEnergyLossProcess, G4VMultipleScattering, G4VEmModel, 2433 G4EmMultiModel - substituted obsolete method GetDefinition() of the class 2434 G4DynamicParticle by the new one GetParticleDefinition() 2435 2436 29 July 10: V.Ivant (emutils-V09-03-17) 2437 G4EmMultiModel - fixed and cleaned up 2438 G4VMultipleScattering - added more detailed printout for kaon+ 2439 G4LossTableManager - added pointer and access method to G4ElectronIonPair 2440 2441 4 June 10: V.Ivant (emutils-V09-03-16) 2442 Previous tag was set from wrong directory 2443 2444 4 June 10: V.Ivant (emutils-V09-03-15) 2445 G4EmConfigurator - fixed case of more than one model is added per a process 2446 2447 4 June 10: V.Ivant (emutils-V09-03-14) 2448 G4EmCorrections - moved G4AtomicShell header into source 2449 2450 26 May 10: V.Ivant (emutils-V09-03-13) 2451 G4VEmModel - added method ChargeSquareRatio to access current charge of an ion 2452 G4VEnergyLossProcess - use this new method 2453 2454 10 May 10: V.Ivant (emutils-V09-03-12) 2455 G4VEmProcess - cleanup printout at initialisation for scattering process 2456 2457 28 April 10: V.Ivant (emutils-V09-03-11) 2458 G4VEmProcess, G4VEnergyLossProcess, G4VEmModel - provided GetCurrentElement method 2459 (addressed bug report #1115 and HyperNews request) 2460 2461 27 April 10: V.Ivant (emutils-V09-03-10) 2462 G4LossTableManager - added class member and a method GetNumberOfBinsPerDecade 2463 G4VEmModel - use GetNumberOfBinsPerDecade and spline flag to initialise 2464 G4EmElementSelector (addressed bug report #1115) 2465 G4EmElementSelector - use spline flag to construct vectors probabilities 2466 G4EmProcessOptions - removed double implementation of initialisation code, 2467 which already exist in G4LossTableManager 2468 G4VEnergyLossProcess - call CorrectionsAlongStep only for ions (minor CPU saving) 2469 2470 23 April 10: V.Ivant (emutils-V09-03-09) 2471 G4VEnergyLossProcess - removed unused variable 2472 2473 12 April 10: V.Ivant (emutils-V09-03-08) 2474 G4EmModelManager - do not use min energy cut defined by models allowing 2475 decreasing of cuts in limit to zero 2476 G4EmCalculator - fixed GetCrossSection method 2477 2478 12 April 10: V.Ivant (emutils-V09-03-07) 2479 G4LossTableManager - added methods PreparePhsyicsTables, BuildPhysicsTables, 2480 and changed initialisation of models via G4EmConfigurator 2481 G4VEnergyLossProcess, G4VEmProcess, G4VMultipleScattering - added 2482 calls of new G4LossTableManager methods 2483 PreparePhsyicsTables, BuildPhysicsTables 2484 G4EmConfigarator - upgraded and fixed old problem 2485 2486 06 April 10: V.Ivant (emutils-V09-03-06) 2487 G4VEnergyLossProcess - use the same method to build cross section table 2488 as DEDX table (use copy constructors to reduce 2489 number of calls to std::exp) 2490 G4EmModelManager - cleanup comments 2491 2492 22 March 10: V.Ivant (emutils-V09-03-05) 2493 G4EmCorrections - added protection against large Barkas and Bloch 2494 corrections in the case of large negatively charged 2495 particle (100*e-) - fixed problem reported by ATLAS 2496 G4EmCalculator - cleanup 2497 2498 10 March 10: V.Ivant (emutils-V09-03-04) 2499 G4VEmModel, G4VEmProcess, G4VEnergyLossProcess, G4VMultipleScattering, 2500 G4LossTableManager - reorder inline methods and add comments 2501 2502 05 March 10: V.Ivant (emutils-V09-03-03) 2503 G4VMscModel, G4VMultipleScattering - set skin=1.0 as a default 2504 2505 24 February 10: V.Ivant (emutils-V09-03-02) 2506 G4VEmProcess - move SetBuildTableFlag method from protected to public 2507 2508 17 February 10: V.Ivant (emutils-V09-03-01) 2509 G4VEmProcess - fixed problem for ion processes by adding pointer to 2510 currentParticle which may be different from GenericIon 2511 2512 22 January 10: V.Ivant (emutils-V09-03-00) 2513 G4VEmProcess - added protection against negative cross section 2514 G4VEnergyLossProcess - added protection against negative cross section; 2515 - improved logic in RetrieveTable method 2516 2517 23 November 09: V.Ivant (emutils-V09-02-24) 2518 G4EmConfigurator - fixed bug in selection of models 2519 2520 22 November 09: V.Ivant (emutils-V09-02-23) 2521 G4EmCalculator - take into account CorrectionAlongStep for ions 2522 2523 10 November 09: V.Ivant (emutils-V09-02-22) 2524 G4EmCalculator - added method FindIon; improve computation for ions 2525 allowing to be applied for the model based on ICRU'73 2526 2527 10 November 09: V.Ivant (emutils-V09-02-21) 2528 G4VEmProcess - improved printout 2529 2530 29 September 09: V.Ivant (emutils-V09-02-20) 2531 - G4VMultipleScattering - added SetModel method 2532 - G4EmCorrections - fixed bug reported in phys-list forum #532 2533 - G4ionEffectiveCharge - return back lost protection for zero energy 2534 - G4LossTableManager, G4EmProcessOptions, G4EnergyLossMessenger - added 2535 parameter FactorForAngleLimit, Set/Get methods and UI command 2536 to be used computation of limit on -t (invariant momentum transfer) 2537 inside single scattering and G4WentzelVI models 2538 2539 29 September 09: V.Ivant (emutils-V09-02-19) 2540 - G4EmElementSelector - fixed forgotten migration to updated G4PhysicsVector 2541 2542 25 September 09: V.Ivant (emutils-V09-02-18) 2543 - G4VEmModel - insure definition of pointer to the G4MaterialCutsCouple 2544 object both at initialisation and in run time 2545 - G4EmSaturation - use PDG encoding instead of pointer to G4ParticleDefinition 2546 2547 11 August 09: V.Ivant (emutils-V09-02-17) 2548 - G4EmModelManager - reduced length of internal arrays, simplified 2549 initialisation, in particular, smoothing procedure, the size of 2550 executable should be reduced 2551 - G4VEmProcess, G4VMultipleScattering, G4VEnergyLossProcess, 2552 G4LossTableBuilder - use copy constructors to create Physics Vectors in 2553 order to reduce number of calls to log function 2554 2555 30 July 09: V.Ivant (emutils-V09-02-16) 2556 - G4VEmProcess, G4VMultipleScattering, G4VEnergyLossProcess - fixed 2557 bug in RetrieveTables - check that each its PhysicsVector was 2558 retrieved before set of SplineFlag 2559 2560 24 July 09: V.Ivant (emutils-V09-02-15) 2561 - G4AtomicShell class moved from lowenergy 2562 - G4VEmProcess, G4VMultipleScattering, G4VEnergyLossProcess - added 2563 initialisation of polarAngleLimit and highEnergyLimit parameters 2564 for all models 2565 2566 22 July 09: V.Ivant (emutils-V09-02-14) 2567 - G4VEmProcess - modified method SelectModel required for the 2568 G4NuclearStopping process 2569 2570 20 July 09: V.Ivant (emutils-V09-02-13) 2571 - G4VMultipleScattering - added initialisation of generic msc model 2572 parameters in this base class (allowing 2573 to overwrite default models) 2574 - G4EmConfigurator - cleanup 2575 - G4VMscModel - set facsafety=0.3 as it is defined in Urban models 2576 2577 9 July 09: V.Ivant (emutils-V09-02-12) 2578 - G4VEnergyLossProcess, G4VEmProcess, G4VMultipleScattering, 2579 G4LossTableBuilder - used updated G4PhysicsVector (no hidden bin anymore); 2580 used Energy() and Value() methods instead of 2581 GetLowEdgeEnergy() and GetValue() 2582 - G4VEnergyLossProcess - fixed retrieve from ASCII files 2583 - G4VMultipleScattering - remove method obsolete GetMscContinuesStepLimit 2584 - G4VAtomDeexcitation - a new header file 2585 2586 27 May 09: V.Ivant (emutils-V09-02-11) 2587 - G4VMultipleScattering - discarded changes from the previous tag 2588 2589 26 May 09: V.Ivant (emutils-V09-02-10) 2590 - G4VEmModel: remove protection in from previous tag and include protection 2591 to G4ParticleChangeForLoss; 2592 more save initialisation of G4EmElementSelectors 2593 - G4VMultipleScattering - added a protection against zero kinetic energy 2594 - G4EmElementSelector - do not use spline 2595 2596 22 May 09: V.Ivant (emutils-V09-02-09) 2597 - Added protection into G4VEmModel for zero input energy 2598 2599 15 May 09: V.Ivant (emutils-V09-02-08) 2600 - Added new testG4EnergyLossTables and fixed GNUmakefile for tests 2601 2602 10 May 09: V.Ivant (emutils-V09-02-07) 2603 G4EmElementSelector - added protection for zero cross section at first and last 2604 bins of physics vector 2605 G4VMscModel, G4VMultipleScattering - set default Range Factor to 0.04 2606 2607 17 April 09: V.Ivant (emutils-V09-02-06) 2608 - G4EmModelManager - fixed energy range selection algorithm for the case of 2609 a small intersection of model energy intervals 2610 - G4VEnergyLossProcess, G4VEmProcess, G4VMultipleScattering - set high enegry 2611 limit 10 TeV and number of bins 77 2612 2613 08 April 09: V.Ivant (emutils-V09-02-05) 2614 - G4LossTableManager - added G4EmConfigurator providing easier addition of 2615 models per region 2616 - G4VMultipleScattering, G4VEmProcess, G4VEnergyLossProcess: added 2617 initialisation of the G4EmConfigurator 2618 2619 08 April 09: V.Ivant (emutils-V09-02-04) 2620 - G4EmModelManager - fixed energy range selection algorithm for the case 2621 when there is an intersection of energy regions of standard 2622 and low-energy models, 2623 - reduce internal vectors if no model per region are initialized. 2624 - do not initilise unused models. 2625 - G4VEmModel - msc methods are moved to G4VMscModel, added protected 2626 methods for initialisation of ParticleChange 2627 - G4VMultipleScattering, G4VEmProcess, G4VEnergyLossProcess: 2628 methods for initialisations are moved from inline to source 2629 2630 26 February 09: V.Ivant (emutils-V09-02-03) 2631 G4EmConfigurator - fixed for the case if only fluctuation model is set 2632 and main model is default 2633 2634 22 February 09: V.Ivant (emutils-V09-02-02) 2635 - G4VEmModel - make methods to access geometry protected, added new 2636 method SetSampleZ, added geommax private member 2637 - G4EmCalculator - added possibility to be used by DNA processes: 2638 take into account special DNA particles 2639 2640 18 February 09: V.Ivant (emutils-V09-02-01) 2641 G4VEmModel, G4VEmFluctuationModel, G4VEnegryLossProcess, G4VEmProcess, 2642 G4VMultipleScattering - move all virtual methods to source, update comments 2643 G4VEmModel - added flagDeexcitation and Get/Set methods 2644 G4VEnegryLossProcess, G4VEmProcess - added calls to deexcitation PostStep 2645 G4EmProcessOptions - added ActivateDeexcitation method 2646 G4EnergyLossMessenger - added /process/em/deexcitation UI command 2647 G4LossTableBuilder - added protection in BuildRangeTable against zero dedx 2648 2649 27 January 09: V.Ivant (emutils-V09-02-00) 2650 G4VEmModel - added method SampleDeexcitationAlongStep 2651 G4VEnegryLossProcess - added deexcitation AlongStep per region 2652 G4VMscModel - added methdos: InitialiseSafetyHelper, ComputeSafety, 2653 ComputeGeomLimit, ComputeDisplacement 2654 G4VEmProcess - added possibility to set more than 1 model 2655 2656 20 November 08: V.Ivant (emutils-V09-01-37) 2657 G4EmConfigurator - fixed energy interval selection for a model 2658 G4VMultipleScattering - set process sub-type 10 to distinguish with 2659 single Coulomb scattering 2660 2661 13 Novemver 08: A.Schaelicke (emutils-V09-01-36) 2662 G4LossTableManager - changed default LPM effect to ON again 2663 G4VEmModel - (VI) add LPM flag and Get/Set methods 2664 2665 12 November 08: V.Ivant (emutils-V09-01-35) 2666 G4VEmModel - fixed memory leak by destruction G4EmElementSelectors 2667 G4EmSaturation - activate saturation for energy deposition due to 2668 photo-electric effect 2669 2670 24 October 08: V.Ivant (emutils-V09-01-34) 2671 G4EmProcessSubType - moved optical processes enumeration to optical directory 2672 2673 20 October 08: V.Ivant (emutils-V09-01-33) 2674 G4EnergyLossMessenger - added /process/em/applyCuts command 2675 2676 17 October 08: V.Ivant (emutils-V09-01-32) 2677 G4VEnergyLossProcess, G4VEmProcess, G4VMultipleScattering set number 2678 of bins for tables 7 per decade 2679 2680 15 October 08: V.Ivant (emutils-V09-01-31) 2681 G4VEnergyLossProcess, G4VEmProcess, G4VMultipleScattering improved cout 2682 2683 14 October 08: V.Ivant (emutils-V09-01-30) 2684 G4VEmModel - add secondaryThreshold variable and Get/Set methods 2685 G4EmCorrections - define the range of correction vector 25 keV - 2.5 MeV, 2686 as it is in ICRU'73 table, use 20 bins 2687 G4LossTableManager - set spline option "true" and flagLPM "false" by default 2688 G4VEnergyLossProcess, G4VEmProcess, G4VMultipleScattering set default 2689 table size 0.1 keV - 100 TeV in 60 bins 2690 G4EmModelManager - included G4EmProcessSubType.hh header 2691 G4EmTableType.hh - changed enumeration names fIonisation -> fIsIonisation, 2692 fSubIonisation -> fIsSubIonisation to avoid clash with 2693 sub-type enumeration name 2694 2695 21 September 08: V.Ivant (emutils-V09-01-29) 2696 G4EmCorrections - do not compute ion corrections if for ions 2697 G4hIonisation process is used 2698 2699 21 September 08: V.Ivant (emutils-V09-01-28) 2700 G4ionEffectiveCharge - remove chargeFactor - return to 01-25 2701 G4VEnergyLossProcess - fixed initialisation; 2702 2703 12 September 08: V.Ivant (emutils-V09-01-27) 2704 G4VEmProcess - improved verbose output 2705 G4VEnergyLossProcess - added pointer to current G4VEmModel; 2706 removed method CorrectionsAlongStep, instead 2707 corresponding method of a model are used; 2708 improved verbose output 2709 G4VEmFluctuationModel - added method SetParticleAndCharge 2710 G4VEmModel - minor optimisations of SelectRandomAtom and SelectIsotope; 2711 added methods GetParticleCharge, GetChargeSquareRatio, 2712 CorrectionsAlongStep, ActivateNuclearStopping needed for 2713 simulation of ion transport 2714 G4EmCorrections - added interfaces to effective charge 2715 G4ionEffectiveCharge - added variable chargeFactor to be used for He ions 2716 2717 29 August 08: V.Ivant (emutils-V09-01-26) 2718 G4VEmProcess, G4VMultipleScattering, G4VEnergyLossProcess - use 2719 new DumpModelList method from G4EmModelManager 2720 in the verbosity output 2721 G4EmModelManager - fixed crash in destructor when verbosity > 1; 2722 fixed selection of models per energy; 2723 update printout with DumpModelList method 2724 2725 21 August 08: V.Ivant (emutils-V09-01-25) 2726 G4VEmModel - add parameter kinEnergy to SetupMaterial method; 2727 set pointer currentElement in ComputeCrossSectionPerAtom 2728 G4EmElementSelector - update usage of methods SetupMaterial and 2729 ComputeCrossSectionPerAtom 2730 2731 3 August 08: V.Ivant (emutils-V09-01-24) 2732 G4EmCorrections - dEdx data for ions are initialised at the start of a run for 2733 materials used in geometry; search for ion/material pairs updated 2734 G4EmCalculator - improved cout 2735 2736 31 July 08: V.Ivant (emutils-V09-01-23) 2737 G4VEmProcess, G4VMultipleScattering, G4VEnergyLossProcess - use verbosity flag 2738 for GetEmModel method 2739 G4VEmModel - use stl vector for cross sections instead of array 2740 2741 21 July 08: V.Ivant (emutils-V09-01-22) 2742 G4VEmModel - added vector of G4ElementSelectors, in which vectors 2743 of relative cross sections per elements of a compound 2744 material are stored; added new methods: 2745 InitialisaElementSelectors and SelectRandomAtom, 2746 G4LossTableBuilder - remove dependence on G4LossTableManager 2747 G4LossTableManager - propagated spline flag to G4LossTableBuilder 2748 2749 15 July 08: V.Ivant (emutils-V09-01-21) 2750 G4EmConfigurator - a new helper class to add model per particle type, 2751 process, energy range and G4Region 2752 G4VEmProcess, G4VEnergyLossProcess - renamed and improved method 2753 "MicroscopicCrossSection" by "CrossSectionPerVolume" 2754 G4VEmModel, G4VEmProcess, G4VMultipleScattering, G4VEnergyLossProcess 2755 reodering of members of classes and improved comments: 2756 - separated members fixed at construction, defined at 2757 ininitialisation, and modified in run time 2758 - improved comments in header files 2759 G4LossTableManager - added register/deregister mechanism and deletion 2760 at the end of job for G4VEmModel 2761 G4EmModelManager - does not delete models anymore 2762 2763 9 July 08: V.Ivant (emutils-V09-01-20) 2764 G4ElectronIonPair - a new helper class to sample number of primary ionisations 2765 in detectors 2766 2767 8 July 08: V.Ivant (emutils-V09-01-19) 2768 G4VEmModel - added inline method ComputeCrossSectionPerAtom 2769 G4LossTableManager and G4EnergyLossTable - remove call to exit() 2770 2771 9 June 08: V.Ivant (emutils-V09-01-18) 2772 G4ionEffectiveCharge - return back Ziegler formula for effective charge of ions; 2773 min effective charge is 1.0 (instead of 0.1) 2774 G4EmCorrections - a minor change of the scale for external ion data 2775 2776 2 June 08: V.Ivant (emutils-V09-01-17) 2777 G4ionEffectiveCharge - use simplified formula for effective charge of ions 2778 2779 28 May 08: V.Ivant (emutils-V09-01-16) 2780 G4VEmModel - added virtual method SetupForMaterial 2781 G4EmElementSelector - helper class to sample random G4Element in a 2782 compound material 2783 2784 28 May 08: V.Ivant (emutils-V09-01-15) 2785 G4VEnergyLossProcess - fixed problem of subcutoff option for ions (ion 2786 ranges were wrong) 2787 G4LossableBuilder - use more precise algorith to compute range for the 2788 case, when spline is used 2789 2790 20 May 08: V.Ivant (emutils-V09-01-14) 2791 - G4EmCorrections - computation of the finite size correction is moved to 2792 the Bethe-Bloch model 2793 2794 11 May 08: V.Ivant (emutils-V09-01-13) 2795 - G4VMultipleScattering - make AlongStepGetPhysicalInteractionLength 2796 method virtual allowing to overwrite it by a derived class - 2797 needed for ion simulation 2798 - G4EmCalculator - fixed bug in computation for ions 2799 2800 21 April 08: V.Ivant (emutils-V09-01-12) 2801 - G4VEmModel, G4VEmProcess, G4VMultipleScattering, G4EnergyLossMessenger 2802 G4EmProcessOptions - introduced polarAngleLimit parameter and Get/Set 2803 methods for single and multiple scattering models 2804 - G4ionEffectiveCharge - fixed initialisation at first event 2805 - G4EmCorrections - review and fix computation of high order corrections 2806 for ions 2807 - G4EmCalculator - updated computations for ions 2808 2809 08 April 08: V.Ivant (emutils-V09-01-11) 2810 - G4VEnergyLossProcess, G4VEmProcess, G4VMultipleScattering, 2811 G4LossTableBuilder - introduced spline 2812 2813 25 March 08: V.Ivant (emutils-V09-01-10) 2814 - G4EmCorrections - precompute EM formfactor for corrections 2815 - G4VEnergyLossProcess - store bremsstrahlung cross sections 2816 2817 25 March 08: V.Ivant (emutils-V09-01-09) 2818 - G4EmCorrections - added cut dependence into finite size correction 2819 - G4VEnergyLossProcess - added cout of linLossLimit 2820 2821 17 March 08: V.Ivant (emutils-V09-01-08) 2822 - G4EmSaturation - added interface with G4Step 2823 2824 14 March 08: mma (emutils-V09-01-07) 2825 - modifs in G4EmSaturation 2826 2827 14 March 08: V.Ivant (emutils-V09-01-06) 2828 - G4EmSaturation - added computation of the average recoil mass, 2829 use Birks coefficient from G4Material 2830 - G4LossTableManager - fixed logic in compute dedx table for an 2831 inactive process 2832 2833 10 March 08: V.Ivant (emutils-V09-01-05) 2834 - G4LossTableManager, G4EmProcessOptions - added Set/Get spline flag 2835 - G4EnergyLossMessenger - added a command "/process/em/spline" 2836 - G4VMultipleScattering - SetSkin method does not change 2837 StepLimitType anymore 2838 - G4VMscModel - new class to define general msc parameters 2839 2840 21 February 08: V.Ivant (emutils-V09-01-04) 2841 - G4EmSaturation - fixed initialisation problem 2842 2843 21 February 08: V.Ivant (emutils-V09-01-03) 2844 - G4EmCorrections - added correction on effective charge for NIST 2845 materials in the IonHighOrderCorrections method 2846 - G4EmSaturation - new helper class 2847 - G4LossTableManager - added GetEmSaturation method 2848 2849 14 February 08: V.Ivant (emutils-V09-01-02) 2850 - G4EmCorrections - added IonBarkasCorrection, IonHighOrderCorrections 2851 and ComputeIonCorrections methods in order to provide a smooth transition 2852 between low-energy parameterization and Bethe-Bloch model 2853 - G4ionEffectiveCharge - use precomputed Z^1/3 values, use expantions 2854 of exp and pow functions, do not perform recomputation if arguments 2855 of methods unchanged 2856 2857 04 February 08: V.Ivant (emutils-V09-01-01) 2858 - G4VEnergyLossProcess - fixed computation of NIEL at the last step 2859 of a particle 2860 2861 11 January 08: V.Ivant (emutils-V09-01-00) 2862 - G4EmCorrections - improve CPU by usage expansions and precalculated 2863 values of Z^0.23 2864 - G4VEnergyLossProcess - fixed list of "collaborative" processes 2865 needed for sub-cutoff option 2866 2867 09 November 07: V.Ivant (emutils-V09-00-13) 2868 - G4VMultipleScattering - set at initialisation that scattering may be 2869 off lectrons (needed for single scattering) 2870 - G4EmModelmanager - add pointers to G4Gamma and G4Positron at 2871 initialisation 2872 2873 07 November 07: V.Ivant (emutils-V09-00-12) 2874 - G4VEnergyLossProcess - simplify logic to switch on/off fluctuations 2875 - G4EmProcessOptions - add forgoten initialisation of G4LossTableManager 2876 parameters together with parameters of concrete 2877 processes (fixed initialisation when options 2878 defined before proceeses are instantiated) 2879 2880 29 October 07: V.Ivant (emutils-V09-00-11) 2881 - G4VEmProcess, G4VEnergyLossProcess, G4VMultipleScattering 2882 cleanup - move virtual method to the source code 2883 - G4VMultipleScattering - use SamleScattering method PostStep 2884 - G4VEmModel - added SampleScattering method for msc models 2885 - G4VEnergyLossProcess - set default flags of fluctuation to "false" 2886 they changed to "true" when first model 2887 of fluctuations is added 2888 2889 08 October 07: V.Ivant (emutils-V09-00-10) 2890 - G4VEmProcess - use cut in PostStepDoIt (before was zero) 2891 2892 04 October 07: V.Ivant (emutils-V09-00-09) 2893 - G4VEnergyLossProcess - fixed problem at destruction 2894 2895 02 October 07: V.Ivant (emutils-V09-00-08) 2896 - G4VEnergyLossProcess, G4VEmProcess, G4VMultipleScattering - fixed 2897 memory leak - proper delete of G4PhysicsTables 2898 2899 27 September 07: V.Ivant (emutils-V09-00-07) 2900 - G4ionEffectiveCharge - use Fermi energy from G4Material and not 2901 recalculate at each step; reorganized formulas - less calls to 2902 exp, log, pow 2903 2904 26 September 07: V.Ivant (emutils-V09-00-06) 2905 - G4VEnergyLossProcess and G4VEmProcess - move virtual function 2906 PostStepGetPhysicalInteractionLength from inline to body of classes 2907 2908 25 September 07: V.Ivant (emutils-V09-00-05) 2909 - G4VEnergyLossProcess and G4VEmProcess - fixed handling zero cross 2910 section in PostStepGetPhysicalInteractionLength method to avoid problem 2911 happans in FanoCavity example when cross section inside cavity is zero 2912 - G4VEmModel - compare cross section with DBL_MIN instead of zero 2913 2914 16 August 07: V.Ivant (emutils-V09-00-04) 2915 - G4EmCalculator - fixed default region name 2916 - G4VEnergyLossProcess - use prestep time for subcutoff secondaries 2917 and do not use GetVelocity method 2918 2919 02 August 07: V.Ivant (emutils-V09-00-03) 2920 - G4VEnergyLossProcess - simplify energy loss computation for the case 2921 of big step (few % faster) 2922 2923 28 July 07: V.Ivant (emutils-V09-00-02) 2924 - G4VEnergyLossProcess - use stl vector of G4VEmModel instead of array 2925 - G4VEmProcess - added cut to ComputeCrossSectionPerAtom method; 2926 added vector of cuts per material for secondaries, 2927 which are needed for single scattering process 2928 2929 16 July 07: V.Ivant (emutils-V09-00-01) 2930 - G4VEmProcess - integral option coupled with buildLambdaTable option: 2931 integral cannot be true if buildLambdaTable is false 2932 2933 11 July 07: V.Ivant (emutils-V09-00-00) 2934 - G4VEmModel - fixed SelectRandomAtom method (last element of compound 2935 was never selected - instead first was taken) 2936 2937 20 June 07: V.Ivant (emutils-V08-03-06) 2938 - G4VEnergyLossProcess add initialisation of preStepKinEnergy before 2939 run in order to fix a problem of test14 reported by Valgrind 2940 2941 14 June 07: V.Ivant (emutils-V08-03-05) 2942 - G4LossTableManager - add deletion of G4EmCorrections in destructor 2943 2944 12 June 07: V.Ivant (emutils-V08-03-04) 2945 - G4VEnergyLossProcess fixed estimation of step limit inside 2946 AlongStepGetPhysicalInteractionLength method - do not use safety 2947 2948 11 June 07: V.Ivant (emutils-V08-03-03) 2949 - G4MscStepLimitType, G4VMultipleScattering, G4EnergyLossMessenger 2950 substitute name "G4v71" -> "Minimal" 2951 2952 23 May 07: V.Ivant (emutils-V08-03-02) 2953 - G4VEnergyLossProcess, G4VEmProcess - remove method SecondaryPostStep 2954 use instead a direct call to selected model 2955 2956 22 May 07: V.Ivant (emutils-V08-03-01) 2957 - G4VEmModel - change interface of SampleSecondary method, it become 2958 void, extra parameter std::vector<G4DynamicParticle*>*, this vector 2959 is now a member of base class G4VEnergyLossProcess, G4VEmProcess, 2960 no new and delete of the vector in the run time. About 5% speadup 2961 of EM shower simulation 2962 - G4VEnergyLossProcess, G4VEmProcess, G4VMultipleScattering modified 2963 to follow this new interface 2964 2965 21 May 07: V.Ivant (emutils-V08-03-00) 2966 21 May 07: V.Ivant (emutils-V08-02-12) 2967 - G4VEnergyLossProcess - speadup the code by added implementation 2968 method PostStepGetPhysicalInteractionLength; 2969 added methods InitialiseStep and InitialiseMassCharge 2970 - G4VEmProcess - speadup the code by added implementation 2971 method PostStepGetPhysicalInteractionLength; 2972 add comments to header and inline methods 2973 2974 20 May 07: V.Ivant (emutils-V08-02-11) 2975 - G4VMultipleScattering - speadup the code by added implementation 2976 of method AlongStepGetPhysicalInteractionLength and 2977 do not use ContinuousStepLimit; also added implementation 2978 of method PostStepGetPhysicalInteractionLength 2979 - G4VEnergyLossProcess - speadup the code by added implementation 2980 method AlongStepGetPhysicalInteractionLength and 2981 do not use ContinuousStepLimit 2982 2983 18 May 07: V.Ivant (emutils-V08-02-10) 2984 - G4EnergyLossMessenger - make new UI sub-directory "/process/msc" 2985 and reorganise UI commands for msc 2986 processes; use G4EmProcessOptions as 2987 an interface to all EM processes 2988 - G4LossTableManager - remove set msc parameters 2989 - G4EmProcessOptions - update interface to msc processes, add 2990 extra methods to set parameters 2991 - G4VEnergyLossProcess - cleanup comments and reorgnize code for 2992 easier reading; move short methods to inline; 2993 - G4VMultipleScattering - cleanup comments and reorgnize code for 2994 easier reading; move short methods to inline; 2995 add method to set msc parameters 2996 - G4MscStepLimitType - is added 2997 2998 10 May 07: V.Ivant (emutils-V08-02-09) 2999 - integrated fixes of emutils-V08-02-06a 3000 3001 25 April 07: V.Ivant (emutils-V08-02-08) 3002 - G4VEnegryLossProcess - move initialisation of safety helper to 3003 BuildPhysicsTable 3004 3005 12 April 07: V.Ivant (emutils-V08-02-07) 3006 - G4VEnegryLossProcess - use unique G4SafetyHelper 3007 - G4VEmProcess - remove double call to Clear method 3008 3009 08 May 07: V.Ivant (emutils-V08-02-06a) 3010 - G4VEnegryLossProcess - use linearLossLimit 0.05 as in 8.2 3011 - G4EmCorrections - fix division by zero by using ion mass from G4IonTable 3012 3013 19 March 07: V.Ivant (emutils-V08-02-06) 3014 - G4VMultipleScattering - add protection against zero step or energy 3015 - G4EmModelManager - add maxCutInRange variable for sub-cutoff option 3016 - G4EmCalculator - add method ComputeEnergyCutFromRangeCut 3017 - G4EnergyLossMessenger - send message "/run/physicsModified" after all 3018 commands, which require reinitialisation 3019 - G4VEnergyLossProcess - use SafetyHelper instead of Navigator 3020 - add protection agains zero-length step 3021 3022 16 February 07: V.Ivant (emutils-V08-02-05) 3023 - G4VEnegryLossProcess - change initialisation: linLossLimit=1.e-6 3024 improve precision of energy loss for high 3025 energy incident and high cut 3026 3027 13 February 07: V.Ivant (emutils-V08-02-04) 3028 - G4LossTableManager, G4EmProcessOptions, G4EnergyLossMessenger 3029 add command MscSkin, linearLossLimit 3030 - G4VMultipleScattering - add SetSkin and Skin methods 3031 - G4LossTableBuilder - use more precise algorithm to build inverse 3032 range table using G4LPhysicsFreeVector 3033 3034 07 February 07: V.Ivant (emutils-V08-02-03) 3035 - G4LossTableManager, G4EmProcessOptions, G4EnergyLossMessenger 3036 add command MscLateralDisplacement 3037 3038 16 January 07: V.Ivant (emutils-V08-02-02) 3039 - G4LossTableBuilder - fill new vector for dedx (do not reuse old) 3040 - G4LossTableManager - fix problen of reinitialisation for the next run 3041 after activate/desactivate energy loss process 3042 - G4VEmEnergyLossProcess - add members theIonisationTable and 3043 theSubIonisationTables in order to save 3044 separately total energy loss and energy 3045 loss due to ionisation; 3046 3047 15 January 07: mma (emutils-V08-02-01) 3048 - G4VEmEnergyLossProcess - add SetEmModel(index) add SetFluctModel() 3049 3050 11 January 07: V.Ivant 3051 - G4LossTableManager - fix problen of initialisation 3052 - G4VEmEnergyLossProcess - fix subcutoff option for bremsstrahlung 3053 3054 10 November 06: V.Ivant (emutils-V08-01-06) 3055 - G4EnergyLossMessenger - add commands binsDEDX, binsLambda 3056 3057 23 October 06: V.Ivant (emutils-V08-01-05) 3058 - G4LossTableManger - add method GetEnergyLossProcess 3059 - G4EmCalculator - 10 keV - 1 keV energy to access lowEnergy ionisation 3060 3061 29 Septenber 06: V.Ivant (emutils-V08-01-04) 3062 - G4EmCalculator add computation of smoothing factor for dedx of hadrons/ions 3063 3064 13 September 06: mma (emutils-V08-01-03) 3065 - G4VEmProcess: add function SetModel( G4VEmModel* ) 3066 3067 29 August 06: V.Ivant (emutils-V08-01-02) 3068 - G4VEmModel add member currentElement and protected Get/Set methods 3069 3070 15 June 06: V.Ivant (emutils-V08-01-01) 3071 - G4VEnergyLossProcess - make protected LambdaPhysicsVector method 3072 - G4ionEffectiveCharge - add protection for NULL pointer to material 3073 3074 05 July 06: V.Ivant (emutils-V08-01-00) 3075 - G4LossTableManager - do not clear loss table map to avoid crash for 3076 activate/desactivate regime with ion gun, 3077 propagate 'RandomStep' flag to processes 3078 3079 07 June 06: V.Ivant (emutils-V08-00-20) 3080 - G4VEnergyLossProcess - Do not change particle momentum AlongStep 3081 3082 02 June 06: V.Ivant (emutils-V08-00-19) 3083 - G4EmCorrections - fix compilation warnings at SUN 3084 3085 22 May 06: V.Ivant (emutils-V08-00-18) 3086 - G4EmProcessOptions, G4LossTableManager - add Get/SetBremsstrahlungTh 3087 method requested by CMS 3088 - G4ionEffectiveCharge make upper limit of the model proportional to Z 3089 3090 14 May 06: V.Ivant (emutils-V08-00-17) 3091 - G4VEnergyLossProcess, G4VEmProcess, G4VMultipleScattering - add 3092 NumberOfModels method 3093 - G4VEnergyLossProces - add random step sampling and minor fix subcut 3094 3095 13 May 06: V.Ivant (emutils-V08-00-16) 3096 - G4EmCalculator and G4EmCorrections - add correction from user data 3097 on stopping power 3098 - G4VEnergyLossProcess, G4VEmProcess, G4VMultipleScattering - add 3099 GetModelByIndex method 3100 3101 10 May 06: V.Ivant (emutils-V08-00-15) 3102 - G4LossTableMessenger - add command MscStepLimitation 3103 - G4LOssTableManager - add methods SetMscStepLimitation, FacRange, 3104 and MscFlag 3105 3106 04 May 06: V.Ivant (emutils-V08-00-14) 3107 - G4EmCorrections - fix compilation warning at SUN 3108 3109 28 April 06: V.Ivant (emutils-V08-00-13) 3110 - G4EmCalculator - remove debug output 3111 - G4EmCorrections - add finite size correction, cleanup other 3112 - G4ionEffectiveCharge - extend upper limit to 50 MeV 3113 3114 18 April 06: V.Ivant (emutils-V08-00-12) 3115 - G4EmCalculator - fix GetCrossSectionPerVolume problem for gamma 3116 3117 10 April 06: V.Ivant (emutils-V08-00-11) 3118 - Add flag of LPM effect to G4LossTableMessenger, G4LossTableManager and 3119 G4EmProcessOptions 3120 - fix problem of activate/desactvate in G4LossTableManager 3121 3122 29 March 06: V.Ivant (emutils-V08-00-10) 3123 - G4LossTableBuilder fix compilation warning at g++3.4.4 3124 3125 28 March 06: V.Ivant (emutils-V08-00-09) 3126 - G4VEnergyLossProcess - add store energy loss tables for bremsstrahlung 3127 - G4LossTableBuilder & G4LossTableManager - fix logic to ensure rebuild PhysicsTable 3128 in the regime activate/desactivate processes 3129 - G4VEmProcess - fix printout 3130 3131 23 March 06: V.Ivant (emutils-V08-00-08) 3132 - G4VEnergyLossProcess add SetDynamicMassCharge (used by ionIonisation) 3133 use flag isIonisation AlongStep, PrintInfo, and StoreTables 3134 - G4LossTableManager set flag isIonisation for processes 3135 - G4EmCalculator add public methods ComputeTotalDEDX, ComputeElectronicDEDX 3136 update GetDEDX for ions 3137 3138 14 March 06 (mma) (emutils-V08-00-07) 3139 - corrections in G4EmCalculator::GetCrossSectionPerVolume, 3140 GetCrossSectionPerAtom, ComputeCrossSectionPerAtom 3141 3142 07 March 06: V.Ivant (emutils-V08-00-06) 3143 - Complete design iteration for msc (V.Ivanchenko) 3144 - Add G4DummyModel (V.Ivanchenko) 3145 3146 07 March 06: V.Ivant (emutils-V08-00-05) 3147 - Optimize interfaces to Msc model (G4VEmModel and G4VMultipleScattering) 3148 3149 17 February 06: V.Ivant (emutils-V08-00-04) 3150 - G4VmultipleScattering - Lambda table keep cross section not mfp 3151 - remove obsolete interface G4VSCProcessor.hh 3152 3153 06 February 06 mma (emutils-V08-00-03) 3154 - Added function G4VEmModel::ComputeMeanFreePath() (mma) 3155 3156 01 February 06 3157 - G4VEmProcess::ComputeCrossSectionPerAtom(): put default value A=0, 3158 G4VEmModel::ComputeCrossSectionPerAtom(): put default value A=0, 3159 to keep compatibility with v5.2 (mma) 3160 3161 26 January 06: V.Ivant (emutils-V08-00-02) 3162 - add method GetRangeFromRestricteDEDX for later replacement of GetRange(VI) 3163 - G4VEnergyLossProcess - improve cout (VI) 3164 - G4VEnergyLossProcess - Fix subcutoff simulation (VI) 3165 3166 20 January 06: V.Ivant (emutils-V08-00-01) 3167 - Add G4EmTableType.hh enumerator (VI) 3168 - Use G4EmTableType to reduce methods with practically identical code (VI) 3169 - G4VEnergyLossProcess - recalculation of presafety for subcutoff 3170 update energy constrain for subcutoff 3171 add energy correction to subcutoff (VI) 3172 3173 11 January 06: V.Ivant (emutils-V08-00-00) 3174 - G4VEnergyLossProcess - simplify subcutoff calculation (VI) 3175 - G4EmCalculator - add GetCSDARange (VI) 3176 - G4VEmProcess - remove dependence on G4NistManager (VI) 3177 - Substitute PreciseRange -> CSDARange (VI) 3178 - Substitute SetStepLimits -> SetStepFunction (VI) 3179 - G4VEnergyLossProcess - remove minStepLimit member and use finalRange (VI) 3180 - G4VEnergyLossProcess - reset currentCouple when StepFunction is changed (VI) 3181 3182 05 December 05: V.Ivant (emutils-V07-01-13) 3183 - G4EmProcessOptions - fix verbosity definition for energy loss processes 3184 3185 29 November 05: V.Ivant (emutils-V07-01-12) 3186 - G4EmModelmanager - add protection for arithmetic operations with cut=DBL_MAX 3187 3188 26 November 05: V.Ivant (emutils-V07-01-11) 3189 - G4EmCalculator - upgrade printout 3190 - G4EmCorrection - fix on calculation of effective charge and Mott correction 3191 for heavy ions 3192 3193 15 November 05: V.Ivant (emutils-V07-01-10) 3194 - G4EnergyLossMessenger: migration to <sstream> 3195 3196 28 October 05: V.Ivant (emutils-V07-01-09) 3197 - Fix problem in G4EmCalculator in ComputeDEDX for ions 3198 - Provide subcutoff regime inside G4VEnergyLossProcess - do not 3199 use G4VSubCutoffProcessor anymore 3200 - update subcutoff set method inside G4EmProcessOptions 3201 3202 27 October 05: V.Ivant (emutils-V07-01-08) 3203 - add virtual method MscStepLimitation() to G4VMultipleScattering 3204 - add SetMscStepLimitation to G4EmProcessOptions 3205 3206 25 October 05: V.Ivant (emutils-V07-01-07) 3207 - G4VEmModel.cc - default energy range from 0.1*keV to 100*TeV to 3208 make easier initialisation of PAI models 3209 3210 17 October 05: L.Urban (emutils-V07-01-06) 3211 - G4VEnergyLossProcess.cc: protection againg 0 mean loss removed, 3212 effect cured in standard/G4UniversalFluctuation 3213 3214 07 October 05: L.Urban (emutils-V07-01-05) 3215 - G4VMultipleScattering.hh: error in a protection in GetContinuousStepLimit 3216 corrected. Must cowork with emstand-V07-01-14 3217 3218 05 October 05: L.Urban (emutils-V07-01-04) 3219 - G4VEnergyLossProcess: added protection against mean_energy_loss = 0 3220 3221 04 September 05: V.Ivant (emutils-V07-01-03) 3222 - G4VEnergyLossProcess, G4VEmProcess: default lambdaFactor 0.8 3223 3224 02 September 05: V.Ivant (emutils-V07-01-02) 3225 - This tag is 7.1 + bug fixes 3226 - G4VEnergyLossProcess: Integral=true; SetStepFunction(0.2, 1*mm) 3227 fix a problem #780 connected with d-electron production tmax < cut 3228 - G4EmManager - fix a cut calculation for e+e- pair 3229 3230 12 August 05: mma (emutils-V07-01-01) 3231 - G4VEnergyLossProcess: Integral=false; SetStepFunction(0.2, 0.1*mm) 3232 3233 25 July 05: V.Ivant (emutils-V07-01-00) 3234 - G4VEnergyLossProcess: add extra protection for non-integral mode 3235 - G4VEmModel, G4VEmFluctuationModel : move constructor anddestructor to the body 3236 - G4VEmProcess - use integral mode only for charged particles 3237 3238 27 May 05: V.Ivant (utils-V07-00-13) 3239 - Fix problem observed for second run after adding/removal materials 3240 - Fix compilation warning at SUN in G4EmCalculator and G4EmCorrections; 3241 3242 18 May 05: V.Ivant (utils-V07-00-12) 3243 - fix calculation of CrossSection without /run/initialise 3244 3245 12 May 05: V.Ivant (utils-V07-00-11) 3246 - fix calculation of MFP in G4Emcalculator 3247 - cleanup 3248 3249 09 May 05: V.Ivant (utils-V07-00-10) 3250 - Bux fixes in G4VEmProcess, G4VEmModel, G4EmCorrections 3251 3252 03 May 05: V.Ivant (utils-V07-00-09) 3253 - fabs -> std::abs 3254 3255 29 April 05: V.Ivant (utils-V07-00-08) 3256 - Fix compilation warning at gcc.3.4 3257 3258 26 April 05: V.Ivant (utils-V07-00-07) 3259 - Fix compilation warning at Windaows 3260 3261 19 April 05: V.Ivant (utils-V07-00-06) 3262 - Add method SelectRandomAtom to G4VEmModel 3263 3264 18 April 05: V.Ivant (utils-V07-00-05) 3265 - G4VEmProcess migrate to G4ParticleChangeForGamma 3266 - G4VMultipleScattering and G4VEmModel - optimise internal interfaces 3267 3268 13 April 05: V.Ivant (utils-V07-00-04) 3269 - Optimization of internal interfaces G4VEmModel, G4VEmFluctuationModel, 3270 G4VEmProcess, G4VEnergyLossProcess 3271 - Fix range calculation for dedx=0 in G4LossTableBuilder 3272 - Add Mott correction to G4EmCorrection 3273 3274 18 March 05: V.Ivant (utils-V07-00-03) 3275 - Optimization of G4VEmProcess interface for gamma processes 3276 - Put default inline implementation for virtual method of G4VEmModel 3277 3278 11 March 05: V.Ivant (utils-V07-00-02) 3279 - Shift verbose level, set default value 1 3280 - Add flags "ApplyCuts" and "KillPrimary" to G4VEmProcess 3281 - Add G4EmCorrection class 3282 3283 07 March 05: V.Ivant (utils-V07-00-01) 3284 - Fix bug in initialisation of G4VEmProcess 3285 3286 13 Jan 05: V.Ivant (utils-V07-00-00) 3287 - Fix bug which takes place when inactivate eIoni 3288 - Fix problem of effective charge for very slow ions - add protections 3289 - Fix problem of initialisation for ion beam examples 3290 3291 09 Dec 04: V.Ivant (utils-V06-02-22) 3292 - Fix bug related to hadron tests 3293 3294 06 Dec 04: V.Ivant (utils-V06-02-21) 3295 - Minor but critical fix in BuildPhysicsTables for muons 3296 - Fix of BuildDEDXtables for e-, e+, mu+, mu- 3297 3298 01 Dec 04: V.Ivant (utils-V06-02-20) 3299 - Migration to cmath 3300 3301 01 Dec 04: V.Ivant (utils-V06-02-19) 3302 - Move the classes with real models from utils to standard 3303 3304 29 November 04: V.Ivanchenko (utils-V06-02-18) 3305 - Restructure of standard subdirectories 3306 - Cleanup GNUmakefile 3307 3308 29 November 04: V.Ivanchenko (utils-V06-02-17) 3309 - Fix control on verboseLevel for energy loss and msc 3310 - Fix BuildPhysicsTable for case of sharing processes between particles 3311 3312 18 November 04: V.Ivanchenko (utils-V06-02-16) 3313 - Update signature of G4EmCalculator 3314 - Add method CrossSectionPerAtom to G4VEmModel 3315 - Fix bug at initialisation for ion 3316 - Improve printout for G4VEnergyLossProcess 3317 - Fix bug - initialisation of map for particle/processes for external 3318 access to dE/dx tables 3319 3320 15 November 04: V.Ivanchenko (utils-V06-02-15) 3321 - Remove ProposeTrackStatus from AlongStep 3322 3323 18 November 04: V.Ivanchenko (utils-V06-02-14b) 3324 - Fix bug - initialisation of map for particle/processes for external 3325 access to dE/dx tables 3326 3327 17 November 04: V.Ivanchenko (utils-V06-02-14a) 3328 - Fix bug at initialisation for ion 3329 3330 11 November 04: V.Ivanchenko (utils-V06-02-14) 3331 - The fix in Retrieve tables 3332 3333 11 November 04: V.Ivanchenko (utils-V06-02-13) 3334 - Migration to new algorithm to Store/Retrieve tables 3335 3336 02 November 04: L.Urban (utils-V06-02-12) 3337 - Precision problem for very high energy ions in gases(or with 3338 small stepsize) has been solved in src/G4MscModel.cc 3339 3340 25 October 04: V.Ivanchenko (utils-V06-02-11) 3341 - Migrate to new interfaces for ParticleChange 3342 3343 14 October 04: V.Ivanchenko (utils-V06-02-10) 3344 - Bug fix in effective charge sampling 3345 3346 27 september 04: L.Urban (utils-V06-02-09) 3347 - G4Mscmodel.cc: change in the tail of the angular distribution, 3348 contributing to step independance. 3349 3350 13 September 04: V.Ivanchenko (utils-V06-02-08) 3351 - Extend G4BraggModel below 1 keV 3352 - Add verbose for G4EmCalculator 3353 - Fix problem of integral regime for cross sections with more 3354 than 1 peak 3355 3356 26 Augest 04: V.Ivanchenko (utils-V06-02-07) 3357 - Update G4EmCalculator class - add protections and cleanup 3358 - Fix effective charge for He4 3359 - Fix deuteron energy loss 3360 - For G4VEnergyLossProcess and G4VMultipleScattring introduce new methods 3361 to perform initialisation in both cases Build or Retrieve tables 3362 3363 17 August 04: L.Urban (utils-V06-02-06) 3364 - Name of data member facxsi changed to factail together with the corresponding 3365 set function. 3366 - Changes in the angle distribution (slightly modified Highland formula for the 3367 width of the central part, changes in the numerical values of some other 3368 parameters) ---> approximately step independent distribution. 3369 3370 06 Augest 04: V.Ivanchenko (utils-V06-02-05) 3371 - Change names of private member functions to make they be more clear 3372 - Optimise MFP and step limit calculation 3373 - Remove random step feature from G4VEnergyLossProcess 3374 - Add interfaces to G4Emcalculator 3375 - Clear up interfaces in G4VEmProcess 3376 - Use new interfaces from G4VParticleChange 3377 - Remove obsolete interfaces for particles 3378 3379 27 July 04: V.Ivanchenko (utils-V06-02-04) 3380 - Fix a compilation problem connected with removal of the dependence 3381 of particle cathegory on G4Material 3382 - Add G4EmCalculator - a class to access/calculate dedx, range, cross 3383 sections of EM processes 3384 - Add G4ionEffectiveCharge class needed both to ion physics and 3385 G4EmCalculator 3386 3387 23 July 04: V.Ivanchenko (utils-V06-02-03) 3388 - Fix a problem of cut dependence of transmission energy of low energy e- 3389 via thin foil 3390 3391 21 July 04: V.Ivanchenko (utils-V06-02-02) 3392 - Fix a problem tried after desactivation of muon ionisation 3393 3394 19 July 04: mma (utils-V06-02-01) 3395 - G4MscModel.cc: correction in SampleCosineTheta in order to avoid 3396 num. precision problems at high energy/small step(L.Urban) 3397 3398 05 July 04: V.Ivanchenko (utils-V06-02-00) 3399 - Fix a problem of G4VEnergyLossProcess seen for ions at small cuts in range 3400 3401 26 May 04: V.Ivanchenko (utils-V06-01-07) 3402 - Critical fix in msc to avoid crash in case of use of G4hLowEnergyIonisation 3403 for ions together with msc 3404 3405 17 May 04: V.Ivanchenko (utils-V06-01-06) 3406 - Update integral method taking into account 1 peak in cross section 3407 - Add options to G4EmProcessOptions 3408 - Fix minor problem at initialisation 3409 3410 10 May 04: V.Ivanchenko (utils-V06-01-05) 3411 - Add method GetCurrentRange 3412 - Add additional initialisation to fluctuations 3413 - Fix in printout format 3414 3415 04 May 04: V.Ivanchenko (utils-V06-01-04) 3416 - Use dynamic change for simulation of multiple scattering angle 3417 - Use trancate range table for estimation of energy loss inside 3418 msc model. 3419 3420 26 April 04: V.Ivanchenko (utils-V06-01-03) 3421 - Reduce aria of applicability of the model for simulation 3422 of fluctuations at very small steps to provide less step dependent 3423 results. 3424 3425 23 April 04: L.Urban (utils-V06-01-02) 3426 - changes in G4MscModel: t->z and z->t transformations (true length 3427 to geometrical length and back) have been completely rewritten, 3428 change in the angular distribution for e+/e- 3429 ( correction to the Highland formula) + some technical changes 3430 ==> results are closer to data, step dependence decreased. Effect 3431 the resolution of sampling calorimeters 3432 3433 05 April 04: V.Ivant (utils-V06-01-01) 3434 - G4VEnergyLossProcess: Update calculation of energy loss from tables 3435 (important for proton energies about 1 MeV); 3436 - Fluctuations: smooth out sampling of Gaussian fluctuations, 3437 when sigma is much bigger than energy loss. 3438 3439 31 March 04: V.Ivant (utils-V06-01-00) 3440 - G4VEnergyLossProcess: Fix a problem of retrieve tables if PreciseRange 3441 is absent 3442 3443 15 March 04: V.Ivant (utils-V06-00-09) 3444 - G4VEnergyLossProcess: Fix a problem of energy below lowestKinEnergy 3445 3446 15 March 04: mma (utils-V06-00-08) 3447 3448 12 March 04: V.Ivant 3449 - G4VEnergyLossProcess: put back lowestKinEnergy = 1.*eV; 3450 3451 10 March 04: V.Ivant 3452 - G4LossTableManager.cc: fix a problem of Precise Range table 3453 - G4VEnergyLossProcess: fix problem of step limit calculation 3454 3455 10 March 04: L.Urban 3456 - G4MscModel: changes in data members, 3457 corrections in GeomPathLength,TrueStepLength, SampleCosineTheta 3458 3459 06 March 04: V.Ivant (utils-V06-00-07) 3460 - fix a bug in link at SUN 3461 3462 01 March 04: V.Ivant (utils-V06-00-06) 3463 - fixes of bugs coming with transition to model variant of msc 3464 and simplifications of calculation of energy dependence of internal 3465 parameters (L.Urban) 3466 3467 3468 27 Feb 04: V.Ivant (utils-V06-00-05) 3469 - fix problem of ionisation in air with low pressure 10^-4 Atm 3470 - add G4EmProcessOptions class 3471 - update calculation of energy from range 3472 3473 17 Feb 04: V.Ivant (utils-V06-00-04) 3474 - murge the patch and development tag 3475 - minor cleanup in ionisation models 3476 3477 06 Feb 04: V.Ivant (utils-a-V06-00-00) 3478 - The tag on top of utils-V06-00-00 for the patch include: 3479 - Fix problem of destruction of PAI model 3480 - Fix a bug responsibile for mess in cross section of delta-electron 3481 production by muons 3482 - Add protection for small edep in G4UniversalFluctuations 3483 3484 27 Jan 04: V.Ivant (utils-V06-00-03) 3485 - Fix problem of destruction of PAI model 3486 3487 26 Jan 04: V.Ivant (utils-V06-00-02) 3488 - Fix a bug responsibile for mess in cross section of delta-electron 3489 production by muons 3490 3491 22 Jan 04: V.Ivant (utils-V06-00-01) 3492 - Migrade to G4ParticleChangeForLoss 3493 3494 14 Jan 04: V.Ivant (utils-V06-00-00) 3495 - Activate precise range calculation 3496 - Add Set methods to G4LossTablemanager to define: binning, maxEnergy for muon 3497 tables, maxEnergy for precise range. 3498 3499 26 Nov 03: V.Ivant (utils-V05-02-17) 3500 - Close precise range feature for the time being 3501 3502 26 Nov 03: L.Urban 3503 - Bugfix in G4VMultipleScattering:AlongStepDoIt + G4MscModel 3504 truestep <= range 3505 3506 25 Nov 03: V.Ivant (utils-V05-02-16) 3507 - Fix wrong deletion and error in SetRangeTable 3508 3509 25 Nov 03: V.Ivant (utils-V05-02-15) 3510 - Fix crash for case of inactivated ionisation and bremsstrahlung 3511 3512 13 Nov 03: V.Ivant (utils-V05-02-14) 3513 - Fix negative energy loss 3514 3515 11 Nov 03: V.Ivant (utils-V05-02-13) 3516 - Update printout in RetrievePhysicsTable 3517 - Substitute G4VEnergyLossSTD by G4VEnergyLossProcess 3518 - For ions update ionisation (V.Ivanchenko) and multiple scattering (L.Urban) 3519 3520 10 Nov 03: Urban 3521 - highKinEnergy is set back to 100 TeV for multiple scattering 3522 - number of table bins set to 120 " 3523 - small change in the tail of the angular distribution (after tuning!) 3524 - code cleaning in G4MscModel.cc 3525 3526 07 Nov 03: mma (utils-V05-02-12) 3527 - Fix problem of rounding of double in G4UniversalFluctuations 3528 - Fix precision problems for high energy (PeV) particles 3529 - change in the tail of the angular distribution 3530 - highKinEnergy is set to 100 PeV 3531 3532 03 Nov 03: V.Ivant (utils-V05-02-11) 3533 - Remove STD processes 3534 - Fix problem of RetrievePhysicsTable 3535 3536 30 Oct 03: G.Cosmo (utils-V05-02-10) 3537 - Fixed compilation problem on Windows in G4LossTableManager.cc for multiple 3538 declaration of indeces ... 3539 3540 24 Oct 03: V.Ivant (utils-V05-02-09) 3541 - Update logic of BuildPhysicsTable to take into account desactivate processes 3542 - Update defalts for stepping algorithm 3543 3544 20 Oct 03: V.Ivant (utils-V05-02-08) 3545 - Minor change of interface to G4EmFluctuationModel for PAI development 3546 - Update logic of the messenger and G4LossTableManager to provide independence 3547 on command sequence 3548 - Increase verbosity for store/retrieve tables 3549 3550 14 Oct 03: V.Ivant (utils-V05-02-07) 3551 - Update verbose/printout 3552 - Add new method DefineForRegion to G4VEmModel 3553 - Fix minor problems in messenger 3554 3555 4 Oct 03: G.Cosmo (utils-V05-02-06) 3556 - Modified GNUmakefiles: 3557 o added dependency to new module "geometry/navigation". 3558 o replaced "digits+hits" with "digits_hits". 3559 - Coworks with "geometry-V05-02-00" and "digits_hits-V05-02-00". 3560 3561 25 Sept 03: H.Kurashige (utils-V05-02-05) 3562 - Add "#include G4MaterialCutsCouple.hh" in G4MultipleScattering52.hh 3563 3564 20 Sept 03: V.Ivant (utils-V05-02-04) 3565 -Use warning for obsolete interfaces which uses G4Material instead of 3566 G4MaterialCutsCouple 3567 -Update initialization of energy loss processes 3568 -Update GNUmakefile 3569 3570 12 September 03: L.Urban 3571 -fixed num. error for small stepsize in G4MscModel.cc (z sampling) 3572 3573 27 August 03: V.Ivant (utils-V05-02-03) 3574 -Fix problems in compilation of some tests 3575 3576 08 August 03: V.Ivant (utils-V05-02-02) 3577 -Substitute standerd by STD, freezing old standard as 52 3578 3579 07 August 03: V.Ivant (utils-V05-02-01) 3580 - Update of the ion fluctuation model 3581 - Update design - STD processes can be mixed in physics list with 3582 old processes 3583 - Tunning of msc model: fix poblems for width and for tails of distribution 3584 for the STD variant 3585 3586 24 July 03: V.Ivant (utils-V05-02-00) 3587 -Update model interface - substitute G4Material by G4MaterialCutsCouple 3588 in dE/dx and CrossSection methods 3589 -Add Set methods to energy range of msc table 3590 -Add method to change the nergy range of model 3591 -Add possibility to have STD and other processes in the same physics list 3592 3593 16 June 03: V.Ivant (utils-V05-01-07) 3594 - ShortLived particles are not applicable for msc 3595 3596 04 June 03: V.Ivant (utils-V05-01-06) 3597 - Fix compilation warnings 3598 - Update STD initialisation 3599 3600 28 May 03: V.Ivant (utils-V05-01-05) 3601 - Remove absolete msc STD classes and add msc model (V.Ivanchenko) 3602 - Fix misprint for msc at Tev energy (L.Urban) 3603 3604 26 May 03: V.Ivant (utils-V05-01-04) 3605 - Fix compilation warnings for pedantic compiler option 3606 3607 26 May 03: V.Ivant (utils-V05-01-03) 3608 - replaced msc STD with model variant 3609 - remove debug printout from G4VEnergyLossSTD for ions 3610 - fix minor problem in nuclear formfactor calculations for msc 3611 3612 23 May 03: V.Ivant (utils-V05-01-02) 3613 - Fix initialisation of integral approach - correct definition 3614 of STD fluctuation model 3615 - Remove tracking cut from STD 3616 - Establish limits on eloss for Bohr and Ion fluctuations for STD 3617 3618 23 May 03: L.Urban (utils-V05-01-01) 3619 - MultipleScattering and MultipleScatteringSTD : 3620 - IMPORTANT change in the angle distribution for muons/hadrons 3621 the width of the central part now is corresponds to the value 3622 can be computed from the HighLand formula (no change of this 3623 kind for e+/e-) --> small change in the width for low to 3624 medium energy (protons - 1 MeV - few hundred MeV) but change up to 3625 20 -25 % for high energy. 3626 - minor correction in the angle sampling algorithm, affects 3627 e+/e- too --> small change for very small and very big 3628 stepsize/range values. 3629 3630 15 May 03: V.Ivant (utils-V05-01-00) 3631 - add precise range calculation for STD 3632 - defauld step parameters for STD set to be the same as standard 3633 3634 28 Apr 03: V.Ivant (utils-V05-00-13) 3635 - add control on range for msc (effective for ions) 3636 3637 26 Apr 03: V.Ivant (utils-V05-00-12) 3638 - fix of store/retrieve tables for msc and STD 3639 - cleanup Bohr and Ion fluctuations 3640 3641 17 Apr 03: V.Ivant (utils-V05-00-11) 3642 - additional clean up of msc variables 3643 - improve output 3644 3645 13 Apr 03: V.Ivant (utils-V05-00-10) 3646 - Add additional initialisation msc variables 3647 - Add interface between standard and STD tables 3648 3649 09 Apr 03: V.Ivant (utils-V05-00-09) 3650 - Fix problem of negative step limit for STD 3651 3652 07 Apr 03: V.Ivant (utils-V05-00-08) 3653 - Add DeRegister to STD loss classes 3654 - Add G4VMultipleScattering 3655 - Remove STD messenger 3656 3657 26 Mar 03: V.Ivant (utils-V05-00-07) 3658 - Add GetDEDXDispersion to STD loss tables 3659 3660 25 Mar 03: mma 3661 - G4VEnergyLoss : add finalRangeRequested 3662 3663 12 Mar 03: V.Ivant (utils-V05-00-06) 3664 - Add warning and G4Exception to G4EnergyLossTable 3665 - Fix in MSC cut per region 3666 - Fix in initialisation for STD 3667 - Make messanger active at PreInit 3668 3669 10 Mar 03: V.Ivant (utils-V05-00-05) 3670 - Updated MSC 3671 - SubType for GenericIons 3672 - Fix in energy range of models for STD 3673 3674 26 feb 03: V.Ivant (utils-V05-00-04a) 3675 - For the February reference tag return back msc of 5.0 3676 - Simplify control on GenericIons for STD 3677 3678 18 feb 03: V.Ivant (utils-V05-00-04) 3679 - add control on CutsCouple usage 3680 - utilise SubType for GenericIons 3681 - fix problems with lambda and range tables for STD hadrons/ions 3682 - fix problem of several runs with changed cuts/couples for STD 3683 3684 13 feb 03: V.Ivant 3685 - add names for all models 3686 - make the set of model per region available 3687 - make SubCutoff regime available per region 3688 3689 10 feb 03: mma (utils-V05-00-03) 3690 - tag to take account the Laszlo + Vladimir modifs 3691 3692 07 feb 03: V.Ivant 3693 - fix problem in fluctuations for STD 3694 3695 06 feb 03: L.Urban 3696 - important modifications in MSC (both in old design and model 3697 version) 3698 - changes in data members 3699 - algorithm to reduce the step dependence is new 3700 - new sampling for the geom.pathlengths 3701 3702 05 feb 03: V.Ivant (utils-V05-00-02) 3703 - Fix on warnings at SUN for STD classes 3704 - Add Initialise method to STD classes to calculate PartialSumSigma 3705 - Subsitute Material by MaterialCutsCouple for PostStep STD 3706 3707 24 jan 03: V.Ivant (utils-V05-00-01) 3708 - Migration to "cut per region" 3709 3710 06 jan 03: V.Ivant (utils-V05-00-00) 3711 - Update interfaces to STD classes in order to be ready to migrade 3712 to "cut per region" 3713 3714 12 dec 02: V.Ivant (utils-V04-01-12) 3715 - Fix in multiple scattering for 1 MeV protons in both implementations. 3716 3717 09 dec 02: V.Ivant (utils-V04-01-11) 3718 - Removed warnings in G4SCProcessorStand and G4UniversalFluctuation. 3719 3720 06 dec 02: G.Cosmo (utils-V04-01-10) 3721 - Merged changes for new G4ApplicationState in messengers. 3722 3723 04 dec 02: V.Ivant (utils-V04-01-09) 3724 - STD processes: fix model selection + delta-electron spectra 3725 3726 11 nov 02: V.Ivant (utils-V04-01-08) 3727 - G4VEnergyLoss: return back previous fluctuation model 3728 3729 30 oct 02: mma (utils-V04-01-07) 3730 - G4MultipleScattering: modified angle distribution, mods in boundary 3731 algorithm, changes in data members, rename variable cm -> Ecm 3732 This new parametrisation improves the ~100 MeV proton scattering. 3733 - propagated to G4MultipleScatteringSTD 3734 - G4VEnergyLoss: minor changes in fluctuations 3735 3736 28 oct 02: V.Ivanchenko (utils-V04-01-06) 3737 - fix in G4MultipleScattringSTD + cleanup warnings in STD classes 3738 3739 17 oct 02: V.Ivant (utils-V04-01-05) 3740 - temporary fix for proton scattering propagated in MultipleScatteringSTD 3741 - Few changes in LossTableBuilder 3742 3743 16 oct 02: Laszlo (utils-V04-01-04) 3744 - temporary fix for proton scattering 3745 3746 15 oct 02: V.Ivant (utils-V04-01-03) 3747 - redesign for a Model approach: files processNameSTD and processNameModel 3748 3749 26 sep 02: Laszlo (utils-V04-01-02) 3750 - angle distribution modified 3751 - minor changes in boundary algorithm 3752 3753 12 aug 02: Laszlo (utils-V04-01-01) 3754 - bug fixed in PostStepDoIt (lateral displacement) 3755 3756 06 aug 02: V.Ivanchenko (utils-V04-01-00) 3757 G4VEnergyLoss: Fix at low energies - if tmax below ionisation potential 3758 then only Gaussian fluctuations are sampled. 3759 3760 11 jun 02: Laszlo (utils-V04-00-08) 3761 - important bug fixed in G4MultipleScattering.cc 3762 ComputeTransportCrossSection. The bug affected the scattering 3763 for all the low energy ( <~ few hundred MeV) heavy particles. 3764 3765 24 may 02: Laszlo (utils-V04-00-07) 3766 - G4MultipleScattering.hh,.cc: mods in angle distribution and 3767 in boundary algorithm 3768 3769 06 may 02: Laszlo (utils-V04-00-06) 3770 - G4MultipleScattering.cc :bug fixed in GetContinuousStepLimit 3771 3772 24 apr 02: Laszlo (utils-V04-00-05) 3773 - G4MultipleScattering.hh,.cc have been committed: 3774 some minor changes in boundary algorithm to improve the backscattering. 3775 3776 22 apr 02: Laszlo (utils-V04-00-04) 3777 - G4MultipleScattering.hh,.cc have been committed: 3778 boundary algorithm has been modified resulting improvement ~10% 3779 in the performance (with the same physics). 3780 3781 17 apr 02: Laszlo (utils-V04-00-03) 3782 - G4MultipleScattering.hh,.cc have been committed: 3783 new parametrisation for angle distribution. 3784 boundary algorithm has been modified + some other (minor) changes. 3785 3786 26 feb 02: mma (utils-V04-00-02) 3787 - initial value of data member of G4VEnergyLoss finalRange = 1 mm 3788 (actual value of this data member is computed in 3789 G4VeEnergyLoss,G4VhEnergyLoss and G4VMuEnergyLoss.) 3790 3791 14 feb 02: L.Urban (utils-V04-00-01) 3792 - initial value of data member of G4VEnergyLoss finalRange 3793 has been changed 3794 (actual value of this data member is computed in 3795 G4VeEnergyLoss,G4VhEnergyLoss and G4VMuEnergyLoss..) 3796 3797 11 feb 02: mma (utils-V04-00-00) 3798 - subSecFlag = false --> No sucutoff generation 3799 3800 08 nov 01: mma (utils-V03-02-11) 3801 - G4VEnergyLoss: some data members and functions are no more static 3802 3803 07 nov 01: mma (utils-V03-02-10) 3804 - bug fixe in G4MultipleScattering::PostStepDoIt() 3805 3806 29 oct 01: mma (utils-V03-02-09) 3807 - static functions no more inlined 3808 3809 24 oct 01: mma (utils-V03-02-08) 3810 - cut per material: G4VEnergyLoss 3811 3812 28 sep 01: mma (utils-V03-02-07) 3813 - StorePhysicsTable: ParticleName included in FileName 3814 3815 27 sep 01: L.Urban (utils-V03-02-06) 3816 - bug fixed in G4EnergyLossTables.icc,.cc: 3817 this bug caused sometime negative energy deposit 3818 (it was a very-very old bug) 3819 - value of data member factlim in msc has been changed 3820 3821 19 sep 01: mma (utils-V03-02-05) 3822 - come back to previous process name: "msc" 3823 3824 17 sep 01: mma (utils-V03-02-04) 3825 - modifs in muls and VEnergyLoss for the migration of Materials to pure STL, 3826 but backward compatible with g4rw 3827 3828 13 sep 01: L.Urban (utils-V03-02-03) 3829 - Unused TrueToGeomTransformation method deleted. Class description 3830 - corr. in ComputeTransportCrossSection 3831 3832 11 sep 01: L.Urban (utils-V03-02-02) 3833 - G4MultipleScatteringx put as the default: G4MultipleScattering 3834 3835 11 sep 01: L.Urban (utils-V03-02-01) 3836 - last tag with G4MultipleScatteringx file. 3837 3838 03 sep 01: L.Urban (utils-V03-02-00) 3839 - value of data member factlim has been changed. 3840 3841 28 aug 01: mma 3842 - G4MultipleScatteringx: small modifs in BuildPhysicsTable, 3843 ComputeTransportCrossSection, PostStepDoIt. 3844 GetContinuousStepLimit and AlongStepDoIt moved to .cc file 3845 3846 23 aug 01: L. Urban 3847 - new angle and z(geom. pathlength) distributions, 3848 energy (step) dependence has been reduced, 3849 Store/Retrieve methods have been commented out temporarily 3850 3851 8 aug 01: mma 3852 - G4MultipleScatteringx: methods to store/retrieve PhysicsTable 3853 3854 18 may 01: V.Ivanchenko (utils-V03-01-01) 3855 - clean up againist Linux ANSI strict compilation mode. 3856 3857 16 may 01: L.Urban (utils-V03-01-00) 3858 - value of the member cpar has been changed back to the original 3859 value 1.5 in G4MultipleScattering.cc. The same is done in 3860 G4MultipleScatteringx.cc (the data member name is cparm there). 3861 This change affects all the results for low energy (< 1 MeV 3862 for electrons). 3863 3864 15 may 01: L.Urban 3865 - new multiple scattering version committed under the class name 3866 G4MultipleScatteringx. It gives better msc angle distribution 3867 than the standard G4MultipleScattering. It uses a distribution 3868 to simulate the geom./true pathlengths (standard : mean values 3869 only) and has a framework implemented in it to perform special 3870 stepping near to a boundary (this algorithm works, but some 3871 further development/tuning needed - this algorithm is disabled 3872 by default). This new version can be used after the change: 3873 G4MultipleScattering --> G4MultipleScatteringx 3874 in the PhysicsList. 3875 3876 27 mar 01: L.Urban (utils-V03-00-06) 3877 - another bug fixed in G4VEnergyLoss.cc, in the fluct code. 3878 The code gave in some cases (very rarely) small negative energy loss 3879 for small (~ micrometer) step size, now it is cured. 3880 3881 23 mar 01: L.Urban (utils-V03-00-05) 3882 - bug fixed in fluct in G4VEnergyLoss.cc 3883 Some int internal variables have been changed to doubles, 3884 anomaly at extreme high energy/high cut (zero energy deposit) 3885 is cured. 3886 3887 05 mar 01 mma (utils-V03-00-04) 3888 - new subdirectory: integral 3889 migration of all G4I.. processes from muons, standard, utils into integral 3890 3891 01 feb 01: L.Urban (utils-V03-00-01) 3892 - bug fixed in the fluctuation code , in G4VEnergyLoss.cc 3893 This bug affected the width of the energy loss/energy deposit 3894 distribution in the case of small cut value, the distribution 3895 was too narrow.... 3896 3897 16 jan 01: mma (utils-V03-00-00) 3898 - bug fixed in MultipleScattering.cc L.Urban 11-01-01 3899 there was an error in computation of the transport 3900 cross section, the cross section was too small for 3901 low energy (below few MeV for electrons) 3902 3903 09 nov 00: mma (utils-V02-00-04) 3904 - G4EnergyLossMessenger : subdirectory /process/eLoss created 3905 + class description 3906 3907 04 nov 00: mma (utils-V02-00-03) 3908 - EnergyLossTable: const G4Material* in all functions 3909 - G4VEnergyLoss and Messenger slighy modified for more flexibility 3910 only (Laszlo) 3911 3912 11 aug 00: mma (utils-V02-00-01) 3913 3914 03 aug 00: gc 3915 - fixed problem for event reproducibility: changed RandGauss to G4RandGauss 3916 in G4VEnergyLoss.cc. Needs tag "global-V02-00-02" to cowork with. 3917 3918 22 jun 00: mma (utils-V01-01-03) 3919 - muls: do not nuclear size correction for electron 3920 - move Eloss messenger --> G4VEnergyLoss 3921 3922 24 may 00: mma (utils-V01-01-02) 3923 - merge "plus" processes into standard 3924 3925 27 apr 00 mma (em-V01-01-01) 3926 - G4endl (dec/iso) 3927 3928 26 apr 00 mma (em-V01-01-00) 3929 - all EnergyLoss classes renamed G4V... 3930 Most classes in standard and muons affected. 3931 - G4Muls moved in utils 3932 - bugs fixe in MuPairProduction 3933 - cowork with geant4-01-01-ref-02 3934 3935 02 mar 00 mma (em-V01-00-00) 3936 - new G4VEnergyLoss class and related structure 3937 - cowork with geant4-01-00-ref-06 3938 3939 10 nov 99 mma (em-V00-01-03) 3940 - migration to STL: remove RWT hash dictionnary 3941 3942 14th June 1999 John Allison (em-01-00-05b) 3943 - Muon corrections in G4MultipleScattering.cc, G4MuBremsstrahlung.cc 3944 and G4MuPairProduction.cc by Laszlo Urban, Pedro Arce. 3945 (Also in rocesses/photoleplon_hadron/src/G4MuNuclearInteraction.cc.) 3946 3947 5th June 1999 John Allison 3948 - standard/GNUmakefile: Force non-optimised compliation of some 3949 files on HP with aCC: HP ANSI C++ B3910B A.01.15. 3950 3951 May 29, 1999: John Allison 3952 - Added electromagnetic/lowenergy to GNUmakefile and 3953 electromagnetic/GNUmakefile..