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

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

tag geant4.9.4 beta 1 + modifs locales

File size: 33.7 KB
RevLine 
[1337]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.