Geant4 10.4 - patch-03 Release Notes ------------------------------------ 8 February 2019 List of fixes included in this public patch since the public release 10.4.p02: o Configuration: ------------- + CMake: o Corrected URLs for data installation to use https; added -L flag to curl to follow redirects when accessing a dataset URL. o Geant4MakeRules_cxx.cmake: added -DGL_SILENCE_DEPRECATION to CMAKE_CXX_FLAGS_INIT for clang to silence GL deprecation compilation warnings on MacOS 10.14 Mojave. + GNUMake: o Fixed setting of G4RUNPATHOPTION in Darwin/Linux-clang/g++ and binmake.cmk. Addressing problem report #2086. o Cleanup settings for GL in Darwin-clang.gmk and Darwin-g++.gmk. Added -DGL_SILENCE_DEPRECATION to CPPFLAGS to silence GL deprecation compilation warnings on MacOS 10.14 Mojave. o Analysis: -------- + Fixed a deadlock issue with G4RootPNtupleManager where the mutex was locked before being passed to Root. + Fixed compilation warnings on gcc-8.1.0. o Geometry: -------- + management: o Use reverse_iterator in G4SolidStore::DeRegister() in order to speedup partial deregistration on setups with many solids instances. o G4Region: added possibility to disable search in the tree in AddRootLogicalVolume() for speeding up process in complex flat geometries. o Global: ------ + G4PhysicsVector, G4Physics2DVector: fixed possible out-of-bound access in FindBin() method. Addressing problem report #2087. + Updated date and version for 10.4.p03. o Interfaces: ---------- + G4Xt: fixed compilation warnings for casts on gcc-8.1. + Fixed compilation warnings for not used return parameters. o Persistency - gdml ------------------ + Clear auxiliary map information in G4GDMLReadStructure::Clear(). Addressing problem report #2064. + Added stripping of invalid characters for names generation in writer classes to prevent invalid NCName strings in exported GDML files. Adopt properly stripped generated strings for exporting names of optical surfaces. o Processes - Electromagnetic: --------------------------- + dna: o Fixed header guards in G4ITFinder and G4AllITFinder. Addressing problem report #2084. + standard: o G4GoudsmitSaundersonTable: fixed gcc-8.1.0 compilation warnings. + utils: o G4EmElementSelector: optimisation of element selection for compound materials. + xrays: o G4Cerenkov, G4Scintillation: correctly reset number of photons to 0 each step. Addressing problem report #2056. Added protection against infinite loops due to very small steps. Addressing problem report #1992. o Processes - Hadronic: -------------------- + management: o G4HadronicProcess: added check if secondary particle is on the mass shell; if its mass differ from the PDG mass more for 1.5 MeV then mass is forced to the mass shell, energy conserved, but momentum is changed. Use correct return type when calling CheckResult() from PostStepDoIt(): fixes case when the value of pointer 'result' does not get properly reset to NULL in case a non-conservation is detected, thus "bad" interaction does not get re-sampled. Fixed compilation warnings on gcc-8.1.0 regarding catching polymorphic type by value, instead of by reference. o G4HadronicProcess, G4VLeadingParticleBiasing, G4HadLeadBias: fixed compilation warning with gcc-7. + models/binary_cascade o G4GeneratorPrecompoundInterface: fixed printout typo. + models/cascade: o G4GDecay3: fixed problem reported by CMS due to wrong kinematics in the final state by removing loop check; adding protection for low value of mother mass. + models/de_excitation: o G4LevelReader: fixed initialisation of 'fAlphaMax' from 1.e+6 to 1.e+15; needed for correct IC probability of some isotopes. Addresses problem reports #1986 and #2076, by change of handling of internal conversion data. + models/particle_hp o G4ParticleHPCaptureFS::ApplyYourself(): Lorentz boost of neutron into target frame was backwards; reversed it. Also replaced SetDefinition() with SetDefinitionAndUpdateE(). Addresses problem report #1919. o Fixed definition of singletons for G4ParticleHPManager and G4ParticleHPThreadLocalManager and some code cleanup. Made G4ParticleHPThreadLocalManager a G4ThreadlLocalSingleton to avoid memory leaks generated each time a thread creates the instance. o Fixed bug for double allocation of G4ParticleHPReactionWhiteBoard in G4ParticleHPThreadLocalManager::OpenReactionWhiteBoard(). o G4ParticleHPElementData: removed unnecessary inheritance from G4HadronicCrossSection. o Fixed incorrect sampling of isotropic distribution. Addressing problem report #1745. o Fixed gamma level mismatch in G4ParticleHPInelasticCompFS. Not a complete fix because gamma data comes from ENSDF and does not necessarily match excitations in ENDF. Addressing problem report #1789. o Fixed memory leaks in G4ParticleHPContEnergyAngular::Sample() and G4ParticleHPContAngularPar::cacheInit(). Addressing problem report #2026. o G4ParticleHPElasticFS::ApplyYourself(): use correct reference frames for calculation of projectile and target momenta. Correction made for cases when cos(Theta) is given in lab frame and in center of momentum frame. Partial fix of momentum non-conservation for problem report #1918. o Fixed potential leaks in G4ParticleHPPhotonDist, G4ParticleHPContAngularPar and G4ParticleHPFinalState for use of pointers cached in G4Cache. o G4ENDFTapeRead, G4FissionProductYieldDist: fixed compilation warnings on gcc 8.1.0, regarding catching polymorphic type by value, instead of by reference. o Minor code cleanup and formatting. + models/parton_string/diffraction o G4FTFAnnihilation: fix to get flat cos(theta) and phi distributions for antiproton annihilation at rest. + models/rpg o G4RPGAntiKZeroInelastic, G4RPGInelastic: fixed compilation warnings on gcc-8.1.0, regarding catching polymorphic type by value, instead of by reference. + processes: o G4HadronElasticProcess, G4NeutrinoElectronProcess: fixed compilation warnings on gcc 8.1.0, regarding catching polymorphic type by value, instead of by reference. + stopping: o G4HadronStoppingProcess, G4MuonicAtomDecay: fixed compilation warnings on gcc 8.1.0, regarding catching polymorphic type by value, instead of by reference. o Processes - Scoring: ------------------- o G4ParallelWorldProcess: fixed track velocity of optical photons for the first step in a layered mass geometry. o Examples: -------- + extended/fieldBlineTracer: o Fixed compilation error for missing header inclusion. ---------------------------------------------------------------------------- Technical Notes --------------- o This patch should be applied on top of release 10.4 or 10.4.p01 or p02. o Technical notes distributed for release 10.4 are also applicable and valid for this patch. The code and rebuilt binary libraries for release 10.4.p03 are available through our "Download" Web page. Please refer to the Geant4 User Documentation for further information about using Geant4.