Back to home page

EIC code displayed by LXR

 
 

    


Warning, /geant4/CHANGELOG/Beta4.10.6-1.txt is written in an unsupported language. File is not indexed.

0001 
0002                   Geant4 10.6-beta-01 Release Notes
0003                   ---------------------------------
0004 
0005                                                             28 June 2019
0006 
0007                  Migration Notes & Main New Features
0008                  -----------------------------------
0009 
0010   o Promoting pre-processor flags to fixed #defines in a new header
0011     generated by CMake, reducing flags added to CMAKE_CXX_FLAGS.
0012   o Reviewed G4PhysicsVector adding an additional Value() method option to
0013     propagate down the known log-energy value. This helps avoiding log() calls
0014     when log-vector is used.
0015   o Enabled VecGeom wrapper for G4GenericPolycone. Requiring VecGeom-1.1.2.
0016   o Added support for writing out assemblies envelopes in GDML.
0017   o Added functionality in G4DynamicParticle to provide log-kinetic energy
0018     value, computed only on demand if its stored value is not up-to-date with
0019     the kinetic energy. Reviewed EM processes to select the target atom by
0020     making use of the already known log-energy value in the log-vector access.
0021     Providing measurable CPU speedup.
0022   o Optimised step limitation in G4UrbanMscModel and modified lateral
0023     displacement sampling.
0024   o New helper class G4NIELCalculator, to compute NIEL in user stepping
0025     action or sensitive detector code.
0026   o Cross-sections: high energy extension of the neutrino-electron cross
0027     sections, for both charged-current and neutral-current interactions
0028     (M_W and M_Z propagator factors and Glashow resonance), for all neutrino
0029     and anti-neutrino flavours.
0030   o Extended hadron-nucleon cross-sections to charmed and bottom hadrons
0031     (mesons and baryons).
0032   o Use Glauber-Gribov cross-section for hyperons in hadron elastic physics.
0033   o Added handling of UI thermalization model control in DNA physics lists.
0034   o Removed tracking cut in hadron-elastic and use numerically safer
0035     computation for very low-energy projectile.
0036   o Use FTFP also for the annihilation at rest of neutral anti-hadrons.
0037   o Added spontaneous fission channel in radioactive-decay.
0038   o Enhanced UI commands to now return proper return code when they are not
0039     successful.
0040   o Added new gamma-nuclear model based on pre-compound de-excitation
0041   o New set of UI commands and improvements in visualization.
0042     Added new UI commands for view interpolation and centering.
0043   o Introducing cloud drawing style in visualization, using kernel algorithms
0044     for generating points on the surface of volumes, by-passing polyhedral
0045     representations; the solid is being visualised by a polymarker of dots.
0046   o Porting of code on gcc-9.1 series.
0047   o Updated to CLHEP version 2.4.1.2.
0048   o New data sets G4PARTICLEXS-2.0.
0049 
0050  ----------------------------------------------------------------------------
0051 
0052                              Technical Notes
0053                              --------------- 
0054 
0055   o Tested platforms:
0056     + Linux, gcc-4.8.5.
0057       Tested on 64 bit architectures (Intel or AMD) with CERN CentOS
0058       Linux 7 (CC7) (based on CentOS Linux 7).
0059       Versions of Geant4 have also been compiled successfully on other
0060       Linux distributions, Ubuntu, Debian, Suse or other RedHat systems.
0061     + MacOSX 10.14, clang-6.0 (Apple LLVM/Clang-10.0.1)
0062     + Windows/10 with Visual C++ 14.11 (Visual Studio 2017)
0063 
0064   o More verified configurations:
0065     + Linux, gcc-4.9.3/5.4.0/6.3.0/7.3.0/8.2.0/9.1.0, clang-5.0/7.0.
0066     + Linux, Intel-icc 19.0.
0067     + MacOSX 10.12/13 with clang-3.9/4.0
0068 
0069   o External dependencies
0070     + CLHEP-2.4.1.2, suggested for external installation of the CLHEP library.
0071     + VecGeom-1.1.2, for optional use of the VecGeom geometry primitives.
0072 
0073   o New data sets:
0074     + G4PARTICLEXS-2.0.
0075 
0076  Please refer to the Geant4 User Documentation:
0077    http://cern.ch/geant4/support/userdocuments.shtml
0078  for further information about using Geant4.
0079 
0080  ----------------------------------------------------------------------------
0081 
0082 List of features and fixes included in this Beta release since 10.5.p01:
0083 
0084   o Configuration:
0085     -------------
0086     + CMake:
0087       o Removed obsolete GEANT4_BUILD_MUONIC_ATOMS_IN_USE option
0088         and associated configuration/compiler flags.
0089       o Promoting following pre-processor flags to fixed #defines in a new
0090         header generated by CMake using the chosen build options to
0091         #define/#undef as appropriate: G4USE_STD11, G4MULTITHREADED,
0092         G4_STORE_TRAJECTORY, G4VERBOSE, GEANT4_USE_TIMEMORY.
0093         Promoted VecGeom pre-processor flags to fixed #defines as well.
0094         Ensuring the header is included by primary "global" category headers
0095         so that all categories will pick up the changes transparently.
0096         Removed use of add_definitions of CMAKE_CXX_FLAGS to set these flags
0097         in Geant4 and client scripts.
0098       o Removed G4FPE_DEBUG from build mode "Debug". Added new build mode
0099         "Debug_FPE" same as "Debug" mode but appending -DG4FPE_DEBUG.
0100       o Updated version of data sets: G4PARTICLEXS-2.0.
0101         Updated tags for 10.6-beta.
0102     + GNUMake:
0103       o Hard-code Qt version through QT_VERSION flag.
0104         Corrected Qt5 setup for Linux-g++ and Linux-clang.
0105       o architecture.gmk: added -DG4GMAKE to CPPFLAGS to identify enabling
0106         of GNUmake builds.
0107 
0108   o Analysis:
0109     --------
0110     + Fixed CSV, XML ntuple file names.
0111 
0112   o Digits & Hits:
0113     -------------
0114     + G4PSSphereSurfaceFlux: fixed track weight.
0115 
0116   o Event:
0117     -----
0118     + G4SPSPosDistribution: added accessor methods for volume confinement 
0119       Addressing GitHub PR #7.
0120 
0121   o Externals:
0122     ---------
0123     + Updated CLHEP module to version 2.4.1.2:
0124       o MixMaxRng: throw if seed is zero. Use throw instead of exit()
0125         elsewhere.
0126         Defaulted operator=() also for BasicVector3D andPlan3D; fixing
0127         deprecation warnings  on gcc-9.1.
0128         Fixed shadowing compilation warnings in Transform3D as reported
0129         on gcc-9.1.
0130 
0131   o Geometry:
0132     --------
0133     + divisions:
0134       o Return correct value for multiplicity in G4PVDivision and
0135         G4ReplicatedSlice. Addressing problem report #2168.
0136     + magneticfield:
0137       o G4ChordFinder: changed to use concrete type of Stepper as template
0138         parameter.
0139       o G4InterpolationDriver: new revision with multiple steppers for
0140         each substep. Fixed memory churn; use FSAL property of
0141         G4DormandPrince745. Change from G4VERBOSE to G4FIELD_DEBUG for
0142         debug checks.
0143       o Removed division in G4DormandPrince745::Interpolate4thOrder().
0144       o Reset step estimate in G4MagInt_Driver only at the beginning of a
0145         track.
0146     + management:
0147       o G4GeomSplitter: re-enabled use or realloc()/free() and memcpy(), after
0148         adapting G4VPhysicalVolume MT splitted data to adopt only trivial types
0149         for allocation. Re-establishing original performance in initialisation
0150         of the geometry in MT mode.
0151       o Properly initialise splitted data in G4VPhysicalVolume to zero.
0152       o Replaced deprecated std::binary_function calls with lambdas in
0153         G4SmartVoxelStat and G4GeometryManager. Addressing GitHub PR#8.
0154       o Defined move constructor and move assignment operator for
0155         G4AffineTransform.
0156       o Use header-based #define/undef symbols to configure VecGeom
0157         replacements; added new configuration headers G4GeomConfig.hh and
0158         G4GeomTypes.hh.
0159       o Fixed minor Coverity defects.
0160     + navigation:
0161       o Improved information in G4Exceptions for particles stuck due to
0162         multiple zero steps in G4Navigator.
0163     + solids/CSG:
0164       o G4Tubs: Fixed normal from DistanceToOut() to be unit vector, for
0165         abnormal exit points. Added inverse-Rmax and -Rmin as data members.
0166       o Re-use pre-calculated values instead of using std::cos(), std::sin()
0167         in G4Tubs, G4Cons, G4CutTubs and G4Sphere.
0168       o Added inclusion of new G4GeomTypes.hh header to those headers allowing
0169         VecGeom replacement.
0170     + solids/specific:
0171       o Enabled VecGeom wrapper for G4GenericPolycone. Requiring VecGeom-1.1.2.
0172       o Modified G4PolyconeSide and G4PolyhedraSide to use only trivial types
0173         for MT splitted data in G4PlSideData and G4PhSideData respectively.
0174       o Protected check in G4TwistedTubsSide::DistanceToPlane() within debug
0175         flag.
0176       o Defined move constructor and move assignment operator for
0177         G4TriangularFacet.
0178       o Use GetVertices() instead of GetParametersList() in the wrapper G4UTet.
0179       o Added inclusion of new G4GeomTypes.hh header to those headers allowing
0180         VecGeom replacement.
0181       o Fixed minor Coverity defects.
0182 
0183   o Global:
0184     ------
0185     + G4PhysicsVector: added additional Value() method option to propagate down
0186       the known log-energy value (can avoid the log call in case of
0187       log-vector).
0188     + Added new LOG_EKIN_MIN constant as value taken in case of zero kin-energy
0189       in templates.hh.
0190     + Defined default move constructor and move assignment operator for
0191       G4String and G4DataVector.
0192     + Added G4GlobalConfig.hh generated header to hold global, always required,
0193       pre-processor symbols instead of relying on -D flags for: G4USE_STD11,
0194       G4MULTITHREADED, G4_STORE_TRAJECTORY, G4VERBOSE and GEANT4_USE_TIMEMORY.
0195       Added inclusion of G4GlobalConfig.hh in G4Types.hh, tls.hh and
0196       G4TiMemory.hh so that global and other categories pick up the definitions
0197       transparently.
0198     + Updated other headers/srcs to include G4Types/G4Threading if they use
0199       G4MULTITHREADED.
0200     + Changed date for release 10.6-beta.
0201 
0202   o Graphics Representations:
0203     ------------------------
0204     + G4VisAttributes: added 'cloud' and methods to force, SetForceCloud(),
0205       and SetForceNumberOfCloudPoints().
0206     + G4VisExtent: added method Transform(const G4Transform3D&).
0207     + Removed Get/SetDrawOverlapsFlag() from G4VVisManager.
0208 
0209   o Intercoms
0210     ---------
0211     + The following UI commands now return proper return code when they are
0212       not successful: /control/execute, loop, foreach, shell, getEnv.
0213       Addressing problem report #2159.
0214 
0215   o Particles:
0216     ---------
0217     + G4DynamicParticle: added functionality to provide log-kinetic energy
0218       value, computed only on demand if its stored value is not up-to-date
0219       with the kinetic energy.
0220       Code cleanup: moved data members to be private; aligned class members
0221       3-vectors, doubles, integer; added initialisation of PDG code and
0222       polarization in all constructors; added method SetPolarisation(); use
0223       CLHEP electron mass; removed unused forward declarations and headers.
0224 
0225   o Persistency:
0226     -----------
0227     + GDML:
0228       o Added support for writing out assemblies envelopes.
0229       o Improved reading of optical properties reader, by allowing reuse of
0230         the same G4MaterialPropertyVector object for identical properties.
0231 
0232   o Physics Lists:
0233     -------------
0234     + Constructors:
0235       o electromagnetic:
0236         - Added handling of UI thermalization model control in
0237           G4EmDNAPhysics_option1,2,3,4,5,6,7,8.
0238         - G4EmDNAChemistry constructors: updated to follow emdna changes.
0239         - Added sub-excitation processes in G4EmDNAPhysics_option8.
0240         - G4EmLivermorePhysics, G4EmPenelopePhysics,
0241           G4EmStandardPhysics_option4, G4EmStandardPhysics_option3: define
0242           upper energy limit for nuclear stopping via EM parameters.
0243           In all DNA constructors, added ActivateDNA() flag to EM parameters.
0244         - Added G4EmDNAChemistry_option2 constructor.
0245       o gamma_lepto_nuclear:
0246         - G4EmExtraPhysics: added muon-neutrino nucleus interactions; removed
0247           extra static members.
0248       o hadron_inelastic:
0249         - G4HadronElasticPhysics: use Glauber-Gribov cross-section for
0250           hyperons.
0251         - G4HadronDElasticPhysics, G4HadronDElasticPhysics: use Glauber-Gribov
0252           cross-section for hyperons, d, t, He3, He4.
0253         - G4HadronElasticPhysicsXS, G4IonElasticPhysics: removed commented
0254           code.
0255       o stopping:
0256         - Use FTFP also for the annihilation at rest of neutral anti-hadrons:
0257           anti-neutron, anti-lambda, anti-sigma0 anti-xi0. This extension is
0258           for completeness and practical convenience, although physically
0259           neutral hadrons should never be completely at rest.
0260     + lists:
0261       o Replaced G4RadioactiveDecay with G4RadioactiveDecayBase in LBE list.
0262 
0263 
0264   o Electromagnetic Processes:
0265     -------------------------
0266     + DNA:
0267       o Added G4DNAMolecule class.
0268       o Moved checking of position of track status in
0269         G4ITStepProcessor::SetInitialStep().
0270       o Chemistry: clarified pointer ownership in G4DNAChemistryManager.
0271       o Fixed reaction site issue.
0272       o Fixed compilation warnings on gcc-9.1. Code cleanup.
0273     + High Energy:
0274       o G4GammaConversionToMuons, G4AnnihiToMuPair: added
0275         registration/de-registration mechanism.
0276     + Standard:
0277       o In most models, make use of the new target atom selector that can
0278         reuse the already known log-energy value.
0279       o G4UrbanMscModel, G4WentzelVIModel, G4GoudsmitSaundersonMscModel:
0280         make use of the new base class methods in utils module, utilising
0281         the already known log-energy value, in case of dEdx, range and
0282         transport mean free path log-vector table accesses.
0283       o G4UrbanMscModel: optimised step limitation for 'UseSafetyPlus'
0284         and 'UseDistanceToBoundary'. Minor clean-up of step limit method.
0285         Modified lateral displacement sampling.
0286       o G4ScreeningMottCrossSection, G4KleinNishinaModel, G4SeltzerBergerModel,
0287         G4eSingleCoulombScatteringModel: use element->GetZasInt() interface
0288         in order to reduce number of double->int conversions at run time.
0289       o G4BetheHeitler5DModel: set x,y components in BoostG4LorentzVector
0290         function. Replaced local boost and rotation functions with CLHEP
0291         boost, boostZ, transform. One random generator flatArray() call in
0292         sampling loop.
0293       o G4eCoulombScatteringModel, G4WentzelOKandVIxSection: cleanup debug
0294         cout and initialisation.
0295    + Utils:
0296       o G4EmElementSelector, G4VEmModel: added extra method to select the
0297         target atom by making use of the already known log-energy value in
0298         the log-vector access.
0299       o G4VEmProcess, G4VEnergyLossProcess and G4VMscModel: added extra
0300         methods to access log-vector tables by propagating the already
0301         known log-energy value.
0302       o G4LossTableManager: added Register/DeRegister() methods and vector
0303         of pointers for G4VProcess classes for X-ray and optical processes.
0304       o G4EmParameters: added polarisation flag; moved implementation of
0305         splitting parameters to source and added check on lock; added
0306         9.99 MeV low limit in the SetMaxEnergy() method, added thread lock
0307         to Dump() method.
0308       o G4EmParameters, G4EmParametersMessenger: splitted classes keeping the
0309         user interface unchanged.
0310         Added new classes for complex EM parameters (G4EmExtraParameters
0311         G4EmExtraParametersMessenger) and new classes for low-energy and
0312         DNA parameters (G4EmLowEParameters, G4EmLowEParametersMessenger).
0313       o New helper class G4NIELCalculator, to compute NIEL in user stepping
0314         action or sensitive detector code. User should provide G4VEmModel
0315         objects, which has NIEL model.
0316       o G4LossTableManager: added access and initialisation of
0317         G4NIELCalculator.
0318     + Xrays:
0319       o G4Cerenkov, G4Scintillation, G4SynchrotronRadiation,
0320         G4VTransitionRadiation: added registration/de-registration mechanism.
0321 
0322   o Generic Processes:
0323     -----------------
0324     + Cuts:
0325       o Added protection against premature call to G4ProductionCutsTable.
0326     + Optical:
0327       o Code cleanup and formatting, added C++11 keywords.
0328 
0329   o Hadronic Processes:
0330     ------------------
0331     + Improved G4HadronicException: aligned behavior with std::exception:
0332       what() returns the exception explanation; move the member definition
0333       to source file. Added some consts qualifiers.
0334     + cross_sections
0335       o G4NeutrinoElectronNcXsc, G4NeutrinoElectronTotXsc: high energy
0336         extension of neutrino-electron cross sections, for both 
0337         charged-current and neutral-current interactions (M_W and M_Z
0338         propagator factors and Glashow resonance), for all neutrino and
0339         anti-neutrino flavours.
0340       o G4MuNeutrinoNucleusTotXsc: high energy extension of cc/nc xsc (M_W and
0341         M_Z propagator factors) cc/tot ratio.
0342       o G4NeutronElasticXS, G4NeutronInelasticXS, G4NeutronCaptureXS: utilise
0343         the new Value() method from G4PhysicsVector, that can make use of the
0344         already known value of the log-kinetic energy in the cross-sections
0345         table log-vector accesses.
0346       o G4NeutronCaptureXS, G4NeutronElasticXS, G4NeutronInelasticXS
0347         G4ParticleInelasticXS: code clean-up, assuming usage of the new 
0348         data-set G4PARTICLEXSDATA2.0; removed unused variables and methods;
0349         use only methods with logarithm of energy.
0350       o G4ParticleInelasticXS: set verbosity to 0.
0351       o Corrections in G4MuNeutrinoNucleusTotXsc.cc: new name, default
0352         'fCcTotRatio' and high energy parameter 'bb'.
0353       o G4ComponentAntiNuclNuclearXS: code clean-up and corrected the
0354         description.
0355       o G4ComponentGGHadronNucleusXsc, G4ComponentGGNuclNuclXsc: removed
0356         remaining unused obsolete methods and members; use G4NuclearRadii
0357         utility to compute nuclear radius.
0358       o G4ComponentGGHadronNucleusXsc: fixed correction factor for kaons.
0359       o G4BGGNucleonElasticXS: reduce low-energy limit from 1 to 0.75 MeV.
0360       o G4BGGPionElasticXS, G4BGGPionInelasticXS: fixed initialisation for
0361         pi+- by usage of separate vectors of correction factors; fixed
0362         computation for Hydrogen target.
0363       o G4BGGNucleonElasticXS, G4BGGNucleonInelasticXS: fixed computation
0364         for Hydrogen target.
0365       o G4HadronNucleonXsc: added extra method for hyperon cross sections.
0366         Extended to charmed and bottom hadrons (mesons and baryons).
0367         Improved K+p parameterisations (NS and VG); removed obsolete methods.
0368       o G4MuNeutrinoNucleusTotXsc: added new method GetElementCrossSection().
0369       o G4ParticleInelasticXS, G4BGGPionElasticXS, G4BGGPionInelasticXS,
0370         G4BGGNucleonElasticXS, G4BGGNucleonInelasticXS,
0371         G4NucleonNuclearCrossSection, G4ComponentBarNucleonNucleusXsc,
0372         G4UPiNuclearCrossSection: share internal data vectors between threads;
0373         initialise data once; removed unused parameters; code clean-up;
0374         use C++11 keywords.
0375       o G4VCrossSectionDataSet, G4CrossSectionDataStore,
0376         G4IonProtonCrossSection: use only methods with logarithm of energy.
0377       o G4HadronicException is substituted by G4Exception in all classes with
0378         exceptions.
0379     + management
0380       o G4HadronicInelasticProcess: removed default GHEISHA cross-section.
0381       o G4EnergyRangeManager: fixed bug regarding the kinetic energy per
0382         nucleon in the case of anti-nuclei (the bug was of little harm as one
0383         single model, FTFP, is used for all energies in the case of anti-nuclei
0384         projectiles).
0385       o G4HadronicProcess: removed try/catch pattern from computation of mean
0386         free path, removed final state random rotation.
0387     + models/cascade
0388       o Fixed case for potential FPEs due to un-protected sqrt() in
0389         G4NucleiModel::boundaryTransition().
0390     + models/coherent_elastic
0391       o G4HadronElastic: removed tracking cut and use numerically safer
0392         computation for very low-energy projectile. Improved description and
0393         comments; added C++11 keywords.
0394         Numerically safer treatment of the very rare cases in which cos(theta)
0395         is either greater than 1.0 or smaller than -1.0 (in the first case, we
0396         assume no interaction and the projectile keeps going unchanged; in the
0397         second case, we assume that the projectile stops and its kinetic energy
0398         is deposited locally, neglecting the recoil of the target nucleus).
0399         Added protected variable pLocalTmax; added protection for zero energy
0400         primary.
0401       o Added new model class G4LowEHadronElastic.
0402       o G4ChargeExchange: updated interfaces; added protection for zero energy
0403         primary.
0404       o G4ElasticHadrNucleusHE: make all data shared between threads.
0405       o G4AntiNuclElastic: do not compute trigonometric functions, which are
0406         not used.
0407       o G4ElasticHadrNucleusHE, G4LEpp, G4LEnp: code clean-up.
0408     + models/de_excitation
0409       o G4VEmissionProbability: use simple rejection.
0410       o G4FermiFragment: fixed Coulomb barrier correction computation.
0411       o Replaced deprecated std::binary_function calls with lambdas in
0412         G4StatMFMicroCanonical and G4StatMFChannel. Addressing GitHub PR#8.
0413       o G4Evaporation, G4ExcitationHandler, G4LevelReader, G4GammaTransition,
0414         G4VEmissionProbability, G4PhotonEvaporation, G4PolarizationTransition:
0415         changed scheme of verbosity - 0- silence, 1- dump of parameters at
0416         initialisation, 2- debug printout, 3- very detailed debug printout.
0417         Addressing problem report #2098.
0418       o G4CoulombBarrier: use G4NuclearRadii utility to compute nuclear radius.
0419       o G4EvaporationChannel, G4EvaporationProbability, G4VEmissionProbability,
0420         G4FermiDecayProbability: simplified algorithm to sample kinetic energy
0421         of a fragment; minor code clean-up, removed commented lines.
0422     + models/lend
0423       o G4LENDCapture::ApplyYourself: fixed memory leak of 'products_from_PE',
0424         reported by Coverity.
0425       o Fixed compilation warnings on gcc-9.1 for missing assignment operator.
0426     + models/lepto_nuclear
0427       o Neutrino-nucleus models and precalculated distribuitons as from
0428         new data-set G4PARTICLEXS-2.0.
0429       o Fixed in G4NuMuNucelusCc(Nc)Model for kinematics of quasi-elastic
0430         neutrino scattering.
0431     + models/management
0432       o G4HadronicInteractionRegistry: fixed typo in comments, removed unused 
0433         Boolean flag.
0434     + models/particle_hp
0435       o Fix to deal with incorrect excitation energy when charged particles are
0436         emitted during neutron reaction. In G4ParticleHPInelasticCompFS,
0437         changed method CompositeApply(), for very small excitation, change
0438         level index from -1 to 0 only if incident and outgoing particles are
0439         the same. Addressing problem report #1838.
0440       o Fix to deal with un-incremented index of photons in
0441         G4ParticleHPPhotonDist::GetPhotons().  Also cleaned up dead code
0442         in that class. Addressing problem report #2167.
0443       o G4ParticleHPChannelList: fixed bug in the momentum change (it has to
0444         be a normalized 3-vector, but it was not) in the case where NeutronHP
0445         could not find a proper reaction channel.
0446       o G4ParticleHPInelasticCompFS: fix to avoid arbitrary number of target
0447         nuclei being generated and slowing down multi-threaded operation.
0448         Addressing problem report #2166.
0449     + models/pre_equilibrium
0450       o Added new model based on pre-compound de-excitation
0451         G4LowEGammaNuclearModel.
0452       o G4PreCompoundEmission, G4PreCompoundFragment, G4VPreCompoundFragment:
0453         setup minimum number of points for probability integration to 4;
0454         minor code clean-up.
0455     + models/radioactive_decay
0456       o Added spontaneous fission channel: added new class G4SFDecay to handle
0457         neutron and gamma generation using LLNL model. Read spontaneous fission
0458         data from database, insert it into decay tables and instantiate
0459         G4SFDecay.
0460       o Fixed incorrect branching ratio sum for biased mode, to account for the
0461         addition of N shell EC capture and spontaneous fission.
0462       o G4RadioactiveDecayBase: added StreamInfo() method; updated to new
0463         N shell EC; enable printout of parameters with G4VERBOSE in
0464         BuildPhysicsTable().
0465       o G4RadioactivationMessenger: removed obsolete "fast beta" option,
0466         internal conversion option (not part of biasing) and atomic relaxation
0467         option (not part of biasing). Added "analogueMC" option which was
0468         forgotten when class was developed.
0469       o G4RadioactiveDecayBaseMessenger: removed obsolete "fast beta" option.
0470       o Replaced G4ExceptionDescription in loop with simple string at
0471         exception time inG4RadioactiveDecay, G4RadioactiveDecayBase and
0472         G4Radioactivation.
0473       o In G4RadioactiveDecay::CalculateChainsFromParent() and
0474         G4Radioactivation::CalculateChainsFromParent(), fixed memory leak of
0475         'summedDecayTable' reported by Coverity.
0476       o G4RadioactiveDecay, G4RadioactiveDecayBase: make sure decay table maps
0477         are cleanly deleted at the end of program.
0478     + models/util
0479       o G4NuclearRadii: new utility class with several parameterisations of
0480         nuclear radius.
0481     + processes
0482       o G4HadronElasticProcess: removed tracking cut for all particles (charged
0483         particles may be stopped by the tracking cut of ionisation process;
0484         neutrons should be stopped by G4NeutronKiller).
0485         Added protection for zero energy primary. Removed final state rotation.
0486         Removed default GHEISHA cross-section.
0487         Clean up sampling of final state; improved description and comments;
0488         added C++11 keywords; removed unused local members.
0489       o G4MuNeutrinoNucleusProcess : new process managing
0490         G4NuMuNucleusCc(Nc)Model models.
0491     + stopping
0492       o G4HadronicAbsorptionFritof: extended to neutral anti-hadrons
0493         (anti-neutron, anti-lambda, anti-sigma0 and anti-xi0). This extension
0494         is for completeness and practical convenience, although physically
0495         neutral hadrons should never be completely at rest.
0496     + util
0497       o G4HadProjectile: clean-up for small kinetic energy of the projectile.
0498       o G4HadFinalState, G4Bessel, G4ReactionProduct, G4GHEKinematicsVector:
0499         replaced fabs() with abs().
0500 
0501   o Track & Tracking
0502     ----------------
0503     + G4Track: added forward declaration for G4VProcess.
0504 
0505   o Visualization:
0506     -------------
0507     + Fixed compilation warnings on gcc-9.1.0.
0508     + management:
0509       o Introducing cloud drawing style. New parameter candidate 'cloud' in
0510         "/vis/viewer/set/style". Cloud drawing uses solid->GetPointOnSurface(),
0511         i.e., uses kernel algorithms and by-passes polyhedral representations.
0512         The solid is represented by a polymarker of dots. The default number of
0513         points is 1000. This can be changed with the command
0514         "/vis/viewer/set/numberOfCloudPoints"; the minimum number is 100.
0515         Note that OpenGL has a fast algorithm for polymarker.
0516         This allows us to use cloud style both as a choice or as fallback when
0517         the polyhedral representation fails, for example, when BooleanProcessor
0518         fails.
0519       o New and improved commands:
0520         /vis/viewer/centreOn: improved - it does not zoom.
0521         /vis/viewer/centreAndZoomInOn: new.
0522         /vis/touchable/centreOn: improved - it does not zoom.
0523         /vis/touchable/centreAndZoomInOn: new.
0524         /vis/touchable/extentForField and volumeForField: new.
0525         /vis/scene/showExtents: new.
0526         /vis/set/volumeForField: new.
0527         /vis/touchable/showExtent: new.
0528       o Added copy number parameter to "/vis/touchable/findPath".
0529       o Implemented "/vis/set/extentForField" command: the default is a null
0530         extent, which is to be interpreted by the field model as the whole
0531         extent of the current scene. Otherwise, with this command, one can
0532         limit the extent over which the field is drawn. This would help, for
0533         example, if drawing over the whole scene produced so many arrows or
0534         lines that it clutters the scene. Changed the default spacing:
0535         the parameter 'nDataPointsPerHalfExtent' is changed from 10 to 3, so
0536         as not to clutter the scene. See guidance of "/vis/scene/add/*Field"
0537         commands for further explanation.
0538       o Provide ability to draw electric fields, and eventually any other
0539         field. Added "/vis/scene/add/electricField" by analogy to existing
0540         .../magneticField.
0541       o Refactor MagneticFieldModel class with new base to handle all kinds of
0542         vector fields; existing, and new ElectricFieldModel only have to
0543         implement a simple function to get the field vector at a location.
0544       o Include parameterised volumes in overlap checking and visualisation
0545         in G4LogicalVolumeModel (in addition to ordinary placements).
0546       o Introduced "/vis/viewer/centreOn" and "/vis/touchable/centreOn" UI
0547         commands. This allows one to centre the view (zoom in) on a volume.
0548         Reset with "/vis/viewer/reset".
0549       o Rationalised view interpolation; encapsulate algorithm into base class
0550         G4VVisCommand, so that commands "/vis/viewer/interpolate",
0551         "/vis/viewer/centreOn" and "/vis/touchable/centerOn" now use this.
0552         Might consider use by all view changing commands.
0553       o Fixed bug in "/vis/viewer/set/sectionPlane".
0554       o Corrected few typos in printout/comments.
0555       o Improved guidance for "/vis/scene/add/volume".
0556       o Minor improvements to visualization manager.
0557       o Fixed Boolean operators to return G4bool.
0558       o Fixed Coverity defects.
0559     + modeling:
0560       o Introduced G4BoundingExtentScene. This allows one to accumulate extents
0561         using the newly introduced G4VisExtent::Transform() and is a better way
0562         of determining the overall extent of a scene (or of any set of extents)
0563         than by the bounding sphere approach.
0564       o G4VFieldModel, G4ElectricFieldModel, G4MagneticFieldModel: new
0565         abstraction for field models.
0566       o Arrows and field models: introduced further protection.
0567       o G4VModel: introduced GetTransformedExtent() method.
0568       o G4PhysicalVolumeModel: use G4BoundingExtentScene instead of
0569         G4BoundingSphereScene. Fixed bug whereby the local extent was
0570         incorrectly calculated.
0571       o Fixed bug in "/vis/viewer/set/sectionPlane".
0572       o Added volume count (but commented out printing).
0573     + OpenGL:
0574       o Force double buffer context for OGLIX.
0575       o Force kernel visit on change of number of cloud points.
0576       o Fixed bug in "/vis/viewer/set/sectionPlane".
0577       o Avoid re-using display lists for markers. They may have their own
0578         position relative to the overall object transformation.
0579     + OpenInventor:
0580       o Test number of cloud points for kernel visit.
0581       o Added missing protection on G4VIS_BUILD_OIX_DRIVER.
0582       o Fixed compilation warning from gcc-9.1 in SoCounterAction for setting
0583         of name, apparently not allowed in OpenInventor.
0584       o Corrected few typos in printout/comments.
0585     + XXX:
0586       o Force kernel visit on change of number of cloud points.
0587 
0588   o Data Sets:
0589     ---------
0590     + G4PARTICLEXS-2.0:
0591       o Added data for neutrino.
0592       o Updated cross-sections for low Z targets at low energy.
0593 
0594   o Examples:
0595     --------
0596     + Updated reference outputs, macros, READMEs and scripts.
0597     + advanced/nanobeam
0598       o Include G4Types.hh header in main(), before use of G4MULTITHREADED.
0599     + advanced/underground_physics
0600       o DMXPhysicsList: added Glauber-Gribov cross-section for all elastic 
0601         processes.
0602     + extended/biasing/B03
0603       o B03PhysicsList: explicitly define hadronic cross-sections.
0604         Use G4NeutronInelasticXS cross-section.
0605     + extended/electromagnetic/TestEm1
0606       o Added G4NIELCalculator and corresponding histograms and printouts;
0607         general clean-up of the code; use default random number generator.
0608     + extended/electromagnetic/TestEm5
0609       o StackinAction: fixed log histograms, which where filled in a wrong way.
0610       o PhysListEm19DStandard: use 3-gamma annihilation model.
0611     + extended/electromagnetic/TestEm15
0612       o SteppingAction: do not fill hist #11,#12 when no recoil returned.
0613     + extended/electromagnetic/TestEm16
0614       o PhysicsList: use G4DecayPhysics and drop G4AutoDelete.
0615       o Migrated to use default MixMax generator.
0616     + extended/electromagnetic/TestEm17
0617       o Code clean-up; switch to MixMax random generator.
0618     + extended/hadronic/Hadr01
0619       o HistoManager: added linear histogram for pion energy at production.
0620     + extended/hadronic/Hadr02
0621       o G4CRMCModel: some improvements (e.g. considered the energy-per-nucleon,
0622         instead of the whole projectile, in the case of nucleus projectile) and
0623         better documentation (in the form of comments in the class).
0624     + extended/medical/DICOM
0625       o Defaulted copy-ctr in DicomPhantomZSliceHeader, to fix deprecation
0626         compilation warnings on gcc-9.1.
0627     + extended/medical/DICOM2
0628       o Include G4Types.hh header in main(), before use of G4MULTITHREADED.
0629     + extended/medical/dna/chem2
0630     + extended/medical/dna/chem3
0631       o Clean-up of TimeStepAction.
0632     + extended/medical/dna/chem4
0633       o Added UI commands for one step thermalization model selection
0634         in macro beam.in.
0635       o Make Species alias of const G4MolecularConfiguration.
0636     + extended/medical/dna/chem5
0637       o Make Species alias of const G4MolecularConfiguration.
0638     + extended/medical/dna/dnadamage1
0639       o New example showing a simple way to simulate dna direct and indirect
0640         damages using Geant4-DNA physics and chemical processes in a molecular
0641         DNA geometry.
0642     + extended/medical/dna/microdosimetry
0643       o Updated plot.C.
0644     + extended/medical/dna/microprox
0645       o New example showing how to compute proximity functions in liquid water
0646         using exclusively Geant4-DNA physics processes and models.
0647     + extended/medical/dna/microyz
0648       o Added condensed history models including step size control.
0649       o Added EM UI commands in microyz.in.
0650       o Fixed Boolean operators to return G4bool.
0651     + extended/medical/electronScattering2
0652       o Fixed warning about attempting to add multiple times the same sensitive
0653         detector.
0654     + extended/medical/fanoCavity
0655     + extended/medical/fanoCavity2
0656       o DetectorConstruction: simplification of DefineMaterial().
0657       o DetectorConstruction, DetectorMessenger: fixed usage of base materials
0658         and cleanup (should fix ~1% error for Opt4 EM physics).
0659       o PhysListEmStandard_option4: set RangeFactor to 0.08 (as in the
0660         physics_list library). PhysListEmStandard_option3: set parameters as
0661         in the physics_list library.
0662     + extended/optical/LXe
0663       o LXeDetectorConstruction: removed protection against rebuilding
0664         detector.
0665       o LXeEventAction: commented out randomSaveEvent.
0666     + extended/parallel/MPI
0667       o Fixed compilation error in G4MPIextraWorker.
0668         Addressing problem report #2163.
0669     + extended/persistency/gdml/G01
0670       o Added BeamOn(0) to initialize range to energy converters
0671         needed when exporting cuts per volume.
0672     + extended/persistency/P01
0673       o Fixed definition of allocator in ExP01TrackerHit.
0674     + extended/radioactivedecay/rdecay01
0675       o PhysicsList: replaced G4RadioactiveDecay with refactored class
0676         G4Radioactivation.
0677     + extended/radioactivedecay/rdecay02
0678       o New class BiasedRDPhysics using new G4Radioactivation process with all
0679         biasing available
0680       o In PhysicsList, replaced G4RadioactiveDecayPhysics with
0681         BiasedRDPhysics, also removed HP option physics lists.
0682       o In Run, replaced G4RadioactiveDecay with G4Radioactivation.
0683 
0684  ----------------------------------------------------------------------------
0685