File indexing completed on 2025-01-18 09:16:08
0001 <HTML>
0002 <HEAD>
0003 <TITLE>Geant4 9.4 Release Notes</TITLE>
0004 </HEAD>
0005 <BODY BGCOLOR='F0F0F0'>
0006
0007 <P> </P>
0008 <BR>
0009 <P> </P>
0010
0011 <P ALIGN="Center">
0012 <FONT SIZE="+4" COLOR="#238E23">
0013 <B>Geant4 9.4 Release Notes</B>
0014 </FONT>
0015
0016 <TABLE WIDTH="100%">
0017 <TR><TD ALIGN="Right">
0018 <FONT SIZE="-1" COLOR="#5C3317">
0019 <B><I>December 17<SUP>th</SUP>, 2010</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.">CLHEP and AIDA</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.">Known Run-Time Warnings</A></LI>
0053 <LI><A HREF="#9.">Geant4 Software License</A></LI>
0054 <LI><A HREF="#10.">Detailed list of changes and fixes</A></LI>
0055 </OL>
0056
0057 <P> </P>
0058 <A NAME="1."></a>
0059 <HR>
0060
0061
0062
0063 <H2>1. Supported and Tested Platforms</H2>
0064
0065 Officially tested platforms:
0066 <UL>
0067 <LI>Linux, gcc-4.1.2 and gcc-4.3.2 (SLC5).<BR>
0068 Tested on 32 and 64 bit architectures (Intel or AMD) with
0069 Scientific Linux CERN 5 (SLC5) (based on RedHat Linux Enterprise 5).</LI>
0070 <LI>MacOSX 10.6 with gcc-4.2.1</LI>
0071 <LI>Windows/XP and CygWin Tools with: Visual C++ 9.0 (Visual Studio 2008)</LI>
0072 </UL>
0073
0074 More verified configurations:
0075 <UL>
0076 <LI>Linux, gcc-4.5.1, gcc-3.4.6 (SLC4)</LI>
0077 <LI>Linux, Intel-icc 11.1</LI>
0078 </UL>
0079
0080 Platforms configured but neither tested nor supported:
0081 <UL>
0082 <LI>AIX 4.3.2, xlC 6.0</LI>
0083 <LI>DEC V4.0, cxx C++ V6.1-027</LI>
0084 <LI>HP 10.20, aCC C++ B3910B A.01.23</LI>
0085 <LI>MacOSX 10.4, gcc-3.3</LI>
0086 <LI>MacOSX 10.5, gcc-4.0.1</LI>
0087 <LI>SGI V6.5.5, CC 7.2.1</LI>
0088 <LI>SUN Solaris 5.8, C++ CC-5.5.</LI>
0089 </UL>
0090
0091 <P> </P>
0092 <A NAME="2."></A>
0093 <HR>
0094
0095
0096
0097 <H2>2. CLHEP and AIDA</H2>
0098
0099 This release of Geant4 has been verified with
0100 <A TARGET="ext" HREF="http://cern.ch/clhep/">CLHEP</A>, release <B>2.1.0.1</B>.
0101 Use of a different CLHEP version may cause incorrect simulation results.
0102 <P> </P>
0103 Most Geant4 9.4 examples with histogramming co-work with analysis tools
0104 compliant to AIDA 3.2.1 interfaces (for details, see
0105 <A TARGET="ext" HREF="http://cern.ch/geant4/UserDocumentation/UsersGuides/ForApplicationDeveloper/html/apas02.html">Appendix 2</A>
0106 of the
0107 <A TARGET="ext" HREF="http://cern.ch/geant4/UserDocumentation/UsersGuides/ForApplicationDeveloper/html/">Users Guide for Application Developers</A>).
0108 AIDA headers can be downloaded from:
0109 <A TARGET="ext" HREF="http://aida.freehep.org/">http://aida.freehep.org</A>
0110
0111
0112 <P> </P>
0113 <A NAME="3."></A>
0114 <HR>
0115
0116
0117
0118 <H2>3. Items for migration of the user code</H2>
0119
0120 Listed here is some relevant information on developments included in this
0121 release, some of which may require migrations (mainly for users of advanced
0122 Geant4 features) in order to upgrade from release 9.3 to release 9.4.
0123 Note that for all users a full re-installation of libraries (or a full
0124 recompilation) and a recompilation of user applications is required.
0125
0126
0127 <P> </P>
0128 <B>Standard Electromagnetic physics</B>
0129 <P> </P>
0130 <UL>
0131 <LI>Changed default multiple scattering models to <TT>G4UrbanMscModel93</TT>
0132 for electrons and positron, <TT>G4WentzelVIModel</TT> for muons.
0133 <TT>G4UrbanMscModel90</TT> remains the choice for other particles.</LI>
0134 <LI>Removed obsolete classes <TT>G4MultipleScattering, G4UrbanMscModel</TT> and
0135 <TT>G4UrbanMscModel2</TT>. The use of multiple scattering processes
0136 specialised by particle type (<TT>G4eMultipleScattering, G4hMultipleScattering</TT>
0137 and <TT>G4MuMultipleScattering</TT>) is now mandatory.
0138 </UL>
0139
0140 <P> </P>
0141 <B>Low Energy Electromagnetic physics</B>
0142 <P> </P>
0143 <UL>
0144 <LI>The Geant4-DNA <TT>G4DNAEmfietzoglouExcitationModel</TT> class for the modeling of
0145 electron excitation in liquid water is obsolete and should be replaced
0146 by the <TT>G4DNABornExcitationModel</TT> class.</LI>
0147 </UL>
0148
0149 <P> </P>
0150 <B>Persistency</B>
0151 <P> </P>
0152 <UL>
0153 <LI>GDML: to better match the schema definition, a correction to the 'value'
0154 type from <TT>double</TT> to <TT>string</TT> has been made for the
0155 auxiliary-information returned by <TT>G4GDMLParser</TT>. This may require
0156 related change in the user code, where the auxiliary information feature
0157 is used.</LI>
0158 </UL>
0159
0160 <P> </P>
0161 <B>Physics Lists</B>
0162 <P> </P>
0163 <UL>
0164 <LI>Previously obsolete physics lists have been deleted, for the detailed
0165 list please see <a href="#lst-notes">below</a>.
0166 <LI>Introduced new constructor for all builders with a common signature.
0167 Previous constructors are kept for this release, but are declared obsolete.
0168 They will be removed in a future release.
0169 </LI>
0170 </UL>
0171
0172 <P> </P>
0173 <B>Visualization</B>
0174 <P> </P>
0175 <UL>
0176 <LI>The visualization trajectory modeling command
0177 <TT>/vis/modeling/trajectories/create/drawByParticleID</TT>
0178 used to default all trajectories to grey, with the user having to
0179 explicitly set any other color code. While the user can still set any
0180 wished color code, the default has been improved to:
0181 <TT>[e-/red; e+/blue; proton/cyan; gamma/green; neutron/yellow;
0182 pi+,pi-,pi0/magenta; other/grey]</TT>.</LI>
0183 <LI>In some examples, visualization that used to draw trajectories as simple
0184 lines now also draws step points. Users who wish to disable step point
0185 drawing can do so by commenting out a line in the visualization macro.</LI>
0186 </UL>
0187
0188 <P> </P>
0189 <B>Data Sets</B>
0190 <P> </P>
0191 This release introduces new data sets and also new versions.
0192 Please see the corresponding details in
0193 <A href="#data-notes">Section 10</A> of this document.
0194 <UL>
0195 <LI>G4NEUTRONXS-1.0, new data set for evaluated neutron cross-section data
0196 on natural composition of elements (controlled by variable
0197 <TT>G4NEUTRONXSDATA</TT>).</LI>
0198 <LI>G4PII-1.2, new data set for shell ionisation cross-sections (controlled
0199 by variable <TT>G4PIIDATA</TT>).</LI>
0200 <LI>New data set versions: <TT>G4EMLOW.6.19, G4RadioactiveDecay.3.3,
0201 G4PhotonEvaporation.2.1, G4NDL.3.14</TT>.</LI>
0202 </UL>
0203
0204 <P> </P>
0205 <A NAME="4."></A>
0206 <HR>
0207
0208
0209
0210 <H2>4. New Developments and Capabilities </H2>
0211
0212 <B>Geometry</B>
0213 <UL>
0214 <LI>It is now possible to introduce gaps between slices in divisions,
0215 by making use of a new specialised physical-volume type,
0216 <TT>G4ReplicatedSlice</TT> for defining the divided daughter volumes.</LI>
0217 <LI>In regular voxelised geometries, the restriction for voxels to completely
0218 fill the envelope container is now relaxed. It is now allowed to define
0219 envelopes of different types other than box for regular geometries,
0220 by making use of a new parameterisation helper class
0221 <TT>G4PartialPhantomParameterisation</TT>.</LI>
0222 <LI>A new specific shape, <TT>G4GenericTrap</TT>, is now implemented.
0223 This new solid represents an arbitrary trapezoid with up to 8 vertices
0224 standing on two parallel planes perpendicular to the <TT>Z</TT> axis.</LI>
0225 </UL>
0226
0227 <B>Detector description persistency</B>
0228 <UL>
0229 <LI>Introduced new UI commands from the GDML parser to allow for importing and
0230 exporting GDML files through macros or interactively, supporting all
0231 various options provided by the parser.</LI>
0232 </UL>
0233
0234 <B>Digitization & Hits</B>
0235 <UL>
0236 <LI>Cylindrical scoring mesh is now fully released.</LI>
0237 <LI>Most of primitive scorers now take their default units, and units may
0238 by altered by their UI commands. These units are used for drawing and
0239 dumping the scores.</LI>
0240 </UL>
0241
0242 <B>Standard Electromagnetic physics</B>
0243 <UL>
0244 <LI>New model <TT>G4ICRU73QOModel</TT> is available
0245 for low-energy ionisation of negative-charge projectiles
0246 (including anti-ions); it is based on ICRU'73 data for oscillator strengths;
0247 this model is the default for negative-charge particles in <TT>G4hIonisation</TT> process class.</LI>
0248 <LI>Improved modeling of fluctuations in energy deposition, relevant for
0249 deposit in gasses and silicon. Increases stability when step size changes.</LI>
0250 <LI>New model of single scattering and NIEL for ions
0251 <TT>G4IonCoulombScatteringModel</TT> is available; the model is applicable
0252 from <TT>50 keV</TT> to <TT>100 TeV</TT>.</LI>
0253 <LI>New ionisation models <TT>G4BraggIonGasModel</TT>,
0254 <TT>G4BetheBlochIonGasModel</TT> are available for simulation of ion
0255 transport in low density media, e.g. in vacuum.
0256 The ion charge of a particle is not changed by these models.</LI>
0257 <LI>The default angular distribution of gamma in the Bremsstrahlung process
0258 can be substituted by alternative model in physics-list.</LI>
0259 <LI>Fluorescence and Auger electron production can be activated via UI commands,
0260 using the new models <TT>G4PEEffectFluoModel</TT> and <TT>G4KleinNishinaModel</TT>.</LI>
0261 <LI>Disabled usage of minimum energy threshold per model. As a result the
0262 production threshold is defined only by range (converted to energy in each
0263 material). It remains constrained by the minimum limit defined in 'cut' category.
0264 This change is necessary to allow the full set of combinations of models
0265 in a process.</LI>
0266 </UL>
0267
0268 <B>Low Energy Electromagnetic physics</B>
0269 <UL>
0270 <LI>Photon Livermore models:
0271 first implementation of pair production in the electric field of the
0272 electron. The <TT>G4BoldyshevTripletModel</TT> should be used in
0273 conjunction with the <TT>G4LivermoreNuclearGammaConversionModel</TT>
0274 model (using <TT>G4MultiModel</TT>) in order not to account twice
0275 for the pair production cross section in the electron field.</LI>
0276 <LI>Electron Livermore models:
0277 <TT>G4LivermoreIonisationModel</TT> is able to generate fluorescence
0278 along the step. Addressing problem report
0279 <A HREF="http://bugzilla-geant4.kek.jp/show_bug.cgi?id=1141">#1141</A>.</LI>
0280 <LI>Penelope models:
0281 added four new models (gamma ray models: Compton, GammaConversion,
0282 PhotoElectric and Rayleigh). Upgrades of Penelope from version 2001 to
0283 version 2008, named as <TT>G4Penelope08xxxxModel</TT>. To be considered
0284 as beta.</LI>
0285 <LI>For all low energy EM models: no customized production cuts are allowed
0286 anymore for fluorescence/Auger.
0287 Main cuts from the <TT>G4ProductionCutsTable</TT> are always used, for
0288 consistency.</LI>
0289 <LI>Geant4-DNA (in liquid water):
0290 <UL>
0291 <LI>New process and model classes for electron attachment and vibrational
0292 excitation.</LI>
0293 <LI>New electronic excitation model for electrons.</LI>
0294 <LI>Extended very low energy coverage of Champion's electron elastic
0295 scattering.</LI>
0296 <LI>New excitation model for neutral hydrogen.</LI>
0297 <LI>Preliminary new ionization models for <TT>C, N, O</TT> and <TT>Fe</TT>.
0298 To be considered as beta.</LI>
0299 <LI>Multi-scale combination of Geant4-DNA discrete processes with Standard
0300 or low energy EM physics processes adopting the unified software
0301 approach of both EM physics sub-categories (see the
0302 <TT>microdosimetry</TT> advanced example for illustration).</LI>
0303 </UL></LI>
0304 </UL>
0305
0306 <B>Hadronic physics</B>
0307 <UL>
0308 <LI>Hadronic interfaces now require integer Z and A arguments. Elements or
0309 materials with effective or average values of Z and A are no longer
0310 allowed.</LI>
0311 <LI>Quark exchange, Reggeon cascade and nuclear destruction parameters in the FTF
0312 model were tuned. Tuning of the nuclear destruction parameters was based on
0313 HARP-CDP data. Low mass string fragmentation was improved.</LI>
0314 <LI>The Bertini cascade model was re-written to employ more code re-use, improve
0315 memory management, and provide better energy/momentum conservation. Angular
0316 distributions of the two-body final states of hadron-nucleon interactions were
0317 redone and improved.
0318 An optional interface to the G4Precompound model (and the associated
0319 de-excitation processes) is now available; this is an alternative to the
0320 dedicated de-excitation which has been used until now.</LI>
0321 <LI>Anti-baryon-nucleon elastic scattering was added to the CHIPS model.</LI>
0322 <LI>Fermi breakup was extended to include fragments with <TT>1 < A < 5 </TT>.
0323 Several improvements were made to bring the model closer to the original
0324 one of Botvina. Use hybrid of Fermi breakup and GEM models for
0325 <TT>A < 20</TT>. Several other improvements were made to the evaporation
0326 models. A README file was added explaining the photo-evaporation data
0327 files.</LI>
0328 <LI>New, fast models and cross sections for neutron elastic, inelastic and capture
0329 are now available: G4NeutronElasticXS, G4NeutronInelasticXS and
0330 G4NeutronCaptureXS. </LI>
0331 <LI>An isomer decay table was added to extend the number of existing isomers in the
0332 radioactive decay model. All of them will be decayed by isomeric transition
0333 (IT). A README file was added to explain the radioactive decay data files. </LI>
0334 <LI>RQMD (relativistic quantum molecular dynamics) code was enabled in the QMD
0335 model to allow treatment of higher collision energies.</LI>
0336 <LI>A new model, <TT>G4NuclNuclDiffuseElastic</TT> is now available for
0337 nucleus-nucleus elastic scattering.</LI>
0338 <LI>A new class <TT>G4ComponentAntiNuclNuclearXS</TT> provides
0339 the total elastic and inelastic cross sections of anti-nucleon
0340 and anti-nucleus interactions with nuclei.
0341 These were calculated using the Glauber approach.</LI>
0342 <LI>All hadronic processes now check to see if the cross section has become negative
0343 at the end of a step, before invoking the model.</LI>
0344 <LI>Checking of Energy/momentum conservation is available in the hadronic
0345 process class. Methods can set the theshold level for reporting
0346 and the verbosity of the output.</LI>
0347 </UL>
0348
0349 <P> </P>
0350 <B>Physics Lists</B>
0351 <UL>
0352 <LI>New physics lists QGSP_BERT_CHIPS and Shielding, details are described <a
0353 href="#lst-notes">below</a>.
0354 <LI>Improved inelastic hadronic cross section at high energies, above 90 GeV,
0355 in all QGS.. and FTF.. lists.
0356 <LI>Improved cross sections for Kaon, and all "misc" particles, including
0357 anti-proton, anti-neutron, and hyperons in FTFP_BERT, QGSP_FTFP_BERT, and the
0358 two new physics lists QGSP_BERT_CHIPS and Shielding.
0359 <LI>Use <TT>G4UrbanMscModel93</TT> by default for e+,e- in all EM physics
0360 builders except <TT>G4EmLivermorePhysics</TT> and <TT>G4EmPenelopePhysics</TT>
0361 where new <TT>G4GoudsmitSaundersonMscModel</TT> is used.</LI>
0362 <LI><TT>G4WentzelVIModel93</TT> and <TT>G4CoulombScattering</TT> are
0363 used by default for mu+,mu- in all builders.</TT>
0364 <LI>In <TT>G4EmStandardPhysics_option2</TT> for small angle multiple scattering
0365 <TT>G4WentzelVIModel93</TT> is used for protons, pions, and kaons;
0366 for angular distribution of bremmstrahlung gamma <TT>G4GeneratorBS</TT>
0367 is applied.</LI>
0368 <LI>Improved <TT>G4EmConfigurator</TT> class, to define alternative models by particle
0369 type, energy range, and detector region.
0370 Can be used to choose configuration EM models before or after the EM physics
0371 has been instantiated.</LI>
0372 </UL>
0373
0374 <P> </P>
0375 <A NAME="5."></A>
0376 <HR>
0377
0378
0379 <H2>5. Expected effects on physics and performance</H2>
0380
0381 <B>Standard Electromagnetic physics and cuts</B>
0382 <UL>
0383 <LI>Small increase of visible energy deposition in sampling calorimeters
0384 (e.g. 0.5% for a simplified setup with materials of the ATLAS EM barrel calorimeter)
0385 due to improvements in the multiple scattering model.</LI>
0386 <LI>Improved tails of energy deposition in thin absorbers.</LI>
0387 </UL>
0388
0389 <B>Hadronic physics</B>
0390 <UL>
0391 <LI>Improved treatment of low mass strings in the FTF model allows the model
0392 to be used at lower energies and provides a smoother transition in energy
0393 response in the region where string models give way to cascade models.</LI>
0394 <LI>Improved memory management in the Bertini cascade model results in a
0395 10-fold reduction of object creation and destruction. The model also
0396 conserves energy and momentum better.</LI>
0397 <LI>Fermi Break-up Model and GEM evaporation are used by default providing
0398 improved production of light fragments in nuclear fragmentation at low
0399 energy.</LI>
0400 <LI>Improved spectra of nuclear gamma deexcitation including Doppler
0401 broadening simulation.</LI>
0402 <LI>Fast neutron cross-sections can provide significant CPU savings for
0403 applications which need accurate simulation of neutrons below 20 MeV.</LI>
0404 <LI>Materials defined with an effective Z or A can no longer be used
0405 with hadronic processes.</LI>
0406 </UL>
0407
0408 <P> </P>
0409 <A NAME="6."></A>
0410 <HR>
0411
0412
0413
0414 <H2>6. Known Run-Time Problems and Limitations</H2>
0415 For a complete list of outstanding run-time problems and to submit any
0416 problem you may find while running this version of Geant4, please refer
0417 to the
0418 <A TARGET="ext" HREF="http://cern.ch/geant4/problemreport">Geant4 Problem
0419 Reporting System</A>.
0420
0421 <P> </P>
0422 <A NAME="7."></A>
0423 <HR>
0424
0425
0426
0427 <H2>7. Compilation Warnings</H2>
0428
0429 There may be a few compilation warnings on some platforms.
0430 We do not believe that any of these lead to incorrect run-time behaviour.
0431
0432 <P> </P>
0433 <A NAME="8."></A>
0434 <HR>
0435
0436
0437
0438 <H2>8. Known Run-Time Warnings</H2>
0439
0440 The following message may be written to standard output at the end of a program:
0441 <PRE>
0442 G4Transportation: Statistics for looping particles
0443 Sum of energy of loopers killed:
0444 Max energy of loopers killed:
0445 </PRE>
0446 It provides the total energy (in <TT>MeV</TT>) of tracks killed due to
0447 excessive number of steps ('looping') during the simulation, and the maximum
0448 energy of such a track. Such behaviour can be due to looping in magnetic fields
0449 or being abandoned due to being stuck at geometrical boundaries.
0450 <P></P>
0451 In case either of these reported energies is significant, we recommend
0452 increasing the verbosity of <TT>G4Transportation</TT> to obtain information for
0453 each track killed. A user can change the threshold energy above which particles
0454 are killed more reluctantly (only after significant additional effort) using
0455 the method <TT>SetThresholdImportantEnergy()</TT> of <TT>G4Transportation</TT>.
0456 The default value is <TT>100 MeV</TT>.
0457
0458 <P> </P>
0459 <A NAME="9."></A>
0460 <HR>
0461
0462
0463
0464 <H2>9. Geant4 Software License</H2>
0465
0466 A Software License applies to the Geant4 code.
0467 Users must accept this license in order to use it. The details and the list of
0468 copyright holders is available at
0469 <A href="http://cern.ch/geant4/license">http://cern.ch/geant4/license</A>
0470 and also in the text file <TT>LICENSE</TT> distributed with the source code.
0471
0472 <P> </P>
0473 <A NAME="10."></A>
0474 <HR>
0475
0476
0477
0478 <H2>10. Detailed list of changes and fixes</H2>
0479
0480 These are the main new features/fixes included in this release since the
0481 last patched public release (for more detailed lists of fixes/additions,
0482 please refer to the corresponding History files provided in most packages):
0483
0484 <P> </P>
0485
0486 <A NAME="conf-notes">
0487 <H3><I>Configuration</I></H3></A>
0488 <UL>
0489 <LI>Configure script:
0490 <UL>
0491 <LI>Updated scripts for Configure, to allow for parallel builds.</LI>
0492 <LI>Added new data sets <TT>G4NEUTRONXS</TT> (Evaluated neutron cross
0493 section data, version 1.0), controlled by variable <TT>G4NEUTRONXSDATA</TT>,
0494 and <TT>G4PII</TT> (shell ionization cross section data, version 1.2),
0495 controlled by variable <TT>G4PIIDATA</TT>.</LI>
0496 <LI>Added new versions of data sets for <TT>G4EMLOW.6.19, G4RadioactiveDecay.3.3,
0497 G4PhotonEvaporation.2.1, G4NDL.3.14</TT>.</LI>
0498 </UL></LI>
0499 <LI>cmake:
0500 <UL>
0501 <LI>First 'alpha' version of a new build infrastructure based on CMake
0502 (see <A HREF="http://www.cmake.org/">http://www.cmake.org/</A>).
0503 Added scripts and file catalogues to all source modules.</LI>
0504 </UL></LI>
0505 <LI>Removed 'leading_particle' hadronic module from include paths list.</LI>
0506 <LI>Added <TT>obj</TT> make target to <TT>globlib.gmk</TT> to allow for
0507 creation of object files only.</LI>
0508 <LI>Removed obsolete Qt3 setup for <TT>Darwin-g++, Linux-g++</TT> and
0509 <TT>WIN32-VC</TT>.</LI>
0510 <LI><TT>Darwin-g++.gmk</TT>: corrected and simplified Qt setup for use of
0511 Native OpenGL.</LI>
0512 <LI>Fixed linking options for shared libraries in <TT>Linux-icc.gmk</TT>.</LI>
0513 <LI>Corrected definition of <TT>LDFLAGS</TT> in <TT>binmake.gmk</TT> to
0514 avoid occasional fatal clashes with settings in user's environment.
0515 Added include paths to new modules and cleaned obsolete paths.</LI>
0516 <LI>Replaced use of <TT>strcat()</TT> with more secure <TT>strncat()</TT>
0517 in <TT>liblist.c</TT>, and protected uses of <TT>strcpy()</TT>.</LI>
0518 </UL>
0519
0520 <A NAME="digits-notes">
0521 <H3><I>Digitization & Hits</I></H3></A>
0522 <UL>
0523 <LI>Cylindrical scoring mesh is now fully released.</LI>
0524 <LI>Improved some UI commands for defining scorers.</LI>
0525 <LI>Fixed signature in <TT>G4VPrimitiveScorer</TT> for <TT>Set/GetUnit()</TT>
0526 methods.</LI>
0527 </UL>
0528
0529 <A NAME="emstd-notes">
0530 <H3><I>Electromagnetic Processes</I></H3></A>
0531 <UL>
0532 <LI><B>Adjoint</B>
0533 <UL>
0534 <LI><TT>G4AdjointBremsstrahlungModel</TT>: use <TT>G4EmModelManager</TT> for
0535 proper initialization. <TT>G4eBremsstrahlungModel</TT> is used as forward
0536 model. Fixing cases of floating point exceptions.</LI>
0537 <LI><TT>G4AdjointhIonisation</TT>: removed negative term in the expression
0538 of the adjoint cross-section (<TT>AdjointCrossSection()</TT> method) and
0539 adapted method <TT>RapidSampleSecondaries()</TT>.</LI>
0540 <LI><TT>G4VEmAdjointModel</TT>: added a check on null cross section to
0541 avoid FPE.</LI>
0542 </UL></LI>
0543 <LI><B>High Energy</B>
0544 <UL>
0545 <LI>New model <TT>G4ICRU73NoDeltaModel</TT>
0546 derived from <TT>G4ICRU73QOModel</TT>.</LI>
0547 <LI>Added new <TT>G4mplIonisationWithDeltaModel</TT> for ionization of monopoles,
0548 to be used in the <TT>G4mplIonisation</TT> process class as a default model;
0549 this enables delta-ray production, which is needed by ATLAS and CMS.</LI>
0550 <LI>Fixed defects reported by Coverity tool, mainly related to initialization
0551 of static data.</LI>
0552 </UL></LI>
0553 <LI><B>Low Energy</B>
0554 <UL>
0555 <LI>Added four new models (gamma ray models Compton, GammaConversion,
0556 PhotoElectric, Rayleigh), upgrades of <TT>G4Penelope</TT> ionisation
0557 and Bremsstrahlung for <TT>e+/e-</TT> to version 2008.</LI>
0558 <LI>Added <TT>MinEnergyCut()</TT> method to <TT>G4PenelopeIonisationModel</TT>.
0559 Small (minor) changes to other Penelope models (mainly clean-up).
0560 Removed useless call in <TT>G4PenelopeIonisationModel</TT> which
0561 triggered fake warning messages.</LI>
0562 <LI>Added class <TT>G4PenelopeCrossSection</TT> to store/handle cross
0563 sections (and higher momenta, like stopping powers) for Penelope
0564 models.
0565 <LI>New <TT>G4PenelopeOscillator*</TT> classes to manage
0566 multi-element atomic oscillators used in Penelope Compton and
0567 Ionisation models. Compliant with Penelope-2008.</LI>
0568 <LI>Added dummy method <TT>ComputeCrossSectionPerAtom()</TT> in
0569 <TT>G4PenelopeRayleighModel</TT>, never inkoved in tracking and
0570 issuing a warning if users access it via <TT>G4EmCalculator</TT>.</LI>
0571 <LI>Updated public interface of <TT>G4LivermorePhotoElectricModel</TT>.
0572 Removed possibility to use custom cuts for fluorescence/Auger.
0573 Main cuts from <TT>G4ProductionCutsTable</TT> are always used, for
0574 consistency.</LI>
0575 <LI>Updated <TT>G4LivermoreIonisationModel</TT> to produce fluorescence
0576 AlongStep only if above the production cuts. Stricter check for energy
0577 conservation.</LI>
0578 <LI>Bug fix in <TT>G4LivermoreIonisation</TT> and in
0579 <TT>G4LivermorePolarizedPhotoElectricModel</TT>.</LI>
0580 <LI>New models <TT>G4BoldyshevTripletModel, G4LivermoreGammaConversionModelRC</TT>,
0581 and <TT>G4LivermoreNuclearGammaConversionModel</TT>.</LI>
0582 <LI><TT>G4LivermorePolarizedGammaConversionModel</TT>: fixed element
0583 selection and initialisation.</LI>
0584 <LI>Clean-up in Penelope models; explicitely set Auger flag to false in
0585 constructor. Addressed Coverity reports for Penelope/Livermore
0586 processes.</LI>
0587 <LI>Geant4-DNA processes and models:
0588 <UL>
0589 <LI>New excitation model for electrons in <TT>G4DNABornExcitationModel</TT>
0590 and for H.</LI>
0591 <LI>Added new G4DNA processes and e- models for vibrational and attachment
0592 as in: Z. Francis et al., Appl. Radiat. Isot. 69 (2011) 220-226.</LI>
0593 <LI>Extended low energy coverage of G4DNA electron models.</LI>
0594 <LI>New preliminary Geant4-DNA ionisation class for ions to be used
0595 with new data set, G4LEDATA-6.19.</LI>
0596 <LI>Corrected <TT>G4DNABornIonisationModel</TT> for maximum kinetic
0597 energy transfer.</LI>
0598 <LI>Modified method declaration in <TT>G4DNABornExcitation</TT>.
0599 Modified electron correction in <TT>G4DNAMillerGreenExcitation</TT>.</LI>
0600 <LI>Extended search range for maximum of DCS in
0601 <TT>G4DNARuddIonisationModel</TT>.</LI>
0602 <LI>Changed default parameters in <TT>G4DNAEmfietzoglouExcitationModel</TT>.
0603 Modified initialisation of e- Emfietzoglou excitation model to fix
0604 memory leaks.</LI>
0605 <LI>Changed computation of scattering angle in
0606 <TT>G4DNAChampionElasticModel</TT>.</LI>
0607 <LI>Replaced hard coded masses in <TT>G4DNADingfelderCharge*</TT>
0608 classes.</LI>
0609 <LI>Updated & extended Rudd and Miller & Green models. Adapted all high
0610 energy limits of G4DNA electron models.</LI>
0611 <LI>Changed low energy limit of G4DNA elastic scattering models for e-.
0612 Switched default excitation model for e- to Born.</LI>
0613 <LI>Set high energy limit of G4DNAScreenedRutherfordModel to 1 MeV
0614 and decreased low energy limit.</LI>
0615 <LI>Updated high energy limits of G4DNAExcitation and G4DNAIonisation.
0616 Added protection in xs file opening for G4DNA Sanche excitation.</LI>
0617 <LI>Restricted momentum conservation to electrons in G4DNA ionisation.</LI>
0618 <LI>Added new control of low energy limit of G4DNA e- models.
0619 Energy ranges adapted accordingly.</LI>
0620 </UL></LI>
0621 <LI>Fixed initialisation order in some models' constructor to fix Valgrind
0622 run-time errors reports.
0623 <LI>Fixed bugs in G4AtomicDeexcitation and G4AugerTransition.
0624 <LI>New PIXE developments:
0625 <UL>
0626 <LI><TT>G4ecpssrKCrossSection</TT> and <TT>G4ecpssrLiCrossSection</TT>
0627 classes: these classes substitute the <TT>G4ecpssrCrossSection</TT>
0628 class, fixing existing bugs and improving the goodness of the
0629 results especially at higher energies.</LI>
0630 <LI><TT>G4empCrossSection</TT> and <TT>G4teoCrossSection</TT> classes:
0631 classes deriving from <TT>G4VhShellCrossSection</TT> and providing
0632 the interface to empirical ionization cross sections (Orlic for L
0633 shells and Paul for K).</LI>
0634 <LI><TT>G4hShellCrossSection, G4hShellCrossSectionDoubleExp,
0635 G4hShellCrossSectionDoubleExpData, G4hShellCrossSectionExp,
0636 G4hShellCrossSectionExpData</TT> classes are now discontinued.</LI>
0637 <LI><TT>G4hLowEnergyIonisation</TT> has been updated to follow the new
0638 design and let the user chose which model to use for the calculation
0639 of shell ionization cross section through the method
0640 <TT>SelectShellIonisationCS()</TT>.
0641 Dependencies on old methods for cross section calculation have
0642 been removed.</LI>
0643 <LI>Changed default parametersa and fixed units management.
0644 <LI>Bugs fixes in <TT>G4OrlicLiCrossSection</TT> and
0645 <TT>G4PaulKCrossSection</TT>.</LI>
0646 </UL></LI>
0647 <LI>Fix in G4AugerTransition to cure crash on Windows.</LI>
0648 <LI>Added missing virtual destructors where necessary.</LI>
0649 <LI>Corrected return value case in method GetPhotoElectronDirection()
0650 in G4PhotoElectricAngularGeneratorSauterGavrila. Addressing problem
0651 report <A HREF="http://bugzilla-geant4.kek.jp/show_bug.cgi?id=1120">#1120</A>.</LI>
0652 <LI>New class <TT>G4UAtomicDeexcitation</TT> class, derived from
0653 <TT>G4VAtomicDeexcitation</TT> from <TT>utils</TT> module. It will
0654 replace <TT>G4AtomicDeexcitation</TT> class.
0655 Updated <TT>G4hLowEnergyIonisation</TT> to it.</LI>
0656 <LI>Optimised computation in <TT>G4GeneratorBS</TT> and fixed comments.
0657 Moved classes <TT>G4VBremAngularDistribution</TT> and
0658 <TT>G4ModifiedTsai</TT> moved to <TT>utils</TT> and <TT>standard</TT>
0659 modules respectively.</LI>
0660 <LI>Requires new data set G4EMLOW-6.19.</LI>
0661 </UL></LI>
0662 <LI><B>Muons</B>
0663 <UL>
0664 <LI><TT>G4MuPairProductionModel</TT>: added sampling recoil of a primary
0665 particle.</LI>
0666 <LI><TT>G4MuIonisation</TT>: use <TT>G4ICRU73QOModel</TT> for <TT>mu-</TT>
0667 for <TT>E< 0.2 MeV</TT> (<TT>G4BraggModel</TT> in past).</LI>
0668 <LI>Fixed defects reported by Coverity tool, mainly related to
0669 initialization of static data.</LI>
0670 </UL></LI>
0671 <LI><B>Polarisation</B>
0672 <UL>
0673 <LI>Fixed signature to <TT>G4VPolarizedCrossSection::TotalXSection()</TT>
0674 in source file.</LI>
0675 <LI>Fixed issues reported by the Coverity tool.</LI>
0676 </UL></LI>
0677 <LI><B>Precise Impact Ionisation</B>
0678 <UL>
0679 <LI>New module for precise impact ionisation, as described in:
0680 M.G.Pia et al., PIXE Simulation With Geant4, IEEE-TNS, vol. 56, no. 6, pp. 3614-3649, 2009.
0681 Requires new data set G4PIIDATA-1.2.</LI>
0682 </UL></LI>
0683 <LI><B>Standard</B>
0684 <UL>
0685 <LI>Single and multiple scattering:
0686 <UL>
0687 <LI><TT>G4GoudsmitSaundersonMscModel</TT>: fixed problems of small
0688 angle theta distributions; improved numerical stability of
0689 computations for small angles by direct cross-section calculation;
0690 the inverse angular sampling
0691 is performed without large angle rejection method.</LI>
0692 <LI><TT>G4GoudsmitSaundersonTable</TT>: improved numerical stability by minimum
0693 of used arrays in computation
0694 within the dichotomy finding method; optimized code to
0695 improve speed by addition extra class members.</LI>
0696 <LI><TT>G4eMultipleScattering, G4hMultipleScattering</TT>: improved
0697 printout at initialisation.</LI>
0698 <LI><TT>G4UrbanMscModel93</TT>: added randomization of step limit for
0699 the first step in any volume for option <TT>UseDistanceToBoundary</TT>.</LI>
0700 <LI><TT>G4WentzelVIModel</TT>: added numerical protections; added
0701 <TT>DefineMaterial()</TT> call to the <TT>G4WentzelOKandVIxSection</TT> class
0702 to keep conssitency of two classes in run time;
0703 optimized method of step limitation;
0704 added usage of geometry factor and the option
0705 <TT>UseDistanceToBoundary</TT>.</LI>
0706 <LI><TT>G4WentzelOKandVIxSection</TT>: new class to compute cross
0707 sections and sample scattering angle in <TT>G4WentzelVIModel,
0708 G4eCoulombScatteringModel, G4CoulombScatteringModel</TT> classes;
0709 added momentum
0710 dependent limit of scattering angle between single and multiple scattering
0711 which allows to use coherently <TT>G4WentzelVIModel</TT>
0712 with optical model of hadron scattering.</LI>
0713 <LI><TT>G4eCoulombScatteringModel</TT>: fixed computation of nuclear
0714 recoil.</LI>
0715 <LI><TT>G4IonCoulombCrossSection, G4IonCoulombScatteringModel</TT>: new
0716 model of single scattering and NIEL for ions.</LI>
0717 <LI><TT>G4UrbanMscModel90, G4UrbanMscModel92, G4UrbanMscModel93</TT>:
0718 added warning messages.</LI>
0719 <LI>Removed obsolete classes: <TT>G4UrbanMscModel</TT>,
0720 <TT>G4UrbanMscModel2</TT>, <TT>G4UrbanMscModel71</TT>,
0721 <TT>G4MultipleScattering</TT>.</LI>
0722 </UL></LI>
0723 <LI>Bremsstrahlung models:
0724 <UL>
0725 <LI><TT>G4eBremsstrahlungModel</TT>: fix in <TT>SelectRandomAtom()</TT>
0726 method. Addressing problem report
0727 <A HREF="http://bugzilla-geant4.kek.jp/show_bug.cgi?id=1115">#1115</A>.</LI>
0728 <LI><TT>G4eBremsstrahlungModel</TT>: reduced <TT>minThreshold</TT>
0729 to <TT>0.1 keV</TT>.</LI>
0730 <LI>Added <TT>G4ModifiedTsai</TT> class, moved from 'lowenergy' module.</LI>
0731 <LI><TT>G4PairProductionRelModel, G4eBremsstrahlungRelModel</TT>: use
0732 general interface to sample polar angular distribution with
0733 the <TT>G4ModifiedTsai</TT> generator as a default.</LI>
0734 </UL></LI>
0735 <LI><TT>G4UniversalFluctuation</TT>: revision of width correction
0736 providing better results for thin targets and a good tail;
0737 fixed anomaly at the tail of distribution for thin targets.</LI>
0738 <LI>New class <TT>G4UniversalFluctuation93</TT> is a backcup of original version
0739 as in release 9.3 for <TT>G4UniversalFluctuation</TT>.</LI>
0740 <LI><TT>G4ASTARStopping, G4PSTARTStopping</TT>: replaced C-arrays with
0741 <TT>G4PhysicsVector</TT> with spline interpolation; reviewed names
0742 of materials (<TT>G4_PHOTO_EMULSION, G4_He, G4_NYLON-6-6</TT>).</LI>
0743 <LI><TT>G4WaterStopping</TT>: fixed bug in index of data for Fe ion;
0744 cleanup in <TT>GetElectronicDEDX()</TT> method.</LI>
0745 <LI><TT>G4BraggIonGasModel, G4BetheBlochIonGasModel</TT>: new ionisation
0746 models for low density media; charge of projectile ion is not changed
0747 by these models during tracking in contrary with the default models.</LI>
0748 <LI><TT>G4BraggModel</TT>: extended validity range above <TT>2 MeV</TT>
0749 using ICRU'49 parameterisation for comparison purposes.</LI>
0750 <LI>New <TT>G4ICRU73QOModel</TT> for low-energy negatively charged
0751 particles; it is applicable from <TT>5 keV</TT> to <TT>15 MeV</TT> for anti-proton.</LI>
0752 <LI><TT>G4hIonisation</TT>: use new <TT>G4ICRU73QOModel</TT> for negatively
0753 charged particles instead of <TT>G4BraggModel</TT>, which now used to be
0754 applied for positive-charged particles only; this modification
0755 improves simulation of Barkas effect at low energies (before the effect
0756 was simulated precisely in <TT>G4BetheBlochModel</TT> which
0757 is used above <TT>2 MeV</TT> for protons/anti-protons);
0758 the high energy limit for the new model is the same as for
0759 <TT>G4BraggModel</TT> (<TT>2 MeV</TT> for protons/anti-protons).</LI>
0760 <LI><TT>G4PAIModel, G4PAIySection</TT>: fixed a bug in <TT>G4_Ar</TT>.</LI>
0761 <LI><TT>G4ionIonisation, G4alphaIonisation</TT>: removed obsolete nuclear
0762 stopping flag and <TT>Get/Set</TT> methods (nuclear stopping is
0763 simulated by the dedicated <TT>G4NuclearStopping</TT> process).</LI>
0764 <LI><TT>G4BetheHeitlerModel, G4PairProductionRelModel</TT>: removed unused
0765 internal table of cross section.</LI>
0766 <LI><TT>G4PEEffectFluoModel, G4KleinNishinaModel</TT>: new models providing
0767 sampling of atomic relaxations.</LI>
0768 <LI>Removed obsolete classes: <TT>G4ComptonScattering52</TT>,
0769 <TT>G4PolarizedComptonScattering</TT>.</LI>
0770 <LI>Fixed defects reported by Coverity tool, mainly related to
0771 initialization of static data.</LI>
0772 </UL></LI>
0773 <LI><B>Utils</B>
0774 <UL>
0775 <LI><TT>G4VMscModel, G4VMultipleScattering</TT>: set <TT>skin=1.0</TT> as
0776 a default; added more detailed printout for kaon+.</LI>
0777 <LI><TT>G4VMscModel</TT>: added protection in computation of the displacement
0778 to limit it inside current volume - addressing problem report
0779 <A HREF="http://bugzilla-geant4.kek.jp/show_bug.cgi?id=1128">#1128</A>.
0780 <LI><TT>G4LossTableManager</TT>: added new method <TT>GetNumberOfBinsPerDecade()</TT>,
0781 which is used in <TT>G4VEmModel</TT> for initialisation of
0782 <TT>G4EmElementSelector</TT> - addressing problem report
0783 <A HREF="http://bugzilla-geant4.kek.jp/show_bug.cgi?id=1115">#1115</A>;
0784 added methods <TT>PreparePhsyicsTables(), BuildPhysicsTables()</TT>,
0785 fixing initialisation of models via <TT>G4EmConfigurator</TT>.</LI>
0786 <LI><TT>G4EmProcessOptions</TT>: removed extra initialisation code, already existing
0787 in <TT>G4LossTableManager</TT>.</LI>
0788 <LI><TT>G4VEnergyLossProcess, G4VEmProcess, G4VMultipleScattering</TT>: added
0789 calls to new <TT>G4LossTableManager</TT> methods <TT>PreparePhsyicsTables()</TT>
0790 and <TT>BuildPhysicsTables()</TT>.</LI>
0791 <LI>Added method <TT>GetCurrentElement()</TT> in <TT>G4VEmProcess,
0792 G4VEnergyLossProcess</TT> and <TT>G4VEmModel</TT> classes.</LI>
0793 <LI><TT>G4VEmProcess</TT>: cleanup printout at initialisation for
0794 scattering process.</LI>
0795 <LI><TT>G4VEmModel</TT>: added method <TT>ChargeSquareRatio()</TT> to
0796 access current charge of an ion; use this method in
0797 <TT>G4VEnergyLossProcess</TT>.</LI>
0798 <LI><TT>G4VEnergyLossProcess</TT>: call <TT>CorrectionsAlongStep()</TT> only
0799 for ions (minor CPU saving); use copy constructors to reduce number of calls to
0800 <TT>exp()</TT> for building of the cross section
0801 table; minor optimisation in <TT>PostStepDoIt()</TT> to reduce
0802 number of calls to <TT>log()</TT>.</LI>
0803 <LI><TT>G4VEnergyLossProcess</TT>: fix addressing problem report
0804 <A HREF="http://bugzilla-geant4.kek.jp/show_bug.cgi?id=1141">#1141</A>.</LI>
0805 <LI><TT>G4VEmProcess, G4VEnergyLossProcess, G4VMultipleScattering,
0806 G4VEmModel, G4EmMultiModel</TT>: replaced obsolete method
0807 <TT>GetDefinition()</TT> of <TT>G4DynamicParticle</TT> with
0808 <TT>GetParticleDefinition()</TT>.</LI>
0809 <LI><TT>G4EmCalculator</TT>: fix in <TT>GetCrossSection()</TT> method.</LI>
0810 <LI><TT>G4EmElementSelector</TT>: use spline flag to construct vectors
0811 probabilities.</LI>
0812 <LI><TT>G4EmModelManager</TT>: do not use min energy cut defined by models, so
0813 production threshold is defined only by range to energy conversion and
0814 is limited only by low limit of energy threshold defined in 'cut'
0815 category.</LI>
0816 <LI><TT>G4EmConfigurator</TT>: fix for case of more than one model added per a
0817 process.</LI>
0818 <LI><TT>G4EmCorrections</TT>: moved <TT>G4AtomicShell</TT> header into
0819 source; fixed computation of shell corrections
0820 according to prescriptions of original papers; added Bichsel
0821 approximation for Barkas corrections for the large <TT>Z > 47</TT>,
0822 and use <TT>G4PhysicsVector</TT> instead of C-arrays; these
0823 modifications improving energy loss computations for protons at the energies
0824 below <TT>10 MeV</TT>, which improving energy loss of heavy negatively
0825 charged objects (ATLAS problem).</LI>
0826 <LI><TT>G4ElectronIonPair</TT>: added method SampleNumberOfIonsAlongStep().
0827 <LI><TT>G4VEmAngularDistribution</TT>: new general interface for angular distribution.
0828 <LI>Added class <TT>G4VBremAngularDistribution</TT>, moved from 'lowenergy'
0829 module.</LI>
0830 <LI>Added <TT>G4VAtomDeexcitation</TT>: new general interface to atomic deexcitation module.</LI>
0831 <LI>Fixed defects reported by Coverity tool.</LI>
0832 </UL></LI>
0833 <LI><B>Xrays</B>
0834 <UL>
0835 <LI>Included scintillation rise time to <TT>G4Scintillation</TT>.</LI>
0836 <LI><TT>G4Scintillation</TT>: allow for the light yield to be a function
0837 of particle type and deposit energy in case of non-linear light emission
0838 in scintillators. Courtesy of Zach Hartwig (Department of Nuclear
0839 Science and Engineeering, MIT). All particles are assigned the
0840 <TT>ELECTRONSCINTILLATIONYIELD</TT> unless the user specifies
0841 otherwise.</LI>
0842 <LI><TT>G4SynchrotronRadiationInMat, G4SynchrotronRadiation,
0843 G4TransitionRadiation</TT>: added missing process sub-types.</LI>
0844 </UL></LI>
0845 </UL>
0846
0847 <A NAME="event-notes">
0848 <H3><I>Event</I></H3></A>
0849 <UL>
0850 <LI>Added setting of touchable history of the origin to <TT>G4Track</TT>.</LI>
0851 <LI>Added protection against null pointer in <TT>G4TrackStack</TT> and <TT>G4SmartTrackStack</TT>.</LI>
0852 <LI>Fixed incorrect destination stack in <TT>G4StackManager</TT> for the case
0853 more than three track stacks are used.</LI>
0854 <LI>General Particle Source
0855 <UL>
0856 <LI>Added automatic energy biasing scheme. Users now can bias the energy
0857 distribution sampling to a given power-law distribution (index alpha)
0858 via the UI command: <TT>/gps/ene/biasAlpha alpha</TT>.
0859 Possibility to specify arbitrary energy distribution by supplying the
0860 data points in a 2-column (energy in <TT>MeV</TT> and flux) ASCII file,
0861 via the UI command: <TT>/gps/hist/file [your_file_name]</TT>.</LI>
0862 <LI>Bug fix in the Spline interpolation implementation.</LI>
0863 <LI>Bug fix in the logarithm interpolation implementation (alpha = -1 case).</LI>
0864 <LI>Added few accessors methods and implemented concrete destructor for
0865 <TT>G4SPSEneDistribution</TT>. Addressing problem report
0866 <A HREF="http://bugzilla-geant4.kek.jp/show_bug.cgi?id=1149">#1149</A>.</LI>
0867 </UL></LI>
0868 </UL>
0869
0870 <A NAME="gen-notes">
0871 <H3><I>General Processes</I></H3></A>
0872 <UL>
0873 <LI><B>Cuts</B>
0874 <UL>
0875 <LI>Fixed possible case of memory leak in <TT>G4PhysicsTableHelper</TT>.</LI>
0876 </UL></LI>
0877 <LI><B>Decay</B>
0878 <UL>
0879 <LI>Make use of 'const' pointer to <TT>G4ParticleDefinition</TT>.</LI>
0880 <LI>Fixed some minor Coverity reports.</LI>
0881 </UL></LI>
0882 <LI><B>management</B>
0883 <UL>
0884 <LI></LI>
0885 <LI>Fixed initialization of data in constructors for <TT>G4VProces,
0886 G4ProcessTable</TT> and <TT>G4ProcessAttribute</TT>.</LI>
0887 <LI>Fixed cases of uninitialised data reported by Coverity.</LI>
0888 </UL></LI>
0889 <LI><B>Optical</B>
0890 <UL>
0891 <LI>Modified <TT>G4OpBoundaryProcess</TT> to call <TT>ProposeLocalEnergyDeposit()</TT>
0892 every time a photon is in 'fStopAndKill' state because of <TT>NoRINDEX</TT>.
0893 This will trigger scoring when a photon encounters a volume not defined
0894 as an optical medium.</LI>
0895 <LI>Added Mie Scattering of Optical Photons; courtesy of Xin Qian (Kellogg
0896 Radiation Lab of Caltech), based on work from Vlasios Vasileiou
0897 (University of Maryland).</LI>
0898 <LI>Implemented Henyey-Greenstein phase functions.</LI>
0899 <LI>Fix for long-standing problem report #207.</LI>
0900 <LI>Fixed minor Coverity reports.</LI>
0901 </UL></LI>
0902 <LI><B>Scoring</B>
0903 <UL>
0904 <LI>Introduced new class <TT>G4EnergySplitter</TT>, a class to calculate
0905 the split of energy in voxels when <TT>G4RegularNavigation</TT> is used.
0906 It takes into account of the energy loss and multiple scattering
0907 corrections as the particles loses energies from voxel to voxel.</LI>
0908 <LI>Added new <TT>G4ScoreSplittingProcess</TT> to split the length and
0909 energy of a step in a regular structure into sub-steps, and to call
0910 the scorers for each sub-volume.</LI>
0911 </UL></LI>
0912 </UL>
0913
0914 <A NAME="geo-notes">
0915 <H3><I>Geometry</I></H3></A>
0916 <UL>
0917 <LI><B>Divisions</B>
0918 <UL>
0919 <LI>Introducing <TT>G4ReplicatedSlice</TT>, allowing for gaps in between
0920 divided daughter volumes.</LI>
0921 </UL></LI>
0922 <LI><B>Magnetic field</B>
0923 <UL>
0924 <LI>New class <TT>G4MonopoleEq</TT> for rhs of d(pc)/ds propagation in
0925 field in SI units.</LI>
0926 <LI>Revised constructor of <TT>G4MagErrorStepper</TT> to add number of
0927 State variables. Corrected <TT>MagErrorStepper</TT> to copy state
0928 variable to output.</LI>
0929 <LI>Enabled <TT>G4ConstRK4</TT> to copy remaining state variables.</LI>
0930 </UL></LI>
0931 <LI><B>Management</B>
0932 <UL>
0933 <LI>Added <TT>Clone()</TT> virtual method to <TT>G4VSolid</TT>, to return a
0934 pointer to a dynamically allocated copy of the solid. To be used by
0935 Geant4-MT. Implemented the method for all concrete solids.</LI>
0936 <LI>Added copy-ctr and assignment operator to <TT>G4ReflectedSolid</TT>,
0937 now also implementing the <TT>Clone()</TT> method.</LI>
0938 </UL></LI>
0939 <LI><B>Navigation</B>
0940 <UL>
0941 <LI>Added first implementation of G4VoxelSafety, a new class for the
0942 computation of exact safety.</LI>
0943 <LI>Added new class <TT>G4PartialPhantomParameterisation</TT> allowing for
0944 envelopes of different types other than box for regular geometries, so
0945 that relaxing the restriction for voxels to completely fill the
0946 envelope container. Adapted <TT>G4PhantomParameterisation,
0947 G4RegularNavigation</TT> and <TT>G4Navigator</TT> accordingly.</LI>
0948 <LI>Added new class <TT>G4NavigationLogger</TT> for "check-mode" verbosity.
0949 Reorganised verbosity formatting for voxel and normal navigation.</LI>
0950 <LI>Increased unit value to 100 times <TT>kCarTolerance</TT> to make push
0951 more effective in <TT>G4Navigator::ComputeStep()</TT>. Added possibility
0952 to switch off push notifications in <TT>G4Navigator</TT>; also added
0953 related UI command.
0954 Added inline method for creation of a touchable-history given a
0955 navigation history pointer as argument.</LI>
0956 </UL></LI>
0957 <LI><B>Solids (Boolean)</B>
0958 <UL>
0959 <LI>Introduced recursive algorithm in <TT>CreatePolyhedron()</TT> for Boolean
0960 operations: it uses <TT>HepPolyhedronProcessor</TT> from 'graphics_reps' module,
0961 using new technique in attempt to avoid numerical problems for the
0962 calculation of the polyhedron in <TT>BooleanProcessor</TT>. It allows to try
0963 all permutations, also for Booleans of Booleans.
0964 Helps in reducing the number of cases of "Error in Boolean processor"
0965 for visualization; still some stubborn cases are left.</LI>
0966 <LI>Simplified logic in <TT>G4UnionSolid::Inside()</TT> to exclude obvious
0967 conditional cases.</LI>
0968 <LI>Implemented copy-constructor and assignment operator for concrete
0969 solids classes to facilitate conversion to Geant4-MT.</LI>
0970 </UL></LI>
0971 <LI><B>Solids (BREPS)</B>
0972 <UL>
0973 <LI>Implemented copy-constructor and assignment operator for solids
0974 classes to facilitate conversion to Geant4-MT.</LI>
0975 <LI>Fixed more cases of null pointer forward in <TT>G4BREPSolid</TT>,
0976 <TT>G4BREPSolidPolyhedra</TT> and <TT>G4BezierSurface</TT> classes.</LI>
0977 </UL></LI>
0978 <LI><B>Solids (CSG)</B>
0979 <UL>
0980 <LI><TT>G4Box</TT>: first implementation of speed improvements and
0981 corrections from joint code review of <TT>G4Box</TT> class: introduced
0982 half-tolerance constants and better logic in some conditional statements.
0983 Some code cleanup.
0984 <LI><TT>G4Orb</TT>: modified <TT>DistanceToIn(p,v)</TT> to be more
0985 consistent with <TT>Inside(p)</TT>.</LI>
0986 <LI>Implemented copy-constructor and assignment operator for all solids
0987 to facilitate conversion to Geant4-MT.</LI>
0988 <LI>Added missing validity checks on radii to modifiers in <TT>G4Tubs</TT>.</LI>
0989 <LI>Fixed remaining cases of cout precision restoring in <TT>G4Sphere</TT>.</LI>
0990 </UL></LI>
0991 <LI><B>Solids (Specific)</B>
0992 <UL>
0993 <LI>Introducing new <TT>G4GenericTrap</TT> shape, a new solid representing
0994 an arbitrary trapezoid with up to 8 vertices standing on two parallel
0995 planes perpendicular to the Z axis.</LI>
0996 <LI><TT>G4EllipticalCone</TT>: fixes in <TT>DistanceToIn(p,v)</TT> and
0997 <TT>DistanceToOut(p,v)</TT> for correct handling of point on the
0998 surface. Corrected formula for <TT>SurfaceNormal(p)</TT>.</LI>
0999 <LI>Implemented copy-constructor and assignment operator for all solids
1000 to facilitate conversion to Geant4-MT.</LI>
1001 <LI>Avoid possible case of derefencing null pointer in
1002 <TT>G4ReduciblePolygon</TT> <TT>RemoveDuplicateVertices()</TT> and
1003 <TT>RemoveRedundantVertices()</TT> methods.</LI>
1004 <LI>Fixed case of division by zero in <TT>G4TwistedTubs</TT>.</LI>
1005 <LI>More fixes on Coverity reports for classes <TT>G4TessellatedSolid</TT>
1006 and <TT>G4ReduciblePolygon</TT>.</LI>
1007 </UL></LI>
1008 <LI><B>Volumes</B>
1009 <UL>
1010 <LI>Make use of specialized allocator for handling internal vector in
1011 <TT>G4NavigatorHistory</TT>, globally controlling the memory pool,
1012 to optimise memory management and reduce fragmentation.
1013 Measured ~2% average run-time speed-up.</LI>
1014 <LI><TT>G4GRSSolid, G4GRSVolume</TT>: safer initialisation in copy
1015 constructor.</LI>
1016 <LI><TT>G4PVPlacement, G4PVReplica</TT>: added fake initialisation for
1017 all members in specialized constructor for I/O persistency. Added fake
1018 return statements after exceptions.</LI>
1019 <LI><TT>G4NavigationHistory</TT>: restored original implementation for
1020 constructor.</LI>
1021 </UL></LI>
1022 </UL>
1023
1024 <A NAME="glob-notes">
1025 <H3><I>Global</I></H3></A>
1026 <UL>
1027 <LI>Introduced <TT>G4PhysicsVectorCache</TT>, placeholder for cache R/W data
1028 in use by <TT>G4PhysicsVector</TT> and derivates.
1029 Modified <TT>G4PhysicsVector</TT> and <TT>G4LPhysicsFreeVector</TT>
1030 accordingly.</LI>
1031 <LI>More safe numerical computation of A13() and logA() methods in G4Pow.
1032 Added methods logfactorial() and powN() to G4Pow class.</LI>
1033 <LI><TT>G4Allocator</TT>: implemented customizable pool size.</LI>
1034 <LI><TT>G4UnitsTable</TT>: added new category "Solid angle".</LI>
1035 <LI>Fixed restoring of cout/cerr formatting in <TT>G4DataVector,
1036 G4PhysicsVector</TT>.</LI>
1037 <LI>Added class <TT>G4ConvergenceTester</TT>, implementing a facility for
1038 estimating the quality of the simulation, by providing statistical
1039 information to assist in establishing valid confidence intervals for
1040 Monte Carlo results.</LI>
1041 <LI>Fixed potential case of memory leak in <TT>G4OrderedTable::Retrieve()</TT>.</LI>
1042 <LI>Fixed cases of tainted scalar in <TT>G4DataVector, G4OrderedTable,
1043 G4PhysicsTable</TT> and <TT>G4PhysicsVector</TT>.</LI>
1044 <LI>Modified FPE handler to get correct <TT>SIGINFO</TT> data for error messages.
1045 Added experimental code for MacOSX.</LI>
1046 <LI>Added dummy initialization of members in constructors where applicable.</LI>
1047 <LI>Changed date for release 9.4.</LI>
1048 </UL>
1049
1050 <A NAME="greps-notes">
1051 <H3><I>Graphical Representations</I></H3></A>
1052 <UL>
1053 <LI>Added support for new command <TT>/vis/scene/add/digits</TT>, analogous to
1054 the already-existing <TT>/vis/scene/add/hits</TT>: added methods
1055 <TT>Draw()</TT> and <TT>FilterDigi()</TT> for digits in
1056 <TT>G4VVisManager</TT>; added method <TT>AddCompound()</TT>
1057 in <TT>G4VGraphicsScene</TT>.</LI>
1058 <LI>Added method <TT>DispatchToModel(const G4VTrajectory&)</TT>, i.e., without
1059 <TT>i_mode</TT>, to <TT>G4VVisManager</TT> in order to distinguish usage
1060 and in preparation for <TT>i_mode</TT> migration.</LI>
1061 </UL>
1062
1063 <A NAME="had-notes">
1064 <H3><I>Hadronic Processes</I></H3></A>
1065 <UL>
1066 <LI>Implemented transition to adopt integer <TT>Z</TT> and <TT>A</TT>.</LI>
1067 <LI>Removed obsolete code for 'leading_particle' model.</LI>
1068 <LI><B>Cross sections</B>
1069 <UL>
1070 <LI><TT>G4NeutronElasticXS, G4NeutronInelasticXS, G4NeutronCaptureXS</TT>:
1071 added path to new data set through environment variable
1072 <TT>G4NEUTRONXSDATA</TT>; use vectors instead of C arrays; use <TT>G4HadronNucleonXsc</TT>
1073 class and PDG parameterisation for high energy cross sections of
1074 Hydrogen; code cleanup.</LI>
1075 <LI><TT>G4UPiNuclearCrossSection</TT>: fixed memory leak at destruction.</LI>
1076 <LI>Updated <TT>G4GlauberGribovCrossSection</TT> for anti-protons.</LI>
1077 <LI><TT>G4VComponentCrossSection</TT>: new interface for cross sections.</LI>
1078 <LI><TT>G4VCrossSectionDataSet</TT>: added name, min and max kinetic energy
1079 and related accessors.</LI>
1080 <LI><TT>G4IonProtonCrossSection</TT>: some code clenup; moved virtual
1081 methods to source, added constructor and destructor, make
1082 <TT>G4ProtonInelasticCrossSection</TT> class member. Fixed bug in
1083 kinematics.</LI>
1084 <LI>Added <TT>G4CrossSectionInelastic</TT> and <TT>G4CrossSectionElastic</TT>,
1085 wrappers for components.</LI>
1086 <LI>New class <TT>G4ComponentAntiNuclNuclearXS</TT> for the calculation of
1087 the total elastic and inelastic cross-sections of anti-nucleon and
1088 anti-nucleus interactions with nuclei based on Glauber approach.</LI>
1089 <LI>New class <TT>G4CrossSectionPairGG</TT> to extend a given cross-section
1090 with a scaled <TT>G4GlauberGribovCrossSection</TT>. Scaling result in
1091 smooth transition.</LI>
1092 <LI><TT>G4BGGPionElasticXS, G4BGGNucleonElasticXS, G4BGGNucleonInelasticXS</TT>:
1093 fixed low-energy (<TT>E < 20 MeV</TT>) models.</LI>
1094 <LI><TT>G4TripathiLightCrossSection</TT>: fix for threshold shape.</LI>
1095 <LI><TT>G4VCrossSectionDataSet</TT>: introduced new methods,
1096 <TT>IsIsoApplicable()</TT> and <TT>GetZandACrossSection()</TT>,
1097 replacing <TT>IsZAApplicable()</TT> and <TT>GetIsoZACrossSection()</TT>
1098 now obsoleted. Modified code to use the new API.</LI>
1099 <LI>Fix for uninitialized data in cross-sections constructors.</LI>
1100 <LI>Initialize all elements of array <TT>Y[nE]</TT> to zero in
1101 <TT>G4ElectroNuclearCrossSection::GetEquivalentPhotonEnergy()</TT>.</LI>
1102 <LI><TT>G4VComponentCrossSection</TT>: use <TT>G4ParticleDefinition</TT>
1103 and kinetic energy instead of <TT>G4DynamicParticle</TT>.</LI>
1104 <LI><TT>G4EMDissociationCrossSection</TT>: is now applicable for Hydrogen
1105 but cross-section for Hydrogen is zero</LI>
1106 </UL></LI>
1107 <LI><B>Management</B>
1108 <UL>
1109 <LI><TT>G4HadronicProcess</TT>: added methods
1110 <TT>CheckEnergyMomentumConservation()</TT>,
1111 <TT>SetEpReportLevel()</TT>, <TT>SetEnergyMomentumCheckLevels()</TT> and
1112 <TT>GetEnergyMomentumCheckLevels()</TT>, which implement energy/momentum
1113 checking. Some code cleanup.</LI>
1114 <LI>New <TT>G4HadronicEPTestMessenger</TT> class to provide energy/momentum
1115 test commands available in UI.</LI>
1116 <LI><TT>G4HadronicProcess</TT>: use new const <TT>GetParticleDefinition()</TT>
1117 method of <TT>G4DynamicParticle</TT>. Added protection against negative
1118 cross section; some cleanup. Check cross-section value before calling
1119 <TT>ApplyYourself()</TT> in <TT>PostStepDoIt()</TT>. If less than or
1120 equal to zero, return track unchanged.</LI>
1121 <LI>Fixed data initialisation in <TT>G4EnergyRangeManager</TT>.</LI>
1122 <LI><TT>G4HadronicInteraction</TT>: added two methods,
1123 <TT>GetEnergyMomentumCheckLevels()</TT>
1124 and <TT>SetEnergyMomentumCheckLevels()</TT> in order to implement
1125 checking of energy/momentum conservation.</LI>
1126 <LI><TT>G4VPreCompoundModel</TT>: make de-excited <TT>G4Fragment</TT> non-const.</LI>
1127 <LI><TT>G4VIntraNuclearTransportModel</TT>: moved constructor and destructor
1128 to source.</LI>
1129 <LI>Fixed initialisation of data in <TT>G4VNuclearDensity</TT> constructor.</LI>
1130 </UL></LI>
1131 <LI><B>Abrasion</B>
1132 <UL>
1133 <LI>Removed redudant headers inclusion in <TT>G4WilsonAbrasionModel</TT>.
1134 Fixed initialization in constructor.</LI>
1135 <LI>Fixed memory leak in method <TT>GetExcitationEnergyOfTarget()</TT> for
1136 <TT>G4NuclearAbrasionGeometry</TT>.</LI>
1137 </UL></LI>
1138 <LI><B>Binary Cascade</B>
1139 <UL>
1140 <LI><TT>G4GeneratorPrecompoundInterface</TT>: define default deexcitation
1141 with <TT>G4PreCompoundModel</TT> in the constructor of the class.
1142 Minor cleanup as a part of PreCompound model cleanup:
1143 added pointers to proton and neutron.</LI>
1144 <LI>Lowered <TT>CaptureThreshold</TT> in <TT>G4GeneratorPrecompoundInterface</TT>
1145 from 80 to 10 <TT>MeV</TT>.</LI>
1146 <LI>Fixed memory leak for products in <TT>Propagate()</TT>.</LI>
1147 </UL></LI>
1148 <LI><B>Bertini Cascade</B>
1149 <UL>
1150 <LI>General improvement of code design. Several collider classes re-designed
1151 so that they can be re-used.</LI>
1152 <LI>Replaced all uses of <TT>bindingEnergy()</TT> (local Bertini method)
1153 with the standard <TT>G4NucleiProperties::GetBindingEnergy(A,Z)</TT>.</LI>
1154 <LI><TT>G4Diproton, G4Dineutron, G4UnboundPN</TT>: new particle
1155 subclasses, implementing the Bertini-specific dibaryon states.</LI>
1156 <LI><TT>G4ElementaryParticleCollider</TT>: replaced original (incorrect)
1157 <TT>pp, pn, nn</TT> 2-body to 2-body scattering angular distributions
1158 with a new parameterization of elastic scattering data using the sum of
1159 two exponentials.</LI>
1160 <LI>Improved angular distributions for 2-body final states of pi-nucleon,
1161 nucleon-nucleon, kaon-nucleon and hyperon-nucleon scattering.</LI>
1162 <LI>Replaced <TT>G4CascadeMomentum</TT> internal class with
1163 <TT>G4LorentzVector</TT>.</LI>
1164 <LI>Added energy/momentum checks to remove large energy non-conservation
1165 events.</LI>
1166 <LI>Improved memory management: removed allocation of strings in various
1167 constuctors; replaced several cases of return-by-value with const or
1168 non-const reference, or by use of buffers. CPU speed improvements from
1169 the removal of unnecessary class instantiations.</LI>
1170 <LI>Replace std::vectors with fixed-length arrays in places where speed is
1171 affected. Use G4cerr for error reporting. Added more verbosity.</LI>
1172 <LI>Improved, but not completely fixed, energy conservation in nuclear
1173 breakup. Introduced 4-momentum conservation at each elementary
1174 interaction and at the end of most sub-model stages. Some violation
1175 still remains for the case of break-up of light nuclei.</LI>
1176 <LI>Bug fix of energy non-conservation in N-body phase space generator.</LI>
1177 <LI>Introduced temporary particle types for nuclear fragments far from
1178 stability. These later disappear after the fragments are broken up.</LI>
1179 <LI>Added 4-momentum checking after each sub-model.</LI>
1180 <LI>Improved handling of nuclear excitation energy, now part of nuclear
1181 mass.</LI>
1182 <LI>Recover secondaries from elementary hadron-nucleon interactions which
1183 were deleted in original Bertini model.</LI>
1184 <LI>A bug resulting in factor of 2 reduction of double differential
1185 cross-section in validation at several <TT>GeV</TT>, is now fixed.</LI>
1186 <LI>New interface to <TT>G4Precompound</TT> model added and tested.</LI>
1187 <LI>Fixed bug leading to very low hyperon energies and high CPU usage.</LI>
1188 <LI>Removed several unused classes and did additional code clean-up.</LI>
1189 <LI>Major reorganization of <TT>G4NucleiModel::generateModel()</TT> code.
1190 Added scaling factors ("units") for nuclear radii and cross-sections,
1191 in order to adapt calculations to the literature.</LI>
1192 <LI><TT>G4NucleiModel</TT>: put messages related to negative-path-length
1193 and zero-interaction-partners behind verbosity flag.</LI>
1194 <LI>Fixed defects reported from Coverity tool.</LI>
1195 </UL></LI>
1196 <LI><B>Chiral Invariant Phase Space (CHIPS)</B>
1197 <UL>
1198 <LI>Updated proton elastic and CHIPS parameters.</LI>
1199 <LI>Implemented anti-baryon elastic interactions.</LI>
1200 <LI>Added pion elastic and fixed a bug in CHIPS fragmentation.</LI>
1201 <LI>Implemented isotope-wise CHIPS elastic for neutrons.</LI>
1202 <LI>Fix in <TT>G4QElasticCrossSection</TT> in parameter order for nH. </LI>
1203 <LI>Bug fix in <TT>G4QNeutronNuclearCrossSection</TT> for Ba isotopes.</LI>
1204 <LI>Bug fix for K0 in <TT>G4QKaonMinusElasticCrossSection::GetExchangeT()</TT>.</LI>
1205 <LI>Fix to use of <TT>Z+N</TT> instead of <TT>N</TT> for <TT>A</TT>.</LI>
1206 <LI>Corrected Titanium and Zirconium isotopes in <TT>G4QIsotope</TT>.</LI>
1207 <LI>Added decay of Chipolino in the <TT>G4QEnvironment</TT>, when <TT>A_env=0</TT>.</LI>
1208 <LI>Bug fix following <TT>G4NucleiProperties</TT> warning for <TT>A=0, Z=0</TT>.</LI>
1209 <LI>Bug fix in <TT>G4QPDGCode</TT> and <TT>G4QEnvironment</TT> for Omega and Sigma;
1210 when mass is small for Lambda andSigma+, use Xi0,p.</LI>
1211 <LI>Correction in <TT>G4QElastic</TT> for K0 elastic cross-sections.</LI>
1212 <LI>Corrected treatment of vacuum in fragmentation module.</LI>
1213 <LI>nn is decayed in <TT>G4QLowEnergy</TT>; Omega- is included in
1214 <TT>G4QElastic</TT>; N neutrons (<TT>A=N, Z=0</TT>) are decayed in
1215 <TT>G4QLowEnergy</TT>.</LI>
1216 <LI>Bug-fix in <TT>G4QLowEnergy</TT>: pions as secondaries.</LI>
1217 <LI>Bug-fix in K0 elastic & Ion-Ion Elastic.</LI>
1218 <LI>Bug fix in 'body' module following tests on HARP data.</LI>
1219 <LI><TT>G4QEnvironment</TT>: PDG=0 bug fix; photon and safety corrections.</LI>
1220 <LI>Simplified initialisation of pairs in classes <TT>G4QNeutronCaptureRatio,
1221 G4QNeutronElasticCrossSection, G4QNeutronNuclearCrossSection</TT> and
1222 <TT>G4QuasiFreeRatios</TT>.</LI>
1223 <LI>Added missing std:: to call to 'for_each' algorithm in <TT>G4QInelastic</TT>.</LI>
1224 <LI><TT>G4QContent</TT>: removed dead code in quark constructor; addressing problem
1225 report <A HREF="http://bugzilla-geant4.kek.jp/show_bug.cgi?id=1131">#1131</A>.
1226 Removed dead code also in method <TT>MakePartonPair()</TT>.</LI>
1227 <LI>Removed dead code in <TT>G4QNucleus</TT> and <TT>G4QEnvironment</TT>.</LI>
1228 <LI><TT>G4ElectroNuclearReaction</TT>: cross section classes are included
1229 by pointer and not by value; addresses old problem reported in HyperNews.</LI>
1230 </UL></LI>
1231 <LI><B>De-excitation</B>
1232 <UL>
1233 <LI><TT>G4ExcitationHandler</TT>: apply FermiBreakUp to fragments with
1234 <TT>A>1</TT> (before was <TT>A>4</TT>) in order to reduce number of
1235 fake gamma produced in deexcitation of light fragments; added parameter
1236 'minExcitation' equal to <TT>1 keV</TT>; added check on stability of
1237 primary; do evaporation if FermiBreakUp cannot deexcite a fragment;
1238 added <TT>SetParameters()</TT> method.</LI>
1239 <LI><TT>G4StatMFMacroTemperature</TT>: cleanup logic of solving equation for
1240 temperature to avoid exception; moved constructors and destructor to source.</LI>
1241 <LI><TT>G4FermiFragmentsPool</TT>: extended list of stable fragments to be coherent with the list
1242 of fragments in the GEM model; fix for fragment 111.</LI>
1243 <LI><TT>G4FermiConfiguration</TT>: parameter of Coulomb energy Kappa is
1244 changed from 1 to 6 according to recommendation of original author of
1245 the model A.Botvina.</LI>
1246 <LI><TT>G4FermiPhaseSpaceDecay</TT>: improved model of sampling of kinetic
1247 energy; cleanup of the code to use <TT>G4Pow</TT>.</LI>
1248 <LI><TT>G4UnstableFragmentBreakUp</TT>: new class to decay exotic fragment
1249 (like 2n or 2p).</LI>
1250 <LI><TT>G4Evaporation</TT>: rewritten <TT>BreakUp()</TT> method; added
1251 <TT>Initialise()</TT> method at construction, to setup all options and
1252 not at run time.
1253 Added <TT>InitialiseEvaporation()</TT> method to setup decay channels;
1254 changed order of decay channels: first photon evaporation, then fission,
1255 finally all other channels as before. Improved condition on how to
1256 stop deexcitation loop;
1257 added call to <TT>G4UnstableFragmentBreakUp</TT> if natural abundances
1258 of cold fragment is zero and <TT>Z < 20</TT>; optimized logic of
1259 stopping of evaporation loop; set as a default variant evaporation
1260 combining standard plus GEM probabilities.</LI>
1261 <LI><TT>G4Evaporation, G4EvaporationChannel, G4EvaporationProbability</TT>:
1262 improved computation of minimal and maximal evaporation energy.</LI>
1263 <LI><TT>G4EvaporationChannel</TT>: removed new and delete of probability
1264 objects at each to the class, use instead local
1265 <TT>G4EvaporationProbability</TT> of the channel.</LI>
1266 <LI><TT>G4GEMChannel</TT>: use the same formulas as in <TT>G4GEMProbability</TT>
1267 class.</LI>
1268 <LI><TT>G4GEMProbability</TT>: fixed numerical problem (division by zero), code
1269 cleanup.</LI>
1270 <LI><TT>G4VEvaporationChannel, G4PhotonEvaporation</TT>: added two new
1271 virtual methods <TT>EmittedFragment()</TT> and <TT>BreakUpFragment()</TT>.</LI>
1272 <LI><TT>G4DiscreteGammaTransition</TT>: make transition depended on Z and A (before
1273 was only Z) and added energy tolerance</LI>
1274 <LI><TT>G4VGammaDeexcitation</TT>: rewritten kinematics of 2-body decay;
1275 fix in kinematics to take into account the electron mass and the binding energy
1276 in the case of electron emission.</LI>
1277 <LI><TT>G4DiscreteGammaTransition, G4DiscreteGammaDeexcitation,
1278 G4ContinuumGammaDeexcitation</TT>: set energy tolerance <TT>1 keV</TT>;
1279 more accurate Lorentz computations; define destructors to be virtual.</LI>
1280 <LI><TT>G4DiscreteGammaTransition</TT>: removed unphysical corrections of
1281 gamma energy; fixed default particle as gamma; avoid extra subtracting binding
1282 energy in case of electron emission; use const-ref for <TT>G4NuclerLevel</TT>
1283 data member</LI>
1284 <LI><TT>G4ContinuumGammaTransition</TT>: use exponential law for sampling
1285 of decay time.</LI>
1286 <LI><TT>G4PhotonEvaporation</TT>: added correction of electron state after
1287 emission; fixed probability computation.</LI>
1288 <LI><TT>G4E1Probability</TT>: code cleanup; added numerical protection
1289 to avoid division by zero; fixed probability computation.</LI>
1290 <LI><TT>G4NuclearLevelManager</TT>: replaced stream input in <TT>Read()</TT>
1291 with char[] input and manual conversion to double; reduces 142 MB of
1292 memory churn and some CPU speedup.</LI>
1293 <LI><TT>G4NuclearLevelStore, G4NuclearLevelManager, G4NuclearLevel</TT>:
1294 eliminate passing and copying of vectors; fill NuclearLevel directly by
1295 Manager; modified <TT>G4ContinuumGammaTransition</TT> accordingly.</LI>
1296 <LI>Add README file explaining the photo-evaporation data files.</LI>
1297 <LI>Removed unused classes: <TT>G4DummyProbability, G4E1ProbabilityXXX,
1298 G4E1SingleProbabilityXXX</TT>, where <TT>XXX=001,01,1,10,100</TT>
1299 differing only by the scale factor for the probability;
1300 scale factor may be applied in the main class if needed.</LI>
1301 <LI><TT>G4NeutronRadCapture</TT>: use <TT>G4PhotonEvaporation</TT> instead
1302 of simplified one gamma emission method.</LI>
1303 <LI>Fixed problems reported by the Coveruty tool (mainly missing data
1304 initialisation); moved constructors and destructors to source;
1305 code cleanup.</LI>
1306 </UL></LI>
1307 <LI><B>Elastic scattering</B>
1308 <UL>
1309 <LI>Added new model <TT>G4NuclNuclDiffuseElastic</TT>, final state
1310 production model for nucleus-nucleus elastic scattering, where
1311 Coulomb amplitude is not considered as correction.</LI>
1312 <LI>Use <TT>G4Q(Proton/Neutron)ElasticCrossSection</TT> instead of
1313 <TT>G4QElasticCrossSection</TT>; fixed initialization problem for
1314 <TT>G4QNeutronElasticCrossSection</TT>.</LI>
1315 <LI><TT>G4UHadronElasticProcess</TT>: fixed CHIPS warning for Cu, due to
1316 wrong isotope selected; addressing problem report from ALICE.</LI>
1317 <LI>New class <TT>G4CHIPSElasticXS</TT> extracted from
1318 <TT>G4UHadronElasticProcess</TT>, following <TT>G4VCrossSectionDataSet</TT> interface.</LI>
1319 </UL></LI>
1320 <LI><B>High Energy Theoretical</B>
1321 <UL>
1322 <LI>In <TT>G4HEInelastic</TT> fixed case of array overrun; got rid of dead
1323 code and a memory leak in methods <TT>HighEnergyCascading(),
1324 MediumEnergyCascading()</TT> and <TT>QuasiElasticScattering()</TT>.</LI>
1325 <LI>Fixed uninitialized data and removed dead code where applicable.</LI>
1326 </UL></LI>
1327 <LI><B>Im_r_matrix</B>
1328 <UL>
1329 <LI>Removed empty source file for <TT>G4VScatterer</TT>.
1330 Synchronised developments to HEAD version.</LI>
1331 </UL></LI>
1332 <LI><B>INCL/ABLA</B>
1333 <UL>
1334 <LI>Nuclear deformation and shell effect data reader now constructs the
1335 corresponding data tables correctly.</LI>
1336 <LI>Added some internal logging facilities to INCL (disabled by default).</LI>
1337 <LI>Added missing virtual destructor to base classes where necessary.</LI>
1338 <LI>Refactored INCL input data structure to use a new class <TT>G4InclInput</TT>.</LI>
1339 <LI>Access to input data only through accessor methods.</LI>
1340 <LI>INCL now uses integer A and Z internally as well as in the interface.</LI>
1341 <LI>Fixed fragment vector and Fermi break-up related memory leaks in
1342 INCL/ABLA interfaces.</LI>
1343 <LI>Corrected initialisation of INCL internal data and added checks on
1344 array boundaries in datafile reader.</LI>
1345 <LI>Fixed insufficient array index safeguard in ABLA.</LI>
1346 <LI>Updated interfaces: INCL + built-in ABLA de-excitation and
1347 INCL + PreCompound model.</LI>
1348 </UL></LI>
1349 <LI><B>neutron_hp</B>
1350 <UL>
1351 <LI>Bug fix in <TT>MF=6, LAW=2</TT> case in <TT>G4NeutronHPDiscreteTwoBody</TT>;
1352 on kind contribution by E.Mendoza, D.Cano-Ott (CIEMAT).</LI>
1353 <LI>Fixed bug in <TT>G4NeutronHPCaptureFS</TT>; addressing problem report
1354 <A HREF="http://bugzilla-geant4.kek.jp/show_bug.cgi?id=1155">#1155</A>.
1355 <LI>Set lower limit for gamma energy in <TT>G4NeutronHPFinalState</TT>.</LI>
1356 <LI>Added special treatment for <TT>Be9(n,2n)Be8(2a)</TT> case in
1357 <TT>G4NeutronHPInelasticBaseFS</TT>; removed unnecessary warnings.</LI>
1358 <LI>Added safety for _nat_ data in <TT>G4NeutronHPInelasticCompFS</TT>.</LI>
1359 <LI>Changed warning message in <TT>G4NeutronHPPhotonDist</TT>.</LI>
1360 </UL></LI>
1361 <LI><B>Parton-String</B>
1362 <UL>
1363 <LI>Added missing virtual destructor to <TT>G4DiffractiveHHScatterer</TT>.</LI>
1364 <LI>Implemented new tuned parameters of nuclear destruction in FTF model;
1365 parameters were tuned using HARP-CDP data on p+Cu interactions.
1366 Still additional tuning required for heavy nuclei.</LI>
1367 <LI>Use integer interface of G4Nucleus in <TT>G4FTFModel</TT>.</LI>
1368 <LI>Tuned parameters to FTF for pA and PiA interactions; also tuned quark
1369 exchange and Reggeon cascade parameters.</LI>
1370 <LI>Improved low mass string fragmentation.</LI>
1371 <LI>Introduced an action in <TT>FragmentStrings()</TT>; string
1372 fragmentation is repeated to avoid energy-momentum violation.</LI>
1373 <LI>Introduced phase space restrictions at small mass string fragmentation.</LI>
1374 <LI>Moved inline methods in <TT>G4ExcitedStringDecay</TT> to source.</LI>
1375 <LI>Fixed warning messages in <TT>G4LundStringFragmentation</TT>.</LI>
1376 <LI>Remove unused class <TT>G4PartonStringAnnihilator</TT>.</LI>
1377 </UL></LI>
1378 <LI><B>Pre-equilibrium</B>
1379 <UL>
1380 <LI>Removed unused dummy classes <TT>G4VPreCompoundIon</TT> and
1381 <TT>G4VPreCompoundNucleon</TT>.</LI>
1382 <LI>General cleaup of all classes: use <TT>G4Pow</TT> class to speedup
1383 computations.</LI>
1384 <LI><TT>G4PreCompoundModel</TT>: Emission and Transition classes become
1385 members created at construction and no longer at run time;
1386 initialisation is performed at construction or when options are
1387 changed; <TT>G4Fragment</TT> is no longer const,
1388 it is modified during process of emission of particles.</LI>
1389 <LI><TT>G4PreCompoundEmission</TT>: removed <TT>SetUp()</TT> inline method
1390 and moved its functionality.</LI>
1391 <LI><TT>G4PreCompoundTransitions</TT>: fixed bug in the
1392 <TT>PerformTransition()</TT> method, to use number of particles
1393 instead of number of excitons.</LI>
1394 <LI><TT>G4PreCompoundModel</TT>: disabled upper limit on excitation
1395 energy.</LI>
1396 <LI><TT>G4PreCompoundTransitions</TT>: fixed bug in the <TT>PerformTransition()</TT>
1397 method, use number of particles instead of number of excitons.</LI>
1398 <LI>Fixed Coverity warnings for missing initialisation of data in constructors.</LI>
1399 </UL></LI>
1400 <LI><B>QMD Reaction</B>
1401 <UL>
1402 <LI>Enabled RQMD in <TT>G4QMDReaction</TT> and <TT>G4QMDMeanField</TT>.</LI>
1403 </UL></LI>
1404 <LI><B>Radioactive Decay</B>
1405 <UL>
1406 <LI>G4RadioactiveDecay: in <TT>LoadDecayTable()</TT> create a decay table
1407 for isomers not included in RDM database and assume they all under go
1408 IT decay. After <TT>DoDecay()</TT> check if there is any secondary
1409 produced; kill the track if not to prevent infinite loop.
1410 Insert a special treatment for <TT>K-40</TT> beta decay; applied
1411 <TT>SetICM()</TT>, <TT>SetARM()</TT> and <TT>SetHLThreshold()</TT>
1412 to a decay channel; addresses problem report
1413 <A HREF="http://bugzilla-geant4.kek.jp/show_bug.cgi?id=1068">#1068</A>.
1414 Make sure the proper time is positive.</LI>
1415 <LI><TT>G4NuclearDecayChannel</TT>: added initialisation to all three
1416 constructors.</LI>
1417 <LI><TT>G4RadioactiveDecay, G4NuclearDecayChannel</TT>: limit the shell
1418 index to <TT>< 7</TT>, as required by the ARM. Changed to use
1419 <TT>BreakUp()</TT> so to limit to one transition per step when ICM is
1420 applied; addresses problem report
1421 <A HREF="http://bugzilla-geant4.kek.jp/show_bug.cgi?id=1001">#1001</A>.</LI>
1422 <LI><TT>G4RadioactiveDecayMessenger</TT>: added the UI commands for
1423 <TT>SetICM(), SETARM()</TT> and <TT>SetHLThreshold()</TT>;
1424 removed restrictions to hlCMD.
1425 <TT>G4RadioactiveDecay</TT>: apply <TT>SetICM()</TT>, <TT>SetARM()</TT>
1426 and <TT>SetHLThreshold()</TT> in all decay modes.</LI>
1427 <LI>Completed implementation for generating the activity table in VR mode.</LI>
1428 <LI>Added class <TT>G4RadioactivityTable</TT> for tallying the accumulated
1429 radio-activities in VR mode; modified <TT>G4RadioactiveDecay</TT>
1430 accordingly, with changes needed to setup the radioactivity tables.</LI>
1431 <LI>Improved code formatting.</LI>
1432 </UL></LI>
1433 <LI><B>Re-Parameterized Gheisha</B>
1434 <UL>
1435 <LI>Fixed initialisation of data in <TT>G4RPGFragmentation</TT> constructor.</LI>
1436 </UL></LI>
1437 <LI><B>Stopping</B>
1438 <UL>
1439 <LI><TT>G4MuonMinusCaptureAtRest::DoMuCapture()</TT>: fixed unused branch
1440 in mass calculation</LI>
1441 <LI>Fixed initialisation of data in <TT>G4PiMinusStopMaterial</TT> and
1442 <TT>G4StopDummyDeexcitation</TT> constructors.</LI>
1443 </UL></LI>
1444 <LI><B>Utils</B>
1445 <UL>
1446 <LI><TT>G4Fragment</TT>: do not add any shift to excitation energy but use
1447 direct computation (this is needed to avoid infinite loop in gamma
1448 deexcitation); use <TT>G4NucleiProperties</TT> to access or compute
1449 ground state mass. Allow e- as a fragment.
1450 Improved printout of negative excitation energy.
1451 Minor speedup and some code cleanup.</LI>
1452 <LI>Fixed minor leak in <TT>G4KineticTrack</TT>.</LI>
1453 <LI><TT>G4DecayStrongResonances</TT>: cleanup of unused headers.</LI>
1454 </UL></LI>
1455 </UL>
1456
1457 <A NAME="interc-notes">
1458 <H3><I>Intercoms</I></H3></A>
1459 <UL>
1460 <LI>Added new commands to <TT>G4UIcommand</TT>:
1461 <TT>/control/if, /control/add, /control/subtract, /control/multiply</TT>
1462 and <TT>/control/divide</TT>.</LI>
1463 <LI>Implemented range check of UI commands for units.</LI>
1464 <LI><TT>G4UIManager</TT>: added field to get GUI Window session.</LI>
1465 </UL>
1466
1467 <A NAME="interf-notes">
1468 <H3><I>Interfaces</I></H3></A>
1469 <UL>
1470 <LI><TT>G4VBasicShell</TT>: implemented improvements for command completion.</LI>
1471 <LI><TT>G4UIQt</TT>: added tab widgets for visualization. Added new command in
1472 help tree for immediate update of the tree. Fixed warning in standard-output
1473 during viewer creation and fixed flush problem. Fixed recursive repaint
1474 problem. Fixed call to contructor <TT>QKeySequence()</TT> in
1475 <TT>AddButton()</TT> to allow for porting on gcc-4.5.0.
1476 Fixed problem with redraw of help tree.</LI>
1477 <LI><TT>G4UIExective</TT>: changed order for session type; GUI session is
1478 prioritized.</LI>
1479 </UL>
1480
1481 <A NAME="materials-notes">
1482 <H3><I>Materials</I></H3></A>
1483 <UL>
1484 <LI><TT>G4MaterialPropertyVector</TT>: removed allocation of temporary helper
1485 object and modified <TT>GetAdjacentBins()</TT> to allow for a value to
1486 match a bin exactly. Measured 21% CPU speed-up for optical processes.</LI>
1487 <LI><TT>G4OpticalSurface</TT>: changed <TT>GetAngularDistributionValue()</TT>,
1488 no longer dereferencing a pointer but returning the value at the array
1489 index.</LI>
1490 <LI><TT>G4NistMaterialBuilder</TT>: added G4_LUCITE and 6 new materials more.
1491 Added DNA biochemical materials. Added G4_CYTOSINE, G4_THYMINE, G4_URACIL.</LI>
1492 <LI><TT>G4NistManager</TT>: use <TT>G4Pow</TT> for fast computations.</LI>
1493 <LI><TT>G4NistMaterialBuilder, G4NistManager</TT>: added method
1494 <TT>GetMeanIonisationEnergy()</TT>.</LI>
1495 <LI><TT>G4ionisParamMat, G4DensityEffectData</TT>: added possibility to access
1496 density effect data in the case when pure material is not defined via NIST;
1497 atom number and state of such materials are checked.</LI>
1498 <LI><TT>G4DensityEffectData</TT>: fixed method <TT>GetIndex(Z, state)</TT> for
1499 Hydrogen and solid states, renamed it to <TT>GetElementIndex()</TT>.</LI>
1500 <LI><TT>G4IonisParamMat</TT>: added member and method <TT>GetInvA23()</TT>;
1501 use <TT>GetElementIndex()</TT>.</LI>
1502 <LI><TT>G4IonisParamElm</TT>: use mean excitation energy from NIST DB
1503 instead of data of the ICRU37 report;
1504 addressing a problem reported for mean energy deposition in compound
1505 materials.</LI>
1506 <LI><TT>G4AtomicShells</TT>: improved performance by adding indexing array.</LI>
1507 <LI><TT>G4SandiaTable</TT>: fixed bug in <TT>G4_Ar</TT> and in
1508 <TT>SandiaMixing()</TT>.</LI>
1509 <LI>Removed obsolete unused data classes <TT>G4IronStoppingICRU73</TT>,
1510 <TT>G4MaterialStoppingICRU73</TT>, <TT>G4SimpleMaterialStoppingICRU73</TT>,
1511 data are uploaded from <TT>G4LEDATA</TT> data set.</LI>
1512 <LI>Fixed defects reported by Coverity tool, mainly related to initialization
1513 of static data. Adopt G4 types wherever necessary. Some code formatting.</LI>
1514 </UL>
1515
1516 <A NAME="part-notes">
1517 <H3><I>Particles</I></H3></A>
1518 <UL>
1519 <LI>Updated mass/width of muons, taus, mesons, and baryons to PDG-2010.</LI>
1520 <LI>Added light anti_nuclei inside hadrons/ions sub-module.</LI>
1521 <LI>Added methods <TT>IsLightAntiIon()</TT> and <TT>GetLightAntiIon()</TT> to
1522 <TT>G4IonTable</TT>.</LI>
1523 <LI>Fix to <TT>G4IonTable::IsLightIon()</TT> method; do not classify neutron
1524 and genericIon as light ions.</LI>
1525 <LI>Modified <TT>G4ParticleDefiniton::Dump()</TT> to print AtomicNumber/Mass.</LI>
1526 <LI>ElectronOccupancy in <TT>G4DynamicParticle</TT> is now created on demand, i.e.
1527 it is not created at construction of <TT>G4DynamicParticle</TT> but when
1528 <TT>AddElectron()</TT> or <TT>RemoveElectron()</TT> are invoked.</LI>
1529 <LI>Allow creation of shortlived particles other than in 'PreInit' state.</LI>
1530 <LI>Added <TT>G4DynamicParticle::GetParticleDefinition()</TT> giving
1531 'const' pointer. Code clean up to use const pointer of
1532 <TT>G4ParticleDefinition</TT> where possible.</LI>
1533 <LI>Fixed signature for std::pair in <TT>G4IonTable</TT> source code for
1534 compliance to ISO/C++ Standard.</LI>
1535 <LI>Fixed problems that error messages appear in cout and not in cerr.</LI>
1536 <LI>Code cleanup in <TT>G4DynamicParticle</TT> constructors.</LI>
1537 <LI>Fixed cases of uninitialised data reported by Coverity.</LI>
1538 </UL>
1539
1540 <A NAME="pers-notes">
1541 <H3><I>Persistency</I></H3></A>
1542 <UL>
1543 <LI>ASCII
1544 <UL>
1545 <LI>Added missing static data initialisation to constructors where
1546 applicable.</LI>
1547 <LI>Fixed potential cases of dereferencing a NULL pointer in
1548 <TT>G4tgbMaterialMgr</TT>.</LI>
1549 <LI>Fixed cases of unreachable code in <TT>G4tbrVolumeMgr</TT>.</LI>
1550 <LI>Fixed leaks in <TT>G4tgrFileReader</TT>.</LI>
1551 <LI><TT>G4tgrUtils</TT>: fixed logic in <TT>WordIsUnit()</TT> and fixed
1552 restoring of cout precision in <TT>Dump3v()</TT>.</LI>
1553 <LI>Fixed some minor Coverity reports.</LI>
1554 </UL></LI>
1555 <LI>GDML
1556 <UL>
1557 <LI>New class <TT>G4GDMLMessenger</TT> instantiated with <TT>G4GDMLParser</TT>
1558 and defining UI commands for importing and exporting GDML files, through
1559 the various options the parser provides.</LI>
1560 <LI>Corrected <TT>GetWorldVolume()</TT> in <TT>G4GDMLReadStructure</TT>, to
1561 make use of the structure stored in memory in case geometry is already
1562 imported.</LI>
1563 <LI>Added <TT>G4GenericTrap</TT> among the set of supported solids in both
1564 GDML reader and writer, treating as 'arb8' GDML type.</LI>
1565 <LI>Added <TT>GetAuxMap()</TT> method to <TT>G4GDMLParser</TT> and removed
1566 'const' qualifier to types in internal map of logical-volumes. Changed
1567 value type to 'string' in <TT>G4GDMLAuxPairType</TT> to avoid extra
1568 type evaluation while parsing.</LI>
1569 <LI>Fixed dummy initialisation of members in classes constructors where
1570 applicable.</LI>
1571 <LI>Added exceptions asserting validity of dynamic casted pointers.</LI>
1572 <LI>Added possibility to de-activate/activate names stripping when reading
1573 files, by invoking a new method <TT>G4GDMLParser::SetStripFlag(bool)</TT>
1574 before importing the GDML file. Stripping is activated by default.</LI>
1575 <LI>Fixed minor left Coverity reports. Some code cleanup.</LI>
1576 </UL></LI>
1577 <LI>mctruth
1578 <UL>
1579 <LI>Fixed possible case of NULL forward in <TT>G4PersistencyCenter</TT>
1580 class.</LI>
1581 </UL></LI>
1582 </UL>
1583
1584 <A NAME="lst-notes">
1585 <H3><I>Physics lists</I></H3></A>
1586 <UL>
1587 <LI>New physics lists and builders:
1588 <UL>
1589 <LI>QGSP_BERT_CHIPS: use CHIPS inelastic in cluding cross sections
1590 for Kaon and all "misc" particles, including anti-proton,
1591 anti-neutron and hyperons.
1592 </LI>
1593 <LI>Shielding: A list optimised to shielding applications. Uses FTFP and
1594 Bertini for proton, neutron,pion, and Kaon. For neutron at low energy,
1595 neutron_HP is used. Uses G4BGGNucleonInelasticXS
1596 inelastic cross sections for proton and neutron,
1597 G4NeutronHPJENDLHEInelasticData for neutron at low energy,
1598 interface to CHIPS cross-sections G4QHadronInelasticDataSet for Kaon.
1599 For ions the QMD model is used.
1600 </UL></LI>
1601 <LI>Physics lists qualification changes (obsolete/partially
1602 disabled/experimental/supported):
1603 <UL>
1604 <LI>Obsolete and disabled (removed): FTFP_EMV, QGSC_EFLOW, QGSP_EMX,
1605 FTFC, FTFP, LHEP_BERT_HP, LHEP_BERT, LHEP_PRECO_HP,
1606 QGSC_EMV, QGSC, QGSC_QGSC, QGSP_BERT_DIF, QGSP_BERT_NQE,
1607 QGSP_DIF, QGSP_EMV, QGSP_EMV_NQE, QGSP_NQE, QGSP_QE.</LI>
1608 <LI>Obsolete (blocked): QGSP, QGSC_CHIPS</LI>.
1609 <LI>Explicitely marked experimental:</LI>
1610 <LI>Marked as supported: QGSP_FTFP_BERT</LI>
1611 </UL></LI>
1612 <LI>Introduced new constructor for all builders with verbosity argument.
1613 Existing constructors are kept, but updated default arguments to avoid
1614 ambiguous signatures. Changed physics-lists to use the new constructor.
1615 Introduced new constructor for G4NeutronTrackingCut.</LI>
1616 <LI>EM physics builders and options:
1617 <UL>
1618 <LI>Included anti_deuteron, anti_triton, anti_alpha, anti_He3 in all EM
1619 builders except the DNA builder.</LI>
1620 <LI>Added <TT>G4WentzelVIModel</TT> for multiple-scattering and
1621 <TT>G4CoulombScattering</TT> process for muons in all builders.</LI>
1622 <LI>Use <TT>G4ionIonisation</TT> for He3 and He4 ions in all EM builders.</LI>
1623 <LI>G4EmStandardPhysics_option2: added <TT>G4WentzelVIModel</TT> for
1624 multiple-scattering and excluded single
1625 scattering model for pi+-, kaon+-, protons
1626 (hadron elastic process is responsible for large angle scattering);
1627 added BS angular generator for bremsstrahlung.</LI>
1628 <LI>G4EmStandardPhysics_option3: commented out Rayleigh to have better CPU
1629 performance.</LI>
1630 <LI><TT>G4EmLivermorePhysics, G4EmPenelopePhysics, G4EmDNAPhysics,
1631 G4EmLivermorePolarizedPhysics</TT>: added <TT>G4GoudsmitSaundersonMscModel</TT>
1632 for e+-; added <TT>1 MeV</TT> upper limit for the Livermore ionisation
1633 model (was <TT>1 GeV</TT>).</LI>
1634 <LI>Correctly implement new option <TT>SetScintillationByParticleType()</TT> in
1635 <TT>G4OpticalPhysics</TT>; make <TT>ConstructProcess()</TT> and
1636 <TT>ConstructParticle()</TT> methods public. Added <TT>G4OpMieHG</TT>
1637 scattering process.</LI>
1638 <LI>Changed default elastic model in <TT>G4EmDNAPhysics</TT> and switched
1639 elastic model in G4DNA physics builder.</LI>
1640 <LI>Added new e- G4DNA processes to <TT>G4EmDNAPhysics</TT> in builders.</LI>
1641 Added also new H-excitation model.
1642 </UL></LI>
1643 <LI>Hadronic builders:
1644 <UL>
1645 <LI>Allow for separate physics for pion and Kaon, i.e. add builders
1646 seperating pion and Kaon,
1647 <TT>G4{V,}{Pion,Kaon}Builder, G4{LEP,Bertini, QGSP}PionBuilder</TT>,
1648 and <TT>G4ChipKaonBuilder</TT>. In QGSP_BERT_CHIPS, use CHIPS
1649 <TT>G4QInelastic</TT> via <TT>G4ChipKaonBuilder</TT> for Kaons.</LI>
1650 <LI>In builders <TT>G4QGSP{Proton, Neutron,Pik}Builder</TT> and
1651 <TT>G4QGSBinary</TT>, FTFP and FTFBinary builders use cross-section
1652 with relativistic rise, using a combination of previously used
1653 cross-section and <TT>G4GlauberGribovCrossSection</TT> above
1654 <TT>91 GeV</TT>.</LI>
1655 <LI><TT>G4FTFPNeutronBuilder, G4FTFPPiKBuilder, G4FTFPProtonBuilder,
1656 G4QGSPNeutronBuilder, G4QGSPPiKBuilder, G4QGSPProtonBuilder, G4QGSBuilder</TT>:
1657 added deletion of <TT>G4ExcitationHandler</TT> and <TT>G4QGSMFragmentation</TT>;
1658 added deletion of neutron builder for QGSP_BERT, FTFP_BERT, QGSP_FTFP_BERT.</LI>
1659 <LI>Replaced <TT>G4HadronQElasticPhysics</TT> with <TT>G4QElasticPhysics</TT>
1660 and <TT>G4IonPhysics</TT> with <TT>G4QIonPhysics</TT> in the CHIPS
1661 physics-list. Particles are restricted to SU(3) hadrons (no pi0 & eta) in
1662 <TT>G4QElasticPhysics</TT>. Fix in <TT>G4QPhotoNuclearPhysics</TT> to
1663 reset particles iterator.</LI>
1664 <LI><TT>G4IonBinaryCascadePhysics</TT>: added <TT>G4IonProtonCrossSection</TT>.</LI>
1665 </UL></LI>
1666 <LI><TT>G4HadronElasticPhysics</TT> renamed to <TT>G4HadronElasticPhysics93</TT>
1667 <TT>G4HadronElasticPhysics</TT> is now a copy of <TT>G4HadronHElasticPhysics</TT>.
1668 Applied related changes to QGSP_BERT_EMV. <TT>G4HadronHElasticPhysics</TT>
1669 is now marked as obsolete.</LI>
1670 <LI>Fixed bugs in <TT>G4IonQMDPhysics</TT>: wrong energy limit for overlap
1671 with BIC; also use QMD for d, alpha.</LI>
1672 <LI><TT>G4HadronElasticPhysicsHP</TT>: added CHIPS cross sections for p and
1673 n on Hydrogen and Helium targets.</LI>
1674 <LI>Updates to lists:
1675 <UL>
1676 <LI>Revised QGSP_FTFP_BERT and FTFP_BERT lists to use CHIPS G4QInelastic
1677 for all "misc" particles, including anti-proton, anti-neutron and
1678 hyperons, and use interface to CHIPS cross-sections
1679 <TT>G4QHadronInelasticDataSet</TT> for kaons. Required changes to
1680 respective <TT>HadronPhysics*</TT> classes.
1681 <LI>LBE: substituted obsolete <TT>G4MultipleScattering</TT> by particle
1682 wise processes. Updated to comply with the new EM design (use
1683 Livermore models rather than LowEnergy processes).</LI>
1684 <LI>QBBC: disabled multi-fragmentation model of deexcitation.</LI>
1685 <LI>QGS_BIC and FTF_BIC now use <TT>G4NeutronXS</TT> cross sections.</LI>
1686 </UL></LI>
1687 <LI><TT>G4DataQuestionaire</TT>: fix for problem report
1688 <A HREF="http://bugzilla-geant4.kek.jp/show_bug.cgi?id=1125">#1125</A>
1689 for optical physics, to correctly check on <TT>G4REALSURFACEDATA</TT> path.</LI>
1690 <LI>Added check on new <TT>G4NEUTRONXSDATA</TT> data set for QBBC and in
1691 <TT>G4NeutronCrossSectionXS</TT>.</LI>
1692 </UL>
1693
1694 <A NAME="run-notes">
1695 <H3><I>Run</I></H3></A>
1696 <UL>
1697 <LI>Added <TT>G4ScoreSplittingProcess</TT> if geometry includes a regular
1698 structure.</LI>
1699 <LI>Added protection against particle without process manager.</LI>
1700 <LI>Introducing two new methods in G4RunManager class, <TT>ReOptimize()</TT> and
1701 <TT>ReOptimizeMotherOf()</TT>; these will cause re-optimization (re-voxelization)
1702 of one particular logical volume without forcing re-optimization of the
1703 entire geometrical hierarchy.</LI>
1704 <LI><TT>G4RunManagerKernel</TT>: in <TT>RunInitialization()</TT>, notify
1705 <TT>G4VisManager</TT> when geometry needs to be closed.
1706 </UL>
1707
1708 <A NAME="track-notes">
1709 <H3><I>Track & Tracking</I></H3></A>
1710 <UL>
1711 <LI>Added <TT>G4Track::GetParticleDefinition()</TT> returning 'const' pointer,
1712 if possible.</LI>
1713 <LI>Added warning exception if <TT>GetDeltaEnergy/Momentum()</TT> methods are
1714 invoked. These methods are now obsolete and planned to be removed.</LI>
1715 <LI>Added touchable history of the origin to <TT>G4Track</TT>.</LI>
1716 <LI>Added protection against possible null pointer in <TT>G4Track::GetVelocity()</TT>.
1717 Use PhysicsVector for calculation of <TT>GetVelocity()</TT> for better
1718 performance.</LI>
1719 <LI><TT>G4SteppingManager</TT>: use canonical form for <TT>G4Exception</TT>.
1720 Added protection for possible negative index in method
1721 <TT>ApplyProductionCut()</TT> and some printout formatting.</LI>
1722 <LI><TT>G4Step::GetSecondary()</TT> gives back a <TT>const G4TrackVector*</TT>,
1723 while <TT>G4Step::GetfSecondary()</TT> gives back non-const pointer.</LI>
1724 <LI>Fixed restoring of output settings in <TT>G4SteppingVerbose</TT>.
1725 Fixed cases of restoring cout/cerr precision formatting in several classes.</LI>
1726 <LI>Use 0 instead of NULL where applicable.</LI>
1727 <LI>Fixed minor reports from Coverity.</LI>
1728 </UL>
1729
1730 <A NAME="vis-notes">
1731 <H3><I>Visualization</I></H3></A>
1732 <UL>
1733 <LI><B>Management</B>
1734 <UL>
1735 <LI>Added new <TT>/vis/open</TT> command for OpenGL viewers,
1736 <TT>/vis/open OGL</TT>.
1737 This new form allows the same macro to be used whether one is on
1738 Linux or Windows (calling OGLSX on Linux and OGLSWin32 on Windows).
1739 When the application has been built with Qt, it will use the Qt form
1740 of OpenGL; when built with Motif, it will use the Motif form of OpenGL.
1741 Also added options OGLI and OGLS to force Immediate or Stored modes.
1742 The user is still free to use the older, specific viewer names, such
1743 as OGLIX, but the simple form, OGL, will give the most portable macros.</LI>
1744 <LI>Added new <TT>/vis/open</TT> command for OpenInventor, <TT>/vis/open OI</TT>.
1745 This new form allows the same macro to be used whether one is on Linux
1746 or Windows (calling OIX on Linux and OIWin32 on Windows).</LI>
1747 <LI>Added <TT>/vis/scene/add/digis</TT> and <TT>/vis/filtering/digi</TT>
1748 commands, analogous to the already-existing commands
1749 <TT>/vis/scene/add/hits</TT> and <TT>/vis/filtering/hits</TT>.
1750 As with hits, it remains the user's responsibility to provide the
1751 digitisation classes.
1752 Added method <TT>AddCompound(const G4VDigi&)</TT> to drivers.</LI>
1753 <LI>Introduced DispatchToModel without <TT>i_mode</TT>. The archaic form
1754 <TT>G4VTrajectory::DrawTrajectory(i_mode)</TT> is replaced by the
1755 newer form, <TT>G4VTrajectory::DrawTrajectory()</TT>. <TT>i_mode</TT>
1756 used to be a parameter to control whether the trajectory was drawn as
1757 a line, a line plus step points, or only step points:
1758 <UL>
1759 <LI>'i_mode > 0' meant draw lines and points, size of points in
1760 'pixels = abs(i_mode)/1000'</LI>
1761 <LI>'i_mode = 0' meant draw only lines</LI>
1762 <LI>'i_mode < 0' meant draw only points, size of points in
1763 'pixels = abs(i_mode)/1000'</LI>
1764 </UL>
1765 Since release 8.1, better control has been available from the command
1766 <TT>/vis/modeling/trajectories</TT>. Since release 5.0, <TT>i_mode</TT>
1767 less than 1000 has in fact drawn no points and <TT>i_mode</TT> of 1000
1768 has drawn points that were so small (a single pixel wide) that they
1769 were overshadowed by the trajectory itself except at endpoints of the
1770 trajectory or where the trajectory made a sharp change of direction.
1771 Use of <TT>i_mode</TT> is now trapped and a warning gets printed.</LI>
1772 <LI>Changed order of flags to follow <TT>G4UIExecutive</TT>.</LI>
1773 <LI>Moved all non-fatal output messages from <TT>G4cerr</TT> to <TT>G4cout</TT>
1774 for DAWN, VRML and gMocren drivers.</LI>
1775 <LI><TT>G4VisManager, G4VisExecutive</TT>: introduced optional verbosity
1776 string argument in constructor; made 'fVerbosity' and
1777 <TT>GetVerbosity()</TT> static.</LI>
1778 <LI>Added virtual destructors to fix compilation warnings.</LI>
1779 <LI>Added <TT>/vis/viewer/set/defaultColour</TT> and <TT>defaultTextColour</TT>
1780 commands.</LI>
1781 <LI>Fixed <TT>G4VisExecutive</TT> inlined constructor.</LI>
1782 <LI>Fixed some Coverity reports.</LI>
1783 </UL></LI>
1784 <LI><B>Modeling</B>
1785 <UL>
1786 <LI>Added <TT>G4DigiModel</TT> and <TT>G4DigiFilterFactories</TT>.</LI>
1787 <LI>Added default colours to <TT>G4TrajectoryDrawByParticleID</TT>.</LI>
1788 <LI>Replace polyhedra with solids for sections and cutaways.</LI>
1789 <LI>Trap use of <TT>i_mode</TT> and print warning.</LI>
1790 <LI>Fixed time-slicing problem.</LI>
1791 </UL></LI>
1792 <LI><B>Externals</B>
1793 <UL>
1794 <LI><TT>G4OpenGL2PSAction</TT>: added new method to set viewport.</LI>
1795 <LI>Updated gl2ps to version 1.3.5.</LI>
1796 </UL></LI>
1797 <LI><B>gMocren</B>
1798 <UL>
1799 <LI>Removed dependency on <TT>G4VisManager</TT>. Improved printout.</LI>
1800 </UL></LI>
1801 <LI><B>HepRep</B>
1802 <UL>
1803 <LI>Added command <TT>/vis/heprep/renderCylAsPolygons</TT>.
1804 </UL></LI>
1805 <LI><B>OpenGL</B>
1806 <UL>
1807 <LI><TT>G4OpenGLQtViewer</TT>: better inclusion of new tabs in UI part.
1808 Many improvements to OpenGL Qt.</LI>
1809 <LI>Speed improvements for polymarkers (e.g., trajectories).</LI>
1810 <LI>Some improvements with auto rotation mode.</LI>
1811 <LI>Corrected strdup usage in <TT>G4OpenGLViewer</TT>.</LI>
1812 <LI>Use generic section and cutaway algorithm.</LI>
1813 <LI>Added protection against multiple repaint call, and protection against
1814 resizeGl with bad values.</LI>
1815 <LI>Improved kernel visit trigger.</LI>
1816 <LI>Time-slices fade to background colour.</LI>
1817 <LI>Added verbosity control.</LI>
1818 <LI>Tidied display list limit.</LI>
1819 </UL></LI>
1820 <LI><B>OpenInventor</B>
1821 <UL>
1822 <LI>Added protection against repeated initialisation.</LI>
1823 <LI>Protected output with <TT>G4VisManager::confirmations</TT>.</LI>
1824 <LI>Improved kernel visit trigger.</LI>
1825 </UL></LI>
1826 <LI><B>RayTracer</B>
1827 <UL>
1828 <LI>Added missing virtual destructor to <TT>G4VRTScanner, G4RTXScanner</TT>
1829 and <TT>G4RTSimpleScanner</TT> classes.
1830 </UL></LI>
1831 </UL>
1832
1833 <A NAME="env-notes">
1834 <H3><I>Environments</I></H3></A>
1835 <UL>
1836 <LI><B>G4Py</B>: revised usage of MultipleScattering classes to make use of new
1837 particle based processes. Fixed bug in wrapping of <TT>G4GDMLParser</TT>.
1838 Updated run-manager and physics-lists. Added new example using GTK
1839 First experimental support for Python3. Updates to support changes
1840 in kernel.</LI>
1841 <LI><B>Momo</B>: revised obsolete trajectory drawing. Using <TT>QGSP_BERT</TT>
1842 physics-list instead of <TT>GPE</TT>. JAVA source codes is now included.</LI>
1843 </UL>
1844
1845 <A NAME="data-notes">
1846 <H3><I>Data sets</I></H3></A>
1847 <UL>
1848 <LI>New data set G4NEUTRONXS-1.0 for evaluated neutron cross section data
1849 on natural composition of elements:
1850 <UL>
1851 <LI>Path to data controlled by variable <TT>G4NEUTRONXSDATA</TT>.</LI>
1852 </UL></LI>
1853 <LI>New data set G4PII-1.2 for shell ionisation cross-sections to be used
1854 in precise impact ionisation simulation.
1855 <UL>
1856 <LI>Path to data controlled by variable <TT>G4PIIDATA</TT>.</LI>
1857 </UL></LI>
1858 <LI>New low-energy data set, G4EMLOW.6.19:
1859 <UL>
1860 <LI>New directory and data files needed by ionisation cross section
1861 models for PIXE; added data tables in the directories uf, kpcsPaul
1862 and kacsPaul included in the 'pixe' dir.</LI>
1863 <LI>Added 'sigmadiff_cumulated_elastic_e_champion.dat' and
1864 temporary 'sigma_excitation_e_born.dat' to dna module.</LI>
1865 <LI>Added data files in the penelope module, necessary for
1866 Penelope08 models for gamma rays.</LI>
1867 <LI>Added sigma_excitation_e_born.dat file for G4DNABornIonisationModel.</LI>
1868 <LI>Updated G4DNA data tables.</LI>
1869 <LI>added two new Geant4-DNA files for for vibrational excitation and
1870 attachment sigma.</LI>
1871 <LI>Added extra stopping power data for ions; data are obtained from
1872 computations of PASS code by A.Schinner.</LI>
1873 <LI>Updated sigma ionisation Rudd data.</LI>
1874 <LI>Updated PDF.dat to msc_GS module.</LI>
1875 </UL></LI>
1876 <LI>New neutron data set with thermal cross sections, G4NDL.3.14:
1877 <UL>
1878 <LI>Added Zinc and Tantalum data.</LI>
1879 <LI>Updated Lithium and Boron data.</LI>
1880 </UL></LI>
1881 <LI>New photon-evaporation data set, G4PhotonEvaporation.2.1:
1882 <UL>
1883 <LI>Added documentation file, with data format description.</LI>
1884 </UL></LI>
1885 <LI>New radioactive decay data set, G4RadioactiveDecay.3.3:
1886 <UL>
1887 <LI>Added documentation file, with data format description.</LI>
1888 </UL></LI>
1889 </UL></LI>
1890
1891 <A NAME="ex-notes">
1892 <H3><I>Examples</I></H3></A>
1893 <UL>
1894 <LI>Various fixes, improvements, adoption of new features.</LI>
1895 <LI>Adopt <TT>G4UIExecutive</TT> to initialise UI sessions in nearly all
1896 examples.</LI>
1897 <LI>Updated visualization usage in most examples, including macro sections
1898 the user can uncomment to activate additional features.</LI>
1899 <LI>Fixed AIDA file option for most examples making use of histogramming.</LI>
1900 <LI>Completed migration to use particle-based multiple-scattering.</LI>
1901 <LI>Updated reference outputs.</LI>
1902 <LI><B>advanced</B>
1903 <UL>
1904 <LI>brachytherapy
1905 <UL>
1906 <LI>General code review.</LI>
1907 </UL></LI>
1908 <LI>ChargeExchangeMC
1909 <UL>
1910 <LI>New application for Monte Carlo simulation of charge exchange,
1911 based on a real experiment performed at the Petesburg Nuclear
1912 Physics Institute (PNPI, Russia).</LI>
1913 </UL></LI>
1914 <LI>eRosita
1915 <UL>
1916 <LI>New example implementin a simplified seetup of the eROSITA X-ray
1917 telescope for instrumental background simulations and fluorescence
1918 measurements.</LI>
1919 </UL></LI>
1920 <LI>gammaray_telescope
1921 <UL>
1922 <LI>
1923 <LI>Corrected initialisation of G4ThreeVector.</LI>
1924 <LI>Now using reference physics-list.</LI>
1925 </UL></LI>
1926 <LI>hadrontherapy
1927 <UL>
1928 <LI>Removed the macro 'GUI.mac' contained in the macro folder: the
1929 GUI personalisation are contained in the 'GUIPersonalisation.mac'
1930 file that runs when the default macro files are called.</LI>
1931 <LI>Fixed the modulatorMacro.mac for the modulator rotation and included the
1932 modulator.loop file for automatic rotation of the modulator wheel.</LI>
1933 <LI>Removed the 'addPackage' command. Now reference physics-lists can
1934 be activated setting the enviroment variable <TT>PHYSLIST</TT> to
1935 the name of the list. Modified <TT>main()</TT> program in order to
1936 launch different macro file depending if <TT>PHYSILIST</TT> variable
1937 is activated or not. Removed some macro files.</LI>
1938 <LI>Correctd range shifter and modulator positions.
1939 Corrected position of primary proton beam.</LI>
1940 <LI>Changed the macro command name to store secondary particles to:
1941 <TT>analysis/secondary [true/false]</TT>.</LI>
1942 <LI>Added a macro command to store dose between runs:
1943 <TT>analysis/writeDoseFile [filename]</TT>.</LI>
1944 <LI>Fixed bug in nanalysis messenger when analysis is not set.</LI>
1945 <LI>Added <TT>QGSP_BIC_EMY</TT> reference physics list.</LI>
1946 <LI>Added separation between cut for the transport beam line and
1947 detector.</LI>
1948 <LI>General code review and updated and cleaned macro files.
1949 Updated README.</LI>
1950 </UL></LI>
1951 <LI>human_phantom
1952 <UL>
1953 <LI>Corrected a bug in Event action.</LI>
1954 </UL></LI>
1955 <LI>medical_linac
1956 <UL>
1957 <LI>Corrected and updated the vis.mac file.</LI>
1958 <LI>Added 'Launches' folders to store simulation outputs and macros...</LI>
1959 <LI>Added a phantom based on dicom CT images.</LI>
1960 <LI>Added the capability to rotate the accelerator (around the X axis
1961 and around the Y axis of a fix 90 deg angle). Added the capability
1962 to translate the phantom.</LI>
1963 <LI>Modified the format of the output files and removed obsolete files.</LI>
1964 </UL></LI>
1965 <LI>microdosimetry
1966 <UL>
1967 <LI>Modified energy limit of Sanche vib excitation for <TT>e-</TT>.</LI>
1968 <LI>Added H excitation.</LI>
1969 </UL></LI>
1970 <LI>nanobeam
1971 <UL>
1972 <LI>Added post step point information to <TT>SteppingAction</TT>.</LI>
1973 <LI>Updated for production of histograms with AIDA.</LI>
1974 </UL></LI>
1975 <LI>xray_fluorescence
1976 <UL>
1977 <LI>Corrected bug in the <TT>MercuryPrimaryGeneratorAction</TT>.</LI>
1978 </UL></LI>
1979 </UL></LI>
1980 <LI><B>extended</B>
1981 <UL>
1982 <LI>Retired extended examples: ExDiane.</LI>
1983 <LI>analysis/AnaEx01
1984 <UL>
1985 <LI>Added class HistoManager to replace <TT>AnaEx01AnalysisManager</TT>.</LI>
1986 </UL></LI>
1987 <LI>analysis/N03Con
1988 <UL>
1989 <LI>Moved <TT>G4ConvergenceTester</TT> to kernel inside
1990 global/HEPNumerics module.</LI>
1991 <LI>Renamed classes. Introduced NIST materials. Added vis macro.</LI>
1992 </UL></LI>
1993 <LI>biasing/ReverseMC01
1994 <UL>
1995 <LI>Added initialisation of data in <TT>G4AdjointPhysicsList</TT>
1996 constructor.</LI>
1997 <LI>Modified some tests in <TT>RMC01AnalysisManager</TT>.</LI>
1998 <LI>Corrected density of Si in <TT>RMC01DetectorConstruction</TT> and
1999 corrected position of the lower Ta plate.</LI>
2000 <LI>Fixed compilation error on Windows.</LI>
2001 </UL></LI>
2002 <LI>electromagnetic/TestEm0
2003 <UL>
2004 <LI>New physics-lists for EM standard options 0,1,2,3.</LI>
2005 <LI>Print out cross-sections in <TT>RunAction</TT>.</LI>
2006 </UL></LI>
2007 <LI>electromagnetic/TestEm1
2008 <UL>
2009 <LI><TT>RunAction</TT>: replaced 'ProcessCount' with a map.</LI>
2010 </UL></LI>
2011 <LI>electromagnetic/TestEm2
2012 <UL>
2013 <LI>Added histos rms on profiles (histos numbering is changed)
2014 and new scripts.
2015 </UL></LI>
2016 <LI>electromagnetic/TestEm3
2017 <UL>
2018 <LI>Added <TT>PhysListEmStandardGS</TT> and <TT>PhysListEmStandardWVI</TT>.</LI>
2019 <LI>Added printout of mean number of gamma, <TT>e-, e+</TT>.</LI>
2020 <LI>Added ion scattering model into WVI Physics constructor.</LI>
2021 </UL></LI>
2022 <LI>electromagnetic/TestEm5
2023 <UL>
2024 <LI>Added ion scattering model into WVI Physics constructor.</LI>
2025 </UL></LI>
2026 <LI>electromagnetic/TestEm6
2027 <UL>
2028 <LI>Fixed compilation error on gcc-4.5.1.</LI>
2029 </UL></LI>
2030 <LI>electromagnetic/TestEm7
2031 <UL>
2032 <LI>Added extra EM option "ionGasModels", which disables effective ion
2033 charge and enables use of new models G4BraggIonGasModel,
2034 G4BetheBlochIonGasModel.</LI>
2035 <LI>Added extra macro ionGasC12.mac.</LI>
2036 <LI>Added standard HistoManager. Fixed normalisation factor in
2037 histograms 2 and 3.</LI>
2038 <LI><TT>PhysListEmStandardNR</TT>: removed obsolete set of nuclear
2039 stopping flag.</LI>
2040 <LI>Added ion scattering model into SS physics constructor.</LI>
2041 </UL></LI>
2042 <LI>electromagnetic/TestEm8
2043 <UL>
2044 <LI>Completely revised in physics, scoring and histograms for treatment of
2045 ionisation in thin absorbers and gaseous detectors.</LI>
2046 <LI>Added reation of distribution output file in Histomanager.</LI>
2047 <LI><TT>PhysicsList, Em8DetectorConstruction</TT>: renamed
2048 "VertexDetector" with "GasDetector". Fixed UI commands for step
2049 limiter.</LI>
2050 <LI>Added cut per region in input macro.</LI>
2051 <LI>DetectorConstruction: added more printout.</LI>
2052 <LI>DetectorMessenger: fixed state; added <TT>G4State_PreInit</TT>.</LI>
2053 </UL></LI>
2054 <LI>electromagnetic/TestEm9
2055 <UL>
2056 <LI>Histo: use empty option when opening file</LI>
2057 <LI>PhysicsList: use default constructor for elastic builder.</LI>
2058 <LI>Added applyCuts option to macro files.</LI>
2059 </UL></LI>
2060 <LI>electromagnetic/TestEm11</LI>
2061 <LI>electromagnetic/TestEm12
2062 <UL>
2063 <LI>Added lists <TT>PhysListStandardGS, PhysListStandardSS,
2064 PhysListStandardWVI</TT>.</LI>
2065 <LI>Added EGSnrc data in 'sandia' subdirectory.</LI>
2066 </UL></LI>
2067 <LI>electromagnetic/TestEm13</LI>
2068 <LI>electromagnetic/TestEm14
2069 <UL>
2070 <LI><TT>PhysicsList</TT>: extended 'ProductionCuts' down to <TT>100 eV</TT>.
2071 Removed non pertinent EmOptions.</LI>
2072 <LI><TT>PhysListEmStandard, Livermore, Penelope</TT>: all processes
2073 registered as discrete (i.e., no continuous energy loss).</LI>
2074 <LI><TT>RunAction</TT>: replaced 'ProcessCount' with a map.</LI>
2075 <LI>Cleanup in <TT>SteppingAction</TT>. Updated README.</LI>
2076 </UL></LI>
2077 <LI>electromagnetic/TestEm16
2078 <UL>
2079 <LI><TT>SteppingAction</TT>: use const pointers for step/track objects.</LI>
2080 </UL></LI>
2081 <LI>electromagnetic/TestEm18
2082 <UL>
2083 <LI><TT>PhysicsList, PhysListEmStandardFLUO</TT>: updated according to
2084 changes in electromagnetic/utils module.</LI>
2085 <LI>Removed obsolete builders for Livermore and Penelope in
2086 <TT>PhysicsList</TT>; added fluorescence and PIXE options.</LI>
2087 </UL></LI>
2088 <LI>eventgenerator/exgps
2089 <UL>
2090 <LI>Added batch input macro.</LI>
2091 <LI>Added extra tests in the macros directory for automatic energy
2092 biasing and to import energy spectrum in ascii file.</LI>
2093 <LI>Changed analysis macro files; added plotfiles.py and plotall.py
2094 scripts for plotting the results.</LI>
2095 </UL></LI>
2096 <LI>eventgenerator/HepMC
2097 <UL>
2098 <LI>Updated to make use of HepMC-2.06.03.
2099 <LI>Use QGSP_BERT physics-list.
2100 </UL></LI>
2101 <LI>eventgenerator/particleGun
2102 <UL>
2103 <LI>New example demonstrating three different ways of usage of
2104 <TT>G4ParticleGun</TT>, shooting primary particles in different
2105 cases.</LI>
2106 </UL></LI>
2107 <LI>exoticphysics/monopole
2108 <UL>
2109 <LI>Substituted QGSP list by QGSP_BERT.</LI>
2110 <LI>Added new classes for monopole <TT>G4MonopoleEquation</TT>,
2111 <TT>G4MonopoleFieldSetup</TT> and <TT>G4MonopoleTransportation</TT>.</LI>
2112 <LI>Use most recent version of monopole transportation, delta-electron
2113 production enabled, non-integer monopole charge allowed.</LI>
2114 <LI>Added test on ionisation of heavy highly charged particle; some
2115 cleanup.</LI>
2116 </UL></LI>
2117 <LI>field/field04
2118 <UL>
2119 <LI>Included Mie scattering process and updated usage of
2120 <TT>G4PhysListFactory</TT>.</LI>
2121 </UL></LI>
2122 <LI>geometry/olap
2123 <UL>
2124 <LI>Fixed uninitialised data in OlapInfo, causing undefined behavior.</LI>
2125 <LI>Fixed compilation warnings for unused parameters.</LI>
2126 <LI>Added simple batch input macro.</LI>
2127 </UL></LI>
2128 <LI>hadronic/Hadr01
2129 <UL>
2130 <LI>Cleanup of physics-list according to last update to physics_list
2131 library. Use default elastic builder for majority of cases.
2132 Removed TRV lists and cleanup elastic.</LI>
2133 </UL></LI>
2134 <LI>medical/DICOM
2135 <UL>
2136 <LI>Added function to read nested items (defined and undefined).</LI>
2137 <LI>Removed dependencies on CONQUEST.</LI>
2138 <LI>DICOM handler can now read whichever DICOM file
2139 (PT,CT,DR,CR,US,MR... ).</LI>
2140 <LI>Introduced partial phantom definition and adopt new
2141 <TT>G4ScoreSplittingProcess</TT>.</LI>
2142 <LI>Fixed compilation warning on virtual methods hiding and minor
2143 others.</LI>
2144 </UL></LI>
2145 <LI>medical/electronScattering
2146 <UL>
2147 <LI>Added <TT>PhysListEmStandardWVI</TT>.</LI>
2148 <LI>Print unormalized fluence per event in <TT>RunAction</TT>.</LI>
2149 </UL></LI>
2150 <LI>medical/electronScattering2
2151 <UL>
2152 <LI>New example for simulation of precision electron scattering
2153 benchmark with minimal user code.
2154 </UL></LI>
2155 <LI>medical/fanoCavity[1,2]
2156 <UL>
2157 <LI>Introduced <TT>PhysListEmStandard_option2</TT> and
2158 <TT>PhysListEmStandard_WVI</TT>.</LI>
2159 <LI>Added to <TT>run01.mac</TT> all physics-lists choice.</LI>
2160 <LI>Corrected initialisation of 3-vector in constructor.</LI>
2161 </UL></LI>
2162 <LI>medical/GammaTherapy
2163 <UL>
2164 <LI>Removed unused methods in PrimaryGeneratorAction.</LI>
2165 </UL></LI>
2166 <LI>optical/LXe
2167 <UL>
2168 <LI>Fixed initialisation of G4ThreeVector.</LI>
2169 </UL></LI>
2170 <LI>optical/wls
2171 <UL>
2172 <LI>Included Mie scattering process and updated usage of
2173 <TT>G4PhysListFactory</TT>.</LI>
2174 <LI>Corrected bug in definition of sensitive detector, when updating
2175 geometry.</LI>
2176 </UL></LI>
2177 <LI>parallel/MPI
2178 <UL>
2179 <LI>General code review.</LI>
2180 <LI>mpi_interface: OpenMPI as default MPI library instead of LAM/MPI;
2181 improved <TT>/mpi/status</TT> command (added waste of CPU, time
2182 measurement); improved macro file parser (same parser as
2183 <TT>G4UIbatch</TT>; fixed unexpected behavior at the end of batch
2184 mode); changed "beamOn" behavior for better performance (thread-out
2185 for interactive, on-thread for batch).</LI>
2186 <LI>exMPI01, exMPI02: use <TT>G4UIcsh</TT> instead of <TT>G4UItcsh</TT>
2187 since OpenMPI is now default.</LI>
2188 </UL></LI>
2189 <LI>parameterisations/gflash
2190 <UL>
2191 <LI>Added default production cut to region crystals to cleanup
2192 warning on stderr. Fixed also some compilation warnings.</LI>
2193 </UL></LI>
2194 <LI>persistency/gdml
2195 <UL>
2196 <LI><TT>G01</TT>: added <TT>G4GenericTrap</TT> to the <TT>solids.gdml</TT>
2197 sample. Use string as second item in auxiliary-value in
2198 <TT>main()</TT>. Added commented command for de-activating names
2199 stripping while reading. Use world volume for tracking to dump
2200 to GDML file.</LI>
2201 <LI><TT>G02</TT>: fixed use of obsolete physics-list.</LI>
2202 <LI><TT>G03</TT>: fixed use of obsolete physics-list.</LI>
2203 <LI><TT>G04</TT>: new example showing how to associate a sensitive
2204 detector to a volume through auxiliary-information.</LI>
2205 </UL></LI>
2206 <LI>persistency/P03
2207 <UL>
2208 <LI>Corrected README.</LI>
2209 </UL></LI>
2210 <LI>radioactivedecay
2211 <UL>
2212 <LI>New example "rdecay01" to demonstrate basic functionality of the
2213 <TT>G4RadioactiveDecay</TT> process.</LI>
2214 <LI>Renamed "exrdm" example to "rdecay02".
2215 Updated <TT>exrdmAnalysisManager</TT> to output the accumulated
2216 radioactivities at the end of a run, in VR mode.
2217 Added more macros <TT>u238-b.mac, u238.mac, po201m.mac</TT> and
2218 <TT>proton-beam.mac</TT>.</LI>
2219 </UL></LI>
2220 <LI>runAndEvent/RE01
2221 <UL>
2222 <LI>Added a protection against empty stack in
2223 <TT>RE01StackingAction</TT>.</LI>
2224 </UL></LI>
2225 <LI>runAndEvent/RE02
2226 <UL>
2227 <LI>Bug fix in <TT>RE02DetectorConstruction</TT>, correcting size of
2228 array and fixing crash on Windows.</LI>
2229 <LI>Fixed warning messages.</LI>
2230 </UL></LI>
2231 </UL></LI>
2232 <LI><B>novice</B>
2233 <UL>
2234 <LI>N03
2235 <UL>
2236 <LI>Changed classe mames, suppressed 'ExN03' prefix.</LI>
2237 <LI><TT>DetectorConstruction</TT>: introduced NIST materials.</LI>
2238 <LI>Rationalised visTutor: several obsolete macros deleted; 6 macros
2239 improved and retained (<TT>Tree0, Vis0,5,12,13, heprep</TT>);
2240 updated <TT>gui.mac</TT> accordingly and moved to main directory;
2241 updated <TT>main()</TT> program.</LI>
2242 <LI>Updated README.</LI>
2243 </UL></LI>
2244 <LI>N04
2245 <UL>
2246 <LI>Replaced QGSP list with QGSP_BERT.</LI>
2247 </UL></LI>
2248 <LI>N06
2249 <UL>
2250 <LI>Added Mie scattering process and associated material properties.</LI>
2251 </UL></LI>
2252 </UL></LI>
2253 </UL>
2254
2255 <HR>
2256
2257 </BODY>
2258 </HTML>