Geant4 10.3 - patch-02 Release Notes ------------------------------------ 27 July 2017 List of fixes included in this public patch since the public release 10.3.p01: o Configuration: ------------- + CMake: o Added VECGEOM_DEFINITIONS and VECGEOM_EXTERNAL_INCLUDES when compiling with USolids/VecGeom enabled, to allow for detection of external packages paths from VecGeom. o Corrected Qt setup for GNUmake builds, avoid setting QTLIBS and GLQTLIBS as already handled by the GNUmake system for Qt4 and Qt5. + GNUmake: o Corrected order of linkage in binmake.gmk for analysis global library. o Analysis: -------- + Fixed problem of removing non-empty ntuple files in user application where ntuples are created after open file. + Added GetP[1,2]Id(const G4String&) functions to G4AnaysisManager. Addressing problem report #1949. + Corrected handling of open file failure. Addressing problem report #1957. o Event: ----- + Fixed 'fallthrough' compilation warnings in case statements on gcc-7.1. o Externals: --------- + Fixed compilation warnings on gcc-7.1. o G3toG4: ------ + Fixed compilation warnings on gcc-7.1. o Generic Processes: ----------------- + biasing: o G4GeometrySampler: removed unnecessary ClearSampling() from the destructor. + scoring: o G4ParallelWorldProcess: fix to have a valid pointer to secondaries in G4Step of a parallel world. o Geometry: -------- + biasing: o Added mutex locks to methods within G4IStore and G4ImportanceAlgorithm. Temporary fix for erratic behaviour in MT-mode and crashing if bounds- checking is switched on with many threads/events. Addressing problem report #1945. + solids/CSG: o Fixed possible rounding off error in calculation of 'astep' (max angle for one step) in CalculateExtent() for G4Cons, G4Tubs, G4CutTubs and related USolids wrappers. o Added accessor to G4Orb and G4UOrb for retrieving cached max radius tolerance. o Fix in G4CutTubs::Inside() for case where inside points were considered as points on surface. Addressing problem report #1973. + solids/specific: o Fixed possible rounding off error in calculation of 'astep' (max angle for one step) in CalculateExtent() for G4Polycone, G4GenericPolycone and related USolids wrappers. o Removed potential race condition in G4VTwistSurface::AmIOnLeftSide(). Addressing problem report #1972. o Global: ------ + Corrected TLS setup in tls.hh for gcc compiler. + Updated date and version for 10.3.p02. o Intercoms: --------- + Fix to G4GenericMessenger::Command::SetUnit: do not ignore setting and issue a warning when running sequential application built against Geant4 libraries compiled with MT enabled. o Physics Lists ------------- + constructors/electromagnetic: o G4EmStandardPhysicsSS: apply single scattering to all particles. Addressing problem report #1966. o G4EmModelActivator: fixed Opt4 and SS per region. + lists: o G4PhysListFactory: fixed EM option "__SS". Addressing problem report #1966. o Processes - Electromagnetic: --------------------------- + dna: o Fixed compilation warnings on gcc-7.1. + lowenergy: o G4LowEPPolarizedComptonModel: fixed FPE in comptation of std::acos(). o Fixed compilation warnings on gcc-7.1. + standard: o G4UniversalFluctuation: fixed numerical problem for sampling low-energy anti-protons with very small steps. o G4NuclearStopping, G4ICRU49NuclearStoppingModel: fixed nuclear stopping power computation addressed in Hypernews post #1595 in the Hadronic Processes Forum. o G4hIonisation: fixed min/max energy for dEdx table for the case when the mass of a hadron is very different from the mass of proton. + utils: o G4EmCalculator: for computation of the nuclear stopping power, use concrete model (applied at run time) instead of G4EmCorrections emulation; to get cross section per volume for discrete processes use interface of the process. Addressing Hypernwes post #1595 in the Hadronic Processes Forum. o G4VEmModel: added extra protected class member for nuclear stopping. o G4EmSaturation: fixed typo in printout. o Processes - Hadronic: -------------------- + models/cascade: o G4CascadeCoalescence: removed clusterHash() function and 'triedClusters' registry. Droped redundant calls of tryCluster() with subcombinatorics; all combinations are handled, uniquely, in main loop over indices. This eliminates significant memory usage observed with high-energy applications of BERT. + models/de_excitation: o G4DeexPrecoParameters: disabled parameter change in G4_Idle state, only G4_PreInit is allowed; disabled correlated gamma; set default time limit to 1000s (if radioactive decay is enabled this time may be set to the limit of the G4NuclideTable), this allows do not create extra isomeres if radioactive decay is not included in the physics list o G4LevelReader, G4LevelManager, G4PhotonEvaporation: for stable states (ground state isotopes) set life time to "-1"; changed all checks accordingly. o G4LevelReader: issue fatal exception if data file is not open. Addressing problem report #1942. o G4PhotonEvaporation: always have gamma transition to the discrete level (if there is no levels, go to the ground state). Addressing problem report #1950. + models/lend: o Fixed compilation warnings on gcc-7.1. o Fixed Coverity defects. + models/particle_hp: o Added check for He3 projectile. Addressing problem report #1907. o G4ParticleHPThermalScattering: fixed angular distribution sampling problem. Addressing problem report #1971. o Fix in destructor of processes to protect against concurrent deletion. o Bug fix and improved stability in G4ParticleHPFinalState. o Suppressed unnecessary warning messages in G4ParticleHPEnAngCorrelation. o Fixed minor inconsistency between documentation and code. + models/radioactive_decay: o G4RadioactiveDecay::DecayIt(): added statement to propagate weight of parent track. Addressing problem report #1946. + models/util: o G4Fragment: fixed destructor and printout. o G4PolynomialPDF: fix for potential division by zero. + util: o G4GHEKinematicsVector: fixed case of variable shadowing. o Run: --- + G4RunManagerKernel: removed unnecessary warning message. o Visualization: ------------- + Fixed compilation warnings on gcc-7.1. o Examples: -------- + Updated reference outputs. + Fixed compilation warning on gcc-7.1. + advanced/air_shower: o Updated setup for visualization in main() and Visualisation.mac. + extended/biasing/B01: + extended/biasing/B02: o Removed unnecessary clearing of sampling. + extended/biasing/B03: o B03PhysicsList: removed obsolete unnecessary instantiation of de-excitation sub-models. o Removed unnecessary clearing of sampling. + extended/eventgenerator/HepMC/MCTruth: o Fixed typo in initialisation. + extended/g3tog4: o Fixed linking problem for static build. + extended/optical/LXe: o Fix for issue reported on Hypernews Optical-Photons Forum #651. + extended/medical/DICOM: o Fix to DicomRun::RecordEvent() that was incrementing the inherited numberOfEvent variable from G4Run twice causing the output of the number of events to be twice the actual value. o Corrected element definitions for Potassium and Phosphorus in DetectorConstruction. + extended/persistency/gdml/G01: o Updated setup for visualization in main program. o Added missing gdml files to CMake installation script. + extended/persistency/gdml/G02: + extended/persistency/gdml/G03: o Updated setup for visualization in main program. + extended/radioactivedecay/rdecay02: o Updated README, adding a note stating that all histograms but one are turned off by default, and describing how to turn them back on. Addressing problem report #1936. + extended/runAndEvent/RE05: o Fixed potential rare race condition issue in RE05PrimaryGeneratorAction. ---------------------------------------------------------------------------- Technical Notes --------------- o This patch should be applied on top of release 10.3.p01. o Technical notes distributed for release 10.3 are also applicable and valid for this patch. The code and rebuilt binary libraries for release 10.3.p02 are available through our "Download" Web page. Please refer to the Geant4 User Documentation for further information about using Geant4.