Geant4 10.6 Release Notes
The code and binary libraries for the supported systems are available
through our Source
Code Web page.
We are grateful for the efforts of Geant4 users who have provided
   detailed feedback or comprehensive reports of issues.
   We thank in particular those who have contributed corrections,
   improvements or developments included in this release. 
Please refer to the
Geant4
User Documentation for further information about using Geant4.
Contents
- Supported and Tested Platforms
 
- Supported CLHEP and VecGeom versions
 
- Items for migration of the user code
 
- New Developments and Capabilities
 
- Expected effects on physics and performance
 
- Known Run-Time Problems and Limitations
 
- Compilation Warnings
 
- Geant4 Software License
 
- Detailed list of changes and fixes
 
 
1. Supported and Tested Platforms
Platforms:
- Linux, gcc-4.9.3.
    Tested on 64 bit architectures (Intel or AMD) with
    CERN CentOS Linux 7 (CC7) (based on CentOS Linux 7). 
- MacOSX 10.15 Catalina with llvm/clang-8.0 (Apple LLVM/Clang-11.0)
 
- Windows-10 with Visual C++ 14.23 (Visual Studio 2019)
 
More verified and tested configurations (64 bits):
- Linux, gcc-5.4.0/6.3.0/7.3.0/8.2.0/9.2.0, clang-5.0/8.0
 
- Linux, Intel-icc 19.0
 
- MacOSX 10.13, 14 with clang-7.0
 
 
2. Supported CLHEP and VecGeom version
This release of Geant4 requires and has been verified with
CLHEP, release 2.4.1.3.
Use of a different CLHEP version may cause incorrect simulation results.
NOTE: an internal module of the relevant CLHEP classes is provided and can be
used as alternative to an external CLHEP library installation.
A configuration option allows a Geant4 installation to use the
VecGeom Library
primitives, to replace the original Geant4 solids. VecGeom version
1.1.5 is required when using such configuration.
 
3. Items for migration of the user code
Listed here is some relevant information on developments included in this
release.
Note that for all users a full re-installation of libraries (or a full
re-compilation) and a re-compilation of user applications is required.
 
General
 
- Minimum required version of CMake to build Geant4 is 3.8.
 
- Pre-processor flags are promoted to fixed #define statements in
    a generated header. User code relying on these macros should
    include the G4Types.hh header to make them available.
 
- The preprocessor macros G4UI_USE and G4VIS_USE are removed.
 
- The Debug build mode no longer enables Floating Point Exceptions.
    Please use the new Debug_FPE build mode if your application requires FPE.
 
- Support for Qt4 UI/Vis is deprecated.
 
 
Analysis
 
- The last two optional arguments of the analysis manager function
    SetNtupleMerging() have been removed and these parameters
    can be changed only via the dedicated functions:
    SetNtupleRowWise(), SetBasketSize() and
    SetBasketEntries().
 
 
Geometry, Fields and Transportation
 
- The default integration method for propagation in magnetic fields is
    changed, to select between the new interpolation-capable integration
    scheme, for shorter steps, and a helix-based scheme which is chosen for
    steps larger than 2*pi times the curvature radius at the initial
    location.
 
- Once integration in field require more than a threshold (default 200)
    integration substeps within a single physical step, there is a relaxation
    of the criteria which breaks the curved trajectory into linear segments
    for intersecting with the setup's geometry.
    This criteria is governed by the parameter delta chord.
    Once the threshold is reached, its value is temporarily doubled.
    So subsequent integration substeps are made so that a chord's sagitta is
    now less than twice the delta chord.
    
    
    - Every time the number of iterations reaches a new multiple of 100 (the
        increase value), the maximum sagitta distance (delta chord) is again
        temporarily doubled for the rest of this tracking step.
 
    - This affects only particles below the 'important' energy threshold when
        using G4Transportation only, (currently not G4CoupledTransporation)
        which would otherwise be abandoned after a set maximum number of
        substeps (default=1000).
 
    - To control the previous behaviour, use the G4PropagatorInField's method
        SetIterationsToIncreaseChordDistance() to set the number of
        iterations between increase; note that the initial threshold is twice
        this value. To restore previous behaviour set it to 500.
 
    - In a multi-threaded application, each thread must change this threshold,
        e.g. by calling this method in your G4UserRunAction's
        BeginOfRunAction().
 
    - This does not occur if the alternative transportation process
        G4CoupledTransportation is used, i.e. when one or more parallel  
        geometries are created for scoring, event biasing, parallel mass
        geometry or other use(s).
 
    
 
- An application which uses an external gravitational field must enable the
    use of gravity by calling G4Transportation's static method
    EnableGravity(). This change was introduced in order to call
    the ConfigureForTrack() method of G4FieldManager only for
    charged particles by default. Example field06 in
    examples/extended/field illustrates this.
 
 
Electromagnetic and optical physics
 
- The new data sets G4EMLOW-7.9 should be used.
 
 
Hadronic physics
 
- The new data sets G4PhotonEvaporation-5.5,
    G4RadioactiveDecay-5.4, G4PARTICLEXS-2.1 and
    G4NDL-4.6 should be used.
 
 
Data Sets
 
- This release introduces new data set versions.
    Please see the corresponding details in
    Section 9 of this document.
    
    - New data set versions: G4EMLOW-7.9, G4RadioactiveDecay-5.4,
        G4PhotonEvaporation-5.5, G4PARTICLEXS-2.1, G4NDL-4.6.
 
    - In order to use ParticleHP for charged particles
        (protons, deuterons, tritons, He3 and alphas), an optional data
        set G4TENDL-1.3.2 is required, and should be downloaded in
        addition from the
        Geant4 web site.
 
    
 
4. New Developments and Capabilities 
General
- Reviewed G4PhysicsVector adding an additional Value() method option to
    propagate down the known log-energy value. This helps avoiding log() calls
    when log-vector is used.
 
- Added functionality in G4DynamicParticle to provide log-kinetic energy
    value, computed only on demand if its stored value is not up-to-date with
    the kinetic energy. Reviewed EM processes to select the target atom by
    making use of the already known log-energy value in the log-vector access.
    Providing measurable CPU speedup.
 
- Enhanced UI commands to now return proper return code when they are not
    successful.
 
- Introduced ability to perform leading particle biasing.
 
Analysis
- Added a new factory function ManagerInstance() in G4Analysis,
    which allows to create the analysis manager of the type selected via a
    string argument and so to choose the output type at run time.
 
- Switched the default Root n-tuple merge mode to new column-wise mode
    with preserving rows and added a second, optional, argument in the
    SetNtupleRowWise() function which can be used to override the
    defaults.
 
Digitization & Hits
- Added G4TScoreNtupleWriter and G4TScoreNtupleWriterMessenger which
    implement storing hits collections of G4THitsMap type vith Geant4 analysis
    tools, defined in G4VcoreNtupleWriter. Its usage is demonstrated in basic
    examples B3 and B4d.
 
Geometry and Field
- Enabled VecGeom wrapper for G4GenericPolycone, G4EllipticalTube,
    G4EllipticalCone and G4Ellipsoid. Requiring VecGeom version 1.1.5.
 
- Added support for writing out assemblies envelopes in GDML.
 
- Added hooks for capability to navigate in external geometry with
    custom navigation.
 
- Completed the development of integration driver with 'interpolation'
    capability.
    It estimates the position, momentum (and potentially other state,
    e.g. polarisation) at intermediate values of the integration interval.
    During the integration, one or more intervals are used to move the track's
    state. For each interval a different instance of the stepper is used.
    Subsequent calls for intermediate points (e.g. to locate the intersection
    of the curved trajectory with a boundary) use the interpolation capability
    using the existing data (stored in the earlier stepping), instead of
    re-integration which involves re-evaluating the field and equation of
    motion. Note: currently this can be used only with G4DormandPrince745
    Runge Kutta integration method.
 
- Completed new multiplexing integration driver G4BFieldIntegrationDriver 
    for magnetic fields, that enables mixing between two methods (drivers)
    based on the ratio of the proposed step length and the step curvature at
    the track's initial position.
    One method is selected for shorter steps, and a different method for steps
    longer than 2*pi (estimation for uniform field). The default driver
    created in G4ChordFinder's constructor and G4FieldManager's
    CreateChordFinder() now creates it; it uses the interpolation
    driver with the Dormand Prince 5/4th order Runge-Kutta method for short
    steps, and for longer steps it uses the G4HelixHeum method which can
    integrate over a large number of helical turns in a sufficiently slowly
    varying field.
    Enabled by default stepping using interpolation in field propagation.
 
Materials
- Added G4DensityEffectCalculator: new class, providing on fly computation
    of the density effect correction using "exact" formulas.
 
- Added ICRU90 data for ion ionisation.
 
Electromagnetic physics
- Optimised step limitation in G4UrbanMscModel and modified lateral
    displacement sampling.
 
- New helper class G4NIELCalculator, to compute NIEL in user stepping
    action or sensitive detector code.
 
- Added handling of UI thermalization model control in DNA physics lists.
 
Hadronic physics
- Use Glauber-Gribov cross-sections for hyperons and anti-hyperons for
    both elastic and inelastic hadron-nucleus interactions.
 
- Extended hadron-nucleon cross-sections to charmed and bottom hadrons
    (mesons and baryons). Note: these cross-sections are meant to be used
     by Glauber-Gribov charmed and bottom hadron nuclear cross-sections, as
     well as by the FTF string model for dealing with charmed and bottom
     projectiles; however, the inelastic interactions of charmed and bottom
     projectiles are not yet included in reference physics lists.
 
- Removed tracking cut in hadron-elastic and use numerically safer
    computation for very low-energy projectile.
 
- Use FTFP also for the annihilation at rest of neutral anti-hadrons.
 
- Added new gamma-nuclear model based on pre-compound de-excitation.
 
- Added spontaneous fission channel in radioactive-decay.
 
- High energy extension of the neutrino-electron cross sections, 
    for both charged-current and neutral-current interactions
    (M_W and M_Z propagator factors and Glashow resonance), for all neutrino
    and anti-neutrino flavours.
 
Physics Lists
- Changed transition region between hadronic string and intra-nuclear cascade
    models: now it is [3, 6] GeV consistently for all particle types 
    (nucleons, pions, kaons, hyperons, ions and gammas; for anti-baryons,
    instead, FTFP is still used for all energies). Note: this does not affect
    the physics lists FTFP_BERT_ATL, NuBeam, ShieldingM, and those based on
    INCLXX. Moreover, for the QGS-based physics lists, the transition between
    FTFP and QGSP remains unchanged in the region [12, 25] GeV.
 
- Added (consistently) RadioactiveDecay to all physics lists which use
    NeutronHP. Note: this affects the physics lists FTFP_BERT_HP, QGSP_BERT_HP,
    FTFP_INCLXX_HP and QGSP_INCLXX_HP, whereas Shielding, LBE, QGSP_BIC_HP and
    QGSP_BIC_AllHP had it already.
 
- A new stopping physics constructor (G4StoppingPhysicsFritiofWithBinaryCascade)
    has been introduced, which uses Fritiof (FTF) coupled with Binary cascade
    (BIC) for the anti-baryon annihilation at rest. It is used only in the
    physics lists FTF_BIC and QGS_BIC.
 
Visualization and Interfaces
- New set of UI commands and improvements in visualization.
    Added new UI commands for view interpolation and centering.
 
- Introducing cloud drawing style in visualization, using kernel algorithms
    for generating points on the surface of volumes, by-passing polyhedral
    representations; the solid is being visualised by a polymarker of dots.
 
Examples
- GB07: new example (in extended/biasing) to demonstrate the usage
    of the leading particle biasing functionality, introduced in the generic
    biasing package.
 
- Hadr08: new example (in extended/hadronic) to demonstrate the
    possibility of emulating hadronic-model-per-region capability 
    (not foreseen by the hadronic framework) via the use of generic biasing 
    with usual, unbiased weights of 1.0.
 
- Extended GFlash examples set by moving existing gflash example to
    gflash1 and added: gflash2 with envelope in parallel world;
    gflash3 with SD in parallel world; gflasha with histogramming
    of shower profiles.
 
- dnadamage1: DNA simulation of damage on a chromatin fiber.
 
- microprox: DNA computation of proximity functions in liquid water.
 
5. Expected effects on physics and computing performance
Electromagnetic physics
- Expected unchanged response for calorimeter simulations.
 
- General speedup of electro-magnetic physics by 4-8% depending on the
    software platform. Additional speedup if the general gamma process
    mode is enabled (disabled by default).
  
Hadronic physics
- Increased energy response and more compact hadronic showers mostly in the
    projectile energy range between 5 and 20 GeV, mainly due to the change
    in transition energy between FTFP and BERT.
 
 
