source: trunk/ReleaseNotes/ReleaseNotes4.9.2.html@ 1358

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

tag geant4.9.4 beta 1 + modifs locales

File size: 81.2 KB
Line 
1<HTML>
2<HEAD>
3<TITLE>Geant4 9.2 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 9.2 Release Notes</B>
14</FONT>
15
16<TABLE WIDTH="100%">
17<TR><TD ALIGN="Right">
18<FONT SIZE="-1" COLOR="#5C3317">
19<B><I>December 19<SUP>th</SUP>, 2008</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>
32<I>We are grateful for the efforts of Geant4 users who have provided
33 detailed feedback, comprehensive reports of issues.
34 We thank in particular those who have contributed corrections,
35 improvements or developments included in this release. </I>
36</P>
37<P>
38Please refer to the
39<A TARGET="ext" HREF="http://cern.ch/geant4/support/userdocuments.shtml">Geant4
40User Documentation</A> for further information about using Geant4.
41</P>
42
43<H2><I>Contents</I></H2>
44<OL>
45<LI><A HREF="#1.">Supported and Tested Platforms</A></LI>
46<LI><A HREF="#2.">CLHEP and AIDA</A></LI>
47<LI><A HREF="#3.">Items for migration of the user code</A></LI>
48<LI><A HREF="#4.">New Developments and Capabilities</A></LI>
49<LI><A HREF="#5.">Expected effects on physics and performance</A></LI>
50<LI><A HREF="#6.">Known Run-Time Problems and Limitations</A></LI>
51<LI><A HREF="#7.">Compilation Warnings</A></LI>
52<LI><A HREF="#8.">Known Run-Time Warnings</A></LI>
53<LI><A HREF="#9.">Geant4 Software License</A></LI>
54<LI><A HREF="#10.">Detailed list of changes and fixes</A></LI>
55</OL>
56
57<P> </P>
58<A NAME="1."></a>
59<HR>
60
61<!-- ============================================== -->
62
63<H2>1. Supported and Tested Platforms</H2>
64
65Official platforms:
66<UL>
67<LI>Linux, gcc-3.4.6 (SLC4), gcc-4.2.1 (SLC5).<BR>
68 Tested on <I>32 and 64 bit architectures</I> (Intel or AMD) with
69 Scientific Linux CERN 4 (SLC4) (based on RedHat Linux Enterprise 4) and
70 Scientific Linux CERN 5 (SLC5) (based on RedHat Linux Enterprise 5).
71 Geant4 has also been successfully compiled on other RedHat versions as
72 well as Debian and Suse.</LI>
73<LI>MacOSX 10.5, gcc-4.0.1</LI>
74<LI>Windows/XP and CygWin Tools with: Visual C++ 9.0 (Visual Studio 2008)</LI>
75</UL>
76
77More verified configurations:
78<UL>
79<LI>Linux, gcc-4.3.2</LI>
80<LI>Linux, Intel-icc 11.0</LI>
81</UL>
82
83Platforms configured but neither tested nor supported:
84<UL>
85<LI>AIX 4.3.2, xlC 6.0</LI>
86<LI>DEC V4.0, cxx C++ V6.1-027</LI>
87<LI>HP 10.20, aCC C++ B3910B A.01.23</LI>
88<LI>SGI V6.5.5, CC 7.2.1</LI>
89<LI>SUN Solaris 5.8, C++ CC-5.5.</LI>
90</UL>
91
92<P> </P>
93<A NAME="2."></A>
94<HR>
95
96<!-- ============================================== -->
97
98<H2>2. CLHEP and AIDA</H2>
99
100Geant4 <U>requires</U> the installation of
101<A TARGET="ext" HREF="http://cern.ch/clhep/">CLHEP</A>, release <B>2.0.4.2</B>.<BR>
102The installation of <B>CLHEP-2.0.4.2</B> is mandatory for consistency in the
103definition of masses and widths of particles. Earlier versions of CLHEP may
104link, but they will not give correct results.
105<P> </P>
106Geant4 9.2 examples with histogramming cowork with analysis tools compliant
107to AIDA 3.2.1 interfaces (for details, see
108<A TARGET="ext" HREF="http://cern.ch/geant4/UserDocumentation/UsersGuides/ForApplicationDeveloper/html/apas02.html">Appendix 2</A>
109of the
110<A TARGET="ext" HREF="http://cern.ch/geant4/UserDocumentation/UsersGuides/ForApplicationDeveloper/html/">Users Guide for Application Developers</A>).<BR>
111AIDA headers can be downloaded from:
112<A TARGET="ext" HREF="http://aida.freehep.org/">http://aida.freehep.org</A>
113
114
115<P> </P>
116<A NAME="3."></A>
117<HR>
118
119<!-- ============================================== -->
120
121<H2>3. Items for migration of the user code</H2>
122
123Listed here is some relevant information on developments included in this
124release, some of which may require migrations (mainly for users of advanced
125Geant4 features) in order to upgrade from release 9.1 to release 9.2.
126Note that for all users a full re-installation of libraries (or a full
127recompilation) and a recompilation of user applications is required.
128
129<P> </P>
130<B>Geometry</B>
131<P> </P>
132An additional optional Boolean argument has been added to the signature
133of <TT>ComputeSafety()</TT> in <TT>G4Navigator</TT>. Any class inheriting
134from <TT>G4Navigator</TT> has to adapt to the new signature.
135
136<P> </P>
137<B>Particles</B>
138<P> </P>
139Masses and widths of particles have been updated to be compliant with
140PDG-2008. To maintain consistency this requires the upgrade to a new
141version of the underlying CLHEP library (CLHEP-2.0.4.2), which includes
142up-to-date constants as used by Geant4.
143
144<P> </P>
145<B>Low Energy Electromagnetic physics</B>
146<P> </P>
147<UL>
148<LI>Geant4-DNA processes:<BR>
149 new elastic scattering models are available for electrons, replacing the
150 old ones. The user may use in his/her physics list either the Screened
151 Rutherford model or the Champion model; the models are alternatives and
152 must not be used together.<BR>
153 To use the Screened Rutherford model in the physics list, one should
154 define the elastic process as follows:
155 <PRE>
156 typedef G4DNAProcess<G4CrossSectionElasticScreenedRutherfordHE,
157 G4FinalStateElasticScreenedRutherford>
158 ElasticScreenedRutherfordHE;
159 typedef G4DNAProcess<G4CrossSectionElasticScreenedRutherfordLE,
160 G4FinalStateElasticBrennerZaider>
161 ElasticScreenedRutherfordLE;
162 </PRE>
163 and register it as follows:
164 <PRE>
165 processManager->AddDiscreteProcess(new ElasticScreenedRutherfordLE("ElasticScreenedRutherfordLE"));
166 processManager->AddDiscreteProcess(new ElasticScreenedRutherfordHE("ElasticScreenedRutherfordHE"));
167 </PRE>
168 More details can be found in the advanced example <TT>microdosimetry</TT>.<BR>
169 To use the Champion model in the physics list, define the process as follows:
170 <PRE>
171 typedef G4DNAProcess<G4CrossSectionElasticChampion,
172 G4FinalStateElasticChampion> ElasticChampion;
173 </PRE>
174 and register it as follows:
175 <PRE>
176 processManager->AddDiscreteProcess(new ElasticChampion("ElasticChampion"));
177 </PRE>
178 Documentation is also available from the
179 <A HREF="https://twiki.cern.ch/twiki/bin/view/Geant4/LowEnergyElectromagneticPhysicsWorkingGroup/">Low
180 Energy EM working group page</A>.</LI>
181<LI>New alternative implementation of Penelope processes compatible with the
182 standard EM design are included as <I>Beta</I> release. Information on how
183 to use these processes (Compton, Rayleigh, Gamma conversion, photo-electric,
184 annihilation and ionisation) is available through these
185 <A href="http://geant4.lngs.infn.it/lngspage/penelopemigration.htm">migration
186 notes</A>.</LI>
187</UL>
188
189<P> </P>
190<B>Hadronic physics</B>
191<P> </P>
192<UL>
193 <LI>The method <TT>MeanFreePath()</TT> in <TT>G4HadronicProcess</TT> will
194 become protected in the next release.
195 A new public method will be provided.<BR>
196 The obsolete method <TT>SetDispatch()</TT>, which is no longer used,
197 has been removed.</LI>
198</UL>
199
200<P> </P>
201<B>Data Sets</B>
202<P> </P>
203This release introduces new versions of two data sets.
204Please see the corresponding details in
205<A href="#data-notes">Section 10</A> of this document.
206<UL>
207<LI>New data for neutron cross-sections, G4NDL.3.13.</LI>
208<LI>New low-energy data set, G4EMLOW.6.2.</LI>
209</UL>
210
211<P> </P>
212<A NAME="4."></A>
213<HR>
214
215<!-- ============================================== -->
216
217<H2>4. New Developments and Capabilities </H2>
218
219<B>Geometry & Field</B>
220<UL>
221<LI>New <I>locator</I> classes and options are available for identifying the
222 intersection point of a charged particle in a field. These are Simple, Brent,
223 and Multi-level and allow the user to investigate tradeoffs between increased
224 accuracy and CPU speed according to the use case.
225 Multi-level is used by default to provide for robustness; the Brent method
226 is introduced as an alternative.</LI>
227</UL>
228
229<B>Detector description persistency</B>
230<UL>
231<LI>A new module for importing detector descriptions in ASCII text format
232 is now part of Geant4. Such a description can be used as an alternative
233 to GDML or other persistency techniques, and is provided with a corresponding set
234 of UI commands.</LI>
235<LI>GDML: the GDML plugin module adds export capabilities,
236 and thus replaces completely the external GDML module required in older versions
237 of Geant4. The GDML schema has been upgraded to support missing
238 solids and parameterisations.
239 The new GDML-3_0_0 schema is now recommended.</LI>
240</UL>
241
242<B>Interfaces & Visualization</B>
243<UL>
244<LI>The layout of the Qt interface, <TT>G4UIQt</TT>, which was introduced in
245 release 9.1 as a <I>Beta</I> release, has been improved. It now supports both common
246 versions of Qt: Qt3 and Qt4, and provides all the functionality of previous
247 graphical user interfaces (such as Xm, Win32...). Also implemented a help
248 widget to easily browse the entire Geant4 command system.</LI>
249<LI>Major Improvements have been made to the Qt visualization driver. This
250 driver now includes all of the capabilties of the other OpenGL drivers,
251 but adds additional controls to rotate, translate, zoom, to export to many
252 graphics formats (jpeg, eps, ps, pdf) and to easily create visualization
253 movies.</LI>
254<LI>The 2D drawing capability has been extended; added in previous release just
255 for <TT>G4Text</TT>, it now also include <TT>G4Circle,
256 G4Polyhedron, G4Polyline, G4Polymarker</TT> and <TT>G4Square</TT>.
257 It allows placement in the 2D "screen window". Useful for tasks such as
258 creating legends or logos that stay put on the screen while you otherwise
259 rotate, translate or zoom the visualization.</LI>
260</UL>
261
262<B>Low Energy Electromagnetic physics</B>
263<UL>
264<LI>The Doppler broadening effect is added in <TT>G4LowEnergyCompton</TT> and
265 <TT>G4LowEnergyComptonPolarized</TT> (using identical model in both
266 cases).</LI>
267<LI>Ionisation cross sections for particle-induced X-ray Emission (PIXE)
268 <UL>
269 <LI>New Orlic semi-empirical model for L-Shells with protons projectiles
270 (<TT>G4OrlicLCrossSection</TT>);</LI>
271 <LI>New ECPSSR model for K-Shells with protons and alpha projectiles
272 (<TT>G4ecpssrCrossSection</TT>);</LI>
273 <LI>New Paul model for K-Shells (<TT>G4PaulKCrossSection</TT>).</LI>
274 </UL></LI>
275<LI>Added new stopping power model for ions, using by default ICRU 73 data
276 tables. New templated classes are <TT>G4IonParametrisedLossModel</TT>
277 and <TT>G4IonParametrisedLossTable</TT>.</LI>
278<LI>Geant4-DNA processes:
279 <UL>
280 <LI>New charge transfer process by incident protons: two cross-section and
281 one final state policy classes: <TT>G4CrossSectionChargeTransferCH</TT>,
282 <TT>G4CrossSectionChargeTransferExp</TT>,
283 <TT>G4FinalStateChargeTransferProton</TT>;</LI>
284 <LI>Two new total cross section classes for electron elastic scattering in
285 liquid water below and above <TT>200 eV</TT>:
286 <TT>G4CrossSectionElasticScreenedRutherfordLE</TT> and
287 <TT>G4CrossSectionElasticScreenedRutherfordHE</TT>;</LI>
288 <LI>New alternative elastic scattering model for electrons in liquid water
289 from C.Champion's model: <TT>G4CrossSectionElasticChampion</TT> and
290 <TT>G4FinalStateElasticChampion</TT>.</LI>
291 </UL></LI>
292</UL>
293
294<B>Standard Electromagnetic physics</B>
295<UL>
296<LI>Cubic Spline interpolation of <tt>dedx</tt> and cross section tables is
297 enabled by default. Better interpolation was found to increase stability
298 when varying transport parameters, such as cuts, of energy deposition of
299 hadrons. The old variant of linear interpolation is available as an option.</LI>
300<LI>A new process, <TT>G4eMultipleScattering</TT>, specialized for simulation
301 of <TT>e+ and e-</TT> multiple scattering has been added.
302 This process in turn uses a new model, <TT>G4UrbanMscModel2</TT>, which is
303 based on the <TT>G4UrbanMscModel</TT> of previous releases but has an
304 improved sampling algorithm and has been retuned to experimental data.
305 Several reference physics lists such as <TT>G4EmStandardPhysics</TT> now
306 use this new <TT>G4eMultipleScattering</TT> process.</LI>
307<LI>A new class <TT>G4WentzelVIModel</TT> for multiple scattering of muons and
308 hadrons is available as a prototype for validation.</LI>
309<LI>New bremsstrahlung model class, <TT>G4eBremsstrahlungRelModel</TT>, includes
310 advanced description of LPM effect; it can be applied for electrons and
311 positrons with <TT>E > 1 GeV</TT> and provides gamma spectra which agree
312 well with thin-target experimental data.<BR>
313 The density suppression effect in the old <TT>G4eBremsstrahlungModel</TT>
314 has been reviewed and improved.</LI>
315<LI>The <TT>G4IonFluctuations</TT> model has been updated: at high energy
316 it uses <TT>G4UniversalFluctuation</TT>, which provides Landau tail of
317 fluctuations.
318 At low energies it uses Gaussian distribution based on experimental data.</LI>
319<LI>The <TT>G4Cerenkov</TT> process now enforces a step limitation at the
320 Cerenkov threshold and a new user defined step limitation provides for
321 smoother X-ray emission.</LI>
322<LI>A new <TT>G4EmSaturation</TT> class is introduced for sampling of Birks
323 saturation.</LI>
324<LI>A new <TT>G4ElectronIonPair</TT> helper class based on the ICRU'31 report has
325 been added; it can be used for sampling electron/ion pairs in sensitive
326 detectors.</LI>
327<LI>A new <TT>G4EmConfigurator</TT> class can be used for configuration of
328 models in physics lists.</LI>
329<LI>Initialization of <TT>SubType</TT> has been added for all processes.</LI>
330<LI>The printout describing processes, models and their parameters
331 initialised for a run have been upgraded.</LI>
332</UL>
333
334<B>Hadronic physics</B>
335<UL>
336<LI>A new hadronic process subtype enumeration <TT>G4HadronicProcessType</TT>
337 has been created in order to identify active hadronic processes:
338 <PRE>
339 enum G4HadronicProcessType
340 {
341 fHadronElastic = 111,
342 fHadronInelastic = 121,
343 fCapture = 131,
344 fFission = 141,
345 fHadronAtRest = 151,
346 fChargeExchange = 161
347 };
348 </PRE></LI>
349<LI>Bertini cascade:
350 <UL>
351 <LI>Barrier penetration has been added to the Coulomb barrier.</LI>
352 <LI>A bug in the final state multiplicity sampling has been fixed, thereby
353 correcting the quasi-elastic peak which was too large.</LI>
354 <LI>Very low values of two-body internal pion cross sections above
355 <TT>7 GeV</TT> have been brought up to PDG values.</LI>
356 </UL></LI>
357<LI>Binary cascade: the cascade part remains unchanged, however, changes in
358 the pre-compound and de-excitation code will affect results for low-energy
359 secondaries.</LI>
360<LI>The INCL/ABLA cascade/evaporation model is now officially released.
361 It can be used for incident <TT>p, n, d, t, 3He, alpha</TT> and
362 <TT>pions</TT> from <TT>200 MeV</TT> up to <TT>3 GeV</TT>, on nuclei
363 ranging from carbon to uranium.</LI>
364<LI>The quantum molecular dynamics (QMD) model for nucleus-nucleus collisions
365 is now in <I>Beta</I> release. It is valid from <TT>50 MeV</TT> to
366 <TT>5 GeV</TT>.</LI>
367<LI>The class <TT>G4GlauberGribovCrossSection</TT> now provides a smooth
368 transition with the Barashenkov cross sections at <TT>90 GeV</TT>.</LI>
369<LI><TT>G4ChargeExchangeProcess</TT> and <TT>G4ChargeExchange</TT> model are
370 now ready to be used in physics lists; the low energy threshold is set to
371 <TT>1.0 MeV</TT>. </LI>
372<LI>Several improvements have been made to the pre-compound model.
373 Missing pieces of theory were added and several code fixes
374 were made to <TT>G4PreCompoundModel</TT> and related classes.</LI>
375<LI>De-excitation and evaporation:
376 <UL>
377 <LI>Several corrections to the multi-fragmentation model to ensure it
378 conforms with the original SMM model. These were donated by authors
379 of the SMM model and collaborators.</LI>
380 <LI>New inverse cross sections and fixes of evaporation probabilities</LI>
381 <LI>FermiBreakUp is now switched off by default.</LI>
382 <LI>The pairing correction in excitation energy have been fixed in
383 <TT>G4GEMChannel</TT>.</LI>
384 </UL></LI>
385<LI>Nuclear mass tables: in order to use nuclear masses consistently throughout the
386 the hadronic code, changes have been made for the usage of
387 <TT>G4NucleiProperties</TT> methods to also conform to changes made in the
388 particles module.</LI>
389</UL>
390
391<P> </P>
392<B>Physics Lists</B>
393<P> </P>
394<UL>
395<LI>A new <TT>G4EmStandardPhysics_option3</TT> physics constructor has been
396 added; it can be used for simulation, where required spatial precision is
397 much less than <TT>1 mm</TT>.</LI>
398<LI>A new utility, <TT>G4PhysicsListFactory</TT>, is introduced; it allows
399 any reference physics list to be built.</LI>
400</UL>
401
402<B>Command-based scoring</B>
403<UL>
404<LI><I>Beta</I> release of cylindrical scoring mesh is included in this release.
405 Any feedback on issues and functionality is welcome.<BR>
406 Please, also see known issues affecting this new development in
407 <A href="#6.">Section 6</A> of this document.</LI>
408</UL>
409
410<P> </P>
411<A NAME="5."></A>
412<HR>
413<!-- ============================================== -->
414
415<H2>5. Expected effects on physics and performance</H2>
416
417<B>Geometry</B>
418<UL>
419<LI>Implementation improvements in <TT>G4Cons</TT> and <TT>G4Tubs</TT>
420 bring speed improvements on the order of 20% for those shapes
421 with pure-tracking (i.e. without field propagation or physics).</LI>
422</UL>
423
424<B>Low-energy Electromagnetic physics</B>
425<UL>
426<LI>An updated version of the <TT>G4LogLogInterpolation</TT> class is included
427 in this release. This update improves the speed of low
428 energy EM Physics processes that use this class. Only insignificant
429 changes result in the interpolated values obtained and in physics
430 observables.</LI>
431</UL>
432
433<B>Standard Electromagnetic physics</B>
434<UL>
435<LI>More precise multiple scattering model for electrons and positrons
436 provides wider shower (about 0.5% measured for the CMS calorimeter).</LI>
437<LI>New relativistic Bremsstrahlung model is applied for electrons and
438 positrons; it provides gamma spectra which agree with thin-target CERN and
439 SLAC data.</LI>
440<LI>The usage of the Spline approximation of <TT>dedx</TT> and cross section
441 tables provides a Bragg peak position which is stable within <TT>0.1 mm</TT>
442 versus variation of production cut or step limit.</LI>
443<LI>Visible energy in sampling calorimeters may increase on the order of 1%
444 due to upgraded model of multiple-scattering and usage of Spline
445 approximation.</LI>
446</UL>
447
448<B>Hadronic physics</B>
449<UL>
450<LI>Changes to the Bertini cascade code have resulted in several changes to
451 energy spectra and shower shapes:
452 <UL>
453 <LI>the bug fix to multiplicity sampling resulted in cutting the
454 quasi-elastic peak height in half, more in line with the binary
455 cascade;</LI>
456 <LI>the same fix increased the multiplicity and decreased the mean energy
457 of pion secondaries, thus shortening the length of showers in
458 calorimeter tests by roughly 2% (depending on the physics list);</LI>
459 <LI>CMS test beam studies show a significant reduction in non-linearities
460 in energy response to MIP like particles between <TT>5</TT> and
461 <TT>10 GeV</TT>;</LI>
462 <LI>improvements to the Coulomb barrier have significantly reduced the
463 number of protons below <TT>20 MeV</TT>.</LI>
464 </UL></LI>
465<LI>Improvements in the precompound model have resulted in more realistic
466 neutron spectra at low energies. For <TT>22 MeV</TT> protons on aluminum,
467 for example, the neutron spectrum now falls exponentially, as expected from
468 data. Before the changes, this spectrum was more or less flat.
469 This results in proportionally more neutrons at lower energies.</LI>
470
471<LI>Performance measurements carried out on realistic setups when using
472 <TT>QGSP_BERT</TT> for <TT>50 GeV pi-</TT>, show an improvement of about
473 25% in CPU time. A slight degradation in performance of 1 to 3% is instead
474 measured for <TT>QGSP_EMV</TT>.</LI>
475</UL>
476
477<P> </P>
478<A NAME="6."></A>
479<HR>
480
481<!-- ============================================== -->
482
483<H2>6. Known Run-Time Problems and Limitations</H2>
484<B>Command-based Scoring</B>
485<P></P>
486The following known issues affect the cylindrical scoring mesh feature and
487are expected to be fixed in the next release.
488<UL>
489<LI>Rather frequent warning messages may be issued during tracking by the
490 <TT>G4Navigator</TT>, concerning zero-length steps. This does not affect
491 the correctness of the results and has been identified in the cases
492 where a track enters at exactly the center of the top/bottom circular
493 face along the local z-axis of the scoring cylinder.</LI>
494<LI>Speed of transportation in cylindrical mesh is known to be non-optimal
495 and will be improved in the next release.</LI>
496<LI>A problem for some scorers which use the volume size for cylindrical
497 mesh is identified due to faulty calculation of the geometrical volume
498 in such configurations. The following scorers currently should not be
499 used for cylindrical meshes (unless you hand-correct for the volume
500 after results are obtained): <TT>G4PSCellFlux, G4PSDoseDeposit,
501 G4PSPassageCellFlux, G4PSCylinderSurfaceCurrent,
502 G4PSCylinderSurfaceFlux</TT>.</LI>
503</UL>
504For a complete list of outstanding run-time problems and to submit any
505problem you may find while running this version of Geant4, please refer
506to the
507<A TARGET="ext" HREF="http://cern.ch/geant4/problemreport">Geant4 Problem
508Reporting System</A>.
509
510<P> </P>
511<A NAME="7."></A>
512<HR>
513
514<!-- ============================================== -->
515
516<H2>7. Compilation Warnings</H2>
517
518There may be few compilation warnings on some platforms.
519We do not believe that any of these lead to incorrect run-time behaviour.
520
521<P> </P>
522<A NAME="8."></A>
523<HR>
524
525<!-- ============================================== -->
526
527<H2>8. Known Run-Time Warnings</H2>
528
529The following message can be written to standard output at the end of a program:
530<PRE>
531 G4Transportation: Statistics for looping particles
532 Sum of energy of loopers killed:
533 Max energy of loopers killed:
534</PRE>
535It provides the total energy (in <TT>MeV</TT>) of tracks killed due to
536excessive number of steps ('looping') during the simulation, and the maximum
537energy of such a track. Such behaviour can be due to looping in magnetic fields
538or encountering problems at geometrical boundaries.
539<P></P>
540In case either of these reported energies is significant, we recommend
541increasing the verbosity of <TT>G4Transportation</TT> to obtain information for
542each track killed. A user can change the threshold energy above which particles
543are not killed using the method <TT>SetThresholdImportantEnergy</TT> of
544<TT>G4Transportation</TT>. The default value is <TT>250 MeV</TT>.
545
546<P> </P>
547<A NAME="9."></A>
548<HR>
549
550<!-- ============================================== -->
551
552<H2>9. Geant4 Software License</H2>
553
554A Software License applies to the Geant4 code.
555Users must accept this license in order to use it. The details and the list of
556copyright holders is available at
557<A href="http://cern.ch/geant4/license">http://cern.ch/geant4/license</A>
558and also in the text file <TT>LICENSE</TT> distributed with the source code.
559
560<P> </P>
561<A NAME="10."></A>
562<HR>
563
564<!-- ============================================== -->
565
566<H2>10. Detailed list of changes and fixes</H2>
567
568These are the main new features/fixes included in this release since the
569last patched public release (for more detailed lists of fixes/additions,
570please refer to the corresponding History files provided in most packages):
571
572<P> </P>
573
574<A NAME="conf-notes">
575<H3><I>Configuration</I></H3></A>
576<UL>
577<LI>Integrated improvements to <TT>Qt</TT> setup. Automatically
578 detecting Qt3 or Qt4 installations.</LI>
579<LI>Embedded <TT>AIDA</TT> setup in central configuration scripts,
580 simplified <TT>GNUmakefile</TT>s in examples.</LI>
581<LI><TT>binmake.gmk</TT>: added sub-modules <TT>persistency/ascii</TT>,
582 <TT>particles/adjoint</TT> and <TT>electromagnetic/adjoint</TT>.</LI>
583<LI>Implemented temporary workaround in <TT>Darwin-g++</TT> for automatically
584 set <TT>GLLIBS</TT> for Leopard. Implemented temporary workaround in
585 <TT>Linux-g++</TT> for automatically detect and correctly set <TT>X11LIBS</TT>
586 and <TT>GLLIBS</TT> for 32/64-bits dual systems on Linux.</LI>
587<LI>Defined <TT>$FIND, $SORT, $TOUCH</TT> variables overridden in Windows
588 setup for defining proper absolute path to CygWin tools, to avoid clashes
589 with Windows native tools.</LI>
590<LI><TT>G4UI_USE.gmk</TT>: added <TT>-DG4UI_USE</TT> to <TT>CPPFLAGS</TT>.
591<LI><TT>Configure</TT> script: brought up-to-date with new data
592 sets and configuration options for Qt.</LI>
593</UL>
594
595<A NAME="digits-notes">
596<H3><I>Digitization & Hits</I></H3></A>
597<UL>
598<LI>Introducing cylindrical scoring mesh (<TT>G4ScoringCylinder</TT> and
599 related classes); Beta release.</LI>
600<LI>Introducing log-scale color map (<TT>G4ScoreLogColorMap</TT>).</LI>
601<LI>Fixed incorrect index number in <TT>G4ScoringMessenger</TT>.</LI>
602</UL>
603
604<A NAME="emstd-notes">
605<H3><I>Electromagnetic Processes</I></H3></A>
606<UL>
607<LI><B>Adjoint</B>
608 <UL>
609 <LI>First release of adjoint (reverse Monte Carlo) processes for Compton,
610 photo-electric, ionisation and Bremsstrahlung.</LI>
611 </UL></LI>
612<LI><B>High Energy</B>
613 <UL>
614 <LI>Added new Bremsstrahlung and pair-production models for hadrons.</LI>
615 <LI>Added initialization of <TT>SubType</TT> for all processes.</LI>
616 <LI><TT>G4eeCrossSections</TT>: migrated to PDG 2006 data.</LI>
617 <LI>New models: <TT>G4eeTo3PiModel</TT>, <TT>G4eeToPGammaModel</TT>,
618 <TT>G4ee2KChargedModel</TT>, <TT>G4ee2KNeutralModel</TT>.</LI>
619 <LI><TT>G4eeToHadronsMultiModel</TT>: added main reaction channels for
620 <TT>omega</TT> and <TT>phi</TT> resonances.</LI>
621 <LI><TT>G4GammaConversionToMuons</TT>: replaced legacy exit() statements
622 by warnings.</LI>
623 <LI>Updated processes enumeration and printouts.</LI>
624 </UL></LI>
625<LI><B>Low Energy</B>
626 <UL>
627 <LI>Added PIXE cross section, L-shells, for protons in
628 <TT>G4OrlicLCrossSection</TT>. Added semi-Empirical model implementation
629 for L-SubShells-Cross-Section with protons projectiles.</LI>
630 <LI>New charge transfer process by incident protons (two cross-section and
631 one final state policy classes).</LI>
632 <LI>Added Doppler broadening to <TT>G4LowEnergyCompton</TT>, based on
633 <I>Y.Namito, S.Ban and H.Hirayama, NIM A 349, pp. 489-494, 1994</I>.
634 Added Doppler broadening in <TT>G4LowEnergyComptonPolarized</TT>, same
635 model as in <TT>G4LowEnergyCompton</TT>.</LI>
636 <LI>Added new stopping power model for ions, using by default ICRU 73
637 data tables. New templated classes: <TT>G4IonParametrisedLossModel</TT>
638 and <TT>G4IonParametrisedLossTable</TT>.</LI>
639 <LI>Added new photon models (Penelope and Livermore) compatible with
640 standard EM design (<I>Beta</I> release).</LI>
641 <LI>First inclusion of <TT>G4PenelopeIonisationModel</TT>.
642 Correction for <TT>G4PenelopeComptonModel</TT>: now the cross section
643 table calculated by the model corresponds to the original Penelope;
644 the difference was only for compounds materials and below 1 keV.
645 Fixes to <TT>G4PenelopeBremsstrahlungContinuous</TT>.<BR>
646 <LI>Allow for loading the complete Auger dataset on initialization.</LI>
647 <LI>Cleaned and updated energy limits for DNA processes.</LI>
648 <LI>Added new elastic scattering process for electrons (Geant4 DNA) from
649 C.Champion's model (<TT>G4CrossSectionElasticChampion</TT> and
650 <TT>G4FinalStateElasticChampion</TT>). First implementation
651 of process for positronium production from C.Champion's model.
652 Updated <TT>G4DNAGenericIonsManager</TT>.
653 NOTE: new processes work only with version 6.2 of <TT>G4EMLOW</TT>
654 data.</LI>
655 <LI>Removed printout in <TT>G4LowEnergyCompton</TT>. Addressing problem
656 report <A href="http://bugzilla-geant4.kek.jp/show_bug.cgi?id=1026">#1026</A>.
657 <LI>Removed <TT>AddEnergyDeposit</TT> below low energy limit in final
658 state classes.</LI>
659 <LI>Decreased low energy limit for e- to <TT>12.61 eV</TT> in
660 <TT>G4CrossSectionIonisationBorn</TT> and
661 <TT>G4FinalStateIonisationBorn</TT> instead of <TT>25 eV</TT>.</LI>
662 <LI>Corrected wrong upper energy limit for hydrogen in class
663 <TT>G4CrossSectionIonisationRudd</TT>, and proton in
664 <TT>G4ChargeDecrease</TT>. Raised lower energy limit of
665 <TT>G4CrossSectionExcitationEmfietzoglou</TT> up to <TT>10 eV</TT>.
666 Updated low energy limits of Geant4-DNA e- models (Brenner-Zaider and
667 Champion's elastic scattering and Emfietzoglou's excitation).</LI>
668 <LI>Added two new classes for electron elastic scattering below and above
669 <TT>200 eV</TT>.</LI>
670 <LI>Added protection against negative log() argument in
671 <TT>G4LogLogInterpolation</TT>.</LI>
672 <LI>Added protection against energies above <TT>200 eV</TT> and corrected
673 bug in computation of differential cross-section maximum in
674 <TT>G4FinalStateElasticBrennerZaider</TT>.</LI>
675 <LI>Added protection in <TT>G4FinalStateIonisationBorn</TT> causing
676 run-time error detected by Valgrind.</LI>
677 <LI>Requires new data set <TT>G4EMLOW.6.2</TT>.</LI>
678 </UL></LI>
679<LI><B>Muons</B>
680 <UL>
681 <LI>Added initialization of <TT>SubType</TT> for all processes.</LI>
682 <LI>Added Spline option and promoted to public method
683 <TT>ComputeTrueStep()</TT> in <TT>G4EnergyLossForExtrapolator</TT>.
684 Added method <TT>TrueStepLength()</TT>; fixed initialization before
685 a step.</LI>
686 <LI>Several fixes and further developments in <TT>G4Mu*</TT> models and
687 associated processes in order to be used as base classes for hadron
688 induced bremsstrahlung and <TT>e+e-</TT> pair production.</LI>
689 </UL></LI>
690<LI><B>Polarisation</B>
691 <UL>
692 <LI>Added initialization of <TT>SubType</TT> for all processes.</LI>
693 </UL></LI>
694<LI><B>Standard</B>
695 <UL>
696 <LI>Added initialization of <TT>SubType</TT> for all processes.</LI>
697 <LI>Multiple Scattering:
698 <UL>
699 <LI>New multiple-scattering model <TT>G4WentzelVIModel</TT> used in
700 new muon physics processes.</LI>
701 <LI>Cloned <TT>G4UrbanMscModel</TT> class into <TT>G4UrbanMscModel2</TT>:
702 <UL>
703 <LI>Introduced several fixes and tunings. Tuned central part of
704 scattering angle (<TT>theta0</TT>) and tail of the scattering
705 angle distribution, using some <TT>e-</TT> scattering data.</LI>
706 <LI>Use screening function from <TT>G4eCoulombScatteringModel</TT>
707 and fixed screening parameter of the single scattering part.</LI>
708 <LI>Added extra protection for <TT>UseDistanceToBoundary</TT> option.</LI>
709 <LI>Fixed bug in <TT>ComputeTruePathLengthLimit()</TT>.</LI>
710 <LI>Fixed NaN in sampling of cosine theta for <TT>50 GeV e-</TT>.</LI>
711 </UL></LI>
712 <LI><TT>G4UrbanMscModel</TT>, <TT>G4UrbanMscModel2</TT>,
713 <TT>G4UrbanMscModel90</TT>:
714 <UL>
715 <LI>Fixed cases of string comparison when compute transport
716 cross-sections, compare masses instead.</LI>
717 <LI>Using <TT>StepStatus</TT> from </TT>preStepPoint</TT> to
718 identify first step for a given track instead of the step
719 number. Fixing a problem observed in ATLAS of small step
720 limits with suspended tracks when using Cerenkov process.</LI>
721 <LI>Added protection against sampling scattering angle with zero
722 transport cross section.
723 </UL></LI>
724 <LI>New process <TT>G4eMultipleScattering</TT> specialized for
725 <TT>e+,e-</TT>, which uses <TT>G4UrbanMscModel2</TT> as a default model.</LI>
726 </UL></LI>
727 <LI>Bremsstrahlung:
728 <UL>
729 <LI><TT>G4eBremsstrahlungModel</TT>: corrected Migdal constant to be
730 set to the value as in <TT>G4eBremsstrahlungRelModel</TT>.</LI>
731 <LI><TT>G4eBremsstrahlungRelModel</TT>: revised LPM and density effect suppressions;
732 results fit CERN thin target experimental data at 150-300 GeV;
733 defined threshold energy for LPM effect depending on atomic number;
734 defined Thomas-Fermi screening function (a'la Tsai).</LI>
735 <LI><TT>G4eBremsstrahlung</TT>: uses <TT>G4eBremsstrahlungRelModel</TT> above
736 <TT>1 GeV</TT> by default.</LI>
737 </UL></LI>
738 <LI>Ionisation:
739 <UL>
740 <LI><TT>G4ionIonisation</TT>, <TT>G4hIonisation</TT>: removed
741 <TT>InitialiseMassCharge()</TT> and <TT>CorrectionsAlongStep()</TT>
742 methods; limits of kinetic energy for models now taken from the base
743 class and from models; separated treatment of <TT>He</TT> ions.</LI>
744 <LI><TT>G4ionGasIonisation</TT>: is exact clone of <TT>G4ionIonisation</TT>.</LI>
745 <LI><TT>G4hIonisation</TT>: switched off nuclear stopping for
746 <TT>pi</TT> and <TT>K</TT> mesons.</LI>
747 <LI><TT>G4IonFluctuations</TT>: added protection to the computation of
748 the correction factor to dispersion which provide smooth transition
749 to small velocities of an ion; added protection in computation of
750 dispersion on allowing have a corrected dispersion below Bohr value.
751 Avoid Poisson sampling. Avoid loop over elements of material;
752 use effective <TT>Z</TT>. Added <TT>G4UniversalFluctuation</TT>
753 model to provide a smooth transition from high to low energies.</LI>
754 </UL></LI>
755 <LI><TT>G4eCoulombScatteringModel</TT>:
756 <UL>
757 <LI>Speedup run-time computations using precomputed nuclear
758 form-factors per element.</LI>
759 <LI>Added extra protection for precision lost in computation of
760 recoil energy and for ions. Added protection against precision
761 loss in computation of cross section at high energy.</LI>
762 <LI>Added usage of <TT>G4ElementSelector</TT> vector.</LI>
763 </UL></LI>
764 <LI><TT>G4PAIxSection</TT>: new functions for resonance and Rutherford
765 collisions.</LI>
766 <LI><TT>G4PAIPhotonModel</TT>: changed model name.</LI>
767 <LI>Fixed nuclear size correction for the <TT>G4BetheBlochModel</TT>.
768 Added methods <TT>GetParticleCharge()</TT>,
769 <TT>GetChargeSquareRatio()</TT>, <TT>CorrectionsAlongStep()</TT>
770 needed for ions in <TT>G4BetheBlochModel</TT>, <TT>G4BraggModel</TT>
771 and <TT>G4BraggIonModel</TT>; defining low and high energy limits
772 inside the model. Take into account effective charge change over
773 the step.</LI>
774 <LI><TT>G4WaterStopping</TT>: using Spline interpolation and mass number
775 instead of atomic mass.</LI>
776 <LI><TT>G4WaterStopping</TT>: added extra data.</LI>
777 <LI><TT>G4PSTARStopping, G4ASTARStopping</TT>: fixed <TT>SiO2</TT>,
778 TEFLON, and GRAFITE data. </LI>
779 </UL></LI>
780<LI><B>Utils</B>
781 <UL>
782 <LI>New class <TT>G4VMscModel</TT> to keep general multiple-scattering
783 parameters and Get/Set methods.</LI>
784 <LI>New class <TT>G4EmElementSelector</TT>, a helper class to sample random
785 <TT>G4Element</TT> in a compound material.</LI>
786 <LI>New helper classes: <TT>G4EmConfigurator</TT>, class to add model per
787 particle type, process, energy range and geometrical region.</LI>
788 <LI><TT>G4ElectronIonPair</TT>: class to sample number of primary
789 ionisations in detectors.</LI>
790 <LI>Added <TT>G4EmProcessSubType</TT> enumerator, defining sub-types for all
791 EM processes and changed enumeration names in <TT>G4EmTableType</TT>
792 to avoid clashes.</LI>
793 <LI>Added new <TT>G4EmSaturation</TT> helper class.</LI>
794 <LI><TT>G4VEnergyLossProcess</TT>: fixed computation of NIEL at the last
795 step of a particle.</LI>
796 <LI><TT>G4LossTableManager</TT>: fixed logic in compute <TT>dEdx</TT> table
797 for an inactive process. Added register/deregister mechanism and
798 deletion at the end of job for <TT>G4VEmModel</TT>.
799 Propagated Spline flag to <TT>G4LossTableBuilder</TT>.
800 Set spline option to <TT>true</TT>, <TT>LPM</TT> effect to <TT>true</TT>
801 by default. Removed legacy calls to <TT>exit()</TT>.</LI>
802 <LI><TT>G4LossTableBuilder</TT>: removed dependency on
803 <TT>G4LossTableManager</TT>. Removed legacy calls to <TT>exit()</TT>.</LI>
804 <LI><TT>G4EmModelManager</TT>: fixed crash in destructor when verbosity is
805 greater than 1; fixed selection of models per energy; updated printout
806 with <TT>DumpModelList()</TT> method.</LI>
807 <LI><TT>G4VEmModel</TT>, <TT>G4VEmProcess</TT>,
808 <TT>G4VMultipleScattering</TT>, <TT>G4VEnergyLossProcess</TT>:
809 <UL>
810 <LI>Reordering of members and methods of classes and improved comments.</LI>
811 <LI>Setting default table size <TT>0.1 keV - 100 TeV</TT> in 84 bins.</LI>
812 <LI>Renamed and improved method <TT>MicroscopicCrossSection()</TT> by
813 <TT>CrossSectionPerVolume()</TT>.</LI>
814 <LI>Using new <TT>DumpModelList()</TT> method from <TT>G4EmModelManager</TT>
815 in the verbosity output.</LI>
816 </UL></LI>
817 <LI><TT>G4VEmModel</TT>:
818 <UL>
819 <LI>Provided optimizations of <TT>SelectRandomAtom()</TT> and
820 <TT>SelectIsotope()</TT>.</LI>
821 <LI>Added methods <TT>GetParticleCharge()</TT>, <TT>GetChargeSquareRatio()</TT>,
822 <TT>CorrectionsAlongStep()</TT> and <TT>ActivateNuclearStopping()</TT>
823 needed for simulation of ion transport.</LI>
824 <LI>Added LPM flag and access methods.</LI>
825 <LI>Added threshold on secondary energy used in Bremsstrahlung model and
826 access methods.</LI>
827 <LI>Use STL vector for cross sections per atom instead of C array to
828 avoid limits of compound materials.</LI>
829 </UL></LI>
830 <LI><TT>G4VEnergyLossProcess</TT>: added pointer to current <TT>G4VEmModel</TT>;
831 removed method <TT>CorrectionsAlongStep()</TT>, using instead corresponding
832 method of a model.</LI>
833 <LI><TT>G4EmCorrections</TT>:
834 <UL>
835 <LI>Added interfaces to ion effective charge.</LI>
836 <LI>Disabled computation of ion corrections if <TT>G4hIonisation</TT>
837 process is used for ions.</LI>
838 <LI>Added new correction methods in order to provide a smooth transition
839 between low-energy parameterization and Bethe-Bloch model.</LI>
840 <LI><TT>dEdx</TT> data for ions are initialized at the start
841 of a run for materials used in geometry.</LI>
842 <LI>Updated search for ion/material pairs.</LI>
843 <LI>Defined the correction vector <TT>25 keV - 2.5 MeV</TT> in 20 bins
844 as it is in ICRU'73 table.</LI>
845 </UL></LI>
846 <LI><TT>G4VEmFluctuationModel</TT>: added method
847 <TT>SetParticleAndCharge()</TT>.</LI>
848 <LI><TT>G4EnergyLossMessenger</TT>: added UI command
849 <TT>/process/em/applyCuts</TT>.</LI>
850 </UL></LI>
851<LI><B>Xrays</B>
852 <UL>
853 <LI>Added scintillation with Birk's law and make now use of
854 <TT>G4EmSaturation</TT> to implement Birks correction.</LI>
855 <LI>Added <TT>SetProcessSubType()</TT> method to <TT>G4Cerenkov</TT>
856 and <TT>G4Scintillation</TT>.</LI>
857 <LI><TT>G4Cerenkov</TT>:
858 <UL>
859 <LI>Added extra step limit <TT>MaxBetaChangePerStep</TT> and enforced
860 a step limit at the Cerenkov threshold.</LI>
861 <LI>Modified sampling of the Cerenkov photon origins assuming linear
862 decrease in the <TT>MeanNumberOfPhotons</TT> over the step.</LI>
863 <LI>Use direct inheritance from <TT>G4VProcess</TT>.</LI>
864 </UL></LI>
865 </UL></LI>
866</UL>
867
868<A NAME="g3tog4-notes">
869<H3><I>G3toG4</I></H3></A>
870<UL>
871<LI>Fixed compilation warning for gcc-4.3.X in <TT>clparse</TT>.</LI>
872</UL>
873
874<A NAME="gen-notes">
875<H3><I>General Processes</I></H3></A>
876<UL>
877<LI><B>Biasing</B>
878 <UL>
879 <LI>Fixed use of <TT>WeightCutOff</TT> now correctly working in a mass
880 geometry.</LI>
881 <LI>Archived obsolete class <TT>G4CellFinder</TT>.</LI>
882 </UL></LI>
883<LI><B>Cuts</B>
884 <UL>
885 <LI>Added <TT>G4ProductionCutsTableMessenger</TT> class.</LI>
886 </UL></LI>
887<LI><B>Decay</B>
888 <UL>
889 <LI><TT>G4DecayWithSpin</TT>: modified <TT>DecayIt()</TT> to allow spin
890 precession also for EM fields.</LI>
891 <LI>Fixed process sub-type enumeration.</LI>
892 </UL></LI>
893<LI><B>Management</B>
894 <UL>
895 <LI></LI>
896 </UL></LI>
897<LI><B>Optical</B>
898 <UL>
899 <LI>In <TT>G4OpWLS</TT> now use <TT>SetTouchableHandle()</TT> for the
900 secondaries in the <TT>DoIt()</TT>.</LI>
901 <LI><TT>G4OpBoundaryProcess</TT>: correctly initialise pointer
902 <TT>Surface</TT>; corrected use of signatures for <TT>G4SwapPtr()</TT>
903 and <TT>G4SwapObj()</TT>, also addressing problem report
904 <A href="http://bugzilla-geant4.kek.jp/show_bug.cgi?id=1020">#1020</A>;
905 changed unsafe cast to surface to <TT>dynamic_cast</TT>, according
906 to suggestion in problem report
907 <A href="http://bugzilla-geant4.kek.jp/show_bug.cgi?id=1014">#1014</A>.
908 Use <TT>G4RandomTool</TT> utilities.</LI>
909 <LI>Replaced process sub-type IDs with corresponding enum IDs.
910 Added local <TT>G4OpProcessSubType</TT> enum.</LI>
911 </UL></LI>
912<LI><B>Scoring</B>
913 <UL>
914 <LI>Added copying of non-ionizing energy deposit in <TT>G4Step</TT>.</LI>
915 </UL></LI>
916<LI><B>Transportation</B>
917 <UL>
918 <LI><TT>G4Transportation, G4CoupledTransportation</TT>:
919 Performance improvement: avoid to compute safety at end of step for
920 neutral particles. Push value & origin of safety to <TT>G4SafetyHelper</TT>
921 only when its value comes from <TT>ComputeSafety()</TT>.</LI>
922 </UL></LI>
923</UL>
924
925<A NAME="geo-notes">
926<H3><I>Geometry</I></H3></A>
927<UL>
928<LI><B>Divisions</B>
929 <UL>
930 <LI>Added division along <TT>X</TT> for G4Trd (that results in G4Trap's).</LI>
931 <LI>Enhanced <TT>G4PVDivision</TT> internal utility methods to allow
932 divisions solids to have type different than mother.</LI>
933 </UL></LI>
934<LI><B>Magnetic field</B>
935 <UL>
936 <LI>Revised signature of <TT>G4ChordFinder::FinderNextChord()</TT>,
937 making <TT>FieldTrack</TT> argument passed as reference.</LI>
938 <LI>Added <TT>ApproxCurveV</TT> to method
939 <TT>G4ChordFinder::ApproxCurvePointS()</TT> in order to better
940 calculate the curve length.</LI>
941 <LI>Added new stepper class <TT>G4ConstRK4</TT>, performing integration
942 of one step with error calculation in constant magnetic field;
943 implementation derived from <TT>G4ClassicalRK4</TT>.</LI>
944 <LI>Added <TT>SetAnomaly()</TT> and <TT>GetAnomaly()</TT> accessors to
945 <TT>G4EqEMFieldWithSpin</TT>. Renormalised spin to 1.</LI>
946 <LI>Some code cleanup.</LI>
947 </UL></LI>
948<LI><B>Management</B>
949 <UL>
950 <LI><TT>G4VSolid</TT>: explicitely reserve memory for polygon vectors
951 in clipping algorithm to help reducing memory footprint.</LI>
952 </UL></LI>
953<LI><B>Navigation</B>
954 <UL>
955 <LI><TT>G4Navigator</TT>: introduced optional <TT>Boolean</TT> argument to
956 <TT>ComputeSafety()</TT> to allow for computation of safety without
957 modifying the state of the navigator. Modified accordingly involved
958 classes, for calls to <TT>ComputeSafety()</TT>.</LI>
959 <LI><TT>G4VoxelNavigation</TT>: implemented additional check when running
960 in <TT>check</TT> mode; if it is on the surface, ensure that it can
961 move on next step; either <TT>DistanceToIn(p,v)</TT> or
962 <TT>DistanceToOut(p,v)</TT> should return a finite value greater
963 than the tolerance.</LI>
964 <LI><TT>G4PathFinder</TT>: cleared unecessary calls to <TT>ComputeSafety()</TT>
965 in <TT>ReLocate()</TT>.</LI>
966 <LI>Moved method <TT>LocateIntersectionPoint()</TT> in
967 <TT>G4PropagatorInField</TT> to a separate class
968 <TT>G4VIntersectionLocator</TT>, now allowing to use different
969 location algorithms: Brent, MultiLevel, Simple.
970 New classes: <TT>G4VIntersectionLocator</TT>, <TT>G4SimpleLocator</TT>,
971 <TT>G4BrentLocator</TT> and <TT>G4MultiLevelLocator</TT>.</LI>
972 <LI>Introduced first implementation of new optional method in locator
973 classes <TT>AdjustementOfFoundIntersection()</TT> using surface-normal
974 of the intersecting solid to boost accuracy. Added the optional call
975 to the new method in each concrete locator.</LI>
976 </UL></LI>
977<LI><B>Solids (CSG)</B>
978 <UL>
979 <LI><TT>G4Tubs</TT>, <TT>G4Cons</TT>: implemented speed improvements and
980 corrections from joint code review of <TT>G4Tubs</TT> and <TT>G4Cons</TT>
981 classes. Cached computation for half-tolerance and use of Boolean flag
982 for identifying if full-cone/tubs or section. Implemented caching of
983 trigonometric values, now directly computed inside modifiers for
984 <TT>Phi</TT> angles and required for parametrised cases (improvement
985 bringing up to 20% speedup in normal tracking for tube/cone-sections
986 placements).</LI>
987 <LI><TT>G4Sphere</TT>: defined <TT>Get/SetInnerRadius()</TT> accessors to
988 be compliant with other CSG solids.</LI>
989 </UL></LI>
990<LI><B>Solids (Specific)</B>
991 <UL>
992 <LI>Corrected algorithm in <TT>G4TriangularFacet::GetPointOnFace()</TT>
993 according to suggestion advanced in problem report
994 <A href="http://bugzilla-geant4.kek.jp/show_bug.cgi?id=1025">#1025</A>.
995 Fixes a problem of false overlaps detection related to
996 <TT>G4ExtrudedSolid</TT> and <TT>G4TessellatedSolid</TT>.
997 Corrected initialisation of algorithm in <TT>G4TriangularFacet</TT>
998 constructor.</LI>
999 <LI><TT>G4ExtrudedSolid</TT>: fixed bug in the decomposition of polygonal
1000 sides for quadrangular facets in <TT>MakeFacets()</TT>. Addresses
1001 problem report
1002 <A href="http://bugzilla-geant4.kek.jp/show_bug.cgi?id=1029">#1029</A>.</LI>
1003 <LI>Enhanced <TT>GetPointOnSurface()</TT> for generic <TT>G4Polycone</TT>
1004 and <TT>G4Polyhedra</TT> constructs.</LI>
1005 <LI>Added missing accessors to <TT>G4EllipticalCone</TT>.</LI>
1006 </UL></LI>
1007<LI><B>Volumes</B>
1008 <UL>
1009 <LI><TT>G4ReflectionFactory</TT>: corrected singleton definition;
1010 return <TT>const G4String&</TT> instead of copy in
1011 <TT>GetVolumesNameExtension()</TT>.</LI>
1012 </UL></LI>
1013</UL>
1014
1015<A NAME="glob-notes">
1016<H3><I>Global</I></H3></A>
1017<UL>
1018<LI><TT>G4UnitsTable</TT>: added units for electric-field, <TT>V/m</TT>.</LI>
1019<LI><TT>G4PhysicsVector</TT>: introduced cubic spline interpolation, optionally
1020 selectable. Optimised implementation of <TT>GetValue()</TT> method.</LI>
1021<LI><TT>G4LPhysicsFreeVector</TT>: corrected use of <TT>GetValue()</TT> to
1022 adopt implementation available from the base class.</LI>
1023<LI>Corrected initialisation of vectors to conform to definition in
1024 <TT>G4PhysicsVector</TT>, and added protections against empty vectors.</LI>
1025<LI>Corrected definition of copy-constructor and <TT>operator=()</TT> in
1026 <TT>G4PhysicsVector</TT> and added corresponding definitions in derived
1027 classes, where needed.</LI>
1028<LI>Added missing constructor <TT>G4String(const char*, str_size)</TT>.</LI>
1029<LI>Modified <TT>G4RandomDirection</TT> global function to use unit radius
1030 sphere surface algorithm instead of 8-quadrants technique, giving ~30%
1031 performance boost in dedicated stress tests.</LI>
1032<LI>Added header <TT>G4RandomTools.hh</TT>, implementing global utility methods for
1033 random Lambertian vector and random plane vector. Implementation derived
1034 from <TT>G4OpBoundaryProcess</TT>.</LI>
1035<LI>Changed date for release 9.2.</LI>
1036</UL>
1037
1038<A NAME="greps-notes">
1039<H3><I>Graphical Representations</I></H3></A>
1040<UL>
1041<LI><TT>HepPolyhedronHype</TT>: fixed arrays upper-bound in constructor,
1042 responsible for memory corruption in visualization of <TT>G4Hype</TT>
1043 shape.</LI>
1044</UL>
1045
1046<A NAME="had-notes">
1047<H3><I>Hadronic Processes</I></H3></A>
1048<UL>
1049<LI>Replaced usage of <TT>G4NucleiPropertiesTable::GetBindingEnergy(Z,A)</TT>
1050 with <TT>G4NucleiProperties::GetBindingEnergy(A,Z)</TT> in all affected
1051 classes.</LI>
1052<LI>Replaced usage of <TT>G4NucleiPropertiesTable::IsInTable()</TT> with
1053 <TT>G4NucleiProperties::IsInStableTable()</TT> where necessary.</LI>
1054<LI><B>Cross sections</B>
1055 <UL>
1056 <LI><TT>G4CrossSectionDataStore</TT>: added method <TT>SampleZandA()</TT>,
1057 returning a <TT>G4Element</TT> and filling <TT>G4Nucleus</TT>.</LI>
1058 <LI><TT>G4GlauberGribovCrossSection</TT> provides a smooth transition from
1059 Barashenkov cross-sections at <TT>90 GeV</TT>; set threshold to
1060 <TT>90 GeV</TT> where this cross-section is used.</LI>
1061 <LI><TT>G4PiNuclearCrossSection</TT>: commented out debug calls to
1062 <TT>G4ping</TT>.</LI>
1063 <LI><TT>G4BGGPionElasticXS, G4BGGPionInelasticXS, G4BGGNucleonInelasticXS,
1064 G4BGGNucleonElasticXS, G4UPiNuclearCrossSection</TT>: added proper
1065 Coulomb barrier and cleanup implementations.</LI>
1066 </UL></LI>
1067<LI><B>Management</B>
1068 <UL>
1069 <LI>Added class <TT>G4HadronicProcessStore</TT>, singleton class to keep
1070 pointers to all registered hadronic processes and to provide dump of
1071 process and models used in Physics List.</LI>
1072 <LI>Introduced new hadronic process subtype enum
1073 <TT>G4HadronicProcessType</TT>; added to <TT>G4HadronicProcess</TT>
1074 to identify process sub-types.</LI>
1075 <LI>Set process sub-type to <TT>fHadronInelastic</TT> for all process</LI>
1076 <LI><TT>G4HadronicProcess</TT>:
1077 <UL>
1078 <LI>Some cleanup; use method <TT>SampleZandA()</TT> to select an
1079 isotope and avoid use of debug local <TT>NanCheck()</TT>;
1080 avoid checking environment variables at run-time; directly fill
1081 <TT>G4HadronicWhiteBoard</TT>.</LI>
1082 <LI>Implemented <TT>PostStepDoIt()</TT> and <TT>DumpPhysicsTable()</TT>
1083 methods.</LI>
1084 <LI>Removed obsolete method <TT>SetDispatch()</TT>.</LI>
1085 <LI>Make <TT>MeanFreePath()</TT> public to avoid interface change
1086 (addressing problem report
1087 <A href="http://bugzilla-geant4.kek.jp/show_bug.cgi?id=1035">#1035</A>).
1088 In future this method will become protected; a specific public
1089 method will be provided for it.</LI>
1090 <LI>Cleanup derived processes (<TT>G4HadronInelasticProcess</TT>,
1091 <TT>G4HadronElasticProcess</TT>....) moving destructors to source of a class
1092 and use methods from the base class.</LI>
1093 </UL></LI>
1094 </UL></LI>
1095<LI><B>Binary Cascade</B>
1096 <UL>
1097 <LI><TT>G4BinaryCascade, G4BinaryLightIonReaction</TT>: added name of the
1098 model; commented out welcome message.</LI>
1099 <LI>Made static instance of <TT>G4Scatterer</TT> in <TT>G4BinaryCascade</TT>
1100 class a data member instead, to avoid issues of static destruction at
1101 job closure; resolves issue detected by Valgrind.</LI>
1102 </UL></LI>
1103<LI><B>Cascade</B>
1104 <UL>
1105 <LI>Implemented code review for optimization and speed up.</LI>
1106 <LI><TT>G4ElementaryParticleCollider</TT>: in method
1107 <TT>GenerateMultiplicity()</TT>, removed large_cut which increases
1108 multiplicity from 3 to 4 abruptly at <TT>4 GeV</TT> and above. This
1109 caused a sharp drop-off in the single pion spectra from <TT>pH</TT>
1110 reactions. The effect in heavier nuclei is small.</LI>
1111 <LI>Introduced simple wrapper class <TT>G4CascadeMomentum</TT> meant to
1112 replace usage of <TT>std::vector</TT> in the cascade code, to reduce
1113 memory allocations. Modified cascade code accordingly.</LI>
1114 <LI>Added Coulomb barrier plus barrier penetration in
1115 <TT>G4IntraNucleiCascader</TT>.</LI>
1116 <LI>Fixed multiplicity sampling in <TT>G4ElementaryParticleCollider</TT>
1117 method <TT>generateMultiplicity()</TT>. Now partial cross-sections are
1118 normalized to the total cross section instead of just the sum of 2-body
1119 to 6-body final state cross sections.
1120 Also fixed 2-body cross-sections above 7 GeV where they were too small.
1121 Fixed the same cross-sections which appear in
1122 <TT>G4CascadSpecialFunctions</TT>.</LI>
1123 <LI>Added comments to cross section tables in <TT>G4CascadSpecialFunctions</TT>
1124 and <TT>G4ElementaryParticleCollider</TT>.</LI>
1125 <LI>Replaced <TT>GetAtomicMass()</TT> with <TT>GetNuclearMass()</TT> in
1126 <TT>G4InuclEvaporation</TT> and <TT>G4BertiniEvaporation</TT>.</LI>
1127 <LI>Added name <TT>Bertini Cascade</TT> to <TT>G4CascadeInterface</TT>.</LI>
1128 </UL></LI>
1129<LI><B>Chiral Invariant Phase Space (CHIPS)</B>
1130 <UL>
1131 <LI>Added <TT>G4QIonIonElastic</TT> process</LI>
1132 <LI>Added general process type to several processes.
1133 Set process sub-type to 11 (elastic) for <TT>G4QElastic</TT>,
1134 <TT>G4QIonIonElastic</TT>; sub-type 12 (inelastic) for
1135 <TT>G4QCollision</TT>, <TT>G4QDiffraction</TT>, <TT>G4QGluonString</TT>,
1136 <TT>G4QLowEnergy</TT>; sub-type 13 (capture) for <TT>G4QCaptureAtRest</TT>;
1137 sub-type 15 (stopping) for <TT>G4PionMinusNuclearAtRestChips</TT>,
1138 <TT>G4ProtonAntiProtonAtRestChips</TT>; sub-type 16 (quasi-elastic) for
1139 <TT>G4QCoherentChargeExchange</TT>; sub-type 10 (unknown) for
1140 <TT>G4QAtomicElectronScattering</TT>, <TT>G4QDiscProcessMixer</TT>.
1141 Set process type ID to <TT>fHadronAtRest</TT> for <TT>G4QCaptureAtRest</TT>,
1142 <TT>G4PionMinusNuclearAtRestChips</TT> and
1143 <TT>G4ProtonAntiProtonAtRestChips</TT>.</LI>
1144 <LI><TT>G4QCaptureAtRest</TT>: added registration in
1145 <TT>G4HadronicProcessStore</TT> and <TT>PrintInfo()</TT> by adding
1146 <TT>PreparePhysicsTable()</TT> and <TT>BuildPhysicsTable()</TT>.</LI>
1147 <LI><TT>G4GammaNuclearReaction</TT>: moved implementations from header to
1148 source and added ID name "CHIPS".</LI>
1149 <LI><TT>G4ElectroNuclearReaction</TT>: moved instantiation of HE model to
1150 constructor from run time and added ID name "CHIPS".</LI>
1151 </UL></LI>
1152<LI><B>De-excitation</B>
1153 <UL>
1154 <LI><TT>G4PhotonEvaporation</TT>: atomic relaxation model is no longer
1155 applied following internal electron conversion. Instead the vacant
1156 shell index is passed to radioactive decay model, where the ARM is
1157 applied.</LI>
1158 <LI>New inverse cross sections:
1159 <UL>
1160 <LI>OPT=1 Chetterjee's parameterization to reaction cross sections
1161 from optical potential global fittings;</LI>
1162 <LI>OPT=2 as OPT=1 but for protons the Wellisch's parameterization
1163 for protons is used (DEFAULT);</LI>
1164 <LI>OPT=3 Kalbach's modifications of Chatterjee's parameterization
1165 of cross sections;</LI>
1166 <LI>OPT=4 as OPT=3 but for protons the Wellisch's parameterization
1167 for protons is used.</LI>
1168 </UL></LI>
1169 <LI>Integraded fixes in <TT>G4EvaporationProbabilities</TT>;
1170 OPT=2 is set.</LI>
1171 <LI>Switched off FermiBreakUp by default.</LI>
1172 <LI>Upgrades to evaporation and handler.</LI>
1173 <LI>Fixed problem report
1174 <A href="http://bugzilla-geant4.kek.jp/show_bug.cgi?id=1028">#1028</A>
1175 in <TT>G4CompetitiveFission::FissionCharge()</TT>; trivial change of
1176 <TT>A</TT> to <TT>Af</TT>.</LI>
1177 <LI>Fix in <TT>G4GEMChannel</TT> according to
1178 <TT>(anA,aZ) -> (AResidual,ZResidual)</TT> for pairing correction
1179 in <TT>ExEnergy</TT>.</LI>
1180 <LI>Fix from JMQ for Zirconium</LI>
1181 <LI>Fixed minor memory leak in <TT>G4ExcitationHandler</TT> and
1182 <TT>G4EvaporationChannel</TT>.</LI>
1183 <LI>Increased verbosity in <TT>G4Evaporation</TT> to try to understand
1184 channel probability failure in very rare case.</LI>
1185 <LI>Trivial fix to prevent negative cross-sections for incident protons on
1186 targets with <TT>A < Carbon</TT>.</LI>
1187 </UL></LI>
1188<LI><B>Elastic scattering</B>
1189 <UL>
1190 <LI><TT>G4ChargeExchangeProcess</TT>: added high and low energy protections
1191 to cross-section. Process and model prepared to be used in physics
1192 lists; energy threshold is set to <TT>1.0 MeV</TT>.</LI>
1193 <LI><TT>G4HadronElastic</TT>: added counts of abnornal sampling results
1194 and printing out values in the destructor; fixed sampling of scattering
1195 angle outside kinematically allowed interval.</LI>
1196 <LI>Set process sub-type according to enumerator for
1197 <TT>G4UHadronElasticProcess</TT> and
1198 <TT>G4ChargeExchangeProcess</TT>.</LI>
1199 </UL></LI>
1200<LI><B>High precision Neutron</B>
1201 <UL>
1202 <LI>Improved energy and angular distributions for both scattered neutron
1203 and recoil targets. Fixed missing inelastic gamma-ray lines.
1204 Addresses problem report
1205 <A href="http://bugzilla-geant4.kek.jp/show_bug.cgi?id=1008">#1008</A>.</LI>
1206 <LI>Fixed bug for missed pouch-out particles.</LI>
1207 <LI>Introduced A and Z values of used NDL data for residual reconstruction.</LI>
1208 <LI>Adjusting final states based on the energy and momentum conservation.</LI>
1209 <LI>Limiting the sum of secondary energies.</LI>
1210 <LI>Fixed minor bug in <TT>G4NeutronHPLabAngularEnergy</TT>.</LI>
1211 <LI>Changed interpolation scheme for histogram in
1212 <TT>G4NeutronHPInterpolator</TT>.</LI>
1213 <LI>Fixed bug in <TT>Sample()</TT> and <TT>GetXsec()</TT>
1214 in <TT>G4NeutronHpVector</TT>.</LI>
1215 <LI>Prohibit level transition to oneself in <TT>G4NeutronHPDeExGammas</TT>.</LI>
1216 <LI>Fixed memory leak in <TT>G4NeutronHPPhotonDist</TT> and correcting data
1217 disorder which could happen when both <TT>InitPartial()</TT> and
1218 <TT>InitAngular()</TT> methods were called in same instance.</LI>
1219 <LI>Fixed calculation of residual momentum in
1220 <TT>G4NeutronHPInelasticCompFS</TT> and
1221 <TT>G4NeutronHPDiscreteTwoBody</TT>. Added protection for negative
1222 energy results in very low energy (<TT>1E-6 eV</TT>) scattering in
1223 <TT>G4NeutronHPElasticFS</TT>.</LI>
1224 <LI>Fixed minor memory leak in <TT>G4NeutronHPPhotonDist</TT>.</LI>
1225 <LI>Fixed problem in G4NeutronHPProduct resulting in too many secondaries
1226 production in nd rections.</LI>
1227 <LI>Added protection in <TT>G4NeutronHPName</TT> for selecting data in
1228 hydrogen and alpha.</LI>
1229 <LI>Fixed case of definition of <TT>G4PhysicsVector</TT> of length zero in
1230 <TT>G4NeutronHPIsoData</TT>.</LI>
1231 <LI>Fixed memory leak in <TT>G4NeutronHPThermalScattering</TT>.</LI>
1232 <LI>Added protection for invalid read in <TT>G4NeutronHPFissionData</TT>
1233 which caused run time errors.</LI>
1234 <LI>Fixed bug in <TT>G4NeutronHPChannel::Register()</TT>; added limitation
1235 of trial for creating final states and added protection for pure 1H
1236 case in <TT>G4NeutronHPInelastic</TT>.</LI>
1237 <LI>Updated data set to G4NDL3.13.</LI>
1238 </UL></LI>
1239<LI><B>Im_r_matrix</B>
1240 <UL>
1241 <LI><TT>G4XNNElasticLowE, G4XNNTotalLowE</TT>: avoid use of static call
1242 to <TT>G4ParticleDefinition</TT> in destructor; resolves issue
1243 detected by Valgrind.</LI>
1244 </UL></LI>
1245<LI><B>INCL/ABLA</B>
1246 <UL>
1247 <LI>Provided two fission models: by default GSI SimFis3 fission is used.
1248 Optional: SimFis18.</LI>
1249 <LI>Fixed serious data reading bug affecting the reading of some data
1250 files.</LI>
1251 <LI>Fixed initialisation of several variables to zero and target nucleus
1252 quantities. Improved coding style.</LI>
1253 <LI>Several array index handling (off-by-one) bugs fixed.</LI>
1254 <LI>Partial fix to the Alpha evaporation energies and fix to neutron
1255 energies.</LI>
1256 <LI>Switched the transformation matrix indices in ABLA.</LI>
1257 <LI>Use <TT>GetNuclearMass()</TT> instead of <TT>GetAtomicMass()</TT> in
1258 <TT>G4AblaEvaporation</TT>.</LI>
1259 </UL></LI>
1260<LI><B>Parton-String</B>
1261 <UL>
1262 <LI>Revised string fragmentation and tuned parameters in FTF model for
1263 <TT>Pi+P</TT> and pion-nucleon interactions. Implemented quasi-elastic
1264 hadron-nucleus scattering in FTF and formation time; tuned string
1265 tension.</LI>
1266 <LI>Fixed logic in <TT>G4QGSParticipants</TT> algorithm: avoid usage of
1267 iterator decrementing in loops. Addresses problem report
1268 <A href="http://bugzilla-geant4.kek.jp/show_bug.cgi?id=1018">#1018</A>.
1269 <LI>Fixed memory leak in <TT>G4FTFModel</TT> destructor.</LI>
1270 </UL></LI>
1271<LI><B>Photolepton-hadron</B>
1272 <UL>
1273 <LI><TT>G4MuNuclearInteraction</TT>: added <TT>SubType</TT> to
1274 <TT>fHadronInelastic</TT> and registration in the
1275 <TT>G4HadronicProcessStore</TT>; added <TT>PreparePhysicsTable()</TT>
1276 method and some code cleanup.</LI>
1277 </UL></LI>
1278<LI><B>Pre-equilibrium</B>
1279 <UL>
1280 <LI>Fixed <TT>G4PreCompoundNeutron</TT> using data for 22 MeV protons off Zirconium.</LI>
1281 <LI>Added data member initialisation to <TT>G4VPreCompoundTransitions</TT>,
1282 responsible for run-time errors detected by Valgrind.</LI>
1283 <LI>Added protection for close to zero excitation energy in
1284 <TT>G4PreCompoundModel</TT> to not try to
1285 de-excite.</LI>
1286 </UL></LI>
1287<LI><B>QMD Reaction</B>
1288 <UL>
1289 <LI>Fixed and changed sampling method of impact parameter in
1290 <TT>G4QMDReaction</TT>. Added <TT>deltaT</TT> in signature of
1291 <TT>CalKinematicsOfBinaryCollisions()</TT>. Fixed bug in
1292 nucleon projectile.</LI>
1293 <LI>Added <TT>Update()</TT> method to <TT>G4QMDMeanField</TT>. Added
1294 <TT>hit</TT> flag and related methods to <TT>G4QMDParticipant</TT>.
1295 Added <TT>Erase/InsertParticipant()</TT> methods to <TT>G4QMDSystem</TT>.</LI>
1296 <LI>Added several required updates of Mean Field; modified handling of
1297 absorption case in <TT>G4QMDCollision</TT>.</LI>
1298 <LI>Fixed minor memory leaks.</LI>
1299 </UL></LI>
1300<LI><B>Radioactive Decay</B>
1301 <UL>
1302 <LI><TT>G4NuclearDecayChannel</TT>: ARM is no longer applied in
1303 photon-evaporation for IT mode and is now applied at the end of
1304 <TT>DecayIt()</TT>; now using the correct shell index in appling ARM
1305 and switching on Auger electron production. Checking the residual
1306 kinetic energy after ARM and adding it to the atom.</LI>
1307 <LI>Replaced legacy calls to <TT>exit()</TT> with <TT>G4Exception</TT>
1308 in <TT>G4RadioactiveDecay</TT> and <TT>G4NuclearDecayChannel</TT>.</LI>
1309 </UL></LI>
1310<LI><B>Re-Parameterized Gheisha</B>
1311 <UL>
1312 <LI>Fixed energy non-conservation problem in <TT>G4RPGFragmentation</TT>
1313 and in <TT>G4RPGReaction</TT>. Fixed <TT>K0</TT> ID problem in
1314 <TT>G4RPGInelastic</TT>.</LI>
1315 </UL></LI>
1316<LI><B>Processes</B>
1317 <UL>
1318 <LI>Set sub-types for <TT>G4HadronCaptureProcess</TT> (to
1319 <TT>fCapture</TT>), <TT>G4HadronFissionProcess</TT> (to
1320 <TT>fFission</TT>) and to <TT>G4HadronElasticProcess</TT>
1321 (to <TT>fHadronElastic</TT>).</LI>
1322 <LI>Use <TT>PostStepDoIt()</TT> and <TT>DumpPhysicsTable()</TT> from
1323 the base class <TT>G4HadronicProcess</TT>.</LI>
1324 </UL></LI>
1325<LI><B>Stopping</B>
1326 <UL>
1327 <LI>Set process sub-type to corresponding IDs in enumerator for
1328 <TT>AtRest</TT> processes.</LI>
1329 <LI><TT>G4MuonMinusCaptureAtRest</TT>: added registration in
1330 <TT>G4HadronicprocessStore</TT> and <TT>PrintInfo()</TT> by adding
1331 <TT>PreparePhysicsTable()</TT> and <TT>BuildPhysicsTable()</TT>
1332 methods.</LI>
1333 </UL></LI>
1334</UL>
1335
1336<A NAME="interc-notes">
1337<H3><I>Intercoms</I></H3></A>
1338<UL>
1339<LI>Added a new function in <TT>G4UIcommandTree</TT> to find a subtree.</LI>
1340<LI>Fixed improper comment treatment for line continue characters "_" in class
1341 <TT>G4UIbatch</TT>. Addresses problem report
1342 <A href="http://bugzilla-geant4.kek.jp/show_bug.cgi?id=1034">#1034</A>.</LI>
1343</UL>
1344
1345<A NAME="interf-notes">
1346<H3><I>Interfaces</I></H3></A>
1347<UL>
1348<LI>Improved layout of the <TT>Qt</TT> interface for <TT>Qt3</TT>.</LI>
1349<LI>Added ability to launch <TT>G4Qt</TT> visualization without a
1350 <TT>G4UIQt</TT> interface.</LI>
1351<LI>Added ability to have an external Qapp.</LI>
1352<LI>Extended Qt driver help widget to include a search area.</LI>
1353<LI>Removed Moc files, now autogenerated through central scripts.</LI>
1354</UL>
1355
1356<A NAME="materials-notes">
1357<H3><I>Materials</I></H3></A>
1358<UL>
1359<LI><TT>G4NistElementBuilder</TT>: provide unique name for each isotope of an
1360 element. Use best known parameterisation for total binding energy of atoms,
1361 use standard masses for lightest stable isotopes.</LI>
1362<LI><TT>G4IonisParamElm</TT>: added Fermi velocity and L-factor (both used for
1363 parameterizations of the effective charge and straggling of ions).
1364 <TT>G4IonisParamMat</TT>: use Fermi velocity and L-factor from
1365 <TT>G4IonisParamElm</TT>.</LI>
1366<LI>Added new classes <TT>G4IronStoppingICRU73</TT>,
1367 <TT>G4MaterialStoppingICRU73</TT> and <TT>G4SimpleMaterialStoppingICRU73</TT>
1368 for ICRU'73 data on stopping powers in the range <TT>25 keV/n - 10 MeV/n</TT>.</LI>
1369<LI>Added virtual destructor to <TT>G4SurfaceProperty</TT> and derivated.
1370 Addresses problem report
1371 <A href="http://bugzilla-geant4.kek.jp/show_bug.cgi?id=1014">#1014</A>.
1372 Changed method name from <TT>DumpInfo()</TT> to <TT>DumpTableInfo()</TT>.</LI>
1373<LI><TT>G4Material</TT>: use array size defined in material constructor,
1374 extend it if a component is a compound material.</LI>
1375<LI><TT>G4Element</TT>: use G4int(fZeff) coherently in the implementation.</LI>
1376<LI><TT>G4Isotope</TT>: use <TT>AtomicMass</TT> instead of <TT>NuclearMass</TT>.</LI>
1377<LI>Added <TT>SetName()</TT> method to <TT>G4Element, G4Isotope, G4Material</TT>
1378 for use in detector persistency. Use <TT>const G4String&</TT> for accessors,
1379 instead of implicit copy.</LI>
1380<LI><TT>G4NistManager</TT> and <TT>G4NistElementBuilder</TT>: added method
1381 <TT>GetTotalElectronBindingEnergy()</TT>.</LI>
1382<LI><TT>G4NistManager</TT>: added inline methods to speed up EM computations.</LI>
1383<LI><TT>G4IonisParamMat</TT>: added <TT>fMeanEnergyPerIon</TT> and Set/Get
1384 methods.</LI>
1385<LI>Added dummy default constructor in <TT>G4OpticalSurface</TT> and
1386 <TT>G4SurfaceProperty</TT>.</LI>
1387</UL>
1388
1389<A NAME="part-notes">
1390<H3><I>Particles</I></H3></A>
1391<UL>
1392<LI>Added UI command for setting the verbosity level on the particle-table.</LI>
1393<LI>Modified proton mass to be equal to <TT>proton_mass_c2</TT> from updated
1394 PDG-2008 values in CLHEP. Updated masses and widths according to PDG-2008.</LI>
1395<LI>Avoid direct comparison of strings in method <TT>G4IonTable::IsIon()</TT>.</LI>
1396<LI>Hidden all methods of getting mass of nucleus except for
1397 <TT>G4NucleiProperties::GetNuclearMass()</TT>, which should be now used.
1398 Cashed pointers/masses of light nuclei in <TT>G4NucleiProperties</TT>.</LI>
1399<LI>Added a table of sum of masses of orbital electrons and their binding
1400 energy in <TT>G4NucleiProperties</TT>. Added methods of taking <TT>A</TT>
1401 and <TT>Z</TT> arguments as double. Added <TT>IsInStableTable()</TT> as
1402 replace of <TT>G4NucleiPropertiesTable::IsInTable()</TT>. Promoted to
1403 public methods <TT>GetBindingEnergy()</TT> and <TT>GetMassExcess()</TT>.</LI>
1404<LI>Fix for using raw number of electron mass in calculation of magnetic
1405 moment for <TT>e+/-</TT>.</LI>
1406<LI>Fixed magnetic momentum for leptons.</LI>
1407<LI>New sub-module <TT>adjoint</TT> for adjoint-particles to be used in
1408 reverse MC simulations.</LI>
1409<LI>Added more printout in <TT>G4HtmlPPReporter</TT> class.</LI>
1410</UL>
1411
1412<A NAME="pers-notes">
1413<H3><I>Persistency</I></H3></A>
1414<UL>
1415<LI>ASCII
1416 <UL>
1417 <LI>First implementation of a new reader module for detector persistency
1418 in ASCII text format, derived from GAMOS application.</LI>
1419 </UL></LI>
1420<LI>GDML
1421 <UL>
1422 <LI>Introducing GDML writer: material properties; support for parameterised
1423 volumes; division volumes; replica volumes; matrices; naming of physical
1424 volumes; Twistedtrap, Twistedtubs, Tet, Twistedbox, Twistedtrd, Hype,
1425 Orb, Para, Ellipsoid, Ellipticaltube, Polyhedra, Torus, Cone, Tube,
1426 Extruded, Boolean (intersection, subtraction, union), Reflections
1427 (using scaled transformation) solids; elements and composite materials.</LI>
1428 <LI>Updated schema to include new features introduced in reader/writer plugins.
1429 Now requiring GDML_3_0_0 version of the schema.</LI>
1430 <LI>Added support for new serializer API as introduced in Xerces-3.0.0.</LI>
1431 <LI>Added support for modular files in GDML writer and reader.
1432 Added handling of precision and optional rounding of errors for
1433 imported/exported values. Added schema validation mechanism and schema
1434 files.</LI>
1435 <LI>Implemented mechanism for importing GDML descriptions with extensions
1436 to the GDML schema, identified by a new tag <TT>extension</TT>.</LI>
1437 <LI>Added features to reader: physical-volumes name; temperature, pressure
1438 and state of materials; NIST support. Added support for border surface
1439 and skin surface properties.</LI>
1440 <LI>Added optional handling if precision on values loaded.</LI>
1441 <LI>Implemented filtering of names in reader to remove from entity names
1442 appended reference pointer which may have been generated. Simplified
1443 name generated for physical-volumes. Added argument to Write() in
1444 G4GDMLParser for specify if appending or not reference pointer to
1445 generated names; default is TRUE.</LI>
1446 <LI>Enhanced name stripping in <TT>G4GDMLRead</TT>, to remove also
1447 additional IDs prepended to the original name of entities in the case
1448 of modular GDML files. Added <TT>StripNamePointers()</TT> method to
1449 <TT>G4GDMLParser</TT>, utility to be invoked in the user-code to strip
1450 off pointers from entity names in a GDML modular setup after loading
1451 all modules. Get rid of module-name pre-pended to entity names.</LI>
1452 <LI>Fixes in naming convention for solids; added specification of units
1453 where missing. Introduced parsing of vertices for tessellated solids
1454 to avoid duplication in writing.</LI>
1455 <LI>Added possibility to read/write replication for Rho and Phi axes.</LI>
1456 <LI>Added <TT>G4Paraboloid</TT> and <TT>G4EllipticalCone</TT> to list of
1457 supported solids for reader and writer.</LI>
1458 <LI>Added class <TT>G4STRead</TT>, for importing of STEP-Tools generated
1459 geometry setups.</LI>
1460 <LI>Cleared compilation warnings on Intel-icc compiler; general code
1461 review.</LI>
1462 </UL></LI>
1463</UL>
1464
1465<A NAME="lst-notes">
1466<H3><I>Physics lists</I></H3></A>
1467<UL>
1468<LI>Updated <TT>FTF*</TT> lists and physics NOT to use quasi-elastic from CHIPS.
1469 FTF now has quasi-elastic included in the FTF model itself.</LI>
1470<LI>Updated <TT>option2</TT> EM physics (EMX) and added <TT>option3</TT>.</LI>
1471<LI>Added hadron induced bremsstrahlung and pair production for proton and pions.</LI>
1472<LI>Set <TT>inactive</TT> for <TT>AlongStep</TT> for Bremsstrahlung and pair
1473 production processes in all EM builders, bringing a minor CPU improvement.</LI>
1474<LI>Added specialized <TT>G4eMultipleScattering</TT> for electrons and positrons
1475 in all EM builders.</LI>
1476<LI>Added <TT>sigma_c+, sigma_c++</TT> in the list of stable hadrons.</LI>
1477<LI>New helper class <TT>G4PhysListFactory</TT> for building Physics Lists.</LI>
1478<LI><TT>G4NeutronTrackingCut</TT>: added methods for directly defining time
1479 and energy limits.</LI>
1480<LI><TT>G4HadronElasticPhysics</TT>: added optional Barashenkov
1481 cross-section.</LI>
1482<LI><TT>G4ChargeExchangePhysics</TT>: new builder for hadronic charge exchange process for
1483 proton, neutron and pions.</LI>
1484<LI>QBBC: use FTF as a default, removed obsolete methods.
1485 Added temporary variant to QBBC, equivalent to QGSP_BERT without LHEP
1486 for protons, neutrons and pions. Added charge exchange process.
1487 Added QBBCG option and <TT>G4PhysListFactory</TT>.</LI>
1488<LI>Added names to string models builders.</LI>
1489<LI>Removed obsolete class G4HadronProcessStore.</LI>
1490</UL>
1491
1492<A NAME="track-notes">
1493<H3><I>Track & Tracking</I></H3></A>
1494<UL>
1495<LI><TT>G4SteppingManager</TT>: corrected conditions for default
1496 (<TT>InActivated</TT>) and <TT>NotForced</TT> processes.
1497 Fixed missing update of secondaries utility counter.</LI>
1498<LI>Reset non-ionizing energy loss in <TT>G4Step::ResetTotalEnergyDeposit()</TT>
1499 in order to initialize NIEL in each step.</LI>
1500<LI><TT>G4Track</TT>: changed to <TT>const</TT> pointers <TT>fpCreatorProcess</TT>
1501 and <TT>fpLCAtVertex</TT>.</LI>
1502<LI><TT>G4StepPoint</TT>: changed to <TT>const</TT> pointer
1503 <TT>fpProcessDefinedStep</TT> data member.</LI>
1504</UL>
1505
1506<A NAME="vis-notes">
1507<H3><I>Visualization</I></H3></A>
1508<UL>
1509<LI><B>Overall</B>
1510 <UL>
1511 <LI>Extended 2D drawing capability, covering now also <TT>G4Circle,
1512 G4Polyhedron, G4Polyline, G4Polymarker</TT> and <TT>G4Square</TT>.</LI>
1513 <LI>Fixed gcc-4.3.0 compiler warnings.</LI>
1514 </UL></LI>
1515<LI><B>Management</B>
1516 <UL>
1517 <LI>Trapped recursive use of <TT>/vis/reviewKeptEvents</TT>.</LI>
1518 <LI>Added function for IncrementPan with X,Y,Z values.</LI>
1519 </UL></LI>
1520<LI><B>Modeling</B>
1521 <UL>
1522 <LI>Improved messages.</LI>
1523 </UL></LI>
1524<LI><B>OpenGL</B>
1525 <UL>
1526 <LI>Fixed <TT>DBL_MAX</TT> problem in 2D drawing.</LI>
1527 <LI>Qt driver
1528 <UL>
1529 <LI>Added many improvements for Qt3.</LI>
1530 <LI>Changed last letter of driver names to lower case, from
1531 <TT>OGLSQT/OGLIQT</TT> to <TT>OGLSQt/OGLIQt</TT>.</LI>
1532 <LI>Fixed crash that occurred when had no scene.</LI>
1533 <LI>Added commands for mouse wheel zoom.</LI>
1534 <LI>Fixed problem when launching QT VIS without QT UI (N02 for example).</LI>
1535 <LI>Added movie making dialog panel
1536 (Right button->Actions->Movie parameters).</LI>
1537 <LI>Added ability to "auto rotate" volume via quick mouse move.</LI>
1538 <LI>Added moving camera on left/right/up/down arrow, going
1539 forward/backward with SHIFT+up/down, zoom in with +/- keys.</LI>
1540 <LI>Fixed bug in help command whereby click callback on a item was not
1541 working on Windows.</LI>
1542 <LI>Fixed crash at exit on Mac.</LI>
1543 <LI>Added many graphic export options (vector and pixel) including EPS.</LI>
1544 <LI>Fixed aspect ratio deformation on widget resize.</LI>
1545 <LI>Removed Moc files, now autogenerated through config/common.gmk.</LI>
1546 </UL></LI>
1547 </UL></LI>
1548</UL>
1549
1550<A NAME="env-notes">
1551<H3><I>Environments</I></H3></A>
1552<UL>
1553<LI>Introduced <TT>g4py</TT> module name.</LI>
1554<LI>Removed legacy interface to GDML external module.</LI>
1555<LI>Updated G4Py configure scripts, fixed some minor bugs and
1556 general code cleanup.</LI>
1557</UL>
1558
1559<A NAME="data-notes">
1560<H3><I>Data sets</I></H3></A>
1561<UL>
1562<LI>New data for neutron cross-sections, G4NDL.3.13:
1563 <UL>
1564 <LI>Added rest of isotope in JENDL_HE neutron files:
1565 <TT>N(7), Ti(46, 47, 48, 49 50), V(51), Cr(50, 52, 53, 54), Mn(55),
1566 Co(59), Ni(58, 60, 61, 62, 62), Zr(90, 91, 92, 94, 96), Nb(94),
1567 W(180, 182, 183, 184, 186), Hg(196, 198, 199, 200, 201, 202, 204)</TT></LI>
1568 <LI>New Elastic and Inelastic cross section from "JENDL High Energy File
1569 2007" All 107 isotopes are converted (except for <TT>Am242m</TT>).</LI>
1570 <LI>Added data file: <TT>Inelastic/Gammas/z63.a149</TT>.</LI>
1571 <LI>Replaced <TT>Nitrogen15</TT> data (source: ENDF6).</LI>
1572 <LI>Corrected wrong entries in some Inelastic and Capture data.
1573 Previous files are still available in each directory with suffix
1574 of .org.</LI>
1575 </UL></LI>
1576<LI>New low-energy data set, G4EMLOW.6.2:
1577 <UL>
1578 <LI>Added in DNA tables for: Champion elastic scattering model and
1579 Champion Positronium creation model.</LI>
1580 </UL></LI>
1581</UL>
1582
1583<A NAME="ex-notes">
1584<H3><I>Examples</I></H3></A>
1585<UL>
1586<LI>Various fixes, improvements, adoption of new features.</LI>
1587<LI>Updated reference outputs.</LI>
1588<LI><B>advanced</B>
1589 <UL>
1590 <LI>brachytherapy
1591 <UL>
1592 <LI>Corrected and updated input macros.</LI>
1593 </UL></LI>
1594 <LI>gammaray_telescope
1595 <UL>
1596 <LI>Fixed compilation problems in <TT>MuonPhysicsList</TT> class.</LI>
1597 </UL></LI>
1598 <LI>hadrontherapy
1599 <UL>
1600 <LI>Reviewed example to update to the new beam line setup.</LI>
1601 <LI>Corrections in the Low Energy Electromagnetic physic lists.
1602 Improved the electromagnetic models for the generic ions.
1603 Corrected cross sections definitions for ions. Revised the
1604 definition and use of the electromagnetic options for the use
1605 with the Standard models.</LI>
1606 <LI>Added new approach for the choice of the physic models. Now
1607 packaged physic lists can be used as alternative to the physic
1608 models implemented in the class files EM, HE and HI.</LI>
1609 <LI>Fixed path of macro files.</LI>
1610 </UL></LI>
1611 <LI>microbeam
1612 <UL>
1613 <LI>Corrected typos in zero field region in <TT>MicrobeamEMField</TT>.</LI>
1614 </UL></LI>
1615 <LI>microdosimetry
1616 <UL>
1617 <LI>New application simulating 10 keV tracks Helium+ (positive
1618 charge is +e) particle in liquid water using only <TT>G4DNA</TT>
1619 processes.</LI>
1620 </UL></LI>
1621 <LI>Rich
1622 <UL>
1623 <LI>Fixed compilation problems in <TT>EventAction</TT> class.</LI>
1624 </UL></LI>
1625 </UL></LI>
1626<LI><B>extended</B>
1627 <UL>
1628 <LI>Updated EM standard physics-lists and EM options and changed
1629 default histograms format in EM examples.</LI>
1630 <LI>electromagnetic/TestEm7
1631 <UL>
1632 <LI>Added process type to <TT>G4SceenNuclearRecoil</TT>.</LI>
1633 <LI>Added <LI>standardICRU73</LI> physics list in which ion ionisation
1634 is simulated using new model G4IonLossParametrisedModel, configured
1635 via <TT>G4EmConfigurator</TT>.</LI>
1636 </UL></LI>
1637 <LI>electromagnetic/TestEm8
1638 <UL>
1639 <LI>Removed local components of <TT>PhysicsList</TT> and use
1640 <TT>G4EmConfigurator</TT> to configure PAI model.</LI>
1641 </UL></LI>
1642 <LI>electromagnetic/TestEm9
1643 <UL>
1644 <LI>Added computation of ratios E1/E9 and E1/E25.</LI>
1645 <LI>Added PhysLists with relativistic LPM model and updated macros.</LI>
1646 <LI>Added control on number of events with Edep < 80%.</LI>
1647 </UL></LI>
1648 <LI>eventgenerator/exgps
1649 <UL>
1650 <LI>Updated analysis code and macros with AIDA.</LI>
1651 </UL></LI>
1652 <LI>eventgenerator/pythia
1653 <UL>
1654 <LI>New example <TT>decayer6</TT> of external decayer implementation
1655 based on Pythia6.</LI>
1656 </UL></LI>
1657 <LI>field/field04
1658 <UL>
1659 <LI>Fixed setup of random engine in <TT>main()</TT>.</LI>
1660 <LI>Changed physics list to <TT>emstandard</TT>. Added charge
1661 exchange.</LI>
1662 </UL></LI>
1663 <LI>hadronic/Hadr00
1664 <UL>
1665 <LI>New example demonstrating how to use <TT>G4PhysListFactory</TT>
1666 to build physics lists and <TT>G4HadronicProcessStore</TT> to
1667 access cross sections.</LI>
1668 </UL></LI>
1669 <LI>hadronic/Hadr01
1670 <UL>
1671 <LI>Improved physics-lists output. Added charge exchange.</LI>
1672 </UL></LI>
1673 <LI>medical/DICOM
1674 <UL>
1675 <LI>Included <TT>G4PSDoseDeposit_RegNav</TT> to distribute dose along
1676 voxels, including msc and energy loss corrections, for the case
1677 of skipping voxel with equal materials when using regular
1678 navigation.</LI>
1679 </UL></LI>
1680 <LI>medical/fanoCavity[2]
1681 <UL>
1682 <LI>Updated EM standard physics-lists and EM options and changed
1683 default histograms format.</LI>
1684 </UL></LI>
1685 <LI>optical/LXe
1686 <UL>
1687 <LI>Added Birks constant for the LXe scintillator and Polystyrene
1688 scintillator.</LI>
1689 <LI>Added call to <TT>SetMaxBetaChangePerStep()</TT> of Cherenkov
1690 in <TT>LXeOpticalPhysics</TT>.</LI>
1691 </UL></LI>
1692 <LI>persistency/gdml
1693 <UL>
1694 <LI>Added examples set for GDML plugin module: new example <TT>G02</TT>
1695 showing how to use GDML module for reading and writing; also showing
1696 how to import STEP Tools CAD files.
1697 Imported old GDML example originally placed inside
1698 <TT>extended/gdml</TT> and renamed <TT>G01</TT>.</LI>
1699 <LI><TT>G01</TT>: updated <TT>loop.gdml</TT> and <TT>solids.gdml</TT>
1700 descriptions to fix schema validation warnings; added new GDML
1701 samples compliant with GDML_3_0_0 and removed obsolete ones.
1702 Added example in <TT>main()</TT> how to retrieve auxiliary
1703 information.</LI>
1704 <LI><TT>G03</TT>: new example showing how to extend the GDML schema
1705 in input.</LI>
1706 </UL></LI>
1707 <LI>persistency/P03
1708 <UL>
1709 <LI>New example showing usage of ASCII text persistency for detector
1710 description.</LI>
1711 </UL></LI>
1712 <LI>radioactivedecay/exrdm
1713 <UL>
1714 <LI><TT>exdrmMaterialMessenger</TT>: fixed units for density.</LI>
1715 <LI><TT>exdrmPhysicsList</TT>: fixed definition of cuts; simplified
1716 logic for setting of hadronic physics; corrected problem of double
1717 instantiation of radioactive decay.</LI>
1718 <LI>Use AIDA setup from central scripts. Updated analysis code and
1719 macros with AIDA.</LI>
1720 <LI>Fixed compilation warnings.</LI>
1721 </UL></LI>
1722 <LI>runAndEvent/RE03
1723 <UL>
1724 <LI>Add new input macro <TT>run4.mac</TT> with cylindrical scoring
1725 mesh.</LI>
1726 </UL></LI>
1727 </UL></LI>
1728<LI><B>novice</B>
1729 <UL>
1730 <LI>N02
1731 <UL>
1732 <LI><TT>PhysicsList</TT>: added method <TT>AddStepMax()</TT> for
1733 <TT>G4StepLimiter</TT>. Updated EM standard physics-list.</LI>
1734 <LI><TT>DetectorConstruction</TT>: added method
1735 <TT>SetMaxStep()</TT>.</LI>
1736 <LI><TT>DetectorMessenger</TT>: added command
1737 <TT>/N02/det/stepMax</TT>.</LI>
1738 </UL></LI>
1739 <LI>N03
1740 <UL>
1741 <LI>Updated EM standard physics-list.</LI>
1742 <LI>Use <TT>G4hMultipleScattering</TT> for muons and protons.</LI>
1743 <LI>Added Qt setup to vis macros.</LI>
1744 </UL></LI>
1745 <LI>N06
1746 <UL>
1747 <LI>Use <TT>dynamic_cast</TT> for surface in
1748 <TT>ExN06DetectorConstruction</TT>.</LI>
1749 <LI>Added call to <TT>SetMaxBetaChangePerStep()</TT> of Cherenkov in
1750 <TT>ExN06PhysicsList</TT>.</LI>
1751 </UL></LI>
1752 </UL></LI>
1753</UL>
1754
1755<HR>
1756
1757</BODY>
1758</HTML>
Note: See TracBrowser for help on using the repository browser.