File indexing completed on 2025-01-18 09:16:08
0001 <HTML>
0002 <HEAD>
0003 <TITLE>Geant4 8.3 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 8.3 Release Notes</B>
0014 </FONT>
0015
0016 <TABLE WIDTH="100%">
0017 <TR><TD ALIGN="Right">
0018 <FONT SIZE="-1" COLOR="#5C3317">
0019 <B><I>May 4<SUP>th</SUP>, 2007</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 Please refer to the
0033 <A TARGET="ext" HREF="http://cern.ch/geant4/support/userdocuments.shtml">Geant4
0034 User Documentation</A> for further information about using Geant4.
0035 </P>
0036
0037 <H2><I>Contents</I></H2>
0038 <OL>
0039 <LI><A HREF="#1.">Supported and Tested Platforms</A></LI>
0040 <LI><A HREF="#2.">CLHEP and AIDA</A></LI>
0041 <LI><A HREF="#3.">Items for migration of the user code</A></LI>
0042 <LI><A HREF="#4.">Expected effects on physics and performance</A></LI>
0043 <LI><A HREF="#5.">Known Run-Time Problems</A></LI>
0044 <LI><A HREF="#6.">Compilation Warnings</A></LI>
0045 <LI><A HREF="#7.">Known Run-Time Warnings</A></LI>
0046 <LI><A HREF="#8.">Geant4 Software License</A></LI>
0047 <LI><A HREF="#9.">Detailed list of changes and fixes</A></LI>
0048 </OL>
0049
0050 <P> </P>
0051 <A NAME="1."></a>
0052 <HR>
0053
0054
0055
0056 <H2>1. Supported and Tested Platforms</H2>
0057
0058 Official platforms:
0059 <UL>
0060 <LI>SUN Solaris 5.8, C++ CC-5.5.</LI>
0061 <LI>Linux, gcc 3.2.3 or gcc 3.4.5.<BR>
0062 This configuration was tested on <I>32 bits architectures (Intel)</I>
0063 and <I>64 bits architectures (AMD)</I> with the Scientific Linux CERN 3
0064 (SLC3) distribution (based on RedHat Linux Enterprise 3) and
0065 Scientific Linux CERN 4 (SLC4) distribution (based on RedHat Linux
0066 Enterprise 4).
0067 Versions of Geant4 have also been compiled successfully on other
0068 Linux distributions, like Debian, Suse or other RedHat systems.</LI>
0069 <LI>Windows/XP and CygWin Tools with: Visual C++ 7.1 .NET</LI>
0070 </UL>
0071
0072 More verified configurations:
0073 <UL>
0074 <LI>SUN Solaris 5.8, C++ CC-5.4 Patch 111715-02</LI>
0075 <LI>Linux, gcc-4.1.2</LI>
0076 <LI>Linux, Intel-icc 9.1</LI>
0077 <LI>MacOS 10.4, gcc-4.0.1</LI>
0078 <LI>Windows/XP and CygWin Tools with: Visual C++ 8.0 (Visual Studio 2005)</LI>
0079 </UL>
0080
0081 Platforms configured but not tested and not supported:
0082 <UL>
0083 <LI>AIX 4.3.2, xlC 6.0</LI>
0084 <LI>DEC V4.0, cxx C++ V6.1-027</LI>
0085 <LI>HP 10.20, aCC C++ B3910B A.01.23</LI>
0086 <LI>SGI V6.5.5, CC 7.2.1</LI>
0087 </UL>
0088
0089 <P> </P>
0090 <A NAME="2."></A>
0091 <HR>
0092
0093
0094
0095 <H2>2. CLHEP and AIDA</H2>
0096
0097 Geant4 8.3 requires the installation of
0098 <A TARGET="ext" HREF="http://cern.ch/clhep">CLHEP</A>.<BR>
0099 Tests have been performed with <B>CLHEP-2.0.3.1</B><BR>
0100 The software has been verified also with <B>CLHEP-1.9.3.1</B>.<BR>
0101 <P> </P>
0102 Geant4 8.3 examples with histogramming cowork with analysis tools compliant
0103 to AIDA 3.2.1 interfaces.<BR>
0104 AIDA headers can be downloaded from:
0105 <A TARGET="ext" HREF="http://aida.freehep.org">http://aida.freehep.org</A>
0106
0107
0108 <P> </P>
0109 <A NAME="3."></A>
0110 <HR>
0111
0112
0113
0114 <H2>3. Items for migration of the user code</H2>
0115
0116 No particular migrations are required in order to upgrade from release 8.2
0117 to release 8.3.
0118 Note that a full re-installation of libraries (or a full recompilation) and
0119 a recompilation of user applications is anyhow required.
0120
0121 <P> </P>
0122 <A NAME="4."></A>
0123 <HR>
0124
0125
0126
0127 <H2>4. Expected effects on physics and performance</H2>
0128
0129 <B>Standard Electromagnetic physics</B>
0130 <UL>
0131 <LI>No visible effects in CPU performance.</LI>
0132 <LI>Calorimeter response: stable within 1% for visible energy and resolution.</LI>
0133 <LI>Energy deposition in thin layers: stable for step size down to <TT>1 um</TT>.</LI>
0134 </UL>
0135
0136 <B>Hadronic physics</B>
0137 <UL>
0138 <LI><U>Revised hadronic modeling, resulting in longer shower shapes</U>:<BR>
0139 the FTF model now has improved treatment of diffraction. As a result
0140 the longitudinal shower component now starts later and ends later, which
0141 goes in the direction of the data. The addition of quasi-elastic
0142 scattering (<TT>G4QuasiElasticChannel</TT>) to the QGS model is also
0143 expected to improve shower shapes by reducing the deep inelastic component.</LI>
0144 <LI><U>New cross section data sets added</U>:<BR>
0145 Barashenkov parameterised cross sections are now available for elastic
0146 and inelastic nucleon-nucleus and elastic and inelastic pion-nucleus
0147 scattering.</LI>
0148 <LI><U>Cross sections for user-defined elements</U>:<BR>
0149 cross sections are now calculated based on user-defined isotope
0150 abundances, if they are provided. Natural abundances are used
0151 otherwise.</LI>
0152 <LI><U>Improved muon capture model</U>:<BR>
0153 <TT>G4QCaptureAtRest</TT> model provides more accurate final state
0154 electron spectrum for muon capture and more accurate secondary hadron
0155 sprectra for hadron capture.</LI>
0156 <LI><U>Error reporting</U>:<BR>
0157 when a segmentation fault occurs in a hadronic process, the information
0158 about the process and model name where the fault has occurred will be
0159 printed out.</LI>
0160 </UL>
0161
0162 <B>Physics Lists</B>
0163 <UL>
0164 <LI>FTFP and FTFC use a significantly revised FTF model. Comparisons to thin
0165 target experiment at ~10 <TT>GeV</TT> show much better agreement with data;
0166 the model is still under validation at higher energies. Prelimirary tests
0167 display slightly longer showers than the previous version of FTFP/FTFC.</LI>
0168 <LI>QGS type physics lists (QGSP, QGSC, QGSP_BERT, etc) now include a simple
0169 quasi-elastic model for a small fraction of high energy inelastic
0170 interactions. The cross-section parameterisations for inelastic
0171 interactions include the quasi-elastic cross-section, while QGS only
0172 models deep inelastic interactions.
0173 <UL>
0174 <LI>For comparison or backward compatibility, the new QGSP_NQE,
0175 QGSP_EMV_NEQ, and QGSP_BERT_NQE ignore this new quasi-elastic,
0176 and are therefore the equivalent of QGSP, QGSP_EMV, and QGSP_BERT
0177 available in release 8.2 and before.</LI>
0178 <LI>Also, the obsolete QGSP_LEAD/QGSP_LEAD_HP do not include
0179 quasi-elastic.</LI>
0180 </UL></LI>
0181 <LI>QGSC physics list and its variants use CHIPS <TT>G4QCaptureAtRest</TT>
0182 to model capture of muons at rest instead of <TT>G4MuonMinusCaptureAtRest</TT>.
0183 This model better reproduces the spectrum of secondaries close to the
0184 kinematic limit.</LI>
0185 <LI>The new physics list QGSP_BERT_TRV is a variant of QGSP_BERT where Bertini
0186 cascade model is used only up to energies of 5.4 <TT>GeV</TT> for protons,
0187 neutrons, pions and kaons. For comparisons QGSP_BERT uses Bertini cascade
0188 model up to 9.9 <TT>GeV</TT>.</LI>
0189 <LI>HElastic model for projectile energy above 1 <TT>GeV</TT> is used for all
0190 targets with <TT>Z>1</TT>.</LI>
0191 <LI>In all lists for electro-magnetic physics, the "skin" for
0192 multiple-scattering on boundaries is set to zero, meaning that no
0193 computation of the linear distance to the geometrical boundaries is
0194 made by the multiple-scattering model.</LI>
0195 <LI>In the QBBC physics lists, the Binary Cascade is used up to 4 <TT>GeV</TT>,
0196 the FTFP model between to 3.5 to 12 <TT>GeV</TT>, and QGSP above 11.5
0197 <TT>GeV</TT>.</LI>
0198 </UL>
0199
0200 <P> </P>
0201 <A NAME="5."></A>
0202 <HR>
0203
0204
0205
0206 <H2>5. Known Run-Time Problems and Limitations</H2>
0207
0208 For a complete list of outstanding run-time problems and to submit any
0209 problem you may find running this version of Geant4, please refer to the
0210 <A TARGET="ext" HREF="http://cern.ch/geant4/problemreport">Geant4 Problem Reporting
0211 System</A>.
0212
0213
0214 <P> </P>
0215 <A NAME="6."></A>
0216 <HR>
0217
0218
0219
0220 <H2>6. Compilation Warnings</H2>
0221
0222 There may be compilation warnings on some platforms. We do not believe
0223 that any will lead to incorrect run-time behaviour.
0224
0225
0226 <P> </P>
0227 <A NAME="7."></A>
0228 <HR>
0229
0230
0231
0232 <H2>7. Known Run-Time Warnings</H2>
0233
0234 The following message can be written to error output while tracking.
0235 We believe it does not give rise to incorrect behaviour.
0236 <PRE>
0237 G4PropagateInField: Warning: Particle is looping
0238 - tracking in field will be stopped.
0239 It has performed 1000 steps in Field while a maximum of 1000
0240 are allowed.
0241 </PRE>
0242
0243
0244 <P> </P>
0245 <A NAME="8."></A>
0246 <HR>
0247
0248
0249
0250 <H2>8. Geant4 Software License</H2>
0251
0252 A Software License applies to the Geant4 code.
0253 The details and the list of copyright holders is available at
0254 <A href="http://cern.ch/geant4/license">http://cern.ch/geant4/license</A>
0255 and also in a text file <TT>LICENSE</TT> distributed with the source code.
0256
0257 <P> </P>
0258 <A NAME="9."></A>
0259 <HR>
0260
0261
0262
0263 <H2>9. Detailed list of changes and fixes</H2>
0264
0265 These are the main new features/fixes included in this release since the
0266 last patched public release (for the detailed list of fixes/additions,
0267 please refer to the related History files provided in most packages):
0268
0269 <P> </P>
0270
0271 <A NAME="conf-notes">
0272 <H3><I>Configuration</I></H3></A>
0273 <UL>
0274 <LI>Protected generation of dependencies using internal <TT>make</TT> variable
0275 <TT>MAKECMDGOALS</TT> in <TT>binmake.gmk</TT> and <TT>common.gmk</TT>,
0276 following suggestion made in problem report #930. This protection resolves
0277 the problem of generation of dependencies when issueing the <TT>clean</TT>
0278 target.</LI>
0279 </UL>
0280
0281 <A NAME="digits-notes">
0282 <H3><I>Digitization & Hits</I></H3></A>
0283 <UL>
0284 <LI>Fixed way of counting outward steps in flux scorers.</LI>
0285 </UL>
0286
0287 <A NAME="emstd-notes">
0288 <H3><I>Electromagnetic Processes (High-energy and Standard)</I></H3></A>
0289 <UL>
0290 <LI><B>Muons</B>
0291 <UL>
0292 <LI><TT>G4MuPairProductionModel</TT>: added protection against zero or
0293 negative partial cross section inside <TT>SelectRandomAtom()</TT>
0294 method. Fixes problem reported when runnning tutorial example A01.</LI>
0295 <LI>Set <TT>linLossLimit</TT> to <TT>1.E-6</TT> in
0296 <TT>G4EnergyLossForExtrapolator</TT>.</LI>
0297 </UL></LI>
0298 <LI><B>Polarisation</B>
0299 <UL>
0300 <LI><TT>G4PolarizedGammaConversionModel</TT>: fixed non-initialised
0301 variable.</LI>
0302 </UL></LI>
0303 <LI><B>Standard</B>
0304 <UL>
0305 <LI><TT>G4UrbanMscModel</TT>:
0306 <UL>
0307 <LI>Fix in the single scattering code for heavy particles, now the code
0308 can be used with skin=1 e+/e- and for heavy particles as well.</LI>
0309 <LI>Added protections against NaN values in two places: sampling of
0310 <TT>theta</TT> when <TT>tau=0</TT> in lateral displacement, and in
0311 method <TT>ComputeTrueStepLength()</TT> for the case of zero true
0312 length.</LI>
0313 <LI>Stepping algorithm changed for <TT>skin=0</TT>, now there are 3
0314 stepping modes:
0315 <OL>
0316 <LI>Stepping similar to that performed in release 7.1;</LI>
0317 <LI><TT>skin=0</TT> - designed for high energy simulations with or
0318 without magnetic field;</LI>
0319 <LI><TT>skin=1</TT> - designed for 'precision' simulations without
0320 magnetic field.</LI>
0321 </OL></LI>
0322 <LI>If <TT>skin>1</TT>, perform small steps with single scattering before
0323 and after boundary the boundary. The step is reduced before boundary
0324 for <TT>geomlimit</TT> less than <TT>geombig</TT> only.</LI>
0325 <LI>Use <TT>tPathLength</TT> inside <TT>ComputeStep()</TT> instead of
0326 <TT>geombig</TT>.</LI>
0327 </UL></LI>
0328 <LI><TT>G4MultipleScattering, G4hMultipleScattering</TT>:
0329 <UL>
0330 <LI>Use <TT>skin</TT> parameter from the base class (default
0331 <TT>skin=0</TT>).</LI>
0332 </UL></LI>
0333 <LI><TT>G4eBremsstrahlungModel</TT>:
0334 <UL>
0335 <LI>Added reinitialisation of LPM flag between runs.</LI>
0336 <LI>Corrected <TT>LPMconstant</TT> by factor 2 (according to SLAC
0337 recent publication).</LI>
0338 </UL></LI>
0339 <LI><TT>G4BetheHeitlerModel</TT>: for any initial energy select atom of
0340 the material on which conversion occur (needed for polarisation
0341 module).</LI>
0342 <LI><TT>G4UniversalFluctuation</TT>: <TT>GLANDZ</TT> part of the
0343 fluctuation model has been completely rewritten, there is no longer
0344 distinct loss regime.</LI>
0345 <LI><TT>G4hIonisation</TT>: removed dependence on K+ and K- particles.</LI>
0346 </UL></LI>
0347 <LI><B>Utils</B>
0348 <UL>
0349 <LI><TT>G4VEnergyLossProcess</TT>:
0350 <UL>
0351 <LI>Use <TT>G4SafetyHelper</TT> instead of <TT>G4Navigator</TT> for
0352 determining distance to boundary, and added protection agains zero
0353 step length.</LI>
0354 </UL></LI>
0355 <LI><TT>G4VMultipleScattering</TT>:
0356 <UL>
0357 <LI>Added protection against zero step or energy.</LI>
0358 <LI>Added <TT>SetSkin()</TT> and <TT>Skin()</TT> methods.</LI>
0359 </UL></LI>
0360 <LI><TT>G4EmModelManager</TT>: added <TT>maxCutInRange</TT> variable for
0361 sub-cutoff option.</LI>
0362 <LI><TT>G4EmCalculator</TT>: added method <TT>ComputeEnergyCutFromRangeCut()</TT>.</LI>
0363 <LI><TT>G4EnergyLossMessenger</TT>: send message <TT>/run/physicsModified</TT>
0364 after all commands requiring reinitialisation.</LI>
0365 <LI><TT>G4LossTableManager, G4EmProcessOptions, G4EnergyLossMessenger</TT>:
0366 added commands for <TT>MscLateralDisplacement</TT>, <TT>MscSkin</TT>
0367 and <TT>linearLossLimit</TT>.</LI>
0368 <LI><TT>G4LossTableBuilder</TT>: use more precise algorithm to build
0369 inverse range table using <TT>G4LPhysicsFreeVector</TT>.</LI>
0370 <LI><TT>G4EmCorrections</TT>: taking mass of ion from <TT>G4IonTable</TT>
0371 to avoid division by zero.</LI>
0372 </UL></LI>
0373 </UL>
0374
0375 <A NAME="evt-notes">
0376 <H3><I>Event</I></H3></A>
0377 <UL>
0378 <LI>Prevent from unnecessary creation of <TT>G4String</TT> objects in
0379 <TT>G4Event</TT>, which were default for random number status.
0380 Use new flag in <TT>G4EventManager</TT>.</LI>
0381 </UL>
0382
0383 <A NAME="gen-notes">
0384 <H3><I>General Processes: Cuts, Scoring</I></H3></A>
0385 <UL>
0386 <LI><B>Cuts</B>
0387 <UL>
0388 <LI>Added method <TT>ConvertRangeToEnergy()</TT> to
0389 <TT>G4ProductionCutsTable</TT>.</LI>
0390 </UL></LI>
0391 <LI><B>Scoring</B>
0392 <UL>
0393 <LI>Fix to set step status for ghost pre-step point.</LI>
0394 </UL></LI>
0395 </UL>
0396
0397 <A NAME="geo-notes">
0398 <H3><I>Geometry</I></H3></A>
0399 <UL>
0400 <LI><B>Magnetic field</B>
0401 <UL>
0402 <LI>Corrected integration constants in <TT>G4MagHelicalStepper</TT>.</LI>
0403 <LI>Added implementation of <TT>G4RKG3_Stepper</TT>, stepper derived
0404 from Geant3.</LI>
0405 <LI><TT>G4MagIntegratorDriver</TT>: added protections against zero initial
0406 or internal step <TT>h=0</TT>; revised (re)calculation of <TT>h</TT>,
0407 and protect more against very small steps.</LI>
0408 </UL></LI>
0409 <LI><B>Management</B>
0410 <UL>
0411 <LI>Added accessors to stores for retrivial of volumes/solid by name.</LI>
0412 <LI>Modified signature of <TT>G4VPhysicalVolume::CheckOverlaps()</TT> to
0413 introduce ability of handling tolerances for overlaps.</LI>
0414 <LI>Do not reset <TT>RegionRootFlag</TT> in <TT>RemoveRootLogicalVolume()</TT>
0415 if volume is the world, since the volume itself may be already removed
0416 from the store if <TT>G4LogicalVolumeStore::Clean()</TT> is called.</LI>
0417 </UL></LI>
0418 <LI><B>Navigation</B>
0419 <UL>
0420 <LI>In G4Navigator, forcing call to <TT>CheckOverlaps()</TT> on the current
0421 volume before event abortion for cases of stuck tracks.</LI>
0422 <LI><TT>G4PropagatorInField</TT>: implemented <TT>ClearPropagatorState()</TT>
0423 to clear track-dependent state (safety, zero-steps, loop flag. etc...).
0424 Call to this method becomes mandatory in <TT>G4Transportation</TT> for
0425 each new track to overcome side effects of safety inconsistency in
0426 presence of geometry overlaps.</LI>
0427 <LI>Fixed case of out of range access in <TT>G4GeomTestSegment</TT>
0428 responsible for crashes observed when recursive-grid test for overlaps
0429 was run. Addressing problem report #784.</LI>
0430 </UL></LI>
0431 <LI><B>Solids (Specific)</B>
0432 <UL>
0433 <LI>Introduced new shape <TT>G4ExtrudedSolid</TT>, a solid representing
0434 the extrusion of an arbitrary polygon with fixed outline and
0435 multiple Z sections.</LI>
0436 <LI>G4TessellatedSolid:
0437 <UL>
0438 <LI>Made relevant solid's methods virtual, to be used as base
0439 class.</LI>
0440 <LI>Added implementation for <TT>GetSurfaceArea()</TT> and
0441 <TT>GetPointOnSurface()</TT> methods.</LI>
0442 <LI>Added protection in <TT>SurfaceNormal()</TT> method in case
0443 of facet not found.</LI>
0444 <LI>Check and return <TT>kOutside</TT> in <TT>Inside()</TT> if
0445 point out of solid's extent.</LI>
0446 <LI>Bug fix in <TT>G4TriangularFacet::Intersect()</TT> to allow
0447 for correct update of <TT>Distance</TT> in condition. Cleared
0448 unecessary declaration of <TT>IsInside()</TT> methods in both
0449 <TT>G4TriangularFacet</TT> and <TT>G4QuadrangularFacet</TT>.</LI>
0450 <LI>Fix in <TT>G4PolyconeSide::DistanceAway()</TT> for correct
0451 estimation of distance for the case of <TT>Phi</TT> sections.
0452 Addresses problem report #598.</LI>
0453 <LI>Fix in <TT>GetPointOnSurface()</TT> for <TT>G4Polycone</TT> to
0454 consider also points laying on rings when consecutive
0455 <TT>Z</TT>-sections are coincident. Added method
0456 <TT>GetPointOnRing()</TT>.</LI>
0457 </UL></LI>
0458 </UL></LI>
0459 <LI><B>Volumes</B>
0460 <UL>
0461 <LI>Extensions to the <TT>CheckOverlaps()</TT> algorithm:
0462 <UL>
0463 <LI>Added possibility to define a tolerance for reporting overlaps;
0464 added new argument to signature, by default tolerance is set to
0465 zero.</LI>
0466 <LI>Optimised implementation for detecting daughter volumes which are
0467 totally overlapping and checked in sequence.</LI>
0468 <LI>Added check on current volume to optimise and correctly handle the
0469 case of explicit call of the method when geometry is constructed.</LI>
0470 <LI>Made warning message more clear.</LI>
0471 </UL></LI>
0472 </UL></LI>
0473 </UL>
0474
0475 <A NAME="glob-notes">
0476 <H3><I>Global</I></H3></A>
0477 <UL>
0478 <LI>Added <TT>G4TwoVector</TT> type, typef of CLHEP's <TT>Hep2Vector</TT>
0479 class.</LI>
0480 <LI>Changed date for release 8.3.</LI>
0481 </UL>
0482
0483 <A NAME="greps-notes">
0484 <H3><I>Graphical Representations</I></H3></A>
0485 <UL>
0486 <LI><TT>G4VisAttributes</TT>:
0487 <UL>
0488 <LI>Bug fix in <TT>SetForceLineSegmentsPerCircle()</TT>; now correctly
0489 implementing the reset.</LI>
0490 <LI>Minor refinement: introduced <TT>IsForceLineSegmentsPerCircle()</TT>
0491 method.</LI>
0492 </UL></LI>
0493 <LI><TT>G4Colour</TT>: replaced static data members by static functions that
0494 create and copy out the relevant colours.</LI>
0495 </UL>
0496
0497 <A NAME="had-notes">
0498 <H3><I>Hadronic Processes</I></H3></A>
0499 <UL>
0500 <LI>Added model name for hadronic whiteboard error reporting.</LI>
0501 <LI><B>Cross sections</B>
0502 <UL>
0503 <LI>Extend user-chosen isotope abundance capability to several classes:
0504 <TT>G4UPiNuclearCrossSection</TT>, <TT>G4UInelasticCrossSection</TT>,
0505 <TT>G4UElasticCrossSection</TT>, <TT>G4GlauberGribovCrossSection</TT>,
0506 <TT>G4NucleonNuclearCrossSection</TT>.</LI>
0507 <LI><TT>G4PiNuclearCrossSection</TT>: removed special treatment ('tuning') for
0508 Copper (Z=29),i.e. the <TT>Cu</TT> cross section is no longer lowered
0509 by 4%.</LI>
0510 <LI>New classes added:
0511 <UL>
0512 <LI><TT>G4BGGNucleonElasticXS</TT>:
0513 provided proton and neutron elastic and cross section class
0514 (<TT>G4BGGNucleonElasticXS</TT>) which uses the Barashenkov
0515 parameterization below 100 GeV and Glauber-Gribov model above.</LI>
0516 <LI>also provided proton and neutron inelastic cross sections
0517 (<TT>G4BGGNucleonInelasticXS</TT>), pion elastic cross sections
0518 (<TT>G4BGGPionElasticXS</TT>), and pion inelastic cross sections
0519 (<TT>G4BGGPionInelasticXS</TT>) which combine the Barashenkov
0520 parameterization below 100 GeV and Glauber-Gribov model above.</LI>
0521 <LI><TT>G4NucleonNuclearCrossSection</TT> which contains Barashenkov
0522 cross sections for nucleon-nucleus scattering</LI>
0523 </UL></LI>
0524 <LI>Added protection against division by zero in method
0525 <TT>G4CrossSectionDataStore::SelectRandomIsotope()</TT>.</LI>
0526 <LI>Added handling of user-defined isotope abundances for elements and
0527 proper cross section and abundance weighted choice of isotopes in
0528 reactions. New virtual methods for <TT>IsApplicable()</TT> and
0529 <TT>GetCrossSections()</TT> added to classes
0530 <TT>G4VCrossSectionDataSet</TT> and <TT>G4CrossSectionDataStore</TT>.</LI>
0531 <LI><TT>G4HadronCrossSections::GetParticleCode()</TT>: following report from CMS,
0532 replaced code which tested by particle name with more performant code
0533 that tests by PDG ID. Also, use switch-case instead of else-if.</LI>
0534 </UL></LI>
0535 <LI><B>Management</B>
0536 <UL>
0537 <LI><TT>G4HadronicProcess</TT>:
0538 <UL>
0539 <LI>Removed unused <TT>AlwaysKillLeadingHadron()</TT> method.</LI>
0540 <LI>Fixed bug which was killing primaries in elastic scattering.</LI>
0541 <LI>Fix weighting error in leading particle killer.</LI>
0542 <LI>Added handling of user-defined isotopes: re-implemented methods
0543 <TT>GetMeanFreePath()</TT> and <TT>ChooseAandZ()</TT> to use new
0544 methods in <TT>G4CrossSectionDataStore</TT>.</LI>
0545 <LI>No longer use dispatch pointer to call data store methods.</LI>
0546 <LI>Remove data members <TT>currentZ</TT>, <TT>currentN</TT> and methods
0547 <TT>GetCurrentZ()</TT>, <TT>GetCurrentN()</TT>. They are no
0548 longer needed.</LI>
0549 </UL></LI>
0550 </UL></LI>
0551 <LI><B>Binary Cascade</B>
0552 <UL>
0553 <LI>Added protection against integrating zero <TT>timeStep</TT> in
0554 <TT>G4RKPropagation</TT>. This used to cause in some cases division
0555 by zero in integration.</LI>
0556 </UL></LI>
0557 <LI><B>Cascade</B>
0558 <UL>
0559 <LI>Added protection in <TT>G4ElementaryParticleCollider</TT> against negative
0560 value to <TT>sqrt()</TT>.</LI>
0561 </UL></LI>
0562 <LI><B>Chiral Invariant Phase Space (CHIPS)</B>
0563 <UL>
0564 <LI>Fix for NaN, protected coulomb barrier against divide by zero, now
0565 defaults to zero. Fix for NaN in <TT>G4QNucleus</TT> when using
0566 <TT>pow()</TT> and in <TT>G4QEnvironment</TT>.</LI>
0567 <LI>Completed implementation of G4QuasiFreeRatios which enables
0568 quasi-elastic scattering.</LI>
0569 <LI>To avoid early particle definition the CHIPS world is now created
0570 at run time in the processes <TT>G4QElastic</TT>, <TT>G4QCollision</TT>,
0571 and <TT>G4QCaptureAtRest</TT>.</LI>
0572 <LI><TT>G4QElastic</TT>:
0573 <UL>
0574 <LI>Fix for mis-use of units.</LI>
0575 <LI>Treat particles with <TT>E=0</TT> as alive for tracking purposes.</LI>
0576 </UL></LI>
0577 <LI>CHIPS model for muon capture now available. It is handled by
0578 <TT>G4QCaptureAtRest</TT>.</LI>
0579 <LI>Bug fix for muon-nuclear interactions.</LI>
0580 <LI>Bug fix for binomial distribution with <TT>p=1,q=0</TT> in <TT>G4QNucleus</TT>.</LI>
0581 </UL></LI>
0582 <LI><B>Elastic scattering</B>
0583 <UL>
0584 <LI>Speed up coherent hadron-nucleus scattering (<TT>G4ElasticHadrNucleusHE</TT>)
0585 by using iterator search on bin instead of computing <TT>log()</TT>.</LI>
0586 <LI><TT>G4HadronElastic</TT>:
0587 <UL>
0588 <LI>Use the most probable isotope for given Z to call the high energy part
0589 of the model (CPU/memory more efficient).</LI>
0590 <LI>HElastic model for projectile energy above 1 <TT>GeV</TT> is used
0591 for all targets with <TT>Z>1</TT>.</LI>
0592 </UL></LI>
0593 <LI><TT>G4UHadronElasticProcess</TT>: fixed bug in number of neutrons in
0594 CHIPS interface.</LI>
0595 <LI><TT>G4HadronElastic</TT>, <TT>G4ChargeExchange</TT>: more accurately
0596 compute Z and A.</LI>
0597 <LI><TT>G4UHadronElasticProcess</TT> and <TT>G4ChargeExchangeProcess</TT>:
0598 <UL>
0599 <LI>Fixed bug of undefined isotope vector</LI>
0600 <LI>Migrated to interface for isotope-dependent cross sections;
0601 do not use QElastic total cross sections in
0602 <TT>G4ChargeExchangeProcess</TT>.</LI>
0603 </UL></LI>
0604 </UL></LI>
0605 <LI><B>High Energy</B>
0606 <UL>
0607 <LI>Added <TT>G4QuasiElasticChannel</TT> to simulate quasi-elastic
0608 scattering. Relies on CHIPS class <TT>G4QuasiFreeRatios</TT>.</LI>
0609 <LI>Modified <TT>G4TheoFSGenerator</TT> to use <TT>G4QuasiElasticChannel</TT>
0610 and add quasi-elastic scattering for string models, and use these in
0611 competition to the string model.</LI>
0612 </UL></LI>
0613 <LI><B>Low Energy</B>
0614 <UL>
0615 <LI><TT>G4LEAntiProtonInelastic</TT>: for low energy (< 0.1 MeV)
0616 anti-protons, the model was simply returning the particle change which
0617 had not yet been initialized, thus leading to an infinite loop. Now
0618 model returns particle change initialized from the original kinematics.
0619 Addresses problem report #888.</LI>
0620 <LI>All Low Energy models: added model name to constructor for use in
0621 traceback and debugging.</LI>
0622 <LI><TT>G4LElastic</TT>: added protection against <TT>sqrt()</TT> of
0623 negative value.</LI>
0624 </UL></LI>
0625 <LI><B>Parton String</B>
0626 <UL>
0627 <LI>Several modifications made to <TT>G4VLongitudinalStringFragmentation</TT>
0628 for use in FTF model. This was taken from the original QGS code.</LI>
0629 <LI>Revised FTF model now available. Single diffraction was added and
0630 hadronization was improved. Management and qgsm modules also affected.</LI>
0631 <LI><TT>G4ExcitedStringDecay::EnergyAndMomentumCorrector()</TT>, no longer
0632 causes exception when not converging. Added more info when failing and
0633 return correct status. Added protection in <TT>G4ExcitedStringDecay</TT>
0634 against division by 0.</LI>
0635 </UL></LI>
0636 <LI><B>Pre-Compound</B>
0637 <UL>
0638 <LI>Added protection against division by zero in
0639 <TT>G4PreCompoundTransitions</TT>.</LI>
0640 </UL></LI>
0641 <LI><B>Utils</B>
0642 <UL>
0643 <LI><TT>G4HadronicWhiteboard</TT>: added methods to set process and model
0644 names.</LI>
0645 <LI><TT>G4ReactionDynamics</TT>: added pi0 to anti-particle test.</LI>
0646 </UL></LI>
0647 </UL>
0648
0649 <A NAME="part-notes">
0650 <H3><I>Particles</I></H3></A>
0651 <UL>
0652 <LI>Added protection against negative argument to <TT>sqrt()</TT> in
0653 <TT>G4DecayProducts::Boost()</TT>.</LI>
0654 </UL>
0655
0656 <A NAME="lst-notes">
0657 <H3><I>Physics lists</I></H3></A>
0658 <UL>
0659 <LI>Added quasi-elastic in QGSP physics list; this required changes to:
0660 <UL>
0661 <LI>QGSP{proton,Neutron,PiK} Builder, adding <TT>QuasiElasticChannel</TT> on
0662 conditional flag.</LI>
0663 <LI><TT>HadronPhysicsQGSP</TT> passes flag (default=<TT>false</TT>) to
0664 Builders.</LI>
0665 <LI>QGSP uses flag to include quasi-elastic.</LI>
0666 </UL></LI>
0667 <LI>New list QGSP_NQSE, a copy of QGSP without quasi-elastic.</LI>
0668 <LI>For QGSC, QGSC_EMV, and QGSC_EFLOW enable use of <TT>G4QCaptureAtRest()</TT>
0669 also for muons. Changes made in <TT>G4QStoppingPhysics</TT> as well.</LI>
0670 <LI>Modifications for Quasi-elastic. Added to all QGS physics lists execpt
0671 the two obsolete QGSC_LEAD/QGSC_LEAD_HP. This also required adapting of
0672 <TT>HadronsPhysicsXYZ</TT> and {QGSP;QGSC;QGSC_EFLOW}{Neutron,Proton,PiK}
0673 Builders.</LI>
0674 <LI>Removed unnecessary <TT>HadronPhysics...{EMV,EMX}</TT> classes.</LI>
0675 <LI>Adopting recent upgrades in QGS and FTF for the QBBC physics list.</LI>
0676 <LI>Set <TT>skin</TT> to zero in <TT>G4EmStandardPhysics7</TT> (i.e. no use
0677 of <TT>ComputeStep()</TT> in multiple-scattering).</LI>
0678 <LI><TT>G4HadronHElasticPhysics</TT> uses new cross section classes
0679 <TT>G4BGGNucleonElasticXS</TT> and <TT>G4BGGPionElasticXS</TT>.</LI>
0680 <LI><TT>G4HadronElasticPhysics</TT>: set limits on low energy and QElastic
0681 to zero.</LI>
0682 <LI>Fixed special cuts for LBE physics list.</LI>
0683 <LI>Added set min/max Energy and Inelastic Energy to NeutronHP builder.</LI>
0684 <LI><TT>G4EmStandardPhysics</TT>:
0685 <UL>
0686 <LI>Use <TT>G4hMultipleScattering</TT> for muons and removed extra
0687 printouts.</LI>
0688 <LI>Use default multiple-scattering setup in <TT>G4EmStandardPhysics72</TT>.</LI>
0689 <LI>Use <TT>skin=0</TT> (no use of <TT>ComputeStep()</TT> in
0690 multiple-scattering) in <TT>G4EmStandardPhysics</TT> and
0691 <TT>G4EmStandardPhysics71</TT>.</LI>
0692 </UL></LI>
0693 <LI>Added new physics list QGSP_BERT_TRV, based on QGSP_BERT, but changing
0694 to Bertini Cascade occurs at 5.0-5.4 <TT>GeV</TT> for proton, neutron,
0695 pion and kaon.</LI>
0696 <LI>Increased version number to 5.2.</LI>
0697 </UL>
0698
0699 <A NAME="run-notes">
0700 <H3><I>Run</I></H3></A>
0701 <UL>
0702 <LI>Prevent from unnecessary creation of <TT>G4String</TT> objects in
0703 <TT>G4Event</TT>, which were default for random number status.</LI>
0704 <LI>Added new <TT>G4RunManager</TT> flag and corresponding UI command.</LI>
0705 </UL>
0706
0707 <A NAME="vis-notes">
0708 <H3><I>Visualization</I></H3></A>
0709 <UL>
0710 <LI><B>Management</B>
0711 <UL>
0712 <LI>Added command <TT>/vis/abortReviewKeptEvents</TT> and improved
0713 guidance of command <TT>/vis/reviewKeptEvents</TT>.</LI>
0714 <LI>Introduced command <TT>/vis/geometry/set/forceLineSegmentsPerCircle</TT>.</LI>
0715 <LI>Fixed bug concerning call to <TT>/vis/open</TT> in
0716 <TT>/vis/reviewKeptEvents</TT> loop.</LI>
0717 <LI><TT>G4VSceneHandler</TT>:
0718 <UL>
0719 <LI>Introduced utility <TT>LoadAtts()</TT> for <TT>G4AttValues</TT>
0720 and <TT>G4AttDefs</TT>.</LI>
0721 <LI>Improved other utilities (changed signature of
0722 <TT>GetLineWidth()</TT>).</LI>
0723 </UL></LI>
0724 <LI>Reduced WARNING noise and other minor improvements.</LI>
0725 </UL></LI>
0726 <LI><B>Modeling</B>
0727 <UL>
0728 <LI>Bug fix: corrected treatment of <TT>ForcedLineSegmentsPerCircle</TT>
0729 when clipping.</LI>
0730 </UL></LI>
0731 <LI><B>OpenGL</B>
0732 <UL>
0733 <LI>Implemented bitmap markers (for <TT>MarkerSizeType == screen</TT>).</LI>
0734 <LI>Bug fix: added missing break in X colormap lookup routine.</LI>
0735 <LI>Adapted to change of signature of <TT>GetLineWidth()</TT>.</LI>
0736 <LI>Fixed Windows problem with <TT>DBL_MAX</TT> and compilation warnings.</LI>
0737 <LI><TT>G4OpenGLXViewer</TT>: Small bug fix in <TT>print()</TT>;
0738 context was switched but not switched back.</LI>
0739 </UL></LI>
0740 <LI><B>OpenInventor</B>
0741 <UL>
0742 <LI>Moved <TT>LoadAtts()</TT> to vis management module.</LI>
0743 </UL></LI>
0744 <LI><B>RayTracer</B>
0745 <UL>
0746 <LI>Bug fix: use of window size hints.</LI>
0747 </UL></LI>
0748 <LI><B>ASCIITree</B>
0749 <UL>
0750 <LI>Bug fix: format of total mass.</LI>
0751 </UL></LI>
0752 </UL>
0753
0754 <A NAME="ex-notes">
0755 <H3><I>Examples</I></H3></A>
0756 <UL>
0757 <LI>Updated reference outputs.</LI>
0758 <LI><B>extended</B>
0759 <UL>
0760 <LI>electromagnetic/TestEm2
0761 <UL>
0762 <LI>Uncommented hadron ionisation in Livermore builder.</LI>
0763 </UL></LI>
0764 <LI>electromagnetic/TestEm3
0765 <UL>
0766 <LI>Fixed compilation problem on SUN.</LI>
0767 <LI>Added command <TT>/testem/run/limitEdep</TT> allowing to compute
0768 restricted mean values to supress big statistical fluctuations.</LI>
0769 <LI>Updated command <TT>/testem/run/acceptance</TT>.</LI>
0770 <LI>Parameter <TT>skin=1</TT> is set as default PhysList.</LI>
0771 <LI>Added macro <TT>emtutor.mac</TT>.</LI>
0772 <LI>Added physics-lists names: penelope, livermore.</LI>
0773 <LI>Restored random seed storage.</LI>
0774 <LI>By default do not store random seed and do not activate VisManager
0775 in batch.</LI>
0776 <LI>Added <TT>G4standard_exp</TT> PhysList. Added material Lucite.</LI>
0777 <LI>Return Z-position computation.</LI>
0778 </UL></LI>
0779 <LI>electromagnetic/TestEm5
0780 <UL>
0781 <LI>Use all default values in default PhysList.</LI>
0782 <LI>Use hadronic builders from physics_lists library.</LI>
0783 </UL></LI>
0784 <LI>electromagnetic/TestEm7
0785 <UL>
0786 <LI>Parameter <TT>skin=1</TT> is set as default PhysList.</LI>
0787 <LI>Added physics-lists names: penelope, livermore.</LI>
0788 <LI>Fixed usage of elastic builders in PhysicsList.</LI>
0789 </UL></LI>
0790 <LI>electromagnetic/TestEm9
0791 <UL>
0792 <LI>Compute truncated mean values to reduce statistical fluctuations
0793 and fixed output of statistics.</LI>
0794 <LI>Added physics-lists names: penelope, livermore.</LI>
0795 <LI>Uncommented hadron ionisation in Livermore builder.</LI>
0796 </UL></LI>
0797 <LI>electromagnetic/TestEm12
0798 <UL>
0799 <LI>Uncommented hadron ionisation in Livermore builder.</LI>
0800 <LI><TT>HistoManager</TT>: by default, get <TT>csdaRange</TT> from
0801 <TT>G4EmCalculator</TT>.</LI>
0802 </UL></LI>
0803 <LI>electromagnetic/TestEm13, TestEm14
0804 <UL>
0805 <LI><TT>vis.mac</TT>: suppressed command drawTracks.</LI>
0806 </UL></LI>
0807 <LI>electromagnetic/TestEm15
0808 <UL>
0809 <LI>SteppingAction: added protection if no lateral displacement.</LI>
0810 </UL></LI>
0811 <LI>electromagnetic/TestEm18
0812 <UL>
0813 <LI>New example allowing for studying the energy lost by a charged
0814 particle in a single layer, due to ionization and bremsstrahlung.
0815 Results are compared to 'reference' values.</LI>
0816 </UL></LI>
0817 <LI>field/field03
0818 <UL>
0819 <LI>Fixed bug in <TT>F03FieldSetup</TT> for the activation of local
0820 fields.</LI>
0821 </UL></LI>
0822 <LI>hadronic/Hadr01
0823 <UL>
0824 <LI>PhysicsList update according to QBBC and quasi-elastic
0825 modifications.</LI>
0826 <LI>Fix in QGSP_BIC_HP physics list.
0827 Addressing problem report #937.</LI>
0828 </UL></LI>
0829 <LI>medical/fanoCavity
0830 <UL>
0831 <LI>New example for computing the dose deposited in an ionization
0832 chamber by a monoenergetic photon beam.</LI>
0833 </UL></LI>
0834 <LI>radioactivedecay/exrdm
0835 <UL>
0836 <LI>Fixed usage of physics-lists.</LI>
0837 </UL></LI>
0838 <LI>runAndEvent
0839 <UL>
0840 <LI>RE01: Removed large-N reference output.</LI>
0841 </UL></LI>
0842 </UL></LI>
0843 </UL>
0844
0845 <HR>
0846
0847 </BODY>
0848 </HTML>