source: trunk/ReleaseNotes/ReleaseNotes4.8.3.html @ 1337

Last change on this file since 1337 was 1337, checked in by garnier, 14 years ago

tag geant4.9.4 beta 1 + modifs locales

File size: 33.7 KB
Line 
1<HTML>
2<HEAD>
3<TITLE>Geant4 8.3 Release Notes</TITLE>
4</HEAD>
5<BODY BGCOLOR='F0F0F0'>
6
7<P> </P>
8<BR>
9<P> </P>
10
11<P ALIGN="Center">
12<FONT SIZE="+4" COLOR="#238E23">
13<B>Geant4 8.3 Release Notes</B>
14</FONT>
15
16<TABLE WIDTH="100%">
17<TR><TD ALIGN="Right">
18<FONT SIZE="-1" COLOR="#5C3317">
19<B><I>May 4<SUP>th</SUP>, 2007</I></B>
20</FONT>
21</TD></TR>
22</TABLE>
23
24<BR><BR>
25<HR ALIGN="Center" SIZE="7%">
26<P>
27The code and binary libraries for the supported systems are available
28through our <A TARGET="ext" HREF="http://cern.ch/geant4/support/download.shtml">Source
29Code Web page</A>.
30</P>
31<P>
32Please refer to the
33<A TARGET="ext" HREF="http://cern.ch/geant4/support/userdocuments.shtml">Geant4
34User Documentation</A> for further information about using Geant4.
35</P>
36
37<H2><I>Contents</I></H2>
38<OL>
39<LI><A HREF="#1.">Supported and Tested Platforms</A></LI>
40<LI><A HREF="#2.">CLHEP and AIDA</A></LI>
41<LI><A HREF="#3.">Items for migration of the user code</A></LI>
42<LI><A HREF="#4.">Expected effects on physics and performance</A></LI>
43<LI><A HREF="#5.">Known Run-Time Problems</A></LI>
44<LI><A HREF="#6.">Compilation Warnings</A></LI>
45<LI><A HREF="#7.">Known Run-Time Warnings</A></LI>
46<LI><A HREF="#8.">Geant4 Software License</A></LI>
47<LI><A HREF="#9.">Detailed list of changes and fixes</A></LI>
48</OL>
49
50<P> </P>
51<A NAME="1."></a>
52<HR>
53
54<!-- ============================================== -->
55
56<H2>1. Supported and Tested Platforms</H2>
57
58Official platforms:
59<UL>
60<LI>SUN Solaris 5.8, C++ CC-5.5.</LI>
61<LI>Linux, gcc 3.2.3 or gcc 3.4.5.<BR>
62    This configuration was tested on <I>32 bits architectures (Intel)</I>
63    and <I>64 bits architectures (AMD)</I> with the Scientific Linux CERN 3
64    (SLC3) distribution (based on RedHat Linux Enterprise 3) and
65    Scientific Linux CERN 4 (SLC4) distribution (based on RedHat Linux
66    Enterprise 4).
67    Versions of Geant4 have also been compiled successfully on other
68    Linux distributions, like Debian, Suse or other RedHat systems.</LI>
69<LI>Windows/XP and CygWin Tools with: Visual C++ 7.1 .NET</LI>
70</UL>
71
72More verified configurations:
73<UL>
74<LI>SUN Solaris 5.8, C++ CC-5.4 Patch 111715-02</LI>
75<LI>Linux, gcc-4.1.2</LI>
76<LI>Linux, Intel-icc 9.1</LI>
77<LI>MacOS 10.4, gcc-4.0.1</LI>
78<LI>Windows/XP and CygWin Tools with: Visual C++ 8.0 (Visual Studio 2005)</LI>
79</UL>
80
81Platforms configured but not tested and not supported:
82<UL>
83<LI>AIX 4.3.2, xlC 6.0</LI>
84<LI>DEC V4.0, cxx C++ V6.1-027</LI>
85<LI>HP 10.20, aCC C++ B3910B A.01.23</LI>
86<LI>SGI V6.5.5, CC 7.2.1</LI>
87</UL>
88
89<P> </P>
90<A NAME="2."></A>
91<HR>
92
93<!-- ============================================== -->
94
95<H2>2. CLHEP and AIDA</H2>
96
97Geant4 8.3 requires the installation of
98<A TARGET="ext" HREF="http://cern.ch/clhep">CLHEP</A>.<BR>
99Tests have been performed with <B>CLHEP-2.0.3.1</B><BR>
100The software has been verified also with <B>CLHEP-1.9.3.1</B>.<BR>
101<P> </P>
102Geant4 8.3 examples with histogramming cowork with analysis tools compliant
103to AIDA 3.2.1 interfaces.<BR>
104AIDA headers can be downloaded from:
105<A TARGET="ext" HREF="http://aida.freehep.org">http://aida.freehep.org</A>
106
107
108<P> </P>
109<A NAME="3."></A>
110<HR>
111
112<!-- ============================================== -->
113
114<H2>3. Items for migration of the user code</H2>
115
116No particular migrations are required in order to upgrade from release 8.2
117to release 8.3.
118Note that a full re-installation of libraries (or a full recompilation) and
119a recompilation of user applications is anyhow required.
120
121<P> </P>
122<A NAME="4."></A>
123<HR>
124
125<!-- ============================================== -->
126
127<H2>4. Expected effects on physics and performance</H2>
128
129<B>Standard Electromagnetic physics</B>
130<UL>
131<LI>No visible effects in CPU performance.</LI>
132<LI>Calorimeter response: stable within 1% for visible energy and resolution.</LI>
133<LI>Energy deposition in thin layers: stable for step size down to <TT>1 um</TT>.</LI>
134</UL>
135
136<B>Hadronic physics</B>
137<UL>
138  <LI><U>Revised hadronic modeling, resulting in longer shower shapes</U>:<BR>
139      the FTF model now has improved treatment of diffraction.  As a result
140      the longitudinal shower component now starts later and ends later, which
141      goes in the direction of the data. The addition of quasi-elastic
142      scattering (<TT>G4QuasiElasticChannel</TT>) to the QGS model is also
143      expected to improve shower shapes by reducing the deep inelastic component.</LI>
144  <LI><U>New cross section data sets added</U>:<BR>
145      Barashenkov parameterised cross sections are now available for elastic
146      and inelastic nucleon-nucleus and elastic and inelastic pion-nucleus
147      scattering.</LI>
148  <LI><U>Cross sections for user-defined elements</U>:<BR>
149      cross sections are now calculated based on user-defined isotope
150      abundances, if they are provided. Natural abundances are used
151      otherwise.</LI>
152  <LI><U>Improved muon capture model</U>:<BR>
153      <TT>G4QCaptureAtRest</TT> model provides more accurate final state
154      electron spectrum for muon capture and more accurate secondary hadron
155      sprectra for hadron capture.</LI>
156  <LI><U>Error reporting</U>:<BR>
157      when a segmentation fault occurs in a hadronic process, the information
158      about the process and model name where the fault has occurred will be
159      printed out.</LI>
160</UL> 
161
162<B>Physics Lists</B>
163<UL>
164<LI>FTFP and FTFC use a significantly revised FTF model. Comparisons to thin
165    target experiment at ~10 <TT>GeV</TT> show much better agreement with data;
166    the model is still under validation at higher energies. Prelimirary tests
167    display slightly longer showers than the previous version of FTFP/FTFC.</LI>
168<LI>QGS type physics lists (QGSP, QGSC, QGSP_BERT, etc) now include a simple
169    quasi-elastic model for a small fraction of high energy inelastic
170    interactions. The cross-section parameterisations for inelastic
171    interactions include the quasi-elastic cross-section, while QGS only
172    models deep inelastic interactions.
173    <UL>
174    <LI>For comparison or backward compatibility, the new QGSP_NQE,
175        QGSP_EMV_NEQ, and QGSP_BERT_NQE ignore this new quasi-elastic,
176        and are therefore the equivalent of QGSP, QGSP_EMV, and QGSP_BERT
177        available in release 8.2 and before.</LI>
178    <LI>Also, the obsolete QGSP_LEAD/QGSP_LEAD_HP do not include
179        quasi-elastic.</LI>
180    </UL></LI>
181<LI>QGSC physics list and its variants use CHIPS <TT>G4QCaptureAtRest</TT>
182    to model capture of muons at rest instead of <TT>G4MuonMinusCaptureAtRest</TT>.
183    This model better reproduces the spectrum of secondaries close to the
184    kinematic limit.</LI>
185<LI>The new physics list QGSP_BERT_TRV is a variant of QGSP_BERT where Bertini
186    cascade model is used only up to energies of 5.4 <TT>GeV</TT> for protons,
187    neutrons, pions and kaons. For comparisons QGSP_BERT uses Bertini cascade
188    model up to 9.9 <TT>GeV</TT>.</LI>   
189<LI>HElastic model for projectile energy above 1 <TT>GeV</TT> is used for all
190    targets with <TT>Z&gt;1</TT>.</LI>
191<LI>In all lists for electro-magnetic physics, the "skin" for
192    multiple-scattering on boundaries is set to zero, meaning that no
193    computation of the linear distance to the geometrical boundaries is
194    made by the multiple-scattering model.</LI>
195<LI>In the QBBC physics lists, the Binary Cascade is used up to 4 <TT>GeV</TT>,
196    the FTFP model between to 3.5 to 12 <TT>GeV</TT>, and QGSP above 11.5
197    <TT>GeV</TT>.</LI>
198</UL>
199
200<P> </P>
201<A NAME="5."></A>
202<HR>
203
204<!-- ============================================== -->
205
206<H2>5. Known Run-Time Problems and Limitations</H2>
207
208For a complete list of outstanding run-time problems and to submit any
209problem you may find running this version of Geant4, please refer to the
210<A TARGET="ext" HREF="http://cern.ch/geant4/problemreport">Geant4 Problem Reporting
211System</A>.
212
213
214<P> </P>
215<A NAME="6."></A>
216<HR>
217
218<!-- ============================================== -->
219
220<H2>6. Compilation Warnings</H2>
221
222There may be compilation warnings on some platforms.  We do not believe
223that any will lead to incorrect run-time behaviour.
224
225
226<P> </P>
227<A NAME="7."></A>
228<HR>
229
230<!-- ============================================== -->
231
232<H2>7. Known Run-Time Warnings</H2>
233
234The following message can be written to error output while tracking.
235We believe it does not give rise to incorrect behaviour.
236<PRE>
237    G4PropagateInField: Warning: Particle is looping
238    -  tracking in field will be stopped.
239       It has performed 1000 steps in Field while a maximum of 1000
240       are allowed.
241</PRE>
242
243
244<P> </P>
245<A NAME="8."></A>
246<HR>
247
248<!-- ============================================== -->
249
250<H2>8. Geant4 Software License</H2>
251
252A Software License applies to the Geant4 code.
253The details and the list of copyright holders is available at
254<A href="http://cern.ch/geant4/license">http://cern.ch/geant4/license</A>
255and also in a text file <TT>LICENSE</TT> distributed with the source code.
256
257<P> </P>
258<A NAME="9."></A>
259<HR>
260
261<!-- ============================================== -->
262
263<H2>9. Detailed list of changes and fixes</H2>
264
265These are the main new features/fixes included in this release since the
266last patched public release (for the detailed list of fixes/additions,
267please refer to the related History files provided in most packages):
268
269<P> </P>
270
271<A NAME="conf-notes">
272<H3><I>Configuration</I></H3></A>
273<UL>
274<LI>Protected generation of dependencies using internal <TT>make</TT> variable
275    <TT>MAKECMDGOALS</TT> in <TT>binmake.gmk</TT> and <TT>common.gmk</TT>,
276    following suggestion made in problem report #930. This protection resolves
277    the problem of generation of dependencies when issueing the <TT>clean</TT>
278    target.</LI>
279</UL>
280
281<A NAME="digits-notes">
282<H3><I>Digitization & Hits</I></H3></A>
283<UL>
284<LI>Fixed way of counting outward steps in flux scorers.</LI>
285</UL>
286
287<A NAME="emstd-notes">
288<H3><I>Electromagnetic Processes (High-energy and Standard)</I></H3></A>
289<UL>
290<LI><B>Muons</B>
291    <UL>
292    <LI><TT>G4MuPairProductionModel</TT>: added protection against zero or
293        negative partial cross section inside <TT>SelectRandomAtom()</TT>
294        method. Fixes problem reported when runnning tutorial example A01.</LI>
295    <LI>Set <TT>linLossLimit</TT> to <TT>1.E-6</TT> in
296        <TT>G4EnergyLossForExtrapolator</TT>.</LI>
297    </UL></LI>
298<LI><B>Polarisation</B>
299    <UL>
300    <LI><TT>G4PolarizedGammaConversionModel</TT>: fixed non-initialised
301        variable.</LI>
302    </UL></LI>
303<LI><B>Standard</B>
304    <UL>
305    <LI><TT>G4UrbanMscModel</TT>:
306        <UL>
307        <LI>Fix in the single scattering code for heavy particles, now the code
308            can be used with skin=1 e+/e- and for heavy particles as well.</LI>
309        <LI>Added protections against NaN values in two places: sampling of
310            <TT>theta</TT> when <TT>tau=0</TT> in lateral displacement, and in
311            method <TT>ComputeTrueStepLength()</TT> for the case of zero true
312            length.</LI>
313        <LI>Stepping algorithm changed for <TT>skin=0</TT>, now there are 3
314            stepping modes:
315            <OL>
316            <LI>Stepping similar to that performed in release 7.1;</LI>
317            <LI><TT>skin=0</TT> - designed for high energy simulations with or
318                without magnetic field;</LI>
319            <LI><TT>skin=1</TT> - designed for 'precision' simulations without
320                magnetic field.</LI>
321            </OL></LI>
322        <LI>If <TT>skin>1</TT>, perform small steps with single scattering before
323            and after boundary the boundary. The step is reduced before boundary
324            for <TT>geomlimit</TT> less than <TT>geombig</TT> only.</LI>
325        <LI>Use <TT>tPathLength</TT> inside <TT>ComputeStep()</TT> instead of
326           <TT>geombig</TT>.</LI>
327        </UL></LI> 
328    <LI><TT>G4MultipleScattering, G4hMultipleScattering</TT>:
329        <UL>
330        <LI>Use <TT>skin</TT> parameter from the base class (default
331            <TT>skin=0</TT>).</LI>
332        </UL></LI>
333    <LI><TT>G4eBremsstrahlungModel</TT>:
334        <UL>
335        <LI>Added reinitialisation of LPM flag between runs.</LI>
336        <LI>Corrected <TT>LPMconstant</TT> by factor 2 (according to SLAC
337            recent publication).</LI>
338         </UL></LI>
339    <LI><TT>G4BetheHeitlerModel</TT>: for any initial energy select atom of
340        the material on which conversion occur (needed for polarisation
341        module).</LI>
342    <LI><TT>G4UniversalFluctuation</TT>: <TT>GLANDZ</TT> part of the
343        fluctuation model has been completely rewritten, there is no longer
344        distinct loss regime.</LI>
345    <LI><TT>G4hIonisation</TT>: removed dependence on K+ and K- particles.</LI>
346    </UL></LI>
347<LI><B>Utils</B>
348    <UL>
349    <LI><TT>G4VEnergyLossProcess</TT>:
350        <UL>
351        <LI>Use <TT>G4SafetyHelper</TT> instead of <TT>G4Navigator</TT> for
352            determining distance to boundary, and added protection agains zero
353            step length.</LI>
354        </UL></LI>
355    <LI><TT>G4VMultipleScattering</TT>:
356        <UL>
357        <LI>Added protection against zero step or energy.</LI>
358        <LI>Added <TT>SetSkin()</TT> and <TT>Skin()</TT> methods.</LI>
359        </UL></LI>
360    <LI><TT>G4EmModelManager</TT>: added <TT>maxCutInRange</TT> variable for
361        sub-cutoff option.</LI>
362    <LI><TT>G4EmCalculator</TT>: added method <TT>ComputeEnergyCutFromRangeCut()</TT>.</LI>
363    <LI><TT>G4EnergyLossMessenger</TT>: send message <TT>/run/physicsModified</TT>
364        after all commands requiring reinitialisation.</LI>
365    <LI><TT>G4LossTableManager, G4EmProcessOptions, G4EnergyLossMessenger</TT>:
366        added commands for <TT>MscLateralDisplacement</TT>, <TT>MscSkin</TT>
367        and <TT>linearLossLimit</TT>.</LI>
368    <LI><TT>G4LossTableBuilder</TT>: use more precise algorithm to build
369        inverse range table using <TT>G4LPhysicsFreeVector</TT>.</LI>
370    <LI><TT>G4EmCorrections</TT>: taking mass of ion from <TT>G4IonTable</TT>
371        to avoid division by zero.</LI>
372    </UL></LI>
373</UL>
374
375<A NAME="evt-notes">
376<H3><I>Event</I></H3></A>
377<UL>
378<LI>Prevent from unnecessary creation of <TT>G4String</TT> objects in
379    <TT>G4Event</TT>, which were default for random number status.
380    Use new flag in <TT>G4EventManager</TT>.</LI>
381</UL>
382
383<A NAME="gen-notes">
384<H3><I>General Processes: Cuts, Scoring</I></H3></A>
385<UL>
386<LI><B>Cuts</B>
387    <UL>
388    <LI>Added method <TT>ConvertRangeToEnergy()</TT> to
389        <TT>G4ProductionCutsTable</TT>.</LI>
390    </UL></LI>
391<LI><B>Scoring</B>
392    <UL>
393    <LI>Fix to set step status for ghost pre-step point.</LI>
394    </UL></LI>
395</UL>
396
397<A NAME="geo-notes">
398<H3><I>Geometry</I></H3></A>
399<UL>
400<LI><B>Magnetic  field</B>
401    <UL>
402    <LI>Corrected integration constants in <TT>G4MagHelicalStepper</TT>.</LI>
403    <LI>Added implementation of <TT>G4RKG3_Stepper</TT>, stepper derived
404        from Geant3.</LI>
405    <LI><TT>G4MagIntegratorDriver</TT>: added protections against zero initial
406        or internal step <TT>h=0</TT>; revised (re)calculation of <TT>h</TT>,
407        and protect more against very small steps.</LI>
408    </UL></LI>
409<LI><B>Management</B>
410    <UL>
411    <LI>Added accessors to stores for retrivial of volumes/solid by name.</LI>
412    <LI>Modified signature of <TT>G4VPhysicalVolume::CheckOverlaps()</TT> to
413        introduce ability of handling tolerances for overlaps.</LI>
414    <LI>Do not reset <TT>RegionRootFlag</TT> in <TT>RemoveRootLogicalVolume()</TT>
415        if volume is the world, since the volume itself may be already removed
416        from the store if <TT>G4LogicalVolumeStore::Clean()</TT> is called.</LI>
417    </UL></LI>
418<LI><B>Navigation</B>
419    <UL>
420    <LI>In G4Navigator, forcing call to <TT>CheckOverlaps()</TT> on the current
421        volume before event abortion for cases of stuck tracks.</LI>
422    <LI><TT>G4PropagatorInField</TT>: implemented <TT>ClearPropagatorState()</TT>
423        to clear track-dependent state (safety, zero-steps, loop flag. etc...).
424        Call to this method becomes mandatory in <TT>G4Transportation</TT> for
425        each new track to overcome side effects of safety inconsistency in
426        presence of geometry overlaps.</LI>
427    <LI>Fixed case of out of range access in <TT>G4GeomTestSegment</TT>
428        responsible for crashes observed when recursive-grid test for overlaps
429        was run. Addressing problem report #784.</LI>
430    </UL></LI>
431<LI><B>Solids (Specific)</B>
432    <UL>
433    <LI>Introduced new shape <TT>G4ExtrudedSolid</TT>, a solid representing
434        the extrusion of an arbitrary polygon with fixed outline and
435        multiple Z sections.</LI>
436    <LI>G4TessellatedSolid:
437        <UL>
438        <LI>Made relevant solid's methods virtual, to be used as base
439            class.</LI>
440        <LI>Added implementation for <TT>GetSurfaceArea()</TT> and
441            <TT>GetPointOnSurface()</TT> methods.</LI>
442        <LI>Added protection in <TT>SurfaceNormal()</TT> method in case
443            of facet not found.</LI>
444        <LI>Check and return <TT>kOutside</TT> in <TT>Inside()</TT> if
445            point out of solid's extent.</LI>
446        <LI>Bug fix in <TT>G4TriangularFacet::Intersect()</TT> to allow
447            for correct update of <TT>Distance</TT> in condition. Cleared
448            unecessary declaration of <TT>IsInside()</TT> methods in both
449            <TT>G4TriangularFacet</TT> and <TT>G4QuadrangularFacet</TT>.</LI>
450        <LI>Fix in <TT>G4PolyconeSide::DistanceAway()</TT> for correct
451            estimation of distance for the case of <TT>Phi</TT> sections.
452            Addresses problem report #598.</LI>
453        <LI>Fix in <TT>GetPointOnSurface()</TT> for <TT>G4Polycone</TT> to
454            consider also points laying on rings when consecutive
455            <TT>Z</TT>-sections are coincident. Added method
456            <TT>GetPointOnRing()</TT>.</LI>
457        </UL></LI>
458    </UL></LI>
459<LI><B>Volumes</B>
460    <UL>
461    <LI>Extensions to the <TT>CheckOverlaps()</TT> algorithm:
462        <UL>
463        <LI>Added possibility to define a tolerance for reporting overlaps;
464            added new argument to signature, by default tolerance is set to
465            zero.</LI>
466        <LI>Optimised implementation for detecting daughter volumes which are
467            totally overlapping and checked in sequence.</LI>
468        <LI>Added check on current volume to optimise and correctly handle the
469            case of explicit call of the method when geometry is constructed.</LI>
470        <LI>Made warning message more clear.</LI>
471        </UL></LI>
472   </UL></LI>
473</UL>
474
475<A NAME="glob-notes">
476<H3><I>Global</I></H3></A>
477<UL>
478<LI>Added <TT>G4TwoVector</TT> type, typef of CLHEP's <TT>Hep2Vector</TT>
479    class.</LI>
480<LI>Changed date for release 8.3.</LI>
481</UL>
482
483<A NAME="greps-notes">
484<H3><I>Graphical Representations</I></H3></A>
485<UL>
486<LI><TT>G4VisAttributes</TT>:
487    <UL>
488    <LI>Bug fix in <TT>SetForceLineSegmentsPerCircle()</TT>; now correctly
489        implementing the reset.</LI>
490    <LI>Minor refinement: introduced <TT>IsForceLineSegmentsPerCircle()</TT>
491        method.</LI>
492    </UL></LI>
493<LI><TT>G4Colour</TT>: replaced static data members by static functions that
494    create and copy out the relevant colours.</LI>
495</UL>
496
497<A NAME="had-notes">
498<H3><I>Hadronic Processes</I></H3></A>
499<UL>
500<LI>Added model name for hadronic whiteboard error reporting.</LI>
501<LI><B>Cross sections</B>
502    <UL>
503    <LI>Extend user-chosen isotope abundance capability to several classes:
504        <TT>G4UPiNuclearCrossSection</TT>, <TT>G4UInelasticCrossSection</TT>,
505        <TT>G4UElasticCrossSection</TT>, <TT>G4GlauberGribovCrossSection</TT>,
506        <TT>G4NucleonNuclearCrossSection</TT>.</LI>
507    <LI><TT>G4PiNuclearCrossSection</TT>: removed special treatment ('tuning') for
508            Copper (Z=29),i.e. the <TT>Cu</TT> cross section is no longer lowered
509            by 4%.</LI>
510    <LI>New classes added:
511        <UL>
512        <LI><TT>G4BGGNucleonElasticXS</TT>:
513            provided proton and neutron elastic and cross section class
514            (<TT>G4BGGNucleonElasticXS</TT>) which uses the Barashenkov
515            parameterization below 100 GeV and Glauber-Gribov model above.</LI>
516        <LI>also provided proton and neutron inelastic cross sections
517            (<TT>G4BGGNucleonInelasticXS</TT>), pion elastic cross sections
518            (<TT>G4BGGPionElasticXS</TT>), and pion inelastic cross sections
519            (<TT>G4BGGPionInelasticXS</TT>) which combine the Barashenkov
520            parameterization below 100 GeV and Glauber-Gribov model above.</LI>
521        <LI><TT>G4NucleonNuclearCrossSection</TT> which contains Barashenkov
522            cross sections for nucleon-nucleus scattering</LI> 
523        </UL></LI>
524    <LI>Added protection against division by zero in method
525        <TT>G4CrossSectionDataStore::SelectRandomIsotope()</TT>.</LI>
526    <LI>Added handling of user-defined isotope abundances for elements and
527        proper cross section and abundance weighted choice of isotopes in
528        reactions. New virtual methods for <TT>IsApplicable()</TT> and
529        <TT>GetCrossSections()</TT> added to classes
530        <TT>G4VCrossSectionDataSet</TT> and <TT>G4CrossSectionDataStore</TT>.</LI>
531    <LI><TT>G4HadronCrossSections::GetParticleCode()</TT>: following report from CMS,
532        replaced code which tested by particle name with more performant code
533        that tests by PDG ID. Also, use switch-case instead of else-if.</LI>
534    </UL></LI>
535<LI><B>Management</B>
536    <UL>
537    <LI><TT>G4HadronicProcess</TT>:
538      <UL>
539        <LI>Removed unused <TT>AlwaysKillLeadingHadron()</TT> method.</LI>
540        <LI>Fixed bug which was killing primaries in elastic scattering.</LI>
541        <LI>Fix weighting error in leading particle killer.</LI>
542        <LI>Added handling of user-defined isotopes: re-implemented methods
543            <TT>GetMeanFreePath()</TT> and <TT>ChooseAandZ()</TT> to use new
544            methods in <TT>G4CrossSectionDataStore</TT>.</LI>
545        <LI>No longer use dispatch pointer to call data store methods.</LI>
546        <LI>Remove data members <TT>currentZ</TT>, <TT>currentN</TT> and methods
547            <TT>GetCurrentZ()</TT>, <TT>GetCurrentN()</TT>.  They are no
548            longer needed.</LI>
549      </UL></LI>
550    </UL></LI>
551<LI><B>Binary Cascade</B>
552    <UL>
553    <LI>Added protection against integrating zero <TT>timeStep</TT> in
554        <TT>G4RKPropagation</TT>. This used to cause in some cases division
555        by zero in integration.</LI>
556    </UL></LI>
557<LI><B>Cascade</B>
558    <UL>
559    <LI>Added protection in <TT>G4ElementaryParticleCollider</TT> against negative
560        value to <TT>sqrt()</TT>.</LI>
561    </UL></LI>
562<LI><B>Chiral Invariant Phase Space (CHIPS)</B>
563  <UL>
564    <LI>Fix for NaN, protected coulomb barrier against divide by zero, now
565        defaults to zero. Fix for NaN in <TT>G4QNucleus</TT> when using
566        <TT>pow()</TT> and in <TT>G4QEnvironment</TT>.</LI>
567    <LI>Completed implementation of G4QuasiFreeRatios which enables
568        quasi-elastic scattering.</LI>
569    <LI>To avoid early particle definition the CHIPS world is now created
570        at run time in the processes <TT>G4QElastic</TT>, <TT>G4QCollision</TT>,
571        and <TT>G4QCaptureAtRest</TT>.</LI>
572    <LI><TT>G4QElastic</TT>:
573      <UL>
574        <LI>Fix for mis-use of units.</LI>
575        <LI>Treat particles with <TT>E=0</TT> as alive for tracking purposes.</LI>
576      </UL></LI>
577    <LI>CHIPS model for muon capture now available. It is handled by
578      <TT>G4QCaptureAtRest</TT>.</LI>
579    <LI>Bug fix for muon-nuclear interactions.</LI>
580    <LI>Bug fix for binomial distribution with <TT>p=1,q=0</TT> in <TT>G4QNucleus</TT>.</LI>
581  </UL></LI>
582<LI><B>Elastic scattering</B>
583  <UL>
584    <LI>Speed up coherent hadron-nucleus scattering (<TT>G4ElasticHadrNucleusHE</TT>)
585        by using iterator search on bin instead of computing <TT>log()</TT>.</LI>
586    <LI><TT>G4HadronElastic</TT>:
587      <UL>
588        <LI>Use the most probable isotope for given Z to call the high energy part
589            of the model (CPU/memory more efficient).</LI>
590        <LI>HElastic model for projectile energy above 1 <TT>GeV</TT> is used
591            for all targets with <TT>Z&gt;1</TT>.</LI>
592      </UL></LI>
593    <LI><TT>G4UHadronElasticProcess</TT>: fixed bug in number of neutrons in
594        CHIPS interface.</LI>
595    <LI><TT>G4HadronElastic</TT>, <TT>G4ChargeExchange</TT>: more accurately
596        compute Z and A.</LI>
597    <LI><TT>G4UHadronElasticProcess</TT> and <TT>G4ChargeExchangeProcess</TT>:
598      <UL>
599        <LI>Fixed bug of undefined isotope vector</LI>
600        <LI>Migrated to interface for isotope-dependent cross sections;
601            do not use QElastic total cross sections in
602            <TT>G4ChargeExchangeProcess</TT>.</LI>
603      </UL></LI>
604  </UL></LI>
605<LI><B>High Energy</B>
606    <UL>
607    <LI>Added <TT>G4QuasiElasticChannel</TT> to simulate quasi-elastic
608        scattering. Relies on CHIPS class <TT>G4QuasiFreeRatios</TT>.</LI>
609    <LI>Modified <TT>G4TheoFSGenerator</TT> to use <TT>G4QuasiElasticChannel</TT>
610        and add quasi-elastic scattering for string models, and use these in
611        competition to the string model.</LI>
612    </UL></LI>
613<LI><B>Low Energy</B>
614    <UL>
615    <LI><TT>G4LEAntiProtonInelastic</TT>: for low energy (< 0.1 MeV)
616        anti-protons, the model was simply returning the particle change which
617        had not yet been initialized, thus leading to an infinite loop. Now
618        model returns particle change initialized from the original kinematics.
619        Addresses problem report #888.</LI>
620    <LI>All Low Energy models: added model name to constructor for use in
621        traceback and debugging.</LI>
622    <LI><TT>G4LElastic</TT>: added protection against <TT>sqrt()</TT> of
623        negative value.</LI>
624    </UL></LI>
625<LI><B>Parton String</B>
626    <UL>
627    <LI>Several modifications made to <TT>G4VLongitudinalStringFragmentation</TT>
628        for use in FTF model. This was taken from the original QGS code.</LI>
629    <LI>Revised FTF model now available. Single diffraction was added and
630        hadronization was improved.  Management and qgsm modules also affected.</LI>
631    <LI><TT>G4ExcitedStringDecay::EnergyAndMomentumCorrector()</TT>, no longer
632        causes exception when not converging. Added more info when failing and
633        return correct status. Added protection in <TT>G4ExcitedStringDecay</TT>
634        against division by 0.</LI>
635    </UL></LI>
636<LI><B>Pre-Compound</B>
637    <UL>
638    <LI>Added protection against division by zero in
639        <TT>G4PreCompoundTransitions</TT>.</LI>
640    </UL></LI>
641<LI><B>Utils</B>
642    <UL>
643    <LI><TT>G4HadronicWhiteboard</TT>: added methods to set process and model
644        names.</LI>
645    <LI><TT>G4ReactionDynamics</TT>: added pi0 to anti-particle test.</LI>
646    </UL></LI>
647</UL>
648
649<A NAME="part-notes">
650<H3><I>Particles</I></H3></A>
651<UL>
652<LI>Added protection against negative argument to <TT>sqrt()</TT> in
653    <TT>G4DecayProducts::Boost()</TT>.</LI>
654</UL>
655
656<A NAME="lst-notes">
657<H3><I>Physics lists</I></H3></A>
658<UL>
659<LI>Added quasi-elastic in QGSP physics list; this required changes to:
660    <UL>
661    <LI>QGSP{proton,Neutron,PiK} Builder, adding <TT>QuasiElasticChannel</TT> on
662        conditional flag.</LI>
663    <LI><TT>HadronPhysicsQGSP</TT> passes flag (default=<TT>false</TT>) to
664        Builders.</LI>
665    <LI>QGSP uses flag to include quasi-elastic.</LI>
666    </UL></LI>
667<LI>New list QGSP_NQSE, a copy of QGSP without quasi-elastic.</LI>
668<LI>For QGSC, QGSC_EMV, and QGSC_EFLOW enable use of <TT>G4QCaptureAtRest()</TT>
669    also for muons. Changes made in <TT>G4QStoppingPhysics</TT> as well.</LI>
670<LI>Modifications for Quasi-elastic. Added to all QGS physics lists execpt
671    the two obsolete QGSC_LEAD/QGSC_LEAD_HP. This also required adapting of
672    <TT>HadronsPhysicsXYZ</TT> and {QGSP;QGSC;QGSC_EFLOW}{Neutron,Proton,PiK}
673    Builders.</LI>
674<LI>Removed unnecessary <TT>HadronPhysics...{EMV,EMX}</TT> classes.</LI>
675<LI>Adopting recent upgrades in QGS and FTF for the QBBC physics list.</LI>
676<LI>Set <TT>skin</TT> to zero in <TT>G4EmStandardPhysics7</TT> (i.e. no use
677    of <TT>ComputeStep()</TT> in multiple-scattering).</LI>
678<LI><TT>G4HadronHElasticPhysics</TT> uses new cross section classes
679    <TT>G4BGGNucleonElasticXS</TT> and <TT>G4BGGPionElasticXS</TT>.</LI>
680<LI><TT>G4HadronElasticPhysics</TT>: set limits on low energy and QElastic
681    to zero.</LI>
682<LI>Fixed special cuts for LBE physics list.</LI>
683<LI>Added set min/max Energy and Inelastic Energy to NeutronHP builder.</LI>
684<LI><TT>G4EmStandardPhysics</TT>:
685    <UL>
686    <LI>Use <TT>G4hMultipleScattering</TT> for muons and removed extra
687        printouts.</LI>
688    <LI>Use default multiple-scattering setup in <TT>G4EmStandardPhysics72</TT>.</LI>
689    <LI>Use <TT>skin=0</TT> (no use of <TT>ComputeStep()</TT> in
690        multiple-scattering) in <TT>G4EmStandardPhysics</TT> and
691        <TT>G4EmStandardPhysics71</TT>.</LI>
692    </UL></LI>
693<LI>Added new physics list QGSP_BERT_TRV, based on QGSP_BERT, but changing
694    to Bertini Cascade occurs at 5.0-5.4 <TT>GeV</TT> for proton, neutron,
695    pion and kaon.</LI>
696<LI>Increased version number to 5.2.</LI>
697</UL>
698
699<A NAME="run-notes">
700<H3><I>Run</I></H3></A>
701<UL>
702<LI>Prevent from unnecessary creation of <TT>G4String</TT> objects in
703    <TT>G4Event</TT>, which were default for random number status.</LI>
704<LI>Added new <TT>G4RunManager</TT> flag and corresponding UI command.</LI>
705</UL>
706
707<A NAME="vis-notes">
708<H3><I>Visualization</I></H3></A>
709<UL>
710<LI><B>Management</B>
711    <UL>
712    <LI>Added command <TT>/vis/abortReviewKeptEvents</TT> and improved
713        guidance of command <TT>/vis/reviewKeptEvents</TT>.</LI>
714    <LI>Introduced command <TT>/vis/geometry/set/forceLineSegmentsPerCircle</TT>.</LI>
715    <LI>Fixed bug concerning call to <TT>/vis/open</TT> in
716        <TT>/vis/reviewKeptEvents</TT> loop.</LI>
717    <LI><TT>G4VSceneHandler</TT>:
718        <UL>
719        <LI>Introduced utility <TT>LoadAtts()</TT> for <TT>G4AttValues</TT>
720            and <TT>G4AttDefs</TT>.</LI>
721        <LI>Improved other utilities (changed signature of
722            <TT>GetLineWidth()</TT>).</LI>
723        </UL></LI>
724    <LI>Reduced WARNING noise and other minor improvements.</LI>
725    </UL></LI>
726<LI><B>Modeling</B>
727    <UL>
728    <LI>Bug fix: corrected treatment of <TT>ForcedLineSegmentsPerCircle</TT>
729        when clipping.</LI>
730    </UL></LI>
731<LI><B>OpenGL</B>
732    <UL>
733    <LI>Implemented bitmap markers (for <TT>MarkerSizeType == screen</TT>).</LI>
734    <LI>Bug fix: added missing break in X colormap lookup routine.</LI>
735    <LI>Adapted to change of signature of <TT>GetLineWidth()</TT>.</LI>
736    <LI>Fixed Windows problem with <TT>DBL_MAX</TT> and compilation warnings.</LI>
737    <LI><TT>G4OpenGLXViewer</TT>: Small bug fix in <TT>print()</TT>;
738        context was switched but not switched back.</LI>
739    </UL></LI>
740<LI><B>OpenInventor</B>
741    <UL>
742    <LI>Moved <TT>LoadAtts()</TT> to vis management module.</LI>
743    </UL></LI>
744<LI><B>RayTracer</B>
745    <UL>
746    <LI>Bug fix: use of window size hints.</LI>
747    </UL></LI>
748<LI><B>ASCIITree</B>
749    <UL>
750    <LI>Bug fix: format of total mass.</LI>
751    </UL></LI>
752</UL>
753
754<A NAME="ex-notes">
755<H3><I>Examples</I></H3></A>
756<UL>
757<LI>Updated reference outputs.</LI>
758<LI><B>extended</B>
759    <UL>
760    <LI>electromagnetic/TestEm2
761        <UL>
762        <LI>Uncommented hadron ionisation in Livermore builder.</LI>
763        </UL></LI>
764    <LI>electromagnetic/TestEm3
765        <UL>
766        <LI>Fixed compilation problem on SUN.</LI>
767        <LI>Added command <TT>/testem/run/limitEdep</TT> allowing to compute
768            restricted mean values to supress big statistical fluctuations.</LI>
769        <LI>Updated command <TT>/testem/run/acceptance</TT>.</LI>
770        <LI>Parameter <TT>skin=1</TT> is set as default PhysList.</LI>
771        <LI>Added macro <TT>emtutor.mac</TT>.</LI>
772        <LI>Added physics-lists names: penelope, livermore.</LI>
773        <LI>Restored random seed storage.</LI>
774        <LI>By default do not store random seed and do not activate VisManager
775            in batch.</LI>
776        <LI>Added <TT>G4standard_exp</TT> PhysList. Added material Lucite.</LI>
777        <LI>Return Z-position computation.</LI>
778        </UL></LI>
779    <LI>electromagnetic/TestEm5
780        <UL>
781        <LI>Use all default values in default PhysList.</LI>
782        <LI>Use hadronic builders from physics_lists library.</LI>
783        </UL></LI>
784    <LI>electromagnetic/TestEm7
785        <UL>
786        <LI>Parameter <TT>skin=1</TT> is set as default PhysList.</LI>
787        <LI>Added physics-lists names: penelope, livermore.</LI>
788        <LI>Fixed usage of elastic builders in PhysicsList.</LI>
789        </UL></LI>
790    <LI>electromagnetic/TestEm9
791        <UL>
792        <LI>Compute truncated mean values to reduce statistical fluctuations
793            and fixed output of statistics.</LI>
794        <LI>Added physics-lists names: penelope, livermore.</LI>
795        <LI>Uncommented hadron ionisation in Livermore builder.</LI>
796        </UL></LI>
797    <LI>electromagnetic/TestEm12
798        <UL>
799        <LI>Uncommented hadron ionisation in Livermore builder.</LI>
800        <LI><TT>HistoManager</TT>: by default, get <TT>csdaRange</TT> from
801            <TT>G4EmCalculator</TT>.</LI>
802        </UL></LI>
803    <LI>electromagnetic/TestEm13, TestEm14
804        <UL>
805        <LI><TT>vis.mac</TT>: suppressed command drawTracks.</LI>
806        </UL></LI>
807    <LI>electromagnetic/TestEm15
808        <UL>
809        <LI>SteppingAction: added protection if no lateral displacement.</LI>
810        </UL></LI>
811    <LI>electromagnetic/TestEm18
812        <UL>
813        <LI>New example allowing for studying the energy lost by a charged
814            particle in a single layer, due to ionization and bremsstrahlung.
815            Results are compared to 'reference' values.</LI>
816        </UL></LI>
817    <LI>field/field03
818        <UL>
819        <LI>Fixed bug in <TT>F03FieldSetup</TT> for the activation of local
820            fields.</LI>
821        </UL></LI>
822    <LI>hadronic/Hadr01
823        <UL>
824        <LI>PhysicsList update according to QBBC and quasi-elastic
825            modifications.</LI>
826        <LI>Fix in QGSP_BIC_HP physics list.
827            Addressing problem report #937.</LI>
828        </UL></LI>
829    <LI>medical/fanoCavity
830        <UL>
831        <LI>New example for computing the dose deposited in an ionization
832            chamber by a monoenergetic photon beam.</LI>
833        </UL></LI>
834    <LI>radioactivedecay/exrdm
835        <UL>
836        <LI>Fixed usage of physics-lists.</LI>
837        </UL></LI>
838    <LI>runAndEvent
839        <UL>
840        <LI>RE01: Removed large-N reference output.</LI>
841        </UL></LI>
842    </UL></LI>
843</UL>
844
845<HR>
846
847</BODY>
848</HTML>
Note: See TracBrowser for help on using the repository browser.