File indexing completed on 2025-01-18 09:16:07
0001 <HTML>
0002 <HEAD>
0003 <TITLE>Geant4 10.1 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 10.1 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>, 2014</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="http://cern.ch/geant4/support/download.shtml">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="http://cern.ch/geant4/support/userdocuments.shtml">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 version</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-4.4.7.<BR>
0067 Tested on 64 bit architectures (Intel or AMD) with
0068 Scientific Linux CERN 6 (SLC6) (based on Red Hat Linux Enterprise 6).</LI>
0069 <LI>MacOSX 10.9 with gcc-4.2.1/clang-3.5</LI>
0070 <LI>Windows7 with Visual C++ 12.0 (Visual Studio 2013)</LI>
0071 </UL>
0072
0073 More verified and tested configurations (64 bits):
0074 <UL>
0075 <LI>Linux, gcc-4.7.2, gcc-4.8.2, gcc-4.9.2</LI>
0076 <LI>Linux, Intel-icc 14.0, 15.0</LI>
0077 <LI>MacOSX 10.10 with gcc-4.2.1/clang-3.5</LI>
0078 <LI>Windows7 with Visual C++ 9.0, 10.0, 11.0</LI>
0079 <LI>Many Integrated Core architecture (aka Intel Xeon Phi) with Intel-icc 15.0</LI>
0080 </UL>
0081 Note: Windows platforms are supported/verified only for the sequential mode.
0082 Multi-threading capability of this release does not support Windows.
0083
0084 <P> </P>
0085 <A NAME="2."></A>
0086 <HR>
0087
0088
0089
0090 <H2>2. Supported CLHEP version</H2>
0091
0092 This release of Geant4 has been verified with
0093 <A TARGET="ext" HREF="http://cern.ch/clhep/">CLHEP</A>, release <B>2.2.0.4</B>.
0094 Use of a different CLHEP version may cause incorrect simulation results.<BR>
0095 NOTE: an internal module of the relevant CLHEP classes is provided and can be
0096 used as alternative to an external CLHEP library installation.
0097
0098
0099 <P> </P>
0100 <A NAME="3."></A>
0101 <HR>
0102
0103
0104
0105 <H2>3. Items for migration of the user code</H2>
0106
0107 Listed here is some relevant information on developments included in this
0108 release.
0109 Note that for all users a full re-installation of libraries (or a full
0110 re-compilation) and a re-compilation of user applications is required.
0111
0112 <P> </P>
0113 <B>General</B>
0114 <P> </P>
0115 <UL>
0116 <LI>The new version of CLHEP can be built supporting the C++11 Standard,
0117 on compilers that support C++11.
0118 When C++11 option is chosen in a multi-threaded build of Geant4,
0119 this trigers the use of the Standard <TT>thread_local</TT>
0120 and <TT>atomic</TT> keywords.</LI>
0121 <LI>The procedure of deleting the full geometry for rebuilding a new one from
0122 scratch has been reviewed. It is suggested to use
0123 <TT>G4RunManager::ReinitializeGeometry(<I>true</I>)</TT>
0124 or the equivalent UI command <TT>/run/reinitializeGeometry</TT> rather than
0125 directly invoke deletion from G4SolidStore, G4LogicalVolumeStore and
0126 G4PhysicalVolumeStore, to safely delete all previously-defined solids,
0127 logical and physical volumes.</LI>
0128 </UL>
0129
0130 <P> </P>
0131 <B>Geometry</B>
0132 <P> </P>
0133 <UL>
0134 <LI>A new minor release of the GDML schema, GDML-3.1.1, is used,
0135 supporting the new MultiUnion structure. This new feature
0136 is available only in installations which use the
0137 <A HREF="https://cern.ch/aidasoft/USolids">Unified Solids Library</A>.
0138 The new schema is fully compatible with old schema versions
0139 and schema validation thorugh network is already activated against it.</LI>
0140 </UL>
0141
0142 <P> </P>
0143 <B>Electromagnetic and optical physics</B>
0144 <P> </P>
0145 <UL>
0146 <LI>The data file G4EMLOW6.41 should be used.</LI>
0147 <LI>A new structure of UI commands for optical-physics is implemented.</LI>
0148 </UL>
0149
0150 <P> </P>
0151 <B>Hadronic physics</B>
0152 <P> </P>
0153 <UL>
0154 <LI>The new data sets G4PhotonEvaporation-3.1, G4RadioactiveDecay-4.2
0155 and G4NDL-4.5 should be used.</LI>
0156 </UL>
0157
0158 <P> </P>
0159 <B>Generic biasing</B>
0160 <P> </P>
0161 <UL>
0162 <LI>The G4VBiasingOperation interface class had been modified to simplify
0163 the interface. These are described in the Biasing section of detailed
0164 changes chapter below.</LI>
0165 </UL>
0166
0167 <P> </P>
0168 <B>Data Sets</B>
0169 <P> </P>
0170 This release introduces new data set versions.
0171 Please see the corresponding details in
0172 <A href="#data-notes">Section 10</A> of this document.
0173 <UL>
0174 <LI>New data set versions: <TT>G4EMLOW-6.41, G4NDL-4.5,
0175 G4RadioactiveDecay-4.2, G4PhotonEvaporation-3.1</TT>.</LI>
0176 </UL>
0177
0178 <P> </P>
0179 <A NAME="4."></A>
0180 <HR>
0181
0182
0183
0184 <H2>4. New Developments and Capabilities </H2>
0185
0186 <B>Geometry</B>
0187 <UL>
0188 <LI>In this release, an option allows an installation to use the
0189 <A HREF="https://cern.ch/aidasoft/USolids">Unified Solids Library</A>
0190 primitives, to replace the original Geant4 solids, as in the
0191 previous release. An additional configuration option enables
0192 a build against an external installation of the USolids library.</LI>
0193 </UL>
0194
0195 <B>Materials</B>
0196 <UL>
0197 <LI>Preliminary support for phonon propagation
0198 (see <A HREF="#phonon"><b>Phonon Physics</b></A> below) is provided
0199 by G4LatticeLogical (which defines parameters for materials) and
0200 G4LatticePhysical (which associates G4LatticeLogical with a particular
0201 G4VPhysicalVolume, including lattice orientation). These objects should
0202 be instantiated in the user's G4VUserDetectorConstruction class.</LI>
0203 </UL>
0204
0205 <B>Electromagnetic physics</B>
0206 <UL>
0207 <LI>A new class G4EmParameters and updated set of UI commands have been
0208 introduced, allowing easy definition of the EM parameters both in
0209 sequential and multi-threaded modes.</LI>
0210 <LI>A new option "DisplacementBeyondBoundary" for simulation of
0211 multiple scattering diplacement at geometry boundary is available.</LI>
0212 <LI>G4SynchrotronRadiation process is now applicable for all
0213 charged particles.</LI>
0214 <LI>High energy processes G4GammaConversionToMuons and G4eeToHadrons
0215 are ready for production.</LI>
0216 <LI>A new model class G4LowEWentzelVIModel is introduced for low-energy
0217 electron elastic scattering. Low-energy cross-section for water has
0218 been added for the low-energy Livermore photoelectric model.</LI>
0219 <LI>A new User Interface command to disable production
0220 thresholds in atomic deexcitation has been introduced:
0221 <TT>/process/em/deexcitationIgnoreCut true/false</TT>.</LI>
0222 <LI>An alternative set of data files for the simulation of atomic fluorescence
0223 lines is also provided in this release.</LI>
0224 <LI>In Geant4-DNA physics, added ionisation model from Rudd for
0225 B, Be, Li and Si ions. An alternative physics constructor
0226 G4EmDNAPhysics_option1 including the G4LowEWentzelVIModel has been also
0227 introduced. G4DNAIonisation and G4DNARuddIonisationExtendedModel have been
0228 updated for G4GenericIon usage.</LI>
0229 <LI>Classes for the simulation of water radiolysis have been introduced for
0230 Geant4-DNA chemistry.
0231 See details at <A HREF="http://geant4-dna.org">Geant4-DNA project site</A></LI>
0232 </UL>
0233
0234 <B>Hadronic physics</B>
0235 <UL>
0236 <LI>In this release, mass width is taken into account in decays of short-lived
0237 hadrons. Daughter hadrons have dynamical mass according to Breit-Wigner
0238 distribution.</LI>
0239 <LI>The Fritiof (FTF) model has been significantly improved, resulting in
0240 closer agreement with thin-target data.
0241 Revisions in string fragmentation affect the meson production, and in
0242 particular the pi-zero fraction of showers. This is largely counteracted
0243 by other improvements of FTF and an imposed reduction of omega production.
0244 The overall effects on hadronic observables is found to large cancel
0245 in our benchmark hadronic calorimeter setups, but the effect should be
0246 monitored on experiment setups for key observables including visible
0247 energy, resolution, longitudinal and lateral size.</LI>
0248 <LI>The fragmentation part of the Quark-Gluon-String (QGS) model has been
0249 improved significantly.
0250 This implies that the hadronic showers produced with QGS-based physics
0251 lists (e.g. QGSP_FTFP_BERT) become wider and longer, and with a lower
0252 energy response, in closer agreement with the ones produced by FTF. </LI>
0253 <LI>The INCLXX model has been extended up to 15-20 GeV incident energy.</LI>
0254 <LI>Labeling of tracks resulting from muon stopping are added.</LI>
0255 </UL>
0256
0257 <A NAME="phonon"><B>Phonon Physics</b></A>
0258 <P>The contents of this new physics category were moved into the toolkit
0259 from the <Code>phonon</Code> extended example.</P>
0260 <UL>
0261 <LI>A new set of processes and utility classes are provided as a framework
0262 to support propagation of phonons through materials.</LI>
0263 <LI>G4LatticeManager and G4LatticeReader provide access to the solid
0264 crystal structure parameters (G4LatticeLogical and G4LatticePhysical in
0265 Materials) read from data files and used by the physics processes.</LI>
0266 <LI>G4PhononPolarization defines an enum to identify the three acoustic
0267 phonon polarization states supported in this framework. See
0268 also <A HREF="#particles"><b>Particles</b></A> below.</LI>
0269 <LI>G4PhononTrackMap is an internal singleton class used by the processes
0270 to associate additional phonon-specific information (wave number,
0271 etc.) with each propagating G4Track object in the event.</LI>
0272 <LI>G4VPhononProcess is the abstract base class for the phonon processes,
0273 and provide some common utility functions.</LI>
0274 <LI>G4PhononDownconversion implements the conversion of high energy
0275 phonons to pairs of lower energy phonons.</LI>
0276 <LI>G4PhononReflection is a "template" process which will, in the future,
0277 implement reflection or transmission of phonons at the boundaries of
0278 crystals. Currently, phonons at a boundary are absorbed, and an
0279 associated G4VUserSteppingAction (in the <Code>phonon</Code> example)
0280 records hits.</LI>
0281 <LI>G4PhononScattering implements the scatting of phonons from one
0282 polarization state to another due to impurities or defects in the
0283 crystal lattice.</LI>
0284 </UL>
0285
0286 <B>Generic Biasing</b>
0287 <UL>
0288 <LI>A new class G4BiasingProcessSharedData is introduced, allowing to gather
0289 information shared by the G4BiasingProcessInterface instances attached
0290 to the same G4ParticleDefinition (hold by a same G4ProcessManager).</LI>
0291 <LI>Now providing easier access to cross-sections/mean-free-paths of wrapped
0292 physics processes, making all them up to date at the first call to the
0293 biasing operator.</LI>
0294 <LI>New examples have been added: <TT>GB03</TT> showing a technique inspired
0295 by geometry importance biasing, but with some more flexibility;
0296 <TT>GB04</TT>, an implementation of Bremsstrahlung splitting, using the
0297 generic biasing classes.</LI>
0298 </UL>
0299
0300 <A NAME="particles"><B>Particles</B></A>
0301 <UL>
0302 <LI>Ions and isomers are instantiated during the event loop as they become
0303 necessary. In the previous release 10.0, all ions and isomers were
0304 instantiated before the event loop.</LI>
0305 <LI>Pre-instantiation of all ions and isomers is still optional via a UI
0306 command at <TT>PreInit</TT> or <TT>Idle</TT> states.</LI>
0307 <LI>Three new particles corresponding to the polarization states of acoustic
0308 phonons are provided to support the <A HREF="#phonon">phonon physics</A>
0309 processes. These were moved into the toolkit from the <Code>phonon</Code>
0310 extended example.
0311 <UL>
0312 <LI>G4PhononLong: longitudinal (along crystal valley axis) polarization;</LI>
0313 <LI>G4PhononTransFast: higher-speed transverse polarization;</LI>
0314 <LI>G4PhononTransSlow: lower-speed transverse polarization.</LI>
0315 </UL>
0316 </UL>
0317
0318 <B>Physics Lists</B>
0319 <UL>
0320 <LI>Switched on muon-nuclear by default in all physics lists.</LI>
0321 <LI>Cut on proton is set to zero, to simulate all recoils from elastic
0322 scattering, in physics lists using neutron-HP.</LI>
0323 <LI>The physics lists based on INCLXX use this model for pions, protons and
0324 neutrons up to 20 GeV, and the string model (FTF or QGS) starting
0325 from 15 GeV.</LI>
0326 <LI>Trying out a new hadron elastic scattering, still in development, in
0327 the experimental physics-list FTFP_BERT_TRV.</LI>
0328 <LI>The G4OpticalPhysics constructor has been restructured and UI
0329 commands have changed. This allows for different particles to have
0330 specific settings of optical parameters.</LI>
0331 <LI>New experimental physics lists ShieldingM and NuBeam are introduced.</LI>
0332 </UL>
0333
0334 <B>Visualization</B> and <B>Interfaces</B>
0335 <UL>
0336 <LI><U>Evolution of Qt User Interface</U>
0337 <UL>
0338 <LI>The "Scene tree" opens up as soon as the detector is drawn.</LI>
0339 <LI>An editable "Viewer properties" panel allows one to adjust view
0340 parameters interactively.</LI>
0341 <LI>"Picking information" also has its own panel that may be opened
0342 by the user. Picking has been improved.</LI>
0343 <LI>The "Scene tree, Help and History" panel may be detached, leaving
0344 more screen space for the viewers.</LI>
0345 <LI>The "Output" panel may also be detached.</LI>
0346 <LI>One may select output by a string match or, in the case of
0347 multi-threaded mode, by thread.</LI>
0348 <LI>A "Useful tips" window is available in the viewer panel and comes up
0349 automatically if no other view has been created.</LI>
0350 </UL></LI>
0351 <LI>In representing curved surfaces by planar polygons the number of
0352 "lines per circle" may optionally be reduced to as little as 3 (the
0353 default is 24) if speed of rendering is the priority.</LI>
0354 <LI><U>New commands</U>
0355 <UL>
0356 <LI><TT>/vis/touchable/dump</TT>: dumps attributes of a specific
0357 touchable (as set by the <TT>/vis/set/touchable</TT> command).</LI>
0358 <LI><TT>/vis/scene/add/extent</TT>: allows one to add an extent (i.e.,
0359 coordinate system and range) to a scene. Normally this is done
0360 automatically by a survey of the geometry, but if you wish to draw
0361 trajectories without geometry, for example, you may use this command.</LI>
0362 <LI><TT>/vis/set/textSize</TT>: controls text size on subsequent
0363 <TT>/vis/scene/add/axes</TT> and <TT>/vis/scene/add/scale</TT> commands.</LI>
0364 </UL></LI>
0365 <LI><U>Improved commands</U>
0366 <UL>
0367 <LI><TT>/vis/scene/add/scale</TT>: one may now add more than one scale
0368 to a scene.</LI>
0369 <LI><TT>/vis/scene/add/axes</TT>: one may suppress annotations.</LI>
0370 <LI><TT>/vis/scene/add/logicalVolume</TT>: now draws axes of the local
0371 coordinate system.</LI>
0372 </UL></LI>
0373 </UL>
0374
0375 <A NAME="5."></A>
0376 <HR>
0377
0378 <!-- ============================================== -->
0379
0380 <H2>5. Expected effects on physics and computing performance</H2>
0381
0382 <B>General</B>
0383 <UL>
0384 <LI>Memory space required per thread is reduced to less than half.
0385 This reduction does not include the space defined in the users code.</LI>
0386 <LI>We observe up to 10% speedup in several use-cases.</LI>
0387 </UL>
0388
0389 <B>Electromagnetic physics</B>
0390 <UL>
0391 <LI>All internal physics tables are shared between threads, thus
0392 reducing contribution of electromagnetic physics to total
0393 memory per thread.</LI>
0394 <LI>Code cleanup providing slight speedup (about a few percent)
0395 of electromagnetic simulation.</LI>
0396 </UL>
0397
0398 <B>Hadronic physics</B>
0399 <UL>
0400 <LI>Extensive development in the FTF model has improved significantly
0401 the agreement between simulation and thin-target data on
0402 hadron-hadron and hadron-nucleus interactions.
0403 Small changes are expected in hadronic shower observables
0404 in the physics lists based on the FTF model (e.g. FTFP_BERT).</LI>
0405 <LI>Improvements in the fragmentation part of the QGS model produce
0406 now hadronic showers which are more similar to those produced by the
0407 FTF model.</LI>
0408 </UL>
0409
0410 <P> </P>
0411 <A NAME="6."></A>
0412 <HR>
0413
0414 <!-- ============================================== -->
0415
0416 <H2>6. Known Run-Time Problems and Limitations</H2>
0417 For a complete list of outstanding run-time problems and to submit any
0418 problem you may find while running this version of Geant4, please refer
0419 to the
0420 <A TARGET="ext" HREF="http://cern.ch/geant4/problemreport">Geant4 Problem
0421 Reporting System</A>.
0422
0423 <P> </P>
0424 <A NAME="7."></A>
0425 <HR>
0426
0427 <!-- ============================================== -->
0428
0429 <H2>7. Compilation Warnings</H2>
0430
0431 There may be a few compilation warnings on some platforms.
0432 We do not believe that any of these lead to incorrect run-time behaviour.
0433
0434 <P> </P>
0435 <A NAME="8."></A>
0436 <HR>
0437
0438 <!-- ============================================== -->
0439
0440 <H2>8. Geant4 Software License</H2>
0441
0442 A Software License applies to the Geant4 code.
0443 Users must accept this license in order to use it. The details and the list of
0444 copyright holders is available at
0445 <A href="http://cern.ch/geant4/license">http://cern.ch/geant4/license</A>
0446 and also in the text file <TT>LICENSE</TT> distributed with the source code.
0447
0448 <P> </P>
0449 <A NAME="9."></A>
0450 <HR>
0451
0452 <!-- ============================================== -->
0453
0454 <H2>9. Detailed list of changes and fixes</H2>
0455
0456 These are the main new features/fixes included in this release since the
0457 last patched public release (for more detailed lists of fixes/additions,
0458 please refer to the corresponding History files provided in most packages):
0459
0460 <P> </P>
0461
0462 <A NAME="conf-notes">
0463 <H3><I>Configuration</I></H3></A>
0464 <UL>
0465 <LI>CMake:
0466 <UL>
0467 <LI>Added -DG4USE_STD11 compilation flag when c++11 is selected at
0468 configuration time for capable compilers.</LI>
0469 <LI>Added command line arguments to configuration scripts to report
0470 C++ standard compiled against and TLS model used if multithreading
0471 support available. Added presence of static libs as a feature
0472 argument that can be checked.</LI>
0473 <LI>Added support for "offloading" of tests (e.g. for use on Xeon Phi
0474 co-processors).</LI>
0475 <LI>Removing any self-links from internal library link list when building
0476 global libraries.</LI>
0477 <LI>Enabled choice between builtin or system USolids library (builtin is
0478 the default).</LI>
0479 <LI>Added Modules/Geant4ConfigureModulefile.cmake new file to configure
0480 and install a basic Environment Modules module file for Geant4.</LI>
0481 <LI>Added ROOT_BIN_DIR variable in FindROOT.cmake to point to the path
0482 of root executables. Needed for merging of output files for MT in
0483 physics testings.</LI>
0484 <LI>Include Geant4 headers as SYSTEM and after other headers.</LI>
0485 <LI>Removed unused settings for tpmalloc module.</LI>
0486 <LI>Updated references to data libraries version for 10.1.</LI>
0487 </UL></LI>
0488 <LI>GNUMake:
0489 <UL>
0490 <LI>No longer supported, only for development/testing use.</LI>
0491 </UL></LI>
0492 </UL>
0493
0494 <A NAME="ana-notes">
0495 <H3><I>Analysis</I></H3></A>
0496 <UL>
0497 <LI>Updated histogramming tools to g4tools-1.16.3.</LI>
0498 <LI>Added new CreateNtupleTColumn() functions for ntuple columns of vectors
0499 in G4AnalysisManager.</LI>
0500 <LI>Added interface classes G4VAnalysisReader and G4VRNtupleManager for
0501 reading, and their Root specializations: G4RootAnalysisReader,
0502 G4RootRNtupleManager. Introduced independent numbering of warnings
0503 from reader.</LI>
0504 <LI>Use G4Threading::IsMultithreadedApplication() instead of
0505 G4AnalysisManagerState::IsMT() (now removed); this function fixes files
0506 clean-up at the end of sequential application built against
0507 multi-threaded libraries.</LI>
0508 <LI>Added typedefs and functions for accessing iterators over H1, H2,
0509 Ntuples. Added G4AnalysisManager functions to access FirstIds.</LI>
0510 <LI>Replaced use of std::cout with G4cout in Root managers
0511 to fix potential data race among threads.</LI>
0512 <LI>Get rid of obsolete 'register' keyword in csz_inflate.cc.</LI>
0513 <LI>Removed unsused data member in G4P1DummyManager.</LI>
0514 <LI>Added histograms and profiles support in Csv.</LI>
0515 <LI>Implemented reading csv ntuples.</LI>
0516 <LI>Finalized G4VAnalysisReader interface: added reading P1, P2, H3;
0517 modifications to fit to all outputs; support for both user defined file
0518 names and "generic" file names (generated automatically by G4AnalysisManager
0519 from the base name).</LI>
0520 <LI>Introduced G4BaseFileManager and separated implementation for
0521 output/input file managers</LI>
0522 <LI>Implemented reading P1, P2 in G4RootAnalysisReader; prepared code for H3
0523 which reading is not yet available in tools.</LI>
0524 <LI>Completed implementation of G4XmlAnalysisReader; now requiring Expat parser.</LI>
0525 <LI>Fixed writing ntuples when more than one ntuple is defined (Xml).</LI>
0526 <LI>Do not overwrite user defined file extension.</LI>
0527 <LI>Fixed units in /analysis/[h|p]n/create and /analysis/[h|p]n/set commands.</LI>
0528 <LI>Fixed Coverity defects: initialization of data members in G4VAnalysisManager;
0529 provided assignment operator for G4HnDimensionInformation.</LI>
0530 <LI>Removed H1, H2, P1 dummy manager classes and H3, P3 moved in hbook
0531 implementation in examples.</LI>
0532 <LI>Revised (and simplified) numbering of warnings in exception messages.</LI>
0533 <LI>Support reading of root ntuple with column of std::string type by using
0534 ntuple_binding. Implemented reading H3 for Root.
0535 Added an option to write the Hippo header in csv ntuple output.</LI>
0536 <LI>Fixed reading histograms with titles of more words.</LI>
0537 <LI>Revised (and simplified) numbering of warnings in exception messages.</LI>
0538 </UL>
0539
0540 <A NAME="digits-notes">
0541 <H3><I>Digitization & Hits</I></H3></A>
0542 <UL>
0543 <LI>Added Merge() methods to G4ScoringManager and G4VScoringMesh, needed
0544 for multi-threading.</LI>
0545 <LI>Changed method names in G4VScoringMesh and derived classes.</LI>
0546 <LI>Added missing options in command-based scorers in G4ScoreQuantityMessenger
0547 and G4ScoreQuantityMessengerQCmd.</LI>
0548 <LI>Added protoype cloning mechanism for sensitive-detectors, needed for
0549 multi-threaded mode.</LI>
0550 <LI>G4VScoringMesh, G4ScoringBox, G4ScoringCylinder: fixed Construct()
0551 to make it work when the entire geometry has been destroyed.
0552 Addressing problem report
0553 <A HREF="http://bugzilla-geant4.kek.jp/show_bug.cgi?id=1665">#1665</A>.</LI>
0554 </UL>
0555
0556 <A NAME="emstd-notes">
0557 <H3><I>Electromagnetic Processes</I></H3></A>
0558 <UL>
0559 <LI><B>DNA</B>:
0560 <UL>
0561 <LI>Modified G4DNAChampionElasticModel to read high precision differential
0562 cumulated cross-section.</LI>
0563 <LI>Modified calculation of secondary kinetic for fast code.
0564 Updated chemistry.</LI>
0565 <LI>Changed to faster method interpolation in G4DNABornIonisationModel.</LI>
0566 <LI>G4ITSafetyHelper: force temporary usage of G4PathFinder.</LI>
0567 <LI>Added interface class G4ITTimeStepper.</LI>
0568 <LI>Added G4DNABornAngle and G4DNARuddAngle generators; ionisation models
0569 switch to use angular generator interface.</LI>
0570 <LI>Switched to DNAion for Si in G4DNAGenericIonsManager.</LI>
0571 <LI>Added Si to G4DNARuddIonisationExtendedModel.
0572 Updated G4DNAIonisation and G4DNARuddIonisationExtendedModel for
0573 G4GenericIon usage.</LI>
0574 <LI>Avoid usage of molecule iterators as pointers.</LI>
0575 <LI>Removed obsolete class for electron excitation.</LI>
0576 <LI>Get rid of obsolete 'register' keyword in code.</LI>
0577 <LI>Added G4ITStepManager class and related messenger.</LI>
0578 <LI>Added LEPTS model classes.</LI>
0579 <LI>Renamed classes: G4ITTimeStepper-->G4VScheduler;
0580 G4ITStepManager-->G4ITScheduler; G4ITStepManager-->G4ITSchedulerMessenger.
0581 Removed G4AllITManager G4ITManager and G4VITScheduler classes.
0582 Added G4ITFinder and G4VITTrackHolder. Implemented G4ITTrackHolder.
0583 Code cleanup.</LI>
0584 <LI>Removed G4MolecularConfiguration from the manager's table when deleted.</LI>
0585 <LI>Use G4ITTimeStepper in ChemMan::InitMaster() and G4DNASecondOrderReaction.</LI>
0586 <LI>Avoid use of std::map at the application level in TimeStepAction.</LI>
0587 <LI>Simplified initialization of chemistry from user applications; just
0588 registering constructor is enough to initialize the chemistry.</LI>
0589 <LI>Transform fStopAndAlive to fStopAndKill in G4DNABrownianTransportation
0590 when the particle has reached a boundary.</LI>
0591 <LI>Updated G4ITNavigator2 to recent developments in G4Navigator.</LI>
0592 <LI>Fixed bug in G4MoleculeGun and corrected track creation by
0593 G4MoleculeGunMessenger.</LI>
0594 <LI>Improved error message for missing data in PW elastic model.</LI>
0595 <LI>Removed obsolete classes.</LI>
0596 <LI>Fixes for Coverity defects.</LI>
0597 <LI>Requires G4EMLOW-6.41 data-set.</LI>
0598 </UL></LI>
0599 <LI><B>High Energy</B>
0600 <UL>
0601 <LI>G4GammaConversionToMuons: added protection against infinite loop at the
0602 reaction threshold; removed G4ThreadLocal variables; introduced G4Exp,
0603 G4Log and NIST functions; added counters limiting do/while loops.</LI>
0604 <LI>G4eeToHadrons, G4eeToHadronsModel,G4eeToHadronsMultiModel: revision
0605 and cleanup of code.</LI>
0606 </UL></LI>
0607 <LI><B>Low Energy</B>
0608 <UL>
0609 <LI>Added new model class G4LowEWentzelVIModel.</LI>
0610 <LI>G4LivermorePhotoElectricModel: added low-energy cross-section
0611 for water, make cross section const below first ionisation
0612 potential for all elements/materials.</LI>
0613 <LI>G4IonParametrisedLossModel, G4LivermoreIonisationModel: added
0614 G4DeltaAngle generator for angular distribution.</LI>
0615 <LI>Make G4AtomicTransitionManager become pure singleton shared between
0616 threads, with all run time methods const; Initialise() method to be
0617 called in the beginning of the run.
0618 Adapted classes accordingly.</LI>
0619 <LI>Changed Livermore, LivemorePolarized, LivemoreModified and
0620 Penelope Compton to unify the treatment for energy <
0621 LowEnergyLimit(). Null cross-section
0622 and no change in the gamma state.</LI>
0623 <LI>G4LivermorePhotoElectricModel, G4LivermoreGammaConversionModel,
0624 G4LivermoreRayleighModel, G4LivermoreComptonModel,
0625 G4IonParameterisedLossModel: added proper deletion of G4PhysicsVectors
0626 at the end of run.</LI>
0627 <LI>Use cumulated cross-sections in G4MicroElecElasticModel; use
0628 LinLinInterpolate() instead of LinLog(); better treatment of GenericIon
0629 in G4MicroElecInelastic and G4MicroElecInelasticModel; improved MT
0630 compatibility.</LI>
0631 <LI>Change in angular generator to use G4DeltaAngle model.</LI>
0632 <LI>Fix in G4MicroElecInelasticModel for potential infinite loop.</LI>
0633 <LI>Fixes for Coverity defects.</LI>
0634 <LI>Requires G4EMLOW-6.41 data set.</LI>
0635 </UL></LI>
0636 <LI><B>Muons</B>
0637 <UL>
0638 <LI>G4MuPairProductionModel, G4MuBremsstrahlungModel: added protection at
0639 initialisation for the case when user artificially reduces high energy
0640 limit of the model. Addressing problem report
0641 <A HREF="http://bugzilla-geant4.kek.jp/show_bug.cgi?id=1670">#1670</A>.</LI>
0642 <LI>Added new class G4TablesForExtrapolator to store EM tables shared between
0643 threads. Imported data from G4EnergyLossForExtrapolator.</LI>
0644 <LI>Use G4EmParameters in G4MuPairProductionModel, G4MuBremsstrahlungModel and
0645 G4MuIonisation.</LI>
0646 </UL></LI>
0647 <LI><B>Polarisation</B>
0648 <UL>
0649 <LI>G4PolarizationMessenger: fixed Coverity report on non-initialized
0650 members.</LI>
0651 <LI>G4PolarizedCompton, G4PolarizedComptonModel: added 'startFromNull'
0652 option as for standard Compton process and add same low-energy
0653 threshold to create secondary particle.</LI>
0654 <LI>G4PolarizedCompton: fixed initialisation, added sharing of process
0655 table among threads.</LI>
0656 <LI>Use G4EmParameters in G4PolarizedCompton, G4PolarizedGammaConversion,
0657 G4PolarizedPhotoElectricEffect, G4ePolarizedBremsstrahlung and
0658 G4ePolarizedIonisation.</LI>
0659 </UL></LI>
0660 <LI><B>Standard</B>
0661 <UL>
0662 <LI>G4WentzelOKandVIxSection, G4WentzelVIRelXSection, G4WentzelVIModel,
0663 G4WentzelVIRelModel, G4eCoulombScatteringModel,
0664 G4hCoulombScatteringModel: added Boolean flag to identify in
0665 physics-list if multiple and single scattering are combined or not;
0666 make consistent definition
0667 of min and max scattering angle for single scattering mode.
0668 </LI>
0669 <LI>G4WentzelOKandVIxSection: fixed initialisation for low-energy model
0670 (this model is not combined with single scattering); fixed small
0671 inaccuracy for sampling.</LI>
0672 <LI>G4WentzelVIModel: changed single scattering factor from 1.5 to 1.25.
0673 Added possibility to compute second momentum; added more accurate
0674 transition to single scattering mode;
0675 define single scattering mode before transformation from true to geometry
0676 step length to avoid many small steps for very low-energy particles;
0677 Refinements of lateral displacement.</LI>
0678 <LI>G4BraggModel, G4BraggIonModel: added spin correction.</LI>
0679 <LI>G4UniversalFluctuations: adapted code to allow for vectorised use of
0680 random engine for CPU performance improvement; no change to algorithms.</LI>
0681 <LI>G4UrbanMscModel: modified ComputeGeomPathLength() method to provide one
0682 single return statement for easier printouts;
0683 Modification in order to improve timing by 1-14%, depending on the
0684 setup and cut; made correction to improve efficiency in 'UseSafety'
0685 mode; fixed numerical problem for the case when range is nearly
0686 truePathLength; refinements of lateral displacement;
0687 added new step limit type UseSafetyPlus;
0688 corrections to improve CPU in the use of random numbers.</LI>
0689 <LI>G4DeltaAngle: added implementation of SampleDirectionForShell() virtual
0690 method; improved sampling; added check on length of do/while loop;
0691 comment out warning happens frequently for low-energy e-.</LI>
0692 <LI>G4eCoulombScatteringModel, G4hCoulombScatteringModel,
0693 G4IonCoulombScatteringModel: updated initialisation of vector of cuts;
0694 cut for recoil can be changed via '/run/setCut' command.</LI>
0695 <LI>G4ComptonScattering: set 'startFromNull' flag to true for all models forced
0696 to zero cross-section for the low energy in the cross-section table.</LI>
0697 <LI>G4KleinNishinaModel, G4KleinNishinaCompton, G4HeatedKleinNishinaCompton:
0698 do not sample final state below low limit of the model (default 100 eV);
0699 added protection to do/while loop; added check on secondary energy of both
0700 gamma and electron using internal limit.</LI>
0701 <LI>G4HeatedKleinNishinaCompton: use inheritance from G4KleinNishinaCompton.</LI>
0702 <LI>G4IonCoulombScatteringModel: fix for non-initialised data (Coverity report).</LI>
0703 <LI>G4ASTARStopping, G4PSTARStopping, G4BraggModel, G4BraggIonModel: restore
0704 functionality to access NIST stopping data via chemical formula and not
0705 only by material name.</LI>
0706 <LI>G4ASTARStopping, G4ESTARStopping, G4PSTARStopping, G4WaterStopping:
0707 reduced memory churn by using static data; delete physics vectors at
0708 destruction; changed interface to be const
0709 (allowing it to be shared among threads).</LI>
0710 <LI>G4BraggModel, G4BraggIonModel: use static pointer to G4*STARStopping
0711 classes, which are initialized once.</LI>
0712 <LI>G4PAIxSection, G4PAIPhotData, G4PAIPhotModel, G4PAIModelData:
0713 corrected deletion at destruction; use
0714 spline interpolation; fixed sampling of delta-electrons.
0715 Fixed memory leak in G4PAIxSection.</LI>
0716 <LI>G4PairProductionRelModel, G4eBremsstrahlungRelModel: added protection
0717 at initialisation for the case when user artificially reduces high
0718 energy limit of the model. Addressing problem report
0719 <A HREF="http://bugzilla-geant4.kek.jp/show_bug.cgi?id=1670">#1670</A>.</LI>
0720 <LI>G4PEEffectFluoModel: fixed threshold cross section.</LI>
0721 <LI>G4GoudsmitSaundersonMscModel: fixed rare division by zero.</LI>
0722 <LI>Use G4EmParameters at initialisation in G4eIonisation,
0723 G4hIonisation, G4ionIonisation, G4eBremsstrahlung, G4GammaConversion,
0724 G4ComptonScattering, G4PhotoElectricEffect, G4CoulombScattering,
0725 G4WentzelVIModel,
0726 G4WentzelOKandVIxSection and G4WentzelVIRelXSection.</LI>
0727 <LI>G4GoudsmitSaundersonMscModel: fixed displacement computation.</LI>
0728 <LI>G4PEEffectFluoModel: make internal array per material and not per
0729 materialCutsCouple, allowing model to be used in unit tests.</LI>
0730 <LI>Additional fixes for Coverity defects.</LI>
0731 </UL></LI>
0732 <LI><B>Utils</B>
0733 <UL>
0734 <LI>G4VMultipleScattering: added possibility to build extra table for a
0735 model. Minor cleanup for post-safety computation.
0736 Introduced optional mechanism of displacement at geometry boundary.</LI>
0737 <LI>G4VEmModel, G4VEmFluctuationModel: defined different pattern to access
0738 to random generator for sequential and MT modes to avoid compillation
0739 problems; random generator pointer becomes available to derived
0740 model classes in order to save CPU.</LI>
0741 <LI>G4EmCorrections, G4EmElementSelector, G4VEmModel, G4VEmProcess,
0742 G4VEnergyLossProcess, G4VMultipleScattering, G4ionEffectiveCharge:
0743 general cleanup including: use G4Log; reduced number of divisions;
0744 use std::min and std::max instead of "if" where possible.</LI>
0745 <LI>Fix in G4VMscModel::ComputeSafety() pass 2nd parameter to
0746 G4SafetyHelper for optimisation. Added default for 2nd parameter,
0747 compatible with G4SafetyHelper.</LI>
0748 <LI>G4VEnergyLossProcess: for sub-cutoff regime added upper limit when
0749 calling G4SafetyHelper.</LI>
0750 <LI>G4VSubCutProducer, G4LossTableManager, G4VEnergyLossProcess: added new
0751 interface to allow for production of delta-electrons below production
0752 threshold.</LI>
0753 <LI>G4EnergyLossMessenger, G4EmProcessOption: added extra flag and UI
0754 command "/process/em/deexcitationIgnoreCut" allowing to disable check
0755 on production threshold by deexcitation module; added interface methods and
0756 UI command '/process/msc/DisplacementBeyondSafety'.</LI>
0757 <LI>G4VEnergyLossProcess, G4VEmProcess, G4VMultipleScattering: fix for
0758 cases of crash in G4WrapperProcess in sequential mode.
0759 Addressing problem report
0760 <A HREF="http://bugzilla-geant4.kek.jp/show_bug.cgi?id=1594">#1594</A>.</LI>
0761 <LI>G4EmSaturation: updated class design, VisibleEnergyDeposition() method
0762 become virtual allowing application of user alternative algorithms.
0763 Added protection to throw exception if e- or proton are not defined
0764 when used in VisibleEnergyDeposition(); do not instantiate G4Electron
0765 and G4Proton by default in InitialiseBirksCoefficient();
0766 moved check on existence of e- and proton from run time to
0767 initialisation (i.e. it is now done only once).</LI>
0768 Changed initialisation of G4EmSaturation to work in MT mode.
0769 <LI>G4LossTableManager: helper classes are instantiated only if user
0770 requests via access method.</LI>
0771 <LI>G4LossTableManager, G4VEnergyLossProcess, G4VEmProcess: improved
0772 initialisation; moved modifiers for parameters from inline to source
0773 and added extra check on parameter value; throw warnings if parameters
0774 are out of range.</LI>
0775 <LI>G4EmCalculator: added public FindProcess() method.</LI>
0776 <LI>G4EmCorrections, G4EmElementSelector, G4LossTableManager,
0777 G4VEmModel, G4VEmProcess, G4VEnergyLossProcess: explicit delete
0778 PhysicsTables and PhysicsVectors at destruction.</LI>
0779 <LI>G4VAtomDeexcitation: if de-excitation options are defined for the
0780 world G4Region, propagate these options to all G4Regions.</LI>
0781 <LI>G4VEmProcess, G4VEnergyLossProcess: fixed model type definition
0782 for secondary particle production (fluorescence, PIXE, splitting);
0783 set step limit to DBL_MAX if
0784 selected model is inactive at such energy - addressing problem report
0785 <A HREF="http://bugzilla-geant4.kek.jp/show_bug.cgi?id=1674">#1674</A>.</LI>
0786 <LI>G4EmParameters, G4EmParametersMessenger: new classes for keeping EM
0787 parameters static for run time.</LI>
0788 <LI>G4VEmProcess, G4VEnergyLossProcess, G4VMultipleScattering,
0789 G4EmProcessOptions, G4VAtomDeexcitation: changed initialisation logic,
0790 to use G4EmParameters. Addressing problem report
0791 <A HREF="http://bugzilla-geant4.kek.jp/show_bug.cgi?id=1670">#1670</A>.
0792 <LI>G4MscStepLimitType, G4EnergyLossMessenger: added new step limit type,
0793 UseSafetyPlus for multiple-scattering.</LI>
0794 <LI>G4VEmProcess, G4VEmModel: added access methods for target element and
0795 isotope.</LI>
0796 <LI>G4EmConfigurator: set high energy activation limit for a new model not
0797 more than high energy limit (needed for DNA models).</LI>
0798 <LI>Fixed Coverity defects.</LI>
0799 </UL>
0800 <LI><B>Xrays</B>
0801 <UL>
0802 <LI>G4SynchrotronRadiation: extended model from e+, e- to be universal.
0803 Applicable for all relativistic charged particles.</LI>
0804 <LI>Fixes for Coverity defects in G4VXTRenergyLoss.</LI>
0805 <LI>Fix in BuildPhysicsTable() for G4Scintillation.
0806 Addressing problem report
0807 <A HREF="http://bugzilla-geant4.kek.jp/show_bug.cgi?id=1678">#1678</A>.</LI>
0808 <LI>Re-engineered UI commands related to optical processes.
0809 Addressing problem report
0810 <A HREF="http://bugzilla-geant4.kek.jp/show_bug.cgi?id=1675">#1675</A>.</LI>
0811 </UL></LI>
0812 </UL>
0813
0814 <A NAME="event-notes">
0815 <H3><I>Event</I></H3></A>
0816 <UL>
0817 <LI>First implementation of memory reduction mechanism in multi-threading
0818 mode. Adapted General Particle Source classes.</LI>
0819 <LI>G4AdjointPrimaryGenerator: added splitting of forward gamma primaries to
0820 improve convergence of Reverse-Montecarlo.</LI>
0821 <LI>Fix in G4SPSPosDistribution::GenerateOne() which was not working
0822 correctly for GeneratePointsOnSurface() and GeneratePointsInVolume().
0823 Addressing problem report
0824 <A HREF="http://bugzilla-geant4.kek.jp/show_bug.cgi?id=1656">#1656</A>.</LI>
0825 <LI>Introduced mechanism for not deleting G4Event until visualized by a
0826 different thread.</LI>
0827 <LI>Implemented new strategy for GPS messenger: being instantiated as singleton.
0828 UI commands are created in a worker thread, but commands are executed by
0829 the master. Adding G4MUTEXDESTROY for GPS classes.</LI>
0830 <LI>Correction in the logic of normalization of sources for GPS.
0831 Initialize mutex for G4SPSEneDistribution class; fix for unitialized array.</LI>
0832 <LI>G4GeneralParticleSourceMessenger: change G4ParticleTable::GetIon()
0833 to G4IonTable::GetIon().</LI>
0834 <LI>Fixed Coverity defects.</LI>
0835 </UL>
0836
0837 <A NAME="externals-notes">
0838 <H3><I>Externals</I></H3></A>
0839 <UL>
0840 <LI>Moved USolids module from source/geometry.
0841 Adapted scripts for optional builds against an installation of the
0842 <A HREF="https://cern.ch/aidasoft/USolids">Unified Solids Library</A>
0843 in a different, outside location.</LI>
0844 <LI>Removed unused 'tpmalloc' and 'memoryprotection' modules.</LI>
0845 <LI>Updated CLHEP module to version 2.2.0.4:
0846 <UL>
0847 <LI>Converted statics and globals to const, thread-local or atomic
0848 to improve thread safety.</LI>
0849 <LI>Introduced CLHEP_THREAD_LOCAL and CLHEP_ATOMIC_INT_TYPE macros
0850 thread_local and atomic keywords.</LI>
0851 <LI>Fixed compilation warnings on clang and gcc-4.9 compilers for
0852 MTwistEngine and RanshiEngine.</LI>
0853 <LI>Fixed a type mismatch in Utility/memory.h,
0854 reported as compilation warning on Windows/VC9.</LI>
0855 <LI>Updated Hep3Vector to move operators 'operator()(int)' to be inline
0856 and removed printout to improve CPU performance.</LI>
0857 <LI>Moved definition of <TT>pi</TT> into SystemOfUnits.h so that its
0858 hard-coded value is not defined twice.</LI>
0859 </UL></LI>
0860 <LI>USolids:
0861 <UL>
0862 <LI>Added UMultiUnion construct, which enables the simultaneous union
0863 of multiple solids. Uses voxel technique to improve performance.</LI>
0864 <LI>Added shapes from the USolids library: UExtrudedSolid, UGenericTrap,
0865 UTessellatedSolid (together with UQuadrangularFacet, UTriangularFacet
0866 and UTessellatedGeometryAlgorithms utility classes) and UTrap.</LI>
0867 <LI>UPolyhedra: moved Extent() from protected to public.</LI>
0868 <LI>UPolycone: correction in Capacity() for iteration over the number of
0869 sections and in SurfaceArea() for the case opening-angle is less than 2*pi.
0870 Fixes in InsideSection() for openPhi when StartPhi is negative,
0871 in Init() for Polycone defined from ZPlane[0]>ZPlane[N],
0872 and in DistanceToOut() for points starting on internal surface.</LI>
0873 <LI>UTet: fixed approximation in Extent().</LI>
0874 <LI>Minor fixes of errors reported by Coverity and unit tests in
0875 UTubs,UCons, UTrap, UTet, UTriangular/QuadrangularFacet.</LI>
0876 <LI>Removed useless 'inline' specification for pure virtual function
0877 StreamInfo() in VUSolid base class.</LI>
0878 <LI>Removed references to G4 types in several classes and some code cleanup.</LI>
0879 </UL></LI>
0880 </UL>
0881
0882 <A NAME="gen-notes">
0883 <H3><I>General Processes</I></H3></A>
0884 <UL>
0885 <LI><B>Biasing</B>
0886 <UL>
0887 <LI><U>management</U>:
0888 <UL>
0889 <LI>Simplified the G4VBiasingOperation interface class:
0890 <UL>
0891 <LI>Suppressed DenyProcessPostStepDoIt() method, functionality
0892 merged (and generalized) in ApplyFinalStateBiasing().</LI>
0893 <LI>Extra argument added as last argument of
0894 ApplyFinalStateBiasing(..., G4bool& forceBiasedFinalState),
0895 allowing to force to return as is the generated final state;
0896 covers the case of the deprecated DenyProcessPostStepDoIt() by
0897 not changing the primary state, changing its weight, and
0898 setting this argument "true".</LI>
0899 <LI>Merged ProposeGPILSelection() into
0900 ProvideOccurenceBiasingInteractionLaw(), which has now
0901 the signature ProvideOccurenceBiasingInteractionLaw(const G4BiasingProcessInterface*, G4ForceCondition&).</LI>
0902 </UL></LI>
0903 </UL></LI>
0904 <LI><U>generic</U>:
0905 <UL>
0906 <LI>Introduced G4BiasingProcessSharedData: a class that gathers
0907 information shared by G4BiasingProcessInterface instances attached
0908 to the same G4ParticleDefinition (hold by same G4ProcessManager).
0909 Access to the object is provided by the G4BiasingProcessInterface
0910 methods GetSharedData().
0911 Provides in particular lists of G4BiasingProcessInterface instances
0912 for physics/non-physics biasing.</LI>
0913 </UL></LI>
0914 <LI>Easier access to cross-sections/mean-free-pathes of wrapped
0915 physics processes: this is done by a call to the
0916 PostStepGetPhysicalInteractionLength() of the wrapped physics
0917 processes that anticipates the call by the stepping manager:
0918 the first G4BiasingProcessInterface in the
0919 PostStepGetPhysicalInteractionLength() loop triggers these
0920 calls, and results are cached in each G4BiasingProcessInterface
0921 instance. This makes cross-sections of physics wrapped processes
0922 up to date at the first call to the biasing operator, simplifying
0923 biasing implementations dealing with several cross-section or the
0924 total cross-section.</LI>
0925 <LI>Related rewritting of biasing operator G4BOptrForceCollision,
0926 biasing operation G4BOptnForceCommonTruncatedExp and simplified
0927 implementation of interaction law G4ILawCommonTruncatedExp.</LI>
0928 </UL></LI>
0929 <LI><B>Management</B>
0930 <UL>
0931 <LI>Added new process type for UCN processes in G4ProcessType.</LI>
0932 </UL></LI>
0933 <LI><B>Optical</B>
0934 <UL>
0935 <LI>Implemented full UNIFIED reflectivity probabilities when a dichroic
0936 surface reflects.</LI>
0937 <LI>G4OpWLS, G4OpRayleigh: always rebuild the integral-table in
0938 BuildPhysicsTable() method.</LI>
0939 <LI>G4OpBoundaryProcess now allowing for Transmittance, Reflectivity and
0940 Absorption on dielectric_dielectric and dielectric_metal boundaries.
0941 Added ConstProperty "SURFACEROUGHNESS". If set, the reflectivity at
0942 dielectric_dielectric surface is angular dependent and calculated from:
0943 <TT>exp(-pow((4*pi*theSurfaceroughness*Rindex1*cost1/wavelength),2))</TT>
0944 for <TT>Rindex1 > Rindex2</TT>.</LI>
0945 <LI>G4OpRayleigh process now calculates the Rayleigh scattering length for
0946 more materials than just Water (although the Water default is kept).
0947 To do this the user would need to specify the ISOTHERMAL_COMPRESSIBILITY
0948 as a material property and optionally an RS_SCALE_LENGTH (useful for
0949 testing).</LI>
0950 <LI>Re-engineered UI commands. Addressing problem report
0951 <A HREF="http://bugzilla-geant4.kek.jp/show_bug.cgi?id=1675">#1675</A>.</LI>
0952 </UL></LI>
0953 <LI><B>Phonon</B>
0954 <UL>
0955 <LI>G4LatticeManager: changed to globally shared object no longer
0956 thread-local. Fixes cases of null-pointer crash in MT mode.</LI>
0957 </UL></LI>
0958 <LI><B>Scoring</B>
0959 <UL>
0960 <LI>Introducing G4ParallelWorldProcessStore to allow G4ParallelWorldProcess
0961 objects of all threads to update their corresponding world volumes when
0962 entire geometry is destroyed and rebuilt between runs.</LI>
0963 </UL></LI>
0964 <LI><B>Transportation</B>
0965 <UL>
0966 <LI>G4Transportation and G4CoupledTransportation: made static data member
0967 'fUseMagneticMoment' and its set method EnableUseMagneticMoment().</LI>
0968 <LI>Added initialization of G4CoupledTransportation data members (fixes
0969 reported Coverity defect). Renamed data member, to make its name
0970 canonical.</LI>
0971 </UL></LI>
0972 </UL>
0973
0974 <A NAME="geo-notes">
0975 <H3><I>Geometry</I></H3></A>
0976 <UL>
0977 <LI>Moved solids/usolids module to source/externals.</LI>
0978 <LI><B>Magnetic field</B>
0979 <UL>
0980 <LI>Moved constructors and simple methods to inline in G4ChargeState
0981 and G4LineSection for CPU speedup.</LI>
0982 </UL></LI>
0983 <LI><B>Management</B>
0984 <UL>
0985 <LI>Moved G4SmartVoxelHeader constructor for partial voxels refinements
0986 from protected to public.</LI>
0987 <LI>Added G4USolid bridge class from internal USolids module.
0988 Enabled implementation of StreamInfo().</LI>
0989 </UL></LI>
0990 <LI><B>Navigation</B>
0991 <UL>
0992 <LI>G4PropagatorInField: added new method GetCurrentEquationOfMotion().</LI>
0993 <LI>Added internal method RecheckDistanceToCurrentBoundary() for
0994 G4SafetyHelper, G4Navigator and G4PathFinder, for checking a proposed
0995 displacement (new position) to see if it is in mother, and a proposed
0996 new direction to find potential backtrack to return to mother volume,
0997 or distance to new exit.</LI>
0998 <LI>Code cleanup: removed unnecessary G4ThreadLocal in G4ReplicaNavigation.</LI>
0999 <LI>G4TransportationManager: added ClearParallelWorlds() method; internal
1000 method to be invoked by G4RunManager when geometry is destroyed and
1001 destroys rebuilt from scratch in the user's application.</LI>
1002 <LI>G4Navigator: corrections in the computation of exit normal and small
1003 fix to calculation of stored step endpoint, for steps that do not hit
1004 a boundary. Some code cleanup.</LI>
1005 <LI>Added protection in G4ReplicaNavigation::DistanceToOutRad() for potential
1006 rare cases of negative value to sqrt() in equation calculation for
1007 rmin/rmax intersection.</LI>
1008 <LI>G4ErrorPropagationNavigator: added GetGlobalExitNormal() method to
1009 match the update of G4Navigator interface made back in release 9.5.
1010 Fix to make normal a unit vector, and fixed Coverity defect to protect
1011 against null 'target'. Addressing problem report
1012 <A HREF="http://bugzilla-geant4.kek.jp/show_bug.cgi?id=1679">#1679</A>.</LI>
1013 </UL></LI>
1014 <LI><B>Solids (Boolean)</B>
1015 <UL>
1016 <LI>Enabled G4MultiUnion wrapper for USolids UMultiUnion structure.</LI>
1017 </UL></LI>
1018 <LI><B>Solids (CSG)</B>
1019 <UL>
1020 <LI>Added wrapper for UTrap shape; adapted switch for G4Trap accordingly.</LI>
1021 </UL></LI>
1022 <LI><B>Solids (Specific)</B>
1023 <UL>
1024 <LI>Added wrappers for UExtrudedSolid and UGenericTrap; adapted switches for
1025 G4 types accordingly.</LI>
1026 </UL></LI>
1027 <LI><B>Volumes</B>
1028 <UL>
1029 <LI>Introduced pool G4NavigationHistoryPool for storage and reuse of
1030 navigation history levels collections.
1031 Disabled use of G4EnhancedAllocator in G4NavigationHistory accordingly.</LI>
1032 <LI>Corrected implementation of copy-constructor and assignment-operator
1033 for G4NavigationHistory, to provide exact copy for size of the
1034 histories-level vector.</LI>
1035 <LI>Use G4Allocator for dynamic allocations of G4NavigationHistory objects.</LI>
1036 <LI>Moved constructors, destructors and assignment operators for
1037 G4NavigationLevelRep to be inline, for CPU optimisation.</LI>
1038 </UL></LI>
1039 </UL>
1040
1041 <A NAME="glob-notes">
1042 <H3><I>Global</I></H3></A>
1043 <UL>
1044 <LI>G4MTcoutDestination: by default ignores the printout during the
1045 initialization of each thread, as they are identical to each other and
1046 thus redundant.</LI>
1047 <LI>Introduced G4SetPinAffinity() function (available only for LINUX):
1048 "locks" a pthread to the given CPU index. This will be used by run
1049 category as an option to improve performance on high-core counts CPUs.</LI>
1050 <LI>New utility function G4Threading::IsMultithreadedApplication()
1051 and G4Threading::SetMultithreadedApplication(bool) used to specify which
1052 type of kernel is instantiated indipendently by build type (e.g. to
1053 distinghuish application migrated to MT or still using sequential run
1054 manager).</LI>
1055 <LI>Define G4ThreadLocal to be 'thread_local' in case C++11 standard is
1056 used (enabled through use of flag G4USE_STD11); directly adopt CLHEP
1057 classes in such a case instead of G4MT* wrappers, if keyword is
1058 supported; updated logic in tls.hh header.</LI>
1059 <LI>Added forward of cout and cerr in MT to master G4coutDestination
1060 if setup in client derived classes. To be used by special
1061 sessions (e.g. GUI) that want to intercept thread cout/cerr.</LI>
1062 <LI>G4Physics2DVector::Retrieve(): added extra protection to fix
1063 Coverity reports in classes which are using 2-D vector.</LI>
1064 <LI>Removed use of G4Allocator in G4PhysicsVector; now requiring explicit
1065 deletion of dynamically allocated objects by clients, also in destructors.</LI>
1066 <LI>G4PhysicsModelCatalog: added destruction of catalog; modified definition
1067 of singleton to avoid resources leak at exit.
1068 Made it more const; hide operator=() and copy constructor.</LI>
1069 <LI>G4Pow: modified definition of singleton to avoid resources leak at exit.</LI>
1070 <LI>Added std::flush to receiving of G4MTcoutDestination.
1071 Addressing problem report
1072 <A HREF="http://bugzilla-geant4.kek.jp/show_bug.cgi?id=1644">#1644</A>.</LI>
1073 <LI>Added template class G4TWorkspacePool for generic implementation of
1074 thread-local workspace pools.</LI>
1075 <LI>Added methods G4MTcoutDestination::GetPrefixString() and
1076 G4MTcoutDestination::GetFullPrefixString() returning the thread cout
1077 identification prefix respectively without and with thread ID.
1078 Required by visualization.
1079 G4MTcoutDestination now supports special non-worker threads for
1080 which the ID makes no sense.</LI>
1081 <LI>Introduced G4MUTEXDESTROY macro in G4Threading.
1082 Fix to G4ThreadLocalSingleton destructor.
1083 Introduced G4Threading enum to hold thread IDs constants.</LI>
1084 <LI>G4StatDouble: corrected use 'const' interface for Add() method.</LI>
1085 <LI>Added missing G4GLOB_DLL specification for DLL import/export to
1086 G4CacheDetails specialization of cache reference for double.</LI>
1087 <LI>G4FPEDetection.hh: restrict FPE trapping to GCC only, excluding CLang.
1088 Addresses problem with Qt generating an apparent FPE deep inside its
1089 code with MacOSX CLang builds.
1090 Added call to 'sigfillset' to clear any signals before any use of sigset_t
1091 in InvalidOperationDetection() for both MacOS and Linux, as suggested in
1092 specifications.</LI>
1093 <LI>Fixed Coverity defects.</LI>
1094 <LI>Update date of release for 10.1.</LI>
1095 </UL>
1096
1097 <A NAME="greps-notes">
1098 <H3><I>Graphical Representations</I></H3></A>
1099 <UL>
1100 <LI>Introduced operator<<() for const reference G4AttDefs map.
1101 Deprecated const pointer equivalent.</LI>
1102 <LI>G4Scale: added annotation size; set default annotation size to 12 pixels.</LI>
1103 <LI>G4VisAttributes: added fMinLineSegmentsPerCircle parameter.</LI>
1104 </UL>
1105
1106 <A NAME="had-notes">
1107 <H3><I>Hadronic Processes</I></H3></A>
1108 <UL>
1109 <LI>Made pointers to G4ParticleDefinition use const.</LI>
1110 <LI><B>Cross sections</B>
1111 <UL>
1112 <LI>Fixed use of inline keyword for methods defined inside
1113 G4ElectroNuclearCrossSection.</LI>
1114 <LI>Minor reshuffling of some variables to calculate some variables only
1115 when used to prevent overflows.</LI>
1116 <LI>Added protection in destructor of G4ElectroNuclearCrossSection
1117 against NULL pointer entries in cache.</LI>
1118 <LI>G4KokoulinMuonNuclearXS does not call anymore explicitly
1119 clearAndDestroy() for the cross-section table, as the underlying
1120 physics vectors are managed by allocators.</LI>
1121 <LI>G4ChipsHyperonElasticXS : avoid to exclude Sigma+ in the set of
1122 hyperons which can be treated by Chips elastic scattering.</LI>
1123 <LI>G4ChipsAntiBaryonElasticXS: include anti_Omega- in GetPTables().</LI>
1124 <LI>Replace all statics by regular class members in Chips cross-sections.
1125 Fixed case of memory leak.</LI>
1126 <LI>G4KokoulinMuonNuclearXS: delete physics vectors at destruction; share
1127 data among threads; use G4Exp, G4Log.</LI>
1128 <LI>G4NeutronCaptureXS, G4NeutronElasticXS, G4NeutronInelasticXS,
1129 G4ComponentSAIDTotalXS, G4UPiNuclearCrossSection: delete physics vectors
1130 at destruction.</LI>
1131 <LI>G4NeutronCaptureXS, G4NeutronElasticXS, G4NeutronInelasticXS: share data
1132 among threads.
1133 Fixed minor memory leak at the end of job in G4NeutronElasticXS.</LI>
1134 <LI>Added missing factories to G4NeutronCaptureXS, G4NeutronElasticXS,
1135 G4NeutronInelasticXS, G4PiNuclearCrossSection.</LI>
1136 <LI>Added new interface class G4VCrossSectionRatio.</LI>
1137 <LI>Fixing data-races in G4Chips{Neutron,Proton}ElasticXS as reported by
1138 DRD.</LI>
1139 <LI>Added G4DiffElasticRatio class managing single diffraction to elastic
1140 cross-section ratio.</LI>
1141 </UL></LI>
1142 <LI><B>Management</B>
1143 <UL>
1144 <LI>G4HadronicProcess: added method GetHadronicInteractionList() allowing
1145 access to the list of registered models, removed obsolete access methods
1146 to G4EnergyRangeManager.</LI>
1147 <LI>G4HadronicProcessStore: changed to become G4ThreadLocalSingleton,
1148 allowing for automatic destruction of hadronic processes, models, and
1149 cross-sections.
1150 Correction in Clear() for stopping processes being deleted twice (once
1151 because registered as normal processes and once because registered as
1152 extra processes).
1153 Added printout information for deuteron, triton, He3 and alpha.</LI>
1154 <LI>G4EnergyRangeManager: some cleaned up; instead of c-array, models
1155 pointers are now stored in STL vectors.</LI>
1156 <LI>G4EnergyRangeManager: added new method GetHadronicInteraction()
1157 which uses G4HadronicInteraction::IsApplicable().</LI>
1158 <LI>G4HadronicProcess: replaced old method of G4EnergyRangeManager
1159 (still there but deprecated) with new one.
1160 Moved computation of the kinetic energy per nucleon (in the case of ion
1161 projectile) from G4HadronicProcess to G4EnergyRangeManager.</LI>
1162 <LI>G4HadronicProcessStore::PrintHtml(): include ProcessDescription
1163 inline in physics lists description.</LI>
1164 <LI>Added BuildPhysics() method for initialisation of models before run;
1165 modified G4EnergyRangeManager and G4HadronicProcess.</LI>
1166 <LI>G4HadronicProcess: added creator model type to secondary. Clearing final
1167 state before resample interaction due to energy balance violation.
1168 Fixed final track status for some models like G4WilsonAbrasionModel.
1169 Add check for dynamic mass in CheckResult(), to correspond to PDG mass
1170 within ~10%.</LI>
1171 <LI>G4HadronicProcessStore: fixed computation of cross-sections for ions.</LI>
1172 <LI><U>Models Management</U>:
1173 <UL>
1174 <LI>Added DeExciteModelDescription() to G4VPreCompoundModel and provided
1175 default implementation.</LI>
1176 <LI>G4HadronicInteractionRegistry: added new method FindAllModels().</LI>
1177 <LI>G4HadronicInteraction: removed unnecessary dependency on
1178 G4ReactionDynamics.</LI>
1179 <LI>Added BuildPhysics() method for initialisation of models before run;
1180 modified G4HadronicInteraction.</LI>
1181 </UL></LI>
1182 </UL></LI>
1183 <LI><B>Processes</B>
1184 <UL>
1185 <LI>Added new G4UCN* processes and utility classes.</LI>
1186 <LI>G4HadronElasticProcess: replaced old method of G4EnergyRangeManager
1187 (still there but deprecated) with the new one (which uses IsApplicable()
1188 from G4HadronicInteraction).</LI>
1189 <LI>G4HadronElasticProcess: added low-mass diffraction option
1190 (still in development and switched off by default).</LI>
1191 <LI>Added G4He3InelasticProcess class.</LI>
1192 </UL></LI>
1193 <LI><B>Stopping</B>
1194 <UL>
1195 <LI>G4HadronStoppingProcess: in destructor do not de-register if Boolean
1196 flag G4HadronicProcess::deRegister is true, this is needed to cope
1197 with the modified thread-local-singleton G4HadronicProcessStore.</LI>
1198 <LI>G4HadronStoppingProcess: replaced old method of G4EnergyRangeManager
1199 (still there but deprecated) with new one (which uses IsApplicable()
1200 from G4HadronicInteraction).
1201 Use G4PhysicsModelCatalog to label tracks.</LI>
1202 <LI>Removed obsolete classes G4MuonMinusCaptureAtRest, G4StopElementSelector
1203 and G4MuMinusCaptureCascade.</LI>
1204 </UL></LI>
1205 <LI><B>Utility</B>
1206 <UL>
1207 <LI>Removed obsolete G4ReactionKinematics and G4ReactionDynamics classes.</LI>
1208 <LI>G4HadFinalState, G4HadSecondary, G4ReactionProduct: added creator
1209 model type to secondary, moved simple methods to inline.</LI>
1210 <LI>G4HadSecondary: added creator model type.</LI>
1211 <LI><U>Models Utilities</U>:
1212 <UL>
1213 <LI>G4ExcitedString: improved to treat a non-excited string when it is given
1214 as a KineticTrack, especially to give its 4-momentum.</LI>
1215 <LI>G4Fancy3DNucleus: removed unnecessary thread-local allocations in
1216 ChoosePositions(). Replaced by const data.</LI>
1217 <LI>G4ExcitedString: fixed a memory leak.</LI>
1218 <LI>G4Fragment: added model type.</LI>
1219 </UL></LI>
1220 </UL></LI>
1221 <LI><B>ABLA</B>
1222 <UL>
1223 <LI>Added model-description methods to the interface.</LI>
1224 <LI>Fixes for Coverity defects.</LI>
1225 </UL></LI>
1226 <LI><B>Abrasion</B>
1227 <UL>
1228 <LI>G4WilsonAbrasionModel: use GetZ_asInt() and GetA_asInt().</LI>
1229 </UL></LI>
1230 <LI><B>Bertini Cascade</B>
1231 <UL>
1232 <LI>Added new pi-nucleon 2-body angular distributions: G4PipP2PipPAngDst,
1233 G4PimP2PimPAngDst, G4Pi0P2Pi0PAngDst and G4PimP2Pi0NAngDst.
1234 Below 2.6 GeV, distributions taken from SAID phase shift calculations
1235 with Coulomb phase removed. Above 2.6 GeV, taken from data.</LI>
1236 <LI>G4CascadeInterface: Fix possible infinite-loop condition where
1237 (nTries >= maxTries) and momentum balance fails. Configure
1238 PreCompound vs. BERT-internal de-excitation explicitly in ctor based
1239 on envvar flag.</LI>
1240 <LI>G4ElementaryParticleCollider: Protect against rare failure of
1241 G4GDecay3 by checking for null vector return. Add support for
1242 absorbing a pion with a single nucleon (via a charge exchange
1243 interaction, e.g. pi- p -> n), with momentum conservation handled
1244 by recoiling against the nucleus. This is intended to improve the
1245 match to data for pi- capture. Pion-nucleon absorption is disabled
1246 by default, with an envvar/macro flag to enable.</LI>
1247 <LI>G4CascadeFinalStateAlgorithm: Use ".c_str()" in diagnostic outputs,
1248 to avoid IBM/xlC compiler error. Addressing problem report
1249 <A HREF="http://bugzilla-geant4.kek.jp/show_bug.cgi?id=1558"
1250 >#1558</A>.</LI>
1251 <LI>G4NucleiModel: In boundaryTransition(), switch sign of "dv" so that
1252 particle sees a barrier (next_zone potential > current potential) as
1253 positive. In generateParticleFate(), pass (A,Z) to EPCollider for
1254 possible nuclear-recoil calculations.</LI>
1255 <LI>G4PreCompoundDeexcitation: Use shared instance of
1256 PreCompound by fetching from hadronic registry; register
1257 G4ExcitationHandler properly if local instance required.</LI>
1258 <LI>Change several constructors' argument from "const char*"
1259 to "const G4String&" to avoid memory deallocation problems.</LI>
1260 <LI>Internal improvements for multithreading, to avoid static
1261 initializers, and to use G4AutoDelete for all singletons.</LI>
1262 </UL></LI>
1263 <LI><B>Binary Cascade</B>
1264 <UL>
1265 <LI>Extended model-description to cover de-excitation model.</LI>
1266 <LI>Improved handling of destroyed nucleus, solving issues with light nuclei
1267 in BinaryLightIonReaction, like He in H. Made to conserve energy and
1268 momentum for final state in case target nucleus is destroyed, taking
1269 into account momentum transfered to nucleus, and finally forcing
1270 conservation.</LI>
1271 <LI>BinaryLightIonReaction: handle currentA/Z consistently with list of
1272 spectators. Added optional debugging output.</LI>
1273 <LI>BinaryLightReaction: momentum correction wrong in case of no Fragment,
1274 but primary projectile nucleon(s) in final state (ex. d + Pb -> X, where
1275 neutron or proton of deuteron did not interact).</LI>
1276 </UL></LI>
1277 <LI><B>De-excitation</B>
1278 <UL>
1279 <LI>G4NuclearLevelStore: use G4ThreadLocalSingleton pattern providing proper
1280 deletion of photon evaporation instances at the end of run.</LI>
1281 <LI>Improved design of FermiBreakUp and fixed decays of "unstable" Fermi
1282 fragments;
1283 reduced memory churn in several classes; optimized code reducing number
1284 of new/delete of intermediate objects; for that, slightly modified
1285 interface to evaporation channel; cleanup logic and implementation;
1286 G4FermiConfigurationList: reduced memory churn by reusing vectors which
1287 are members of the class; improved and verified computation of
1288 probabilities; made public methods const;
1289 G4FermiConfiguration, G4UnstableFermiFragment: removed unused members;
1290 made all methods const.</LI>
1291 <LI>G4FermiFragmentsPool: made pure singleton class, all methods and data
1292 const at run time, no decay of exotic states. Added method IfApplicable()
1293 for fast check if FermiBreakUp is applicable to a given excited fragment;
1294 fixed energy
1295 or several excited levels to be the same in the gamma level database;
1296 added DumpFragment() and Dump() methods.</LI>
1297 <LI>Removed obsolete class G4FermiConfigurationList.</LI>
1298 <LI>G4ExcitationHandler: fixed a problem in isomer production that caused
1299 energy non-conservation at the level of 1 MeV;
1300 added protection against abnormal fragments;
1301 added ModelDescription() for automatic documentation.</LI>
1302 <LI>Introduced an INCL++-specific fission level-density parameter class;
1303 set af/an parameter for INCL++ to 1.02 for all nuclei.
1304 Moved theChannels and theChannelFactory to the base class, since they
1305 seem to be common to all classes derived from G4VEvaporation.
1306 Some code refactoring.</LI>
1307 <LI>Cleanup and redesign of photon evaporation.</LI>
1308 <LI>G4NuclearLevelStore fixed wrong deletion of user data at exit.
1309 Addressing problem report
1310 <A HREF="http://bugzilla-geant4.kek.jp/show_bug.cgi?id=1684">#1684</A>.
1311 Ensure that the same level is not uploaded twice when
1312 running in MT mode.</LI>
1313 <LI>G4NuclearLevelManager: removed unnecessary data members to reduce
1314 memory consumption.</LI>
1315 <LI>G4ContinuumGammaTransition, G4ContinuumGammaDeexcitation,
1316 G4DiscreteGammaDeexcitation, G4DiscreteGammaTransition,
1317 G4VGammaDeexcitation: cleanup selection of continuous or discrete
1318 transition; fixed computation of probabilities.</LI>
1319 <LI>G4DiscreteGammaDeexcitation, G4DiscreteGammaTransition: fixed internal
1320 conversion for the case when transition energy is nearly electron bound
1321 energy.</LI>
1322 <LI>G4VGammaDeexcitation: removed unneeded extra call to CanDoTransition()
1323 inside DoChain() method.</LI>
1324 <LI>G4ContinuumGammaTransition, G4VGammaDeexcitation: coherently use same
1325 energy tolerance of 2 keV.</LI>
1326 <LI>GEN probabilities: verified nuclear level energies using
1327 gamma level data.</LI>
1328 <LI>G4B10GEMProbability, G4B11GEMProbability: changed nuclear level energies
1329 to be the same as in the gamma level database.</LI>
1330 <LI>G4VEvaporationChannel, G4GEMChannel, G4GEMProbability: added Dump()
1331 method. Added DumpLevels() method to G4NuclearLevelManager and
1332 G4NuclearLevel.</LI>
1333 </UL></LI>
1334 <LI><B>Elastic scattering</B>
1335 <UL>
1336 <LI>Added new dipole model class G4LEHadronProtonElastic.</LI>
1337 <LI>New class G4hhElastic, implementation of the qQ-model with springy
1338 Pomeron for hadron-hadron elastic scattering.</LI>
1339 <LI>G4LEnp, G4LEpp: added SampleInvariantT() method and inheritance
1340 from G4HadronElastic; implemented SampleT() method in G4LEnp.
1341 Fix in G4LEpp for incorrect use data array, used GetInvariantT()
1342 inside ApplyYourself().</LI>
1343 <LI>G4NuclNuclDiffuseElastic: fix to nuclear radius (which was zero);
1344 fixed deletion in destructor.</LI>
1345 <LI>Fix in G4DiffuseElastic.</LI>
1346 <LI>G4LEppData, G4LEpp: removed data with Coulomb correction and
1347 corresponding code because they do not work properly and
1348 provide double counting with EM.</LI>
1349 <LI>G4DiffuseElastic and G4NuclNuclDiffuseElastic: use the average nuclear
1350 weight for each element to compute the table of angles, in order to
1351 improve the reproducibility.</LI>
1352 <LI>G4DiffuseElastic, G4NuclNuclDiffuseElastic, G4hhElastic, and
1353 G4ChargeExchangeProcess: proper deletion of physics vectors.</LI>
1354 <LI>G4DiffuseElastic: extension down to 0.1 MeV, mainly for neutrons.</LI>
1355 <LI>G4hhElastic: changes to combine with low mass diffraction.</LI>
1356 <LI>Added G4LMsdGenerator class for low mass single diffraction dissociation.</LI>
1357 </UL></LI>
1358 <LI><B>Electromagnetic dissociation</B>
1359 <UL>
1360 <LI>G4EMDissociation: replaced G4ParticleTable::GetIon() with
1361 G4IonTable::GetIon().</LI>
1362 </UL></LI>
1363 <LI><B>Fission</B>
1364 <UL>
1365 <LI>Updated interface in G4FissionLibrary along with changes in neutron_hp.</LI>
1366 </UL></LI>
1367 <LI><B>High Energy Theoretical</B>
1368 <UL>
1369 <LI>Updated ModelDescription(); updated text and recurse to propagate.</LI>
1370 </UL></LI>
1371 <LI><B>Im_r_matrix</B>
1372 <UL>
1373 <LI>Do not delete physics vector explictly in destructors since they are
1374 managed by allocators in G4XResonance, G4XAnnihilationChannel,
1375 G4XNNElasticLowE, G4XnpElasticLowE and G4XnpTotalLowE.</LI>
1376 <LI>G4VCrossSectionSource: removed unused GetTransversePionMass() and
1377 GetMinStringMass() methods.</LI>
1378 <LI>G4VScatteringCollision, G4ConcreteN*: fixed leaks in destructors.
1379 Added protection against double delete.</LI>
1380 <LI>G4Clebsch: removed unused GetLogs() method.</LI>
1381 <LI>G4XResonance, G4XNNElasticLowE, G4XAnnihilationChannel, G4XnpTotalLowE,
1382 G4XnpElasticLowE: delete physics vectors at destruction.</LI>
1383 <LI>Sharing of static tables among threads in G4Scatterer.</LI>
1384 <LI>Overall improved thread safety; marked as static some "const" data.</LI>
1385 <LI>Fix for data-race issue in G4CollisionComposite, when shared there
1386 are concurrent accesses to G4CollisionBuffer. The simplest solution
1387 is to add a lock on a mutex.</LI>
1388 <LI>Fix for data race detection by DRD to correctly destroy mutex after
1389 initialization.</LI>
1390 </UL></LI>
1391 <LI><B>INCLXX</B>
1392 <UL>
1393 <LI>Updated to INCL++ v5.2.8.</LI>
1394 <LI>Extending INCL++ up to 15-20 GeV incident energy.</LI>
1395 <LI>Added plumbing for tallying reactions treated by INCL++.</LI>
1396 <LI>Activated use of adjusted fission parameter in G4ExcitationHandler.
1397 Large reduction in memory churn due to allocation pools; bringing
1398 some speed-up (a few percent).</LI>
1399 <LI>Fixed crash in p+He2 reactions.</LI>
1400 <LI>Added AvatarDumpAction class.
1401 Fixed bug that caused a large overestimation of the compound-nucleus
1402 spin in "fusion".
1403 Updated reference in G4INCLXXInterface::ModelDescription().</LI>
1404 <LI>Fixes for Coverity defects.</LI>
1405 </UL></LI>
1406 <LI><B>Lend</B>
1407 <UL>
1408 <LI>Protection for potential division by zero in tpia_misc and
1409 tpia_kinetics.</LI>
1410 <LI>Replaced use of obsolete FindIon() with GetIon() in G4LENDCapture,
1411 G4LENDModel, G4LENDInelastic and G4LENDElastic.</LI>
1412 <LI>Turn off license banner in G4LENDManager.</LI>
1413 </UL></LI>
1414 <LI><B>Lepto-nuclear</B>
1415 <UL>
1416 <LI>Reuse G4PreCompoundModel and G4ExcitationHandler objects instead
1417 of instantiating new local ones; do not delete objects which follow
1418 the G4HadronicInteraction interface to avoid double deletion.</LI>
1419 </UL></LI>
1420 <LI><B>Neutron High Precision</B>
1421 <UL>
1422 <LI>Fixed rare core dump caused by angular parameters being all zero;
1423 the angular parameters of the first and last secondary energy
1424 in ThermalScattering/Inelastic/FS have all zero elements.</LI>
1425 <LI>Uncomment out para and ortho hydrogen and liquid and solid methane
1426 in G4NeutronHPThermalScatteringNames.</LI>
1427 <LI>G4NeutronHPElasticData, G4NeutronHPInelasticData, G4NeutronHPCaptureData,
1428 G4NeutronHPFissionData, G4NeutronHPJENDLHEData: proper deletion of
1429 physics vectors at destruction.</LI>
1430 <LI>Removed unused header file G4NeutronHPPhotonXSection.hh.</LI>
1431 <LI>Adding information of data source to each data file, according to
1432 new data set.</LI>
1433 <LI>Introducing ThreadLocalManager for storing information related to each
1434 individual reactions. Sharing cross-section data, final state and thermal
1435 scattering final state data among threads.</LI>
1436 <LI>Fixed event-reproducibility issue in multi-threaded mode.</LI>
1437 <LI>Adjusted A and Z in the case of mismatch between selected data and target
1438 nucleus in G4NeutronHPInelasticBaseFS and G4NeutronHPInelasticCompFS.</LI>
1439 <LI>Fixed bug in G4NeutronHPElasticFS.
1440 Addressing problem report
1441 <A HREF="http://bugzilla-geant4.kek.jp/show_bug.cgi?id=1686">#1686</A>.</LI>
1442 <LI>Fixed potential memory-overwrite problem in G4NeutronHPInterpolator
1443 Addressing problem report
1444 <A HREF="http://bugzilla-geant4.kek.jp/show_bug.cgi?id=1689">#1689</A>.</LI>
1445 <LI>Fixed boundary-checking error in G4NeutronHPProduct and
1446 G4NeutronHPContAngularPar.</LI>
1447 <LI>Fixed problem caused by QNAN on Windows in G4FPYSamplingOps.</LI>
1448 <LI>Fixed use of BuildPhysicTable() in G4NeutronHPThermalScattering.,
1449 G4NeutronHPCapture, G4NeutronHPElastic, G4NeutronHPFission and
1450 G4NeutronHPInelastic.</LI>
1451 <LI>Requires new data set G4NDL-4.5.</LI>
1452 </UL></LI>
1453 <LI><B>Particle High Precision</B>
1454 <UL>
1455 <LI>New module for treatment of low energy charged particles,
1456 based on neutron_hp. This is still under testing, but it is aimed
1457 to replace neutron_hp in the future.</LI>
1458 </UL></LI>
1459 <LI><B>Parton-String</B>
1460 <UL>
1461 <LI>Fix in G4VPartonStringModel, occuring when debugging with residual
1462 nucleus mass number equal to zero.
1463 Improved code to treat an ExcitedString object when it is a hadron
1464 stored as a track, needed for a correct processing of quark-exchange
1465 processes in FTF model.</LI>
1466 <LI>Fix on the positions of the increment of the variables "StateQ++" and
1467 "StateAQ" in G4LundStringFragmentation. This fix increases the
1468 production of neutral pions, while decreasing the production of
1469 charged pions.</LI>
1470 <LI>G4FTFModel: factorized the longest method PutOnMassShell();
1471 no changes in results for hadron-nucleus, nucleus-nucleus,
1472 anti_baryon-nucleus and light anti_ion-nucleus interactions.</LI>
1473 <LI>Re-tuned parameters of G4LundStringFragmentation; fragmentation function
1474 F(qq->B+anti-quark) set to Z^2. Fix for anti-diquark-diquark strings.</LI>
1475 <LI>Code cleanup in G4InteractionContent, G4VParticipants, G4VSplitableHadron.
1476 Added debugging option in G4VPartonStringModel.</LI>
1477 <LI>Fixed bug in G4DiffractiveSplitableHadron where baryons are subdivided
1478 into quark and diquark. Introduced suppression of uu-diquark in proton,
1479 based on the theory of QCD instantons: di-quarks with identical quarks
1480 are suppressed by 50% (corresponding to a probability of 1/6), except
1481 for baryons like Delta++ (uuu), Delta- (ddd) and so on.
1482 Re-tuned parameters of FTF model (in the class G4FTFParameters) in
1483 accordance with this assumption.</LI>
1484 <LI>Fixed bug in G4DiffractiveExcitation responsible for asymmetric
1485 rapidity distributions in pp-interactions.</LI>
1486 <LI>G4VLongitudinalStringDecay: mixing between the vector mesons rho0 and
1487 omega have been changed from 50% (rho0) - 50% (omega) to 100% (rho0) - 0%
1488 (omega), in order to reduce the pi0 production (which was increased
1489 by the bug-fix on G4LundStringFragmentation).
1490 Little effects are seen in thin-target, while there are significant
1491 effects in hadronic showers in calorimeters.</LI>
1492 <LI>Tuned parameters and string fragmentation functions of
1493 G4LundStringFragmentation, assuming that the weight of uu-diquarks in
1494 protons is 1/6. Improved treatment of string decay direction in
1495 G4FragmentingString and G4LundStringFragmentation.</LI>
1496 <LI>Improved EnergyAndMomentumCorrector in G4ExcitedStringDecay.</LI>
1497 <LI>Fixed bug connected with annihilations of anti-delta isobars:
1498 G4FTFAnnihilation can now treat correctly these processes.
1499 Applied fine tuning of parameters for Pi+P interactions.</LI>
1500 <LI>Fixed problem of missing treatment of involved nucleons in the case
1501 of nuclear projectile in FTFmodel. Fixed memory leaks.</LI>
1502 <LI>Fixed problem connected with multiple quark exchanges and
1503 string excitations in hadron-nucleus interactions: the status of
1504 such hadrons was set incorrectly. Also fixed the determination of
1505 of the 4-momentum of anti-alpha at low energies.</LI>
1506 <LI>Fixed bug connected to abnormal stable meson masses: change of masses
1507 of particles in quark-exchange processes is now improved.</LI>
1508 <LI>Fixed problem of energy-momentum non-conservation in Xi-nucleus
1509 interaction; energy/momentum is now conserved, but an accurate
1510 treatment of minimal diffractive masses for strange particles is
1511 still needed.</LI>
1512 <LI>Fixed charge non-conservation for meson-nucleus interactions in
1513 G4DiffractiveExcitation, caused by quark exchange.</LI>
1514 <LI>G4DiffractiveExcitation: use pole mass + 5*width as maximum mass for
1515 resonances, to avoid cases of energy-momentum non-conservation.</LI>
1516 <LI>G4ExcitedStringDecay: restored initial string system in the case
1517 that the hadronization fails.</LI>
1518 <LI>G4LundStringFragmentation: set fragmentation functions for qq -> B
1519 as f(z)~ Const for all baryons and fixed charged baryon number
1520 conservation for K-nucleus interactions.</LI>
1521 <LI>Essential improvement of QGS hadronization. Fragmentation functions of
1522 quarks and di-quarks are close to Kaidalov's and Shabelskii's ones.
1523 Ionk's algorithm is inserted for sampling light-cone momentum fraction, z.
1524 First tuning of fragmentation parameters (further improvements are
1525 expected after the revision of the QGSM string creation algorithm).</LI>
1526 <LI>Improved algorithm of G4QGSMFragmentation::SplitEandP, now faster.</LI>
1527 </UL></LI>
1528 <LI><B>Pre-equilibrium</B>
1529 <UL>
1530 <LI>Added DeExciteModelDescription() to G4PreCompoundModel.</LI>
1531 <LI>G4PreCompoundIon: cleanup transition probability computation.</LI>
1532 <LI>G4PreCompoundAlpha, G4PreCompoundHe3, G4PreCompoundTriton: fixed
1533 FactorialFactor() method; corrected denominator.</LI>
1534 </UL></LI>
1535 <LI><B>QMD Reaction</B>
1536 <UL>
1537 <LI>Updated to use G4CrossSectionDataSetRegistry. Removed inclusions of
1538 obsolete cross-section headers.</LI>
1539 </UL></LI>
1540 <LI><B>Radioactive Decay</B>
1541 <UL>
1542 <LI>G4RadioactiveDecayMode: added double beta- decay and double beta+
1543 decay to enum.</LI>
1544 <LI>G4RadioactiveDecay: added dummies for double beta- decay and double
1545 beta+; long ground state lifetimes with no decay scheme.
1546 Addressing problem report
1547 <A HREF="http://bugzilla-geant4.kek.jp/show_bug.cgi?id=1560">#1560</A>.</LI>
1548 <LI>Added proton decay. Coded mimicking the alpha decay.
1549 The word in the data file is "Proton".
1550 Dummy double proton decay "Proton2" added for consistency with
1551 the double beta decays.</LI>
1552 <LI>G4RadioactiveDecay::GetMeanFreePath(): tau = -1001 now indicates a
1553 nuclide with very short lifetime or that was not listed in G4NuclideTable.
1554 In that case, set pathlength to DBL_MIN.
1555 Addressing problem report
1556 <A HREF="http://bugzilla-geant4.kek.jp/show_bug.cgi?id=1582">#1582</A>.</LI>
1557 <LI>Use 'const' qualifier for local variables and arguments where applicable.</LI>
1558 <LI>G4NuclearDecayChannel: removed upper limit on number of gammas produced
1559 by G4PhotoEvaporation. In DecayIt(), allow up to three fragments from
1560 G4PhotoEvaporation::BreakUp. This fixes an exception seen when there is
1561 more than one gamma.
1562 Check number of gammas returned from G4PhotoEvaporation and take different
1563 action in each case of 0, 1, or 2 gammas.</LI>
1564 <LI>Added new class G4AlphaDecay to streamline inheritance chain and use Q to
1565 calculate decay product energies.
1566 Use G4AlphaDecay instead of G4AlphaDecayChannel in G4RadioactiveDecay.</LI>
1567 <LI>G4RadioactiveDecay: fixed memory leak.</LI>
1568 <LI>Requiring new data set RadioactiveDecay.4.2.</LI>
1569 </UL></LI>
1570 <LI><B>RPG</B>
1571 <UL>
1572 <LI>G4RPGInelastic: defined GHADLISTSIZE, now needed after removal of
1573 class G4ReactionDynamics.</LI>
1574 </UL></LI>
1575 </UL>
1576
1577 <A NAME="interc-notes">
1578 <H3><I>Intercoms</I></H3></A>
1579 <UL>
1580 <LI>G4UIparameter: improved dignostic message of CandidateCheck().</LI>
1581 <LI>Introducing "/control/cout/ignoreInitializationCout" UI command to
1582 omit G4cout from threads during initialization, as they should
1583 be identical to the masther thread.</LI>
1584 <LI>Introducing new UI commands /control/doif and /control/getVal.</LI>
1585 <LI>Extended use of "/control/macroPath" UI command to now also apply to
1586 macros called inside a loop.</LI>
1587 <LI>Removed unnecessary source file G4AnyType.cc, as all symbols are inlined.</LI>
1588 <LI>G4UImanager: added method GetThreadCout(), to get the destination
1589 buffer of the current thread.</LI>
1590 <LI>Defined accessor GetThreadId() and moved related data to private.</LI>
1591 <LI>Added mechanism to make such that UI commands defined in a worker thread
1592 are registered to the G4UImanager of the master thread.</LI>
1593 <LI>Added G4cout support for generic (non worker) threads via new a method:
1594 G4UImanger::SetUpForSpecialThread(G4String prefix).</LI>
1595 <LI>Renamed few inline method parameter names in G4GenericMessenger to
1596 fix compilation warnings for shadowing.</LI>
1597 </UL>
1598
1599 <A NAME="interf-notes">
1600 <H3><I>Interfaces</I></H3></A>
1601 <UL>
1602 <LI><U>G4UIQt</U>:
1603 <UL>
1604 <LI>Changed help tree splitter from vertical to horizontal.
1605 Added method to display text in HTML.</LI>
1606 <LI>Changed help display to render parameters in a QTableView.</LI>
1607 <LI>Changed window expanding policy. Now when expanding main window, it
1608 will keep the size of the viewer.</LI>
1609 <LI>When choosing "pick" icon, it will now apply picking to true.</LI>
1610 <LI>Fixed a Qt function that was only defined for Qt5.</LI>
1611 <LI>Changed UI look by moving "search" at the top of the G4cout area.</LI>
1612 <LI>Added multi-threading outputs; added a filter on thread in output.</LI>
1613 <LI>New cout internal management.</LI>
1614 <LI>Added SetViewerFirstPageHTMLText() method to be able to set the first
1615 tab widget text. This could be used to make some kind of a start page
1616 to display useful informations.</LI>
1617 <LI>Fixed Dock output panel on the bottom right of window.</LI>
1618 <LI>Minor change in text for the first page widget</LI>
1619 <LI>Fixed problem in coloring cout sometimes after a cerr was send.</LI>
1620 <LI>Set the focus on the command line after a command is sent.</LI>
1621 <LI>Fixed problem when closing the last tab. Now the first page is displayed.</LI>
1622 <LI>Fixed bug when running with Qt-4.6.</LI>
1623 <LI>Get the thread prefix string directly from G4MTcoutDestination.</LI>
1624 <LI>Added methods GetCoutWidget(), GetUserInterfaceWidget(), GetViewersWidget().</LI>
1625 <LI>Renamed SetViewerFirstPageHTMLText() to SetStartPage().</LI>
1626 <LI>Added new method AddViewerTab(), allowing users to define their own tab.</LI>
1627 <LI>Added new method AddViewerTabFromFile(), to add a tab in the viewer from
1628 a file. Added ability to have HTML tags inside the file given by
1629 AddViewerTabFromFile(). This will allow to include for example a README
1630 file with an <img> or other HTML tags.</LI>
1631 <LI>Activate Help Widget at the beginning instead of sceneTree.</LI>
1632 <LI>Moved clear G4cout icon on the right side.</LI>
1633 <LI>Set viewer text tab "read only".</LI>
1634 <LI>Added left panel tab tooltips.</LI>
1635 <LI>Changed text on StartPage.</LI>
1636 <LI>Removed viewer size parameter, as no longer used.</LI>
1637 <LI>For all methods needing a file, instead of getting the file from current
1638 path, look for it in MacroPath.</LI>
1639 <LI>When closing a dock panel, hide it instead of removing it. Prevent from
1640 null pointer exception.</LI>
1641 <LI>Set focus on command line at the beginning.</LI>
1642 <LI>Recreate help tree each time we creating a new viewer.</LI>
1643 <LI>Display G4Exception warning messages in G4cerr an fixed G4Vis
1644 thread number in G4cout.</LI>
1645 <LI>Use FindMacroPath() instead of GetMacroSearchPath().</LI>
1646 <LI>Fixed recursive calls caused by qApp->processEvent().</LI>
1647 <LI>Fixed a problem with Wt include names on case sensitive systems.</LI>
1648 <LI>Attempted fix for the cout widget not updating in real time when run
1649 progresses; update is more frequent now.</LI>
1650 </UL></LI>
1651 <LI><U>G4UIWt</U>:
1652 <UL>
1653 <LI>Minor update.</LI>
1654 </UL></LI>
1655 </UL>
1656
1657 <A NAME="materials-notes">
1658 <H3><I>Materials</I></H3></A>
1659 <UL>
1660 <LI>New classes G4UCNMaterialPropertiesTable and G4UCNMicroRoughnessHelper
1661 for microroughness probability values and calculation of microroughness
1662 in materials.</LI>
1663 <LI>G4Material: improved material printout. Addressing problem report
1664 <A HREF="http://bugzilla-geant4.kek.jp/show_bug.cgi?id=1563">#1563</A>.</LI>
1665 <LI>Make G4Material copy constructor private.</LI>
1666 <LI>Replaced size_t with int type for 'fNumberOfIsotopes' in G4Element
1667 and 'fNumberOfComponents' and 'fNumberOfElements' in G4Material.
1668 Adapted code accordingly.</LI>
1669 <LI>G4NistmaterialBuilder: added new material G4_lBr, as STP Bromine is
1670 mainly liquid while in NIST DB it is described as a gas.
1671 Data taken from: http://en.wikipedia.org/wiki/Bromine.
1672 Addressing problem report
1673 <A HREF="http://bugzilla-geant4.kek.jp/show_bug.cgi?id=1607">#1607</A>.</LI>
1674 <LI>G4SandiaTable: modified low limit in GetSandiaCofPerAtom()/Material().</LI>
1675 Modified low limit for water and code clean-up.
1676 Made run time methods const, as materials are shared
1677 between threads; added new methods GetSandiaCofWater(),
1678 GetWaterEnergyLimit() and GetWaterCofForMaterial().
1679 Added proper deletion of G4PhysicsVectors at destruction.</LI>
1680 <LI>G4ElementData, G4IonStoppingData: proper deletion of G4PhysicsVectors
1681 at destruction.</LI>
1682 <LI>G4IonisParamMat: added initialization of G4DensityEffectData in
1683 the default constructor.</LI>
1684 </UL>
1685
1686 <A NAME="part-notes">
1687 <H3><I>Particles</I></H3></A>
1688 <UL>
1689 <LI>Updated particle properties to PDG-2014.</LI>
1690 <LI>Compute life time from mass width for pi0 and sigma0.
1691 Addressing problem report
1692 <A HREF="http://bugzilla-geant4.kek.jp/show_bug.cgi?id=1570">#1570</A>.</LI>
1693 <LI>Fix in G4ExcitedMesonConstructor (missing pi + eta mode in DecayTable).</LI>
1694 <LI>Added new constructor with dynamical mass in G4DynamicParticle.
1695 G4PhaseSpaceDecayChannel takes in to account mass width of daughter
1696 particles and gives the dynamical mass according to Breit-Wigner
1697 distribution. Added daughters_width in G4VDecayChannel.
1698 Addressing problem report
1699 <A HREF="http://bugzilla-geant4.kek.jp/show_bug.cgi?id=1629">#1629</A>.</LI>
1700 <LI>Introducing PrepareNuclideTable() method in G4IonTable to allow creating
1701 G4NuclideTable object without preloading any ions.</LI>
1702 <LI>Removed unused class G4IsomerTable; G4NuclideTable is now used.</LI>
1703 <LI>Introduced workspace class for particle definition
1704 Revised G4PDefSplitter class to add utility methods.
1705 Revised G4ParticlesWorkspace to use new class G4TWorkspacePool.</LI>
1706 <LI>Removed FindIon/GetIon() obsolete methods from G4ParticleTable.</LI>
1707 <LI>Fix in G4ParticleTable to make sure all dynamically created ions are
1708 deleted at the end of the program. Fixed G4IonTable to delete thread-local
1709 string objects.</LI>
1710 </UL>
1711
1712 <A NAME="pers-notes">
1713 <H3><I>Persistency</I></H3></A>
1714 <UL>
1715 <LI>GDML:
1716 <UL>
1717 <LI>Added implementation for import/export of Multi-Union (G4MultiUnion)
1718 structures (NOTE: usable only for USolids classes).
1719 Requiring updated GDML schema for multiUnionNode entity (GDML
1720 version 3.1.1). Updated internal schema to reflect new GDML schema
1721 release 3.1.1, for updated gdml_solids.xsd module.</LI>
1722 <LI>Correction to G4GDMLReadMaterials::MixtureRead() to revert order of
1723 reading (first elements then materials) for mixtures by fraction;
1724 corrects referencing for cases when elements and materials may carry
1725 the same name (case reported by ATLAS).</LI>
1726 <LI>Fix in G4GDMLMessenger for UI command "/persistency/gdml/clear", to
1727 invoke G4RunManager for cleanly delete entire geometry.</LI>
1728 <LI>Fixed typo in G4GDMLWriteSolids::BooleanWrite() for the case of
1729 repeated displacements of the reference solid in the same Boolean
1730 operation (issue reported by ATLAS).</LI>
1731 </UL></LI>
1732 </UL>
1733
1734 <A NAME="lst-notes">
1735 <H3><I>Physics lists</I></H3></A>
1736 <UL>
1737 <LI>Replaced explicite instantiation of cross-sections by calls
1738 to G4CrossSectionDataSetRegistry using factory approach.</LI>
1739 <LI>Removed inclusions of obsolete cross-section headers.</LI>
1740 <LI>Builders:
1741 <UL>
1742 <LI>In all builders, new instances of G4PreCompoundModel
1743 and G4ExcitationHandler are no longer created in order
1744 to reduce the memory footprint.</LI>
1745 <LI>Avoid deleting of processes, models and cross-sections in
1746 destructors of builders.</LI>
1747 <LI>Convert G4INCLXXPiKBuilder to G4INCLXXPionBuilder.
1748 Set the maximum energy for G4INCLXXPionBuilder to 20 GeV.
1749 Added G4QGSPKaonBuilder.</LI>
1750 <LI>Added G4QGSPLundStrFragmProtonBuilder outfitting QGSP model with
1751 G4LundStringFragmentation (instead of the G4QGSMFfragmentation);
1752 this appears to give better agreement with data at the energies above
1753 100 GeV (tested for proton+C).
1754 Set minimum energy for G4QGSPLundStrFragmProtonBuilder at 100 GeV.
1755 <LI>Added dependency to 'de_excitation/fission' module in build scripts,
1756 now required by INCLXX.</LI>
1757 <LI>Added builders for particle_hp physics list.</LI>
1758 <LI>Updated CMake scripts.</LI>
1759 </UL></LI>
1760 <LI>Constructors:
1761 <UL>
1762 <LI>electromagnetic:
1763 <UL>
1764 <LI>G4EmDNAPhysics_option1: added new constructor for DNA physics.</LI>
1765 <LI>G4EmLowEPPhysics: added G4LowEWentzelVIModel.</LI>
1766 <LI>G4EmLowEPPhysics, G4EmStandardPhysics_option3,
1767 G4EmStandardPhysics_option4, and G4EmLivermoreStandardPhysics:
1768 cleanup gamma and e- models instantiation.</LI>
1769 <LI>Added G4EmLEPTSPhysics and G4EmDNAChemistry constructors.</LI>
1770 <LI>Added G4EmStandardPhysicsSS, G4EmStandardPhysicsWVI constructors.</LI>
1771 <LI>Use G4EmParameters used in all EM constructors.</LI>
1772 <LI>G4EmStandardPhysics_option3,4: use G4GeneratorBS angular generator
1773 for bremsstrahlung.</LI>
1774 <LI>G4EmStandardPhysics_option4: use RangeFactor = 0.02 (instead of 0.01);
1775 use G4DeltaAngle angular generator for all ionisation models.</LI>
1776 <LI>Re-engineered UI commands related to optical processes and created
1777 in G4OpticalPhysics. Addressing problem report
1778 <A HREF="http://bugzilla-geant4.kek.jp/show_bug.cgi?id=1675">#1675</A>.</LI>
1779 <LI>Fixed bug responsible for bounds-checking failures in optical tests.
1780 Improved printing in G4OpticalPhysics::PrintStatistics().</LI>
1781 <LI>Reviewed initialisation of chemistry in DNA constructors and extended
1782 elastic scattering models to low energies to avoid killing e-.</LI>
1783 </UL></LI>
1784 <LI>factory
1785 <UL>
1786 <LI>Added macro for declaring physics constructors in a namespace
1787 to factory.</LI>
1788 <LI>Added methods for G4PhysicsConstructorRegistry to report known
1789 constructors.</LI>
1790 </UL></LI>
1791 <LI>gamma_lepto_nuclear:
1792 <UL>
1793 <LI>Switched on muon-nuclear by default.</LI>
1794 <LI>Implemented thread safe UI messenger.
1795 Addressing problem report
1796 <A HREF="http://bugzilla-geant4.kek.jp/show_bug.cgi?id=1606">#1606</A>.</LI>
1797 <LI>G4BertiniElectroNuclearBuilder: fixed case of double deletion.</LI>
1798 </UL></LI>
1799 <LI>hadron_elastic
1800 <UL>
1801 <LI>G4HadronHElasticPhysics: improved version of elastic, used
1802 temporarily only in FTFP_BERT_TRV for testing; it may become
1803 in the future the default in all physics lists.</LI>
1804 <LI>Fixed cases of inline static methods in G4HadronElasticPhysics.</LI>
1805 <LI>G4HadronHElasticPhysics: for proton, neutron, pion+ and pion-
1806 elastic scattering introduced the Chips model on Hydrogen, while
1807 kept G4DiffuseElastic for all other elements.
1808 To ensure reproducibility, use a different instance of G4DiffuseElastic
1809 for each particle type (p, n, pi+, pi-); disable G4NuclNuclDiffuseElastic,
1810 using Gheisha elastic model for light ions (nothing else is available
1811 for heavy ions).</LI>
1812 <LI>G4HadronHElasticPhysics: included diffraction dissociation process.
1813 This is under development and switched off by default.</LI>
1814 <LI>Added G4HadronElasticPhysicsPHP for particle_hp physics list.</LI>
1815 </UL></LI>
1816 <LI>hadron_inelastic:
1817 <UL>
1818 <LI>Modified switching energies and models in HadronPhysicsINCLXX.</LI>
1819 <LI>Added constructor for NuBeam and Shielding.</LI>
1820 <LI>Including constructors for NuBeam and Shielding.
1821 Extended Shielding code to also include ShieldingM variant.</LI>
1822 <LI>Added protection in all destructors to avoid double deletes.</LI>
1823 <LI>In G4HadronPhysicsNuBeam, adjust BERT/FTF overlap from 7-10 GeV to
1824 3-3.5 GeV, better for light targets.</LI>
1825 <LI>Fix in destructor of G4VHadronPhysics to check validity of
1826 pointer.</LI>
1827 <LI>Added dependency to 'de_excitation/fission' module in build scripts,
1828 now required by INCLXX.</LI>
1829 <LI>Added G4HadronPhysicsQGSP_BIC_AllHP for particle_hp physics list.</LI>
1830 </UL></LI>
1831 <LI>ions:
1832 <UL>
1833 <LI>Reuse the G4PreCompoundModel instance, instead of creating new
1834 local instances in the ion physics classes, in order to reduce
1835 the memory footprint.
1836 <LI>Added dependency to 'de_excitation/fission' module in build scripts,
1837 now required by INCLXX.
1838 </UL></LI>
1839 <LI>limiters:
1840 <UL>
1841 <LI>G4GenericBiasingPhysics: fixed bug of PhysicsBias() which was not
1842 taking into account the vector of selected processes (but biasing
1843 all physics processes).</LI>
1844 </UL></LI>
1845 </UL></LI>
1846 <LI>Lists:
1847 <UL>
1848 <LI>Added experimental physics lists ShieldingM and NuBeam.
1849 ShieldingM is based on Shielding with the Bertini to FTFP model
1850 transition region at 9.5-9.9GeV. NuBeam is based mainly on
1851 FTFP_BERT with the Bertini to FTFP model
1852 transition region at 3.0-3.5GeV for protons, pions and kaons
1853 and uses QGSP+G4LundStringFragmentation
1854 above 100GeV (with FTFP used up to 101GeV) for protons</LI>
1855 <LI>FTFP_BERT_TRV: use (temporary) G4HadronHElasticPhysics in order
1856 to allow testing of improvements in elastic.</LI>
1857 <LI>FTFP_BERT_HP, QGSP_BIC_HP, QGSP_BERT_HP: set cut on proton to
1858 zero to simulate all recoils from elastic scattering.</LI>
1859 <LI>Extended Shielding code to also include ShieldingM variant.</LI>
1860 <LI>Increased cuts in LBE physics list to 1 micrometer (from 1 nanometer).
1861 Fixed bug in LBE addressing problem report
1862 <A HREF="http://bugzilla-geant4.kek.jp/show_bug.cgi?id=1591">#1591</A>.</LI>
1863 <LI>Removed Bertini Cascade from alphas, deuterons and tritons and replaced
1864 with BinaryLightIonReaction.</LI>
1865 <LI>Replaced G4MuonMinusCaptureAtRest with G4MuonMinusCapture.</LI>
1866 <LI>Added QGSP_BIC_AllHP particle_hp physics list.
1867 Please note that particle_hp is still under development, and this
1868 new physics list is meant only for testing purposes.
1869 </LI>
1870 <LI>Added g4alt::G4PhysListFactory as user extensible list factory; work done
1871 via G4PhysListRegistry and G4PhysListStamper classes (not yet activated).</LI>
1872 <LI>Modify LBE physics-list constructor to accept verbosity as optional
1873 argument as the other physics-lists.</LI>
1874 </UL></LI>
1875 </UL>
1876
1877 <A NAME="run-notes">
1878 <H3><I>Run</I></H3></A>
1879 <UL>
1880 <LI>New functionalities for MT:
1881 <UL>
1882 <LI>Introduced pin affinity functionalities.</LI>
1883 <LI>Added new option in MT mode to set random number seeds only once
1884 per run per worker thread.</LI>
1885 <LI>Introduced workspace for physics-list split-classes.
1886 Enable use of G4ParticlesWorkspace for particle-definition split-class.</LI>
1887 <LI>Introduced /run/useMaximumLogicalCores UI command.</LI>
1888 <LI>Introducing mechanism to not delete G4Event until visualized by another
1889 thread; fixed cleaning up of kept events when visualization thread keeps
1890 events.</LI>
1891 <LI>Increase verbosity in case of NULL process-manager pointer in
1892 multi-threaded mode.</LI>
1893 <LI>Worker threads return G4RunManagerKernel::SetPhysics() method
1894 just after setting physics-list pointer (e.g. no setup needed).</LI>
1895 <LI>G4VUserPhysicsList::SetCuts() is no longer called by worker threads
1896 during physics initialization.</LI>
1897 <LI>G4RunManagerKernel::RunTermination() workers do not
1898 call G4ProductionCutsTable::PhysicsTableUpdated().</LI>
1899 <LI>Implemented G4WorkerRunManager::TerminateEventLoop() in worker and avoid
1900 data-race on shared resources.</LI>
1901 <LI>G4WorkerThread::UpdateGeometryAndPhysicsVectorFromMaster(): removed
1902 mechanism of copying pointer of region that is not needed.</LI>
1903 <LI>Fixed data-race condition in G4RunManagerKernel when FPE is active.
1904 Only master thread installs FPE handler.</LI>
1905 </UL></LI>
1906 <LI>Handling of ions:
1907 <UL>
1908 <LI>Avoid pre-creation of all ions in sequential mode.
1909 Preloading ions is now optional.</LI>
1910 </UL></LI>
1911 <LI>Other changes (non MT related):
1912 <UL>
1913 <LI>Modified G4AdjointSimManager, G4AdjointSimMessenger and
1914 G4AdjointPrimaryGeneratorAction to add forward primary splitting
1915 for Reverse MonteCarlo.</LI>
1916 <LI>Explicitly invoke deletion of new G4NavigationHistoryPool instance
1917 in G4RunManagerKernel at job's end.</LI>
1918 <LI>G4VScoringMesh is cleaned when geometry is rebuilt from scratch.
1919 G4ParallelWorldProcess objects of all threads now update their
1920 corresponding world volumes when the entire geometry is destroyed
1921 and rebuilt between runs.
1922 G4TransportationManager is cleaned as well when geometry is rebuilt
1923 from scratch. Addressing problem report
1924 <A HREF="http://bugzilla-geant4.kek.jp/show_bug.cgi?id=1665">#1665</A>.</LI>
1925 <LI>Fix in G4VUserPhysicsList to alternate cut value for the region
1926 sharing the default cut value.</LI>
1927 <LI>Fixed logic at G4RunManager::RunTermination() for keeping events.</LI>
1928 <LI>Fix in G4RunManager in case macroFile in beamOn is " ".</LI>
1929 <LI>Fixes for Coverity defects.</LI>
1930 </UL></LI>
1931 </UL>
1932
1933 <A NAME="track-notes">
1934 <H3><I>Track & Tracking</I></H3></A>
1935 <UL>
1936 <LI>Corrections in G4AdjointSteppingAction and G4AdjointTrackingAction
1937 to have the treatment of adjoint and forward tracks in the same event.</LI>
1938 <LI>Removed non const requirement when using G4PhysicsModelCatalog getters
1939 and moved implementations to .icc file.</LI>
1940 </UL>
1941
1942 <A NAME="vis-notes">
1943 <H3><I>Visualization</I></H3></A>
1944 <UL>
1945 <LI><B>Management</B>
1946 <UL>
1947 <LI>Introduced G4VGraphicsSystem::fileWriter to allow special informational.</LI>
1948 <LI>Added run ID to G4Atts of user drawn trajectories.</LI>
1949 <LI>Added '/vis/touchable/dump' command; dumping G4Atts to G4cout.</LI>
1950 <LI>Added parameter to '/vis/scene/add/axes' command to suppress
1951 annotations.</LI>
1952 <LI>/vis/specify and /vis/scene/add/logicalVolume: added flag for
1953 drawing/suppressing axes.</LI>
1954 <LI>G4VisCommands: Fixed deprecated call to GetAttDefs.</LI>
1955 <LI>Fix for NULL pointer in G4VSceneHandler.</LI>
1956 <LI>Fixes for management of cout/cerr messages.</LI>
1957 <LI>Added text size control through '/vis/set/textSize'
1958 for '/vis/scene/add/axes and '/vis/scene/add/scale' commands.</LI>
1959 <LI>Changed default text size to 12 pixels.</LI>
1960 <LI>Added /vis/scene/add/extent command, which adds a dummy model with given
1961 extent to the current scene, to be used to provide an extent to the scene
1962 even if no other models with extent are available. For example, even if
1963 there is no geometry.</LI>
1964 <LI>G4VisManager: split out some code in sequential version of EndOfEvent
1965 in preparation for re-use in multi-threading mode.</LI>
1966 <LI>G4VisManager: reset event reviewing flag at end of run in MT mode.</LI>
1967 <LI>G4VisCommandsViewerSet: fixed bug affecting file-writing viewers.</LI>
1968 <LI>G4VisCommandsSceneAdd: with command "/vis/scene/add/scale", add full
1969 list of parameters to GlobalDescription of scale model. This is so that
1970 scales with different parameters can be added to a scene without being
1971 caught in the "model already exists" trap.</LI>
1972 <LI>Fixed spelling mistake in messages.</LI>
1973 <LI>Fixed Coverity defects.</LI>
1974 </UL></LI>
1975 <LI><B>Modeling:</B>
1976 <UL>
1977 <LI>Introduced G4TouchableDumpScene and G4PseudoScene.</LI>
1978 <LI>G4TrajectoriesModel: Add run ID.</LI>
1979 <LI>G4PhysicalVolumeModel: improved constructor.</LI>
1980 <LI>Added text size for axes labels.</LI>
1981 <LI>Get appropriate run manager in MT mode.</LI>
1982 <LI>G4TrajectoriesModel: added protection against incorrect casting if
1983 G4RunManager base class is used in multi-threaded mode.</LI>
1984 </UL></LI>
1985 <LI><B>Fukui Renderer</B>
1986 <UL>
1987 <LI>DAWNFILE declared as G4VGraphicsSystem::fileWriter.</LI>
1988 </UL></LI>
1989 <LI><B>GMocren</B>
1990 <UL>
1991 <LI>Fixed memory leak in G4GMocrenFile. Addressing problem report
1992 <A HREF="http://bugzilla-geant4.kek.jp/show_bug.cgi?id=1585">#1585</A>.</LI>
1993 <LI>gMocren declared as G4VGraphicsSystem::fileWriter.</LI>
1994 <LI>G4GMocrenFileSceneHandler, G4GMocrenFileViewer, G4GMocrenMessenger:
1995 fixed STRING_OVERFLOW checks according to Coverity reports.</LI>
1996 </UL></LI>
1997 <LI><B>HepRep</B>
1998 <UL>
1999 <LI>HepRep and HepRepFile declared as G4VGraphicsSystem::fileWriter.</LI>
2000 </UL></LI>
2001 <LI><B>OpenGL</B>
2002 <UL>
2003 <LI>Improvements to class design and some bug fixes for picking.</LI>
2004 <LI>Some Qt fixes and improvements.</LI>
2005 <LI>Improved protection of pointers.</LI>
2006 <LI>G4OpenGLImmediateSceneHandler: split AddPrimitivePreamble() in three
2007 functions to avoid dynamic_cast. Gaining up to 20% speedup in drawing.</LI>
2008 <LI>G4OpenGLViewer: time optimization in printEPS() for Immediate mode;
2009 saving 70-80% in drawing time on batch drawing, 10-20% when printing
2010 with a screen viewer.
2011 Manage bad file name case (missing directory) in printGl2PS().</LI>
2012 <LI>G4OpenGLQtViewer: added ability to change the color of text in
2013 DrawText().</LI>
2014 <LI>New Viewer parameters info panel.</LI>
2015 <LI>G4OpenGLQtViewer: fixed problem in viewer/set parameters.</LI>
2016 <LI>Speed improvements by avoiding a dynamic_cast.</LI>
2017 <LI>G4OpenGL: removed all references to glu.h.</LI>
2018 <LI>G4OpenGLXViewer: replaced gluGetError to avoid calling of glu function.</LI>
2019 <LI>G4OpenGLStoredSceneHandler: changed some G4cout in G4err in case of error
2020 messages.</LI>
2021 <LI>G4OpenGLViewer: replaced deprecated gluLookAt by g4GluLookAt.
2022 Refactoring and renaming of internal methods.
2023 Added new methods addExportImageFormat(), setExportImageFormat(),
2024 exportImage() (generic function with lots of formats available) and
2025 isInitialized().</LI>
2026 <LI>G4OpenGLQtViewer: factorisation of Qt save function and OGL save functions.
2027 Added "picking info" component at bottom left inside the scene browser.
2028 Added a horizontal splitter inside the scene browser.
2029 Start changing color of a picking item (need to be improved).
2030 Fixed a bug: previously when changing cursor to "Pick" on context menu,
2031 nothing was done.
2032 Changed picking effect, instead of displaying in G4Cout, will now display
2033 all picking infos separate by "hit number" in another widget inside the
2034 scene browser. Move picking event from "mouse click" to "mouse release"
2035 function.
2036 New method "changeColorAndTransparency" to be able to change color and
2037 transparency on a PO index.
2038 Change cursor shape according to mouse operation.
2039 Activate picking info widget when picking.
2040 Fixed a crash when closing a tab viewer when auto rotating.
2041 Change the "search" look and feel in the tree viewer.
2042 Remove unused functions.</LI>
2043 <LI>G4OpenGLImmediateQtViewer, G4OpenGLStoredQtViewer, G4OpenGLQtViewer:
2044 added keyReleaseEvent() method. Allow rotation/move during picking.</LI>
2045 <LI>G4OpenGLViewerMessenger: added new commands '/vis/ogl/set/exportFormat'
2046 and '/vis/ogl/export'.</LI>
2047 <LI>G4OpenGLQtViewer: changed QPixmap objects to be pointers; fixes fatal
2048 problem creating viewer in "batch" application without interactive GUI.</LI>
2049 <LI>G4OpenGLQtExportDialog: removed unused functions.</LI>
2050 <LI>Refactoring of code for treatment of OpenGL2 and Wt driver.</LI>
2051 <LI>G4OpenGLStoredQtViewer/G4OpenGLImmediatedQtViewer: fixed refresh
2052 problem for 'zoom' command in viewer.
2053 Avoid repainting problems by disable recursive repaints.</LI>
2054 <LI>Fixed hidden marker field in Qt viewer properties for G4OpenGLQtViewer.
2055 Allow viewer properties/picking/scene tree to be accessible from an
2056 external application.
2057 Set the scene tree / viewer properties / picking open at the beginning.
2058 Added viewer properties and picking for Immediate mode.</LI>
2059 <LI>Fixed bug in G4OpenGLStoredSceneHandler whereby hidden markers are not
2060 respected if 2D objects are drawn.
2061 Removed call to ClearView() method.</LI>
2062 <LI>G4OpenGLViewer: added ClearViewWithoutFlush() method.</LI>
2063 <LI>G4OpenGLWtViewer: fixed problem with Wt include names on case sensitive
2064 systems.</LI>
2065 </UL></LI>
2066 <LI><B>OpenInventor</B>
2067 <UL>
2068 <LI>G4OpenInventorXtExaminerViewer: adjusted dimensions of viewer aux
2069 window; implemented look-ahead for better tracking of trajectory
2070 animation; implemented mouse-over readout for trajectories.</LI>
2071 </UL></LI>
2072 <LI><B>RayTracer</B>
2073 <UL>
2074 <LI>Fixed Coverity defects.</LI>
2075 </UL></LI>
2076 <LI><B>VRML</B>
2077 <UL>
2078 <LI>VRML1/2File declared as G4VGraphicsSystem::fileWriter.</LI>
2079 </UL></LI>
2080 <LI><B>Externals</B>
2081 <UL>
2082 <LI>G4XXXFile declared as G4VGraphicsSystem::fileWriter.</LI>
2083 <LI>Updates for OpenGL.</LI>
2084 </UL></LI>
2085 </UL>
2086
2087 <A NAME="env-notes">
2088 <H3><I>Environments</I></H3></A>
2089 <UL>
2090 <LI>G4Py:
2091 <UL>
2092 <LI>Completed migration to CMake for building libraries.</LI>
2093 <LI>Fixed link problem on MacOS-X for library extension.</LI>
2094 <LI>Updated interfaces for release 10.1.</LI>
2095 <LI>Addressing problem reports
2096 <A HREF="http://bugzilla-geant4.kek.jp/show_bug.cgi?id=1613">#1613</A>,
2097 <A HREF="http://bugzilla-geant4.kek.jp/show_bug.cgi?id=1660">#1660</A>.</LI>
2098 </UL></LI>
2099 </UL>
2100
2101 <A NAME="data-notes">
2102 <H3><I>Data sets</I></H3></A>
2103 <UL>
2104 <LI>New low-energy data set version, G4EMLOW.6.41:
2105 <UL>
2106 <LI>Added sigmadiff_cumulated_elastic_e_champion_hp.dat
2107 and corresponding macro.</LI>
2108 <LI>Added sigmadiff_cumulated_ionisation_e_born_hp.dat and
2109 sigmadiff_cumulated_ionisation_p_born_hp.dat.</LI>
2110 <LI>Updated electron inelastic files for Si (microelec).</LI>
2111 <LI>Added sigma_ionisation_(b,be,li)_rudd.dat, sigma_ionisation_p_rudd.dat
2112 (up to 1 GeV), sigma_ionisation_si_rudd.dat and fluor_Bearden data to
2113 dna module.</LI>
2114 <LI>Removed unused data sets.</LI>
2115 </UL></LI>
2116 <LI>New neutron data set version with thermal cross sections, G4NDL.4.5:
2117 <UL>
2118 <LI>Added information of data source to each file.</LI>
2119 </UL></LI>
2120 <LI>New data set version PhotonEvaporation.3.1 for nuclear de-excitation data:
2121 <UL>
2122 <LI>Corrections of of +X, +Y, ... levels for compliance with latest
2123 isomer list.</LI>
2124 <LI>212Bi (z83.a212, line 8): change strength of gamma transition
2125 (415.272 keV to ground state) from 4.4 to 0.4.
2126 Addressing problem report
2127 <A HREF="http://bugzilla-geant4.kek.jp/show_bug.cgi?id=1565">#1565</A>.</LI>
2128 </UL></LI>
2129 <LI>New data set version for radioactive-decay processes, G4RadioactiveDecay.4.2:
2130 <UL>
2131 <LI>Corrections for X,Y,Z,W and A levels.</LI>
2132 <LI>Added observationally stable (very long lifetime) ground states to 20
2133 nuclides: 4 are thought to decay by alpha emission, 6 by double beta+
2134 decay and 10 by double beta- decay.
2135 G4RadioactiveDecay now recognizes double beta- and double beta+ decays,
2136 but currently does nothing when they occur.</LI>
2137 <LI>Added new files filling in missing alpha levels and removed spurious
2138 ones.</LI>
2139 <LI>Added new files filling in missing beta- levels.</LI>
2140 <LI>Updated beta+ files.</LI>
2141 <LI>Fixed files z55.a136 (IT) and z58.a129 (beta) which had NaN in
2142 place of intensity value; replaced with value of 1.00.</LI>
2143 </UL></LI>
2144 </UL></LI>
2145
2146 <A NAME="ex-notes">
2147 <H3><I>Examples</I></H3></A>
2148 <UL>
2149 <LI>Moved advanced examples dnaphysics dnageometry and microdosimetry
2150 to new module 'dna' in extended/medical.</LI>
2151 <LI>Updated reference outputs, macros and scripts.</LI>
2152 <LI><B>advanced</B>
2153 <UL>
2154 <LI><B>air_shower</B>
2155 <UL>
2156 <LI>Follow migration of MT-ready GPS code.</LI>
2157 </UL></LI>
2158 <LI><B>amsEcal</B>
2159 <UL>
2160 <LI>Added protection in RunAction against division by zero.
2161 Addressing problem report
2162 <A HREF="http://bugzilla-geant4.kek.jp/show_bug.cgi?id=1522">#1522</A>.</LI>
2163 <LI>DetectorConstruction: corrected rotation matrix and uppdates.</LI>
2164 <LI>RunAction: reinitialise 'resEtot' and 'resEvis' in loop.</LI>
2165 <LI>Migration to g4tools for histograms.</LI>
2166 <LI>Migrated to multi-threading.</LI>
2167 </UL></LI>
2168 <LI><B>ChargeExchangeMC</B>
2169 <UL>
2170 <LI>Updated CMake scripts.</LI>
2171 </UL></LI>
2172 <LI><B>composite_calorimeter</B>
2173 <UL>
2174 <LI>Migrated to use built-in analysis tools.</LI>
2175 <LI>Removed use of exit() and use G4Exception instead.</LI>
2176 </UL></LI>
2177 <LI><B>gammaknife</B>
2178 <UL>
2179 <LI>Follow migration of MT-ready GPS code.</LI>
2180 </UL></LI>
2181 <LI><B>gammaray_telescope</B>
2182 <UL>
2183 <LI>Migrated to multi-threading.</LI>
2184 <LI>Use correct mu- stopping process.</LI>
2185 <LI>Removed deprecated RO geometry.</LI>
2186 <LI>Write separate files for each thread/run, if option
2187 G4STORE_DATA is active.</LI>
2188 <LI>Moved ordering of commands in macro: generator action
2189 is not instantiated before run initialization.</LI>
2190 <LI>Set some volumes to invisible for faster visualization.</LI>
2191 </UL></LI>
2192 <LI><B>hadrontherapy</B>
2193 <UL>
2194 <LI>Migrated code to support multi-threading.</LI>
2195 <LI>Completely updated PhysicsLists: G4EmStandardPhysics_option4 substitutes
2196 option3 builder, as most accurate physics. Defined new physics-list,
2197 HADRONTHERAPY_1 specifically implemented for this application, defined as
2198 a collection of builders and very similar to the QGSP_BIC_HP; differs in
2199 the followings: contains G4EmStandardPhysics_option4 in place of
2200 G4EmStandardPhysics; contains the builder G4RadioactiveDecayPhysics.
2201 The defaults for the physics models are now complete and they corresponds
2202 to the HADROTHERAPY_1 apart for: G4HadronPhysicsQGSP_BIC, used in place of
2203 G4HadronPhysicsQGSP_BIC_HP; G4HadronElasticPhysics used in place of
2204 G4HadronElasticPhysics_HP
2205 Cuts messengers completely removed. Now cuts can be defined using commands
2206 '/run/setCut', 'run/setCutForAGivenParticle', etc.
2207 Multiple G4Regions can now be defined in the PhysicsList class file, to
2208 apply specific CUTs values via the command
2209 '/run/setCutForRegion [G4Region Name] [Cut value]'
2210 Defined new physics-list HADRONTHERAPY_2, containing the local
2211 implementation of a specific ion-ion inelastic hadronic physic; uses the
2212 QMD model to treat ion-ion interactions.
2213 Livermore and Penelope electromagnetic physics removed.</LI>
2214 <LI>Updated input macros according to new physics lists.</LI>
2215 <LI>Created LaserDrivenBeamLine, made of ESS + Quadrupoles.
2216 Added FaradayCup detector with new map of the Electric field.
2217 Added the no fringing field maps for the quadrupole system.
2218 Added field map for the energy selector system with shifted
2219 central dipoles.</LI>
2220 <LI>Main file modified where UI is called: now UI is called only
2221 is no macro file is passed as argument.</LI>
2222 <LI>Added code to write output files in HadrontherapySteppingAction
2223 class.</LI>
2224 <LI>Removed /vis/ command call for batch mode.</LI>
2225 <LI>Local definition of Step Max process.</LI>
2226 <LI>Code cleanup.</LI>
2227 </UL></LI>
2228 <LI><B>human_phantom</B>
2229 <UL>
2230 <LI>Follow migration of MT-ready GPS code.</LI>
2231 <LI>Fixed warning messages at run-time.</LI>
2232 </UL></LI>
2233 <LI><B>lAr_calorimeter</B>
2234 <UL>
2235 <LI>Migrated code to support multi-threading.</LI>
2236 <LI>Changed interface of FCALMaterialConsultant to avoid multiple
2237 definition of materials.
2238 Fixed casting warning in FCALSteppingVerbose.</LI>
2239 </UL></LI>
2240 <LI><B>microbeam</B>
2241 <UL>
2242 <LI>Fixed warnings on Windows and MT-max runs.</LI>
2243 </UL></LI>
2244 <LI><B>microelectronics</B>
2245 <UL>
2246 <LI>Replaced use of G4UITerminal by G4UIExecutive; removed usage of
2247 flags G4UI_USE and G4VIS_USE in main().</LI>
2248 </UL></LI>
2249 <LI><B>nanobeam</B>
2250 <UL>
2251 <LI>Fix in CMake setup to avoid use of internal CLHEP module.</LI>
2252 </UL></LI>
2253 <LI><B>purging_magnet</B>
2254 <UL>
2255 <LI>Migrated code to support multi-threading.</LI>
2256 <LI>Add 'const' qualifiers to methods where applicable.</LI>
2257 </UL></LI>
2258 <LI><B>radioprotection</B>
2259 <UL>
2260 <LI>Fixed compilation errors and warnings.</LI>
2261 </UL></LI>
2262 <LI><B>underground_physics</B>
2263 <UL>
2264 <LI>Migrated code to multi-threading.</LI>
2265 <LI>Repaired photocathode description such that photon hits are
2266 now registered.</LI>
2267 <LI>Removed scintillator energy deposits from optical photons,
2268 double counting!</LI>
2269 <LI>Replaced obsolete use of G4ParticleTable::GetIon() with
2270 G4IonTable::GetIon(). Use correct mu- stopping process.</LI>
2271 </UL></LI>
2272 <LI><B>xray_fluorescence</B>
2273 <UL>
2274 <LI>Migrated code to multi-threading.
2275 <LI>Completed migration to g4tools (removed AIDA dependency).
2276 </UL></LI>
2277 <LI><B>xray_telescope</B>
2278 <UL>
2279 <LI>Migrated code to multi-threading.</LI>
2280 <LI>Follow migration of MT-ready GPS code.</LI>
2281 <LI>Added definition of muons and short-lived.</LI>
2282 <LI>Revised method book() of analysis singleton.</LI>
2283 </UL></LI>
2284 </UL></LI>
2285 <LI><B>basic</B>
2286 <UL>
2287 <LI>Removed G4UI_USE/G4VIS_USE conditionals from B1-B4 examples and
2288 init.mac macro, no longer needed.</LI>
2289 <LI>Moved G4UIExecutive at the beginning of main() in all examples.</LI>
2290 <LI>Perform run initialization in macros instead of main().</LI>
2291 </UL></LI>
2292 <LI><B>extended</B>
2293 <UL>
2294 <LI><B>analysis</B>
2295 <UL>
2296 <LI>Use physics list FTFP_BERT in AnaEx01,02,03.
2297 Removed custom PhysicList class from shared.</LI>
2298 <LI>Create two ntuples in AnaEx02,03 instead of one in order to
2299 demonstrate how to do this with all tools.</LI>
2300 <LI>Updated for moving script in 'shared'.</LI>
2301 <LI><B>analysis/AnaEx01</B>
2302 <UL>
2303 <LI>Moved implementation of G4AnalysisManager for hbook from
2304 extended/common/analysis in 'hbook' sub-directory.</LI>
2305 </UL></LI>
2306 </UL></LI>
2307 <LI><B>biasing</B>
2308 <UL>
2309 <LI><B>biasing/B03</B>
2310 <UL>
2311 <LI>B03PhysicsList: replaced obsolete G4ParallelWorldScoringProcess
2312 with G4ParallelWorldProcess.</LI>
2313 </UL></LI>
2314 <LI><B>biasing/GB01</B>
2315 <UL>
2316 <LI>Fix in GB01BOptrChangeCrossSection, which was not properly
2317 using the new cross-section value in case of an UpdateForStep().</LI>
2318 </UL></LI>
2319 <LI><B>biasing/GB02</B>
2320 <UL>
2321 <LI>Update of the example to take into account changes made in the base
2322 classes, and related changes in G4BOptrForceCollision.</LI>
2323 </UL></LI>
2324 <LI><B>biasing/GB03</B>
2325 <UL>
2326 <LI>New example illustrating the use of generic biasing classes to
2327 implement a technique close to the "geometry importance biasing" one.</LI>
2328 <LI>An extra mechanism to alleviate over-splitting is illustrated.</LI>
2329 </UL></LI>
2330 <LI><B>biasing/GB04</B>
2331 <UL>
2332 <LI>New example illustrating the use of generic biasing classes to
2333 create a bremsstrahlung splitting technique.</LI>
2334 </UL></LI>
2335 </UL></LI>
2336 <LI><B>common</B>
2337 <UL>
2338 <LI>Moved analysis subdirectory in concrete examples.</LI>
2339 <LI>Updated for changes in analysis category: ntuple columns of
2340 vectors (disabled), changes in ntuple_booking.
2341 Updated to g4tools-1.10.0.</LI>
2342 <LI>Modifications to facilitate use of common directory via svn:externals:
2343 merging user classes in the top directory (include and src), added
2344 testCommon.cc for all classes altogether and added building
2345 common library.</LI>
2346 <LI>Removed obsolete sub-directories with user classes and scripts.</LI>
2347 <LI>Added typedefs and functions for accessing iterators over H1, H2,
2348 Ntuples.</LI>
2349 <LI>Removed fPrintModulo from ExG4EventAction01 and fSetPrintModuloCmd
2350 from ExG4EventAction01Messenger, now obsolete.</LI>
2351 </UL></LI>
2352 <LI><B>electromagnetic</B>
2353 <UL>
2354 <LI><B>electromagnetic/TestEm0</B>
2355 <UL>
2356 <LI>Code formatting.</LI>
2357 </UL></LI>
2358 <LI><B>electromagnetic/TestEm1</B>
2359 <UL>
2360 <LI>DetectorConstruction: define heavy water vapor starting from
2361 isotopes.</LI>
2362 <LI>Removed printout from second thread in TestEm1.in macro.</LI>
2363 <LI>Introduced function Run::EndOfRun().</LI>
2364 <LI>Removed PhysicsList::SetCuts().</LI>
2365 <LI>Simplified PhysicsList and its messenger, accordingly.</LI>
2366 <LI>PhysicsList: added "emlowenergy" option.</LI>
2367 <LI>Set number of threads as number of cores in main().</LI>
2368 <LI>PhysicsList: added G4EmStandardPhysicsSS.</LI>
2369 <LI>Added option to set nThreads via UI command in main().</LI>
2370 Set default number of threads to 2 in input macro.</LI>
2371 </UL></LI>
2372 <LI><B>electromagnetic/TestEm2</B>
2373 <UL>
2374 <LI>Introduced function Run::EndOfRun().</LI>
2375 <LI>Added "emlowenergy" option for EM physics.</LI>
2376 <LI>Removed PhysicsList::SetCuts().</LI>
2377 <LI>RunAction + Run: introduced profiles for histos 4 and 8.</LI>
2378 <LI>Added option to set nThreads via UI command in main().</LI>
2379 Set default number of threads to 2 in input macro.</LI>
2380 </UL></LI>
2381 <LI><B>electromagnetic/TestEm3</B>
2382 <UL>
2383 <LI>Enabled multi-threading; implemented required migration.</LI>
2384 <LI>Added "emlowenergy" option for EM physics.</LI>
2385 <LI>Removed PhysicsList::SetCuts().</LI>
2386 <LI>PhysicsList: added G4EmStandardPhysicsSS.</LI>
2387 <LI>Added option to set nThreads via UI command in main().
2388 Set default number of threads to 2 in input macro.</LI>
2389 </UL></LI>
2390 <LI><B>electromagnetic/TestEm4</B>
2391 <UL>
2392 <LI>HistoManager: restore "h" in front of histogram id.</LI>
2393 <LI>Added option to set nThreads via UI command in main().
2394 Set default number of threads to 2 in input macro.</LI>
2395 <LI>Improved output in MT mode.</LI>
2396 </UL></LI>
2397 <LI><B>electromagnetic/TestEm5</B>
2398 <UL>
2399 <LI>Introduced function Run::EndOfRun().</LI>
2400 <LI>Added "emlowenergy" option for EM physics.</LI>
2401 <LI>Removed PhysicsList::SetCuts().</LI>
2402 <LI>PhysicsList, PhysicsListMessenger: removed local cuts
2403 commands.</LI>
2404 <LI>Added possibility to change number on threads though
2405 2nd parameter in command line.</LI>
2406 <LI>StackingAction, HistoManager: added histograms for energy of
2407 gamma and Auger electrons per de-excitation model.</LI>
2408 <LI>Set number of threads as number of cores in main().
2409 Added possibility to change number on threads by 2nd
2410 parameter in command line.</LI>
2411 <LI>PhysicsList: added G4EmStandardPhysicsSS, WVI.</LI>
2412 </UL></LI>
2413 <LI><B>electromagnetic/TestEm6</B>
2414 <UL>
2415 <LI>Suppressed EventAction and its messenger.</LI>
2416 <LI>Updated PhysicsList, DetectorConstruction and RunAction.</LI>
2417 <LI>Replaced '/testem/event/printModulo' with '/run/printProgress'.</LI>
2418 </UL></LI>
2419 <LI><B>electromagnetic/TestEm7</B>
2420 <UL>
2421 <LI>Added "emlowenergy" option for EM physics.</LI>
2422 <LI>Removed SetCuts() method and corresponding UI commands,
2423 applied code guidelines.</LI>
2424 <LI>Replaced obsolete use of G4ParticleTable::GetIon() with
2425 G4IonTable::GetIon().</LI>
2426 </UL></LI>
2427 <LI><B>electromagnetic/TestEm8</B>
2428 <UL>
2429 <LI>Migrated code to support multi-threading.</LI>
2430 <LI>Added "emlowenergy" option for EM physics.</LI>
2431 <LI>Removed SetCuts() method and corresponding UI commands,
2432 applied code guidelines.</LI>
2433 <LI>Reduced statistics in input macro.</LI>
2434 </UL></LI>
2435 <LI><B>electromagnetic/TestEm9</B>
2436 <UL>
2437 <LI>Added "emlowenergy" option for EM physics.</LI>
2438 <LI>Removed SetCuts() method and corresponding UI commands,
2439 applied code guidelines.</LI>
2440 </UL></LI>
2441 <LI><B>electromagnetic/TestEm11</B>
2442 <UL>
2443 <LI>Introduced function Run::EndOfRun().</LI>
2444 <LI>HistoManager: removed hbook.</LI>
2445 <LI>Set "ToBeBroadcasted == false" for UI commands that modify
2446 physics list and detector since these should be executed
2447 only by master.</LI>
2448 <LI>Removed SetCuts() method and corresponding UI commands,
2449 applied code guidelines.</LI>
2450 <LI>PhysicsList: added G4EmStandardPhysicsSS.</LI>
2451 <LI>Added option to set nThreads via UI command in main().
2452 Set default number of threads to 2 in input macro.</LI>
2453 </UL></LI>
2454 <LI><B>electromagnetic/TestEm12</B>
2455 <UL>
2456 <LI>Enabled multi-threading; implemented required migration.</LI>
2457 <LI>Added "emlowenergy" and dna_option1 in physics-list.</LI>
2458 <LI>Removed SetCuts() method and corresponding UI commands,
2459 applied code guiedlines.</LI>
2460 <LI>PhysicsList: added G4EmStandardPhysicsSS.</LI>
2461 <LI>Added option to set nThreads via UI command in main().
2462 Set default number of threads to 2 in input macro.</LI>
2463 </UL></LI>
2464 <LI><B>electromagnetic/TestEm13, TestEm14</B>
2465 <UL>
2466 <LI>Migrated code to support multi-threading.</LI>
2467 <LI>Removed SetCuts() method and corresponding UI commands,
2468 applied code guidelines.</LI>
2469 </UL></LI>
2470 <LI><B>electromagnetic/TestEm15</B>
2471 <UL>
2472 <LI>Removed PhysicsList::SetCuts().</LI>
2473 </UL></LI>
2474 <LI><B>electromagnetic/TestEm16</B>
2475 <UL>
2476 <LI>Migrated code to support multi-threading.</LI>
2477 <LI>Suppressed EventAction and its messenger.</LI>
2478 <LI>PhysicsList: removed SetCut() method, added
2479 Synchrotron radiation to all charged particles.</LI>
2480 </UL></LI>
2481 <LI><B>electromagnetic/TestEm17</B>
2482 <UL>
2483 <LI>Use G4EmStandardPhysics and G4EmParameters classes in
2484 PhysicsList, removed SetCuts method.</LI>
2485 </UL></LI>
2486 <LI><B>electromagnetic/TestEm18</B>
2487 <UL>
2488 <LI>Removed PhysicsList::SetCuts().</LI>
2489 </UL></LI>
2490 </UL></LI>
2491 <LI><B>eventgenerator/exgps</B>
2492 <UL>
2493 <LI>Migrated to use of built-in physics list.
2494 Use QGSP_BIC physics list to avoid dependency on data.</LI>
2495 <LI>Removed 'drawTracks' and 'printModulo' commands and adapted
2496 macro files to use the equivalent built-in macro commands.</LI>
2497 <LI>Implemented changes needed for MT-ready GPS, substantially
2498 reducing memory footprint in nulti-threaded mode.</LI>
2499 <LI>Migrated to new messenger strategy.</LI>
2500 <LI>Replaced EventAction by TrackingAction.</LI>
2501 <LI>Changed dimension of world volume.</LI>
2502 <LI>Updated macros.</LI>
2503 </UL></LI>
2504 <LI><B>eventgenerator/HepMC</B>
2505 <UL>
2506 <LI>Changes to comply with coding conventions.</LI>
2507 </UL></LI>
2508 <LI><B>eventgenerator/particleGun</B>
2509 <UL>
2510 <LI>Migrated code to support multi-threading.</LI>
2511 <LI>Modified plots of angles and simplified histograms.</LI>
2512 <LI>Added PrimaryGeneratorAction0 class and run0.mac.</LI>
2513 </UL></LI>
2514 <LI><B>eventgenerator/pythia/decayer6</B>
2515 <UL>
2516 <LI>Removed custom physics-list.</LI>
2517 <LI>Fixed order of instantiating Vis/UI.</LI>
2518 <LI>Replaced use of std::cerr with G4cerr.</LI>
2519 <LI>Added common directory via svn:externals property.</LI>
2520 </UL></LI>
2521 <LI><B>exoticphysics/channeling</B>
2522 <UL>
2523 <LI>New example showing how channeling of 400 GeV/c protons in bent
2524 Si crystal can be simulated in Geant4.</LI>
2525 </UL></LI>
2526 <LI><B>exoticphysics/phonon</B>
2527 <UL>
2528 <LI>Moved lattice classes, particle definitions, and physics
2529 processes into toolkit.</LI>
2530 <LI>Migrated code to support multi-threading.</LI>
2531 <LI>Fix in CMake script to copy data in build directory.</LI>
2532 </UL></LI>
2533 <LI><B>exoticphysics/ucn</B>
2534 <UL>
2535 <LI>New example demonstrating the functionality of UCN physics.</LI>
2536 </UL></LI>
2537 <LI><B>field/field04</B>
2538 <UL>
2539 <LI>Porting to new optical phsyics processes API.</LI>
2540 <LI>Fixed problem for process sharing.</LI>
2541 </UL></LI>
2542 <LI><B>g3tog4</B>
2543 <UL>
2544 <LI>Moved data directory in clGeometry.</LI>
2545 <LI>Added common directory via svn:externals property.</LI>
2546 </UL></LI>
2547 <LI><B>hadronic/FissionFragment</B>
2548 <UL>
2549 <LI>New example to exercise fission fragmentation.</LI>
2550 </UL></LI>
2551 <LI><B>hadronic/Hadr00</B>
2552 <UL>
2553 <LI>HistoManager: added histogram with cross-section per volume.</LI>
2554 </UL></LI>
2555 <LI><B>hadronic/Hadr02</B>
2556 <UL>
2557 <LI>Applied code guidelines and code cleanup.</LI>
2558 </UL></LI>
2559 <LI><B>hadronic/Hadr03</B>
2560 <UL>
2561 <LI>Enabled multi-threading; implemented required migration.</LI>
2562 <LI>Defined a stucture for nuclear channel data.</LI>
2563 <LI>Use G4HadronElasticPhysicsHP in physics-list.</LI>
2564 <LI>Histograms: changed numbering scheme. Added histo of atomic mass.</LI>
2565 <LI>EndOfRun: introduced optional print and UI command to control it.</LI>
2566 <LI>Register RunMessenger in RunAction instead of Run.</LI>
2567 <LI>PhysicsList: added G4IonElasticPhysics constructor.</LI>
2568 <LI>Added option to set nThreads via UI command in main().</LI>
2569 </UL></LI>
2570 <LI><B>hadronic/Hadr04</B>
2571 <UL>
2572 <LI>Pass primary kinematic to Run.</LI>
2573 <LI>NeutronHPphysics: check for pre-existing processes.</LI>
2574 <LI>Set number of threads as number of cores in main().</LI>
2575 </UL></LI>
2576 <LI><B>hadronic/Hadr06</B>
2577 <UL>
2578 <LI>New example to survey energy deposition and particle's flux
2579 from an hadronic cascade.</LI>
2580 </UL></LI>
2581 <LI><B>medical/dna</B>
2582 <UL>
2583 <LI>chem1
2584 <UL>
2585 <LI>New example showing how to activate DNA chemistry in a
2586 'semi infinite' homogeneous medium.</LI>
2587 </UL></LI>
2588 <LI>chem2
2589 <UL>
2590 <LI>New example showing how to activate DNA chemistry in a
2591 'semi infinite' homogeneous medium, setting minimum time
2592 step limits.</LI>
2593 </UL></LI>
2594 <LI>chem3
2595 <UL>
2596 <LI>New example showing how to activate DNA chemistry in a
2597 'semi infinite' homogeneous medium, implementing user
2598 actions.</LI>
2599 </UL></LI>
2600 <LI>dnaphysics
2601 <UL>
2602 <LI>Moved from advanced module.</LI>
2603 <LI>Added lines for ion in dna.mac.</LI>
2604 <LI>Cleaned physics-lists and READMEs.</LI>
2605 </UL></LI>
2606 <LI>microdosimetry
2607 <UL>
2608 <LI>Moved from advanced module.</LI>
2609 <LI>Fixed user actions and enter flexible number of threads.
2610 Updated READMEs.</LI>
2611 <LI>Select GUI+vis driver from command line.</LI>
2612 <LI>Corrected check on the output file command line option.</LI>
2613 <LI>Removed macro microdosimetry.mac.</LI>
2614 <LI>Cleanup of command line options.</LI>
2615 </UL></LI>
2616 <LI>pdb4dna
2617 <UL>
2618 <LI>New example simulating energy deposits in a target volume
2619 generated from a PDB file representing DNA geometry.</LI>
2620 </UL></LI>
2621 <LI>wholeNuclearDNA
2622 <UL>
2623 <LI>Moved from advanced example 'dnageometry'.</LI>
2624 <LI>Migrated to multi-threading.</LI>
2625 <LI>Updated visualization setup.</LI>
2626 <LI>Offering basic tools to simulate the track structure of
2627 different charge particles within a simplified geometrical
2628 model of the DNA molecule contained in a cell nucleus.</LI>
2629 <LI>Select GUI+vis driver from command line.</LI>
2630 <LI>Added copying macros and data files in build directory.</LI>
2631 </UL></LI>
2632 </UL></LI>
2633 <LI><B>medical/DICOM</B>
2634 <UL>
2635 <LI>Using G4GenericPhysicsList and removed DicomPhysicsList.</LI>
2636 <LI>Removed use of std::cout and exit() in the code.</LI>
2637 </UL></LI>
2638 <LI><B>medical/electronScattering</B>
2639 <UL>
2640 <LI>Migration to multi-threading.</LI>
2641 <LI>Removed PhysicsList::SetCuts().</LI>
2642 </UL></LI>
2643 <LI><B>medical/electronScattering2</B>
2644 <UL>
2645 <LI>Fixed memcheck errors: foil thickness now defined in Detector
2646 constructor.</LI>
2647 <LI>Allow for selection of physics-list option4.</LI>
2648 <LI>Follow migration of MT-ready GPS code.</LI>
2649 <LI>Applied code guidelines; added G4EmLowEPPhysics.</LI>
2650 </UL></LI>
2651 <LI><B>medical/fanoCavity[1,2]</B>
2652 <UL>
2653 <LI>Fix to proper initialisation of members in RunAction class.</LI>
2654 </UL></LI>
2655 <LI><B>medical/GammaTherapy</B>
2656 <UL>
2657 <LI>Applied code guidelines.</LI>
2658 </UL></LI>
2659 <LI><B>optical/LXe</B>
2660 <UL>
2661 <LI>Removed shared process pointers between threads.</LI>
2662 <LI>Use implicit dimensioning for all arrays.</LI>
2663 <LI>Updated UI commands to new structure.</LI>
2664 <LI>Use correct mu- stopping process.</LI>
2665 <LI>Added proton, neutron and pions to local Mu physics-list,
2666 needed for mu- capture at rest process.</LI>
2667 </UL></LI>
2668 <LI><B>optical/OpNovice</B>
2669 <UL>
2670 <LI>Use implicit dimensioning for all arrays.</LI>
2671 <LI>Updated UI commands to new structure.</LI>
2672 </UL></LI>
2673 <LI><B>optical/WLS</B>
2674 <UL>
2675 <LI>Follow migration of MT-ready GPS code.</LI>
2676 <LI>Use implicit dimensioning for all arrays.</LI>
2677 </UL></LI>
2678 <LI><B>parallel/MPI</B>
2679 <UL>
2680 <LI>Added first version of G4RunMerger and G4ScorerMerger.</LI>
2681 <LI>New CMake configuration.</LI>
2682 <LI>Fixed bug for RNG seed distribution in MT mode.
2683 Addressing problem report
2684 <A HREF="http://bugzilla-geant4.kek.jp/show_bug.cgi?id=1653">#1653</A>.</LI>
2685 </UL></LI>
2686 <LI><B>parameterisations/gflash</B>
2687 <UL>
2688 <LI>Follow migration of MT-ready GPS code.</LI>
2689 </UL></LI>
2690 <LI><B>persistency/gdml/G01</B>
2691 <UL>
2692 <LI>Added multiUnion.gdml sample demonstrating import and export
2693 of a Multi-Union structure.</LI>
2694 </UL></LI>
2695 <LI><B>persistency/P01</B>
2696 <UL>
2697 <LI>Added ExP01ClassesDict to the install targets so it is copied to
2698 the right place. Addressing problem report
2699 <A HREF="http://bugzilla-geant4.kek.jp/show_bug.cgi?id=1502">#1502</A>.</LI>
2700 </UL></LI>
2701 <LI><B>persistency/P03</B>
2702 <UL>
2703 <LI>Using G4GenericPhysicsList and removed ExTGPhysicsList.</LI>
2704 </UL></LI>
2705 <LI><B>polarisation/Pol01</B>
2706 <UL>
2707 <LI>Several updates for the unification of the example: use standard
2708 physics builder from physics_list sub-package; removed local
2709 SetCuts() method; removed AIDA histograms.</LI>
2710 </UL></LI>
2711 <LI><B>radioactivedecay/rdecay01</B>
2712 <UL>
2713 <LI>Enabled multi-threading; implemented required migration.</LI>
2714 </UL></LI>
2715 <LI><B>radioactivedecay/rdecay02</B>
2716 <UL>
2717 <LI>Fixed case of no elastic cross-section found for generic ions.
2718 Assigned model G4NuclNuclDiffuseElastic and cross-section
2719 G4GGNuclNuclCrossSection to generic ions in exrdmPhysListHadron.
2720 Addressing problem report
2721 <A HREF="http://bugzilla-geant4.kek.jp/show_bug.cgi?id=1461">#1461</A>.</LI>
2722 </UL></LI>
2723 <LI><B>runAndEvent</B>
2724 <UL>
2725 <LI><B>runAndEvent/RE01</B>
2726 <UL>
2727 <LI>Removed obsolete sample.err log-file.</LI>
2728 </UL></LI>
2729 <LI><B>runAndEvent/RE06</B>
2730 <UL>
2731 <LI>Removed obsolete hand-written physics list.</LI>
2732 </UL></LI>
2733 </UL></LI>
2734 <LI><B>visualization</B>
2735 <UL>
2736 <LI>Migrated 'userVisAction' example to multi-threading (based
2737 on basic/B1 example).</LI>
2738 </UL></LI>
2739 </UL></LI>
2740 </UL>
2741
2742 <HR>
2743
2744 </BODY>
2745 </HTML>