6. Known Run-Time Problems and Limitations
For a complete list of outstanding run-time problems and to submit any
problem you may find while running this version of Geant4, please refer
to the
Geant4 Problem
Reporting System.
 
7. Compilation Warnings
There may be a few compilation warnings on some platforms, particularly
on Windows with Visual Studio, where warnings level has been raised when
building examples.
We do not believe that any of these lead to incorrect run-time behaviour.
 
8. Geant4 Software License
A Software License applies to the Geant4 code.
Users must accept this license in order to use it. The details and the list of
copyright holders is available at
http://cern.ch/geant4/license
and also in the text file LICENSE distributed with the source code.
 
9. Detailed list of changes and fixes
These are the main new features/fixes included in this release since the
last patched public release (for more detailed lists of fixes/additions,
please refer to the corresponding History files provided in most packages):
 
Configuration
- CMake
    
    - Set minimum required CMake version to 3.8 to fully support C++17
        on all systems. Addressing problem report
        #2044.
 
    - Updated Intel settings to support use of C++17 with Intel 19 when
        using CMake-3.8-3.10. Versions from 3.11 fully support Intel 19/C++17.
 
    - Removed obsolete GEANT4_BUILD_MUONIC_ATOMS_IN_USE option
        and associated configuration/compiler flags.
 
    - Promoting following pre-processor flags to fixed #defines in a new
        header generated by CMake using the chosen build options to
        #define/#undef as appropriate: G4USE_STD11, G4MULTITHREADED,
        G4_STORE_TRAJECTORY, G4VERBOSE, GEANT4_USE_TIMEMORY.
        Promoted VecGeom pre-processor flags to fixed #defines as well.
        Ensuring the header is included by primary "global" category headers
        so that all categories will pick up the changes transparently.
        Removed use of add_definitions of CMAKE_CXX_FLAGS to set these flags
        in Geant4 and client scripts.
 
    - Removed G4FPE_DEBUG from build mode "Debug". Added new build mode
        "Debug_FPE" same as "Debug" mode but appending -DG4FPE_DEBUG.
 
    - Set OpenGL_GL_PREFERENCE to LEGACY, to prevent warning on
        CMake >= 3.10, and keeping existing behaviour.
 
    - Only scope location of test executable when using a generator that
        supports multi-config; allows tests to be run with Ninja Generator as
        "ninja test".
 
    - Do not switch off CMAKE_CXX_EXTENSIONS in Geant4Config; not required
        for client applications. Addresses problem report
        #2002.
 
    - Using target_XXX usage requirements to transport header paths and links.
        Removed requirement to use complete include_directories chain in Module
        sources.cmake files. Retain exported "Geant4_INCLUDE_DIR{S}" variables
        in case clients use Root dictionary generation (which does not
        understand usage requirements of targets until latest versions).
        Removed remaining -D flags set via add_definitions, moving to
        target_compile_definitions.
 
    - Namespace exported targets with "Geant4::" to enforce use of targets
        and prevent accidental linkage via -lG4name expansion.
 
    - Migrate use of all external packages to use and refind exported targets,
        with shim scripts to support CMake versions from 3.8 at build/use time.
 
    - Store build-time locations of used external packages in an optionally
        installable CMake script for reuse, if present, by Geant4Config.cmake 
        in refinding packages.
 
    - Require MSVC 19.20 (Visual Studio 2019) or newer as minimum required
        version to build Geant4 on Windows. Needed to support use full C++17
        Standard. Default C++ Standard with MSVC is now C++17.
 
    - Removed old genwindef method of generating DLL symbol exports, as
        minimum cmake version of 3.8 fully supports direct generation via
        target properties.
 
    - Removed GEANT4_FORCE_QT4 option, deprecating Qt4 support. Retain
        fallback to finding Qt4, emitting a CMake warning that use of Qt4 is
        deprecated.
 
    - Disabled configuration for Wt UI/Vis driver, as no longer supported.
 
    - Updated scripts to support the TiMemory find_package COMPONENTS and
        the INTERFACE library generation.
 
    - Fixed logic of setting up components in Geant4Config.cmake.
        Addresses problem report
        #2139.
 
    - Fixed issue for path with spaces, reported in Users Forum #451.
 
    - Added ELLIPSOID, ELLIPTICALCONE and ELLIPTICALTUBE flags to enable
        wrapping of G4Ellipsoid, G4EllipticalCone and G4EllipticalTube with
        correspondent VecGeom primitives.
 
    - Updated data-sets versions.
 
    
 
- GNUMake
    
    - Hard-code Qt version through QT_VERSION flag.
        Corrected Qt5 setup for Linux-g++ and Linux-clang.
 
    - architecture.gmk: added -DG4GMAKE to CPPFLAGS to identify enabling
        of GNUmake builds.
 
    - Fixed default paths for Linux architectures.
 
    - geomconf.gmk: added VecGeom wrappers flags for G4EllipticalTube,
        G4EllipticalCone and G4Ellipsoid.
 
    - Fixed compilation warning on gcc-9.2 for liblist.c.
 
    - Added new analysis/factory subdirectory in includes in binmake.gmk;
        removed analysis/parameters which does not exist anymore.
 
    - Corrected default path for XM in Darwin targets.
 
    - Force use of C++17 in WIN32 targets.
 
    - interactivity.gmk: added -DQT_NO_DEPRECATED_WARNINGS to Qt compilation
        settings, to silence warnings from Qt for use of deprecated features.
 
   
 
Analysis
- Ntuples
    
    - Fixed CSV, XML ntuple file names.
 
    - Added methods for setting ntuple merge mode in G4VAnalysisManager
        with a default implementation (issuing a warning if merging is not
        available).
 
    - Added fRowWise data member in G4RootNtupleManager to make the
        parameter available in MPI.
 
    
 
    - Analysis management & plotting
    
    - Enhanced the G4VAnalysisManager interface: added new option for
        ntuple merging and updated/added functions for merging:
        SetNtupleMerging() - removed rowWise and basketSize optional paremeters;
        SetNtupleRowWise() - added parameter 'rowMode' with a default value;
        SetBasketSize(), SetBasketEntries() - new methods.
        Added functions and UI commands for setting axis log scale for
        plotting: Set[H,P][1,2,3][X,Y.Z]AxisIsLog() and analogous getters
        New UI commands /analysis/[h,p][1,2,3]/set[X,Y,Z]axisLog true|false.
 
    - Added new factory function ManagerInstance() in G4Analysis, which allows
        to create the analysis manager of the type selected via a string
        argument.
 
    - Added new analysis sub-category "factory".
 
    - Cleaned-up analysis type definitions: G4Hn*, G4Pn* types moved out
        of type specific namespace.
 
    - In G4PlotManager: disabled Paw encoding; this fixes a problem with
        unwanted axis labels in Greek.
 
    - Fixed cases of implicit type conversions from size_t to G4int.
 
    - Link directly to FreeType and HDF5 imported targets.
 
    
 
    - g4tools
    
      - Updated the g4tools version to g4tools-5.0.5.
      
        - Handle axis label in case of freetype font.
 
        - Root format: restore a "per event/row view" for the ntuple
            column-wise in MT and MPI.
 
        - Batch plotting: fixes to avoid labels overlap when having a grid
            of plotters.
 
        - MPI: fixed a memory leak.
 
        - Fix for axis labels with log scale.
 
        - Scene graph: have material for interactive plotting.
 
        - Include modifications coming from other usage of inlib/exlib,
            for example, in Root, to be able to read TClonesArray.
 
        - Fixed compilation warning from gl2ps showing up on gcc-9.2.
 
        - sg/plotter: added functions set_encoding() and set_encoding_none()
            which allow to disable (unwanted) Paw specific encoding.
 
        - Fixed memory leak in mpi_create_basket().
 
        - Fixed Coverity warnings.
 
        - See History_tools for the complete list of modifications.
 
      
 
    
 
Digitization & Hits
- Introducing G4ScoringRealWorld, allowing to define command-based scorers
    to a logical volume in the mass world.
 
- Revised G4ScoringQuantiryMessenger and G4ScoringMessenger to better handle
    the error cases.
 
- Added "ntuple" subdirectory for score ntuple writer UI commands.
 
- Added G4TScoreNtupleWriter and G4TScoreNtupleWriterMessenger
    which implements storing hits collections of G4THitsMap type vith
    Geant4 analysis tools, define them in G4VcoreNtupleWriter.
    The dependency on the analysis category is avoided via template.
 
- Fixed implicit type conversions from size_t to G4int in digits and hits
    classes (collections, vectors, maps).
 
- Pass G4String by const reference in G4SDStructure and digits/hist
    collections base classes.
 
- G4PSSphereSurfaceFlux: fixed track weight.
 
Electromagnetic Processes
- DNA:
    
    - Added G4DNAMolecule class.
 
    - Added Kreipl and Meesungnoen amorphous ice models.
 
    - Added new model G4DNAELSEPAElasticModel.
 
    - Updated G4DNAWaterDissociationDisplacer* classes.
 
    - Moved checking of position of track status in
        G4ITStepProcessor::SetInitialStep().
 
    - Chemistry: clarified pointer ownership in G4DNAChemistryManager.
 
    - Fixed reaction site issue.
 
    - Fixed case of division by zero of diffusionCoefficient in 
        G4DNABrownianTransportation::AlongStepGetPhysicalInteractionLength()
        for the case of static molecules.
 
    - Enabled G4ItNavigator{1,2} to flag if it encounters new type of
        external physical volume (meant for adapting external navigators).
 
    - Fixed cases of implicit type conversions from size_t to G4int.
 
    - Fixed compilation warnings on gcc-9.1. Code cleanup.
 
    
 
- High Energy
    
    - G4GammaConversionToMuons, G4AnnihiToMuPair: added
        registration/de-registration mechanism.
 
    - G4GammaConversionToMuons: added initialisation and optional possibility
        to use 5D model for the sampling of the final state.
 
    - G4mplIonisationWithDeltaModel, G4mplIonisationModel: fixed dEdx for
        electron gas model (beta<0.01). Addressing problem report
        #2169.
 
    
 
- Low Energy
    
    - G4LivermorePhotoElectricModel: use std::getenv; slightly speed-up.
 
    - G4IonParametrisedLossModel: use std::getenv; allowed ICRU90 option.
 
    - Use std::getenv() for thread safety.
 
    
 
- Muons
    
    - G4TablesForExtrapolator: create G4LossTableBuilder and destruct at
        end of run.
 
    
 
- Standard
    
    - In most models, make use of the new target atom selector that can
        reuse the already known log-energy value.
 
    - G4UrbanMscModel, G4WentzelVIModel, G4GoudsmitSaundersonMscModel:
        make use of the new base class methods in utils module, utilising
        the already known log-energy value, in case of dEdx, range and
        transport mean free path log-vector table accesses.
 
    - G4UrbanMscModel: optimised step limitation for 'UseSafetyPlus'
        and 'UseDistanceToBoundary'. Minor clean-up of step limit method.
        Modified lateral displacement sampling.
 
    - G4ScreeningMottCrossSection, G4KleinNishinaModel, G4SeltzerBergerModel,
        G4eSingleCoulombScatteringModel: use element->GetZasInt() interface
        in order to reduce number of double->int conversions at run time.
 
    - G4BetheHeitler5DModel: set x,y components in BoostG4LorentzVector
        function. Replaced local boost and rotation functions with CLHEP
        boost, boostZ, transform. One random generator flatArray() call in
        sampling loop. New parameters set for muon (30% speed up), nuclear
        threshold calculation. Added gamma conversion to mu+ mu- mode.
 
    - G4eCoulombScatteringModel, G4WentzelOKandVIxSection: cleanup debug
        cout and initialisation.
 
    - G4UrbanMscModel, G4GoudsmitSaundersonMscModel, G4WentzelVIModel: use
        lambdalimit and facsafety parameters from the base
        class G4VMscModel.
 
    - G4SeltzerBergerModel: during initialisation data files upload only data
        for elements used in geometry, lazy initialisation of the data is also
        available for testing.
 
    - G4SeltzerBergerModel, G4ICRU49NuclearStoppingModel: safer
        initialisation in MT mode.
 
    - G4ScreeningMottCrossSection, G4eSingleCoulombScatteringModel: optimized
        code and data structure; fixed floating point exception for low energy;
        use C++11 patterns.
 
    - G4hCoulombScatteringModel, G4hCoulombScatteringModel: removed unused
        headers.
 
    - G4PairProductionRelModel, G4GammaConversion: the high energy model for
        e-/e+ pair production has been extended down to threshold (2mc^2)
        such that it gives results (both cross-section and final state) identical
        to those produced by the low energy (G4BetheHeitlerModel). Since this new
        version of the high energy model can describe e-/e+ pair production from
        threshold up to PeV (LPM effects are included) the G4BetheHeitlerModel
        is now removed from the G4GammaConversion process.
 
    - G4eplusAnnihilation: set secondary weight correctly using bias manager.
 
    - G4ESTARStopping, G4GSMottCorrection, G4GSPWACorrections,
        G4GoudsmitSaundersonTable, G4SBBremTable, G4SeltzerBergerModel: minor
        cleanup; use of std::getenv() and use of
        G4Element::GetZasInt().
 
    - Requires data-set G4EMLOW-7.9.
 
    
 
