File indexing completed on 2026-04-17 07:53:10
0001 <HTML>
0002 <HEAD>
0003 <TITLE>Geant4 11.4 Release Notes</TITLE>
0004 </HEAD>
0005 <BODY BGCOLOR='F0F0F0'>
0006
0007 <P> </P>
0008 <BR>
0009 <P> </P>
0010
0011 <P ALIGN="Center">
0012 <FONT SIZE="+4" COLOR="#238E23">
0013 <B>Geant4 11.4 Release Notes</B>
0014 </FONT>
0015
0016 <TABLE WIDTH="100%">
0017 <TR><TD ALIGN="Right">
0018 <FONT SIZE="-1" COLOR="#5C3317">
0019 <B><I>December 5<SUP>th</SUP>, 2025</I></B>
0020 </FONT>
0021 </TD></TR>
0022 </TABLE>
0023
0024 <BR><BR>
0025 <HR ALIGN="Center" SIZE="7%">
0026 <P>
0027 The code and binary libraries for the supported systems are available
0028 through our <A TARGET="ext" HREF="https://cern.ch/geant4/support/download">Source
0029 Code Web page</A>.
0030 </P>
0031 <P>
0032 <I>We are grateful for the efforts of Geant4 users who have provided
0033 detailed feedback or comprehensive reports of issues.
0034 We thank in particular those who have contributed corrections,
0035 improvements or developments included in this release.</I>
0036 </P>
0037 <P>
0038 Please refer to the
0039 <A TARGET="ext" HREF="https://cern.ch/geant4/support/user_documentation">Geant4
0040 User Documentation</A> for further information about using Geant4.
0041 </P>
0042
0043 <H2><I>Contents</I></H2>
0044 <OL>
0045 <LI><A HREF="#1.">Supported and Tested Platforms</A></LI>
0046 <LI><A HREF="#2.">Supported CLHEP, VecGeom and PTL versions</A></LI>
0047 <LI><A HREF="#3.">Items for migration of the user code</A></LI>
0048 <LI><A HREF="#4.">New Developments and Capabilities</A></LI>
0049 <LI><A HREF="#5.">Expected effects on physics and performance</A></LI>
0050 <LI><A HREF="#6.">Known Run-Time Problems and Limitations</A></LI>
0051 <LI><A HREF="#7.">Compilation Warnings</A></LI>
0052 <LI><A HREF="#8.">Geant4 Software License</A></LI>
0053 <LI><A HREF="#9.">Detailed list of changes and fixes</A></LI>
0054 </OL>
0055
0056 <P> </P>
0057 <A NAME="1."></a>
0058 <HR>
0059
0060
0061
0062 <H2>1. Supported and Tested Platforms</H2>
0063
0064 Platforms:
0065 <UL>
0066 <LI>Linux, gcc-15.2.0.<BR>
0067 Tested on 64 bit architectures (Intel or AMD) with
0068 Alma Linux 9 (based on RedHat Linux Enterprise 9).</LI>
0069 <LI>macOS 26.1 Tahoe with Apple LLVM/Clang-17.<BR>
0070 Tested on 64 bit architectures (Intel or Apple Silicon).</LI>
0071 <LI>Windows-11 with Visual C++ 14.4 (Visual Studio 2022), 64 bits.</LI>
0072 </UL>
0073
0074 More verified and tested configurations (64 bits):
0075 <UL>
0076 <LI>Linux, 11.5/12.1/13.2/14.2, clang-19/20</LI>
0077 <LI>Linux, Intel-icx 2025.3</LI>
0078 <LI>macOS 13.7 Ventura with Apple LLVM/clang-15</LI>
0079 <LI>macOS 14.7 Sonoma with Apple LLVM/clang-16</LI>
0080 </UL>
0081
0082 <P> </P>
0083 <A NAME="2."></A>
0084 <HR>
0085
0086
0087
0088 <H2>2. Supported CLHEP, VecGeom and PTL versions</H2>
0089
0090 This release of Geant4 has been verified with
0091 <A TARGET="ext" HREF="https://cern.ch/clhep/">CLHEP</A>, release <B>2.4.7.2</B>.
0092 Use of a different CLHEP version may cause incorrect simulation results.<BR>
0093 NOTE: an internal module of the relevant CLHEP classes is provided and can be
0094 used as alternative to an external CLHEP library installation.<BR>
0095 A configuration option allows a Geant4 installation to use the
0096 <A TARGET="ext" HREF="https://gitlab.cern.ch/VecGeom/VecGeom/">VecGeom Library</A>
0097 primitives, to replace the original Geant4 solids.<BR>
0098 VecGeom version <B>2.0.0</B> can be adopted when using such configuration.<BR>
0099 PTL version <B>3.0.1</B> or later is required for external installation of the
0100 <A TARGET="ext" HREF="https://github.com/jrmadsen/PTL">PTL tasking library</A>.<BR>
0101 CMake <B>3.16</B> is the minimum version required to build Geant4.
0102
0103 <P> </P>
0104 <A NAME="3."></A>
0105 <HR>
0106
0107
0108
0109 <H2>3. Items for migration of the user code</H2>
0110
0111 Listed here is some relevant information on developments included in this
0112 release.
0113 Note that for all users a full re-installation of libraries (or a full
0114 re-compilation) and a re-compilation of user applications is required.
0115
0116 <P> </P>
0117 <B>General</B>
0118 <P> </P>
0119 <UL>
0120 <LI>The build of the <TT>G4processes</TT> library has been split into two
0121 parts, <TT>G4processes_hadronic</TT> for the hadronic part and
0122 <TT>G4processes_core</TT> for the remainder. <TT>G4processes</TT> remains
0123 valid as interface through CMake supporting creation of categories that
0124 are just an interface to other categories.</LI>
0125 <LI>The default configuration now enables use of Qt6 when selecting Qt support
0126 for visualisation. The user must set <TT>GEANT4_USE_QT_QT5</TT> in
0127 configuration in order to force find/use of Qt5 instead.</LI>
0128 </UL>
0129
0130 <P> </P>
0131 <B>Electromagnetic and optical physics</B>
0132 <P> </P>
0133 <UL>
0134 <LI>New dataset <TT>G4EMLOW-8.8</TT> is required and should be used.</LI>
0135 </UL>
0136
0137 <P> </P>
0138 <B>Hadronic physics</B>
0139 <P> </P>
0140 <UL>
0141 <LI>New hadronic datasets <TT>G4PhotonEvaporation-6.1.2, G4INCL-1.3,
0142 G4PARTICLEXS-4.2</TT> are required and should be used.</LI>
0143 <LI>Note that since release 11.3.2, it has been introduced an option to roll
0144 back the Bertini-like intra-nuclear cascade model (BERT) as it was in
0145 Geant4 version 11.2. This is possible via the C++ interface:
0146 <TT>G4HadronicParameters::Instance()->SetBertiniAs11_2(true)</TT>.
0147 The motivation is that not all thin-target data show consistently that the
0148 developments in BERT model made in version 11.3 are improving the agreement
0149 with simulation.</LI>
0150 </UL>
0151
0152 <P> </P>
0153 <B>Run</B>
0154 <UL>
0155 <LI>In G4PhysicsListHelper, changed ordering of processes: for X-Ray production
0156 using ordering parameter 100 for post step instead of 1000; fixed ordering
0157 for muon capture at rest.
0158 This change may affect users' hard-coded physics-lists.</LI>
0159 </UL>
0160
0161 <P> </P>
0162 <B>Visualization and Modeling</B>
0163 <P> </P>
0164 <UL>
0165 <LI>Removed HepRepFile and Qt3D visualisation drivers, no longer viable
0166 to develop and maintain.</LI>
0167 </UL>
0168
0169 <P> </P>
0170 <B>Data Sets</B>
0171 <P> </P>
0172 <UL>
0173 <LI>This release introduces new data set versions.
0174 Please see the corresponding details in
0175 <A href="#data-notes">Section 9</A> of this document.
0176 <UL>
0177 <LI>New data set versions: <TT>G4PhotonEvaporation-6.1.2, G4INCL-1.3,
0178 G4CHANNELING-2.0, G4EMLOW-8.8, G4PARTICLEXS-4.2</TT>.</LI>
0179 <LI>In order to use <TT>ParticleHP</TT> for charged particles
0180 (protons, deuterons, tritons, He3 and alphas), an <U>optional</U> data
0181 set <TT>G4TENDL-1.4</TT> is required, and can be optionally
0182 downloaded in addition.</LI>
0183 <LI><U>Optional</U> nuclear data sets for use with the LEND (Low Energy
0184 Nuclear Data) Cross Section and Model can be optionally downloaded
0185 here:<BR>
0186 <A HREF="https://cern.ch/geant4-data/datasets/LEND_GNDS2.0_ENDF.BVII.1.tar.gz">LEND_GNDS2.0_ENDF.BVII.1</A> (2.87 Gb),
0187 <A HREF="https://cern.ch/geant4-data/datasets/LEND_GNDS2.0_ENDF.BVIII.0.tar.gz">LEND_GNDS2.0_ENDF.BVIII.0</A> (4.24 Gb),
0188 <A HREF="https://cern.ch/geant4-data/datasets/LEND_GNDS2.0_ENDF.BVIII.1.tar.gz">LEND_GNDS2.0_ENDF.BVIII.1</A> (5.78 Gb).<BR>
0189 The <TT>G4LENDDATA</TT> environment variable should be used to switch
0190 the path to the appropriate nuclear data library unpacked and
0191 installed.</LI>
0192 </UL></LI>
0193 </UL>
0194
0195 <A NAME="4."></A>
0196 <HR>
0197
0198 <!-- ============================================== -->
0199
0200 <H2>4. New Developments and Capabilities </H2>
0201
0202 <B>General</B>
0203 <UL>
0204 <LI>Enabled worker threads to receive next sub-event before completing the
0205 current sub-event in G4WorkerSubEvtRunManager and G4EventManager.</LI>
0206 <LI>New utility class G4VSIntegration, for integration of probability density
0207 function and dynamically sampling of final state.</LI>
0208 <LI>New UI commands to allow limiting the number of warning messages to be
0209 printed out during a run.</LI>
0210 <LI>Introduced a new method <TT>SetDefaultClassification()</TT> in
0211 G4RunManager which enables the default behavior of the stack without
0212 implementing a G4VUserStackingAction.</LI>
0213 </UL>
0214
0215 <B>Geometry & Field</B>
0216 <UL>
0217 <LI>Enabled voxelisation parallelism by default in G4GeometryManager, when
0218 MT/tasks are enabled. Enabled also for potential 2nd (and later) calls.</LI>
0219 <LI>Extended UI command <TT>/geometry/test/run</TT> to support optional overlap
0220 check mode to check for overlaps in the volume tree without duplication in
0221 identical logical volumes.</LI>
0222 <LI>Reimplementated the QSS integration methods, improving readability.
0223 Third order QSS3 method is now available.</LI>
0224 <LI>Revised the default values of parameters in G4FieldParameters, consistent
0225 with previous practice in the relevant classes' constructors. Added methods
0226 to access the field, stepper and equation types in G4FieldParameters.</LI>
0227 <LI>Reorganised and enriched comments in headers to follow Doxygen style in
0228 geometry modules.</LI>
0229 <LI>In G4Box, optimised normal calculation in <TT>DistanceToOut()</TT>.</LI>
0230 <LI>Code optimization in <TT>GetPointOnSurface()</TT> in specific shapes.
0231 Optimised surface area and cubic volume calculation of several geometrical
0232 primitives.</LI>
0233 </UL>
0234
0235 <B>Intercoms</B>
0236 <UL>
0237 <LI>New <TT>@@</TT> keyword to be used in UI commands taking a macro file name;
0238 it allows to create a temporary macro file with the commands being
0239 defined following it, until a <TT>/control/endRecord</TT> command is
0240 specified.</LI>
0241 </UL>
0242
0243 <B>Particles</B>
0244 <UL>
0245 <LI>Updated particle properties to PDG-2025.</LI>
0246 </UL>
0247
0248 <B>Electromagnetic physics</B>
0249 <UL>
0250 <LI>Implemented new option to enable/disable fluctuation of energy loss per
0251 G4Region.</LI>
0252 <LI><U>Optical photons</U>
0253 <UL>
0254 <LI>First implementation of the model approach for X-Ray processes
0255 Cerenkov and Scintillation processes. Their new base class is
0256 G4VXRayModel.</LI>
0257 <LI>Build the integral tables only for materials that have non-empty
0258 material property tables in G4Scintillation and G4Cerenkov.</LI>
0259 <LI>To enable the generation of a burst of optical photons (via
0260 scintillation or Cerenkov radiation), and their propagation, created
0261 new class G4QuasiOpticalPhoton as a G4ParticleDefinition. Defined
0262 related processes G4QuasiCherenkov and G4QuasiScintillation.</LI>
0263 <LI>Code refactoring and optimisations in G4OpBoundaryProcess.</LI>
0264 </UL></LI>
0265 <LI><U>Geant4-DNA</U>
0266 <UL>
0267 <LI>Introduced usage of the new ion ionisation model in DNA Opt8 physics
0268 configuration.</LI>
0269 <LI>New class G4DNABornIonisationModel, a new implementation of the Born
0270 model using a new class G4DNASamplingTable, which allows the sharing
0271 of sampling data between threads.</LI>
0272 <LI>Extended G4DNAELSEPAElasticModel in G4DNA up to 10 MeV for water.</LI>
0273 <LI>New class G4ChemReboundTransportation to handle the rebound
0274 transportation of the molecule.</LI>
0275 </UL></LI>
0276 <LI>New G4LowPAIH2O model for dE/dx in water for p and e-.</LI>
0277 <LI>Updated Reverse MC simulation to work in MT mode.</LI>
0278 </UL>
0279
0280 <B>Hadronic physics</B>
0281 <UL>
0282 <LI>It is now possible to distinguish quasi-elastic from diffractive tracks
0283 in the Fritiof (FTF) string model: the method in G4Track
0284 <TT>GetCreatorModelID()</TT> returns <TT>21350</TT> for FTF quasi-elastic,
0285 and <TT>21600</TT> for FTF diffraction.<BR>
0286 Note: for QGS-based physics lists the separate, dedicated quasi-elastic
0287 model produces tracks with model-ID <TT>21300</TT>; tracks produced by QGS
0288 have model-ID <TT>22200</TT> (for both diffractive and non-diffractive
0289 interactions).</LI>
0290 <LI>In G4HadronicProcess, removed warning for the case when K0 and anti-K0
0291 are transformed into K0S or K0L.</LI>
0292 <LI>Updated algorithms for the integration of probabilities and sampling of
0293 kinetic energy of the emitted fragments in hadronic de-excitation and
0294 pre-equilibrium. Expected more accurate spectra.</LI>
0295 <LI>New alternative hadronic de-excitation FermiBreakUp model, G4FermiBreakUpAN,
0296 and support classes. This alternative option can be enabled via C++
0297 interface in G4DeexPrecoParameters:
0298 <TT>SetFermiBreakUpType(G4FermiBreakUpType::bModelAN)</TT>.</LI>
0299 <LI>Extension of the INCLXX model to handle anti-neutron at rest and in-flight.
0300 This is used by default in INCLXX-based physics lists.</LI>
0301 <LI>In G4ChargeExchange, implemented the angular distribution of pion charge
0302 exchange according to the V. Lubovitsky parameterisation for different
0303 reaction channels.</LI>
0304 <LI>Major update of GIDIplus interface in LEND hadronic model, with refactored
0305 C++ code, including use of official GNDS formatted data. Added feature for
0306 high-fidelity gamma cascades following reactions such as neutron capture
0307 and inelastic scattering.</LI>
0308 </UL>
0309
0310 <B>Physics Lists</B>
0311 <UL>
0312 <LI>For the three physics lists QGSP_BIC_HP, QGSP_BIC_HPT and QGSP_BIC_AllHP,
0313 whereby the electromagnetic physics option 4 is used by default, it is now
0314 possible to utilise the electromagnetic standard (i.e. option 0) via the
0315 physics list factory by adding the suffix <TT>_EM0</TT> to their names
0316 (i.e. QGSP_BIC_HP_EM0, QGSP_BIC_HPT_EM0, and QGSP_BIC_AllHP_EM0).</LI>
0317 <LI>The INCLXX-based physics lists (e.g. FTFP_INCLXX and QGSP_INCLXX) are
0318 using now INCLXX (instead of FTFP as before) for the annihilation (at rest
0319 and in-flight) of anti-neutrons.</LI>
0320 <LI>The optional NuDEX nuclear de-excitation model (introduced in Geant4
0321 version 11.3 only for neutron capture in the physics list QGSP_BERT_HP)
0322 is available also for neutron capture in the QGSP_BIC_HP and QGSP_BIC_AllHP
0323 physics lists.</LI>
0324 <LI>Added G4HadronPhysicsLEND in physics-lists to configure neutron and photon
0325 induced processes from LEND.</LI>
0326 <LI>The G4EmDNABuilder class provides configuration of DNA physics for all
0327 particles and all standard + DNA configurations.</LI>
0328 <LI>Recommended DNA physics lists are: G4EmDNAPhysics_option2,
0329 G4EmDNAPhysics_option4, G4EmDNAPhysics_option6, G4EmDNAPhysics_option8.</li>
0330 <LI>For electrons the upper limit of DNA models is <TT>1 MeV</TT>.
0331 For protons and ions the upper limit of DNA models is <TT>300 MeV/u</TT>.
0332 For higher energy the standard physics is used.</LI>
0333 </UL>
0334
0335 <B>Visualization and Interfaces</B>
0336 <UL>
0337 <LI>Updated g4tools and ToolsGS visualisation driver to use OpenGL-3.2 when
0338 co-working with Vtk.</LI>
0339 <LI>First version of generic time windowing of trajectory slices in
0340 visualisation. Introduced Time Window tab in Qt UI.</LI>
0341 <LI>Introducing RayTracerQt visualisation driver, enabled when GEANT4_USE_QT
0342 configuration is enabled.</LI>
0343 <LI>Set default configuration to use Qt6 when selecting Qt support.
0344 User must set GEANT4_USE_QT_QT5 to force find/use of Qt5.</LI>
0345 <LI>Make the TSG driver the "flagship" visualization driver.</LI>
0346 <LI>Re-instated transparency slider in visualization GUI.</LI>
0347 <LI>In G4OpenGLQtViewer, fixed the original pick feature, which was
0348 inadvertently broken, to show pick info window.</LI>
0349 <LI>General optimization of zoom behavior in visualization when using mouse
0350 wheel.</LI>
0351 </UL>
0352
0353 <B>Examples</B>
0354 <UL>
0355 <LI>Introduced the CaloDiT pre-trained ML model for fast simulation
0356 in <I>Par04</I> extended example, offering greater accuracy.</LI>
0357 <LI>New advanced example <I>IAEAphsp</I> demonstrating how to use IAEAphsp
0358 files as input source (i.e. as a primary generator) and how to produce
0359 IAEAphsp outputs at given scoring planes. Reference paper:
0360 M.A. Cortes-Giraldo et al., Int J Radiat Biol 88(1-2): 200-208 (2012).</LI>
0361 <LI>New advanced example <I>microelec_SEY</I> simulating the passage of
0362 incident electrons [10eV, 10keV] in a stack of 6 layers, where thicknesses
0363 and material nature can be user defined. The number of electrons re-emitted
0364 by the irradiated surface is counted by a spherical detector surrounding
0365 the whole geometry and providing the SEY rate in a csv file as a function
0366 of the incident energy.</LI>
0367 <LI>New extended example for channeling, <I>ch5</I>, primarily designed to
0368 simulate positron sources based on oriented crystals.</LI>
0369 <LI>New G4DNA extended examples: <I>microtrack</i>, implementing a geometry to
0370 calculate microdosimetry quantities for ion tracks in liquid water at a
0371 given energy, ensuring secondary electron equilibrium when needed;
0372 <I>molcounters</I>, showing how to use the new molecule counter manager
0373 system and how to write custom molecule counters; <I>phasespace</I>,
0374 showing how to simulate particle tracks in a cube of liquid water
0375 containing a scoring sphere, placed in its centre; <I>radial</I>,
0376 showing how to simulate radial dose profiles in liquid water from incident
0377 ions using the Geant4-DNA physics processes and models.</LI>
0378 </UL>
0379
0380 <A NAME="5."></A>
0381 <HR>
0382
0383
0384
0385 <H2>5. Expected effects on physics and computing performance</H2>
0386
0387 <B>Electromagnetic physics</B>
0388 <UL>
0389 <LI>Updated Goudsmit-Saunderson multiple-scattering model to optionally use the
0390 most accurate algorithm; updated G4EmStandardPhysicsGS according to the
0391 changes in the GS multiple scattering model, the standard GS EM constructor
0392 is expected to provide accurate e-/e+ simulations now (similar accuracy as
0393 in Livermove, Penelope and option 4).</LI>
0394 <li>It is expected that less memory will be used by G4Cerenkov and
0395 G4Scintilation processes.</li>
0396 <li>G4EmCalculator: now providing correct computation of dEdx for ions.</li>
0397 </UL>
0398
0399 <B>Hadronic physics</B>
0400 <UL>
0401 <LI>Hadronic showers remain stable, for all physics lists.</LI>
0402 </UL>
0403
0404 <P> </P>
0405 <A NAME="6."></A>
0406 <HR>
0407
0408
0409
0410 <H2>6. Known Run-Time Problems and Limitations</H2>
0411 For a complete list of outstanding run-time problems and to submit any
0412 problem you may find while running this version of Geant4, please refer
0413 to the
0414 <A TARGET="ext" HREF="https://bugzilla-geant4.kek.jp/">Geant4 Problem
0415 Reporting System</A>.
0416
0417 <P> </P>
0418 <A NAME="7."></A>
0419 <HR>
0420
0421
0422
0423 <H2>7. Compilation Warnings</H2>
0424
0425 There may be a few compilation warnings on some platforms.
0426 We do not believe that any of these lead to incorrect run-time behaviour.
0427
0428 <P> </P>
0429 <A NAME="8."></A>
0430 <HR>
0431
0432
0433
0434 <H2>8. Geant4 Software License</H2>
0435
0436 A Software License applies to the Geant4 code.
0437 Users must accept this license in order to use it.<BR>
0438 The details and the list of copyright holders is available at
0439 <A href="https://cern.ch/geant4/license">https://cern.ch/geant4/license</A>
0440 and also in the text file <TT>LICENSE</TT> distributed with the source code.
0441
0442 <P> </P>
0443 <A NAME="9."></A>
0444 <HR>
0445
0446
0447
0448 <H2>9. Detailed list of changes and fixes</H2>
0449
0450 These are the main new features/fixes included in this release since the
0451 last patched public release (for more detailed lists of fixes/additions,
0452 please refer to the corresponding History files provided in most packages):
0453
0454 <P> </P>
0455
0456 <A NAME="conf-notes">
0457 <H3><I>Configuration</I></H3></A>
0458 <UL>
0459 <LI><U>CMake</U>
0460 <UL>
0461 <LI>Set default configuration to use Qt6 when selecting Qt support.
0462 User must set <TT>GEANT4_USE_QT_QT5</TT> to force find/use of Qt5.</LI>
0463 <LI>Support creation of categories that are just an interface to other
0464 categories. Needed to support splitting of libraries whilst retaining
0465 old target names for backward link/build compatibility.</LI>
0466 <LI>Include external categories (G4zlib etc) in link resolution for unit
0467 test executables.</LI>
0468 <LI>Export CMAKE_EXPORT_COMPILE_COMMANDS setting from toolkit to the build
0469 of any test done by geant4_add_test to assist use of clang-tidy and
0470 other tooling.</LI>
0471 <LI>Add ENVIRONMENT to any build step of geant4_add_test for consistency
0472 and to allow easier propagation of additional build settings.</LI>
0473 <LI>Added option to add shorten-64-to-32 warning to command line macOS
0474 build flags to match Xcode.</LI>
0475 <LI>Updated clang-format settings and removed obsolete G4ClangFormat module.
0476 Use of clang-format will be through IDEs or pre-commit rather than build
0477 system going forward.</LI>
0478 <LI>Removed all references to HepRepFile and Qt3D visualisation drivers.</LI>
0479 <LI>New data sets <TT>G4PhotonEvaporation-6.1.2</TT>,
0480 <TT>G4CHANNELING-2.0</TT>, <TT>G4INCL-1.3</TT>,
0481 <TT>G4EMLOW-8.8</TT>, <TT>G4PARTICLEXS-4.2</TT>.</LI>
0482 <LI>Updated tag-IDs for 11.4.</LI>
0483 </UL></LI>
0484 <LI><U>GNUmake</U>
0485 <UL>
0486 <LI>Updated system scripts for Qt settings: set Qt6 as default.</LI>
0487 <LI>Correction in generation of geant.[c]sh and geant4.bat on Windows.</LI>
0488 <LI>Replaced linking to <TT>G4processes</TT> library with linking to the
0489 two components it has been split into.</LI>
0490 <LI>Removed all references to HepRepFile and Qt3D visualisation drivers.</LI>
0491 </UL></LI>
0492 </UL>
0493
0494 <A NAME="ana-notes">
0495 <H3><I>Analysis</I></H3></A>
0496 <UL>
0497 <LI>New implementation of generic 'G4Analysis::GetHnType()' and 'IsProfile()'
0498 functions, which do not rely on the histogram/profile name position in
0499 the long type name provided via tools 's_class()'.</LI>
0500 <LI><U>Internal changes</U>:
0501 <UL>
0502 <LI>Modernized g4tools macro-based for loops with range-based for.</LI>
0503 <LI>Use current non-deprecated g4tools n-tuple columns interface in XML.</LI>
0504 </UL></LI>
0505 <LI><U>Fixes</U>:
0506 <UL>
0507 <LI>Fix in G4THnMessenger; improved top directory description:
0508 this fixes "...Title not available..." description in the command tree.</LI>
0509 <LI>In G4VAnalysisManager, fixed Coverity reported defect in
0510 <TT>SetNtupleManager()</TT>: added protection against de-reference
0511 of potentially null field.</LI>
0512 <LI>Added a protection against a call to non-existing n-tuple manager in
0513 G4VAnalysisManager. Fixes a problem happening when all created n-tuples
0514 are inactivated and a file is not open.</LI>
0515 </UL></LI>
0516 </UL>
0517
0518 <A NAME="digits-notes">
0519 <H3><I>Digitization & Hits</I></H3></A>
0520 <UL>
0521 <LI>Implemented mechanism to weight score in G4VPrimitiveScorer.
0522 The weighting is activated with 'scoreWeighted' option (default is off).
0523 The applied weighting function is defined via std::function which can be
0524 set via a new setter method. The weighting function is taken into account
0525 only in the G4PSCellFlux scorer type.</LI>
0526 </UL>
0527
0528 <A NAME="emstd-notes">
0529 <H3><I>Electromagnetic Processes</I></H3></A>
0530 <UL>
0531 <LI><B>Adjoint</B>
0532 <UL>
0533 <LI>In G4ContinuousGainOfEnergy, updated signature of
0534 <TT>CorrectionsAlongStep()</TT>.</LI>
0535 <LI>Fixed compilation warning on Intel/icx compiler for overlapping
0536 comparison on condition in G4AdjointAlongStepWeightCorrection.</LI>
0537 </UL></LI>
0538 <LI><B>DNA</B>:
0539 <UL>
0540 <LI>Added new G4DNARuddIonisationDynamicModel, which uses charge from
0541 G4DynamicParticle. The model is applicable for all ions.</LI>
0542 <LI>G4DNABornIonisationModel: new implementation of the Born model using
0543 G4DNASamplingTable class; use stationary and fast flags from EM
0544 parameters.</LI>
0545 <LI>G4DNARuddIonisationModel, G4DNABornIonisationModel1 and
0546 G4DNABornIonisationModel2: fixed definition of the stationary code via
0547 G4EmParameters.</LI>
0548 <LI>Extended G4DNAELSEPAElasticModel up to <TT>10 MeV</TT> for water.
0549 Requires new data-set G4EMLOW-8.8.</LI>
0550 <LI>Force cross-section to zero below limit of validity of
0551 G4DNACPA100ElasticModel.</LI>
0552 <LI>G4DNASamplingTable, new class allowing the sharing of sampling data
0553 between threads.</LI>
0554 <LI>Enabled atomic de-excitation in stationary regime for Rudd and Born
0555 models.</LI>
0556 <LI>Updated IRT-syn model for high LET applications.
0557 Fixed the IRT_syn model (Stepper) to ensure it does not use minTimeStep
0558 (default = 1 ps) when DNA reactions do not yet share the same
0559 minTimeStep (used to optimize the chemistry).</LI>
0560 <LI>Fixed the missed Equilibrium process in G4DNAMakeReaction for
0561 particle-based models (SBS, IRT_syn).</LI>
0562 <LI>Correction in the G4DNAScavengerProcess for IRT-syn model.</LI>
0563 <LI>Created G4ChemReboundTransportation to handle the rebound transportation
0564 of the molecule.</LI>
0565 <LI>Replaced the G4MoleculeCounter singleton with G4MoleculeCounterManager
0566 for managing counters.</LI>
0567 <LI>Replaced <TT>shared_ptr</TT> with <TT>unique_ptr</TT> and raw for
0568 manager counters.</LI>
0569 <LI>In G4PhysChemIO, removed dependency on <TT>analysis</TT> module.</LI>
0570 <LI>Deleted exception of no reactant (or reactions for the defined molecules)
0571 that should return nullptr for no reaction data.</LI>
0572 </UL></LI>
0573 <LI><B>Low Energy</B>
0574 <UL>
0575 <LI>G4LivermorePhotoElectricModel: reorganisation of initialisation and
0576 data destruction.</LI>
0577 <LI>In G4AtomicTransitionManager, G4UAtomicDeexcitation, use
0578 <TT>std::size_t</TT> and few other cosmetic changes.</LI>
0579 <LI>G4IonParametrisedLossModel: updated computation of ion effective charge
0580 according to modifications in electromagnetic/utils.
0581 Addressing problem report
0582 <A href="https://bugzilla-geant4.kek.jp/show_bug.cgi?id=2664">#2664</A>.</LI>
0583 <LI>G4MicroElecElasticModel_new, G4MicroElecInelasticModel_new,
0584 G4MicroElecLOPhononModel and G4MicroElecSurface: updated models using
0585 more data files.</LI>
0586 <LI>In G4hIonEffChargeSquare, fixed reported Coverity defect.</LI>
0587 <LI>Fixed compilation warnings on Intel/icx compiler for overlapping
0588 comparison on condition in G4eIonisationSpectrum, by removing checks
0589 on numerical condition which never happens.</LI>
0590 </UL></LI>
0591 <LI><B>Muons</B>
0592 <UL>
0593 <LI>G4RiGeMuPairProductionModel, G4RiGeAngularGenerator: fixes to the
0594 angular distribution of electrons and positrons.</LI>
0595 <LI>G4MuPairProduction: enable RiGe model via G4EmParameters.</LI>
0596 <LI>G4MuPairProductionModel, G4MuPairProduction: cleanup for handling
0597 of data.</LI>
0598 </UL></LI>
0599 <LI><B>Pii</B>
0600 <UL>
0601 <LI>Use <TT>const G4String&</TT> in <TT>G4hImpactIonisation::InitializeMe()</TT>
0602 to avoid unnecessary copy, reported by Coverity.</LI>
0603 </UL></LI>
0604 <LI><B>Standard</B>
0605 <UL>
0606 <LI>G4UrbanMscModel: cosmetic change for Opt3 case; minor code improvement
0607 and updated comments to the code. Not affecting any result.</LI>
0608 Simplification of the step limit algorithm for Opt3 (EMY) configuration
0609 of EM physics, slightly improving CPU without degradation of the
0610 accuracy. Changed <TT>geommin</TT> parameter value from <TT>10^-3 mm</TT>
0611 to <TT>10^-6 mm</TT>; this change is effective to EM option3 physics
0612 configuration.</LI>
0613 <LI>G4GoudsmitSaundersonMscModel, G4GoudsmitSaundersonTable,
0614 G4GSMottCorrection, and G4GSPWACorrections: removed all other electron
0615 stepping and boundary crossing algorithms from the Goudsmit-Saunderson
0616 multiple-scattering model, except the accurate one; updated the class
0617 descriptions, no physics change is expected in the Livermore, Penelope and
0618 standard option4 EM constructors while the standard GS constructor now
0619 will be more accurate. The current form of the Goudsmit-Saunderson Msc
0620 model, keeping only its most accurate settings, fully reflects the
0621 corresponding <A HREF="https://arxiv.org/pdf/2410.13361">technical note</A>.</LI>
0622 <LI>G4eBremsstrahlungRelModel, G4PairProductionRelModel: simplifed handling
0623 of LPM functions by precomputing and factoring the related data to a
0624 new G4LPMFunction (header only) utility.</LI>
0625 <LI>G4eDPWACoulombScatteringModel, G4eDPWAElasticDCS: fixed some of the
0626 mixed simulation mode functionalities of the numerical ELSEPA DCS based
0627 model for e-/e+ Coulomb scattering (which are still not utilised).</LI>
0628 <LI>Added G4LowPAIH2O model for dE/dx in water for p and e-.</LI>
0629 <LI>Reverted changes introduced in release 11.3 for static data
0630 initialization in G4eBremsstrahlungRelModel.</LI>
0631 <LI>G4BraggModel, G4BraggIonModel, G4BetheBlochModel, G4AtimaEnergyLossModel,
0632 G4LindhardSorensenIonModel and G4LowPAIH2O: store ion effective charge
0633 square in each model, allowing to compute dEdx by G4EmCalculator.
0634 Addressing problem report
0635 <A href="https://bugzilla-geant4.kek.jp/show_bug.cgi?id=2664">#2664</A>.</LI>
0636 <LI>G4BraggIonGasModel, G4BetheBlochIonGasModel: fixed computation of
0637 dynamic charge.</LI>
0638 <LI>G4BraggModel: fixed two compound formula typos in MolecIsInZiegler1988
0639 for methanol and chlorotrifluoromethane. Restored application of the
0640 ChemicalFactor for these compounds.</LI>
0641 <LI>G4eplusAnnihilation: added positronium lifetime, which was forgotten.</LI>
0642 </UL></LI>
0643 <LI><B>Utils</B>
0644 <UL>
0645 <LI>New base class G4VXRayModel for X-ray processes. Adapted classes
0646 G4OpticalParameters, G4OpticalParametersMessenger and G4LossTableManager
0647 to configure and use G4VXRayModel.</LI>
0648 <LI>G4EmParametersMessenger: added UI command to enable/disable 5D pair
0649 production model by muons.</LI>
0650 <LI>G4EmUtility, G4EmDataHandler, G4EmDataRegistry: removed minor memory
0651 leaks and improved destruction at exit.</LI>
0652 <LI>G4EmParameters, G4EmParametersMessenger, G4EmUtility, G4LossTableBuilder,
0653 G4VEnergyLossProcess: implemented new option to enable/disable
0654 fluctuation of energy loss per G4Region.</LI>
0655 <LI>G4EmParameters, G4EmLowEParameters: added DNA upper limits in energy.</LI>
0656 <LI>G4VEmProcess: added call to StartTracking(..) for all used models,
0657 which need access to G4Track pointer.</LI>
0658 <LI>G4VEmProcess, G4VEnergyLossProcess, G4EmDataHandler, G4EmDataRegistry:
0659 cleanup handling of tables; removed unused methods and headers.</LI>
0660 <LI>G4EmCalculator: provided computation of dEdx for ions.
0661 Addressing problem report
0662 <A href="https://bugzilla-geant4.kek.jp/show_bug.cgi?id=2664">#2664</A>.</LI>
0663 <LI>G4VEmModel, G4VEnergyLossProcess: changed signature of the method
0664 <TT>CorrectionsAlongStep()</TT> to something more convenient for
0665 G4EmCalulator.</LI>
0666 <LI>G4OpticalParameters, G4OpticalParametersMessenger: introduced
0667 configurable options to offload the generation of optical photons for
0668 the Cerenkov and Scintillation processes.</LI>
0669 <LI>G4OpticalParameters: added QuasiCerenkov and QuasiScintillation in the
0670 process activation map.</LI>
0671 <LI>G4VXRayModel, G4OpticalParameters: added extra methods needed for new
0672 Cerenkov processes and models.</LI>
0673 </UL></LI>
0674 <LI><B>Xrays</B>
0675 <UL>
0676 <LI>In G4Scintillation, build the scintillation integral tables for
0677 materials that have non-empty material property tables and added
0678 method BuildInverseCdfTable(). Relocate loop-invariant variables
0679 outside the photon generation loop.</LI>
0680 <LI>In G4Cerenkov, build the Cerenkov integral only for materials that
0681 have non-empty material property tables. Relocate loop-invariant
0682 variables outside the photon generation loop.</LI>
0683 <LI>Added physics model catalog IDs and class descriptions for
0684 G4QuasiCerenkov and G4QuasiScintillation.</LI>
0685 <LI>Added G4QuasiScintillation, adding offloading capability for
0686 scintillation photon generation.</LI>
0687 <LI>Added G4QuasiCerenkov, adding offloading capability for Cerenkov photon
0688 generation.</LI>
0689 <LI>Added new classes G4GeneralCerenkov and G4StandardCerenkovModel with the
0690 first implementation of the model approach for X-Ray processes G4Cerenkov,
0691 G4Scintillation and G4GeneralCerenkov; fixed <TT>IsApplicable()</TT>
0692 method for UnknownParticle type; use dynamic charge and kinematics for
0693 these processes.</LI>
0694 <LI>Added class G4ScintillationQuasiTrackInfo, a concrete implementation of
0695 G4VAuxiliaryTrackInformation used to store metadata associated with a
0696 quasi-scintillation track generated during the scintillation process.</LI>
0697 <LI>Added new class G4CerenkovQuasiTrackInfo, a concrete implementation of
0698 G4VAuxiliaryTrackInformation used to store metadata associated with a
0699 quasi-Cerenkov track generated during the Cerenkov process.</LI>
0700 <LI>Added G4QuasiOpticalData, a common data structure used for Cerenkov and
0701 Scintillation photon sampling.</LI>
0702 </UL></LI>
0703 </UL>
0704
0705 <A NAME="event-notes">
0706 <H3><I>Event</I></H3></A>
0707 <UL>
0708 <LI>G4EventManager: enabling to receive next sub-event before completing the
0709 current sub-event when used in the worker thread of sub-event parallel mode.</LI>
0710 <LI>G4Event, G4SubEvent: added some flags and pointers to enable the above.</LI>
0711 <LI>G4AdjointPrimaryGenerator: made it G4ThreadLocal and added <TT>GetInstance()</TT>
0712 method to fix a bug in Reverse MC simulation in MT mode.</LI>
0713 </UL>
0714
0715 <A NAME="externals-notes">
0716 <H3><I>Externals</I></H3></A>
0717 <UL>
0718 <LI><U>G4tools</U>:
0719 <UL>
0720 <LI>Updated to version 8.0.0</LI>
0721 <LI>Updated tools from OpenGL-1.1 to OpenGL-3.2, enabled by setting macro
0722 TOOLS_USE_GL_VERSION_3_2. Fixed rendering for G4Polymarker dots on macOS.
0723 In Qt,X11,Xt,Windows, enforce immediate rendering in event loop
0724 processing.</LI>
0725 <LI>Implemented windows_size and render_area_size methods; fixed setting of
0726 mouse position in the wheel_rotation_event. Handle the shift and control
0727 modifiers in the mouse_[down,up,move]_event and wheel_rotation_event.</LI>
0728 <LI>In glarea, in <TT>mouseMoveEvent()</TT> for Qt5, corrected a bad
0729 cut/paste when creating the mouse_move_event.</LI>
0730 <LI>In *ntuple, fix in the initialise() method, to switch from "warning" to
0731 "error" and return false if the name of a booking column is not found
0732 in the file. Addressing problem report
0733 <A href="https://bugzilla-geant4.kek.jp/show_bug.cgi?id=2657">#2657</A>.</LI>
0734 <LI>Removed obsolete <TT>tools::mem</TT> class and TOOLS_MEM blocks that
0735 use it.</LI>
0736 <LI>Rationalised main headers by merging related functionality.</LI>
0737 <LI>Removed unused classes, class member functions/data members.</LI>
0738 <LI>Removed additional headers, free functions no longer used.</LI>
0739 <LI>Removed unused functions and headers.</LI>
0740 <LI>Removed no longer required <TT>cmem_alloc_copy()</TT> function.</LI>
0741 <LI>Removed commented out blocks and never touched preprocessor blocks.</LI>
0742 <LI>Added <TT>tools/sg/shade_model</TT> node to handle Gouraud shading.</LI>
0743 <LI>Fixes to avoid cases of "ToolsSG-ZB too much zoom in" crash.</LI>
0744 </UL></LI>
0745 <LI><U>Zlib</U>:
0746 <UL>
0747 <LI>Updated <TT>zlib</TT> to version 1.3.1. Prior Geant4 patches are
0748 retained.</LI>
0749 </UL></LI>
0750 </UL>
0751
0752 <A NAME="gen-notes">
0753 <H3><I>General Processes</I></H3></A>
0754 <UL>
0755 <LI><B>Biasing</B>
0756 <UL>
0757 <LI>Fixed initialisation in G4ParticleChangeForNothing, responsible for
0758 crash when enabling track verbosity.</LI>
0759 </UL></LI>
0760 <LI><B>Optical</B>
0761 <UL>
0762 <LI>G4OpBoundaryProcess: refactored code for readability and efficiency.
0763 Reuse local variables for trigonometric and exponential function results,
0764 as well as other repeated expressions. Improved code readability by
0765 replacing simple if-else clauses with ternary operators and made other
0766 minor rearrangements. Replaced <TT>h_Planck*c_light</TT> with a static
0767 function for clarity and reuse. Refactored boundary handling at
0768 dielectric-dielectric interfaces by replacing goto with a do-while loop
0769 to improve readability. Extracted transmission logic into a new inline
0770 function <TT>DoTransmission()</TT> and introduced <TT>constexpr</TT>
0771 helper <TT>IsBackpainted()</TT> to identify backpainted surfaces.</LI>
0772 <LI>In G4OpMieHG, removed redundant <TT>acos()/cos()</TT> calls in angular
0773 sampling to improve performance and readability.</LI>
0774 <LI>G4OpWLS, G4OpWLS2: improved WLS photon energy sampling; enforce energy
0775 below the primary photon's energy.</LI>
0776 </UL></LI>
0777 </UL>
0778
0779 <A NAME="geo-notes">
0780 <H3><I>Geometry</I></H3></A>
0781 <UL>
0782 <LI>Reorganised and enriched comments in headers to follow Doxygen style.</LI>
0783 <LI>Applied clang-tidy fixes.</LI>
0784 <LI><B>Biasing</B>
0785 <UL>
0786 <LI>Removed empty source files for G4VGCellFinder, G4VImportanceAlgorithm,
0787 G4VImportanceSplitExaminer, G4VIStore, G4VWeightWindowStore and
0788 G4VWeightWindowAlgorithm.</LI>
0789 </UL></LI>
0790 <LI><B>Divisions</B>
0791 <UL>
0792 <LI>Removed unused data in G4VDivisionParameterisation.</LI>
0793 </UL></LI>
0794 <LI><B>Magnetic Field</B>
0795 <UL>
0796 <LI>Updated implementation of QSS integration method to QSS version-2.</LI>
0797 <LI>Made QSS3 a choice in G4ChordFinder and G4QSSMessenger.</LI>
0798 <LI>Addressed Coverity issues (memory leak, initialisation) in G4QSStepper
0799 and G4QSSubstepStruct. In G4QSStepper, cleanup of constructors.</LI>
0800 <LI>Make consistent use of the parameters introduced in G4FieldParameters
0801 in field classes: extracted default parameters values as constexpr in
0802 new namespace G4FieldDefaults, so that they can be used in other classes
0803 as default parameters in functions declarations; replaced default values
0804 in G4FieldManager and G4ChordFinder with G4FieldDefaults constants.</LI>
0805 <LI>Added functions for accessing the field, stepper and equation types
0806 using the enum types defined in G4FieldParameters.</LI>
0807 <LI>Updated enums G4EquationType and G4StepperType with missing constants
0808 with a comment that these equations/templated steppers are not built by
0809 G4FieldBuilder.</LI>
0810 <LI>Renamed <TT>StepperType()</TT> in G4DormandPrince745 to
0811 <TT>StepperTypeName()</TT>.</LI>
0812 <LI>Moved inline implementations to .icc file for G4ChargeState and for
0813 G4FieldParameters.</LI>
0814 <LI>Removed not implemented methods in G4ChordFinder, G4DoLoMcPriRK34 and
0815 G4FieldSetup.</LI>
0816 <LI>Minor code cleanup and formatting.</LI>
0817 </UL></LI>
0818 <LI><B>Management</B>
0819 <UL>
0820 <LI>Enabled voxelisation parallelism by default in G4GeometryManager, when
0821 MT/tasks are enabled. Enabled also for potential 2nd (and later) calls
0822 in runs after geometry was changed.</LI>
0823 <LI>G4VSolid: set seed in <TT>EvaluateCubicVolume()</TT> and
0824 <TT>EvaluateSurfaceArea()</TT> to ensure reproducibility of the
0825 resulting value.</LI>
0826 <LI>G4GeomTools: added functions <TT>HyperboloidSurfaceArea()</TT>,
0827 <TT>HypeStereo()</TT> and <TT>TwistedTubeBoundingTrap()</TT>.</LI>
0828 <LI>Removed empty source files for G4ErrorSurfaceTarget and
0829 G4ErrorTanPlaneTarget.</LI>
0830 <LI>Moved inline implementations to .icc file for G4UAdapter.</LI>
0831 </UL></LI>
0832 <LI><B>Navigation</B>
0833 <UL>
0834 <LI>Extended UI command <TT>/geometry/test/run</TT> to support optional
0835 overlap check mode: depending on the selected mode, it invokes either
0836 <TT>TestRecursiveOverlap</TT> (default and original algorithm) or
0837 <TT>TestOverlapInTree</TT>, allowing to check for overlaps in the
0838 volume tree without duplication in identical logical volumes.</LI>
0839 <LI>Removed declared but not implemented methods in G4VoxelNavigation,
0840 G4ParameterisedNavigation, G4VoxelSafety and G4PathFinder.</LI>
0841 </UL></LI>
0842 <LI><B>Solids (Boolean)</B>
0843 <UL>
0844 <LI>G4MultiUnion: fix in <TT>GetSurfaceArea()</TT> and some optimisation
0845 to use <TT>G4QuickRand()</TT>. In <TT>GetLocalPoint()</TT>,
0846 <TT>GetLocalVector()</TT>, <TT>GetGlobalPoint()</TT> and
0847 <TT>GetGlobalVector()</TT>, make direct usage of the transformation
0848 matrix elements. Removed declared but not implemented methods
0849 and moved inline implementations to .icc file.</LI>
0850 <LI>Fixed potential thread-safety issue in <TT>GetCubicVolume()</TT> and
0851 <TT>GetSurfaceArea()</TT> on Boolean solids in case those functions
0852 are called from worker threads.</LI>
0853 <LI>Removed declared but not implemented method in G4ScaledSolid.</LI>
0854 </UL></LI>
0855 <LI><B>Solids (CSG)</B>
0856 <UL>
0857 <LI>G4Box: code restructuring in <TT>DistanceToOut()</TT> methods.
0858 Optimised normal calculation in <TT>DistanceToOut()</TT>.</LI>
0859 <LI>G4Orb: provide faster algorithm in <TT>GetPointOnSurface()</TT>.</LI>
0860 <LI>G4Para: speedup calculation of surface area in <TT>GetSurfaceArea()</TT>
0861 and <TT>GetPointOnSurface()</TT>.</LI>
0862 <LI>G4Box, G4Para, G4Trd: code optimization in <TT>GetPointOnSurface()</TT>.</LI>
0863 <LI>G4Torus: implemented uniform sampling of random points on surface.</LI>
0864 <LI>Fixed potential thread-safety issue in <TT>GetCubicVolume()</TT> and
0865 <TT>GetSurfaceArea()</TT> on all solids in case those functions
0866 are called from worker threads.</LI>
0867 </UL></LI>
0868 <LI><B>Solids (Specific)</B>
0869 <UL>
0870 <LI>G4Ellipsoid, G4EllipticalTube: code optimization in
0871 <TT>GetPointOnSurface()</TT>.</LI>
0872 <LI>G4TessellatedSolid, G4TriangularFacet, G4QuadrangularFacet: use
0873 <TT>G4QuickRand()</TT> for generating points on surface.</LI>
0874 <LI>G4EllipticalCone: code optimization in <TT>GetPointOnSurface()</TT>;
0875 moved setters implementations to source.</LI>
0876 <LI>G4GenericTrap: improved estimation of safety distance by adopting
0877 Lipschitz-based implementation.</LI>
0878 <LI>G4Paraboloid: implemented uniform sampling of random points on surface.</LI>
0879 <LI>G4Hype: revised surface area calculation and random point sampling.
0880 Code optimization in <TT>GetPointOnSurface()</TT>.
0881 Changed static protected functions to private methods.</LI>
0882 <LI>Use <TT>G4QuickRand()</TT> in G4PolyPhiFace, G4PolyconeSide,
0883 G4PolyhedraSide, G4TwistedTubs, G4VCSGfaceted and G4VTwistedFaceted
0884 for sampling points on surface.</LI>
0885 <LI>Fixed potential thread-safety issue in <TT>GetCubicVolume()</TT> and
0886 <TT>GetSurfaceArea()</TT> on all solids in case those functions
0887 are called from worker threads.</LI>
0888 <LI>G4EllipticalCone, G4EllipticalTube, G4Voxelizer: removed unnecessary
0889 headers.</LI>
0890 <LI>Removed virtual specifications from utility class G4ClippablePolygon.</LI>
0891 <LI>Removed unneeded static data/specifications in G4Voxelizer.</LI>
0892 <LI>Moved inline methods definitions of G4TriangularFacet, G4QuadrangularFacet,
0893 G4SurfBits, G4TwistBoxSide, G4TwistTrapParallelSide and G4TwistTrapAlphaSide
0894 to .icc files.</LI>
0895 </UL></LI>
0896 <LI><B>Volumes</B>
0897 <UL>
0898 <LI>Fix to delete the logical skin/border surfaces only if the geometry
0899 is not closed.</LI>
0900 <LI>Moved default destructor definitions to headers.</LI>
0901 <LI>Minor code formatting in headers.</LI>
0902 </UL></LI>
0903 </UL>
0904
0905 <A NAME="glob-notes">
0906 <H3><I>Global</I></H3></A>
0907 <UL>
0908 <LI>G4VSIntegration: added new utility class for integration of probability
0909 density function and dynamically sampling of final state. This is useful
0910 for the case when sampling tables cannot be prepared and stored; instead
0911 computations are performed for each case individually.</LI>
0912 <LI>Added new class G4ExtendedPhysicsVector, a new data structure, which
0913 includes partial cross-sections and methods for random selection of a
0914 partial cross-section channel. The total cross-section is included via
0915 pointer to G4PhysicsVector.</LI>
0916 <LI>G4PhysicsVector, G4PhysicsFreeVector: added a new method <TT>CheckIndex()</TT>
0917 to reduce code duplication; removed tabs from source and headers, extended
0918 comments.</LI>
0919 <LI>Added new class G4FunctionSolver, a new utility to solve equation F(x)=0.</LI>
0920 <LI>G4PhysicsModelCatalog: introduced FTF quasi-elastic and FTF diffraction.
0921 Added model Ids and names for G4QuasiCherenkov and G4QuasiScintillation
0922 processes. </LI>
0923 <LI>Factored common ieee754 union and helper functions out of G4Log and
0924 G4Exp to remove code duplication.</LI>
0925 <LI>G4QuickRand: Added a possibility to set a seed.</LI>
0926 <LI>Fixed data race on std::cout in G4iosFinalization.</LI>
0927 <LI>Updated date of release for 11.4.</LI>
0928 </UL>
0929
0930 <A NAME="greps-notes">
0931 <H3><I>Graphical Representations</I></H3></A>
0932 <UL>
0933 <LI>Re-instated transparency slider in GUI.</LI>
0934 <LI>G4VGraphicsScene: added <TT>fMaxGeometryDepth</TT> data member and
0935 corresponding access functions.</LI>
0936 <LI>In G4Visible, fixed reported Coverity defects in copy constructor and
0937 assignment operator.</LI>
0938 <LI>In G4Att* classes, fixed link to description of HepRep data communication
0939 format (used by G4Atts).</LI>
0940 </UL>
0941
0942 <A NAME="had-notes">
0943 <H3><I>Hadronic Processes</I></H3></A>
0944 <UL>
0945 <LI><B>Cross Sections</B>
0946 <UL>
0947 <LI>G4NeutronInelasticXS, G4ParticleInelasticXS: added download data for
0948 all elements in class constructor, avoiding lazy initialisation at
0949 run-time. No locks are set any longer by these cross-section classes.
0950 For simple applications, the initialisation CPU time increases by
0951 roughly 10%; no effect on complex applications.</LI>
0952 <LI>In G4NeutronInelasticXS, G4NeutronElasticXS and G4NeutronCaptureXS,
0953 split data tables on two parts, low-energy for neutron resonance region
0954 and high energy above this region. This allows to increase accuracy of
0955 neutron cross-sections for non-HP (for example, HEP) applications.
0956 Added extra flag to enable/disable reading and usage of precise data
0957 in resonance region, allowing to reduce RSS memory for simple
0958 applications. For applications requiring higher precision of neutron
0959 transport, the flag should be defined via
0960 <TT>G4HadronicParameters::SetUseRFilesForXS(true)</TT>.</LI>
0961 <LI>G4ChargeExchangeXS: fixed selection of reaction for compound materials;
0962 added extra public and private methods; added extra method for sampling
0963 of scattering angle; updated parameterisation using new fit to data.
0964 Added extra method <TT>SampleTforPion()</TT>, which is based
0965 on the V. Lyubovitsky parameterisation for different reaction
0966 channels.</LI>
0967 <LI>Fixed minor memory leaks in classes G4CrossSectionFactory,
0968 G4CrossSectionFactoryRegistry, G4CrossSectionFactory,
0969 G4ElectroNuclearCrossSection and G4ChipsAntiBaryonElasticXS.</LI>
0970 <LI>G4EMDissociationCrossSection: fixed several technical inaccuracies
0971 in the code, addressing reported Coverity defects and to correctly
0972 use G4Pow.</LI>
0973 <LI>G4ParticleInelasticXS: fixed reported Coverity defect.</LI>
0974 <LI>In G4EMDissociationSpectrum, added protection against beta=0, to fix
0975 reported Coverity defect; correctly use G4Pow.</LI>
0976 <LI>Fixed compilation warning on Intel/icx compiler for overlapping
0977 comparison on condition in G4EMDissociationCrossSection.</LI>
0978 </UL></LI>
0979 <LI><B>Management</B>
0980 <UL>
0981 <LI>G4VHighEnergyGenerator: introduced Boolean methods to know whether the
0982 high-energy hadronic inelastic interaction is quasi-elastic or
0983 diffractive. Note that this can be used for both FTF and QGS hadronic
0984 string models.</LI>
0985 <LI>G4HadronicProcess: removed warning for the case when K0 and anti-K0
0986 are transformed into K0S or K0L. Removed misleading exception.
0987 Addressing problem report
0988 <A href="https://bugzilla-geant4.kek.jp/show_bug.cgi?id=2675">#2675</A>.</LI>
0989 </UL></LI>
0990 <LI><B>Stopping</B>
0991 <UL>
0992 <LI>G4HadronicAbsorptionINCLXX: the energy max is different for anti-proton
0993 and anti-neutron in INCLXX.</LI>
0994 </UL></LI>
0995 <LI><B>Utilities</B>
0996 <UL>
0997 <LI>G4HadronicParameters: implemented pretty-print to ostream to allow
0998 users to check values at runtime, a-la G4EmParameters (request from
0999 ATLAS). Added extra flag to enable/disable usage of precise
1000 cross-section data for neutrons in resonance energy region.</LI>
1001 <LI>G4IsotopeList: added data on energy interval of neutron resonance
1002 regions per element for Z=1-92.</LI>
1003 </UL></LI>
1004 <LI><B>Abla</B>
1005 <UL>
1006 <LI>Added a new description for fission barriers based on
1007 PRC 111, 064606 (2025).</LI>
1008 </UL></LI>
1009 <LI><B>Bertini Cascade</B>
1010 <UL>
1011 <LI>Fixed compilation warning on Intel/icx compiler for overlapping
1012 comparison on condition in G4BigBanger, fixes typo in the computation
1013 of probability.</LI>
1014 </UL></LI>
1015 <LI><B>De-excitation</B>
1016 <UL>
1017 <LI>Added G4FermiBreakUpAN, new alternative FermiBreakUp model and support
1018 classes, contributed by A. Novikov (Yandex and MIPT) through
1019 <A HREF="https://github.com/Geant4/geant4/pull/84">GitHub PR#84</A>.
1020 The model is based on: J.P. Bondorf et al., Physics Reports,
1021 257(3):133-221.</LI>
1022 <LI>G4FermiBreakUpVI: removed the limit on excitation energy from the
1023 condition of the model applicability, the model become similar to
1024 G4FermiBreakUpAN in this respect.</LI>
1025 <LI>G4ExcitationHandler: moved multi-fragmentation model to be called before
1026 the pre-compound model and not inside G4ExcitationHandler. Interfaces
1027 are preserved. Added deprecation warnings to obsolete methods.</LI>
1028 <LI>G4ExcitationHandler, G4DeexPrecoParameters: updated initialisation
1029 to allow switching between different FermiBreakUp models.</LI>
1030 <LI>G4DeexPrecoUtility: new class, providing common computation, to avoid
1031 code duplication. Use it in classes G4EvaporationProbability,
1032 G4ProtonEvaporationProbability, G4DeuteronEvaporationProbability,
1033 G4TritonEvaporationProbability, G4He3EvaporationProbability and
1034 G4AlphaEvaporationProbability, simplifying code.</LI>
1035 <LI>G4DeexPrecoParameters: added extra enumerator to choose variants of
1036 the pre-compound model. Defined limits maxZ=9, maxA=17 instead of
1037 maxZ=3 maxA=5. Fermi BreakUp models will be used for light fragment
1038 de-excitation, which happens in high energy ion collision with light
1039 targets. Reduced upper limit of energy per nucleon for the
1040 pre-compound model from 30 to 15 MeV, according to the prescription
1041 of Botvina A. S. et al. Nucl. Phys. A, 475:663, 1987.</LI>
1042 <LI>G4NucLevel, G4PhotonEvaporation: use explicit type conversion from
1043 double to float; use const arguments where possible.</LI>
1044 <LI>G4VEmissionProbability, G4EvaporationProbability, G4GEMProbabilityVI:
1045 updated algorithms of integration of probabilities and sampling of
1046 kinetic energy for emitted fragment. Expected more accurate spectra.</LI>
1047 <LI>G4GEMChannelVI, G4EvaporationGEMFactoryVI, G4DeexPrecoParameters: new
1048 GEM de-excitation model with 83 decay channels.</LI>
1049 <LI>In G4GEMChannelVI, use G4DeexPrecoUtils.</LI>
1050 <LI>G4VEmissionProbability: use the new utility class G4VSIntegration,
1051 to simplify code; not affecting results.</LI>
1052 Updated parameters of integration of the probability density function.</LI>
1053 <LI>G4VEmissionProbability, G4EvaporationChannel, G4GEMChannelVI: use
1054 optimised parameters for G4VSIntegrator; initial step <TT>0.15 MeV</TT>
1055 for neutrons, <TT>0.2 MeV</TT> for charged, tolerance from 1.05 to 1.25.
1056 Avoid precision loss for computation of minimal energy of emitted
1057 fragment.</LI>
1058 <LI>In G4PhotonEvaporation, G4VEmissionProbability, check life time of
1059 final excitation level; special treatment for the ground state and the
1060 next level. Addressing problem report
1061 <A href="https://bugzilla-geant4.kek.jp/show_bug.cgi?id=2660">#2660</A>.</LI>
1062 <LI>In G4EvaporationProbability, fixed computation of inverse cross-section.</LI>
1063 <LI>G4StatMF: always return non-empty vector of final fragments, if
1064 multi-fragmentation is not possible, then it returns the primary
1065 fragment. Cleaned up method of final state energy correction and
1066 Lorentz boost.</LI>
1067 <LI>G4StatMFMicroCanonical: replaced use of hard-coded solver with
1068 G4FunctionSolver. Fixed surface energy computation and removed
1069 unnecessary computations.</LI>
1070 <LI>Multifragmentation models are now using G4FunctionSolver instead of
1071 G4Solver.</LI>
1072 <LI>G4CoulombBarrier, G4DeexPrecoUtils, G4EvaporationFragment,
1073 G4EvaporationProbability and G4EvaporationGEMFactoryVI, use the default
1074 evaporation for neutrons, protons and light ions.</LI>
1075 <LI>Emit fatal exception in G4LevelReader if path to G4LEVELGAMMADATA
1076 is empty.</LI>
1077 <LI>G4LevelReader, G4GammaTransition, G4photonEvaporation: addressing
1078 problem reports
1079 <A href="https://bugzilla-geant4.kek.jp/show_bug.cgi?id=2672">#2672</A>,
1080 <A href="https://bugzilla-geant4.kek.jp/show_bug.cgi?id=2588">#2588</A>
1081 and
1082 <A href="https://bugzilla-geant4.kek.jp/show_bug.cgi?id=2451">#2451</A>.
1083 The vector of IC probabilities is limited by number of levels in an
1084 atom; if in gamma level data all IC transitions are zero, then instead
1085 of K-shell probability, 1.0 is assigned to the last existing level;
1086 electron emission is sampled if nuclear excitation is above the bound
1087 level and if number of electrons on electron shell is above 1;
1088 more accurate sampling of final state using masses of the nucleus plus
1089 masses of electrons from electron shells.</LI>
1090 <LI>G4StatMFMicroCanonical: fixed computation of temperature.</LI>
1091 <LI>G4StatMFMicroPartition: code cleanup, removed non-informative printout,
1092 which can be repeated many times; instead stop MF model and return to
1093 de-excitation handler.</LI>
1094 <LI>General clean-up of the multifragmentation model: fixed equation solver;
1095 made uniform headers and source; reduced number of new/delete operations.</LI>
1096 <LI>Fixed reported Coverity defects.</LI>
1097 <LI>G4CoulombBarrier: some code cleanup.</LI>
1098 <LI>G4Evaporation: improved debug printout.</LI>
1099 </UL></LI>
1100 <LI><B>Elastic scattering</B>
1101 <UL>
1102 <LI>G4ChargeExchange: fixed problem in kinematic computations, allowed
1103 recoil nucleus to be in an excited state. Fixed issue in final state
1104 generation for the case of unstable meson production <TT>omega(782)</TT>
1105 and <TT>f2(1270)</TT>. Implemented angular distribution of pion charge
1106 exchange according to the V.Lubovitsky parameterisation for different
1107 reaction channels.</LI>
1108 <LI>G4ChargeExchange, G4HadronElastic: cleanup final state generation; use
1109 the numerical limit for argument of the exponent to avoid precision
1110 loss; in case of numerical problems force scattering angle to zero (do
1111 not consider scattering backwards); use similar parameterisation and
1112 code for both models. Fixed reported Coverity defect.</LI>
1113 <LI>Fixed cases of non-accurate checks on potential numerical problems in
1114 computing scattering angles in G4NuclNuclDiffuseElastic,
1115 G4DiffuseElastic and G4AntiNuclElastic, addressing compilation warnings
1116 on Intel/icx compiler for overlapping comparison on conditions.</LI>
1117 </UL></LI>
1118 <LI><B>EM Dissociation</B>
1119 <UL>
1120 <LI>G4EMDissociation: fixed reported Coverity defects.</LI>
1121 </UL></LI>
1122 <LI><B>High Energy Theoretical</B>
1123 <UL>
1124 <LI>G4TheoFSGenerator: introduced the ID model identification for FTF
1125 inelastic hadronic interactions that are classified as quasi-elastic
1126 or diffractive. Note that this classification is not available for
1127 the QGS string model.</LI>
1128 </UL></LI>
1129 <LI><B>INCLXX</B>
1130 <UL>
1131 <LI>Extension of the INCLXX model to handle anti-neutron (at rest and
1132 in-flight).</LI>
1133 <LI>Fixed the use of INCL for the reactions anti-neutron + H1/H2 and decay
1134 omega/eta.</LI>
1135 <LI>Fixed reported Coverity defect for use of <TT>std::move()</TT>
1136 in G4INCLCascade.</LI>
1137 <LI>Fixed URL to Root in comments. Fixes
1138 <A HREF="https://github.com/Geant4/geant4/pull/87">GitHub PR#87</A>.</LI>
1139 </UL></LI>
1140 <LI><B>Lend</B>
1141 <UL>
1142 <LI>Major update of GIDIplus interface with refactored C++ code, including
1143 use of official GNDS formatted data.</LI>
1144 <LI>Added feature for high-fidelity gamma cascades following reactions such
1145 as neutron capture and inelastic scattering.</LI>
1146 <LI>Collect all inelastic models (neutron and gamma induced) into
1147 G4HadronPhysicsLEND. Updated and simplified Shielding and
1148 G4EmExtraPhysics accordingly.</LI>
1149 <LI>Fix in G4EmExtraPhysics for failing in loading photonuclear from LEND
1150 if G4GammaGeneralProcess existed.</LI>
1151 <LI>Fix in G4LENDCombinedModel photofission; check energy function was not
1152 connected to the base class, resulting in a crash.</LI>
1153 <LI>Removed the default evaluation string from G4LEND. This change means the
1154 user only needs to update the G4LENDDATA environment variable to switch
1155 to a different nuclear data library.</LI>
1156 <LI>Fixed various Coverity reported defects and implicit conversion
1157 compilation warnings in macOS/XCode.</LI>
1158 </UL></LI>
1159 <LI><B>Nudex</B>
1160 <UL>
1161 <LI>Address maybe-unitialized warnings when building/linking with LTO,
1162 identified by ATLAS.</LI>
1163 </UL></LI>
1164 <LI><B>Particle High Precision</B>
1165 <UL>
1166 <LI>G4ParticleHPThermalScatteringData: attempt to fix reported Coverity
1167 defect on wrong handling of map iterator. Substituted several calls to
1168 G4HadronicExceptions by one G4Exception inside <TT>BuildPhysicsTable()</TT>
1169 method, which provides a fatal exception if a particle is not a neutron.
1170 Simplified <TT>IsApplicable()</TT> methods called at each step; the
1171 directory path is taken from G4ParticleHPManager to reduce number of
1172 calls to <TT>getenv()</TT> function; initialisation is performed only
1173 once in one instance of the class; initialised data structures are saved
1174 to G4ParticleHPManager and are accessed from all threads and instances;
1175 end of job destruction is also performed only once; removed commented
1176 lines and extended comments to code.</LI>
1177 <LI>In G4ParticleHPInelastic, fixed AllHP physics for initialisation of
1178 neutrons and light ions. Addressing problem report
1179 <A href="https://bugzilla-geant4.kek.jp/show_bug.cgi?id=2591">#2591</A>.</LI>
1180 <LI>G4ParticleHPThermalScattering, G4ParticleHPThermalScatteringData,
1181 G4ParticleHPJENDLHEData: fixed reported Coverity defects for
1182 unprotected access to maps.</LI>
1183 <LI>Fixed reported Coverity defects, mainly in handling of maps and finding
1184 of isotopes.</LI>
1185 </UL></LI>
1186 <LI><B>Parton-String</B>
1187 <UL>
1188 <LI>G4FTFModel, G4DiffractiveExcitation: introduced classification of
1189 quasi-elastic and diffractive interactions among the inelastic
1190 interactions of the FTF string model. In the G4FTFModel class,
1191 the Boolean flags <TT>fIsQuasiElasticInteraction</TT> and
1192 <TT>fIsDiffractiveInteraction</TT> - inherited from the base class
1193 G4VHighEnergyGenerator - are used in the methods <TT>Init()</TT>
1194 and <TT>ExciteParticipants()</TT>. In the class G4DiffractiveExcitation,
1195 an extra, Boolean parameter is added to the method
1196 <TT>ExciteParticipants()</TT> to tag diffractive interactions.</LI>.
1197 </UL></LI>
1198 <LI><B>Pre-equilibrium</B>
1199 <UL>
1200 <LI>New classes G4PreCompoundInterface, G4PreCompoundTransitionInt and
1201 G4PreCompoundEmissionInt with alternative precompound model.</LI>
1202 <LI>G4PreCompoundModel, G4PreCompoundTransition, G4PreCompoundEmission:
1203 added an option to use alternative precompound models, which may be
1204 done via configuration without change of interface to consumer code;
1205 introduced verbose flag and extended printout needed to debug; removed
1206 old commented printout lines.</LI>
1207 <LI>G4PreCompoundModel: multi-fragmentation model is moved from the
1208 G4ExcitationHandler to be called before this pre-compound model for very
1209 hot fragments. Default excitation energy limit is very high, as it was
1210 in the case of G4ExcitationHandler. Increased limit of the pre-compound
1211 loop from 100 to 300 to suppress rare warnings seen in validation
1212 benchmarks. Send to evaporation all fragments with excitation
1213 energy exceeding energy limit.</LI>
1214 <LI>G4PreCompoundFragment, G4PreCompoundNucleon, G4PreCompoundIon: updated
1215 computation of inverse cross-section; added factor to cross-section.</LI>
1216 <LI>G4VPreCompoundFragment, G4PreCompoundFragment, G4HETCFragment: use the
1217 new utility class G4VSIntegration, to simplify code; not affecting
1218 results.</LI>
1219 <LI>G4VPreCompoundFragment: optimised initial step of integrator from
1220 <TT>1 MeV</TT> to <TT>0.5 MeV</TT>; increased tolerance from 1.05
1221 to 1.1.</LI>
1222 <LI>G4PreCompoundFragment, G4PreCompoundProton, G4PreCompoundDeuteron,
1223 G4PreCompoundTriton, G4PreCompoundHe3, G4PreCompoundAlpha: use new
1224 utility class G4DeexPrecoUtility.</LI>
1225 </UL></LI>
1226 <LI><B>QMD</B>
1227 <UL>
1228 <LI>G4QMDReaction and G4LightIonQMDReaction: added random rotation of the
1229 momentum around the z-axis to solve the directional bias of the momentum
1230 of the secondary particles.</LI>
1231 <LI>Fixed reported Coverity defect for potential division by zero.</LI>
1232 </UL></LI>
1233 <LI><B>Quasi Elastic</B>
1234 <UL>
1235 <LI>Fixed compilation warning on Intel/icx compiler for overlapping
1236 comparison on condition in G4QuasiElRatios.</LI>
1237 </UL></LI>
1238 </UL>
1239
1240 <A NAME="interc-notes">
1241 <H3><I>Intercoms</I></H3></A>
1242 <UL>
1243 <LI>In G4UImanager and G4UIcontrolMessenger, introducing <TT>@@</TT> keyword that
1244 can be placed in any UI command taking a macro file name. It creates a
1245 temporary macro file with defined commands until the
1246 <TT>/control/endRecord</TT> command is specified. The <TT>@@</TT> mechanism
1247 works recursively. If a file name is enclosed in a pair of <TT>@</TT>, that
1248 macro file is created. The mechanism works for both interactive mode and
1249 batch mode. When used in interactive mode with Qt GUI, one can use up-arrow,
1250 tab-key and clickable menu in left-side bar to complete a command.</LI>
1251 </UL>
1252
1253 <A NAME="interf-notes">
1254 <H3><I>Interfaces</I></H3></A>
1255 <UL>
1256 <LI>G4UIQt: re-instated transparency slider.
1257 Introduced Time Window tab. This exploits generic time windowing
1258 recently introduced in visualisation. Currently, it doesn't work with
1259 OGL in Qt6. The TSG visualisation driver works fine with both Qt5 and
1260 Qt6, except line width is not implemented.
1261 Simplified and improved touchable dump, using QScrollArea instead of
1262 QMessage. Improved pick info window size.
1263 Added icon to reset camera and improved base size of MainWindow.
1264 In scene tree, simplified interaction for visibility of touchables.
1265 Intercept the case of "help" with argument; write guidance to output
1266 window; avoid undiagnosed crash with Qt6.
1267 Fixed link and add "Action" guidance table in "Useful tips".
1268 Added methods to update the control widgets; moved transparency
1269 slider radio buttons to be class members; added icon for point cloud surface
1270 style; added icon to reset target point; changed behavior of the icon "Reset
1271 camera" to avoid popup window with dedicated call back; improved picking
1272 behavior avoiding opening picking window when picking is enabled; fixed
1273 icons selection behaviour and syncronisation.</LI>
1274 <LI>In G4VInteractiveSession, added <TT>UpdateDrawingStyle()</TT>,
1275 <TT>UpdateProjectionStyle()</TT> and <TT>UpdateTransparencySlider()</TT>
1276 virtual methods to update the control widgets.</LI>
1277 <LI>In CMake script, handle -DTOOLS_USE_GL_VERSION_3_2 in case of
1278 GEANT4_USE_VTK.</LI>
1279 <LI>General code tidy.</LI>
1280 </UL>
1281
1282 <A NAME="materials-notes">
1283 <H3><I>Materials</I></H3></A>
1284 <UL>
1285 <LI>Fixed several typos in crystallographic formulae: corrected orthorhombic
1286 interplanar angle cosine formula; corrected cubic interplanar angle cosine
1287 formula; corrected orthorhombic branch of GetRecIntSp2() function; corrected
1288 triclinic cell volume formula.</LI>
1289 <LI>Fixed initialisation problem in G4ICRU90StoppingData.
1290 Addressing problem report
1291 <A href="https://bugzilla-geant4.kek.jp/show_bug.cgi?id=2663">#2663</A>.
1292 <LI>In G4AtomicFormFactor, corrected k conversion and <TT>4*pi</TT> factor.</LI>
1293 <LI>Fixed s computation in Cromer-Mann form to:
1294 <TT>s = (k * 1e-7) / (4*pi) (k in mm^-1)</TT>.</LI>
1295 <LI>G4ElementData, G4ElementDataRegistry: code cleanup and added extra method.</LI>
1296 </UL>
1297
1298 <A NAME="parameterisations-notes">
1299 <H3><I>Parameterisations</I></H3></A>
1300 <UL>
1301 <LI>Channeling:
1302 <UL>
1303 <LI>Introduced reading from an input file of custom internal geometry of
1304 a periodically bent crystal which also works, if necessary, with multiple
1305 input files, each per logical volume of an oriented crystal.</LI>
1306 <LI>Introduced various types of radiation virtual collimators in
1307 G4BaierKatkov.</LI>
1308 <LI>Deleted redundant code setting up the defaults of angular and low
1309 energy cuts in G4ChannelingFastSimModel.</LI>
1310 <LI>Polishing of the code according to guidelines.</LI>
1311 </UL></LI>
1312 </UL>
1313
1314 <A NAME="part-notes">
1315 <H3><I>Particles</I></H3></A>
1316 <UL>
1317 <LI>Updated particle properties to PDG-2025. Scanned all mesons and baryons,
1318 including their resonances; updated mass, decay width, and lifetime for the
1319 following particles: mesons - G4AntiBsMesonZero, G4BsMesonZero, G4Etac,
1320 G4Eta, G4JPsi, G4Upsilon; baryons - G4AntiSigmabMinus, G4AntiSigmabPlus,
1321 G4LambdacPlus, G4OmegacZero, G4XicZero; resonances - G4ExcitedSigmaConstructor,
1322 G4ExcitedLambdaConstructor, G4ExcitedNucleonConstructor,
1323 G4ExcitedMesonConstructor, mesons and baryons implemented in
1324 G4ShortLivedConstructor.</LI>
1325 <LI>Added new class G4QuasiOpticalPhoton, a non-physical particle definition
1326 designed to encapsulate the conditions for generating a burst of optical
1327 photons in processes such as scintillation or Cerenkov radiation.</LI>
1328 </UL>
1329
1330 <A NAME="pers-notes">
1331 <H3><I>Persistency</I></H3></A>
1332 <UL>
1333 <LI>GDML:
1334 <UL>
1335 <LI>Fix to pre-pend <TT>0x</TT> string before the address when writing
1336 entities on Windows platform. Addressing problem report
1337 <A href="https://bugzilla-geant4.kek.jp/show_bug.cgi?id=2322">#2322</A>.</LI>
1338 </UL></LI>
1339 </UL>
1340
1341 <A NAME="lst-notes">
1342 <H3><I>Physics lists</I></H3></A>
1343 <UL>
1344 <LI><B>Builders</B>:
1345 <UL>
1346 <LI>In G4HadronPHPBuilder, G4ParticleHPCapture and G4ParticleHPCaptureData
1347 are replaced by G4NeutronRadCaptureHP and G4NeutronHPCaptureData,
1348 respectively.
1349 The first allows the use of the full list of updated PhotonEvaporation
1350 data set, while for the second it is only a change of the name, the
1351 data are the same. Addressing problem report
1352 <A href="https://bugzilla-geant4.kek.jp/show_bug.cgi?id=2660">#2660</A>.</LI>
1353 <LI>G4HadronicBuilder: added the possibility to use anti-neutron by INCLXX.</LI>
1354 <LI>Code cleanup in G4AntiBarionBuilder and G4VAntiBarionBuilder.</LI>
1355 </UL></LI>
1356 <LI><B>Constructors</B>:
1357 <UL>
1358 <LI><U>electromagnetic</U>:
1359 <UL>
1360 <LI>G4OpticalPhoton: added G4QuasiOpticalPhoton to support offloading of
1361 optical photon generation.</LI>
1362 <LI>In G4OpticalPhysics, instantiate a process only if it is activated;
1363 added option to instantiate the new G4GeneralCerenkov process.</LI>
1364 <LI>G4GeneralGammaProcess: updated destructor according to modification
1365 in electromagnetic/utils.</LI>
1366 <LI>Updated G4EmStandardPhysicsGS according to the changes in the GS
1367 multiple scattering model, the standard GS EM constructor is
1368 expected to optionally provide accurate e-/e+ simulations now
1369 (similar accuracy as in Livermove, Penelope and option 4).</LI>
1370 <LI>G4EmDNABuilder: use G4DNABornIonisationModel1 for proton ionisation.
1371 For Opt8 configuration, use the same configuration of models for e-
1372 and protons as in Opt2. Restored usage of Born model of ionisation
1373 in the energy interval <TT>0.5 - 100 MeV</TT>. Use Rudd extended
1374 model for light ions in all physics configurations instead of old
1375 Rudd model, which should improve CPU performance; increased
1376 low-energy limit to <TT>11 eV</TT> for the CPA100 elastic scattering
1377 model. Use upper energy limits from G4EmParameters.</LI>
1378 <LI>In all DNA constructors the upper limit for DNA models for ions is
1379 set to <TT>300 MeV</TT> instead of <TT>400 MeV</TT>; for
1380 increase/decrease processes it is set to <TT>100 MeV</TT>; for
1381 ionisation of hydrogen it is set to <TT>100 MeV</TT>.</LI>
1382 <LI>G4EmDNAPhysics_option4, G4EmDNAPhysics_option6,
1383 G4EmDNAPhysics_option8: use fast option for a significant speedup
1384 of physics.</LI>
1385 <LI>G4EmDNAPhysics_stationary_X constructors: added deprecation warning,
1386 indicating that these constructors are now obsolete.</LI>
1387 <LI>G4EmDNABuilder, G4EmDNAPhysicsActivator: introduced usage of the
1388 new ion ionisation model in DNA Opt8 physics configuration.</LI>
1389 <LI>G4EmDNAPhysics, G4EmDNAPhysics_option2, G4EmDNAPhysics_option4,
1390 G4EmDNAPhysics_option6, G4EmDNAPhysics_option8: updated interface to
1391 G4EmDNABuilder.</LI>
1392 </UL></LI>
1393 <LI><U>gamma_lepto_nuclear</U>:
1394 <UL>
1395 <LI>G4EmExtraPhysics: removed LEND photo-nuclear; it is now selected by
1396 G4HadronPhysicsLEND.</LI>
1397 </UL></LI>
1398 <LI><U>hadron_elastic</U>:
1399 <UL>
1400 <LI>In G4ChargeExchangePhysics, fixed usage of the messenger.</LI>
1401 </UL></LI>
1402 <LI><U>hadron_inelastic</U>:
1403 <UL>
1404 <LI>G4Hadron_PhysicsQGS_BIC, G4Hadron_PhysicsQGSP_BIC_HP and
1405 G4Hadron_PhysicsQGSP_BIC_AllHP: uniform instantiation of neutron
1406 and proton physics; enable NuDEX via hadronic parameters for
1407 neutron capture in QGSP_BIC_HP and QGSP_BIC_AllHP; code cleanup.</LI>
1408 <LI>G4HadronicPhysicsQGSP_BIC_HP and G4HadronicPhysicsQGSP_BIC_AllHP
1409 inherits from G4HadronicPhysicsQGSP_BIC. The size of the classes
1410 have been significantly reduced due to the removal of duplicated
1411 code.</LI>
1412 <LI>In G4HadronPhysicsQGS_BIC, do not use QGS/Binary and FTF/Binary
1413 models for pions and kaons.</LI>
1414 <LI>G4HadronPhysicsShielding: technical clean-up: removed unused
1415 headers, fixed constructors and destructors.</LI>
1416 <LI>In G4HadrocPhysicsQBBC, disabled General Neutron Process.
1417 Addressing problem reports
1418 <A href="https://bugzilla-geant4.kek.jp/show_bug.cgi?id=2558">#2558</A>
1419 and
1420 <A href="https://bugzilla-geant4.kek.jp/show_bug.cgi?id=2559">#2559</A>.</LI>
1421 <LI>Added G4HadronPhysicsLEND to define neutron and photon induced
1422 processes from LEND.</LI>
1423 <LI>G4HadronPhysicsShielding: removed LEND neutron process, now selected
1424 by G4HadronPhysicsLEND.</LI>
1425 <LI>G4HadronPhysicsQGSP_BERT_HP: minor code cleanup.</LI>
1426 </UL></LI>
1427 </UL></LI>
1428 <LI><B>Lists</B>:
1429 <UL>
1430 <LI>G4PhysListFactory: prevent fallback to default physics list when an
1431 invalid name is provided. Now, if a user specifies an unknown physics
1432 list, Geant4 will throw a fatal error instead of silently using
1433 FTFP_BERT. This ensures that users are aware of incorrect configurations
1434 and helps preventing unintended simulation results.
1435 Allowed definition of the EM standard physics Opt0 on top of any
1436 reference Physics List (which provides a simpler EM physics treatment);
1437 improved printout for the HP case, and now the EMZ option is printed out
1438 in the name.</LI>
1439 <LI>In QBBC physics list, added G4ChargeExchangePhysics.</LI>
1440 <LI>In Shielding physics list, simplified the handling of inelastic models
1441 and moved all LEND hadronic inelastic processes to G4HadronPhysicsLEND.</LI>
1442 </UL></LI>
1443 </UL>
1444
1445 <A NAME="run-notes">
1446 <H3><I>Run</I></H3></A>
1447 <UL>
1448 <LI>Enabled worker threads to receive next sub-event before completing the
1449 current sub-event in G4WorkerSubEvtRunManager. Some code cleanup.</LI>
1450 <LI>Fix in <TT>G4RunManager::ReinitializeGeometry()</TT>; the logical
1451 skin/border surfaces (used for optical physics) contain pointers to
1452 logical/physical volumes that are deleted when the geometry is reset.
1453 Resetting the geometry will now also clear these surface tables.</LI>
1454 <LI>Introducing UI commands to limit number of warning messages to be
1455 printed out.</LI>
1456 <LI>Added some verbose level checks to G4TaskRunManager and G4SubEvtRunManager
1457 to reduce printouts.</LI>
1458 <LI>In G4PhysicsListHelper, changed ordering of processes: for X-Ray production
1459 use ordering parameter 100 for post step instead of 1000; fixed ordering
1460 for muon capture at rest.</LI>
1461 <LI>G4VModularPhysicsList: deleted confusing printout if the same physics type
1462 is substituted.</LI>
1463 <LI>In G4AdjointPrimaryGeneratorAction, removed pointer attribute on
1464 G4AdjointPrimaryGenerator and call it by the static <TT>GetInstance()</TT>
1465 method to fix a bug in Reverse MC simulation in MT mode.</LI>
1466 </UL>
1467
1468 <A NAME="track-notes">
1469 <H3><I>Track & Tracking</I></H3></A>
1470 <UL>
1471 <LI>G4VTrajectory and G4VTrajectoryPoint: added caching of G4AttValues.
1472 <TT>GetAttValues()</TT> returns a <TT>shared_ptr</TT> that points to the
1473 object created by <TT>CreateAttValues()</TT> if not already created.
1474 Thus acts as a cache. Protected copy and move constructors and copy and
1475 move assignment operators.</LI>
1476 <LI>G4RichTrajectoryPoint: added accessors for Pre/PostStepPointGlobalTime.
1477 This allows fast access for time windowing feature of trajectory modeling.</LI>
1478 </UL>
1479
1480 <A NAME="vis-notes">
1481 <H3><I>Visualization</I></H3></A>
1482 <UL>
1483 <LI><B>General</B>
1484 <UL>
1485 <LI>Make the TSG driver the "flagship" visualization driver.
1486 In G4VisExecutive, make nickname/alias OGL synonymous with TSG and make
1487 TSG the default for selection by build flags.</LI>
1488 <LI>Removed HepRepFile and Qt3D visualisation drivers, no longer viable to
1489 develop and maintain.</LI>
1490 </UL></LI>
1491 <LI><B>Management</B>
1492 <UL>
1493 <LI>Re-instated the transparency slider; re-implemented it in a generic way,
1494 i.e., for all drivers; uses a new UI command:
1495 <TT>/vis/viewer/set/transparencyByDepth</TT>.
1496 G4UIQt issues this command on signals from the slider. The user may,
1497 of course, use this command directly.</LI>
1498 <LI>Split scene processing into its "permanent" (run-duration models) and
1499 "transient" (end-of-event and end-of-run models) parts.
1500 This allows to update just the transient part, e.g., trajectories,
1501 which we might want to display in a different way, leaving the
1502 permanent part (e.g., detector) unchanged, avoiding unnecessary
1503 re-processing. This is exactly the situation for time windowing - the
1504 detector does not change, the trajectories also actually do not change,
1505 just the way they are drawn changes.</LI>
1506 <LI>G4VSceneHandler: introduced <TT>ProcessTransients()</TT> virtual function.
1507 Moved pertinent code from <TT>ProcessScene()</TT> to
1508 <TT>ProcessTransients()</TT>.
1509 Copied time parameters into modeling parameters.
1510 Calculate and maintain <TT>fMaxGeometryDepth</TT>, new base class data
1511 member. Enforce the new marker policy in <TT>GetMarkerSize()</TT>.
1512 Improved some diagnostic printing.</LI>
1513 <LI>G4VViewer: introduced <TT>ProcessTransients()</TT> method.
1514 Follow changes in G4PhysicalVolumeModel.
1515 Initialise <TT>fTransientsNeedRedrawing</TT> to <TT>false</TT>.
1516 Previously, this was initialised <TT>true</TT>, but it is up to the
1517 viewer to decide if transients (trajectories) need redrawing.
1518 Added <TT>ZoomFromMouseWheel()</TT> function to control mouse wheel
1519 behavior; added virtual methods to get window size, render area size and
1520 scene near width; implemented ZoomToCursor algorithm to zoom toward the
1521 mouse cursor. General optimization of zoom behavior with mouse wheel.
1522 Added Shift key modifier to change zoom mode in perspective projection
1523 from Dolly (default) to zoomFactor. Changed Shift key modifier behavior
1524 to enable ZoomToCursor while pressed.
1525 Added <TT>UpdateGUIControlWidgets()</TT>, <TT>UpdateGUIDrawingStyle()</TT>,
1526 <TT>UpdateGUIProjectionStyle()</TT> and <TT>UpdateGUITransparencySlider()</TT>
1527 methods to update the GUI control widgets. Code tidy.</LI>
1528 <LI>Added RayTracerQt in G4VisExecutive. Introduced nickname/alias TSGZB
1529 for appropriate driver by priority.
1530 In Vtk, removed patch as now ToolsSG-GLES builds with OpenGL-3.2.
1531 Vtk and ToolsSG-GLES can now cowork at run time.</LI>
1532 <LI>G4VVisCommand: in <TT>InterpolateViews()</TT>, implemented desired time
1533 per time step. Computation time per step may cause this to increase.</LI>
1534 <LI>G4VisCommandsViewer: improved guidance of <TT>/vis/viewer/interpolate</TT>
1535 command. In <TT>/vis/viewer/set/timeWindow/displayHeadTime</TT>,
1536 implemented "current as default". There might be some minor change of
1537 behaviour.
1538 In <TT>/vis/viewer/select</TT>, removed subsequent refresh, even for
1539 auto-refresh drivers. Refresh is not required after a select, window
1540 systems keep the image. Added <TT>UpdateGUIControlWidgets()</TT> to
1541 <TT>G4VisCommandViewerSelect::SetNewValue()</TT> to update the control
1542 widget when the viewer is changed.</LI>
1543 <LI>In G4VisCommandsTouchable, disabled <TT>/vis/touchable/centre...</TT> and
1544 <TT>/twinkle</TT> in the case of large process times.</LI>
1545 <LI>Added UI command <TT>/vis/scene/add/endOfRunMacro</TT>.
1546 The macro is executed at end of run and when rebuild required.
1547 WARNING: some vis commands in the macro cause recursion. Stick to
1548 simple commmands, e.g., which invoke vis manager <TT>Draw()</TT>
1549 methods.</LI>
1550 <LI>G4VisCommands: always print available drivers when using
1551 <TT>/vis/list</TT>.</LI>
1552 <LI>G4ViewParameters: added <TT>TransparencyByDepth</TT> and
1553 <TT>TransparencyByDepthOption</TT>. Simplified code; use single
1554 TimeParameters from G4ModelingParameters, to replace 18 time window
1555 parameters. Added <TT>zoomToCursor</TT> parameter to control the zoom
1556 behavior of the mouse wheel. Added data members and methods to handle
1557 dots. Changed <TT>GetZoomToCursor()</TT> to <TT>IsZoomToCursor()</TT>
1558 to follow convention for Boolean parameters.
1559 Fixed typo to make <TT>/vis/viewer/set/lightsMove cam</TT> behaving
1560 correctly for <TT>/vis/viewer/set/lightsVector 0 0 1</TT>.
1561 Addressing problem report
1562 <A href="https://bugzilla-geant4.kek.jp/show_bug.cgi?id=2460">#2460</A>.</LI>
1563 <LI>G4VisCommandsViewerSet: updated to <TT>/vis/viewer/set/timeWindow</TT>
1564 commands according to changes in G4ViewParameters.
1565 Added UI command <TT>/vis/viewer/set/transparencyByDepth</TT>.
1566 Added command <TT>/vis/viewer/set/zoomToCursor</TT> to set
1567 the <TT>zoomToCursor</TT> parameter. Improved guidance for
1568 <TT>vis/viewer/set/dotsSmooth</TT> "Smooth" typically means rounded,
1569 i.e., dots drawn as filled circles. The vis system is configured by
1570 default to draw smooth dots. This may be switched off with
1571 <TT>/vis/viewer/set/dotsSmooth false</TT> and typically this will
1572 result in square dots.
1573 Added <TT>/vis/viewer/set/dotsSize and dotsSmooth</TT> commands.
1574 G4PolyMarkers have a MarkerType that can be dots, circles, or
1575 squares.</LI>
1576 <LI>Minor improvement to listing of histograms (if any).
1577 <LI>G4VisManager: in <TT>EndOfRun()</TT>, print list of histograms even
1578 with vis disabled. In <TT>EndDraw()</TT> and <TT>EndDraw2D()</TT>,
1579 refresh view at end of drawing.
1580 Smooth dots are now default at end-of-run drawing.</LI>
1581 <LI>Modernised macro-based loops with range-based for.</LI>
1582 <LI>Replaced raw for loops with range-for where possible.</LI>
1583 <LI>Removed all references to HepRepFile and Qt3D.</LI>
1584 </UL></LI>
1585 <LI><B>Modeling</B>
1586 <UL>
1587 <LI>G4TrajectoryDrawerUtils: first version of generic time windowing of
1588 trajectory slices; draws only slices within the viewer time window.
1589 Note: unless the viewer can handled time-sliced trajectories (only
1590 OGLS can do this at present), the viewer must request a kernel visit
1591 on change of viewer time window.
1592 Trap trajectories with very long global times, e.g, products of
1593 long-lived radioactive isotopes. Draw as non-time-sliced trajectories.
1594 Added fading of trajectory slices if time windowing is active; makes
1595 trajectory slices look like little meteors streaking across the screen.
1596 Applied clang-format.</LI>
1597 <LI>G4ModelingParameters: implemented <TT>TimeParameters::operator!=()</TT>.
1598 Adjusted default values in TimeParameters: set fade factor to 1
1599 (maximum fading); set head time display 2D x-coordinate to zero
1600 (centre), while 2D y-coordinate remains at -0.9 (bottom).
1601 Added struct <TT>TimeParameters</TT>, a prerequisite for "Generic
1602 Time-Slicing" for the display of the time evolution of events.
1603 With that feature, the display of tracks moving through time will be
1604 available to all vis drivers (drivers will still be allowed to
1605 implement their own time evolution).</LI>
1606 <LI>G4TrajectoriesModel: in <TT>DescribeYourselfTo()</TT>, draw display
1607 head time if requested and if time windowing is active; removed
1608 Begin/EndDraw around the trajectories loop.</LI>
1609 <LI>In G4TrajectoryDrawByEncounteredVolume and
1610 G4TrajectoryEncounteredVolumeFilter, use <TT>G4VTrajectory::GetAttValues()</TT>
1611 instead of <TT>CreateAttValues()</TT>, to speedup repeated visits.</LI>
1612 <LI>G4VModel: introduced static data member for current modeling parameters
1613 and its static accessor, <TT>GetCurrentModelingParameters()</TT>.</LI>
1614 <LI>In G4PhysicalVolumeModel, fixed typo in ModelType.</LI>
1615 <LI>G4TrajectoriesModel: call <TT>SetCurrentModelingParameters()</TT>.</LI>
1616 <LI>G4ModelingParameters: added <TT>TransparencyByDepth</TT> and
1617 <TT>TransparencyByDepthOption</TT>.</LI>
1618 <LI>G4PhysicalVolumeModel: renamed some data members and access functions
1619 for clarity; added <TT>fMaxFullDepth</TT> (includes base path, i.e.,
1620 from world volume); added code for processing transparency by depth.</LI>
1621 </UL></LI>
1622 <LI><B>OpenGL</B>
1623 <UL>
1624 <LI>G4OpenGLQtViewer: fixed the original pick feature to show pick info
1625 window. Implemented new virtual methods of G4VViewer,
1626 <TT>GetWindowSize()</TT> and <TT>GetRenderAreaSize()</TT>; modified
1627 <TT>wheel_rotate()</TT> function to call <TT>ZoomFromMouseWheel()</TT>
1628 of G4VViewer; updated <TT>moveScene()</TT> method to work correctly in
1629 perspective mode with dolly zoom.
1630 Commented calls to TouchableSetVisibility/Colour;
1631 no longer needed since the introduction of the new scene tree.
1632 Commented out some debug printing to <TT>std::cout</TT>.
1633 Improved context menu behavior for picking; added condition to avoid
1634 picking with rigth mouse button.</LI>
1635 <LI>G4OpenGLWin32Viewer: added <TT>SwitchToMasterThread()</TT> method to draw
1636 trajectories at the end of run in MT mode. Implemented new virtual
1637 methods of G4VViewer, <TT>GetWindowSize()</TT> and
1638 <TT>GetRenderAreaSize()</TT>; modified <TT>SetZoom()</TT> function to
1639 call <TT>ZoomFromMouseWheel()</TT> of G4VViewer.</LI>
1640 <LI>G4OpenGLStoredViewer, G4OpenGLStoredQtViewer: initiate kernel visit if
1641 <TT>TransparencyByDepth</TT> or its options change.</LI>
1642 <LI>In G4OpenGLStoredViewer, follow changes introduced in G4ViewParameters.</LI>
1643 <LI>Implemented policy for dotsSize and dotsSmooth.</LI>
1644 </UL></LI>
1645 <LI><B>OpenInventor</B>
1646 <UL>
1647 <LI>G4OpenInventorViewer: initiate kernel visit if <TT>TransparencyByDepth</TT>
1648 or its options change. In <TT>CompareForKernelVisit()</TT>, cause kernel
1649 visit if viewer start/end time changes; this is to take advantage of the
1650 new generic time window. Implemented <TT>CompareForTransientsRedraw()</TT>.
1651 Take advantage of <TT>ProcessTransients()</TT>, which reconstructs that
1652 part of the graphical database for transient objects, e.g., trajectories,
1653 without reconstructing the "permanent" (run-duration) objects, e.g.,
1654 the detector. In other words, something short of a complete "kernel
1655 visit". For example, if the time window changes. Maximises the
1656 efficiency of the recently implemented "generic" time windowing.</LI>
1657 <LI>Implemented policy for dotsSize and dotsSmooth.</LI>
1658 </UL></LI>
1659 <LI><B>RayTracer</B>
1660 <UL>
1661 <LI>Introducing RayTracerQt. Uses multithreading tracer, G4TheMTRayTracer.
1662 With multithreading, image construction is quite fast.</LI>
1663 <LI>Introduced nicknames (long names still work): RT (for RayTracer),
1664 RTX (for RayTracerX), RTQt (for RayTracerQt).</LI>
1665 <LI>In G4RayTracerViewer, use G4Timer to estimate
1666 KernelVisitElapsedTimeSeconds.</LI>
1667 <LI>In G4VRTScanner (and inherited classes), removed misleading and un-used
1668 methods <TT>GetGSName()</TT> and <TT>GetGSNickName()</TT>.</LI>
1669 </UL></LI>
1670 <LI><B>ToolsSG</B>
1671 <UL>
1672 <LI>Upgraded driver to work with OpenGL-3.2 and cowork with Vtk.</LI>
1673 <LI>Allow accumulation of transients (trajectories) during multithreading.</LI>
1674 <LI>Trajectories are stored in the database during the run, and displayed
1675 at end of run. All events are displayed at end of run.</LI>
1676 <LI>In G4ToolsSGViewer, initiate kernel visit if <TT>TransparencyByDepth</TT>
1677 or its options change. In <TT>CompareForKernelVisit()</TT>, cause kernel
1678 visit if viewer start/end time changes; this is to take advantage of the
1679 new generic time window. Implemented <TT>CompareForTransientsRedraw()</TT>.
1680 Removed <TT>SwitchToVisSubThread</TT> and <TT>SwitchToMasterThread</TT>
1681 as no action is needed on thread switching.
1682 In <TT>mouse_move()</TT>, use the <TT>event.shift_modifier()</TT> method,
1683 to pass in pan mode. Have <TT>GetWindowSize()</TT> and
1684 <TT>GetRenderAreaSize()</TT> methods to retrieve the actual sizes of the
1685 "seen/visible window" and of the "render area" size; these may return
1686 different sizes, for example with Qt/OpenGL on macOS and Windows.
1687 In <TT>SetView()</TT>, use the new <TT>GetWindowSize()</TT>,
1688 <TT>GetRenderAreaSize()</TT> methods to set the "marker scale" on
1689 G4ToolsSGSceneHandler.
1690 Modified <TT>wheel_rotate()</TT> function to call
1691 <TT>ZoomFromMouseWheel()</TT> of G4VViewer; added method
1692 <TT>GetSceneNearWidth()</TT>.
1693 In <TT>CreateSG()</TT>, for 3D scenes, have a <TT>tools::sg::shade_model</TT>
1694 node set to "smooth" so TSG_GLES have the same rendering as in OGLI/OGLS.
1695 Issuing Gouraud shading on surfaces by default.</LI>
1696 <LI>G4ToolsSGQtGLESViewer, G4ToolsSGQtZBViewer, G4ToolsSGOffscreenViewer:
1697 suppressed <TT>SetView()</TT> method, as no more needed.</LI>
1698 <LI>In G4ToolsSGSceneHandler, respect line width in vis attributes and view
1699 parameters. In <TT>GetOrCreateNode()</TT>, removed restriction on
1700 multithreading. Handle the <TT>fMarkerScale</TT> field.</LI>
1701 <LI>Implemented policy for dotsSize and dotsSmooth.</LI>
1702 <LI>Modernised macro-based loops with range-based for statements.</LI>
1703 </UL></LI>
1704 <LI><B>Vtk</B>
1705 <UL>
1706 <LI>In <TT>G4VtkSceneHandler::ClearStore()</TT>, fix to clear both stores.</LI>
1707 </UL></LI>
1708 </UL>
1709
1710 <A NAME="data-notes">
1711 <H3><I>Data sets</I></H3></A>
1712 <UL>
1713 <LI>Updated photon evaporation data set version, <B>G4PhotonEvaporation-6.1.2</B>:
1714 <UL>
1715 <LI>Correction to files z94.a239 (addressing problem report
1716 <A href="https://bugzilla-geant4.kek.jp/show_bug.cgi?id=2682">#2682</A>),
1717 z91.a234 (addressing problem report
1718 <A href="https://bugzilla-geant4.kek.jp/show_bug.cgi?id=2170">#2170</A>),
1719 z5.a11 (addressing problem report
1720 <A href="https://bugzilla-geant4.kek.jp/show_bug.cgi?id=2577">#2577</A>)
1721 and z75.a187 (addressing problem report
1722 <A href="https://bugzilla-geant4.kek.jp/show_bug.cgi?id=2685">#2685</A>).</LI>
1723 </UL></LI>
1724 <LI>Updated low energy electromagnetic data set version, <B>G4EMLOW-8.8</B>:
1725 <UL>
1726 <LI>Updated MicroElec data: added new files and updated format of other
1727 files.</LI>
1728 <LI>Extension of ELSEPA elastic cross-section files for electrons in water
1729 up to <TT>10 MeV</TT>.</LI>
1730 </UL></LI>
1731 <LI>Updated version of data set for neutron energies, <B>G4PARTICLEXS-4.2</B>:
1732 <UL>
1733 <LI>Added data for elements and isotopes for neutrons in the resonance
1734 region, which are using more detailed energy scale and better reproduce
1735 resonance structure.</LI>
1736 </UL></LI>
1737 <LI>Updated data set for proton and neutron density profiles,
1738 <B>G4INCL-1.3</B>:
1739 <UL>
1740 <LI>New data files for in-flight antiprotons (Channel probabilities)
1741 <TT>inflight*FS*.dat</TT>.</LI>
1742 </UL></LI>
1743 <LI>Updated data set for the simulation of channeling trajectories,
1744 <B>G4CHANNELING-2.0</B>:
1745 <UL>
1746 <LI>Updated <TT>Si-axis-100.dat</TT> file after revision of the algorithm
1747 and increasing the accuracy.</LI>
1748 <LI>Added files for: Si, Ge and Diamond.</LI>
1749 </UL></LI>
1750 </UL></LI>
1751
1752 <A NAME="ex-notes">
1753 <H3><I>Examples</I></H3></A>
1754 <UL>
1755 <LI>Updated reference outputs, macros, READMEs and scripts.</LI>
1756 <LI>Migraded READMEs to Markdown format.</LI>
1757 <LI>Fixes for Doxygen documentation and coding guidelines.</LI>
1758 <LI>Updated examples macros for removal of HepRep[File] vis drivers.</LI>
1759 <LI><B><U>advanced</U></B>
1760 <UL>
1761 <LI><B>CaTS</B>
1762 <UL>
1763 <LI>RootIO, EventAction: Moved hit collections from EventAction to
1764 RootIO and improved code readability.</LI>
1765 <LI>In DetectorConstruction, introduced map of sensitive detectors
1766 with names and refactored code for adding detectors.</LI>
1767 <LI>lArTPCSD, readPhotonHits: updated for renaming from Photondetector
1768 to PhotonDetector and revised NumElectrons.</LI>
1769 </UL></LI>
1770 <LI><B>dna/cellularPhantom</B>
1771 <UL>
1772 <LI>Code reorganisation; introduced Run class.</LI>
1773 <LI>Simplified analysis of results.</LI>
1774 <LI>Updated affiliation.</LI>
1775 </UL></LI>
1776 <LI><B>dna/moleculardna</B>:
1777 <UL>
1778 <LI>Updated new implementation of IRT-syn model.</LI>
1779 <LI>Corrected segmentation error with Root macrofiles, caused when low
1780 damage had been produced.</LI>
1781 <LI>Updated reaction list for DNA reactions.</LI>
1782 <LI>Define missing variable in some macros.</LI>
1783 <LI>Increased default statistics in <TT>ecoli.mac</TT>.</LI>
1784 <LI>Fixed cell geometry in <TT>human_cell_chromosomes.mac</TT>.</LI>
1785 <LI>Added moleculardna macro, Root macro and geometry files for the
1786 simulation of phages.</LI>
1787 <LI>Commented out system calls in all Root analysis macros.</LI>
1788 <LI>Updated direct damage range for plasmid.mac and <TT>cylinders.mac</TT>.</LI>
1789 <LI>Added <TT>fiber.mac</TT> macro.</LI>
1790 <LI>Increased max number of arguments in main().</LI>
1791 <LI>Added protection to all analysis macros to avoid <TT>nan</TT> in error
1792 calculation.</LI>
1793 <LI>Added possibility to activate parallel world using dedicated flag from
1794 executable.</LI>
1795 <LI>Added <TT>/scheduler/verbose 0</TT> to all human* macros.</LI>
1796 <LI>Fixed <TT>phase_space_test.mac</TT> macro.</LI>
1797 <LI>Merged the output files from different threads to a single file.</LI>
1798 <LI>Fixed memory leak in the PrimaryGeneratorAction for phase_space.</LI>
1799 <LI>Fixed the wrong gap: a gap (distance between 2 hits) can be 0
1800 Addressing problem report
1801 <A href="https://bugzilla-geant4.kek.jp/show_bug.cgi?id=2681">#2681</A>.</LI>
1802 <LI>Added protection for over counting damage.</LI>
1803 <LI>Fixed the printed info by Batmunkh.</LI>
1804 <LI>Updated analysis macros for statistical analysis of errors.</LI>
1805 <LI>Updated absorbed dose calculation in analysis macros to avoid
1806 double counting of energy deposition in DNA geometry, and inclusion
1807 of error on the dose.</LI>
1808 </UL></LI>
1809 <LI><B>eFLASH_radiotherapy</B>
1810 <UL>
1811 <LI>Added new class FlashMinibeamTemplate implementing the geometry of
1812 collimatiors for minibeam production, including the different
1813 geometrical configurations (grid and planar).
1814 Modified FlashDetectorConstruction accordigly.</LI>
1815 <LI>Added a macro file for minibeam production.</LI>
1816 </UL></LI>
1817 <LI><B>exp_microdosimetry</B>
1818 <UL>
1819 <LI>Added mini tissue equivalent proportional counter (mini TEPC) in
1820 DetectorConstruction.</LI>
1821 <LI>Added a new macro implementing a parallel monoenergetic
1822 <TT>100 MeV</TT> proton beam.</LI>
1823 </UL></LI>
1824 <LI><B>gammaknife</B>
1825 <UL>
1826 <LI>Fixed visualisation of geometry, which can be now drawn with
1827 <TT>/vis/drawVolume</TT>. Corrected positioning of boxmesh.
1828 Based on
1829 <A HREF="https://github.com/Geant4/geant4/pull/92">GitHub PR#92</A>.</LI>
1830 </UL></LI>
1831 <LI><B>IAEAphsp</B>
1832 <UL>
1833 <LI>New example demonstrating how to read and write IAEA phase-space
1834 (IAEAphsp) files within a minimal, configurable application. The
1835 IAEAphsp format is defined by the IAEA Nuclear Data Section; this
1836 example shows how to use IAEAphsp files as input source (i.e. as a
1837 primary generator) and how to produce IAEAphsp outputs at given
1838 scoring planes. Reference paper: M.A. Cortes-Giraldo et al.,
1839 Int J Radiat Biol 88(1-2): 200-208 (2012).</LI>
1840 </UL></LI>
1841 <LI><B>microbeam</B>
1842 <UL>
1843 <LI>Added n-tuple merging.</LI>
1844 </UL></LI>
1845 <LI><B>microelec_SEY</B>
1846 <UL>
1847 <LI>New example simulating the passage of incident electrons [10eV, 10keV]
1848 in a stack of 6 layers, where thicknesses and material nature can be user
1849 defined. The number of electrons re-emitted by the irradiated
1850 surface is counted by a spherical detector surrounding the whole
1851 geometry and providing the SEY rate in a csv file as a function
1852 of the incident energy.</LI>
1853 </UL></LI>
1854 </UL></LI>
1855 <LI><B><U>basic</U></B>
1856 <UL>
1857 <LI><B>B1</B>
1858 <UL>
1859 <LI>RunAction: modified printout to use the expression "Absorbed dose"
1860 Print Edep and mass of scoring volume.</LI>
1861 <LI>Increased statistics in <TT>exampleB1.in</TT>.</LI>
1862 </UL></LI>
1863 <LI><B>B3</B>
1864 <UL>
1865 <LI>Removed StackingAction class and using method
1866 <TT>SetDefaultClassification()</TT> from G4RunManager for
1867 killing neutrinos.</LI>
1868 </UL></LI>
1869 </UL></LI>
1870 <LI><B><U>extended</U></B>
1871 <UL>
1872 <LI><B>biasing</B>
1873 <UL>
1874 <LI><B>GB03</B>
1875 <UL>
1876 <LI>Instantiate G4GenericBiasingPhysics only if biasing is enabled.
1877 Propagate biasing on/off to detector construction to initialise
1878 biasing classes only if biasing is requested.</LI>
1879 <LI>Added histograms and counters for particles penetrating the
1880 shield volume.</LI>
1881 <LI>Replaced GB03DetectorMessenger with GenericMessenger.</LI>
1882 </UL></LI>
1883 <LI><B>GB05</B>
1884 <UL>
1885 <LI>Removed explicit call of base class constructor in DetectorConstruction.</LI>
1886 </UL></LI>
1887 <LI><B>GB07</B>
1888 <UL>
1889 <LI>Removed explicit call of base class constructor in DetectorConstruction.</LI>
1890 </UL></LI>
1891 <LI><B>ReverseMC01</B>
1892 <UL>
1893 <LI>Migrated to work in MT mode.</LI>
1894 </UL></LI>
1895 </UL></LI>
1896 <LI><B>common</B>
1897 <UL>
1898 <LI>New directory providing a set of classes independent on each other
1899 which can be reused in "feature" examples or users applications,
1900 demonstrating just a particular feature.</LI>
1901 </UL></LI>
1902 <LI><B>electromagnetic</B>
1903 <UL>
1904 <LI><B>TestEm0</B>
1905 <UL>
1906 <LI>RunAction: introduced <TT>G4endl</TT> in several places to
1907 easy debugging.</LI>
1908 </UL></LI>
1909 <LI><B>TestEm2</B>
1910 <UL>
1911 <LI>Fixed memory leak at exit in ActionInitialisation, DetectorConstruction
1912 and RunAction. Instantiate the field messenger differently.</LI>
1913 </UL></LI>
1914 <LI><B>TestEm4</B>
1915 <UL>
1916 <LI>Added G4RayleighScattering in PhysicsList.</LI>
1917 </UL></LI>
1918 <LI><B>TestEm5</B>
1919 <UL>
1920 <LI>TrackingAction: fixed reflect condition for negative X beam.</LI>
1921 </UL></LI>
1922 <LI><B>TestEm7</B>
1923 <UL>
1924 <LI>DetectorConstruction: fixed <TT>SetWorldMaterial()</TT> to
1925 correctly act on the world logical volume, rather than the
1926 absorber.</LI>
1927 </UL></LI>
1928 <LI><B>TestEm13</B>
1929 <UL>
1930 <LI>Added G4RayleighScattering in PhysicsList.</LI>
1931 </UL></LI>
1932 <LI><B>TestEm14</B>
1933 <UL>
1934 <LI>Added G4RayleighScattering in PhysicsList.</LI>
1935 </UL></LI>
1936 <LI><B>TestEm15</B>
1937 <UL>
1938 <LI>Updated <TT>gamma.mac</TT> input macro to use emstandard_opt4.</LI>
1939 <LI>Removed <TT>gamma2mumu.mac</TT> input macro.</LI>
1940 </UL></LI>
1941 <LI><B>TestEm18</B>
1942 <UL>
1943 <LI>Added G4RayleighScattering in PhysicsList.</LI>
1944 </UL></LI>
1945 </UL></LI>
1946 <LI><B>eventgenerator</B>
1947 <UL>
1948 <LI><B>exgps</B>
1949 <UL>
1950 <LI>In HistoManager, activated n-tuple merging.</LI>
1951 <LI>Fixed python and analysis macros (tested with python 3.13.3).</LI>
1952 <LI>Moved <TT>plotHisto.C</TT> to macros.
1953 Removed <TT>plottest35.py</TT> and <TT>plotit.csh</TT>.</LI>
1954 <LI>Excluded not working tests (needed further investigation).</LI>
1955 <LI>Removed <TT>exgps_batch.in</TT> (identical with <TT>exgps.in</TT>).</LI>
1956 <LI>Copy all macros and run script into the build area in CMake
1957 script.</LI>
1958 </UL></LI>
1959 <LI><B>pythia/decayer6</B>
1960 <UL>
1961 <LI>Removed <TT>common</TT> subdirectory and copied only classes
1962 used in this example.</LI>
1963 </UL></LI>
1964 <LI><B>pythia/py8decayer</B>
1965 <UL>
1966 <LI>Updated to Pythia-8.3.15.</LI>
1967 </UL></LI>
1968 </UL></LI>
1969 <LI><B>exoticphysics</B>
1970 <UL>
1971 <LI><B>channeling</B>
1972 <UL>
1973 <LI><B>ch2</B>
1974 <UL>
1975 <LI>New macros dedicated to specific applications.</LI>
1976 <LI>Extended output at the detector.</LI>
1977 <LI>Added scoring of radiation spectrum from the Baier-Katkov
1978 method; introduced virtual collimator.</LI>
1979 <LI>Updated python analysis tools, no change in simulation
1980 code. Added a jupyter notebook version of a python script.</LI>
1981 </UL></LI>
1982 <LI><B>ch5</B>
1983 <UL>
1984 <LI>New example for simulating a positron source. Although the
1985 conventional approach based on an **amorphous target** is
1986 possible, the application is primarily designed to simulate
1987 positron sources based on oriented crystals. In the latter
1988 case, both the **single-crystal** and the **hybrid scheme**
1989 can be investigated.</LI>
1990 </UL></LI>
1991 </UL></LI>
1992 <LI><B>phonon</B>
1993 <UL>
1994 <LI>Updated build script for CTests definitions.</LI>
1995 </UL></LI>
1996 </UL></LI>
1997 <LI><B>g3tog4</B>
1998 <UL>
1999 <LI>Removed <TT>common</TT> subdirectory and copied only classes used
2000 in these examples.</LI>
2001 </UL></LI>
2002 <LI><B>hadronic</B>
2003 <UL>
2004 <LI>GammaNuclearPhysics: use G4GammaNuclearXS data set.</LI>
2005 <LI><B>NeutronSource</B>
2006 <UL>
2007 <LI>In <TT>main()</TT>, added <TT>SetUseNRESP71Model(true)</TT>.</LI>
2008 <LI>PhysicsList: removed temporary access to neutron capture model
2009 based on model name; removed unnecesary commented lines.
2010 Use local RadioactiveDecayPhysics instead of
2011 G4RadioaciveDecayPhysics. Use G4EmStandardPhysics_option3
2012 instead of opt4; added G4EmExtraPhysics as an alternative to
2013 GammaNuclearPhysics; use G4HadronElasticPhysicsXS instead of HP.</LI>
2014 </UL></LI>
2015 </UL></LI>
2016 <LI><B>medical/DICOM</B>
2017 <UL>
2018 <LI>Refactored DICOM examples into a single project; now build everything
2019 together for ease of use and demonstration. Code/behaviour otherwise
2020 is unchanged. Including two examples, DICOM1 (renamed from the original
2021 DICOM) and DICOM2, with two libraries that implement capabilities
2022 common to both applications: G4DicomCore, providing the core Geant4
2023 application structure; G4DicomReader, optional utility library to read
2024 DICOM files and RT structure in DICOM format, as well as RT plans.
2025 Both applications can optionally use the DICOM Digital Head. </LI>
2026 </UL></LI>
2027 <LI><B>medical/dna</B>
2028 <UL>
2029 <LI>Use 'default' for trival destructors.</LI>
2030 <LI><B>AuNP</B>:
2031 <UL>
2032 <LI>Added chemistry functionality.</LI>
2033 <LI>Code refactoring and cleanup.</LI>
2034 </UL></LI>
2035 <LI><B>chem4</B>:
2036 <UL>
2037 <LI>Replaced <TT>shared_ptr</TT> with <TT>unique_ptr</TT> and raw
2038 for manager counters.</LI>
2039 </UL></LI>
2040 <LI><B>chem5</B>:
2041 <UL>
2042 <LI>Use the new G4MoleculeCounterManager to manage the
2043 G4MoleculeCounter.</LI>
2044 <LI>Replaced <TT>shared_ptr</TT> with <TT>unique_ptr</TT> and raw
2045 for manager counters.</LI>
2046 <LI>Code clean up; added plot.py script for plotting the output
2047 data.</LI>
2048 </UL></LI>
2049 <LI><B>chem6</B>:
2050 <UL>
2051 <LI>Replaced <TT>shared_ptr</TT> with <TT>unique_ptr</TT> and raw
2052 for manager counters.</LI>
2053 <LI>Added UI commands to select physics constructor and output
2054 file name.</LI>
2055 <LI>Code Refactoring.</LI>
2056 </UL></LI>
2057 <LI><B>dnadamage1</B>:
2058 <UL>
2059 <LI>Replaced <TT>shared_ptr</TT> with <TT>unique_ptr</TT> and raw
2060 for manager counters.</LI>
2061 <LI></LI>
2062 </UL></LI>
2063 <LI><B>dnadamage2</B>:
2064 <UL>
2065 <LI>Access DetectorConstruction via <TT>GetUserDetectorConstruction()</TT>
2066 from G4RunManager.</LI>
2067 <LI>Delete run-manager as last in <TT>main()</TT>.</LI>
2068 </UL></LI>
2069 <LI><B>dnaphysics</B>:
2070 <UL>
2071 <LI>Added possibility to simulate radioactive nuclei;
2072 added <TT>radioactive.in</TT> macro and <TT>plotRadioactive.C</TT>.</LI>
2073 <LI>Added <TT>elastic.in</TT> and <TT>plotElastic.C</TT> macros to show
2074 distribution of scattering angles.</LI>
2075 <LI>Added UI command to record first step only;
2076 updated <TT>elastic.in</TT> macro accordingly.</LI>
2077 <LI>Updated PhysicsList and SteppingAction.</LI>
2078 </UL></LI>
2079 <LI><B>mfp</B>:
2080 <UL>
2081 <LI>Added n-tuple merging.</LI>
2082 </UL></LI>
2083 <LI><B>microtrack</B>:
2084 <UL>
2085 <LI>New example implementing a geometry to calculate microdosimetry
2086 quantities for ion tracks in liquid water at a given energy,
2087 ensuring secondary electron equilibrium when needed. At each
2088 event, a random track hit defines a spherical scoring site;
2089 weighted sampling is then used to estimate energy imparted and
2090 related quantities.</LI>
2091 </UL></LI>
2092 <LI><B>molcounters</B>:
2093 <UL>
2094 <LI>New example showing how to use the new molecule counter manager
2095 system and how to write custom molecule counters. The custom
2096 (spatially-aware) molecule counter used here is further
2097 described in: Radiat. Phys. Chem. 212 (2023) 111194.</LI>
2098 </UL></LI>
2099 <LI><B>neuron</B>:
2100 <UL>
2101 <LI>Added UI commands to calculate water radiolysis products in
2102 specific regions.</LI>
2103 <LI>Commented out the initialization in <TT>main()</TT> to allow
2104 G4DNAPhysicsActivator to register DNA regions in the macro
2105 input file.</LI>
2106 </UL></LI>
2107 <LI><B>phasespace</B>:
2108 <UL>
2109 <LI>New example showing how to simulate particle tracks in a cube
2110 of liquid water containing a scoring sphere, placed in its
2111 centre.</LI>
2112 </UL></LI>
2113 <LI><B>radial</B>:
2114 <UL>
2115 <LI>New example showing how to simulate radial dose profiles in
2116 liquid water from incident ions using the Geant4-DNA physics
2117 processes and models.</LI>
2118 </UL></LI>
2119 <LI><B>range</B>:
2120 <UL>
2121 <LI>Added beta option8 physics list.</LI>
2122 </UL></LI>
2123 <LI><B>scavenger</B>:
2124 <UL>
2125 <LI>Replaced <TT>shared_ptr</TT> with <TT>unique_ptr</TT> and raw
2126 for manager counters.</LI>
2127 </UL></LI>
2128 <LI><B>slowing</B>:
2129 <UL>
2130 <LI>Added n-tuple merging.</LI>
2131 </UL></LI>
2132 <LI><B>spower</B>:
2133 <UL>
2134 <LI>Added scoring of secondary electrons.</LI>
2135 <LI>PhysicsList: added all DNA Physics Lists and usage of
2136 G4EmParameters.</LI>
2137 <LI>In <TT>lot.C</TT>, added selection of electrons by default.</LI>
2138 <LI>In <TT>spower.in</TT>, changed physics constructors.
2139 Added inactivation of nuclearStopping (for ions).</LI>
2140 </UL></LI>
2141 <LI><B>svalue</B>:
2142 <UL>
2143 <LI>Added n-tuple merging.</LI>
2144 <LI>Added missing optional include file in TrackingAction header.</LI>
2145 <LI>Added optional time threshold to iodine macros.</LI>
2146 </UL></LI>
2147 <LI><B>UHDR</B>:
2148 <UL>
2149 <LI>Updated pulseAction for larger pulse size.</LI>
2150 <LI>Temporarily use molecule counter for EventScheduler.</LI>
2151 <LI>Updated reaction table for scavengers.</LI>
2152 <LI>Use the new G4MoleculeCounterManager to manage the
2153 G4MoleculeCounter.</LI>
2154 <LI>Added pulse structure and interpulse feature.</LI>
2155 <LI>Fixed partially diffused-control reactions.</LI>
2156 <LI>Fixed crash due to typo in <TT>UHDR.in</TT>.</LI>
2157 <LI>Removed dependence of PrimaryGeneratorAction/Physlist/ChemList
2158 and ActionIni classes on DetectorConstruction class.</LI>
2159 <LI>Added protection against null pointer in <TT>plotG_time.C</TT>.</LI>
2160 <LI>Updated macro files.</LI>
2161 </UL></LI>
2162 </UL></LI>
2163 <LI><B>medical/radiobiology</B>
2164 <UL>
2165 <LI>Primary beam origin can be located outside the detector water tank.</LI>
2166 </UL></LI>
2167 <LI><B>parallel</B>
2168 <UL>
2169 <LI>Retired obsolete TBB example. Functionality fully provided by
2170 tasking run manager with TBB support with no user code changes
2171 required.</LI>
2172 <LI><B>MPI</B>
2173 <UL>
2174 <LI>Modernised and simplified library and example build scripts
2175 to build G4mpi library and examples of its use in one project.
2176 <LI>Moved MPI from deprecated C++ interface to C interface (MPI 3+).
2177 Based on:
2178 <A HREF="https://github.com/Geant4/geant4/pull/81">GitHub PR#81</A>.</LI>
2179 </UL></LI>
2180 </UL></LI>
2181 <LI><B>parameterisations</B>
2182 <UL>
2183 <LI><B>Par04</B>
2184 <UL>
2185 <LI>Introduction of the CaloDiT pre-trained model, offering greater
2186 accuracy.</LI>
2187 <LI>Updated VAE training with the new translation script and Condor
2188 scripts.</LI>
2189 <LI>Applied GitHub PRs from dependabot to update requirements.</LI>
2190 </UL></LI>
2191 </UL></LI>
2192 <LI><B>radioactivedecay</B>
2193 <UL>
2194 <LI><B>Activation</B>
2195 <UL>
2196 <LI>In <TT>main()</TT>, added <TT>SetUseNRESP71Model(true)</TT>.</LI>
2197 <LI>GammaNuclearPhysics: use G4GammaNuclearXS data set.</LI>
2198 </UL></LI>
2199 </UL></LI>
2200 <LI><B>runAndEvent</B>
2201 <UL>
2202 <LI><B>RE03</B>
2203 <UL>
2204 <LI>Temporarily protect against the use of parallel geometry
2205 initialization if running in sub-event parallel mode.</LI>
2206 </UL></LI>
2207 </UL>
2208 </UL>
2209
2210 <HR>
2211
2212 </BODY>
2213 </HTML>