395 lines
19 KiB
Plaintext
395 lines
19 KiB
Plaintext
|
|
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.
|