- Utils
    
    - G4EmElementSelector, G4VEmModel: added extra method to select the
        target atom by making use of the already known log-energy value in
        the log-vector access.
 
    - G4VEmProcess, G4VEnergyLossProcess and G4VMscModel: added extra
        methods to access log-vector tables by propagating the already
        known log-energy value.
 
    - G4VMscModel, G4VMultipleScattering: added new method
        InitialiseParameters(), make multiple-scattering specific
        methods pure virtual.
 
    - G4LossTableManager: added Register/DeRegister() methods and vector
        of pointers for G4VProcess classes for X-ray and optical processes.
 
    - G4EmParameters: added polarisation flag; moved implementation of
        splitting parameters to source and added check on lock; added
        9.99 MeV low limit in the SetMaxEnergy() method,
        added thread lock to Dump() method.
 
    - G4EmParameters, G4EmParametersMessenger: splitted classes keeping the
        user interface unchanged.
        Added new classes for complex EM parameters (G4EmExtraParameters
        G4EmExtraParametersMessenger) and new classes for low-energy and
        DNA parameters (G4EmLowEParameters, G4EmLowEParametersMessenger).
        Added new parameters for multiple-scattering FactorSafety and
        LambdaLimit; now users can customise these values, default
        values used are the same as in release 10.5.
 
    - G4EmSaturation: do not apply saturation for zero step length, as this
        is possible only if a tracking cut is applied.
 
    - G4EmBiasingManager: delete non-tracked particles.
 
    - New helper class G4NIELCalculator, to compute NIEL in user stepping
        action or sensitive detector code. User should provide G4VEmModel
        objects, which has NIEL model.
 
    - G4LossTableManager: added access and initialisation of
        G4NIELCalculator. Use std::getenv() for thread safety.
 
    - G4VEmProcess, G4VEnergyLossProcess, G4VMscModel, G4EmElementSelector:
        utilise new optimised LogVectorValue() function from G4PhysicsVector
        (for log-vector).
 
    - G4EmElementSelector: new optimised version; adopting linear
        interpolation to avoid redundant energy grid related computations;
        branches used to handle rare corner cases are eliminated by increased
        robustness of the algorithm.
 
    - Removed no longer used members in G4EmElementSelector and G4VEmModel.
 
    - G4LossTableBuilder, G4LossTableManager, G4VEmModel, G4VMscModel, 
        G4VEmProcess, G4VEnergyLossProcess, G4EmCalculator: allow both
        approaches, "General Process" and "Base Materials", work together.
 
    - G4DNAModelSubType: added Kreipl and Meesungnoen amorphous ice models.
        G4EmLowEParametersMessenger: added corresponding commands.
 
    - DummyModel: added methods to be consistent with above modifications.
 
    - Fixed Coverity defects.
 
    
 - Xrays
    
    - G4Cerenkov, G4Scintillation, G4SynchrotronRadiation,
        G4VTransitionRadiation: added registration/de-registration mechanism.
 
    
 
Event
- G4SPSEneDistribution: added protection for potential infinite loop.
    Addressing problem report
    #2177.
 
- G4SPSPosDistribution: added accessor methods for volume confinement 
    Addressing GitHub PR #7.
 
- Fixed implicit type conversions from size_t to G4int in G4TrackStack
    and G4TrajectoryContainer. Fixed typos and some code cleanup.
 
- Make -DG4_USESMARTSTACK a public compile definition of G4event
    to propagate it directly to CMake clients.
 
Externals
- CLHEP:
    
    - Updated to CLHEP version 2.4.1.3.
 
    - MixMaxRng: throw if seed is zero. Use throw instead of exit()
        elsewhere.
 
    - Defaulted operator=() also for BasicVector3D andPlan3D; fixing
        deprecation warnings  on gcc-9.1. Fixed shadowing compilation
        warnings in Transform3D as reported on gcc-9.1.
 
    - Added move constructor and move assignment operators in Vector and
        Geometry classes.
 
    - Fixed compilation warnings for cases of implicit type conversions in
        Ziggurat classes.
 
    
 
General Processes
- Biasing
    
    - Introducing leading particle biasing.
 
    - G4BOptnChangeCrossSection: added argument to SetBiasedCrossSection()
        method, as option to update the interaction length when setting a new
        cross-section value.
 
    - Fixed cases of implicit type conversions from size_t to G4int.
 
    
 
- Cuts
    
    - Added protection against premature call to G4ProductionCutsTable.
 
    - Fixed cases of implicit type conversions from size_t to G4int.
 
    
 
- Decay
    
    - G4Decay: extended printout for G4Exception DECAY101 and DECAY102.
 
    
 
- Management
    
    - Made G4ProcessTable a thread-local singleton.
 
    - Fixed cases of implicit type conversions from size_t to G4int.
 
    - Some code cleanup in G4ProcessManager.
 
    
 
- Optical
    
    - G4OpWLS: call SetNumberOfSecondaries() from G4VParticleChange only
        once. Addressing problem report
        #2200.
 
    - Improved diagnostics printout.
 
    - Code cleanup and formatting, added C++11 keywords.
 
    
 
- Parameterisation
    
    - Register G4FastSimulationManagerProcess with highest ordering in
        G4FastSimulationManagerHelper to ensure it is the only process invoked
        for a given step (ExclusivelyForced) and no other StronglyForced
        processes will be considered.
 
    
 
