Import Geant4 10.1.0 source tree

This commit is contained in:
Gabriele Cosmo
2016-06-10 12:08:39 +02:00
parent 286caacf06
commit c9b32a6c0a
5770 changed files with 1050949 additions and 367105 deletions
+747
View File
@@ -0,0 +1,747 @@
Geant4 10.1-beta-01 Release Notes
---------------------------------
27 June 2014
Migration Notes & Main New Features
-----------------------------------
o Multi-threading:
+ Adoption of c++11 standard in conjunction with new CLHEP version 2.2.
o Reduction of memory leaked at exit with application of new pattern for
singletons dynamically allocated.
o A bug fix in the fragmentation of hadronic strings used by the FTF model
(G4LundStringFragmentation) affects the simulation of hadronic showers:
more neutral and less charged pions are now produced, increasing the
electromagnetic component, which makes the showers more compact and
with higher energy response.
o New data sets G4EMLOW-6.39, PhotonEvaporation-3.1 and
G4RadioactiveDecay-4.1 are required.
----------------------------------------------------------------------------
Technical Notes
---------------
o Official platforms:
+ Linux, gcc-4.4.7.
Tested on 64 bits architectures (Intel or AMD) with the Scientific
Linux CERN 6 (SLC6) distribution (based on RedHat Linux Enterprise 6).
Versions of Geant4 have also been compiled successfully on other
Linux distributions, Debian, Suse or other RedHat systems.
+ MacOSX 10.9, gcc-4.2.1, clang-3.4
* For multi-threading on MacOSX, -clang- compiler has to be used.
+ Windows/7 with Visual C++ 11.0 (Visual Studio 2012)
* Multi-threading mode currently -not- supported on Windows.
o More verified configurations:
+ Linux, gcc-4.7.2, gcc-4.8.1, gcc-4.9.0
+ Linux, Intel-icc 14.0.
+ Windows, Visual C++ 12.0.
o Geant4 10.1-beta-01 has been tested using CLHEP-2.2.0.1.
Please refer to the Geant4 User Documentation:
http://cern.ch/geant4/support/userdocuments.shtml
for further information about using Geant4.
----------------------------------------------------------------------------
List of features and fixes included in this Beta release since 10.0.p02:
o Configuration:
-------------
+ CMake:
o Added -DG4USE_STD11 compilation flag when c++11 is selected at
configuration time for capable compilers.
o Updated version of data sets: G4EMLOW-6.39,
PhotonEvaporation-3.1 and G4RadioactiveDecay-4.1.
Updated tags for 10.1-beta.
o Analysis:
--------
+ Added new CreateNtupleTColumn() functions for ntuple columns of vectors
in G4AnalysisManager.
+ Added interface classes G4VAnalysisReader and G4VRNtupleManager for
reading, and their Root specializations: G4RootAnalysisReader,
G4RootRNtupleManager. Introduced independent numbering of warnings
from reader.
+ Use G4Threading::IsMultithreadedApplication() instead of
G4AnalysisManagerState::IsMT() (now removed); this function fixes files
clean-up at the end of sequential application built against
multi-threaded libraries.
+ Added typedefs and functions for accessing iterators over H1, H2,
Ntuples. Added G4AnalysisManager functions to access FirstIds.
+ Updated to g4tools version 1.9.4 (see History_tools).
o Digits & Hits:
-------------
+ Added Merge() methods to G4ScoringManager and G4VScoringMesh, needed
for multi-threading.
+ Changed method names in G4VScoringMesh and derived classes.
+ Added missing options in command-based scorers in G4ScoreQuantityMessenger
and G4ScoreQuantityMessengerQCmd.
+ Added protoype cloning mechanism for sensitive-detectors, needed for
multi-threaded mode.
o Event:
-----
+ First implementation of memory reduction mechanism in multi-threading
mode. Adapted General Particle Source classes.
+ G4AdjointPrimaryGenerator: added splitting of forward gamma primaries to
improve convergence of Reverse-Montecarlo.
o Externals:
---------
+ Updated CLHEP module to development version 2.2.0.0:
o Converted statics and globals to const, thread-local or atomic
to improve thread safety.
o Introduced CLHEP_THREAD_LOCAL and CLHEP_ATOMIC_INT_TYPE macros
thread_local and atomic<int> keywords.
o Fixed compilation warnings on clang and gcc-4.9 compilers for
MTwistEngine.
o Geometry:
--------
+ navigation:
o Fix in G4MultiNavigator to properly set 'fIdNavLimiting' index to
navigator limiting the step, if only one navigator limits the step.
o G4PropagatorInField: added new method GetCurrentEquationOfMotion().
o Added internal method RecheckDistanceToCurrentBoundary() for
G4SafetyHelper, G4Navigator and G4PathFinder, for checking a proposed
displacement (new position) to see if it is in mother, and a proposed
new direction to find potential backtrack to return to mother volume,
or distance to new exit.
+ solids/Boolean:
o Enabled G4MultiUnion wrapper.
+ solids/usolids:
o Added UMultiUnion construct.
+ volumes:
o Introduced pool G4NavigationHistoryPool for storage and reuse of
navigation history levels collections.
Disabled use of G4EnhancedAllocator in G4NavigationHistory accordingly.
o Corrected implementation of copy-constructor and assignment-operator
for G4NavigationHistory, to provide exact copy for size of the
histories-level vector.
o Use G4Allocator for dynamic allocations of G4NavigationHistory objects.
o Global:
------
+ G4MTcoutDestination: by default ignores the printout during the
initialization of each thread, as they are identical to each other and
thus redundant.
+ Introduced G4SetPinAffinity() function (available only for LINUX):
"locks" a pthread to the given CPU index. This will be used by run
category as an option to improve performance on high-core counts CPUs.
+ New utility function G4Threading::IsMultithreadedApplication()
and G4Threading::SetMultithreadedApplication(bool) used to specify which
type of kernel is instantiated indipendently by build type (e.g. to
distinghuish application migrated to MT or still using sequential run
manager).
+ Define G4ThreadLocal to be 'thread_local' in case C++11 standard is
used (enabled through use of flag G4USE_STD11); directly adopt CLHEP
classes in such a case instead of G4MT* wrappers, if keyword is
supported.
+ Added forward of cout and cerr in MT to master G4coutDestination
if setup in client derived classes. To be used by special
sessions (e.g. GUI) that want to intercept thread cout/cerr.
+ G4Physics2DVector::Retrieve(): added extra protection to fix
Coverity reports in classes which are using 2-D vector.
+ Changed date for release 10.1-beta.
o Graphical Representations:
-------------------------
+ Introduced operator<< for const reference G4AttDefs map.
Deprecated const pointer equivalent.
o Intercoms:
---------
+ G4UIparameter: improved dignostic message of CandidateCheck().
+ Introducing "/control/cout/ignoreInitializationCout" UI command to
omit G4cout from threads during initialization, as they should
be identical to the masther thread.
+ Introducing new UI commands /control/doif and /control/getVal.
+ Extended use of "/control/macroPath" UI command to now also apply to
macros called inside a loop.
+ Removed unnecessary source file G4AnyType.cc, as all symbols are inlined.
o Interfaces:
----------
+ G4UIQt:
o Changed help tree splitter from vertical to horizontal.
Added method to display text in HTML.
o Changed help display to render parameters in a QTableView.
o Changed window expanding policy. Now when expanding main window, it
will keep the size of the viewer.
o When choosing "pick" icon, it will now apply picking to true.
o Fixed a Qt function that was only defined for Qt5.
o Materials:
---------
+ New classes G4UCNMaterialPropertiesTable and G4UCNMicroRoughnessHelper
for microroughness probability values and calculation of microroughness
in materials.
+ G4SandiaTable: make run time methods const, as materials are shared
between threads; added new methods GetSandiaCofWater(),
GetWaterEnergyLimit() and GetWaterCofForMaterial().
+ G4Material: improved material printout. Addressing problem report #1563.
+ Make G4Material copy constructor private.
+ Replaced size_t with int type for 'fNumberOfIsotopes' in G4Element
and 'fNumberOfComponents' and 'fNumberOfElements' in G4Material.
Adapted code accordingly.
+ G4NistmaterialBuilder: added new material G4_lBr, as STP Bromine is
mainly liquid while in NIST DB it is described as a gas.
Data taken from: http://en.wikipedia.org/wiki/Bromine.
Addressing problem report #1607.
o Particles:
---------
+ Updated particle properties to PDG-2013.
+ Added G4Exception in G4ElectronOcuppancy::AddElectron()
+ Compute life time from mass width for pi0 and sigma0.
Addressing problem report #1570.
+ Fixed lack of Cl35 ground state in G4NuclideTable2.
Fixed lack of "*std::log(2.0)" in some comparison of threshold time.
+ Fix in G4ExcitedMesonConstructor (missing pi + eta mode in DecayTable).
+ G4PhaseSpaceDecayChannel takes in to account mass width of daughter
particles and gives the dynamical mass according to Breit-Wigner
distribution. Added daughters_width in G4VDecayChannel.
Addressing problem report #1629.
+ Fixed bug for mass width in G4VDecayChannelFillDaughters.
+ Added new constructor in G4DynamicParticle.
+ Fixed Coverity defects.
o Physics Lists:
-------------
+ Builders:
o In all builders do not create a new instance of G4PreCompoundModel
and G4ExcitationHandler to reduce number of its instances.
o Avoid deleting models cross-sections in destructors of builders.
o Convert G4INCLXXPiKBuilder to G4INCLXXPionBuilder.
Set the maximum energy for G4INCLXXPionBuilder to 20 GeV.
Added G4QGSPKaonBuilder.
o Added G4QGSPLundStrFragmProtonBuilder outfitting QGSP model with
G4LundStringFragmentation (instead of the G4QGSMFfragmentation);
this appears to give better agreement with data at the energies above
100GeV (tested for proton+C).
Set minimum energy for G4QGSPLundStrFragmProtonBuilder at 100GeV.
+ Constructors:
o electromagnetic:
- G4EmDNAPhysics_option1: added new constructor for DNA physics.
- G4EmLowEPPhysics: added G4LowEWentzelVIModel.
- G4EmLowEPPhysics, G4EmStandardPhysics_option3,
G4EmStandardPhysics_option4, and G4EmLivermoreStandardPhysics:
cleanup gamma and e- models instantiation.
o gamma_lepto_nuclear:
- Switched on muon-nuclear by default.
- Implemented thread safe UI messenger.
Addressing problem report #1606.
- G4BertiniElectroNuclearBuilder: fixed case of double deletion.
o hadron_elastic:
- G4HadronHElasticPhysics: use G4NuclNuclDiffuseElastic model
instead of the Gheisha-based G4HadronElastic for all ions.
Improved version of elastic, used temporarily only in FTFP_BERT_TRV
as playground before becoming the default in all physics lists.
- Fixed cases of inline static methods in G4HadronElasticPhysics.
o hadron_inelastic:
- Modified switching energies and models in HadronPhysicsINCLXX.
- Added constructor for NuBeam and Shielding.
o ions:
- Reuse G4PreCompoundModel and not create a new local in ion physics
classes, should reduce memory churn.
o limiters:
- G4StepLimiterPhysics: fixed minor memory leak reported by Coverity.
+ Lists:
o Added experimental physics lists ShieldingM and NuBeam.
o FTFP_BERT_TRV: use (temporary) G4HadronHElasticPhysics in order
to allow testing of improvements in elastic.
o FTFP_BERT_HP, QGSP_BIC_HP, QGSP_BERT_HP: set cut on proton to
zero to simulate all recoils from elastic scattering.
o Electromagnetic Processes:
-------------------------
+ DNA:
o Modified G4DNAChampionElasticModel to read high precision differential
cumulated cross-section.
o Modified calculation of secondary kinetic for fast code.
Updated chemistry.
o Changed to faster method interpolation in G4DNABornIonisationModel .
o G4ITSafetyHelper: force temporary usage of G4PathFinder.
o Added interface class G4ITTimeStepper.
o Added G4DNABornAngle and G4DNARuddAngle generators; ionisation models
switch to use angular generator interface.
o Switched to DNAion for Si in G4DNAGenericIonsManager.
o Added Si to G4DNARuddIonisationExtendedModel.
Updated G4DNAIonisation and G4DNARuddIonisationExtendModel for
G4GenericIon usage.
o Avoid usage of molecule iterators as pointers.
o Fixes for Coverity defects.
o Requires new data-set G4EMLOW version 6.39.
+ Low Energy:
o Added new model class G4LowEWentzelVIModel.
o G4LivermorePhotoElectricModel: added low-energy cross-section for water.
o G4IonParametrisedLossModel, G4LivermoreIonisationModel: added
G4DeltaAngle generator for angular distribution.
o Added new class for ionisation cross-section model from Miranda et al.
Updated G4empCrossSection and G4UAtomicDeexcitation accordingly.
o Make G4AtomicTransitionManager become pure singleton shared between
threads, with all run time methods const; Initialise() method to be
called in the beginning of the run.
Adapted classes accordingly.
+ Polarisation:
o G4PolarizationMessenger: fixed Coverity report on non-initialized
members.
+ Standard:
o Removed method SampleDisplacement() in G4UrbanMscModel; code moved
inside SampleScattering().
o G4WentzelOKandVIxSection, G4WentzelVIRelXSection, G4WentzelVIModel,
G4WentzelVIRelModel, G4eCoulombScatteringModel,
G4hCoulombScatteringModel: added Boolean flag to identify in
physics-list if multiple and single scattering are combined or not.
o G4WentzelOKandVIxSection: fixed initialisation for low-energy model
(this model is not combined with single scattering); fixed small
inaccuracy for sampling.
o G4WentzelVIModel, G4WentzelVIRelModel, G4WentzelOKandVIxSection,
G4eCoulombScatteringModel: revised and make consistent definition
of min and max scattering angle for single scattering mode.
Small optimisation to address some CPU penalty.
Removed unused class members
o G4WentzelVIModel: changed single scattering factor from 1.5 to 1.25.
Added possibility to compute second momentum. Code cleanup.
o G4BraggModel, G4BraggIonModel: added spin correction.
o G4UniversalFluctuations: adapted code to allow for vectorised use of
random engine for CPU performance improvement; no change to algorithms.
o G4UrbanMscModel: modified ComputeGeomPathLength() method to provide one
single return statement for easier printouts.
Modification in order to improve timing by 1-14%, depending on the
setup and cut. Made correction to improve efficiency in 'UseSafety'
mode. Code cleanup.
o G4DeltaAngle: added implementation of SampleDirectionForShell() virtual
method; improved sampling.
o G4eCoulombScatteringModel, G4hCoulombScatteringModel,
G4IonCoulombScatteringModel: updated initialisation of vector of cuts;
cut for recoil can be changed via '/run/setCut' command.
o G4PAIModel, G4PAIModelData: improved cout.
o Fixes for Coverity defects.
+ Utils:
o G4VMultipleScattering: added possibility to build extra table for a
model. Minor cleanup for post-safety computation.
Introduced mechanism of displacement at geometry boundary default.
o G4VEmModel, G4VEmFluctuationModel: defined different pattern to access
to random generator for sequential and MT modes in order to save CPU
in derived classes.
o G4EmCorrections, G4EmElementSelector, G4VEmModel, G4VEmProcess,
G4VEnergyLossProcess, G4VMultipleScattering, G4ionEffectiveCharge:
general cleanup including: removed old commented code; use std::min
and std::max instead of "if" where possible; use G4Log; reduced number
of divisions.
o Fix in G4VMscModel::ComputeSafety() pass 2nd parameter to
G4SafetyHelper for optimisation. Added default for 2nd parameter,
compatible with G4SafetyHelper.
o G4VEnergyLossProcess: for sub-cutoff regime added upper limit when
calling G4SafetyHelper.
o G4VSubCutProducer, G4LossTableManager, G4VEnergyLossProcess: added new
interface to allow for production of delta-electrons below production
threshold.
o G4EnergyLossMessenger, G4EmProcessOption: added extra flag and UI
command "/process/em/deexcitationIgnoreCut" allowing to disable check
on production threshold by deexcitation module.
o G4VEnergyLossProcess, G4VEmProcess, G4VMultipleScattering: fix for
cases of crash in G4WrapperProcess in sequential mode.
Addressing problem report #1594.
o G4EmSaturation: updated class design, VisibleEnergyDeposition() method
become virtual allowing application of user alternative algorithms.
Added protection to throw exception if e- or proton are not defined
when used in VisibleEnergyDeposition(). Do not instantiate G4Electron
and G4Proton by default in InitialiseBirksCoefficient().
Moved check on existence of e- and proton from run time to
initialisation (i.e. it is now done only once).
o G4EmProcessOptions, G4EnergyLossMessenger: added interface methods and
UI command '/process/msc/DisplacementBeyondSafety'.
o G4LossTableManager: helper classes are instantiated only if user
requests via access method.
Minor change to modifiers. Changed initialisation of G4EmSaturation
class to work in MT mode.
o G4LossTableManager, G4VEnergyLossProcess, G4VEmProcess: improved
initialisation; moved modifiers for parameters from inline to source
and added extra check on parameter value; throw warnings if parameters
are out of range.
o Fixes for Coverity defects.
o Generic Processes:
-----------------
+ Management:
o Added new process type for UCN processes in G4ProcessType.
+ Optical:
o Implemented full UNIFIED reflectivity probabilities when a dichroic
surface reflects.
o G4OpWLS, G4OpRayleigh: always rebuild the integral-table in
BuildPhysicsTable() method.
o Hadronic Processes:
------------------
+ Made pointers to G4ParticleDefinition use const.
+ cross_sections
o Fixed use of inline keyword for methods defined inside
G4ElectroNuclearCrossSection.
o Minor reshuffling of some variables to calculate some variables only
when used to prevent overflows.
o Added protection in destructor of G4ElectroNuclearCrossSection
against NULL pointer entries in cache.
o G4KokoulinMuonNuclearXS does not call anymore explicitly
clearAndDestroy() for the cross-section table, as the underlying
physics vectors are managed by allocators.
o G4ChipsHyperonElasticXS : avoid to exclude Sigma+ in the set of
hyperons which can be treated by Chips elastic scattering.
o G4ChipsAntiBaryonElasticXS: include anti_Omega- in GetPTables().
+ management
o G4HadronicProcess: added method GetHadronicInteractionList() allowing
access to the list of registered models, removed obsolete access methods
to G4EnergyRangeManager.
o G4HadronicProcessStore: changed to become G4ThreadLocalSingleton,
allowing for automatic destruction of hadronic models cross-sections.
Correction in Clear() for stopping processes being deleted twice (once
because are registered as normal processes and once are registered as
extra processes).
Added printout information for deuteron, triton, He3 and alpha.
o G4EnergyRangeManager: some cleaned up; instead of c-array, models
pointers are now stored in STL vectors.
+ models/abla
o Added model-description methods to the interface.
o Fixes for Coverity defects.
+ models/binary_cascade
o Extended model-description to cover de-excitation model.
+ models/cascade
o Added new pi-nucleon 2-body angular distributions: G4PipP2PipPAngDst,
G4PimP2PimPAngDst, G4Pi0P2Pi0PAngDst and G4PimP2Pi0NAngDst.
Below 2.6 GeV, distributions taken from SAID phase shift calculations
with Coulomb phase removed. Above 2.6 GeV, taken from data.
o G4NucleiModel, G4CascadeCoalescence, G4CascadeInterface: moved static
members which use envvars into const data, and initialize them in ctors.
o G4PreCompoundDeexcitation: attempt to use shared instance of
PreCompound by fetching from hadronic registry.
+ models/coherent_elastic
o Added new dipole model class G4LEHadronProtonElastic.
o New class G4hhElastic, implementation of the qQ-model with springy
Pomeron for hadron-hadron elastic scattering.
o G4LEnp, G4LEpp: added SampleInvariantT() method and inheritance
from G4HadronElastic; implemented SampleT() method in G4LEnp.
Fix in G4LEpp for incorrect use data array, used GetInvariantT()
inside ApplyYourself().
o G4NuclNuclDiffuseElastic: fix to nuclear radius (which was zero),
Fixed deletion in destructor.
o Fix in G4DiffuseElastic.
+ models/de_excitation
o Added ModelDescription() to G4ExcitationHandler.
+ models/im_r_matrix
o Do not delete physics vector explictly in destructors since they are
managed by allocators in G4XResonance, G4XAnnihilationChannel,
G4XNNElasticLowE, G4XnpElasticLowE and G4XnpTotalLowE.
o Fixed out of bound error in G4DetailedBalancePhaseSpaceIntegral,
reported by Coverity.
+ models/inclxx
o Updated to INCL++ v5.2_rc2: extending INCL++ up to 15-20 GeV incident
energy. A few improvements, minor bug fixes and speed-ups.
o Fix: avoid negative Fermi energies for delta resonances.
o Fixed crash in p+He2 reactions.
+ models/lend
o Protection for potential division by zero in tpia_misc and
tpia_kinetics.
+ models/lepto_nuclear
o Reuse G4PreCompoundModel and G4ExcitationHandler and not instantiate
locally as new; do not delete objects which following
G4HadronicInteraction interface to avoid double deletion.
+ models/management
o Added DeExciteModelDescription() to G4VPreCompoundModel and provided
default implementation.
o G4HadronicInteractionRegistry: added new method FindAllModels().
o G4HadronicInteraction: removed unnecessary dependency on
G4ReactionDynamics.
+ models/parton_string
o Fix in G4VPartonStringModel, occuring when debugging with residual
nucleus mass number equal to zero.
Improved code to treat an ExcitedString when it is a hadron stored as
a track of the ExcitedString; needed for a correct processing of
quark-exchange processes in FTF model.
o Fix on the positions of the increment of the variables "StateQ++" and
"StateAQ" in G4LundStringFragmentation. This fix increases the
production of neutral pions, while decreasing the production of
charged pions. Therefore it affects the simulation of hadronic
showers by increasing the electromagnetic component, which makes
the showers more compact and with higher energy response.
+ models/pre_equilibrium
o Added DeExciteModelDescription() to G4PreCompoundModel.
+ models/radioactive_decay
o G4RadioactiveDecayMode: added double beta- decay and double beta+
decay to enum
o G4RadioactiveDecay: added dummies for double beta- decay and double
beta+; long ground state lifetimes with no decay scheme.
Addressing problem report #1560.
Requires new data set RadioactiveDecay-4.1.
+ models/rpg
o G4RPGInelastic: defined GHADLISTSIZE, now needed after removal of
class G4ReactionDynamics.
+ processes
o Added new G4UCN* processes and utility classes.
+ stopping
o G4HadronStoppingProcess: in destructor do not de-register if Boolean
flag G4HadronicProcess::deRegister is true, this is needed to cope
with the modified thread-local-singleton G4HadronicProcessStore.
+ util
o Removed obsolete G4ReactionKinematics and G4ReactionDynamics classes.
o Run
---
+ Introduced pin affinity functionalities.
+ Use G4Threading::SetMultithreadedApplication(true) if a
G4MTRunManagerKernel is instantiated.
+ Increase verbosity in case of NULL process-manager pointer in
multi-threaded mode.
+ Modified G4AdjointSimManager, G4AdjointSimMessenger and
G4AdjointPrimaryGeneratorAction to add forward primary splitting
for Reverse MonteCarlo.
+ Explicitly invoke deletion of new G4NavigationHistoryPool instance
in G4RunManagerKernel at job's end.
+ Fixes for Coverity defects.
o Tracking
--------
+ Corrections in G4AdjointSteppingAction and G4AdjointTrackingAction
to have the treatment of adjoint and forward tracks in the same event.
o Visualization:
-------------
+ management:
o Introduced G4VGraphicsSystem::fileWriter to allow special informational.
o Added run ID to G4Atts of user drawn trajectories.
o Added '/vis/touchable/dump' command; dumping G4Atts to G4cout.
o Added parameter to '/vis/scene/add/axes' command to suppress
annotations.
o /vis/specify and /vis/scene/add/logicalVolume: added flag for
drawing/suppressing axes.
o G4VisCommands: Fixed deprecated call to GetAttDefs.
o Fix for NULL pointer in G4VSceneHandler.
+ modeling:
o Introduced G4TouchableDumpScene and G4PseudoScene.
o G4TrajectoriesModel: Add run ID.
o G4PhysicalVolumeModel: improved constructor.
+ DAWN:
o DAWNFILE declared as G4VGraphicsSystem::fileWriter.
+ gMocren:
o Fixed memory leak in G4GMocrenFile. Addressing problem report #1585.
o gMocren declared as G4VGraphicsSystem::fileWriter.
+ HepRep:
o HepRep and HepRepFile declared as G4VGraphicsSystem::fileWriter.
+ OpenGL:
o Improvements to class design and some bug fixes for picking.
o Some Qt fixes and improvements.
o Improved protection of pointers.
o G4OpenGLImmediateSceneHandler: split AddPrimitivePreamble() in three
functions to avoid dynamic_cast. Gaining up to 20% speedup in drawing.
o G4OpenGLViewer: time optimization in printEPS() for Immediate mode;
saving 70-80% in drawing time on batch drawing, 10-20% when printing
with a screen viewer.
Manage bad file name case (missing directory) in printGl2PS().
o G4OpenGLQtViewer: added ability to change the color of text in
DrawText().
o New Viewer parameters info panel.
o G4OpenGLQtViewer: fixed problem in viewer/set parameters.
o Speed improvements by avoiding a dynamic_cast.
+ OpenInventor:
o G4OpenInventorXtExaminerViewer: adjusted dimensions of viewer aux
window; implemented look-ahead for better tracking of trajectory
animation; implemented mouse-over readout for trajectories.
+ VRML:
o VRML1/2File declared as G4VGraphicsSystem::fileWriter.
+ XXX:
o G4XXXFile declared as G4VGraphicsSystem::fileWriter.
o Data Sets:
---------
+ G4EMLOW-6.39:
o Added sigmadiff_cumulated_elastic_e_champion_hp.dat
and corresponding macro.
o added sigmadiff_cumulated_ionisation_e_born_hp.dat and
sigmadiff_cumulated_ionisation_p_born_hp.dat.
o Updated electron inelastic files for Si (microelec).
o Added cross-section shell data by Miranda et al. (2014).
o Added sigma_ionisation_(b,be,li)_rudd.dat, sigma_ionisation_p_rudd.dat
(up to 1 GeV), sigma_ionisation_si_rudd.dat and fluor_Bearden data to
dna module.
+ PhotonEvaporation-3.1:
o Corrections of of +X, +Y, ... levels for compliance with latest
isomer list.
o 212Bi (z83.a212, line 8): change strength of gamma transition
(415.272 keV to ground state) from 4.4 to 0.4.
Addressing problem report #1565.
+ G4RadioactiveDecay-4.1:
o Corrections for X,Y,Z,W and A levels.
o Added observationally stable (very long lifetime) ground states to 20
nuclides: 4 are thought to decay by alpha emission, 6 by double beta+
decay and 10 by double beta- decay.
G4RadioactiveDecay now recognizes double beta- and double beta+ decays,
but currently does nothing when they occur.
o Examples:
--------
+ Updated reference outputs, macros and scripts.
+ advanced/air_shower
o Follow migration of MT-ready GPS code.
+ advanced/amsEcal
o Added protection in RunAction against division by zero.
Addressing problem report #1522.
+ advanced/gammaknife
o Follow migration of MT-ready GPS code.
+ advanced/gammaray_telescope
o Prepare code for migration to multi-threading.
o Removed deprecated RO geometry.
+ advanced/human_phantom
o Follow migration of MT-ready GPS code.
+ advanced/underground_physics
o Migrated code to multi-threading.
+ advanced/xray_fluorescence
o Migrated code to multi-threading.
o Completed migration to g4tools (removed AIDA dependency).
+ advanced/xray_telescope
o Migrated code to multi-threading.
o Follow migration of MT-ready GPS code.
o Added definition of muons and short-lived.
o Revised method book() of analysis singleton.
+ extended/analysis
o Use physics list FTFP_BERT in AnaEx01,02,03.
Removed custom PhysicList class from shared.
o Create two ntuples in AnaEx02,03 instead of one in order to
demonstrate how to do this with all tools.
+ extended/common
o Removed fPrintModulo from ExG4EventAction01 and fSetPrintModuloCmd
from ExG4EventAction01Messenger, now obsolete.
+ extended/common/analysis
o Updated for changes in analysis category: ntuple columns of vectors
(disabled), changes in ntuple_booking. Updated to g4tools-1.10.0.
o Added typedefs and functions for accessing iterators over H1, H2,
Ntuples.
o Imported tools/hbook/*.f files from analysis examples.
+ extended/electromagnetic/TestEm1
o DetectorConstruction: define heavy water vapor starting from isotopes.
o Removed printout from second thread in TestEm1.in macro.
o Introduced function Run::EndOfRun().
o Removed PhysicsList::SetCuts().
o Simplified PhysicsList and its messenger, accordingly.
o PhysicsList: added "emlowenergy" option.
+ extended/electromagnetic/TestEm2
o Introduced function Run::EndOfRun().
o Added "emlowenergy" option for EM physics.
o Removed PhysicsList::SetCuts().
+ extended/electromagnetic/TestEm3
o Enabled multi-threading; implemented required migration.
o Added "emlowenergy" option for EM physics.
o Removed PhysicsList::SetCuts().
+ extended/electromagnetic/TestEm5
o Introduced function Run::EndOfRun().
o Added "emlowenergy" option for EM physics.
o Removed PhysicsList::SetCuts().
o PhysicsList, PhysicsListMessenger: removed local cuts commands.
o Added possibility to change number on threads though 2nd parameter
in command line.
+ extended/electromagnetic/TestEm6
o Suppressed EventAction and its messenger.
+ extended/electromagnetic/TestEm7-9
o Added "emlowenergy" option for EM physics.
o Removed SetCuts() method and corresponding UI commands,
applied code guidelines.
+ extended/electromagnetic/TestEm11
o Introduced function Run::EndOfRun().
o HistoManager: removed hbook.
o Set "ToBeBroadcasted == false" for UI commands that modify physics
list and detector since these should be executed only by master.
o Removed SetCuts() method and corresponding UI commands,
applied code guidelines.
+ extended/electromagnetic/TestEm12
o Enabled multi-threading; implemented required migration.
o Added "emlowenergy" and dna_option1 in physics-list.
o Removed SetCuts() method and corresponding UI commands,
applied code guiedlines.
+ extended/electromagnetic/TestEm13-14
o Removed SetCuts() method and corresponding UI commands,
applied code guidelines.
+ extended/electromagnetic/TestEm15
o Removed PhysicsList::SetCuts().
+ extended/electromagnetic/TestEm16
o Suppressed EventAction and its messenger.
+ extended/electromagnetic/TestEm18
o Removed PhysicsList::SetCuts().
+ extended/eventgenerator/exgps
o Migrated to use of built-in physics list.
Use QGSP_BIC physics list to avoid dependency on data.
o Removed 'drawTracks' and 'printModulo' commands and adapted macro files
to use the equivalent built-in macro commands.
o Implemented changes needed for MT-ready GPS, substantially reducing
memory footprint in nulti-threaded mode.
+ extended/eventgenerator/HepMC/MCTruth
o Changes to comply with coding conventions.
+ extended/eventgenerator/pythia/decayer6
o Removed custom physics-list.
o Fixed order of instantiating Vis/UI.
o Replaced use of std::cerr with G4cerr.
+ extended/exoticphysics/channeling
o New example showing how channeling of 400 GeV/c protons in bent
Si crystal can be simulated in Geant4.
+ extended/exoticphysics/phonon
o Fix in CMake script to copy data in build directory.
+ extended/exoticphysics/ucn
o New example demonstrating the functionality of UCN physics.
+ extended/g3tog4
o Moved data directory in clGeometry.
+ extended/hadronic/FissionFragment
o New example to exercise fission fragmentation.
+ extended/hadronic/Hadr00
o HistoManager: added histogram with cross-section per volume.
+ extended/hadronic/Hadr02
o Applied code guidelines and code cleanup.
+ extended/hadronic/Hadr03
o Enabled multi-threading; implemented required migration.
o Defined a stucture for nuclear channel data.
o Use G4HadronElasticPhysicsHP in physics-list.
o Histograms: changed numbering scheme. Added histo of atomic mass.
o EndOfRun: introduced optional print and UI command to control it.
o Register RunMessenger in RunAction instead of Run.
+ extended/hadronic/Hadr04
o Pass primary kinematic to Run.
o NeutronHPphysics: check for pre-existing processes.
+ extended/hadronic/Hadr06
o New example to survey energy deposition and particle's flux
from an hadronic cascade.
+ extended/medical/electronScattering
o Migration to multi-threading.
o Removed PhysicsList::SetCuts().
+ extended/medical/electronScattering2
o Fixed memcheck errors: foil thickness now defined in Detector
constructor.
o Allow for selection of physics-list option4.
o Follow migration of MT-ready GPS code.
o Applied code guidelines; added G4EmLowEPPhysics.
+ extended/medical/fanoCavity
o Fix to proper initialisation of members in RunAction class.
+ extended/medical/GammaTherapy
o Applied code guidelines.
+ extended/optical/LXe
o Removed shared process pointers between threads.
+ extended/optical/WLS
o Follow migration of MT-ready GPS code.
+ extended/parallel/MPI
o Added first version of G4RunMerger and G4ScorerMerger.
o New CMake configuration.
+ extended/parameterisations/gflash
o Follow migration of MT-ready GPS code.
+ extended/persistency
o Applied code guidelines.
+ extended/radioactivedecay/rdecay01
o Enabled multi-threading; implemented required migration.
+ extended/visualization
o Migrated 'userVisAction' example to multi-threading (based
on basic/B1 example).
----------------------------------------------------------------------------
+340
View File
@@ -0,0 +1,340 @@
Geant4 10.0 - patch-01 Release Notes
------------------------------------
28 February 2014
List of fixes included in this public patch since the public release 10.0:
o Configuration:
-------------
+ CMake:
o Include /opt/X11 paths for X11 and OpenGL on MacOS X Mavericks.
o Added variables for G4LIB_{BUILD,USE}_EXPAT as for ZLIB and export
them based on value of GEANT4_USE_SYSTEM_EXPAT.
Addresses problem report #1567.
o Added builtin zlib to list of features, added G4zlib to list of
libraries when used; export them to geant4-config.
Addresses problem report #1572.
o Replaced use of GNU awk extension 'length' in geant4-config for
determining number of datasets. Use return value of split function
to get length of array. Addresses problem reported in item #1614
in hypernews 'Installation and Configuration' forum.
+ GNUMake:
o Fixed setting of -fPIC in MT-mode for Linux-g++, Linux-icc and
Darwin targets.
o Analysis:
--------
+ Updated to g4tools 1.7.1.
Fixed performance issue observed for an ntuple with large numbers of
columns reported in item #455 in hypernews 'Analysis' forum.
o Event:
-----
+ Changed default value of Q (charge) for /gun/ion and /gun/ionL commands.
Now electrons are fully stripped (i.e. Q = Z) if Q is not specified.
+ G4SPSPosDistribution::IsSourceConfined(): added protection against
null pointer. Addressing problem report #1255.
o G3toG4:
------
+ Correction to CMake script: removed no longer existing package from
dependency list.
o Geometry:
--------
+ magneticfield:
o Added call to G4Mag_EqRhs::SetChargeMomentumMass() from
G4Mag_SpinEqRhs::SetChargeMomentumMass(), following report in
item #210 in hypernews 'Fields' forum.
+ navigation:
o Fixed implementation of SetNavigatorForTracking() in
G4TransportationManager, to initialise active navigator and
propagator-in-field with the new provided instance.
Addressing problem report #1537.
o Minor code cleanup in G4GlobalMagFieldMessenger.
+ solids/CSG:
o Added correct cloning mechanism in G4U* wrappers.
Addressing problem report #1553.
o Simply reset polyhedron pointer to zero for modifiers of G4U* wrappers
in parameterisation. Resolves crash in MT visualization when using
USolids.
+ solids/specific:
o Fix in G4GenericTrap::InsidePolygone() to check if p lies between
the two extremes of the segment. Addressing problem report #1541.
o Corrected cloning mechanism in G4U* wrappers.
Addressing problem report #1553.
o Simply reset polyhedron pointer to zero for modifiers of G4U* wrappers
in parameterisation. Resolves crash in MT visualization when using
USolids.
o Removed left-over debug printout in G4Polycone::SetOriginalParameters().
+ solids/usolids:
o Implemented precise safety in UTubs and UCons for SafetyFromOutside().
Precise safety is used in UPolycone for calculation of SafetyFromOutside().
o Fixed typo in SafetyFromInside() for UTubs for correct calculation of
'safePhi'.
o Corrected implementation of Clone() method in UBox, UTet, UTrd.
Corrected cloning mechanism and copy constructor in G4USolid.
Addressing problem report #1553.
o UPolycone fixes: added validity check of shape for case when
RMin > RMax; moved global bounding-box to be a class data member.
Corrected implementation of DistanceToOut(p,v) for convexity and
normals; corrected implementation of DistanceToOut(p,v) for stuck
tracks due to DistanceToIn=DistanceToOut=0; corrected implementation
of Inside() in case of OpenPhi.
o Removed ResetPolyhedron() from G4USolid bridge class as not necessary;
moved 'fPolyhedron' pointer to protected.
o Global:
------
+ G4PhysicsVector: small performance optimisation to avoid one division.
+ Fixed Coverity defects in G4Physics2DVector::Retrieve().
+ Implemented workaround to guarantee G4cout/G4cerr are initialized
correctly before main function.
+ Added protections to avoid core dumps caused by division by zero
and other minor updates in G4ConvergenceTester.
+ Updated date and version for 10.0.p01.
o Graphics Representations:
------------------------
+ Fixes defects reported by PVS static analysis tool.
Some code cleanup.
o Electromagnetic Processes:
-------------------------
+ DNA:
o Fix in G4DNAMolecularMaterial to prevent segmentation fault in case a
model is not created at initialisation time.
+ Low Energy:
o Suppressed exception warning issued by some Penelope models;
Controlled by verbosity flag now for diagnostics.
o Allow for (AutoLock-protected) creation on-the-fly of tables in
SampleSecondaries(); avoid crash when the loop of SampleSecondaries()
is inkoved in a unit test.
o Fixed Coverity report in G4LivermorePhotoElectricModel.
+ Standard:
o Bug fix in G4UrbanMscModel; 1st normal step in StepLimitType 2 mode
was not randomized.
Move methods ComputeTheta0,SimpleScattering(), SampleDisplacement(),
LatCorrelation() to be inlined for small CPU speedup.
o Fix in G4UniversalFluctuation for energy loss for extreme small cuts.
Bug fix in "ionization" computing (small observable effect).
Replaced G4Pow::expA() by faster G4Exp().
Reduced number of divisions by addition of extra class members.
o G4NuclearStopping: fix to avoid changing ion charge.
o G4ionIonisation: do not instantiate extra model at high enegry if
G4IonParameterisedModel is used. Improved printout at initialisation.
o G4SauterGavrilaAngularDistribution: use Penelope 2008 sampling
algorithm, as it is more effective; distribution itself is unchanged.
o G4GoudsmitSaundersonMscModel, G4GoudsmitSaundersonTable: use G4Log(),
and G4Exp().
o G4eCoulombScatteringModel, G4eSingleCoulombScatteringModel: get pointer
to the vector of cuts from parameters of Initialise(..) method and not
from G4ProductionCutsTable; more convenient for unit tests.
o Fixed Coverity defects.
+ Utils:
o G4VEnergyLossProcess: fixed division by zero for the case of an ion
with charge zero.
o G4EmCalculator: in FindCouple() method, implemented loop over all
regions if argument pointer to region of the method is null.
Added G4Exception if G4MaterialCutsCouple is not found out and
also inside GetCSDARange() when CSDA table is not initialized.
o G4LossTableMananger: fixed bug for initialisation of several runs
in one job (affecting muons and e- and providing non-reproducibility)
o G4LossTableMananger, G4EmProcessOptions: define default verbosity=0
for worker thread, so summary on EM processes is not duplicated.
o G4VEnergyLossProcess, G4VEmProcess: define fixed precison=6 for
initialisation printout.
+ xrays:
o Make some class members and methods static in G4Cerenkov and
G4Scintillation.
o Generic Processes:
-----------------
+ Cuts:
o Fixed verbosity warning in G4ProductionCutsTable.
+ Decay:
o Fixed problem of wrong global time for secondaries in case that the
primary track stops during along step. Addressing problem report #1555.
o Replaced use of DBL_MAX with age of the universe for stable particle
life time. Addressing problem report #1569.
+ Management:
o Fixed verbosity warning in G4ProcessTable.
+ Optical:
o Make 'WLSTimeGeneratorProfile' and 'UseTimeProfile' static in G4OpWLS.
o Hadronic Processes:
------------------
+ cross_sections:
o Removed wrong if statement against zero cross-section in
G4CrossSectionDataStore::SampleZandA(). Correct fix for the crashes
observed in QBBC.
o Disabled threshold for the inelastic cross-section in
G4BGGNucleonInelasticXS.
+ management:
o Added printout of energy momentum check in G4HadronicProcess.
+ models/binary_cascade:
o G4BinaryLightIoncascade::FuseNucleiAndPrompound(): added protection at
low energy: available energy is not sufficient to create a fragment.
o G4BinaryLightIonReaction: fix for Coverity report on small leak.
o Added printout of particle name in check for valid type of projectile
in G4BinaryCasacde::ApplyYourself().
+ models/de_excitation:
o G4ExcitationHandler: fixed minor memory leak in the case when
FermiBreakUp has no final states available; reported in item
#1371 in hypernews Hadronic forum.
o G4NuclearLevelManager: trivial fix for defect reported by Coverity.
+ models/inclxx:
o Fix for occasionally produced excited nucleon as a pre-fragment.
o Added getter for INCL Config object in the G4INCLInterfaceStore.
+ models/lend:
o Correction to CMake scripts: removed no longer existing package
from dependency list.
+ models/neutron_hp:
o Fixed problem in reading compressed data files in
G4NeutronHPThermalScatteringData. Addressing problem report #1543.
o Correction to CMake scripts: removed no longer existing package
from dependency list.
+ models/radioactive_decay:
o Fixed memory leak in G4RadioactiveDecay destructor by deleting
decay table map.
+ models/theo_high_energy:
o Correction to CMake scripts: removed no longer existing package
from dependency list.
+ models/utils:
o Use G4Allocator for allocation of G4Fragment objects.
Should help reducing memory churn and improve CPU performance.
Removed counter of warnings; added exception warning in verbose mode.
+ stopping:
o G4MuMinusCapturePrecompound: fixed case of infinite loop for mu-
capture. Addressing problem report #1536.
+ util:
o Cleanup of automatic TLS data conversion in G4ReactionProduct,
G4HadSignalHandler and G4HadronicWhiteBoard.
o Interfaces:
----------
+ Explicitly set the LC_NUMBERIC locale to "C" in G4UIQt.
Addressing problem report #1487.
Fixed problem with resizing the QGLwidget when scene is opened from UI.
o Particles:
---------
+ G4ParticleDefinition::DumpTable() displays correct stability
information for a general ion as long as it is known to
G4NuclideTable. Addressing to bug report #1560.
+ Fixed properties for heavy anti-baryons G4AntiLambdab, G4AntiSigmabZero
and G4AntiLambdacPlus. Addressing problem report #1571.
+ Minor fix in G4ParticleTable::GetParticle() method.
o Physics Lists:
-------------
+ Correction to CMake scripts: removed no longer existing packages from
dependency list.
+ constructors/electromagnetic:
o G4EmStandardPhysics_option4, G4EmLivermorePhysics, G4EmPenelopePhysics:
use RangeFactor=0.01 to increase simulation accuracy.
Use G4UrbanMscModel for pions, kaons, protons instead of WentzelVI
to have more accurate ranges of low-energy hadrons (in particular,
protons).
o G4EmStandardPhysics_option4, G4EmLivermorePhysics, G4EmPenelopePhysics,
G4EmStandardPhysics_option3: use the same order of processes for e+-,
does not change any result but makes more easy comparing log files for
different EM physics options.
o G4EmStandardPhysics, G4EmStandardPhysics_option1,
G4EmStandardPhysics_option2: added Coulomb scattering process for
pions, kaons, proton, anti-proton in order to have more smooth
transition from EM to hadronic scattering.
o Fixed race condision issue in OpticalPhysics; also specify command
/optics_engine/setOpProcessUse not available for 'Idle' state.
o Avoid static G4Scintillation method invoked through a pointer.
+ constructors/ions:
o INCL++ was incorrectly used up to 48 GeV for deuteron, triton,
He3 and alpha. Changed the upper limit for ions to 18*3 GeV.
+ lists:
o Registered model to handle neutron capture above 20 MeV in in LBE list.
Addressing problem report #1562.
o Run:
---
+ Changed order of setting world volume pointer to the transportation
manager for worker thread to be the same as the master thread and the
sequential mode, i.e. prior to invoking ConstructSDandField().
Addressing problem report #1561.
+ Making sure worker threads re-build physics tables as well when the
master thread is requested to rebuild.
o Track:
-----
+ Corrected message from CheckIt() in G4VParticleChange and
G4ParticleChangeForDecay.
o Examples:
--------
+ Updated reference outputs.
+ advanced/amsEcal:
o Added protection against division by zero in RunAction.
Addressing problem report #1522.
+ advanced/ChargeExchangeMC:
o Fixed few compiler warnings for shadowed variables).
FTFP_BERT replaces deprecated QGSP_BERT.
+ advanced/hadrontherapy:
o Fixed missing inizialization of data in PassiveProtonBeamLine class.
+ advanced/nanobeam:
o Made code thread safe to overcome unsafe CLHEP matrix inversion
in RunAction.
+ advanced/xray_fluorescence:
o Fixed shadowed variables and compilation errors when AIDA is available.
+ extended/analysis/B1Con:
o Increased number of events of run1.mac.
+ extended/electromagnetic/TestEm4:
o Updated vis.mac macro and printout from run.
+ extended/electromagnetic/TestEm8:
o HistoManager: more accurate computation of mean energy deposition;
fixed output of rms of mean energy.
+ extended/exoticphysics/phonon:
o Fix in CMake script to copy data in build directory.
+ extended/field/field04:
o Replaced Update() method and commands with ReinitializeGeometry().
Clean volumes and solids stores in Construct().
o Updated gui.mac: allow for execution of vis.mac first to make the
command added in menus available. Corrected wireframe parameter.
o Avoid static method being invoked by a pointer. Fixed uninitialized
variables in F04GlobalField.
+ extended/field/field05:
o Corrected History.
+ extended/optical/LXe:
o Updated gui.mac: allow for execution of vis.mac first to make the
command added in menus available. Corrected wireframe parameter.
o Rearrange /optics_engine commands in LXe.in, according to what
is allowed through G4OpticalPhysics.
+ extended/optical/OpNovice:
o Fixed race condision issue in OpNovicePhysicsList.
Addressing problem report #1539.
Limit invokation of static method only from master/sequential.
o Updated gui.mac: allow for execution of vis.mac first to make the
command added in menus available. Corrected wireframe parameter.
+ extended/optical/wls:
o Updated gui.mac: allow for execution of vis.mac first to make the
command added in menus available. Corrected wireframe parameter.
+ extended/radioactivedecay/rdecay02:
o Fixed problem identified in boudary chack mode in exrdmHisto::AddRow().
o Fix in exrdmAnalysisManager::EndOfEvent().
----------------------------------------------------------------------------
Technical Notes
---------------
o This patch should be applied on top of release 10.0.
o Technical notes distributed for release 10.0 are also applicable and
valid for this patch.
The code and rebuilt binary libraries for release 10.0.p01 are available
through our "Download" Web page:
http://cern.ch/geant4/support/download.shtml
Please refer to the Geant4 User Documentation:
http://cern.ch/geant4/support/userdocuments.shtml
for further information about using Geant4.
+394
View File
@@ -0,0 +1,394 @@
Geant4 10.0 - patch-02 Release Notes
------------------------------------
13 June 2014
List of fixes included in this public patch since the public release 10.0.p01:
o Configuration:
-------------
+ CMake:
o When static libraries are used, wrap G4physicslists library with flags
suitable to import whole archive. Implemented for GNU, Clang and Intel
compilers. Other compilers require further checks on flags and how to
apply to single library. Functionality needed to support global
registration of templated factories.
o Fixup usage of shared/static builtin libraries. Ensure that shared
builtins do not get linked to static. Added new component 'static'
allowing user to select static Geant4 libraries if they are available.
o Provide advanced option to select thread local storage model when
building multithreaded. Supported default mode: initial-exec model.
o Added zlib and g3tog4 to list of features that --has-feature
recognizes and can query.
o Added -DG4FPE_DEBUG to GNU/Clang flags for Debug build mode.
+ GNUMake:
o Force loading of symbols for templated libraries in physics_lists
module for global libraries.
Defined LDFLAGS for Linux and Darwin targets accordingly.
o Replaced old win32def tool for extracting symbols definitions for
DLLs build on Windows with genwindef used also in CMake.
o Analysis:
--------
+ Fixed implementation of compound commands in G4H[1,2,n]Messenger classes
using new G4AnalysisUtilities::Tokenize() function.
This allows to pass multi-word strings within "".
Addressing problem report #1616.
+ Fixed G4H2ToolsManager::SetH2YAxisTitle: set title to y-axis and not
x-axis. Addressing problem report #1620.
+ Do not allow creating objects with empty names.
Addressing problem report #1579.
+ Do not remove Root base file if ntuples are in use.
Addressing problem report #1633.
+ Fixed H1, H2 functions to access xmin, xmax and width
(do not apply function and unit to return values).
+ Fixed bug in /analysis/h1/setAscii command.
o Digits_Hits:
-----------
+ Fix the angle factor in G4PSSphereSurfaceFlux to keep it always
positive. Addressing to Bug Report #1479.
+ G4ScoringMessenger: fixed broadcast parameters of commands that should
be used only by the master thread. Addressing problem report #1554.
+ G4PSCylinderSurfaceCurrent: removed unnecessary printout.
Addressing problem report #1610.
+ Added missing dependency to graphics_reps in scorer module.
o Environments:
------------
+ pyG4EllipticalCone: added missing return in CreateEllipticalCone()
method. Addressing problem report #1586.
+ Fixed compilation error on pyG4Polycone.
Addressing problem report #1544.
+ Configure script: physics list is changed to be always turned on.
Addressing problem report #1546.
o Externals:
---------
+ clhep:
o Removed deprecated 'register' qualifiers in implementation of
CLHEP classes.
+ zlib:
o Fixed compilation warnings from clang-3.4 for unused variables.
o Removed deprecated 'register' storage class specifier in source files.
o G3toG4:
------
+ Removed inline specification for G3VolTableEntry::operator==()
in sorce file.
o Geometry:
--------
+ divisions:
o Added missing dependency to graphics_reps.
+ magneticfield:
o Moved G4FieldTrack::LoadFromArray() to .cc and removed non-necessary
thread-local static data local to the function.
Fixes crash experienced when upgrading to clang-3.4 on MacOSX.
Addressing problem reports #1603, #1619, #1628.
o Fixed assignment operator for G4FieldTrack, and improved printing.
Fix in SetChargeAndMoments() to use corrected method
SetChargesAndMoments() from G4ChargeState. Revised constructors to
add pdg-spin as last argument (with default -1).
o G4ChargeState: fixed order of arguments in constructor making spin
3rd argument (was 2nd) and making all arguments mandatory; fixing
use of SetChargeMoments() by G4FieldTrack, with addition of spin to
arguments.
o Fix in G4MagIntegratorDriver::OneGoodStep() for use of variable not set.
+ management:
o Fixed operator=() signature in G4LogicalSurface.
o Get rid of deprecated 'register' storage class specifier in code.
+ navigation:
o Added method in G4PathFinder for end of track, needed to signal
G4TransportationManager to use 'ordinary' navigator.
o G4Navigator: corrected saving/restoring of 'navigator state'.
Revised SetupHierarchy() to reduce extra cost due to handling the
case of nested parameterisations.
o PropagatorInField: when setting up a new intersection-locator
pass pointer to the current Navigator.
o Get rid of deprecated 'register' storage class specifier in code.
+ solids/CSG:
o Fixed proper handling of polyhedron pointer in solids, to avoid memory
leak for visualization of parameterised volumes.
+ solids/specific:
o Fixed proper handling of polyhedron pointer in solids, to avoid memory
leak for visualization of parameterised volumes.
o Fixed signature of assignment operator to G4Polycone, G4Polyhedra,
G4GenericPolycone and G4VCSGfaceted.
o Added protection in generic constructor of G4Polyhedra for the case
when improper number of sides is given as input.
o Get rid of deprecated 'register' storage class specifier in code.
+ solids/usolids:
o Fixed DistanceToOut() for UTubs, UCons, USphere, UVSCGfaceted and
UPolycone, DistanceToOut() return normal even for concave faces.
o Fixed DistanceToOut() for UPolycone in case of points starting on
the Surface or on the Internal Surface. Improved convexity algorithm
in DistanceToOut() for UPolycone for points leaving +/-Dz.
o Corrected Implementation of SafetyFromInside() for UPolycone,
skipping internal Z sections.
o Implementation of auxiliary methods in UTubs and UCons:
SafetyFromInsideR(), SafetyFromOutsideR(),SafetyToPhi().
These methods are used in Polycone for SafetyfromInside()
calculations. SafetyFromInside() and SafetyFromOutside() are changed
in order to avoid duplications.
o Fix to DistanceToIn() for UBox in case of points located on edges.
o Fixed handling of polyhedron pointer in G4USolid.
o Fixed use of inline keyword for methods defined in .cc files in UTrd,
UVCSGfaceted and UVoxelizer.
o Moved findComponentFastest() to be a method of UVoxelizer and changed
to FindComponentFastest().
o Removed unused SaveVectorToExternalFile() methods in UUtils, also
causing cyclic dependency with UVector3.
+ volumes:
o Minor cleanup and optimisation to G4EnhancedAllocator.
o Corrected signature of operator=() for G4LogicalBorder/SkinSurface.
o Code cleanup in G4GeometryWorkspace and G4GeometryWorkspacePool.
o Get rid of deprecated 'register' storage class specifier in code.
o Global:
------
+ Correction in G4Exp::G4Expf() to remove 2nd order term contribution
repeated twice by mistake. Correction included in VDT 0.3.7 library.
+ Minor refinements to G4Poisson.
+ Fix in G4SimplexDownhill header to proper define header guard.
+ Get rid of deprecated 'register' storage class specifier in code.
+ Updated date and version for 10.0.p02.
o Intercoms:
---------
+ G4GenericMessenger: introducing three additional methods to make class
compliant to release 10. Addressing problem report #1580.
Corrected inclusion protection flag in G4GenericMessenger.hh.
Addressing old problem report #1527.
Fixed case of core dump when GetCurrentValue() method is invoked
for a command defined by DeclareMethod().
+ Fixed treatment of double-quotes in G4UImanager::ForeachS().
Addressing problem report #1614.
o Interfaces:
----------
+ G4UIterminal: fixed the problem that some commands could not be processed;
use substr() instead of () operator for the comparison of substrings.
o Materials:
---------
+ G4Material, G4Element: define default names and symbols for elements
and isotopes when loaded from NIST and not explicitly defined by users.
Fixes exporting of names in GDML when writing detector description.
+ G4Material: corrected initialisation of pointers in fake default
constructor per use of persistency. Corrected typo in printout for
duplicate materials in function InitializePointers().
+ G4MaterialPropertyTable: fixed race condition problem.
Addressing problem report #1590.
o Persistency:
-----------
+ ascii:
o G4tgbGeometryDumper: directly use G4ThreeVector methods for SymAxis
for dumping G4Para parameters.
+ gdml:
o Correction to G4GDMLRead::Read() for the case when schema validation
is turned off, to disable initialisation of schema validation in the
parser and allow for standalone parsing off-network.
o Corrected potential memory leak in G4GDMLReadSolids.
o Added comparison operator for 3-vector key in 'vertexMap' in
G4GDMLWriteSolids for export of tessellated solid.
Addressing problem report #1573.
o Corrected dump of 'phi' and 'theta' for G4Trap and G4Para in writer.
Addressing problem report #1602.
o Corrected minor Coverity defect in G4GDMLParser for uninitialised
'strip' flag in constructors.
o Get rid of deprecated 'register' storage class specifier in code.
o Physics Lists:
-------------
+ builders
o OrderingParameterTable: processes "AnnihToMuMu" and "AnnihToHad"
should not be active AtRest. Addressing problem report #1598.
o Fixed memory leak in G4FTFBuilder.
+ lists:
o Set cut on proton to zero to simulate all recoils from elastic
scattering in HP physics-lists (FTFP_BERT_HP, QGSP_BIC_HP,
QGSP_BERT_HP and in INCLXXPhysicsListHelper).
o Processes - Electromagnetic :
---------------------------
+ Adjoint:
o G4VAdjointReverseReaction: added protection against potential infinite
loop; if cross-section correction exceeds 100 the total cross-section
is set to zero.
+ DNA:
o Fixed compilation warnings and errors on MacOS/clang-3.4
for c++11 standard.
o Corrected typo in DLL import flag in G4DNAWaterDissociationDisplacer.
+ Low Energy:
o Bug fix in G4PenelopePhotoElectric effect (no fluorescence in MT mode).
+ Polarisation:
o G4PolarizationMessenger: fixed Coverity report on non-initialized
members.
+ Standard:
o G4CoulombScattering: use G4IonCoulombScatteringModel for ions by
default.
o G4IonCoulombScatteringModel: fixed warning from G4ParticleTable;
fixed final state generation and scattering off Hydrogen.
o G4WentzelOKandVIxSection: fixed mass of recoil for Hydrogen target.
o G4WentzelVIModel: changed order of displacement and angular
deflection (second order effect).
o G4GammaConversion: switch default number of bins from 77 to 140.
+ Utils:
o G4EnergyLossMessenger: fix to enable re-initialisation of physics
after all de-excitation commands.
o G4LossTableMananger: fiz to do not recompute x-section if a process
is shared between particle and anti-particles.
Minor change of ionisation for charm and bottom mesons.
o G4VMultipleScattering - fixed old problem of displacement handling;
setting minimum displacement to 0.05 nm (Bohr radius).
o G4EmModelManager: fixed cuts for single scattering models;
use "cut for protons".
o Processes - Generic:
-------------------
+ Cuts:
o Fixed Coverity defects in G4VRangeToEnergyConverter.
+ Management:
o Fix for G4WrapperProcess not correctly forwarding call to wrapped
process with SetMasterProcess() in multi-threading mode.
Addressing problem report #1625.
+ Phonon:
o Removed inline keywords in methods in G4PhononDownconversion.cc
and make coherent use of G4 types.
+ Transportation:
o Fixed time in case of zero step in G4CoupledTransportation.
This caused a 'going back in time' error, when a zero step occurred
in particular at the boundary of a parallel world volume when scoring.
Addressing problem report #1017.
o Corrected AlongStepDoIt() methods of G4Transportation and
G4CoupledTransportation, to adapt it to corrected signature for
G4FieldTrack constructors, which now take PDG spin; modified to use
different constructor for G4FieldTrack (no Velocity) and adapted to
revised signature of G4ChargeState constructor.
o Fixed Coverity defect in G4UserSpecialCuts.
o Processes - Hadronic:
--------------------
+ models/binary_cascade:
o G4BinaryCasacde: improved calculation of mass, and of correction for
outgoing particles by always using GetIon() method; addresses potential
crash for p+d seen in d+H in BIC.
o G4{Proton,Neutron}Field.cc: protect against negative index into buffer.
+ models/cascade
o Fixed implementation of G4CascadeParameters singleton to follow
canonical format. Addressing problem report #1557.
o G4InuclNuclei:fix case of floating-point exception in
setExcitationEnergy() for zero Ekin.
o Fix for memory leak in secondaries in G4IntraNucleiCascader.
Addressing problem report #1584.
o Removed non-existing modules from dependency list in CMake script.
+ models/coherent_elastic:
o Get rid of deprecated 'register' storage class specifier in code.
+ models/inclxx:
o Fixed use of inline keyword in G4INCLClusteringModelIntercomparison.
+ models/lend:
o Fixed wrong usage of IonTable in G4LENDManager.
o Relaxed fatal energy CheckLevel in G4LENDFission.
o Fixed use of GetIon() from G4ParticleTable, obsolete since 10.0.
o Fixed compilation warnings detected by clang-3.4 compiler.
+ models/neutron_hp:
o Fixed deletion of maps in G4NeutronHPFFFissionFS destructor.
Do not call G4PhysicsTable::clearAndDestroy() in destructors of
G4NeutronHPCaptureData, G4NeutronHPElasticData, G4NeutronHPFissionData
G4NeutronHPInelasticData. Because G4PhysicsTable content are manged by
allocators
o Fixed bug in kinematics of residual nucleus in G4NeutronHPCaptureFS.
o Fixes for minor memory leaks and code simplification for better
stability.
o Fixed problem on single temperature data file in class
G4NeutronHPThermalScattering.
Fixed compilation warning message from clang3.4 and gcc-4.9.0.
o Reset isotope pointer to the target G4Nucleus object of reaction in
G4NeutronHPCapturem G4NeutronHPElastic, G4NeutronHPFission and
G4NeutronHPInelastic.
+ models/parton_string:
o Set the minimum energy to apply Reggeon-Cascade at 2 GeV
(it was wrongly set to 5 GeV in G4 9.6.ref03, causing the bump at
5 GeV in the calorimeter visible energy of FTFP_BERT physics list).
It affects the calorimeter energy response of the physics list
FTFP_BERT(_HP), only for showers of hadrons between 4 and 5 GeV.
o Extended the vectors CandAQ, CandQ of G4FTFAnnihilation
in the case of one quark - anti-quark string, in order to correctly
handle antiproton - proton and antineutron - neutron annihilations.
Prepared also for Anti_Delta-- and Delta++ annihilation.
It is expected to affect only antiproton annihilations, with
negligible effects on the simulation of hadronic showers.
o G4LundStringFragmentation: fixed rare crashes in the case of
anti_sigma+ capture at rest on hydrogen; and added protections
against vector access outside the allowed range.
Negligible effects on the simulation of hadronic showers.
o Fix to remove 'inline' qualifier from methods in G4VParticipants
and G4PomeronCrossSection source files, responsible for run-time
errors for undefined symbols in library on clang-3.4 compiler.
+ stopping:
o G4MuMinusCapturePrecompound: added simplified model for capture in
deuterium and in He4; reduced number of trials to find neutrino
4-momentum from 1000 to 100; added protection 1 keV for negative
excitation energy, and substituted FatalException by JustWarning.
o Fixes for Coverity defects in G4MuonMinusCaptureAtRest and
G4AntiNeutronAnnihilationAtRest.
o Readout:
-------
+ Fixed Coverity defects.
o Track:
-----
+ Fixed G4FieldTrackUpdator to energy/momentum passed to field
integration: first set rest mass, then update kinetic energy.
The problem affects propagation in multiple geometries.
+ Fixed memory leak in G4Step::SetPre/PostStepPoint().
Addressing problem report #1583.
o Visualization:
-------------
+ externals:
o Fixed bad text in G4OpenGL2PS action.
+ management:
o Get rid of deprecated 'register' storage class specifier in code.
+ FukuiRenderer:
o Fixed compilation warnings detected by clang-3.4 compiler.
+ OpenGL:
o Fix in G4OpenGL to allow for compilation with only Qt driver on Linux
in case 'glu'h' is missing. Addressing problem report #1618.
o Examples:
--------
+ Updated reference outputs.
+ extended/medical/DICOM:
o Reshuffled code for printout in DicomHandler::CheckFileFormat().
+ extended/field/field04:
o Corrected mismatch for delete/new of fFp pointer array in Clear().
o Corrections for crashes in MT mode.
+ extended/persistency/gdml/G01:
o Correction to solids.gdml for 'para' solid, where angle unit was
missing.
o Added GDML sample mat_nist.gdml showing how to load a NIST material,
although format is not part of the GDML schema yet (i.e. expected
warning in schema validation).
----------------------------------------------------------------------------
Technical Notes
---------------
o This patch should be applied on top of release 10.0 or 10.0.p01.
o Technical notes distributed for release 10.0 are also applicable and
valid for this patch.
The code and rebuilt binary libraries for release 10.0.p02 are available
through our "Download" Web page:
http://cern.ch/geant4/support/download.shtml
Please refer to the Geant4 User Documentation:
http://cern.ch/geant4/support/userdocuments.shtml
for further information about using Geant4.
+174
View File
@@ -0,0 +1,174 @@
Geant4 10.0 - patch-03 Release Notes
------------------------------------
31 October 2014
List of fixes included in this public patch since the public release 10.0.p02:
o Configuration:
-------------
+ CMake:
o Append existing CMake CXX/EXE_LINKER flags to Geant4 flags when
setting overall CMake flags. This allows users to override the base
set if needed, at their own risk.
Addressing problem report #1663.
o Analysis:
--------
+ Fixed applying unit to min, max values in H1, H2 managers.
+ Fixed createH2/setH2 commands implementation.
o Geometry:
--------
+ management:
o Fixed possible data-race condition among threads in G4GeomSplitter.
+ navigation:
o Fix in G4MultiNavigator to properly set 'fIdNavLimiting' index to
navigator limiting the step, if only one navigator limits the step.
o Removed unnecessary thread_local data specifications in
G4ReplicaNavigation.
+ solids/Boolean:
o Fixed use of polyhedron pointer, to avoid race condition in MT
when parameterised volumes are visualised.
+ solids/CSG:
o G4Cons: fixed typo error in GetPointOnSurface() in the call
to GetRadiusInRing(). Responsible for occasionally wrong reports
when checking for overlaps.
o G4Cons: fix in DistanceToIn(p,v) for points on the Surface, to resolve
error reported in unit testing by the OpticalEscape test.
o Fixed use of polyhedron pointer, to avoid race condition in MT
when parameterised volumes are visualised.
+ solids/specific:
o Fixed use of polyhedron pointer, to avoid race condition in MT
when parameterised volumes are visualised.
+ solids/usolids:
o UCons: fixed typo error in GetPointOnSurface() in the call
to GetRadiusInRing(). Responsible for occasionally wrong reports
when checking for overlaps.
Fix in DistanceToIn(p,v) for points on the Surface, to resolve
error reported in unit testing by the OpticalEscape test.
o USphere: fixed typo in SafetyFromInside().
o Minor fix in UVector2 for variable shadowing.
+ volumes:
o Corrected possible MT data race in G4PVReplica::InitialiseWorker().
o Global:
------
+ Added symbol to exclusion list in windefs.h.
+ Use G4Exp, G4Log and G4Pow to speedup G4JTPolynomialSolver.
+ Updated date and version for 10.0.p03.
o Graphics Representations:
------------------------
+ HepPolyhedron::SetReferences(): added protection against a null pointer.
+ BooleanProcessor::execute(): corrected spelling mistake in message.
o Particles:
---------
+ G4ElectronOccupancy: added G4Exception to protect against unphysical
orbits.
+ G4NuclideTable : Fix missing Cl35 ground state in NuclideTable2 and
missing "*std::log(2.0)" in some comparison of threshold time.
+ G4IonTable: fill decay channels when an ion is created on the fly to
avoid race condition issue in multi-threaded mode.
Addressing problem report #1651.
+ Fix for possible race condition among threads in G4PDefSplitter.
o Physics Lists:
-------------
+ constructors/limiters:
o Fixed possible data-race condition among threads in
G4NeutronTrackingCut when calling G4MTcout (defect spotted with DRD).
o G4NeutronTrackingCut: register G4NeutronKiller in
G4HadronicProcessStore; improved log and process deleted at exit.
o G4StepLimiterPhysics: fixed minor memory leak reported by Coverity.
o Processes - Electromagnetic :
---------------------------
+ High Energy:
o Verified and updated positron annihilation models (G4Vee2hadrons,
G4ee2KChargedModel, G4ee2KNeutralModel, G4eeTo3PiModel,
G4eeToHadronsMultiModel, G4eeToPGammaModel, G4eeToTwoPiModel,
G4eeToHadronsModel) and process G4eeToHadrons.
This includes addition of extra inline methods to convert from Lab
to CM, to initialise models with more correct thresholds.
o G4eeTo3PiModel: fixed sampling algorithm.
+ Low Energy:
o Fixed cases of energy violation in G4LivermoreComptonModel and
atomic de-excitation. Addressing problem report #1612.
+ Standard:
o G4PAIxSection: added protection to avoid division by zero.
Addressing problem report #1677.
o Processes - Hadronic:
--------------------
+ models/de_excitation:
o Converted G4FermiFragmentsPool to be a G4ThreadLocalSingleton, to fix
cases of data race due to lazy initialisation. Effects: sligthly
increase of memory per thread; no effects in physics.
+ models/im_r_matrix:
o Fixed out of bound error in G4DetailedBalancePhaseSpaceIntegral,
reported by Coverity.
+ models/inclxx:
o Fix a bug in Coulomb deflection for negative incident particles.
o Fix: avoid negative Fermi energies for delta resonances.
+ models/pre_equilibrium:
o G4PreCompoundAlpha: fixed integer overflow.
Addressing problem report #1646.
+ models/quasi_elastic:
o Removed potential data-race condition among threads.
Addressing problem report #1652.
+ models/radioactive_decay:
o Fixed memory leak in destructor of G4RIsotopeTable.
Addressing problem report #1617.
o Run:
-------
+ Fixed data-race condition among threads when creating RNG for workers.
+ Fixed '/random/setSeeds' command not working properly.
Addressing problem report #1657.
+ Fixed potential race condition among threads in G4VUPLSplitter class.
+ G4PhysicsListHelper: minor fix in the default list of processes:
positron annihilation in muons and hadrons cannot be AtRest; these are
rare high energy discrete processes. Equivalent fix done for
OrderingParameterTable().
Addressiong problem report #1598.
+ Clear root logical volume pointers in G4Region when geometry is
rebuilt from scratch. Addressing problem report #1665.
+ G4MTRunManager: make sure G4RunManager::TerminateEventLoop() is
invoked at the end of run.
+ Addressing possible data-race in G4RunManagerKernel::SetupPhysics()
when calling G4ParticleTable::SetReadiness().
o Visualization:
-------------
+ gMocren:
o Fixed memory leak in G4GMocrenFile. Addressing problem report #1585.
o Examples:
--------
+ Updated reference outputs.
+ extended/runAndEvent/RE05:
o Reduced amount of print-out.
+ extended/runAndEvent/RE06:
o Added Boolean protection in ConstructSD methods for MT.
----------------------------------------------------------------------------
Technical Notes
---------------
o This patch should be applied on top of release 10.0, 10.0.p01 or 10.0.p02.
o Technical notes distributed for release 10.0 are also applicable and
valid for this patch.
The code and rebuilt binary libraries for release 10.0.p03 are available
through our "Download" Web page:
http://cern.ch/geant4/support/download.shtml
Please refer to the Geant4 User Documentation:
http://cern.ch/geant4/support/userdocuments.shtml
for further information about using Geant4.
+175
View File
@@ -0,0 +1,175 @@
Geant4 9.6 - patch-03 Release Notes
-----------------------------------
14 March 2014
List of fixes included in this public patch since the public release 9.6.p01:
o Configuration:
-------------
+ CMake:
o Fixed bug in checking of status of Xmu include path and library
variables that resulted in no error being emitted if these were not
found.
o Ported scripts to MacOSX 10.9 and use of Qt5.
+ GNUMake:
o Updated settings for Darwin targets.
o Analysis:
--------
+ Updated to g4tools 1.4.4, to fix incorrect setting of the list
of free blocks in a Root file; addressing problem report #1523.
Fixed failure in writing empty ntuples (in tools/wroot/basket).
+ Fix in G4RootAnalysisManager::WriteOnAscii().
Addressing problem report report #1473.
o Digits_Hits:
-----------
+ Fixed angle factor in G4PSSphereSurfaceFlux to keep it always
positive. Addressing problem report #1479.
o Geometry:
--------
+ management:
o Fix to G4VSolid::EstimateCubicVolume() to make proper use of specified
accuracy. Addressing problem report #1493.
+ navigation:
o G4MultiNavigator: fixed use of enum as Boolean in GetGlobalExitNormal().
+ solids/CSG:
o Corrected sanity check for wrong/small dimensions in G4Box constructor.
o Correctly initialise fSPhi to zero in G4Sphere constructor.
+ solids/specific:
o Fix in G4SurfaceVoxelizer affecting tessellated-solid (and
extruded-solid) for wrong computation of DistanceToIn(p,v) for
points outside, when optimisation is active.
o Fix in G4TessellatedSolid::DistanceToIn(p,v) for specific cases
where points are located near surface.
o Fix in G4GenericTrap::InsidePolygone() to check if p lies between
the two extremes of the segment. Addressing problem report #1541.
o Global:
------
+ Updated date and version for 9.6.p03.
o Electromagnetic Processes:
-------------------------
+ Low Energy:
o Fixed case of exception from G4PenelopeOscillatorManager for
specific materials.
+ Muons:
o G4MuPairProductionModel, G4MuBremsstrahlungModel: complete fix for
cross-section computation. Addresses problem report #1471.
+ Standard:
o G4UrbanMscModel95, G4UrbanMscModel96: fixed bug in randomisation
of 1st step in a volume (useDistanceToBoundary option).
o G4NuclearStopping: do not reset dynamic charge of an ion, because
G4ionIonisation process is responsible for that (fix for partially
charged ion beam)
+ Utils:
o G4VMultipleScattering: increased lowest limit from 1 eV to 10 eV to
avoid semi-infinite loop for low-energy particle tracking;
fixed re-computation of post-step safety in AlongStepDoIt method.
o G4VEnergyLossProcess, G4VEmProcess: set interaction length to
DBL_MAX if process is de-activated (fixed problem of DNA simulation);
fixed CrossSectionPerVolume access method.
o Fixed typo in G4EmBiasingManager.
o Generic Processes:
-----------------
+ Decay:
o Fixed problem of wrong global time for secondaries in case that the
primary track stops during along step. Addressing problem report #1555.
o Hadronic Processes:
------------------
+ cross_sections:
o Code optimization for G4ElectroNuclearCrossSection and
G4PhotoNuclearCrossSection.
+ models/cascade:
o G4NucleiModel: fixed rare cases of non-reproducibility in
method generateParticleFate(). Some data was not properly
initialized in the case that the interaction-partners list has
one single element.
o Fixed implementation of G4CascadeParameters singleton to follow
canonical format. Addressing problem report #1557.
o G4ParticleLargerEkin, G4ParticleLargerBeta: correct ">=" to ">"
conditions to avoid error in case that both inputs are identical.
+ models/de_excitation:
o G4NeutronRadCapture: fixed run time memory leak, fixed time of
reaction products.
o G4ExcitationHandler: if FermiBreakUp returns unchanged fragment
delete it to avoid minor memory leak; addressing HyperNews post
#1371. Fixed typo in GetPhotoEvaporation() method name.
Fixed typo in the SetMaxAForFermiBreakUp() method.
o G4FermiFragmentsPool: fixed typo for use of G4endl for end line.
o G4LevelReader, G4NuclearLevelManager: fixed trivial compilation issues
detected on Visual C++ 18.
+ models/em_dissociation:
o Fixed memory leak of products from G4ExcitationHandler.
+ models/parton_string/hadronization:
o Fixed two mistakes in the index manipulation of the BaryonWeight
4-dimensional vector in G4LundStringFragmentation.
+ models/parton_string/management:
o Fix to remove 'inline' qualifier from methods in G4VParticipants.cc
and G4PomeronCrossSection.cc, responsible for cases of run-time
errors for undefined symbols in library...
+ stopping:
o G4MuMinusCapturePrecompound: fixed case of infinite loop by
reimplementing old algorithm of mu- capture which does not include
direct muon reaction but only considering de-excitation of residual
fragment. Addressing problem report #1536.
o Materials:
---------
+ G4IonisParamMat: fixed density effect parameterisation.
o Particles:
---------
+ Fixed properties for heavy anti-baryons G4AntiLambdab, G4AntiSigmabZero
and G4AntiLambdacPlus. Addressing problem report #1571.
o Persistency:
-----------
+ ascii:
o Corrected typo in G4tgrPlaceParameterisation::operator<<().
Addressing problem report #1504.
o Corrected typo in G4tgrUtils::WordIsUnit().
o Replaced deprecated calls to solids accessor methods.
+ gdml:
o Fix in G4GDMLReadParamvol::ParametersRead() for reading parameterised
Sphere, Orb, Torus and Para.
o Replaced deprecated calls to G4Sphere accessor methods.
o Physics Lists:
-------------
+ G4EmStandardPhysics_option3, G4EmStandardPhysics_option4,
G4EmLivermorePhysics, G4EmPenelopePhysics: use RangeFactor=0.01
for increased simulation accuracy; use G4UrbanMscModel96.
o Visualization:
-------------
+ OpenGL:
o Fixed bug in the G4OpenGLQtViewer for viewer iterator increment
checking. Corrected use of 'true' in G4OpenGLQtExportDialog.
o Examples:
--------
+ Updated reference outputs.
----------------------------------------------------------------------------
Technical Notes
---------------
o This patch should be applied on top of release 9.6.
o Technical notes distributed for release 9.6 are also applicable and
valid for this patch.
The code and rebuilt binary libraries for release 9.6.p03 are available
through our "Download" Web page:
http://cern.ch/geant4/support/download.shtml
Please refer to the Geant4 User Documentation:
http://cern.ch/geant4/support/userdocuments.shtml
for further information about using Geant4.
File diff suppressed because it is too large Load Diff