Back to home page

EIC code displayed by LXR

 
 

    


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

0001 
0002                   Geant4 11.2-beta-01 Release Notes
0003                   ---------------------------------
0004 
0005                                                             30 June 2023
0006 
0007                  Migration Notes & Main New Features
0008                  -----------------------------------
0009 
0010   o Reviewed/simplified stream buffer and I/O classes.
0011   o New Quantum State Simulation (QSS) integration method, an alternative
0012     method of integration offering built-in interpolation capability and
0013     enabling faster finding of the intersection of the trajectory with surfaces.
0014   o Added possibility to set alternative grammar for schema validation
0015     while reading a GDML file.
0016   o Implemented single scattering per region, active inside the region
0017     and disabled outside.
0018   o Rewritten G4DNARuddIonisationExtendedModel G4DNA model, applicable for
0019     scaled energy interval from 100 eV to 100 MeV.
0020   o New submodule "channeling", implementing fast-simulation channeling model
0021     in oriented crystals with Baier Katkov method for the calculation of
0022     radiation probability, radiation point and parameters of photon production
0023     as well as spectrum accumulation.
0024   o Implemented interface allowing the coupling between Binary Cascade (BIC)
0025     and Abla, i.e. using BIC for the cascade and then Abla for the nuclear
0026     de-excitation.
0027   o Extended Bertini model to allow the use of Abla as alternative post-cascade
0028     nuclear de-excitation (the default de-excitation remains unchanged).
0029   o Major extension of the INCLXX model to handle antiproton annihilation
0030     at rest. All INCLXX-based physics lists now use INCLXX for the antiproton
0031     annihilation at rest.
0032   o Accurate modeling of elastic resonant scattering in heavy nuclei by
0033     the use of DBRC (Doppler Broadening Rejection Correction) algorithm.
0034   o Removed most calls to environment variables in hadronic physics classes.
0035   o New physics list QBBC_ABLA, behaving as QBBC, but using the ABLA model
0036     for nuclear de-excitation, instead of Precompound.
0037   o New physics list QGSP_BIC_HPT, similar to QGSP_BIC_HP, but with
0038     special treatment of elastic scattering of thermal neutrons activated.
0039   o Added 6 new physics lists to physics factory, for "HPT" variants
0040     (i.e. with special treatment of elastic scattering of thermal neutrons)
0041     of physics lists with "HP" already present (FTFP_BERT_HPT,
0042     QGSP_BIC_AllHPT, Shielding_HPT, ShieldingM_HPT).
0043   o New physics list names Shielding_HP and ShieldingM_HP, as alias of,
0044     respectively, Shielding and ShieldingM.
0045   o First version of the TSG_[QT,X11,XT,WINDOWS]_ZB sub drivers, allowing for
0046     interactive 3D rendering bypassing native graphics systems.
0047   o TSG_QT driver temporarly enabled by default with OGL driver choice,
0048     to allow support of Qt6.
0049   o Supporting first implementation of a no-frills GUI-side scene tree
0050     in the Qt GUI.
0051   o Implemented "generic cutaways" in visualization. Clips, sections and
0052     cutaways will now be available to *all* viewers (OpenGL still uses
0053     OpenGL clip planes. Use another driver, e.g., TSG, to get "generic
0054     cutaways).
0055   o New extended hadronic example, FlukaCern, showing the interface between
0056     Geant4 and (Fortran) FLUKA-Cern: this allows to get, in a Geant4
0057     application, hadron-nucleus reaction cross sections and final states
0058     from FLUKA-Cern.
0059   o Enabled first-level support for Qt6.
0060     Fixed minimum supported version for Qt5 to be 5.9.
0061   o Split build of G4persistency library into G4mctruth, G4geomtext and
0062     (optional) G4gdml libraries.
0063   o Added support for declaring headers of a source code module private.
0064     Headers declared private are not installed. Partial refactoring of
0065     modules.
0066   o Removed deprecated GNUmake scripts for libraries build.
0067   o Build option with VecGeom requires VecGeom-1.2.3 or higher.
0068   o Requires CLHEP-2.4.6.4 for external CLHEP installation.
0069   o New data sets: G4EMLOW-8.4, G4ABLA-3.3, G4INCL-1.1.
0070 
0071  ----------------------------------------------------------------------------
0072 
0073                              Technical Notes
0074                              --------------- 
0075 
0076   o Tested platforms:
0077     + Linux, gcc-8.3.1.
0078       Tested on 64 bit architectures (Intel or AMD) with Linux CentOS8.
0079       Versions of Geant4 have also been compiled successfully on other
0080       Linux distributions, Ubuntu, Debian, Suse or other RedHat systems.
0081     + MacOS 13.4, Apple LLVM/clang-14.0.3 (Intel or Apple Silicon).
0082     + Windows/10 with Visual C++ 14.34 (Visual Studio 2022)
0083 
0084   o More verified configurations:
0085     + Linux, with gcc-9.3/10.3/11.2/12.1/13.1, clang-10/11/12/13/14/15/16.
0086     + Linux, with Intel-icx 2022.2/2023.1.
0087     + MacOS 11.6 and 12.6, with Apple LLVM/clang-12/14.
0088 
0089   o External dependencies
0090     + CLHEP-2.4.6.4, suggested for external installation of the CLHEP library.
0091     + VecGeom-1.2.3 or later, for optional use of VecGeom geometry primitives.
0092     + PTL-2.3.3, for external installation of the PTL tasking library.
0093 
0094   o New data sets:
0095     + G4EMLOW-8.4, G4ABLA-3.3, G4INCL-1.1.
0096 
0097  Please refer to the Geant4 User Documentation:
0098    http://cern.ch/geant4/support/user_documentation
0099  for further information about using Geant4.
0100 
0101  ----------------------------------------------------------------------------
0102 
0103 List of features and fixes included in this Beta release since 11.1.p02:
0104 
0105   o Configuration:
0106     -------------
0107     + CMake:
0108       o Added support for declaring headers of a source code module private.
0109         Headers declared private are not installed; geant4_module_check reports
0110         an inconsistency if a private header is used non-privately.
0111       o Updated Qt MOC application for G4UI implementation in place of
0112         G4UIbasic/G4UIcommon.
0113       o Streamlined VTK cmake components.
0114       o No longer link to QtPrintSupport, which is not used in the toolkit.
0115       o Support finding and use of Qt6 on request for beta testing.
0116         Fixed minimum supported version for Qt5; requiring Qt5 >= 5.9 if Qt5
0117         support is selected.
0118         Find and refind Qt6OpenGLWidgets module in Qt6 for use by Qt/OpenGL
0119         consumers. Find and refind Qt6OpenGLWidgets module in Qt6 for use
0120         by Qt/OpenGL consumers.
0121       o Handling TOOLSSG_[X11,XT,WINDOWS,QT]_ZB vis drivers.
0122       o Export VTK_DIR and QtX_DIR to package cache to assist in refinding both.
0123       o Added new capabilities to geant4_module_check.py script: given a
0124         module, print list of modules that depend on it; print all modules
0125         sorted in descending order of the number of modules using them;
0126         show which headers from linked modules are included by a module in
0127         its usage requirements output.
0128       o Updated configuration scripts for splitting of G4persistency library.
0129       o Removed setting of -D flags in Geant4Config to enable visualisation
0130         drivers. Libraries now export compile definitions for what they
0131         support to move to a "use on link" model.
0132       o Removed obsolete and confusing GEANT4_BUILD_TESTS option and
0133         configuration.
0134       o Make linking a source code module to a final Geant4 library a
0135         cmake-time error.
0136       o Updated to datasets: G4ABLA-3.3, G4INCL-1.1 and G4EMLOW-8.4.
0137 
0138     + GNUMake:
0139       o Removed deprecated GNUmake scripts for libraries build.
0140       o Updated UI/interfaces include paths to reflect new organization.
0141       o Updated scripts for splitting of the G4persistency library.
0142       o No longer link to QtPrintSupport, which is not used in the toolkit.
0143 
0144   o Digits & Hits:
0145     -------------
0146     + Applied clang-tidy corrections and general code modernization.
0147     + Moved docstrings prior to function declarations for doxygen/IDE
0148       compatibility.
0149 
0150   o Externals:
0151     ---------
0152     + CLHEP:
0153       o Synchronised with CLHEP-2.4.6.4.
0154         - Fixed compilation warnings for implicit type conversions on
0155           macOS/XCode 14.1 in Random and Evaluator code.
0156         - Fixed cases of C++20 deprecated arithmetics with unnamed enumerations
0157           in Vector classes.
0158     + g4tools:
0159       o Updated to g4tools 6.2.0:
0160         - Added support for Qt6 in glarea.
0161         - Enabling Qt, Xt, X11, Windows viewers for the tools/zbuffer rendering.
0162         - Fixed compilation warnings on Intel/icx compiler for mismatched array
0163           bounds. Fixed Coverity defect.
0164     + zlib:
0165       o Updated to upstream zlib-1.2.13, retaining prior Geant4 patches.
0166 
0167   o Geometry:
0168     --------
0169     + Applied clang-tidy fixes (readability, modernization, performance, ...).
0170     + biasing:
0171       o Use G4AutoLock in G4IStore and G4ImportanceAlgorithm instead of static
0172         mutex data member.
0173     + magneticfield:
0174       o Added new Quantum State Simulation (QSS) integration method, an
0175         alternative method of integration which creates approximation functions
0176         for each coordinate (x,p), changing the interpolation polynomials when
0177         the deviation from exact solution is larger than a threshold value.
0178         Offers built-in interpolation capability, enabling faster finding of
0179         the intersection of the trajectory with surfaces.
0180         Currently restricted to using only with a pure magnetic field.
0181     + navigation:
0182       o G4PropagatorInField: added parameters for big steps.
0183         New parameter 'fMaxStepSizeMultiplier', needed to reduce costly
0184         unnecessary integration in QSS; new parameter 'fMinBigDistance' used
0185         as minimum distance in case of long steps. Updated default values:
0186         'fLargestAcceptableStep' = 100 * meter ( from 1000* meter );
0187         'fMaxStepSizeMultiplier' = 0.1 ( from 100 ).
0188     + solids/Boolean:
0189       o Added external Boolean processor visualisation interface
0190         G4VBooleanProcessor.
0191     + solids/specific:
0192       o Use const iterator in G4Voxelizer::GetPointVoxel().
0193       o Fixed use of index in G4Tet::GetPointOnSurface().
0194 
0195   o Global:
0196     ------
0197     + Removed public interface to G4strstreambuf: G4strstreambuf becomes a
0198       private implementation detail of G4ios.
0199       Minimized coupling among G4cout/G4strstreambuf/G4coutDestination.
0200     + Added G4debug output stream for logging messages at lower priority than
0201       G4cout. If used with the Qt GUI, G4debug output is highlighted.
0202     + G4PhysicsModelCatalog: added the new INCLXX model of antiproton
0203       annihilation at rest.
0204     + Added G4VERSION_REFERENCE_TAG macro to distinguish release/development
0205       versions and cycle of the latter.
0206     + Removed obsolete and no longer used G4SIunits header.
0207     + Changed date for release 11.2-beta.
0208 
0209   o Graphics Representations:
0210     ------------------------
0211     + Supporting first implementation of a no-frills GUI-side scene tree.
0212       Added G4SceneTreeItem class, an aggregate of data members that represent
0213       properties of objects in the scene (G4Scene). Its data members are
0214       low-level types, so that it can be used across categories, avoiding
0215       coupling.
0216     + Added  data member 'fExpanded' to G4SceneTreeItem.
0217 
0218   o Intercoms:
0219     ---------
0220     + Replaced direct access to G4cout/etc stream buffers with call to
0221       G4coutDestination installer function.
0222     + Implemented ReceiveG4debug() for G4UIsession et al.
0223     + Applied clang-tidy and clang-format fixes plus normal ordering of
0224       docstrings/access specifications.
0225     + Removed unused/pointless operators. Use C++17 type aliases.
0226     + Refactored G4UIaliasList to simplify implementation and in particular
0227       memory management.
0228     + Simplified G4UImessenger implementation.
0229     + Factor G4UIcommand/parameter range validation functions to reduce code
0230       duplication.
0231     + Moved clear implementation detail classes to private headers.
0232 
0233   o Interfaces:
0234     ----------
0235     + Implemented ReceiveG4debug for concrete sessions. For the Qt GUI
0236       (G4UIQt) HTML code is added in order to highlight G4ddebug output.
0237     + First implementation of user-specified output styles: "/gui/outputStyle".
0238       Output streams: cout cerr warn error debug (extendible, see
0239       G4VInteractiveSession header). Only used by G4UIQt at present.
0240     + Support for first implementation of a no-frills GUI-side scene tree.
0241     + Refactored modules into G4UIcore and G4UIimplementation to isolate
0242       core/always on functionality from concrete UIs requiring external
0243       libraries. Both modules are still built into a G4interfaces library,
0244       with no change to user interface for applications. 
0245     + Applied clang-tidy and clang-format fixes, together with
0246       public/protected/private ordering in headers.
0247     + G4UIQt: fixed mutex bug in implementation of G4UIQt::ReceiveG4debug();
0248       This "workaround" is to make sure all flushed output appears on the
0249       terminal after a crash. Fixed QSplitter issue, necessary for Qt6 support.
0250       Introduced new scene tree - Add colour choice.
0251       Introduced widget for 'mouseDoubleClickEvent'. Implemented callbacks
0252       SceneTreeItemExpanded() and SceneTreeItemCollapsed().
0253       Improved command; allow for leading space in 'pvpath'. Code tidying.
0254       Reworked double-click to use QTreeWidget::itemDoubleClicked.
0255    + Removed header no longer used in Qt5, which is also not present in Qt6.
0256      Removed support for Qt < 5.9 in CMake script.
0257    + Export public compile definitions to indicate availablity of specific UIs.
0258       Moves to "use on link" model.
0259 
0260   o Materials:
0261     ---------
0262     + Applied standard and extended clang-tidy fixes, normal order access
0263       specifiers and docstrings; applied clang-format.
0264 
0265   o Parameterisations:
0266     -----------------
0267     + New submodule "channeling", implementing fast-simulation channeling
0268       model in oriented crystals with Baier Katkov method for the calculation of
0269       radiation probability, radiation point and parameters of photon production
0270       as well as spectrum accumulation.
0271 
0272   o Particles:
0273     ---------
0274     + G4IonTable: fixed GetIon() method for the case when the ground state level
0275       of an isomer is floating. Removed some code duplication in FindIon() and
0276       GetIon() methods.
0277     + G4NuclideTable: taken into account the possibility of floating ground state
0278       levels.
0279     + G4Ion: added protection against unphysical index of floating level.
0280     + Applied core/recommended clang-tidy fixes.
0281 
0282   o Persistency:
0283     -----------
0284     + Split build of G4persistency library into G4mctruth, G4geomtext and
0285       (optional) G4gdml libraries.
0286     + GDML:
0287       o Added possibility to set alternative grammar for schema validation
0288         while reading a GDML file. This can be achieved by either calling the
0289         new method SetImportSchema(..) from G4GDMLParser, providing the
0290         absolute path and file name of the XML schema, or by using the new
0291         UI command:  /persistency/gdml/schema "[absolute_path]/schema_filename"
0292         before importing the GDML file.
0293         By setting a locally stored alternative grammar, it will instruct the
0294         parser to ignore the default schema specified in the GDML file and
0295         therefore no longer require access to the network for retrieving the
0296         schema.
0297       o Allow setting of alternative grammar for schema validation via an
0298         environment variable G4GDML_SCHEMA_FILE; it overrides the value set by
0299         SetImportSchema() if both are non-empty strings. Forcing parser to
0300         ignore any schema set in the input GDML file. Checking of grammar and
0301         schema override will fail on missing schema.
0302       o In G4GDMLWriteStructure::ExportSD(), use GetMasterSensitiveDetector()
0303         from logical volume to retrieve the shadow pointer of the sensitive
0304         detector.
0305     
0306   o Physics Lists:
0307     -------------
0308     + Constructors:
0309       o electromagnetic:
0310         - G4EmBuilder, G4EmModelActivator, G4EmStandardPhysicsSS: fixed issue
0311           in single scattering model definition per region for e+, e-, and
0312           light hadrons. Addressing problem report #2530.
0313         - G4EmBuilder, G4EmStandardPhysicsSS: use new constructor for the
0314           G4CoulombScattering process.
0315         - G4EmModelActivator: use new constructor for the G4CoulombScattering
0316           process; allow adding G4EmStandardPhysicsSS on top of
0317           G4EmStandardPhysics_option3.
0318           Implemented single scattering per region by adding extra single
0319           scattering process, which is active inside the region and not active
0320           outside; multiple scattering and single scattering processes for a
0321           given charged particle are disabled in the region.
0322           Addressing problem report #2530.
0323         - New G4ChemDissociationChannels and G4ChemDissociationChannels_option1
0324           classes.
0325         - G4GammaGeneralProcess: added method GetGammaNuclear().
0326         - G4EmParticleList: added method EmChargedPartNames(), returning a
0327           minimal list of charged EM particles.
0328         - Fixed compilation warnings on macOS/XCode for implicit type
0329           conversion.
0330       o factory:
0331         - Added G4StoppingPhysicsWithINCLXX in G4RegisterPhysicsConstructors.
0332       o gamma_lepto_nuclear:
0333         - G4EmExtraPhysics: activate biasing in processes, not in
0334           cross-sections.
0335       o constructors/hadron_elastic
0336         - New class G4HadronElasticPhysicsHPT, inheriting from
0337           G4HadronElasticPhysicsHP and activating the special treatment of
0338           elastic scattering of thermal neutrons.
0339         - G4HadronElasticPhysicsHP: changed method ConstructProcess() from
0340           "final" to "override", to be able to define the ConstructProcess()
0341           method for the derived class G4HadronElasticPhysicsHPT.
0342       o constructors/hadron_inelastic
0343         - New class G4HadronInelasticQBBC_ABLA, similar to
0344           G4HadronInelasticQBBC_ABLA, except that for the final-state of
0345           nuclear inelastic interactions of charged pions and nucleons
0346           projectiles, the ABLA model is utilized for nuclear de-excitation,
0347           instead of the usual Precompound/de-excitation.
0348           Meant for testing purposes. In principle, these couplings with ABLA
0349           nuclear de-excitation can be extended to all types of projectiles and
0350           to other reference physics lists, but, for the time being, it is
0351           restricted to pion+, pion-, proton and neutron, and only for QBBC.
0352       o constructors/stopping (phys-ctor-stopping-V11-01-00)
0353         - G4StoppingPhysicsWithINCLXX: new class, similar to G4StoppingPhysics,
0354           with the only difference that the INCLXX model (instead of FTFP) is 
0355           utilized for the antiproton annihilation at rest.
0356     + lists:
0357       o New class QBBC_ABLA, which is similar to QBBC, except that for
0358         hadron inelastic the constructor G4HadronInelasticQBBC_ABLA is used,
0359         instead of G4HadronInelasticQBBC. This means that the physics list
0360         QBBC_ABLA behaves as QBBC, with the only difference that for the
0361         final-state of nuclear inelastic interactions of charged pions and
0362         nucleons projectiles, the ABLA model is being used for nuclear
0363         de-excitation, instead of the usual Precompound/de-excitation.
0364       o New class QGSP_BIC_HPT, which is similar to QGSP_BIC_HP, but with
0365         special treatment of elastic scattering of thermal neutrons activated.
0366       o Use the new class G4StoppingPhysicsWithINCLXX (instead of
0367         G4StoppingPhysics) in INCLXXPhysicsListHelper: all the INCLXX-based
0368         physics lists use INCLXX for the antiproton annihilation at rest.
0369       o G4PhysListFactory: added 6 new physics lists, corresponding to "HPT"
0370         variants (i.e. with special treatment of elastic scattering of thermal
0371         neutrons) of physics lists with "HP" already present (FTFP_BERT_HPT,
0372         QGSP_BERT_HPT, FTFP_INCLXX_HPT, QGSP_INCLXX_HPT, QGSP_BIC_HPT,
0373         QGSP_BIC_AllHPT, Shielding_HPT, ShieldingM_HPT).
0374         Of these, only one (QGSP_BIC_HPT) corresponds to a concrete new physics
0375         list, whereas the others are obtained from the "HP" physics lists by
0376         adding the physics constructor G4ThermalNeutrons.
0377         Introduced new physics list names Shielding_HP and ShieldingM_HP, as
0378         alias of, respectively, Shielding and ShieldingM. These new aliases
0379         allow to have a consistent notation _HPT for all the HP-based physics
0380         lists when the special elastic scattering treatment of thermal neutrons
0381         is enabled.
0382       o Shielding: added information note that the new physics list names (to
0383         be used with the physics list factory), Shielding_HP and ShieldingM_HP,
0384         are equivalent to, respectively, Shielding and ShieldingM.
0385       o G4PhysListFactoryMessenger: added the new UI command
0386         "/physics_lists/factory/addThermal" to enable the special treatment of
0387         elastic scattering of thermal neutrons for HP-based physics lists.
0388 
0389   o Electromagnetic Processes:
0390     -------------------------
0391     + DNA:
0392       o Reorganised multiple material model of PTB. G4VDNAModel plays like a
0393         data layer for multiple material models. The concrete models are
0394         independent of G4DNAModelInterface.
0395       o G4DNARuddIonisationExtendedModel: rewrite of the model, applicable for
0396         scaled energy interval from 100 eV to 100 MeV. If for an ion data is not
0397         available, proton x-section and effective charge are used, sampling of
0398         delta-electron is done using the two regions regression method.
0399         Sharing data between threads.
0400       o Introduced G4DNAMaterialManager to handle available DNA materials
0401         and keep DNA cross-section data shared across threads.
0402       o Replaced string to material index and some code cleanup in PTB models.
0403       o Added material pointer members for each concrete PTB models.
0404       o Code cleanup in G4DNAModelInterface for the model combination of
0405         different materials.
0406       o Added PTB model data to G4DNAMaterialManager singleton.
0407         Updated RegisterModel() function with new structure.
0408       o Added DNA cross-section to dna_option6.
0409       o Use analytical method for DNA material in option6, water is unchanged.
0410         Minor correction for DNA material in option6.
0411       o Added time structure (pulsed beam) to water radiolysis
0412         (G4VUserPulseInfo).
0413       o Corrected initial values of G4DNAEventScheduler.
0414       o Use analytical method for DNA material in option6, water is unchanged.
0415         Minor correction for DNA material in option6.
0416       o Modified DNA cross-section file name, according to new G4EMLOW-8.4 data
0417         set.
0418       o Fixed Coverity defects for uninitialised scalar variables.
0419       o Fixed compilation warnings on macOS/XCode for implicit type conversions.
0420     + High Energy:
0421       o G4GammaConversionToMuons, G4AnnihiToMuPair: removed using namespace std
0422         and applied cling-tidy base fixes.
0423     + Low Energy:
0424       o In G4LivermorePhotoElectricModel and G4LivermoreRayleighModel removed
0425         calls to environment variables and use G4EmParameters method instead.
0426         Added lock for reading data on the fly; minor code formatting.
0427       o G4LivermoreGammaConversionModel, G4LivermoreGammaConversion5DModel:
0428         fixed Spline interpolation by calling FillSecondDerivatives().
0429       o G4LowEWentzelVIModel: updated according to Coulomb scattering models.
0430       o Use access to G4LEDATA via G4EmParameters for G4LivermoreComptonModel,
0431         G4LivermoreGammaConversion5DModel and G4LivermoreGammaConversionModel.
0432       o Applied clang-tidy and clang-format to Livermore code.
0433     + Standard:
0434       o G4UrbanMscModel: check IsLocked() method before definition of lateral
0435         displacement algorithm and positron correction; improved code
0436         formatting.
0437       o G4CoulombScattering: added SetCombined() method allowing the user to
0438         configure the process; improved code formatting and initialisation.
0439         Added constructor with changed signature, which uses flag "isCombined"
0440         instead of process name.
0441         Added extra constructor to address all existing cases;
0442         for pure single scattering, integral method type is changed and Spline
0443         interpolation is used. Addressing problem report #2530.
0444       o G4UrbanMscModel: code optimisation; no functional changes.
0445       o Code cleanup in G4PAI* classes.
0446       o Removed use of std::getenv() from model classes, use G4EmParameters
0447         instead.
0448       o G4eCoulombScatterinModel: improved initialisation and code formatting.
0449       o G4BraggModel, G4BraggIonModel: use proton stopping data for for all
0450         ions except alpha; make data-sets pointers static.
0451         Addressing problem report #2532.
0452       o G4BetheHeitlerModel, G4PairProductionRelModel, G4eBremsstrahlungRelModel,
0453         G4SeltzerBergerModel: reorganized initialisation. Initialisation of
0454         static element data is performamed only once for the first object
0455         independently on how many objects of this kind is created in a thread.
0456         Results of simulation are identical. Addressing problem report #2543.
0457       o In G4BetheBlochModel, G4BraggIonModel and G4BraggModel, updating
0458         effective charge of an ion at each step of simulation or at each call
0459         to G4EmCalculator.
0460       o G4eBremsstrahlung, G4SeltzerBergerModel: avoid changing LPM flag at
0461         initialisation; avoid repeating base class initialisation; improved
0462         comments in code.
0463       o G4eBremsstrahlungRelModel: use LPM flag from G4EmParameters and
0464         improved comments in code.
0465       o G4WaterStopping, G4hIonisation: codee clean-up.
0466       o G4ionIonisation: do not use G4WaterStopping; code clean-up.
0467       o Updated hadron/ion ionisation models; initialise stopping power data
0468         once: PSTAR and ICRU90 in G4BraggModel, ASTAR in G4BraggIonModel,
0469         ICRU73 and ICRU90 ion (Z>2) data in G4LindHardSorensenIonModel.
0470       o G4BraggIonModel inherits from G4Bragg model; fixed stopping power
0471         of heavy ions at moderate energies.
0472       o G4LindhardSorensenIonModel: use G4BraggModel for preliminary computation
0473         of DEDX at initialisation for G4GenericIon instead of G4BraggIonModel,
0474         which fixes a problem of low-energy ion tracking recently introduced.
0475     + Utils:
0476       o G4EmParameters: added extra member and access method to G4LEDATA path
0477         allowing checking of the environment variable for the EM data only once.
0478       o G4VEnergyLossProcess: make more straightforward computation of ion
0479         effective charge.
0480       o G4VEmModel: trigger computation of ion effective charge for
0481         G4EmCalculator. Use LPM flag from G4EmParameters.
0482       o G4ionEffectiveCharge: minor optimisation.
0483       o G4VEnergyLossProcess, G4VEmProcess, G4VMultipleScattering: use flag of
0484         master thread from G4LossTableManager.
0485       o G4VEnergyLossProcess: added extra protection excluding negative range;
0486         renamed class member; changed condition to stop low-energy ion, use
0487         kinetic energy and not scaled energy.
0488         Added extra protection for the case of negative range of low-energy
0489         particles. Addressing problem report #2542.
0490       o G4LossTableManager: reserve memory for internal vectors; simplified
0491         destructor; move a part of initialisation of class members to header.
0492       o G4EmCorrections: code formatting; removed lock of threads, use instead
0493         flag from G4LossTableManager.
0494       o Improved printout in G4EmCalculator.
0495       o G4LossTableBuilder, G4VEnergyLossProcess: improved debug printout.
0496 
0497   o Generic Processes:
0498     -----------------
0499     + Scoring:
0500       o Applied core clang-tidy/format fixes.
0501       o Make G4EnergySplitter a private implementation detail of the module.
0502         Make dependency to 'intercoms' private.
0503     + Transportation:
0504       o In G4TransportationParameters, added a method to set both warning and
0505         important energies; added method to report lock errors.
0506         Improved reporting of inconsistent changes of 'warning' & 'important'
0507         energies (not only enforce warning_E < important_E but also warn about
0508         violations).
0509 
0510   o Hadronic Processes:
0511     ------------------
0512     + cross_sections
0513       o Removed calls to environment variable G4PARTICLEXSDATA, use
0514         G4HadronicParameters access method instead.
0515       o In G4CrossSectionDataStore, reduced number of calls to environment
0516         variables, which are done only to print output for documentation.
0517         Removed remaining calls to getenv() and use G4HadronicParameters
0518         instead.
0519       o G4ElNeutrinoNucleusTotXsc: uncommented methods for interface with
0520         G4ElNeutrinoNucleusProcess.
0521       o G4GammaNuclearXS: general code clean-up: instantiate data only once
0522         for all instances of this cross-section class; upload data for all
0523         elements before the first run; simplified computation of isotope
0524         cross-section; added extra public method LowEnergyCrossSection().
0525         More accurate usage of cache; simplified GetIsoCrosssection() and
0526         SelectIsotope() methods.
0527       o Fixed compilation warnings for implicit type conversions on
0528         macOS/XCode>=14.1.
0529     + management
0530       o G4HadronicProcess: removed usage of "DebugFlag" and "RandomFile".
0531         Replaced access to environment variables with call to
0532         G4HadronicParameters. Added extra G4Exception for the case where a
0533         worker cannot share initialisation with the master thread.
0534         Addressing problem report #2528.
0535         Improved diagnostics.
0536       o G4HadronicProcessStore: avoid checking of environment variables, call
0537         G4HadronicParameters instead. 
0538     + models/abla
0539       o G4AblaInterface: implemented method ApplyYourself() to allow the
0540         coupling between Binary Cascade (BIC) and Abla, i.e. using BIC for the
0541         cascade and then Abla for the nuclear de-excitation.
0542     + models/binary_cascade
0543       o G4BinaryCascade, G4BinaryLightIonReaction: avoid calls to getenv(),
0544         use G4HadronicParameters instead.
0545     + models/cascade
0546       o Extended Bertini model to allow the use of Abla as alternative
0547         post-cascade nuclear de-excitation (the default de-excitation remains
0548         unchanged).
0549         There are two ways to set Abla as de-excitation for Bertini: via C++
0550         interface, by calling G4CascadeInterface::useAblaDeexcitation();
0551         via environmental variable, by setting G4CASCADE_USE_ABLA=1.
0552       o G4AblaDeexcitation: new class that does the nuclear de-excitation,
0553         after the Bertini cascade, by using the Abla model, and then tranforms
0554         the secondaries in Bertini objects.
0555       o G4CascadeInterface: added new method useAblaDeexcitation() which sets
0556         Abla as nuclear de-excitation; this method can be called directly by the
0557         user, or automatically in the constructor of the class when the flag
0558         G4CascadeParameters::useAbla() is enabled.
0559       o G4InuclCollider: added new method useAblaDeexcitation() which creates
0560         an instance of the new class G4AblaDeexcitation.
0561       o G4CascadeParameters: added Boolean flag that enables the Abla
0562         de-dexcitation model in the case that the new environmental variable
0563         G4CASCADE_USE_ABLA is set.
0564       o Fixed coverity defect for incorrect integer divide in fission part of 
0565         G4EquilibriumEvaporator::deExcite().
0566     + models/de_excitation
0567       o G4LevelReader: allow to add more levels of a given isotope than the
0568         hardcoded limit=635 (max number of levels in G4LEVELGAMMADATA).
0569         Addressing problem report #2534.
0570       o G4LevelManager: added extra public accessor method allowing users to
0571         check level energies and other parameters.
0572       o G4DeexPrecoParameters: moved part of initialisation to header; do not
0573         use autolock, use internal flag instead to allow only one dump of
0574         paramenters; print all pre-compound parameters, separate pre-compound
0575         and de-excitation printouts.
0576       o G4NuclearLevelData: fixed uploading of data before the run.
0577     + models/inclxx
0578       o Major extension of the INCLXX model to handle antiproton annihilation
0579         at rest.
0580     + models/lend
0581       o Fixed coverity defect; G4LENDGammaCrossSection::SelectChannel() may
0582         return negative array index, same in G4LENDGammaCombinedCrossSection;
0583         initialize 'iChannel' to a positive number.
0584     + models/particle_hp
0585       o Accurate modeling of elastic resonant scattering in heavy nuclei by
0586         the use of DBRC (Doppler Broadening Rejection Correction) algorithm.
0587         In G4ParticleHPManager, added new member variables and corresponding
0588         methods, related to the DBRC algorithm.
0589         In G4ParticleHPMessenger, added new UI commands to enable DBRC (which
0590         is off by default) and to specify its parameters.
0591         In G4ParticleHPVector, added new method GetMaxY() to provide the maximum
0592         cross-section in the interval between two kinetic energy values.
0593         In G4ParticleHPChannel, modified method ApplyYourself(), with an extra
0594         argument, for a special treatment of the elastic channel.
0595         In G4ParticleHPElastic, modified G4ParticleHPChannel::ApplyYourself()
0596         call, with an extra parameter.
0597         In G4ParticleHPElasticFS, implemented the DBRC algorithm in the new
0598         method GetBiasedThermalNucleus(); modified the method ApplyYourself()
0599         to call the new method GetBiasedThermalNucleus(); introduced two more
0600         new methods, InitializeScatterKernelParameters() and
0601         RegisterCrossSection(), and corresponding new member variables.
0602       o G4ParticleHPMessenger: when changing the neutron kinetic energy
0603         threshold for applying the SVT algorithm, as part of the setting of the
0604         DBRC (Double Broadening Rejection Correction) algorithm, update the
0605         corresponding value in G4HadronicParameters.
0606       o G4ParticleHPManager: removed the neutron kinetic energy threshold for
0607         applying the SVT (Sampling of the Velocity of the Target) algorithm, as
0608         this parameter is in G4HadronicParameters.
0609       o G4ParticleHPElasticFS: get the neutron kinetic energy threshold for
0610         applying the SVT algorithm from G4HadronicParameters; in the method
0611         GetBiasedThermalNucleus(), corrected mistake in the interval where the
0612         max neutron cross-section is considered for rejection.
0613       o G4ParticleHPDeExGammas: removed internal counter; delete only objects
0614         which are created.
0615       o Removed G4ParticleHPGamma and G4ParticleHPLevel classes.
0616       o G4ParticleHPEnergyDistribution, G4ParticleHPContAngularPar,
0617         G4ParticleHPEnAngCorrelation: fixed Coverity warnings.
0618       o Applied clang-format and clang-tidy fixes.
0619     + models/parton_string
0620       o G4BaryonSplitter, G4MesonSplitter, G4QGSMSplittableHadron, G4SPBaryon:
0621         some code cleanup.
0622     + models/qmd
0623       o Fixed Coverity defect for uninitialized variable.
0624       o Code cleanup in G4QMDMeanField in attempt to fix false positive on
0625         gcc-13.1 diagnostics on alma9.
0626     + models/radioactive_decay
0627       o Fix in stairstep beta decay spectrum. Addressing problem report #2367.
0628         Created new class G4BetaSpectrumSampler to sample a sloped distribution
0629         instead of a flat one. Changed G4BetaMinusDecay and G4BetaPlusDecay to
0630         use the above sampler. Added protection against very large arguments
0631         in std::exp within G4BetaDecayCorrections::ModSquared.
0632       o Fixed Coverity defect for uninitialized data in G4BetaSpectrumSampler,
0633         G4RadioactiveDecay and G4BetaSpectrumSampler.
0634     + processes
0635       o G4(El,Tau)NeutrinoNucleusProcess, G4NeutrinoElectronProcess,
0636         G4MuNeutrinoNucleusProcess: update neutrino cross-section biasing
0637         in selected detector-region.
0638       o G4ElNeutrinoNucleusProcess: updated process name to be
0639         "el-neutrino-nucleus".
0640       o New process G4NuVacOscProcess or 3-flavour neutrino oscillation in
0641         vacuum.
0642       o G4NeutronGeneralProcess: added two access methods, an extra set method
0643         and removed possible variable shadowing.
0644       o G4HadronElasticProcess, G4NeutronGeneralProcess: fixed problems
0645         identified  by Coverity.
0646       o G4TauNeutrinoNucleusProcess: cleanup of constructor and destructor to
0647         fix Coverity warning.
0648     + stopping
0649       o G4HadronicAbsorptionINCLXX: new class to handle annihilation at rest by
0650         INCLXX; for the time being, only for antiproton.
0651     + util
0652       o G4HadronicParameter: introduced the neutron kinetic energy threshold
0653         for  applying the SVT (Sampling of the Velocity of the Target)
0654         algorithm. This is needed to have a consistent value in methods
0655         GetBiasedThermalNucleus() in G4Nucleus and G4ParticleHPElasticFS
0656         respectively, to avoid circular dependency with 'particle_hp' module.
0657         Removed two obsolete environment variables and access methods; added 
0658         flag for charge exchange.
0659         Added class members defined via environment variable and access methods
0660         for these members, this allows to remove the majority of calls to
0661         std::getenv().
0662         Added two strings and extra methods to access environment variables used
0663         in G4HadronicProcessStore. These variables are not used in ordinary runs
0664         but are checked in each thread and for each particle. With this update
0665         these variables will be checked only once.
0666         Added G4Exception for the case, when environment variable
0667         G4PARTICLEXSDATA is not defined.
0668         Added extra Boolean method for accessing debug flag for Binary Cascade,
0669         which may be defined via environment variable G4BINARY_CASCADE_DEBUG.
0670       o G4Nucleus: in the method GetBiasedThermalNucleus(), get the neutron
0671         kinetic energy threshold for applying the SVT algorithm from
0672         G4HadronicParameter in method DoKinematicsOfThermalNucleus(), and
0673         corrected the way to pass the last parameter, by reference instead of
0674         by value.
0675         Split the method GetBiasedThermalNucleus() into two parts, by
0676         introducing a new public method, DoKinematicsOfThermalNucleus(),
0677         which is used also by G4ParticleHPElasticFS to implement the DBRC
0678         algorithm.
0679 
0680   o Run:
0681     ---
0682     + Refactor random state file copying to use std::filesystem for portability.
0683     + Applied core and optional clang-tidy fixes, plus clang-format and tidying:
0684       removed obsolete comments/dead blocks; normal order access specifiers and
0685       make docstrings Doxygen/IDE compatible.
0686 
0687   o Track & Tracking:
0688     ----------------
0689     + Applied standard and extended set of clang-tidy/format fixes.
0690 
0691   o Visualization:
0692     -------------
0693     + Isolated private headers and updated dependencies.
0694     + Link to new G4UIcore/UIimplementation modules in place of former
0695       G4UIbasic/UIcommon.
0696     + Exporting public compile definitions to indicate availablity of specific
0697       drivers. Moves to "use on link" model.
0698     + management:
0699       o Introducing scene tree in G4VViewer. The scene tree is a tree of
0700         G4SceneTreeItem objects; its root is a data member fSceneTree of all
0701         viewers by virtue of G4VViewer inheritance. The root G4SceneTreeItem
0702         has children that represent the models (G4VModel sub-classes) in the
0703         scene. For a G4PhysicalVolumeModel (detector components), its children
0704         and children's children, etc., imitate the geometry hierarchy of that
0705         model. These descendants are called "touchables". There may be more than
0706         one G4PhysicalVolumeModel, depending how the user creates his/her scene.
0707         The scene tree is reviewed, and updated if necessary, at every pass of
0708         G4VSceneHandler::ProcessScene(). This is called a "kernel visit".
0709         A kernel visit is triggered by vis commands (e.g.,"/vis/viewer/rebuild")
0710         and by a viewer if deemed necessary. For example, a kernel visit may not
0711         be required for a rotation, zoom, etc., but required for a change from
0712         surface to wireframe. The idea is that the scene tree can be passed to a
0713         GUI, the GUI can create a tree widget, and interactions with it raise UI
0714         commands such as "/vis/scene/activateModel", "/vis/set/touchable" and
0715         "/vis/touchable/set/"...
0716         The viewer decides if this requires a kernel visit, otherwise it must
0717         update 'fSceneTree' itself (utilities are provided).
0718       o Add code to build a scene tree in G4VSceneHandler::ProcessScene().
0719       o First implementation of a no-frills GUI-side interactive scene tree.
0720         Works with touchables; can change the visibility of a touchable.
0721         A view can be prepared with a graphical driver, such as OGL, TSG, OI
0722         or Vtk, and transferred it to Ray Tracer, TOOLSSG_OFFSCREEN, etc.,
0723         simply with "/vis/open RayTracer", etc.
0724       o Implemented "generic cutaways". It relies on the Boolean Processor
0725         which handles the Boolean operations on polyhedral representations of
0726         solids. Clips, sections and cutaways will now be available to *all*
0727         viewers (OGL viewers still use OpenGL clip planes).
0728       o New scene tree: implementing expand and collapse of touchables.
0729         Expand only to depth 2, thereafter sub-trees are collapsed.
0730         When the scene tree is expanded or collapsed it is remembered in
0731         the viewer-side scene tree and may be propagated to other viewers.
0732       o G4VSceneHandler: protect material pointer used to name G4Mesh item.
0733         If null, use name of container. It avoids cases of crash when a G4Mesh
0734         is in a parallel world.
0735         In RequestPrimitives(), improved test for invalid Boolean solid.
0736         In CreateSectionSolid() and CreateCutawaySolid(), improved algorithms.
0737       o In G4VViewer::SceneTreeScene::FindOrInsertTouchable(), fixed Coverity
0738         warning. Augmented to handle depth of descent.
0739       o G4VVisCommand: added static G4SceneTreeItem 'fExistingSceneTree', used
0740         for remembering scene tree of previous viewer.
0741       o G4VisCommandsSceneHandler: if there is an existing viewer, store scene
0742         tree.
0743       o G4VisCommandsViewer: if there is an existing viewer, store scene tree.
0744         Copy existing scene tree to the new viewer.
0745       o With "/vis/viewer/select", call UpdateGUISceneTree() to ensure the
0746         scene tree of the newly selected viewer is in sync.
0747       o G4VViewer: add scene tree and related functionality.
0748         Improved G4VViewer::SceneTreeScene::FindOrInsertTouchable().
0749         Simplified ghost-touchable transition.
0750         Added "utility" function UpdateGUISceneTree().
0751       o Correct Special Mesh Rendering Option default.
0752       o G4ViewParameters: initialise fSpecialMeshRenderingOption'
0753         (meshAsDefault).
0754       o Default special mesh rendering for viewers which can render all objects.
0755       o Improved vis-side scene tree creation and maintenance.
0756       o G4VisCommandsTouchableSet: with "/vis/touchable/set/visibility",
0757         added one-time warning about circumstances in which the command may
0758         appear not to work.
0759       o In G4VisExecutive, temporary divert OGL to TSG for allowing support of
0760         Qt6. Declare TOOLSSG_[X11,XT,WINDOWS,QT]_ZB drivers.
0761       o In G4VisCommandsTouchable, introduced UI command
0762          "/vis/touchable/twinkle".
0763       o Improved layout in G4VViewer::SceneTreeScene::FindOrInsertModel().
0764       o Code cleanup in G4VUserVisAction: made protected Draw() virtual method;
0765         improved comments.
0766       o Fixed compilation warning for implicit type conversion on
0767         macOS/XCode>=14.1.
0768     + modeling:
0769       o G4VModel: removed unnecessary reference to G4PhysicalVolumeModel.
0770       o G4PseudoScene: added G4VisAttributes (this was always available, but
0771         never previously made onward available to sub-classes).
0772       o Added static utility G4PhysicalVolumeModel::GetPVNamePathString().
0773       o Updates to implement "generic cutaways".
0774       o G4PhysicalVolumeModel: in DescribeSolid(), improved tests for invalid
0775         Boolean solid in code for section and cutaway. Fixed Coverity warnings.
0776     + OpenGL:
0777       o Removed obsolete G4OPENGL_VERSION_2 symbol and G4OpenGLVboDrawer class.
0778       o Make "modeling" module a private dependency, unless Qt is active, when
0779         it must be public.
0780       o First implementation of a no-frills GUI-side scene tree.
0781       o G4OpenGLQtViewer: disabled "old" scene tree.
0782       o No longer link to QtPrintSupport, which is not used in the toolkit.
0783       o Removed support for Qt less than version 5.9. Clarify remaining version
0784         checks using QT_VERSION_CHECK instead of raw hex.
0785       o Minimum build and code changes required to compile/link against both
0786         Qt5 and Qt6.
0787     + OpenInventor:
0788       o First implementation of a no-frills GUI-side scene tree.
0789       o No longer link to QtPrintSupport, which is not used in the toolkit.
0790       o Support compilation against Qt5 and Qt6.
0791     + Qt3D
0792       o Support compilation against Qt5 and Qt6. 
0793     + ToolsGS:
0794       o First version of the TSG_[QT,X11,XT,WINDOWS]_ZB sub drivers, allowing
0795         the rendering with g4tools/zbuffer (the same used by TSG_OFFSCREEN).
0796         They allow interactive 3D rendering bypassing native graphics
0797         systems. It is fully standalone over the standard C/C++ libs and the
0798         standard pixmap logic of X11, Xt, Qt, Windows, running only the CPU.
0799         Tested with Qt5 and Qt6.
0800       o First implementation of a no-frills GUI-side scene tree.
0801       o No longer link to QtPrintSupport, which is not used in the toolkit.
0802       o Link to Qt6OpenGLWidgets library when using Qt6 to access QOpenGLWidget.
0803       o Fixed Coverity warnings.
0804     + Vtk:
0805       o Refactor of VTK viewer with pipelines, geometry stores; improved 2D
0806         rendering, streamlined VTK cmake components.
0807       o G4VtkSceneHandler: text justification to given coordinate.
0808       o Separated pipelines into source and include files.
0809       o Use class inheritance for pipelines G4VVtkPipeline and added ability
0810         to chain pipelines.
0811       o Separated interactive cutters, clippers.
0812       o 2D transparent image overlay.
0813       o Improved geant4 commands (/vis/vtk/..).
0814       o Added vtkUnstructuredGridPipeline for special mesh rendering.
0815       o Applied clang-tidy and clang-format fixes.
0816       o Removed dead code and no-ops.
0817       o Fixed compilation warnings for implicit type conversions on
0818         macOS/XCode>=14.1.
0819 
0820   o Data Sets:
0821     ---------
0822     + G4EMLOW-8.4:
0823       o Updated microelec data for electrons.
0824       o Updated DNA data.
0825       o Added README to all subdirectories.
0826     + G4ABLA-3.3:
0827       o New file named "mass2016.dat" with experimental atomic mass evaluation
0828         from 2016.
0829       o New file "mass2020.dat" with the binding energies from the atomic mass
0830         evaluation AME2020.
0831     + G4INCL-1.1:
0832       o Addec new files for antiproton annihilation at rest of INCL.
0833 
0834   o Examples:
0835     --------
0836     + Updated reference outputs, macros, READMEs and scripts.
0837     + advanced/eFLASH_radiotherapy
0838       o Removed visualization in batch mode.
0839     + advanced/fastAerosol
0840       o General code cleanup, including clang-tidy.
0841     + advanced/ICRP110_HumanPhantoms
0842       o Now building two executables: ICRP110phantoms and ICRP110standalone.
0843         ICRP110standalone allows allows visualisation of the phantom without
0844         the overhead of the run manager and initialising of all the physics
0845         tables (i.e. cannot visualise trajectories).
0846       o standalone.mac: disable auto refresh *before* creating scene.
0847         For auto-refresh viewers, without this change the viewer attempts to
0848         draw the detector with the default view parameters, and in the case of
0849         this phantom, it overwhelms the graphics system.
0850       o This phantom should be displayed with special mesh rendering.
0851     + advanced/ICRP145_HumanPhantoms
0852       o Introduce ICRP145standalone. Building two executables: ICRP145phantoms
0853         and ICRP145standalone. ICRP145standalone allows visualisation of the
0854         phantom without the overhead of the run manager and physics tables
0855         and geometry initialisation. Of course, you cannot run or visualise
0856         trajectories. Disabled auto refresh *before* creating scene.
0857     + advanced/stim_pixe_tomography
0858       o New application for simulating three-dimensional STIM or PIXE tomography
0859         experiments. References: NIM Phys.Res. B (536) 2023: 38-44; 
0860         Phys. Med. (94) 2022: 85-93; Phys. Med. (65) 2019: 172-180.
0861     + advanced/xray_TESdetector
0862       o New example of the application of Geant4 in a space environment.
0863         It represents an x-ray detector derived from the X-IFU, the X-ray
0864         spectrometer designed and developed by the European Space Agency (ESA)
0865         for use on the ATHENA telescope. The main purpose of the simulation is
0866         the estimation of the particle radiation background impacting on the
0867         detector.
0868     + advanced/xray_SiliconPoreOptics
0869       o New example demonstrating an application of Geant4 in space environment.
0870         The geometry used in this example represents a single reflective pore
0871         used to simulate on a smaller scale the effect of the millions of pores
0872         forming the mirror of the ATHENA Silicon Pore Optics (SPO), as described
0873         in: V.Fioretti et al., STI: Ultraviolet to Gamma Ray. Vol.10699. SPIE,
0874         2018.
0875         The main purpose of the simulation is the estimation of the induced
0876         residual background at the pore exit caused by proton scattering at
0877         grazing angles.
0878     + basic/B4
0879       o In PrimaryGeneratorAction, default e-, 300 MeV.
0880       o RunAction: adjusted binning of histograms.
0881       o Updated run1.mac and run2.mac macros.
0882     + extended/biasing/ReverseMC01
0883       o Removed inclusion of unneeded and now obsolete G4strstreambuf header.
0884     + extended/electromagnetic/TestEm0
0885       o New input macro ion.mac.
0886       o RunAction: restore output format.
0887       o Code revision of all headers.
0888     + extended/electromagnetic/TestEm1
0889       o New input macro etaDecay.mac.
0890       o PhysicsList::AddRadioactiveDecay(): set ARM false.
0891       o Code revision of all headers.
0892     + extended/electromagnetic/TestEm2
0893       o Code revision of all headers.
0894     + extended/electromagnetic/TestEm3
0895       o Compute and plot energy leakage and total energy.
0896       o Run: fixed division by zero for the case if energy deposition
0897         in a layer is zero.
0898       o Code revision of all headers.
0899     + extended/electromagnetic/TestEm4
0900       o RunAction: print run conditions and histograms statistics.
0901       o Code revision of all headers.
0902     + extended/electromagnetic/TestEm5
0903       o Code revision of all headers.
0904     + extended/electromagnetic/TestEm7
0905       o Added extra macro for test muon dEdx and Range.
0906     + extended/electromagnetic/TestEm8
0907       o Applied clang-format and code revision of all headers.
0908     + extended/electromagnetic/TestEm11
0909       o Compute and plot energy leakage and total energy.
0910       o In PhysicsList::RadioactiveDecay(): setARM = false.
0911       o Revised headers.
0912     + extended/electromagnetic/TestEm12
0913     + extended/electromagnetic/TestEm13
0914     + extended/electromagnetic/TestEm14
0915       o Code revision of all headers.
0916     + extended/electromagnetic/TestEm18
0917       o Fix in destructor of StakingAction.
0918       o Code revision of all headers.
0919     + extended/hadronic/FlukaCern
0920       o New Geant4-FLUKA interface and two hadronic examples, providing access
0921         to FLUKA-Cern hadron-nucleus inelastic physics:
0922         - ProcessLevel/CrossSection: allows the study of Geant4 cross-sections,
0923           and FLUKA-Cern hadron-nucleus reaction cross-sections.
0924         - ProcessLevel/FinalState: shows how to simulate inelastic
0925           hadron-nucleus interactions, using Geant4 or FLUKA-Cern models.
0926     + extended/hadronic/Hadr01
0927       o Added UI commands to enable neutron general process and extra macro
0928         file.
0929       o HistoManager: added protection agains secondary zero-energy particles.
0930     + extended/hadronic/Hadr03
0931       o In main(), set ProduceFissionFragments to true.
0932       o PhysicsList: return to use QGSP_BIC_HP.
0933       o SteppingAction: added protection against secondaries.
0934       o Run::EndOfRun(): format adjustement.
0935       o Code revision of all headers.
0936     + extended/hadronic/Hadr04
0937       o PhysicsList: removed definition of meV.
0938       o Code revision of all headers.
0939     + extended/hadronic/Hadr05
0940       o Compute and plot Edep, Eleak, Etotal=Edep+Eleak.
0941     + extended/hadronic/Hadr06
0942       o Compute and plot total energy released.
0943       o Code revision of all headers.
0944     + extended/hadronic/Hadr07
0945       o Compute and plot Edep, Eleak, Etotal=Edep+Eleak.
0946     + extended/hadronic/Hadr10
0947       o In SteppingAction, protecting the argument of acos() to be within range.
0948     + extended/hadronic/ParticleFluence
0949       o Run, TrackingAction: replaced G4int with G4long for keeping the
0950         information on the multiplicity of particle production. This avoids
0951         rare cases of negative multiplicities due to integer overflow, seen for
0952         runs with at least 4000 events, in particular with heavy materials,
0953         such as Tungsten and Lead.
0954     + extended/medical/dna/dnadamage2
0955       o New example providing scoring of plasmid DNA strand breaks using the
0956         IRT method (J. Ramos-Mendez, et al., Medical Physics, 2020, 47(11),
0957         5919-5930).
0958         Extends the chem6 example by adding DNA molecule information and the
0959         scoring of Strand Breaks. Experimental conditions are considered such
0960         as oxygen and DMSO molar concentrations.
0961     + extended/medical/dna/icsd
0962       o PhysicsList: deleted unused models; apdated RegisterModel() function
0963         with new structure. Deleted G4DNAVacuumModel.
0964     + extended/medical/dna/moleculardna
0965       o Migrated data download to CERN EOS area for examples.
0966       o Added ability to read particles from a space phase file (csv).
0967       o Updated ecoli.mac file.
0968       o Overall code revision with clang-tidy.
0969     + extended/medical/dna/range
0970       o Added DNA materials.
0971       o Simplified PhysicsList.
0972       o Use G4RunManagerFactory in main().
0973     + extended/medical/dna/spower
0974       o Added DNA materials.
0975       o Simplified PhysicsList.
0976       o Added extra macro alpha.in.
0977       o Code cleanup in main().
0978     + extended/medical/dna/UHDR
0979       o New example showing how to activate the mesoscopic model in chemistry
0980         and combine with SBS model (Tran et al.,Int. J. Mol. Sci. 22 (2021)
0981         6023).
0982         It allows to simulate chemical reactions longtime (beyond 1 us) of
0983         post-irradiation.
0984     + extended/parameterisations/gflash
0985       o gflasha: use G4PhysListFactory for physics list initialization.
0986       o gflash2: removed unused statics from DetectorConstruction class.
0987       o Some code cleanup in gflash1,2,3,a.
0988       o Overall code revision with clang-tidy and clang-format.
0989     + extended/persistency/gdml/G01
0990       o Added comment in main() to demonstrate how to set alternative
0991         schema file for validation while parsing a GDML document.
0992     + extended/visualization/perspective
0993       o PerspectiveVisAction: fixed missing include for G4Transform3D header.
0994       o In PerspectiveVisAction header, removed unnecessary forward class
0995         declarations. Applied clang-format.
0996     + extended/visualization/standalone
0997       o Included an example of DrawGeometry. DrawGeometryVisAction shows how to
0998         visualise the geometry alone, i.e., without run manager and physics.
0999 
1000  ----------------------------------------------------------------------------
1001