- Transportation
    
    - The following fixes and improvements affect both G4Transportation and
        G4CoupledTransportation:
        - Fixed issues related to resetting of looper flag and other state for
        field propagation. Involved replacing check for 'Global' field with check for any field; this is
        needed to ensure that propagator-in-field state is reset when the
        setup inludes only local fields.
        Ensure that looping flag is reset (false) when a force is not exerted
        in G4CoupledTransportation::AlongStepGetPhysicalInteractionLength();
        before it was overwritten afterwards.
        Addressing problem report
        #2144.
        - Optimisation to avoid calling user field manager's
        ConfigureForTrack() method, except if particle is charged,
        or forces from magnetic moment or gravity are enabled.
        - The change above introduces a new 'flag' to enable gravity fields.
        The static method EnableGravity() in G4Transportation must be
        called if the application uses gravity fields (calling this method
        will enable both types of transportation to consider gravity.
        - Added flag to optionally silence warning about looping tracks.
        The method SetSilenceLooperWarnings() controls it. 
    
 
Geometry
- Implemented minor C++11 revision and code cleanup.
    Use pre-increment wherever possible.
 
- Fixed minor Coverity defects.
 
- Divisions
    
    - Return correct value for multiplicity in G4PVDivision and
        G4ReplicatedSlice. Addressing problem report
        #2168.
 
    - G4PVDivision: added missing implementation of alternative constructor.
 
    - Added new virtual VolumeType() method in Physical Volume types.
 
    
 
- Magnetic field
    
    - G4ChordFinder: changed to use concrete type of Stepper as template
        parameter.
 
    - G4InterpolationDriver: revision that uses an instance of the stepper for
        each substep. Fixed memory churn; use FSAL property of stepper
        (G4DormandPrince745) to avoid one RHS evaluation per integration
        substep beyond the first.
        Changed from G4VERBOSE to G4FIELD_DEBUG for debug checks.
        Now set by default.
 
    - Removed division in G4DormandPrince745::Interpolate4thOrder().
        Fix in 5th order interpolation method.
 
    - Reset step estimate in G4MagInt_Driver only at the beginning of a
        track.
 
    - Added G4SextupoleMagField, an implementation of a sextupole magnetic
        field.
 
    - Completed implementation G4BFieldIntegrationDriver, and fixed issues.
        It is now used as the default driver for magnetic fields: 
        it instantiated in G4FieldManager's CreateChordFinder() method.
        Fixed case of floating point exception in and removed statistics
        printouts from destructor.
 
    - Added method and attribute to G4VIntegrationDriver
        DoesReIntegrate() to inform whether the driver recomputes
        segment when AccurateAdvance() is called.
 
    
 
- Management
    
    - G4GeomSplitter: re-enabled use or realloc()/free() and
        memcpy(), after adapting G4VPhysicalVolume MT splitted data
        to adopt only trivial types for allocation. Re-establishing original
        performance in initialisation of the geometry in MT mode.
 
    - Properly initialise splitted data in G4VPhysicalVolume to zero.
 
    - Replaced deprecated std::binary_function calls with lambdas in
        G4SmartVoxelStat and G4GeometryManager. Addressing GitHub PR#8.
 
    - Defined move constructor and move assignment operator for
        G4AffineTransform.
 
    - G4VSolid: use G4QuickRand() in EstimateCubicVolume()
        and EstimateSurfaceArea().
 
    - Changed G4VPhysicalVolume::VolumeType() to be virtual.
        Required for addition of External Navigation, which adds an 'external'
        physical volume type (for use with an External sub-Navigator).
 
    - Revised G4LogicalVolume to cope with 'external' type of physical
        volumes. Use stored volume type in CharacteriseDaughters().
        These revisions are independent and backward compatible.
 
    - G4LogicalVolume: added method ChangeDaughtersType() to change
        the volume type for CharacterisedDaughters(). It enables the
        user to turn over responsibility for navigation in that volume to an
        external navigator.
        This is for use when one or more daughter volumes are created as an
        existing physical volume type (typically G4PVPlacement). It
        can also be used to enable to create a (logical) volume which containts
        a mixture of existing Geant4 physical volume types and user-created
        'external' physical volume type (with type code kExternal):
        Geant4 types must be created first, and then ChangeDaughtersType()
        must be called to change the mother's attribute to kExternal.
        Note: only one type of sub-navigator will be called to find a track's
        intersection (or the location of a point) in all daughters of one
        mother volume. The sub-navigator chosen will correspond to the volume
        type assigned.
 
    - Fixed cases of implicit type conversions from size_t to G4int.
 
    - Use header-based #define/undef symbols to configure VecGeom
        replacements; added new configuration headers G4GeomConfig.hh and
        G4GeomTypes.hh.
 
    
 
- Navigation
    
    - Improved information in G4Exceptions for particles stuck due to
        multiple zero steps in G4Navigator.
 
    - Added hooks for capability to navigate in 'external' geometry:
        new base class G4VExternalNavigation for external 'sub'-navigator;
        new type of 'External' physical volume, to flag volumes for
        external sub-navigator; revisions to G4Navigator to dispatch logical
        volumes with daughters which are of 'external' physical-volume type.
        An 'external' sub-navigator can be registered with G4Navigator;
        'placement' and 'external' physical volumes cannot be currently
        mixed inside the same logical volume.
 
    - Added Clone() method in G4Navigator, to allow for 'cloning' the
        navigator for G4VIntersectionLocator's 'helper', and potentially for
        worker threads.
 
    - G4TransportationManager: enable worker threads to clone G4Navigator if
        needed. Keep first navigator created; by convention that will be the
        navigator object of the master thread (or the only thread). Other
        (worker) threads will clone the first navigator, if it has an external
        sub-navigator registered. This ensures that they clone the ability to
        navigate in 'external' volume descriptions.
 
    - G4MultiLevelLocator: avoid re-estimating endpoint if driver does not
        re-integrate when AccurateAdvance() is called.
 
    - Introduced temporary 'relaxation' (increase) of the value of delta-chord,
        in G4PropagatorInField, to enable larger steps, after a threshold number
        of iterations (parameter). Added methods to get/set the parameter that
        controls after how many integration substeps (in one physics step) the
        increase of the chord distance is trigerred.
 
    - Made G4RegularNavigationHelper a G4ThreadLocalSingleton.
 
    - G4PhantomParameterisation: reverted precision checks as in version
        10.2.p02. Addressing problem report
        #2192.
 
    - Enable UI command /geometry/navigator/push_notify which was
        not setup properly. Addressing problem report
        #2173.
 
    - Fixed cases of implicit type conversions from size_t to G4int.
 
    
 
- Solids (Boolean)
    
    - G4BooleanSolid: use G4QuickRand() in GetPointOnSurface();
        reduced max number of tries to generate a point to 100k.
 
    - Fixed cases of implicit type conversions from size_t to G4int.
 
    
 
- Solids (CSG)
    
    - G4Tubs: Fixed normal from DistanceToOut() to be unit vector, for
        abnormal exit points. Added inverse-Rmax and -Rmin as
        data members.
 
    - Re-use pre-calculated values instead of using std::cos(), std::sin()
        in G4Tubs, G4Cons, G4CutTubs and G4Sphere.
 
    - G4CutTubs: fixed minor Coverity defects for non initialised data in
        constructors.
 
    - Added inclusion of new G4GeomTypes.hh header to those headers allowing
        VecGeom replacement.
 
    
 
- Solids (Specific)
    
    - Enabled VecGeom wrapper for G4GenericPolycone, G4EllipticalTube,
        G4EllipticalCone and G4Ellipsoid. Requiring VecGeom version 1.1.5.
 
    - G4ExtrudedSolid: fixed a bug in DistanceToOut(), affecting extruded
        solids defined off-center along the z-axis.
 
    - Fixed generation of polyhedron in G4UExtrudedSolid::CreatePolyhedron().
        Addressing visualization part of the problem report
        #2171.
 
    - Avoid defining kCarTolerance as 'static const' in G4VFacet.
        Addressing problem report
        #2172.
 
    - Modified G4PolyconeSide and G4PolyhedraSide to use only trivial types
        for MT splitted data in G4PlSideData and G4PhSideData respectively.
 
    - Protected check in G4TwistedTubsSide::DistanceToPlane() within debug
        flag.
 
    - Defined move constructor and move assignment operator for
        G4TriangularFacet.
 
    - Use GetVertices() instead of GetParametersList() in
        the wrapper G4UTet.
 
    - G4TesselatedSolid: fixed case of potentially uninitialized array.
 
    - G4GenericTrap: fixed compilation warnings for variable shadowing
        on clang-8.
 
    - Rationalise header inclusions for faceted solids.
 
    - Removed unnecessary forward declaration in G4VFacet header.
 
    - Added inclusion of new G4GeomTypes.hh header to those headers allowing
        VecGeom replacement.
 
    
 
- Volumes
    
    - Revised G4PVPlacement::CheckOverlaps() for speed up; improved
        diagnostics.
 
    - Added enablers for external navigation capability.
        Added new virtual base class G4VExternalPhysicalVolume.
 
    - Added new virtual VolumeType() method in Physical Volume types.
 
    - Fixed registration of G4PVParameterised daughter in mother volume to
        enable its true volume type (kParameterised) to be recognised and
        registered in mother logical volume.
 
    - Fixed cases of implicit type conversions from size_t to G4int.
 
    
 
Global
- G4PhysicsVector: added additional Value() method option to propagate down
    the known log-energy value (can avoid the log call in case of
    log-vector). Added optimised LogVectorValue() method, implementing
    optimised algorithm for use with log-vectors only. All conditional branches
    are eliminated by increased robustness of the algorithm.
 
- Added protection against idx > entries() in G4PhysicsVector::insertAt()
    function. Addressing problem report
    #2182.
 
- G4PhysicsVector, G4PhysicsLogVector, G4PhysicsLinearVector and
    G4PhysicsLnVector: changed dBin member to invdBin(=1/dBin)
    to get rid of run-time divisions.
 
- Added G4QuickRand header in HEPRandom sub-module.
 
- Added 'External' (physical) volume type to geomdefs.hh.
 
- Added new LOG_EKIN_MIN constant as value taken in case of zero kin-energy
    in templates.hh.
 
- Defined default move constructor and move assignment operator for
    G4String and G4DataVector.
 
- G4SimplexDownhill: fixed minor Coverity defect.
 
- Fixed implicit type conversions in G4String internal methods.
 
- Updated settings for TiMemory.
 
- Use move semantics in G4ConsumeParameters, eliminating warning about
    unnecessary copy for some compilers.
 
- Added G4GlobalConfig.hh generated header to hold global, always required,
    pre-processor symbols instead of relying on -D flags for: G4USE_STD11,
    G4MULTITHREADED, G4_STORE_TRAJECTORY, G4VERBOSE and GEANT4_USE_TIMEMORY.
    Added inclusion of G4GlobalConfig.hh in G4Types.hh, tls.hh and
    G4TiMemory.hh so that global and other categories pick up the definitions
    transparently. Updated other headers/sources to include G4Types/G4Threading
    if they use G4MULTITHREADED.
 
- Updated date of release for 10.6.
 
Graphical Representations
- G4VisAttributes: added 'cloud' and methods to force, SetForceCloud(),
    and SetForceNumberOfCloudPoints().
 
- G4VisExtent: added method Transform(const G4Transform3D&).
 
- Added G4TessellatedSolid to list of solids that may be specially treated;
    solids that may access the graphics scene directly through G4VGraphicsScene.
 
- Removed Get/SetDrawOverlapsFlag() from G4VVisManager.
 
- HepPolyhedron: fixed defect reported by Coverity.
    Added move constructor and move assignment operator.
 
- BooleanProcessor::createPolyhedron(): Use return
    std::move().
 
Hadronic Processes
- Improved G4HadronicException: aligned behavior with std::exception:
    what() returns the exception explanation; moved the member definition
    to source file. Added some consts qualifiers.
 
- Cross sections
    
    - G4NeutronElasticXS, G4NeutronInelasticXS, G4NeutronCaptureXS: utilise
        the new Value() method from G4PhysicsVector that can make use
        of the already known value of the log-kinetic energy in the table of 
        cross-sections.
 
    - G4NeutronCaptureXS, G4NeutronElasticXS, G4NeutronInelasticXS
        G4ParticleInelasticXS: code clean-up, assuming usage of the new 
        data-set G4PARTICLEXSDATA-2.1; removed unused variables and methods;
        used only methods with logarithm of energy.
 
    - G4NeutronCaptureXS: restored computation of isotope cross-section as it
        was in release 10.5, responsible for degradation of observables on
        Tungsten. Upload data only for elements used in geometry.
        Code clean-up, use C++11.
 
    - G4ParticleInelasticXS: set verbosity to 0.
 
    - Corrections in G4MuNeutrinoNucleusTotXsc.cc: new name, default
        fCcTotRatio and high energy parameter 'bb'.
 
    - G4ComponentAntiNuclNuclearXS: code clean-up and corrected the
        description.
 
    - G4ComponentGGHadronNucleusXsc, G4ComponentGGNuclNuclXsc: removed
        remaining unused obsolete methods and members; use G4NuclearRadii
        utility to compute nuclear radius.
 
    - G4ComponentGGHadronNucleusXsc: fixed correction factor for kaons.
 
    - G4BGGPionElasticXS, G4BGGPionInelasticXS: fixed initialisation for
        pi+ and pi- by usage of separate vectors of correction factors; 
        fixed computation for Hydrogen target. Clean-up pi+ cross-section 
        below 20 MeV.
 
    - G4BGGPionInelasticXS: fixed low-energy parameterisation (restore
        one from Geant4 10.5, where low-energy limits were different for 
        pi+ and pi-).
 
    - G4BGGNucleonElasticXS, G4BGGNucleonInelasticXS: fixed computation
        for Hydrogen target. Fixed initialisation for protons and neutrons
        by usage of separate vectors of correction coefficients.
 
    - G4HadronNucleonXsc: added extra method for hyperon cross sections.
        Extended to charmed and bottom hadrons (mesons and baryons).
        Improved K+p parameterisations (NS and VG); removed obsolete methods.
 
    - G4ParticleInelasticXS, G4BGGPionElasticXS, G4BGGPionInelasticXS,
        G4BGGNucleonElasticXS, G4BGGNucleonInelasticXS,
        G4NucleonNuclearCrossSection, G4ComponentBarNucleonNucleusXsc,
        G4UPiNuclearCrossSection: shared internal data vectors between threads;
        initialise data once; removed unused parameters; code clean-up;
        use C++11 keywords.
 
    - G4VCrossSectionDataSet, G4CrossSectionDataStore,
        G4IonProtonCrossSection: use only methods with logarithm of energy.
 
    - G4HadronicException is replaced by G4Exception in all classes with
        exceptions.
 
    - G4ParticleInelasticXS, G4NeutronElasticXS, G4NeutronInelasticXS,
        G4NeutronCaptureXS: adopted the new G4PhysicsVector::LogVectorValue()
        optimised method for log-vectors.
 
    - G4BGGNucleonInelasticXS, G4BGGNucleonElasticXS: use coherent low-energy
        threshold of 14 MeV; code clean-up.
 
    - G4BGGPionInelasticXS, G4BGGPionElasticXS: use coherent low-energy limit
        of 1 MeV.
 
    - G4HadronNucleonXsc: fixed K+p and K+n parameterisations.
 
    - G4NeutronElasticXS: implemented isotope cross-section.
 
    - G4UPiNuclearCrossSection: optimised interpolation method; moved two
        run-time methods to inline; improved low-energy parameterisation.
        Below 20 MeV the cross-section is now constant, with BGGPion
        cross-section implementing the low-energy part. Code clean-up.
 
    - G4NeutronInelasticXS, G4ParticleInelasticXS, G4NeutronElasticXS: added 
        special method for tritium and He3 targets (addressing problem report
        #2162);
        upload data only for elements used in geometry. Code clean-up and use
        of C++11 features.
 
    - G4HadronNucleonXsc: new interface to G4ComponentGGHadronNucleonXsc
        including s-,c-,b-, particles. Set protection against division by zero
        by introducing a minimum energy cutoff (100 keV), below which the
        cross-section is considered constant.
 
    - G4BGGNucleonInelasticXS, G4BGGNucleonElasticXS, G4BGGPionInelasticXS,
        G4BGGPionElasticXS: clean-up low-energy behaviour.
 
    - G4NeutrinoElectronNcXsc, G4NeutrinoElectronTotXsc: high energy
        extension of neutrino-electron cross sections, for both 
        charged-current and neutral-current interactions (M_W and M_Z
        propagator factors and Glashow resonance), for all neutrino and
        anti-neutrino flavours.
 
    - G4MuNeutrinoNucleusTotXsc: high energy extension of cc/nc xsc (M_W and
        M_Z propagator factors) cc/tot ratio.
 
    - G4MuNeutrinoNucleusTotXsc: added new method
        GetElementCrossSection().
 
    - Removed using namespace std and using namespace CLHEP
        from G4NeutronElectronElXsc header.
 
    - Use std::getenv() for thread safety.
 
    
 
- Management
    
    - G4HadronicInelasticProcess: removed default GHEISHA cross-sections.
 
    - G4EnergyRangeManager: fixed bug regarding the kinetic energy per
        nucleon in the case of anti-nuclei (the bug was of little harm as one
        single model, FTFP, is used for all energies in the case of anti-nuclei
        projectiles). Streamlined algorithm in the case that only one model
        is registered for a process. Implemented C++11 patterns.
        Moved operators to be private, removed obsolete method, removed
        G4HadronicException; in case of problem return nullptr.
 
    - G4HadronicProcess: removed try/catch pattern from computation of mean
        free path; removed final-state random rotation. Do not use try/catch
        pattern to choose hadronic interaction; decreased limit on check of
        offshell mass from 1.5 MeV to 10 keV.
        Removed unused headers. Addressing problem report
        #2175.
        For particles out of mass shell, the kinetic energy is corrected in
        such a way that it is always above 10 keV. 
        Used std::getenv(), which is recommended for concurrency.
        In the method CheckResult(), a short-lived secondary particle
        is allowed to have a dynamic mass which differs from the PDG mass
        by less than three times the particle's width.
 
- Models Management:
    
    - G4HadronicInteractionRegistry: fixed typo in comments; removed unused 
        Boolean flag. Use of C++11 patterns.
 
    - G4HadronicInteraction: fixed definition of model per element and material.
        Use of C++11 patterns.
 
    - G4VHighEnergyGenerator: used inheritance from G4HadronicInteraction,
        which reduces memory leaks at exit.
 
    
 
    
 
- Processes
    
    - G4HadronElasticProcess: removed tracking cut for all particles (charged
        particles may be stopped by the tracking cut of ionisation process;
        neutrons should be stopped by G4NeutronKiller).
        Added protection for zero energy of the projectile particle. 
        Removed final-state rotation. Removed default GHEISHA cross-sections.
        Clean up the sampling of the final state; 
        improved description and comments; added C++11 keywords; 
        removed unused local members.
 
    - G4MuNeutrinoNucleusProcess: new process which handles the
        G4NuMuNucleusCc(Nc)Model models.
 
    - Created new inelastic processes for heavy hadron-nucleus interactions.
        Notes: there is no need to create similar processes for elastic heavy
        hadron-nucleus interactions; only hadrons (mesons and baryons) that can
        fly macroscopic distances are considered; for the time being, none
        of these processes is used in any physics list.
 
    
 
- Stopping
    
    - G4HadronicAbsorptionFritof: extended to neutral anti-hadrons
        (anti-neutron, anti-lambda, anti-sigma0 and anti-xi0). This extension
        is for completeness and practical convenience, although physically
        neutral hadrons should never be completely at rest.
 
    - G4HadronicAbsorptionFritofWithBinaryCascade: new class for handling
        anti-proton and anti-neutron annihilation at rest using Fritiof coupled
        with Binary cascade, instead of directly with pre-compound (as in the
        class G4HadronicAbsorptionFritiof).
 
    - Fixed Coverity defect in G4MuonMinusAtomicCapture.
 
    
 
- Utilities
    
    - G4HadProjectile: clean-up for small kinetic energy of the projectile.
 
    - G4HadFinalState, G4Bessel, G4ReactionProduct, G4GHEKinematicsVector:
        replaced fabs() with abs().
 
    - G4HadronicParameters: extended to the recommended (default) energy
        transition regions between FTF and cascade models (BERT and/or BIC)
        and between strings models (QGS and FTF).
 
- Models Utilities:
    
    - G4NuclearRadii: new utility class with several parameterisations of
        nuclear radius. Added extra utility methods.
 
    - G4GeneralPhaseSpaceDecay: corrected message when throwing an exception
        due to center-of-mass energy below threshold.
 
    
 
    
 
- Bertini Cascade
    
    - Fixed case for potential FPEs due to un-protected sqrt() in
        G4NucleiModel::boundaryTransition()
 
    - G4LightTargetCollider: fixed crash when the gamma energy is below
        the deuteron disintegration threshold and improved the 
        exception handling.
 
    
 
- Binary Cascade
    
    - G4GeneratorPrecompoundInterface: extended to include a simple
        coalescence model for nucleus-nucleus interactions in the interface
        between string and precompound models. This allows to improve the
        nucleon spectra and fast deuterons in ion-ion collisions.
 
    - G4GeneratorPrecompoundInterface: minor fix.
 
    
 
- De-excitation
    
    - G4VEmissionProbability: using simple rejection.
        Implemented option to force a residual nucleus to be among known
        discrete levels.
 
    - Replaced deprecated std::binary_function calls with lambdas in
        G4StatMFMicroCanonical and G4StatMFChannel. Addressing GitHub PR#8.
 
    - G4Evaporation, G4ExcitationHandler, G4LevelReader, G4GammaTransition,
        G4VEmissionProbability, G4PhotonEvaporation, G4PolarizationTransition:
        changed scheme of verbosity: 0- silence, 1- dump of parameters at
        initialisation, 2- debug printout, 3- very detailed debug printout.
        Addressing problem report
        #2098.
 
    - G4CoulombBarrier: use G4NuclearRadii utility to compute nuclear radius.
 
    - G4EvaporationChannel, G4EvaporationProbability, G4VEmissionProbability,
        G4FermiDecayProbability: simplified algorithm to sample kinetic energy
        of a fragment; minor code clean-up; removed commented lines.
 
    - G4EvaporationChannel, G4EvaporationProbability, G4VEmissionProbability,
        G4NeutronEvaporationProbability, G4VEvaporationChannel: preparation for
        development of the new GEM model; for evaporation, improved selection of
        final excitation level for residual fragments.
 
    - G4Evaporation: made coherent use of IsApplicable() from G4FermiBreakUp
        and forced simplified decay of exotic fragments with
        G4UnstableFragmentBreakUp.
 
    - G4FermiFragmentsPoolVI: implemented new method HasChannels().
        Removed unphysical fragments and corresponding data structures.
 
    - G4FermiBreakUpVI: used new method HasChannels() inside IsApplicable().
        Cleanup internal data after decay loop and not before.
        Use consistently verbosity from de-excitation module; simplified
        decay kinematics.
 
    - G4FermiFragment: fixed Coulomb barrier correction computation.
        Removed unused Boolean members.
 
    - G4UnstableFragmentBreakUp: changed logic, allowing decay of an exotic
        fragment (i.e. a fragment unknown in gamma-level database) and never
        release it. Allowed only residual fragments, which are present in the
        nuclear level database; those fragments which are not in the database
        are forced to decay to fragments from the database. 
        Improved debug printout.
 
    - G4VEmissionProbability, G4Evaporation, G4UnstableFragmentBreakUp:
        consistently use decay channels in all components of the de-excitation
        module.
 
    - G4LevelReader: small reduction of memory churn at initialisation.
 
    - G4NuclearLevelData, G4LevelManager, G4GEMChannel, G4GEMProbability,
        G4GEMProbabilityVI, G4EvaporationChannel, G4EvaporationProbability:
        use consistently pairing correction from G4NuclearLevelData and
        verbosity level for debugging.
 
    - G4GEMChannelVI, G4GEMProbabilityVI: new GEM model.
 
    - G4ExcitationHandler: added check on upper limit of excitations; fixed
        initialisation sequence, reduced memory churn. Removed second photon
        evaporation loop, as all gamma decays are already happening in the
        first loop. Use more C++11 constructs. Added a limit on the number of
        warnings on high excitation energy of the input fragment. Fixed problem
        seen in medical test of fragmentation; provided full de-excitation of
        excited light fragments.
 
    - G4DeexPrecoParameters: added upper limit of 30 MeV on the
        excitation per nucleon. Added two new parameters.
 
    - G4DeexParametersMessenger: added UI command.
 
    - G4FermiFragmentsPoolVI, G4NuclearLevelData: reduced number of locks at
        initialisation.
 
    - Modified internal interfaces to reuse some code for evaporation in the
        new GEM evaporation model; used more C++11 patterns.
 
    - G4ExcitationHandler: removed warning on high excitation energy.
 
    - G4ExcitationHandler, G4Evaporation: minor speedup improvement.
 
    - G4NuclearLevelData: added new public interface to enable upload of
        nuclear level data before the first event.
 
    - G4PhotonEvaporation: access G4NuclearPolarizationStore only if
        correlated gamma decay is enabled. Fixed gamma de-excitation when
        initial excitation energy is between ground state and 1st level.
 
    - G4CompetitiveFission, G4FissionBarrier, G4FissionParameters: added
        numerical protections; clean-up C++11 keywords; moved headers to
        source code.
 
    - Code clean-up and fixed Coverity defects.
 
    
 
- Elastic scattering
    
    - G4HadronElastic: removed tracking cut and use numerically safer
        computation for very low-energy projectile. Improved description
        and comments; added C++11 keywords.
        Make resampling of scattering angle using algorithm from this class
        in the case that abs(cos(theta)) > 1 m.
        Added protected variable pLocalTmax; added protection for
        projectile of zero kinetic energy. Added new parameterisations for
        protons and pions. Added a new method for s-,c-,b- particles.
 
    - G4ChargeExchange: updated interfaces; added protection for projectile
        of zero kinetic energy.
 
    - G4AntiNuclElastic: do not compute trigonometric functions, which are
        not used.
 
    - G4ElasticHadrNucleusHE, G4LEpp, G4LEnp: code clean-up.
 
    - G4ElasticHadrNucleusHE: reduced size of data structure and time for
        initialisation by about a factor of 2; general code clean-up; 
        added further protections. Made all data shared between threads.
        General code clean-up.
 
    - Removed "using namespace std" and "using namespace CLHEP" from
        G4NeutronElectronElModel header.
 
    - G4HadronElastic: changed warning printout for resampling, by
        protecting it by G4VERBOSE. Added limit on number of warning printouts.
        Addressing problem report
        #2204.
 
    
 
- Lend
    
    - G4LENDCapture::ApplyYourself(): fixed memory leak reported
        by Coverity.
 
    - Fixed compilation warnings on gcc-9.1 for missing assignment operator.
 
    
 
- Lepto-nuclear
    
    - Neutrino-nucleus models and precalculated distribuitons as from
        new data-set G4PARTICLEXS-2.0.
    
 - Fixed bug in G4NuMuNucelusCc(Nc)Model for kinematics of quasi-elastic
        neutrino scattering. Fix for m->e in nucleon 4-vectors,
        when nucleon move, iTeMax->100.
        Fixed cases of arrays out of boundaries for indices of x-.
 
    - G4NuMuNucleusCcModel: 1p1h momentum sampling according to AS model;
        added precompound interface. Implemented off-shell kinematics;
        fixes in ApplyYourself(), SampleLVkr() and CoherenPion(); new method
        RecoilDeexcitation() to de-excite recoiled nucleus.
 
    - G4NeutrinoNucleusModel: added two methods for excitation energy and
        nucleon momentum sampling.
 
    - G4NuMuNucleusCcModel, G4NuMuNucleusNcModel, G4NeutrinoNucleusModel,
        G4NeutrinoElectronCcModel: implemented s-channel in nu-e-cc model.
 
    - Removed using namespace std and using namespace CLHEP
        statements from headers.
 
    - Fixes for Coverity warnings and clean-up.
 
    
 
- Particle High Precision
    
    - Fix to deal with incorrect excitation energy when charged particles are
        emitted during a neutron reaction. In G4ParticleHPInelasticCompFS,
        changed method CompositeApply(), for very small excitation energies,
        changed level index from -1 to 0 only if incident and outgoing particles
        are the same. Addressing problem report
        #1838.
 
    - Fix to deal with un-incremented index of photons in
        G4ParticleHPPhotonDist::GetPhotons().
        Also cleaned up dead code in that class. Addressing problem report
        #2167.
 
    - G4ParticleHPChannelList: fixed bug in the momentum change (it has to
        be a normalized 3-vector, but it was not) in the case where NeutronHP
        could not find a proper reaction channel.
 
    - G4ParticleHPInelasticCompFS: fix to avoid arbitrary number of target
        nuclei being generated and slowing down multi-threaded operation.
        Addressing problem report
        #2166.
 
    - G4ParticleHPChannel, G4ParticleHPNames: allowed using of an incomplete
        data library name if the environment variable G4NEUTRONHP_SKIP_MISSING_ISOTOPES
        is set. The missing cross-sections are then set to 0.
 
    - G4ParticleHPContAngularPar: redefined residual mass to consider
        incident particles other than neutrons.
 
    - G4ParticleHPInelasticBaseFS: added protection against residual with
        Z<0 or A<Z, do not apply adjust_final_state when data is in
        MF=6 format (no correlated particle emission).
 
    - Correction to add Q value info to G4ParticleHPNBodyPhaseSpace.
 
    - G4ParticleHPInelasticCompFS: re-build method two_body_reaction() to be
        used by incident charged particles (now isotropic emission in the CMS).
        Also restrict 'nresp' use below 20 MeV. Added photon emission
        when no data are available.
 
    - G4ParticleHPEnAngCorrelation: deleted part of code trying to preserve
        baryon number; one has to assume that it is not preserved when using
        ENDF-6 data.
 
    - Fixes for crashes detected only when using QGSP_BIC_AllHP physics-list:
        in method Sample() of G4ParticleHPContAngularPar, set
        protection against unphysical interpolation result; in
        G4ParticleHPKallbachMannSyst, added in A() the possibility of
        tritium and He3 projectiles, taking in this case (arbitrarily) an
        intermediate value between the two already considered cases,
        proton-neutron-deuteron and alpha.
 
    - Fixes in G4ParticleHPKallbachMannSyst.
 
    - G4ParticleHPInelasticBaseFS: re-calculate Q value in
        BaseApply() in case of no data in library.
 
    - Added protection against maxE<0 in
        G4ParticleHPNBodyPhaseSpace::Sample().
 
    - G4ParticleHPNames: removed restriction of using isotopes with Z>92,
        therefore removing the environmental variable
        AllowForHeavyElements.
 
    
 
- Parton-String
    
    - Extended both Lund and QGS string fragmentation to allow the
        possibility to have charm and/or bottom quarks and diquarks in the
        strings. As a result of the hadronization of strings having heavy
        (c, b) quarks, charmed and bottom hadrons can be produced: only heavy
        mesons and baryons that can fly macroscopic distances are considered
        as candidate final states.
        Note: this extension has required also to extend the list of diquarks
        available in Geant4, to add those made with charm and bottom quarks.
 
    - G4FTFParameters: extended FTF configuration interface to include
        parameters for pion projectile.
        Diffraction minimal mass is now correctly set in GeV (instead of MeV),
        for hadron projectiles different from pions, kaons, nucleons and
        anti-nucleons, in the method InitForInteraction().
        In GetMinMass(), fixed a bug in the computation of the quark
        type (which affects the estimated minimal string mass produced in
        diffraction); added also protections to make sure that the quark type
        is always one of the five considered (u, d, s, c, b).
        Absolute (rather than signed) charge for antibaryon is now correctly
        taken in the method InitForInteraction().
        Fixed creation/destruction/use of Glauber-Gribov cross-section and
        fixed a memory leak. Added protection for possible division by zero
        due to zero elastic cross-section.
        Replaced Chips hadron-nucleon (total and elastic) cross-sections with
        the Barashenkov-Glauber-Gribov (BGG) cross-sections for ordinary (i.e.
        non-heavy) hadrons (for heavy hadrons, only BGG cross-section are
        available and used).
        Set parameters of a string kink in the constructor (instead of setting
        it at each interaction, causing memory leaks). Notice that string kinks
        are currently switched off, so this fix does not affect any physics
        result.
 
    - G4FTFModel: minor improvement in the annihilation at rest of light
        anti-ions, to avoid the possibility of unphysical production of
        target and projectile fragments at rest. 
        Improvement of the algorithm for string creation.
 
    - Improvements to FTF model for nucleus-nucleus interactions (with
        negligible effects for hadron-nucleus).
 
    - G4DiffractiveExcitation: extended range of excited hadron masses,
        starting from ground-state values (before, these were starting 
        from current hadron masses).
 
    - G4ElasticHNScattering: improvement and simplification of the algorithm
        of elastic scattering (before the masses of resonances were sampled,
        now this is no longer needed). Added a few protections to avoid
        rare cases of floating point exceptions.
 
    - Correction in the Lund string fragmentation regarding the search for
        final-state in the last string decay. Some code cleanup.
 
    - Switch off the probability of charm and bottom hadron production in
        both Lund and QGS string fragmentations (temporary protection, to be
        removed after release 10.6).
 
    - Implemented fragmentation functions of heavy (charm and bottom) quarks
        and diquarks for the QGS string fragmentation, based on a review of
        the available theoretical papers.
 
    - G4LundStringFragmentation, G4QGSMFragmentation: in SplitEandP(),
        added a check that the string can be converted to an existing hadron
        (else a null momentum is returned).
 
    - The same set of mixing meson parameters (for both scalar and vector
        mesons), as defined in the base class G4VLongitudinalStringDecay, are
        now used on both FTF and QGS.
 
    - G4VLongitudinalStringDecay: added forgotten initialization of c-cbar
        and b-bbar pair production for kinks or gluons.
 
    - G4ExcitedStringDecay: added protection in the sampling of resonance
        masses against values below threshold.
 
    - G4VPartonStringModel: re-sample the string formation in the case that
        the (either target or projectile) nuclear residual is an unphysical
        combination of nucleons (i.e. more than three protons with no neutron,
        or more than one neutron with no proton).
 
    - G4Reggeons: added extension for charmed and bottom hadrons following
        the ideas introduced to deal with Glauber-Gribov heavy hadron - nucleon
        cross-sections.
 
    - Deleted unused classes G4VAnnihilationCrossSection, G4QGSMParameters,
        G4AnnihilationCrossSection, G4GammaAnnCrossSection, G4ASCCrossSection,
        G4DiffractiveHHScatterer, G4VKinkyStringDecay, G4EventGenerator,
        G4InteractionCode and G4VertexCode.
 
    - Fixed Coverity defects.
 
    
 
- Pre-equilibrium
    
    - Added new model based on pre-compound de-excitation
        G4LowEGammaNuclearModel.
 
    - G4PreCompoundEmission, G4PreCompoundFragment, G4VPreCompoundFragment:
        setup minimum number of points for probability integration to 4;
        minor code clean-up.
 
    - G4PreCompoundModel: added check on excitation energy per nucleon
        for the initial fragment (30 MeV) and send highly excited
        fragment to the de-excitation module. Code clean-up.
 
    
 
- Radioactive Decay
    
    - Added spontaneous fission channel: added new class G4SFDecay to handle
        neutron and gamma generation using LLNL model. Read spontaneous fission
        data from database, insert it into decay tables and instantiate
        G4SFDecay.
 
    - Fixed incorrect branching ratio sum for biased mode, to account for the
        addition of N shell EC capture and spontaneous fission.
 
    - G4RadioactiveDecayBase: added StreamInfo() method; updated to new
        N shell EC; enable printout of parameters with G4VERBOSE in
        BuildPhysicsTable().
 
    - G4RadioactivationMessenger: removed obsolete "fast beta" option,
        internal conversion option (not part of biasing) and atomic relaxation
        option (not part of biasing). Added analogueMC option which was
        forgotten when class was developed.
 
    - G4RadioactiveDecayBaseMessenger: removed obsolete fast beta
        option.
 
    - Replaced G4ExceptionDescription in loop with simple string at
        exception time inG4RadioactiveDecay, G4RadioactiveDecayBase and
        G4Radioactivation.
 
    - In G4RadioactiveDecay::CalculateChainsFromParent() and
        G4Radioactivation::CalculateChainsFromParent(), fixed memory
        leak reported by Coverity.
 
    - G4RadioactiveDecay, G4RadioactiveDecayBase: make sure decay table maps
        are cleanly deleted at the end of program. Added passing of type of
        sub-models to secondary particles generated.
 
    - G4RadioactiveDecayBase: in LoadDecayTable() added correction
        for code which was accidentally deleted when class was created from
        G4RadioactiveDecay. Now giving correct decay branching ratios.
        Split off unbiased decay part of DecayIt() and make it protected method
        called DecayAnalog(). Move dkmap to protected.
 
    - G4Radioactivation: corrected bug in which AtRestDoIt() and
        PostStepDoIt() both incorrectly were calling base class method
        DecayIt().
        Removed control of verbosity as already in the base class.
        Removed G4cerr printouts from G4Radioactivation and
        G4RadioactiveDecayBase; replaced with G4cout.
 
    - Added radioactive decay mode with emission of Triton, in
        G4RadioctiveDecay, G4RadioctiveDecayBase, and G4Radioactivation.
 
    
 
Intercoms
- The following UI commands now return proper return code when they are
    not successful:
    /control/execute, loop, foreach, shell, getEnv.
    Addressing problem report
    #2159. 
- Eliminated global-scope enum in G4UItokenNum.
 
- Fixed cases of implicit type conversions from size_t to G4int.
 
Interfaces
- Fixed square backets around optional parameters. Addressing problem report
    #2132.
 
- Declared Win32 a GUI, i.e., it's clickable and can have buttons.
 
- Fixed deprecation compilation warning on Visual Studio 2019 in G4UIWin32.
 
- Fixed compilation warnings for use of deprecated features reported when
    using Qt versions greater than 5.13.
 
- Only use imported targets for X11, Xm and Wt.
 
- Removed inclusion of QT_USE_FILE from CMake scripts. All usage is now
    through the qtX_ macros and imported targets.
 
- Added TiMemory support; G4UIExective will grab argc, argv
    and customize the output directory for TiMemory.
 
Materials
- G4DensityEffectCalculator: new class, proposing alternative computation
    of the density effect. Added possibility to enable on-the-fly computation of
    the density effect correction using "exact" formulas (added
    ComputeDensityEffectOnFly() method); as default the old approach
    is used. Added to G4IonisParamMat logic for selection of density effect
    parameterisation; if > 70% of mass of a compound corresponds to a
    particular element, then density effect parameterisation for this element
    is used with mass correction. Addressing problem report
    #2121.
 
- G4Material: added free electron density; use G4NistManager to instantiate
    element in constructor with effective Z and A. Reordered class members.
 
- G4SandiaTable, G4IonisParamMat: use const material pointer.
 
- G4AtomicShells, G4AtomicShells_XDB_EADL: added new method 
    GetNumberOfFreeElectrons().
 
- G4NistManager: fixed potential thread safety issue.
 
- G4IonisParamMat: set mass limit of a single element to 90%.
 
- G4IonStoppingData: fixed typo in ICRU90 material names.
 
- G4UCNMicroRoughnessHelper: corrected out-of-date URL for thesis and
    paper reference.
 
- Fixed cases of implicit type conversions from size_t to G4int.
 
Parameterisations
- GFLASH:
    
    - Added possibility to use sensitive detector from parallel world.
 
    
 
Particles
- G4DynamicParticle: added functionality to provide log-kinetic energy
    value, computed only on demand if its stored value is not up-to-date
    with the kinetic energy.
    Changed SetMass() method, now inlined and allowing setting mass of a
    particle to PDG value, which is needed in order to recover secondary
    hadrons to the mass shell.
    Code cleanup: moved data members to be private; aligned class members
    3-vectors, doubles, integer; added method SetPolarisation();
    removed unused forward declarations and headers; keep formatting
    of the class in one style, removed extra empty lines.
 
- G4ShortLivedConstructor: extended method ConstructQuarks() to
    include diquarks made of charm and/or bottom quarks. The new, heavy diquarks
    and anti-diquarks have been defined with basic, rough properties (just
    those currently needed by the hadronic string models): future refinements
    are expected.
 
- G4NucleiProperties: added a simplified parameterisation variant with not too
    high mass values, to allow decaying fragments produced by some hadronic models
    and consisting of only neutrons or protons; also light ion masses computation
    is more thread safe after change of the order of mass computation.
 
Persistency
- ASCII:
    
    - Fixed printout syntax in G4tgrUtils::GetDouble().
 
    
 
- GDML:
    
    - Added support for writing out assemblies envelopes.
 
    - Improved reading of optical properties reader, by allowing reuse of
        the same G4MaterialPropertyVector object for identical properties.
 
    - G4GDMLMessenger: fix to avoid UI commands from being broadcasted to
        worker threads.
 
    - G4GDMLRead: fix to avoid double-definition of system units.
 
    
 
Physics lists
- Builders:
    
    - Replaced explicit values for the energy transition region with values
        from G4HadronicParameters, for nearly all builders.
        Note: kept unchanged the transition region between FTFP and BERT only
        in four cases: G4HadronPhysicsFTFP_BERT_ATL, G4HadronPhysicsINCLXX,
        G4HadronPhysicsNuBeam and "ShieldingM".
 
    - Modified G4NeutronCrossSectionXS as consequence of code cleanup in
        lists and removal of G4Dataquestionaire.
 
    - G4HyperonFTFPBuilder: replaced Chips inelastic cross-sections for
        hyperons and anti-hyperons with Glauber-Gribov ones; in this way,
        elastic and inelastic cross-sections follow consistently the same
        approach.
 
    - G4BertiniKaonBuilder, G4BertiniPiKBuilder: replaced Chips inelastic
        cross-sections with Glauber-Gribov ones as default kaon cross-sections.
 
    - G4FTFBinaryKaonBuilder, G4QGSBinaryKaonBuilder, G4QGSBinaryPiKBuilder,
        G4QGSPPiKBuilder, G4QGSPKaonBuilder: removed kaon cross-sections,
        already set by the Bertini's builder, which is always needed.
 
    
 
- Constructors:
    
    - decay
        
        - G4RadioactiveDecayPhysics: replaced G4RadioactiveDecay with
            G4RadioactiveDecayBase. This removes the biasing functionality which
            is generally not used in the physics lists.
 
        
 
    - electromagnetic:
        
        - Added handling of UI thermalization model control in
            G4EmDNAPhysics_option1,2,3,4,5,6,7,8.
 
        - G4EmDNAChemistry constructors: updated to follow emdna changes.
 
        - Added sub-excitation processes in G4EmDNAPhysics_option8.
 
        - G4EmLivermorePhysics, G4EmPenelopePhysics,
            G4EmStandardPhysics_option4, G4EmStandardPhysics_option3: define
            upper energy limit for nuclear stopping via EM parameters.
            In all DNA constructors, added ActivateDNA() flag to EM
            parameters.
 
        - G4EmLivermorePhysics, G4EmLowEPPhysics, G4EmStandardPhysics_option4:
            use SetEmModel() instead of AddEmModel() for
            gamma conversion.
            Updated settings of the gamma conversion process to provide the
            original model combinations when the low energy G4BetheHeitlerModel
            model was replaced by the G4BetheHeitler5DModel.
 
        - G4GammaGeneralProcess: fixed "Base Material" use case.
            Use the new, optimised log-vector access method.
 
        - G4EmStandardPhysics_option2, G4EmStandardPhysics_option3:
            implemented "General Process" option for gamma.
 
        - G4EmStandardPhysics_option4: use 5D model for gamma conversion.
 
        - G4EmStandardPhysicsSS: in the case if Mott correction flag is TRUE,
            apply G4eSingleCoulombScatteringModel both for e+ and e-.
 
        - Added G4EmDNAChemistry_option2 constructor. Added new ELSEPA
            elastic model for Geant4-DNA in G4EmDNAPhysics_option2.
 
        - G4OpticalPhysics: set boundary process to last.
            Addressing problem report
            #2113.
 
        
 
    - gamma_lepto_nuclear:
        
        - G4EmExtraPhysics: changed transition region from the cascade to
            string model 3 - 6 GeV, according to values in
            G4HadronicParameters class (before the transition was
            3 - 3.5 GeV); added muon-neutrino nucleus interactions;
            simplified and clean-up model creation; reduced memory leak at
            destruction; removed extra static members and do not use extra
            builder classes; use std::getenv().
 
        - G4BertiniElectroNuclearBuilder: use std::getenv() for
            thread safety.
 
        
 
    - hadron_elastic:
        
        - G4HadronElasticPhysics: use HE elastic model for the full energy
            range; use Glauber-Gribov cross-section for hyperons.
 
        - G4HadronHElasticPhysics: use Glauber-Gribov elastic cross-section
            for anti-hyperons (instead of Chips).
 
        - G4HadronDElasticPhysics: use Glauber-Gribov cross-section for 
            hyperons, d, t, He3, and He4.
 
        - G4HadronElasticPhysicsXS, G4IonElasticPhysics: removed commented
            code.
 
        
 
    - hadron_inelastic:
        
        - Changed the energy transition region between hadronic string and
            intranuclear cascade models to 3 - 6 GeV (it was
            3 - 12 GeV for pions, kaons and nucleons; it was
            2 - 6 GeV for hyperons; left unchanged for anti-baryons
            where FTFP is used for all energies), replacing explicit values
            with those from G4HadronicParameters, in nearly all constructors.
            Note: kept unchanged the transition region between FTFP and BERT
            only in four cases: G4HadronPhysicsFTFP_BERT_ATL,
            G4HadronPhysicsINCLXX, G4HadronPhysicsNuBeam and "ShieldingM".)
 
        - G4HadronInelasticQBBC: use XS proton inelastic.
 
        - G4HadronPhysicsFTFP_BERT_TRV: removed special treatment of hadronic
            inelastic cross-sections of hyperons and anti-hyperons; now it is
            the default in G4HyperonFTFPBuilder.
 
        - G4HadronInelasticFTFQGSP_BERT, G4HadronInelasticQBBC: use
            Glauber-Gribov inelastic cross-sections instead of Chips ones,
            for hyperons and anti-hyperons.
 
        - G4HadronPhysicsFTF_BIC, G4HadronPhysicsFTFP_BERT_HP,
            G4HadronPhysicsFTFP_BERT_TRV, G4HadronPhysicsFTFQGSP_BERT,
            G4HadronPhysicsQGS_BIC, G4HadronPhysicsQGSP_BERT,
            G4HadronPhysicsQGSP_BERT_HP, G4HadronPhysicsQGSP_BIC, 
            G4HadronPhysicsQGSP_BIC_HP, G4HadronPhysicsQGSP_BIC_AllHP,
            G4HadronInelasticQBBC, G4HadronPhysicsINCLXX: removed special
            treatment of hadronic inelastic cross-sections of kaons (now
            default).
 
        
 
    - ions:
        
        - G4IonPhysics, G4IonPhysicsPHP, G4IonQMDPhysics: 
            changed the transition energy region between FTFP and BIC to
            3 - 6 GeV (it was 2 - 4 GeV), replacing explicit
            values with those from G4HadronicParameters.
 
        
 
    - limiters:
        
        - Fixed cases of implicit type conversions from size_t to G4int.
 
        
 
    - stopping:
        
        - Use FTFP also for the annihilation at rest of neutral anti-hadrons:
            anti-neutron, anti-lambda, anti-sigma0 and anti-xi0. This extension is
            is for completeness and practical convenience, although physically
            neutral hadrons should never be completely at rest.
 
        - G4StoppingPhysicsFritiofWithBinaryCascade: new class to handle the
            nuclear capture at rest of negatively charged particles.
            It is similar to G4StoppingPhysics, with the only difference that
            Fritiof coupled with Binary Cascade is used instead of FTFP, for
            anti-proton and anti-neutron annihilation at rest.
 
        
 
    
 
- Lists:
    
    - Replaced G4RadioactiveDecay with G4RadioactiveDecayBase in LBE list.
 
    - FTF_BIC, QGS_BIC: use the newly introduced stopping physics constructor
        G4StoppingPhysicsFritiofWithBinaryCascade (instead of the default
        G4StoppingPhysics).
 
    - Shielding: replacing explicit values for the energy transition region
        with values from G4HadronicParameters.
 
    - Code clean-up: removed template mechanism (except for
        G4GenericPhysicsList, G4PhysListStamper and INCLXXPhysicsListHelper);
        deleted copy-constructor and assignment operator; for empty destructors,
        use =default; moved include/x.icc to src/x.cc for lists without
        template; removed SetCuts() implementation where not
        specialised; removed version number from lists; removed
        G4DataQuestionaire.
 
    - FTFP_BERT_HP, QGSP_BERT_HP, INCLXXPhysicsListHelper: consistently added
        RadioactiveDecay to all physics lists which use NeutronHP; the rationale
        is that precision is more valuable than speed for these physics lists.
        Note: the other physics lists which use NeutronHP - such as Shielding,
        QGSP_BIC_HP, QGSP_BIC_AllHP, and LBE - had already RadioactiveDecay
        activated.
 
    
 
- Util:
    
    - Removed G4DataQuestionaire class.
 
    
 
Run
- Introduced use of G4ScoringRealWorld to allow to define command-based
    scorers to a logical volume in the mass world.
 
- G4RunManager, G4RunManagerKernel: addressing cases in which the GDML parser
    directly replaces the world volume without changing the user detector
    construction.
 
- Properly initialise luxury level for Ranlux* engines in MT mode.
    Addressing problem report
    #2184.
 
- G4RunMessenger: properly enable /run/storeRndmStatToEvent 3
    UI command. Addressing problem report
    #2198.
 
- Made G4PhysicsListHelper a thread local singleton. Fixed typo.
 
- Fixed cases of implicit type conversions from size_t to G4int.
 
- Updated scripts for TiMemory. Removed InitializeTiMemory() from
    G4RunManager.
 
Track & Tracking
- G4Track: added forward declaration for G4VProcess.
 
- Fixed implicit type conversions from size_t to G4int.
 
Visualization
Fixed compilation warnings on gcc-9.1.0.
- Management
    
    - Introducing cloud drawing style. New parameter candidate 'cloud' in
        /vis/viewer/set/style.
        Cloud drawing uses solid->GetPointOnSurface(),
        i.e., uses kernel algorithms and by-passes polyhedral representations.
        The solid is represented by a polymarker of dots. The default number of
        points is 1000. This can be changed with the command
        /vis/viewer/set/numberOfCloudPoints; the minimum number is 100.
        Note that OpenGL has a fast algorithm for polymarker.
        This allows us to use cloud style both as a choice or as fallback when
        the polyhedral representation fails, for example, when BooleanProcessor
        fails.
 
    - New and improved commands:
        /vis/viewer/centreOn: improved - it does not zoom.
        /vis/viewer/centreAndZoomInOn: new.
        /vis/touchable/centreOn: improved - it does not zoom.
        /vis/touchable/centreAndZoomInOn: new.
        /vis/touchable/extentForField and volumeForField: new.
        /vis/scene/showExtents: new.
        /vis/set/volumeForField: new.
        /vis/touchable/showExtent: new. 
    - Reworked /vis/scene/add/eventID command: just writes a summary
        at end of run; except when reviewing, kept events one by one, in which
        case it writes run and event no for each event.
 
    - Ensure /vis/drawTree works even if vis is disabled.
 
    - Added copy number parameter to /vis/touchable/findPath.
 
    - Implemented /vis/set/extentForField command: the default is a
        null extent, which is to be interpreted by the field model as the whole
        extent of the current scene. Otherwise, with this command, one can
        limit the extent over which the field is drawn. This would help, for
        example, if drawing over the whole scene produced so many arrows or
        lines that it clutters the scene. Changed the default spacing:
        the parameter nDataPointsPerHalfExtent is changed from 10 to 3,
        so as not to clutter the scene. See guidance of
        /vis/scene/add/*Field commands for further explanation.
 
    - Provide ability to draw electric fields, and eventually any other
        field. Added /vis/scene/add/electricField by analogy to existing
        .../magneticField.
 
    - Refactor MagneticFieldModel class with new base to handle all kinds of
        vector fields; existing, and new ElectricFieldModel only have to
        implement a simple function to get the field vector at a location.
 
    - Include parameterised volumes in overlap checking and visualisation
        in G4LogicalVolumeModel (in addition to ordinary placements).
 
    - Add G4TessellatedSolid to list of solids that may be specially treated.
 
    - Introduced /vis/viewer/centreOn and
        /vis/touchable/centreOn UI commands.
        This allows one to centre the view (zoom in) on a volume.
        Reset with /vis/viewer/reset.
 
    - Rationalised view interpolation; encapsulate algorithm into base class
        G4VVisCommand, so that commands /vis/viewer/interpolate,
        /vis/viewer/centreOn and /vis/touchable/centerOn
        now use this.
        Might consider use by all view changing commands.
 
    - Clear if scene contains no run duration models (e.g., after geometry
        has changed).
 
    - Augment G4VUserVisAction.
 
    - G4VSceneHandler: added namespace scope to MeshScoreMap.
 
    - Fixed bug in /vis/viewer/set/sectionPlane.
 
    - Corrected few typos in printout/comments.
 
    - Improved guidance for /vis/scene/add/volume.
 
    - Minor improvements to visualization manager.
 
    - Fixed Boolean operators to return G4bool.
 
    - Several small improvements and fixes.
 
    - Replaced use of std::experimental::filesystem with
        std::filesystem for
        WIN32 target in G4VisCommandsViewer. Forcing C++17 default builds on
        Windows and allow for porting on Visual Studio 2019.
 
    - Fixed Coverity defects.
 
    
 
- Modeling:
    
    - Introduced G4BoundingExtentScene. This allows one to accumulate extents
        using the newly introduced G4VisExtent::Transform() and is a
        better way of determining the overall extent of a scene (or of any set
        of extents) than by the bounding sphere approach.
 
    - G4VFieldModel, G4ElectricFieldModel, G4MagneticFieldModel: new
        abstraction for field models.
 
    - Arrows and field models: introduced further protection.
 
    - G4VModel: introduced GetTransformedExtent() method.
 
    - G4PhysicalVolumeModel: use G4BoundingExtentScene instead of
        G4BoundingSphereScene. Fixed bug whereby the local extent was
        incorrectly calculated.
 
    - G4CallbackModel: include modeling parameters in passed arguments.
 
    - Fixed bug in /vis/viewer/set/sectionPlane.
 
    - Fixed setLineVisible() in /vis/modeling.
 
    - Added volume count (but commented out printing).
 
    - Fixed cases of implicit type conversions from size_t to G4int.
 
    
 
- OpenGL
    
    - Improved X window opening.
 
    - Removed default font size.
 
    - Force double buffer context for OGLIX.
 
    - Force kernel visit on change of number of cloud points.
 
    - Avoid re-using display lists for markers. They may have their own
        position relative to the overall object transformation.
 
    - Extended glFlush scaling to all circumstances.
 
    - Refine DisplayListLimit command guidance and output.
 
    - Rationalise headers inclusion in G4OpenGLQtViewer.
 
    - Fixed compilation warnings for use of deprecated features reported when
        using Qt versions greater than 5.13.
 
    - Only link to imported targets for Motif and X11
        Removed inclusion of QT_USE_FILE from CMake scripts.
        All usage is now through the qtX_ macros and imported targets.
 
    
 
- OpenInventor
    
    - Test number of cloud points for kernel visit.
 
    - Added missing protection on G4VIS_BUILD_OIX_DRIVER.
 
    - Fixed compilation warning from gcc-9.1 in SoCounterAction for setting
        of name, apparently not allowed in OpenInventor.
 
    - Corrected few typos in printout/comments.
 
    - Removed inclusion of QT_USE_FILE from CMake scripts.
        All usage is now through the qtX_ macros and imported targets.
 
    
 
- Raytracer
    
    - Fixed cases of implicit type conversions from size_t to G4int.
 
    - Link to X11 imported targets when building X11 driver.
 
    
 
- Tree
    
    - Fixed typo in output message.
 
    
 
- XXX
    
    - Force kernel visit on change of number of cloud points.
 
    
 
- Externals
    
    - Updated gl2ps sub-module to version 1.4.0.
 
    - Only link to imported targets for OpenGL; explicitly link to global
        modules to use/propagate usage requirements.
 
    
 
Environments
- G4Py:
    
    - Updated interfaces for release 10.6.
 
    - g4pym boost_python library name can be specified in cmake.
        Addressing problem report
        #2059.
 
    
 
Data sets
- New low-energy data set version, G4EMLOW-7.9:
    
    - Added ELSEPA elastic model for Geant4-DNA.
 
    
 
- New data set version G4PhotonEvaporation-5.5 for nuclear de-excitation
    data:
    
    - Fixed z85.a217 file (217At).
 
    
 
- New data set version for radioactive-decay processes,
    G4RadioactiveDecay-5.4:
    
    - Updated z2.a8, z3.a8, and z4.a8 and add z4.a9 for 9Li and 8He decays.
  
    - Corrected capture data for I-1125.
 
    - Updated Er-169(z68.a169) according to DDEP.
 
    - Added firstForbidden flags to Tb-161 (z65.a161).
 
    - Added M-shell and N-shell capture to Sc-44 (z21.a44).
 
    
 
- New data files for evaluated cross-sections G4PARTICLEXS-2.1:
    
    - Added data for neutrino.
 
    - Updated cross-sections for low Z targets at low energy.
 
    - Regenerated n, p, d, t, He3, He4, gamma data, providing smoother
        cross-section shape.
 
    
 
- New data set version for high-precision neutrons, G4NDL-4.6:
    
    - New neutron cross-sections and final states obtained from JEFF-3.3
        (previous were based mainly on ENDF/B-VII.1). Files not coming from
        JEFF-3.3 and corresponding to previous G4NDL version are: JENDL_HE,
        IsotopeProduction, ThermalScattering, Inelastic/Gammas, Fission/FF.
        Information concerning the conversion process of JEFF-3.3 to the
        G4NDL format can be found in: E.Mendoza and D.Cano-Ott, IAEA technical
        report INDC(NDS)-0758, Vienna, 2018.
 
    
 
Examples
- Updated reference outputs, macros, READMEs and scripts.
 
- Fixes for Doxygen documentation and coding guidelines.
 
- Removed presence of G4VIS_USE and G4_UI_USE flags.
 
- Avoid "using namespace std" in headers.
 
- advanced
    
    - air_shower
        
 
    - brachytherapy
        
        - Added G4VScoringMesh:: scope identifier to BrachyUserScoreWriter.
 
        
 
    - composite_calorimeter
        
        - Fixed cases of type conversions from size_t to G4int.
 
        - Some code cleanup.
 
        
 
    - gammaknife
        
        - Added G4VScoringMesh:: scope identifier to GammaKnifeController.
 
        
 
    - hadrontherapy
        
        - Make use of endl consistent with g4cout or std::cout.
 
        
 
    - human_phantom
        
        - Fix in geometry of the MIRD phantom.
 
        
 
    - nanobeam
        
        - Include G4Types.hh header in main(), before use of
            G4MULTITHREADED.
 
        
 
    - STCyclotron
        
        - New example modelling a solid target of a cyclotron to study the
            production of the radioisotope of interest for proton irradiation.
 
        
 
    - underground_physics
        
        - DMXPhysicsList: added Glauber-Gribov cross-section for all elastic 
            processes. Clean-up both EM, hadronic and radioactive decay.
 
        
 
    
 
- basic
    
    - B1
        
        - Use default MixMax random engine.
 
        
 
    - B2
        
        - Use default MixMax random engine.
 
        
 
    - B3
        
        - Added score ntuple writer.
 
        - Use default MixMax random engine.
 
        
 
    - B4
        
        - Added score ntuple writer in B4d.
 
        - Use default MixMax random engine.
 
        - Updated B4d/run2.mac for modified score n-tuple writer UI commands.
 
        
 
    - B5
        
        - Use new factory method to create G4AnalysisManager.
 
        - Removed B5Analysis header, no longer needed.
 
        - Fixed cases of type conversions from size_t to G4int in
            B5HodoscopeSD.
 
        
 
    
 
- extended
    
    - analysis
        
        - Removed B3aScoreWriter, B4dScoreWriter examples. The score ntuple
            writer is now provided with Geant4 source and demonstrated in basic
            B3 abd B4d examples.
 
        
 
    - biasing
        
        - B03
            
            - B03PhysicsList: explicitly define hadronic cross-sections.
                Use G4NeutronInelasticXS cross-section.
 
            
 
        - GB07
            
            - New example illustrating how to use the leading particle
                biasing option.
 
            
 
        - ReverseMC01
            
            - Updated for clean-up in analysis typedefs: G4AnaHn types
                replaced with G4Hn.
 
            - Fixed cases of type conversions from size_t to G4int.
 
            
 
        
 
    - electromagnetic
        
        - TestEm0
            
            - PhysicsList: define options, specific for this example after
                new EM physics is selected; cleaned-up constructor; Opt0 is
                the default; set BuildCSDARange to true.
 
            
 
        - TestEm1
            
            - Added G4NIELCalculator and corresponding histograms and
                printouts; general clean-up of the code; use default random
                number generator.
 
            - PhysicsList: disabled GeneralProcess for EM physics.
                Added BuildCSDARange() and set option3 as default.
                Cleanup in initialisation.
 
            
 
        - TestEm5
            
            - StackinAction: fixed log histograms, which where filled in
                a wrong way.
 
            - PhysListEm19DStandard: use 3-gamma annihilation model.
 
            
 
        - TestEm7
            
            - Fixed compilation on Windows for unused exception object
                in G4NativeScreenedCoulombCrossSection::LoadData().
 
            
 
        - TestEm13, TestEm14
            
            - Updated PhysListEmStandard, Livermore and Penelope to return
                back to register only post step part of the processes.
 
            
 
        - TestEm15
            
            - SteppingAction: do not fill hist #11,#12 when no recoil
                returned.
 
            - SteppingAction, PhysList5DStandard: added
                G4GammaConversionToMuons process.
 
            
 
        - TestEm16
            
            - PhysicsList: use G4DecayPhysics and drop G4AutoDelete.
 
            - Migrated to use default MixMax generator.
 
            
 
        - TestEm17
            
            - Updated for clean-up in analysis typedefs: G4AnaHn
                types replaced with G4Hn.
 
            - HistoManager: fixed histo title and index; fixed macro files.
 
            - Code clean-up; switch to MixMax random generator.
 
            
 
        
 
    - eventgenerator
        
        - Removed GunGPS example as obsolete.
 
        
 
    - exoticphysics
        
        - monopole
            
            - Use G4Threading::IsMultithreadedApplication() instead of
                G4MULTITHREADED flag; this fixes compilation of code when used
                in sequential application built against Geant4 libraries built
                with MT.
 
            
 
        - ucn
            
            - Enabled use of Gravity in physics list.
 
            
 
        
 
    - field
        
        - field04
            
            - Removed useless double-definition of copy-ctr for
                F04StepMax and deleted.
 
           
 
        - field06
           
           - Adjusted to changes in G4Transportation (need to inform
               of use of gravity) and corrected creation of G4ChordFinder.
 
           
 
        
 
    - hadronic
        
        - Hadr00
            
 
        - Hadr01
            
            - HistoManager: added linear histogram for pion energy at
                production.
 
            - DetectorConstruction: added "Battery" material and new macro
                test_battery.in. Addressing problem report
                #2175.
 
            
 
        - Hadr02
            
            - G4CRMCModel: some improvements (e.g. considered the
                energy-per-nucleon, instead of the whole projectile, in the
                case of nucleus projectile) and better documentation (in the
                form of comments in the class).
 
            - HadronPhysicsCRMC_FTFP_BERT: use G4HadronicParameters for the
                energy transition region between FTF and BERT models.
 
            
 
        - Hadr08
            
            - New example showing how to use the "generic biasing" feature
                for setting different hadronic physics models according to
                detector regions.
 
            
 
        
 
    - medical/DICOM
        
        - Defaulted copy-ctr in DicomPhantomZSliceHeader, to fix deprecation
            compilation warnings on gcc-9.1.
 
        - Correct DicomHandler singleton for use on Windows.
 
        - Fixed cases of implicit type conversions from size_t to G4int.
 
        - Some minor code cleanup.
 
        
 
    - medical/DICOM2
        
        - Use updated DicomHandler singleton to fix crash on Windows.
 
        - Fixed cases of implicit type conversions from size_t to G4int.
 
        - Include G4Types.hh header in main(), before use of
            G4MULTITHREADED.
 
        
 
    - medical/dna
        
        - chem2, chem3:
            
            - Clean-up of TimeStepAction.
 
            
 
        - chem4:
            
            - Added UI commands for one step thermalization model selection
                in macro beam.in.
 
            - Make Species alias of const G4MolecularConfiguration.
 
            - Create the analysis manager via the new factory function.
 
            
 
        - chem5:
            
            - Make Species alias of const G4MolecularConfiguration.
 
            - Removed unused inclusion of g4analysis_defs header from
                ScoreSpecies.
 
            
 
        - dnadamage1:
            
            - New example showing a simple way to simulate dna direct and
                indirect damages using Geant4-DNA physics and chemical processes
                in a molecular DNA geometry.
 
            
 
        - icsd:
            
            - Reduced event statistics in icsd.mac input macro, in order to
                reduce run-time in testing.
 
            
 
        - microdosimetry:
            
 
        - microprox:
            
            - New example showing how to compute proximity functions in
                liquid water using exclusively Geant4-DNA physics processes
                and models.
 
            
 
        - microyz:
            
            - Added condensed history models including step size control.
 
            - Added EM UI commands in microyz.in.
 
            - Fixed Boolean operators to return G4bool.
 
            
 
        
 
    - medical/electronScattering2
        
        - Fixed warning about attempting to add multiple times the same
            sensitive detector.
 
        - Fixed compilation warning on Windows for unused out_of_range
            exception object in Run::Merge().
 
        
 
    - medical/fanoCavity, fanoCavity2
        
        - DetectorConstruction: simplification of DefineMaterial().
 
        - DetectorConstruction, DetectorMessenger: fixed usage of base
            materials and cleanup (should fix ~1% error for Opt4 EM physics).
 
        - PhysListEmStandard_option4: set RangeFactor to 0.08 (as in the
            physics_list library). PhysListEmStandard_option3: set parameters as
            in the physics_list library.
 
        
 
    - optical/LXe
        
        - LXeDetectorConstruction: removed protection against rebuilding
            detector.
 
        - LXeEventAction: commented out randomSaveEvent.
 
        - Update PMT positions when changing number of PMTs.
 
        - Set fewer particles in wls.mac and cerenkov.mac input macros.
 
        - Use unique analysis filenames.
 
        
 
    - optical/OpNovice
        
        - Use G4OpticalPhysics and G4SteppingVerbose.
 
        - Removed unused surface parameters.
 
        
 
    - optical/OpNovice2
        
        - Added surface roughness and polish commands.
 
        - Recording scintillation photon creation time.
 
        - Use unique analysis filenames.
 
        - Updated macros.
 
        
 
    - optical/wls
        
        - Avoid storing random number seeds.
 
        - Use G4OpticalPhysics and G4SteppingVerbose.
 
        
 
    - parallel
        
        - MPI
           
           - Fixed compilation error in G4MPIextraWorker.
               Addressing problem report
              #2163.
 
           - Fixed exMPI03, exMPI04; compilation of G4MPIscorerMerger was
               broken after changes in scorers.
 
           - Added new option rowMode for ntuple merging; changed the
               default merging mode to the new one (column-wise with preserved
               rows) and updated the analysis code.
 
           
 
        - ThreadsafeScorers
           
           - Fixed compilation warning on Windows for calling
               TIMEMORY_AUTO_TIMER with no arguments in
               TSPrimaryGeneratorAction::GeneratePrimaries().
 
           
 
        - TopC
           
           - Added info/HowToTest.txt with a short summary of the build
               instructions.
 
           
 
        
 
    - parameterisation
        
        - gflash
           
           - Extend GFlash examples set by moving existing 'gflash' example
               to gflash1.
 
           - Added example gflash2 with envelope in parallel world.
 
           - Added example gflash3 with SD in parallel world.
 
           - Added example gflasha with histogramming of shower profiles.
               Allows comparing shower profiles from fast simulation with full
               simulation.
 
           
 
        
 
    - persistency
        
        - gdml/G01
           
           - Added BeamOn(0) to initialize range to energy converters
               needed when exporting cuts per volume.
 
           - Enabled overlaps checking in example.
 
           - Corrected overlap in assembly.gdml sample.
 
           - Corrected CMake script to install otherwise missing GDML
               sample file.
 
           
 
        - P01
           
           - Fixed definition of allocator in ExP01TrackerHit.
 
           
 
        
 
    - radioactivedecay
        
        - rdecay01
            
            - PhysicsList: replaced G4RadioactiveDecay with refactored class
                G4Radioactivation.
 
            - TrackingAction: if 'fFullChain' set kinetic energy to zero.
 
            - In timeWindow command, allow t1 = 0.
 
            - Documented timeWindowBiased.mac input macro.
 
            
 
        - rdecay02
            
            - New class BiasedRDPhysics using new G4Radioactivation process
                with all biasing available.
 
            - In PhysicsList, replaced G4RadioactiveDecayPhysics with
                BiasedRDPhysics, also removed HP option physics lists.
 
            - In Run, replaced G4RadioactiveDecay with G4Radioactivation.
 
            
 
        
 
    - runandevent
        
        - RE03
           
           - Added G4VScoringMesh:: scope identifier to RE03UserScoreWriter.