-
Notifications
You must be signed in to change notification settings - Fork 328
/
Copy pathReleaseNotes4.10.1.html
2745 lines (2661 loc) · 132 KB
/
ReleaseNotes4.10.1.html
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
<HTML>
<HEAD>
<TITLE>Geant4 10.1 Release Notes</TITLE>
</HEAD>
<BODY BGCOLOR='F0F0F0'>
<P> </P>
<BR>
<P> </P>
<P ALIGN="Center">
<FONT SIZE="+4" COLOR="#238E23">
<B>Geant4 10.1 Release Notes</B>
</FONT>
<TABLE WIDTH="100%">
<TR><TD ALIGN="Right">
<FONT SIZE="-1" COLOR="#5C3317">
<B><I>December 5<SUP>th</SUP>, 2014</I></B>
</FONT>
</TD></TR>
</TABLE>
<BR><BR>
<HR ALIGN="Center" SIZE="7%">
<P>
The code and binary libraries for the supported systems are available
through our <A TARGET="ext" HREF="http://cern.ch/geant4/support/download.shtml">Source
Code Web page</A>.
</P>
<P>
<I>We are grateful for the efforts of Geant4 users who have provided
detailed feedback or comprehensive reports of issues.
We thank in particular those who have contributed corrections,
improvements or developments included in this release. </I>
</P>
<P>
Please refer to the
<A TARGET="ext" HREF="http://cern.ch/geant4/support/userdocuments.shtml">Geant4
User Documentation</A> for further information about using Geant4.
</P>
<H2><I>Contents</I></H2>
<OL>
<LI><A HREF="#1.">Supported and Tested Platforms</A></LI>
<LI><A HREF="#2.">Supported CLHEP version</A></LI>
<LI><A HREF="#3.">Items for migration of the user code</A></LI>
<LI><A HREF="#4.">New Developments and Capabilities</A></LI>
<LI><A HREF="#5.">Expected effects on physics and performance</A></LI>
<LI><A HREF="#6.">Known Run-Time Problems and Limitations</A></LI>
<LI><A HREF="#7.">Compilation Warnings</A></LI>
<LI><A HREF="#8.">Geant4 Software License</A></LI>
<LI><A HREF="#9.">Detailed list of changes and fixes</A></LI>
</OL>
<P> </P>
<A NAME="1."></a>
<HR>
<!-- ============================================== -->
<H2>1. Supported and Tested Platforms</H2>
Platforms:
<UL>
<LI>Linux, gcc-4.4.7.<BR>
Tested on 64 bit architectures (Intel or AMD) with
Scientific Linux CERN 6 (SLC6) (based on Red Hat Linux Enterprise 6).</LI>
<LI>MacOSX 10.9 with gcc-4.2.1/clang-3.5</LI>
<LI>Windows7 with Visual C++ 12.0 (Visual Studio 2013)</LI>
</UL>
More verified and tested configurations (64 bits):
<UL>
<LI>Linux, gcc-4.7.2, gcc-4.8.2, gcc-4.9.2</LI>
<LI>Linux, Intel-icc 14.0, 15.0</LI>
<LI>MacOSX 10.10 with gcc-4.2.1/clang-3.5</LI>
<LI>Windows7 with Visual C++ 9.0, 10.0, 11.0</LI>
<LI>Many Integrated Core architecture (aka Intel Xeon Phi) with Intel-icc 15.0</LI>
</UL>
Note: Windows platforms are supported/verified only for the sequential mode.
Multi-threading capability of this release does not support Windows.
<P> </P>
<A NAME="2."></A>
<HR>
<!-- ============================================== -->
<H2>2. Supported CLHEP version</H2>
This release of Geant4 has been verified with
<A TARGET="ext" HREF="http://cern.ch/clhep/">CLHEP</A>, release <B>2.2.0.4</B>.
Use of a different CLHEP version may cause incorrect simulation results.<BR>
NOTE: an internal module of the relevant CLHEP classes is provided and can be
used as alternative to an external CLHEP library installation.
<P> </P>
<A NAME="3."></A>
<HR>
<!-- ============================================== -->
<H2>3. Items for migration of the user code</H2>
Listed here is some relevant information on developments included in this
release.
Note that for all users a full re-installation of libraries (or a full
re-compilation) and a re-compilation of user applications is required.
<P> </P>
<B>General</B>
<P> </P>
<UL>
<LI>The new version of CLHEP can be built supporting the C++11 Standard,
on compilers that support C++11.
When C++11 option is chosen in a multi-threaded build of Geant4,
this trigers the use of the Standard <TT>thread_local</TT>
and <TT>atomic</TT> keywords.</LI>
<LI>The procedure of deleting the full geometry for rebuilding a new one from
scratch has been reviewed. It is suggested to use
<TT>G4RunManager::ReinitializeGeometry(<I>true</I>)</TT>
or the equivalent UI command <TT>/run/reinitializeGeometry</TT> rather than
directly invoke deletion from G4SolidStore, G4LogicalVolumeStore and
G4PhysicalVolumeStore, to safely delete all previously-defined solids,
logical and physical volumes.</LI>
</UL>
<P> </P>
<B>Geometry</B>
<P> </P>
<UL>
<LI>A new minor release of the GDML schema, GDML-3.1.1, is used,
supporting the new MultiUnion structure. This new feature
is available only in installations which use the
<A HREF="https://cern.ch/aidasoft/USolids">Unified Solids Library</A>.
The new schema is fully compatible with old schema versions
and schema validation thorugh network is already activated against it.</LI>
</UL>
<P> </P>
<B>Electromagnetic and optical physics</B>
<P> </P>
<UL>
<LI>The data file G4EMLOW6.41 should be used.</LI>
<LI>A new structure of UI commands for optical-physics is implemented.</LI>
</UL>
<P> </P>
<B>Hadronic physics</B>
<P> </P>
<UL>
<LI>The new data sets G4PhotonEvaporation-3.1, G4RadioactiveDecay-4.2
and G4NDL-4.5 should be used.</LI>
</UL>
<P> </P>
<B>Generic biasing</B>
<P> </P>
<UL>
<LI>The G4VBiasingOperation interface class had been modified to simplify
the interface. These are described in the Biasing section of detailed
changes chapter below.</LI>
</UL>
<P> </P>
<B>Data Sets</B>
<P> </P>
This release introduces new data set versions.
Please see the corresponding details in
<A href="#data-notes">Section 10</A> of this document.
<UL>
<LI>New data set versions: <TT>G4EMLOW-6.41, G4NDL-4.5,
G4RadioactiveDecay-4.2, G4PhotonEvaporation-3.1</TT>.</LI>
</UL>
<P> </P>
<A NAME="4."></A>
<HR>
<!-- ============================================== -->
<H2>4. New Developments and Capabilities </H2>
<B>Geometry</B>
<UL>
<LI>In this release, an option allows an installation to use the
<A HREF="https://cern.ch/aidasoft/USolids">Unified Solids Library</A>
primitives, to replace the original Geant4 solids, as in the
previous release. An additional configuration option enables
a build against an external installation of the USolids library.</LI>
</UL>
<B>Materials</B>
<UL>
<LI>Preliminary support for phonon propagation
(see <A HREF="#phonon"><b>Phonon Physics</b></A> below) is provided
by G4LatticeLogical (which defines parameters for materials) and
G4LatticePhysical (which associates G4LatticeLogical with a particular
G4VPhysicalVolume, including lattice orientation). These objects should
be instantiated in the user's G4VUserDetectorConstruction class.</LI>
</UL>
<B>Electromagnetic physics</B>
<UL>
<LI>A new class G4EmParameters and updated set of UI commands have been
introduced, allowing easy definition of the EM parameters both in
sequential and multi-threaded modes.</LI>
<LI>A new option "DisplacementBeyondBoundary" for simulation of
multiple scattering diplacement at geometry boundary is available.</LI>
<LI>G4SynchrotronRadiation process is now applicable for all
charged particles.</LI>
<LI>High energy processes G4GammaConversionToMuons and G4eeToHadrons
are ready for production.</LI>
<LI>A new model class G4LowEWentzelVIModel is introduced for low-energy
electron elastic scattering. Low-energy cross-section for water has
been added for the low-energy Livermore photoelectric model.</LI>
<LI>A new User Interface command to disable production
thresholds in atomic deexcitation has been introduced:
<TT>/process/em/deexcitationIgnoreCut true/false</TT>.</LI>
<LI>An alternative set of data files for the simulation of atomic fluorescence
lines is also provided in this release.</LI>
<LI>In Geant4-DNA physics, added ionisation model from Rudd for
B, Be, Li and Si ions. An alternative physics constructor
G4EmDNAPhysics_option1 including the G4LowEWentzelVIModel has been also
introduced. G4DNAIonisation and G4DNARuddIonisationExtendedModel have been
updated for G4GenericIon usage.</LI>
<LI>Classes for the simulation of water radiolysis have been introduced for
Geant4-DNA chemistry.
See details at <A HREF="http://geant4-dna.org">Geant4-DNA project site</A></LI>
</UL>
<B>Hadronic physics</B>
<UL>
<LI>In this release, mass width is taken into account in decays of short-lived
hadrons. Daughter hadrons have dynamical mass according to Breit-Wigner
distribution.</LI>
<LI>The Fritiof (FTF) model has been significantly improved, resulting in
closer agreement with thin-target data.
Revisions in string fragmentation affect the meson production, and in
particular the pi-zero fraction of showers. This is largely counteracted
by other improvements of FTF and an imposed reduction of omega production.
The overall effects on hadronic observables is found to large cancel
in our benchmark hadronic calorimeter setups, but the effect should be
monitored on experiment setups for key observables including visible
energy, resolution, longitudinal and lateral size.</LI>
<LI>The fragmentation part of the Quark-Gluon-String (QGS) model has been
improved significantly.
This implies that the hadronic showers produced with QGS-based physics
lists (e.g. QGSP_FTFP_BERT) become wider and longer, and with a lower
energy response, in closer agreement with the ones produced by FTF. </LI>
<LI>The INCLXX model has been extended up to 15-20 GeV incident energy.</LI>
<LI>Labeling of tracks resulting from muon stopping are added.</LI>
</UL>
<A NAME="phonon"><B>Phonon Physics</b></A>
<P>The contents of this new physics category were moved into the toolkit
from the <Code>phonon</Code> extended example.</P>
<UL>
<LI>A new set of processes and utility classes are provided as a framework
to support propagation of phonons through materials.</LI>
<LI>G4LatticeManager and G4LatticeReader provide access to the solid
crystal structure parameters (G4LatticeLogical and G4LatticePhysical in
Materials) read from data files and used by the physics processes.</LI>
<LI>G4PhononPolarization defines an enum to identify the three acoustic
phonon polarization states supported in this framework. See
also <A HREF="#particles"><b>Particles</b></A> below.</LI>
<LI>G4PhononTrackMap is an internal singleton class used by the processes
to associate additional phonon-specific information (wave number,
etc.) with each propagating G4Track object in the event.</LI>
<LI>G4VPhononProcess is the abstract base class for the phonon processes,
and provide some common utility functions.</LI>
<LI>G4PhononDownconversion implements the conversion of high energy
phonons to pairs of lower energy phonons.</LI>
<LI>G4PhononReflection is a "template" process which will, in the future,
implement reflection or transmission of phonons at the boundaries of
crystals. Currently, phonons at a boundary are absorbed, and an
associated G4VUserSteppingAction (in the <Code>phonon</Code> example)
records hits.</LI>
<LI>G4PhononScattering implements the scatting of phonons from one
polarization state to another due to impurities or defects in the
crystal lattice.</LI>
</UL>
<B>Generic Biasing</b>
<UL>
<LI>A new class G4BiasingProcessSharedData is introduced, allowing to gather
information shared by the G4BiasingProcessInterface instances attached
to the same G4ParticleDefinition (hold by a same G4ProcessManager).</LI>
<LI>Now providing easier access to cross-sections/mean-free-paths of wrapped
physics processes, making all them up to date at the first call to the
biasing operator.</LI>
<LI>New examples have been added: <TT>GB03</TT> showing a technique inspired
by geometry importance biasing, but with some more flexibility;
<TT>GB04</TT>, an implementation of Bremsstrahlung splitting, using the
generic biasing classes.</LI>
</UL>
<A NAME="particles"><B>Particles</B></A>
<UL>
<LI>Ions and isomers are instantiated during the event loop as they become
necessary. In the previous release 10.0, all ions and isomers were
instantiated before the event loop.</LI>
<LI>Pre-instantiation of all ions and isomers is still optional via a UI
command at <TT>PreInit</TT> or <TT>Idle</TT> states.</LI>
<LI>Three new particles corresponding to the polarization states of acoustic
phonons are provided to support the <A HREF="#phonon">phonon physics</A>
processes. These were moved into the toolkit from the <Code>phonon</Code>
extended example.
<UL>
<LI>G4PhononLong: longitudinal (along crystal valley axis) polarization;</LI>
<LI>G4PhononTransFast: higher-speed transverse polarization;</LI>
<LI>G4PhononTransSlow: lower-speed transverse polarization.</LI>
</UL>
</UL>
<B>Physics Lists</B>
<UL>
<LI>Switched on muon-nuclear by default in all physics lists.</LI>
<LI>Cut on proton is set to zero, to simulate all recoils from elastic
scattering, in physics lists using neutron-HP.</LI>
<LI>The physics lists based on INCLXX use this model for pions, protons and
neutrons up to 20 GeV, and the string model (FTF or QGS) starting
from 15 GeV.</LI>
<LI>Trying out a new hadron elastic scattering, still in development, in
the experimental physics-list FTFP_BERT_TRV.</LI>
<LI>The G4OpticalPhysics constructor has been restructured and UI
commands have changed. This allows for different particles to have
specific settings of optical parameters.</LI>
<LI>New experimental physics lists ShieldingM and NuBeam are introduced.</LI>
</UL>
<B>Visualization</B> and <B>Interfaces</B>
<UL>
<LI><U>Evolution of Qt User Interface</U>
<UL>
<LI>The "Scene tree" opens up as soon as the detector is drawn.</LI>
<LI>An editable "Viewer properties" panel allows one to adjust view
parameters interactively.</LI>
<LI>"Picking information" also has its own panel that may be opened
by the user. Picking has been improved.</LI>
<LI>The "Scene tree, Help and History" panel may be detached, leaving
more screen space for the viewers.</LI>
<LI>The "Output" panel may also be detached.</LI>
<LI>One may select output by a string match or, in the case of
multi-threaded mode, by thread.</LI>
<LI>A "Useful tips" window is available in the viewer panel and comes up
automatically if no other view has been created.</LI>
</UL></LI>
<LI>In representing curved surfaces by planar polygons the number of
"lines per circle" may optionally be reduced to as little as 3 (the
default is 24) if speed of rendering is the priority.</LI>
<LI><U>New commands</U>
<UL>
<LI><TT>/vis/touchable/dump</TT>: dumps attributes of a specific
touchable (as set by the <TT>/vis/set/touchable</TT> command).</LI>
<LI><TT>/vis/scene/add/extent</TT>: allows one to add an extent (i.e.,
coordinate system and range) to a scene. Normally this is done
automatically by a survey of the geometry, but if you wish to draw
trajectories without geometry, for example, you may use this command.</LI>
<LI><TT>/vis/set/textSize</TT>: controls text size on subsequent
<TT>/vis/scene/add/axes</TT> and <TT>/vis/scene/add/scale</TT> commands.</LI>
</UL></LI>
<LI><U>Improved commands</U>
<UL>
<LI><TT>/vis/scene/add/scale</TT>: one may now add more than one scale
to a scene.</LI>
<LI><TT>/vis/scene/add/axes</TT>: one may suppress annotations.</LI>
<LI><TT>/vis/scene/add/logicalVolume</TT>: now draws axes of the local
coordinate system.</LI>
</UL></LI>
</UL>
<A NAME="5."></A>
<HR>
<!-- ============================================== -->
<H2>5. Expected effects on physics and computing performance</H2>
<B>General</B>
<UL>
<LI>Memory space required per thread is reduced to less than half.
This reduction does not include the space defined in the users code.</LI>
<LI>We observe up to 10% speedup in several use-cases.</LI>
</UL>
<B>Electromagnetic physics</B>
<UL>
<LI>All internal physics tables are shared between threads, thus
reducing contribution of electromagnetic physics to total
memory per thread.</LI>
<LI>Code cleanup providing slight speedup (about a few percent)
of electromagnetic simulation.</LI>
</UL>
<B>Hadronic physics</B>
<UL>
<LI>Extensive development in the FTF model has improved significantly
the agreement between simulation and thin-target data on
hadron-hadron and hadron-nucleus interactions.
Small changes are expected in hadronic shower observables
in the physics lists based on the FTF model (e.g. FTFP_BERT).</LI>
<LI>Improvements in the fragmentation part of the QGS model produce
now hadronic showers which are more similar to those produced by the
FTF model.</LI>
</UL>
<P> </P>
<A NAME="6."></A>
<HR>
<!-- ============================================== -->
<H2>6. Known Run-Time Problems and Limitations</H2>
For a complete list of outstanding run-time problems and to submit any
problem you may find while running this version of Geant4, please refer
to the
<A TARGET="ext" HREF="http://cern.ch/geant4/problemreport">Geant4 Problem
Reporting System</A>.
<P> </P>
<A NAME="7."></A>
<HR>
<!-- ============================================== -->
<H2>7. Compilation Warnings</H2>
There may be a few compilation warnings on some platforms.
We do not believe that any of these lead to incorrect run-time behaviour.
<P> </P>
<A NAME="8."></A>
<HR>
<!-- ============================================== -->
<H2>8. Geant4 Software License</H2>
A Software License applies to the Geant4 code.
Users must accept this license in order to use it. The details and the list of
copyright holders is available at
<A href="http://cern.ch/geant4/license">http://cern.ch/geant4/license</A>
and also in the text file <TT>LICENSE</TT> distributed with the source code.
<P> </P>
<A NAME="9."></A>
<HR>
<!-- ============================================== -->
<H2>9. Detailed list of changes and fixes</H2>
These are the main new features/fixes included in this release since the
last patched public release (for more detailed lists of fixes/additions,
please refer to the corresponding History files provided in most packages):
<P> </P>
<A NAME="conf-notes">
<H3><I>Configuration</I></H3></A>
<UL>
<LI>CMake:
<UL>
<LI>Added -DG4USE_STD11 compilation flag when c++11 is selected at
configuration time for capable compilers.</LI>
<LI>Added command line arguments to configuration scripts to report
C++ standard compiled against and TLS model used if multithreading
support available. Added presence of static libs as a feature
argument that can be checked.</LI>
<LI>Added support for "offloading" of tests (e.g. for use on Xeon Phi
co-processors).</LI>
<LI>Removing any self-links from internal library link list when building
global libraries.</LI>
<LI>Enabled choice between builtin or system USolids library (builtin is
the default).</LI>
<LI>Added Modules/Geant4ConfigureModulefile.cmake new file to configure
and install a basic Environment Modules module file for Geant4.</LI>
<LI>Added ROOT_BIN_DIR variable in FindROOT.cmake to point to the path
of root executables. Needed for merging of output files for MT in
physics testings.</LI>
<LI>Include Geant4 headers as SYSTEM and after other headers.</LI>
<LI>Removed unused settings for tpmalloc module.</LI>
<LI>Updated references to data libraries version for 10.1.</LI>
</UL></LI>
<LI>GNUMake:
<UL>
<LI>No longer supported, only for development/testing use.</LI>
</UL></LI>
</UL>
<A NAME="ana-notes">
<H3><I>Analysis</I></H3></A>
<UL>
<LI>Updated histogramming tools to g4tools-1.16.3.</LI>
<LI>Added new CreateNtupleTColumn() functions for ntuple columns of vectors
in G4AnalysisManager.</LI>
<LI>Added interface classes G4VAnalysisReader and G4VRNtupleManager for
reading, and their Root specializations: G4RootAnalysisReader,
G4RootRNtupleManager. Introduced independent numbering of warnings
from reader.</LI>
<LI>Use G4Threading::IsMultithreadedApplication() instead of
G4AnalysisManagerState::IsMT() (now removed); this function fixes files
clean-up at the end of sequential application built against
multi-threaded libraries.</LI>
<LI>Added typedefs and functions for accessing iterators over H1, H2,
Ntuples. Added G4AnalysisManager functions to access FirstIds.</LI>
<LI>Replaced use of std::cout with G4cout in Root managers
to fix potential data race among threads.</LI>
<LI>Get rid of obsolete 'register' keyword in csz_inflate.cc.</LI>
<LI>Removed unsused data member in G4P1DummyManager.</LI>
<LI>Added histograms and profiles support in Csv.</LI>
<LI>Implemented reading csv ntuples.</LI>
<LI>Finalized G4VAnalysisReader interface: added reading P1, P2, H3;
modifications to fit to all outputs; support for both user defined file
names and "generic" file names (generated automatically by G4AnalysisManager
from the base name).</LI>
<LI>Introduced G4BaseFileManager and separated implementation for
output/input file managers</LI>
<LI>Implemented reading P1, P2 in G4RootAnalysisReader; prepared code for H3
which reading is not yet available in tools.</LI>
<LI>Completed implementation of G4XmlAnalysisReader; now requiring Expat parser.</LI>
<LI>Fixed writing ntuples when more than one ntuple is defined (Xml).</LI>
<LI>Do not overwrite user defined file extension.</LI>
<LI>Fixed units in /analysis/[h|p]n/create and /analysis/[h|p]n/set commands.</LI>
<LI>Fixed Coverity defects: initialization of data members in G4VAnalysisManager;
provided assignment operator for G4HnDimensionInformation.</LI>
<LI>Removed H1, H2, P1 dummy manager classes and H3, P3 moved in hbook
implementation in examples.</LI>
<LI>Revised (and simplified) numbering of warnings in exception messages.</LI>
<LI>Support reading of root ntuple with column of std::string type by using
ntuple_binding. Implemented reading H3 for Root.
Added an option to write the Hippo header in csv ntuple output.</LI>
<LI>Fixed reading histograms with titles of more words.</LI>
<LI>Revised (and simplified) numbering of warnings in exception messages.</LI>
</UL>
<A NAME="digits-notes">
<H3><I>Digitization & Hits</I></H3></A>
<UL>
<LI>Added Merge() methods to G4ScoringManager and G4VScoringMesh, needed
for multi-threading.</LI>
<LI>Changed method names in G4VScoringMesh and derived classes.</LI>
<LI>Added missing options in command-based scorers in G4ScoreQuantityMessenger
and G4ScoreQuantityMessengerQCmd.</LI>
<LI>Added protoype cloning mechanism for sensitive-detectors, needed for
multi-threaded mode.</LI>
<LI>G4VScoringMesh, G4ScoringBox, G4ScoringCylinder: fixed Construct()
to make it work when the entire geometry has been destroyed.
Addressing problem report
<A HREF="http://bugzilla-geant4.kek.jp/show_bug.cgi?id=1665">#1665</A>.</LI>
</UL>
<A NAME="emstd-notes">
<H3><I>Electromagnetic Processes</I></H3></A>
<UL>
<LI><B>DNA</B>:
<UL>
<LI>Modified G4DNAChampionElasticModel to read high precision differential
cumulated cross-section.</LI>
<LI>Modified calculation of secondary kinetic for fast code.
Updated chemistry.</LI>
<LI>Changed to faster method interpolation in G4DNABornIonisationModel.</LI>
<LI>G4ITSafetyHelper: force temporary usage of G4PathFinder.</LI>
<LI>Added interface class G4ITTimeStepper.</LI>
<LI>Added G4DNABornAngle and G4DNARuddAngle generators; ionisation models
switch to use angular generator interface.</LI>
<LI>Switched to DNAion for Si in G4DNAGenericIonsManager.</LI>
<LI>Added Si to G4DNARuddIonisationExtendedModel.
Updated G4DNAIonisation and G4DNARuddIonisationExtendedModel for
G4GenericIon usage.</LI>
<LI>Avoid usage of molecule iterators as pointers.</LI>
<LI>Removed obsolete class for electron excitation.</LI>
<LI>Get rid of obsolete 'register' keyword in code.</LI>
<LI>Added G4ITStepManager class and related messenger.</LI>
<LI>Added LEPTS model classes.</LI>
<LI>Renamed classes: G4ITTimeStepper-->G4VScheduler;
G4ITStepManager-->G4ITScheduler; G4ITStepManager-->G4ITSchedulerMessenger.
Removed G4AllITManager G4ITManager and G4VITScheduler classes.
Added G4ITFinder and G4VITTrackHolder. Implemented G4ITTrackHolder.
Code cleanup.</LI>
<LI>Removed G4MolecularConfiguration from the manager's table when deleted.</LI>
<LI>Use G4ITTimeStepper in ChemMan::InitMaster() and G4DNASecondOrderReaction.</LI>
<LI>Avoid use of std::map at the application level in TimeStepAction.</LI>
<LI>Simplified initialization of chemistry from user applications; just
registering constructor is enough to initialize the chemistry.</LI>
<LI>Transform fStopAndAlive to fStopAndKill in G4DNABrownianTransportation
when the particle has reached a boundary.</LI>
<LI>Updated G4ITNavigator2 to recent developments in G4Navigator.</LI>
<LI>Fixed bug in G4MoleculeGun and corrected track creation by
G4MoleculeGunMessenger.</LI>
<LI>Improved error message for missing data in PW elastic model.</LI>
<LI>Removed obsolete classes.</LI>
<LI>Fixes for Coverity defects.</LI>
<LI>Requires G4EMLOW-6.41 data-set.</LI>
</UL></LI>
<LI><B>High Energy</B>
<UL>
<LI>G4GammaConversionToMuons: added protection against infinite loop at the
reaction threshold; removed G4ThreadLocal variables; introduced G4Exp,
G4Log and NIST functions; added counters limiting do/while loops.</LI>
<LI>G4eeToHadrons, G4eeToHadronsModel,G4eeToHadronsMultiModel: revision
and cleanup of code.</LI>
</UL></LI>
<LI><B>Low Energy</B>
<UL>
<LI>Added new model class G4LowEWentzelVIModel.</LI>
<LI>G4LivermorePhotoElectricModel: added low-energy cross-section
for water, make cross section const below first ionisation
potential for all elements/materials.</LI>
<LI>G4IonParametrisedLossModel, G4LivermoreIonisationModel: added
G4DeltaAngle generator for angular distribution.</LI>
<LI>Make G4AtomicTransitionManager become pure singleton shared between
threads, with all run time methods const; Initialise() method to be
called in the beginning of the run.
Adapted classes accordingly.</LI>
<LI>Changed Livermore, LivemorePolarized, LivemoreModified and
Penelope Compton to unify the treatment for energy <
LowEnergyLimit(). Null cross-section
and no change in the gamma state.</LI>
<LI>G4LivermorePhotoElectricModel, G4LivermoreGammaConversionModel,
G4LivermoreRayleighModel, G4LivermoreComptonModel,
G4IonParameterisedLossModel: added proper deletion of G4PhysicsVectors
at the end of run.</LI>
<LI>Use cumulated cross-sections in G4MicroElecElasticModel; use
LinLinInterpolate() instead of LinLog(); better treatment of GenericIon
in G4MicroElecInelastic and G4MicroElecInelasticModel; improved MT
compatibility.</LI>
<LI>Change in angular generator to use G4DeltaAngle model.</LI>
<LI>Fix in G4MicroElecInelasticModel for potential infinite loop.</LI>
<LI>Fixes for Coverity defects.</LI>
<LI>Requires G4EMLOW-6.41 data set.</LI>
</UL></LI>
<LI><B>Muons</B>
<UL>
<LI>G4MuPairProductionModel, G4MuBremsstrahlungModel: added protection at
initialisation for the case when user artificially reduces high energy
limit of the model. Addressing problem report
<A HREF="http://bugzilla-geant4.kek.jp/show_bug.cgi?id=1670">#1670</A>.</LI>
<LI>Added new class G4TablesForExtrapolator to store EM tables shared between
threads. Imported data from G4EnergyLossForExtrapolator.</LI>
<LI>Use G4EmParameters in G4MuPairProductionModel, G4MuBremsstrahlungModel and
G4MuIonisation.</LI>
</UL></LI>
<LI><B>Polarisation</B>
<UL>
<LI>G4PolarizationMessenger: fixed Coverity report on non-initialized
members.</LI>
<LI>G4PolarizedCompton, G4PolarizedComptonModel: added 'startFromNull'
option as for standard Compton process and add same low-energy
threshold to create secondary particle.</LI>
<LI>G4PolarizedCompton: fixed initialisation, added sharing of process
table among threads.</LI>
<LI>Use G4EmParameters in G4PolarizedCompton, G4PolarizedGammaConversion,
G4PolarizedPhotoElectricEffect, G4ePolarizedBremsstrahlung and
G4ePolarizedIonisation.</LI>
</UL></LI>
<LI><B>Standard</B>
<UL>
<LI>G4WentzelOKandVIxSection, G4WentzelVIRelXSection, G4WentzelVIModel,
G4WentzelVIRelModel, G4eCoulombScatteringModel,
G4hCoulombScatteringModel: added Boolean flag to identify in
physics-list if multiple and single scattering are combined or not;
make consistent definition
of min and max scattering angle for single scattering mode.
</LI>
<LI>G4WentzelOKandVIxSection: fixed initialisation for low-energy model
(this model is not combined with single scattering); fixed small
inaccuracy for sampling.</LI>
<LI>G4WentzelVIModel: changed single scattering factor from 1.5 to 1.25.
Added possibility to compute second momentum; added more accurate
transition to single scattering mode;
define single scattering mode before transformation from true to geometry
step length to avoid many small steps for very low-energy particles;
Refinements of lateral displacement.</LI>
<LI>G4BraggModel, G4BraggIonModel: added spin correction.</LI>
<LI>G4UniversalFluctuations: adapted code to allow for vectorised use of
random engine for CPU performance improvement; no change to algorithms.</LI>
<LI>G4UrbanMscModel: modified ComputeGeomPathLength() method to provide one
single return statement for easier printouts;
Modification in order to improve timing by 1-14%, depending on the
setup and cut; made correction to improve efficiency in 'UseSafety'
mode; fixed numerical problem for the case when range is nearly
truePathLength; refinements of lateral displacement;
added new step limit type UseSafetyPlus;
corrections to improve CPU in the use of random numbers.</LI>
<LI>G4DeltaAngle: added implementation of SampleDirectionForShell() virtual
method; improved sampling; added check on length of do/while loop;
comment out warning happens frequently for low-energy e-.</LI>
<LI>G4eCoulombScatteringModel, G4hCoulombScatteringModel,
G4IonCoulombScatteringModel: updated initialisation of vector of cuts;
cut for recoil can be changed via '/run/setCut' command.</LI>
<LI>G4ComptonScattering: set 'startFromNull' flag to true for all models forced
to zero cross-section for the low energy in the cross-section table.</LI>
<LI>G4KleinNishinaModel, G4KleinNishinaCompton, G4HeatedKleinNishinaCompton:
do not sample final state below low limit of the model (default 100 eV);
added protection to do/while loop; added check on secondary energy of both
gamma and electron using internal limit.</LI>
<LI>G4HeatedKleinNishinaCompton: use inheritance from G4KleinNishinaCompton.</LI>
<LI>G4IonCoulombScatteringModel: fix for non-initialised data (Coverity report).</LI>
<LI>G4ASTARStopping, G4PSTARStopping, G4BraggModel, G4BraggIonModel: restore
functionality to access NIST stopping data via chemical formula and not
only by material name.</LI>
<LI>G4ASTARStopping, G4ESTARStopping, G4PSTARStopping, G4WaterStopping:
reduced memory churn by using static data; delete physics vectors at
destruction; changed interface to be const
(allowing it to be shared among threads).</LI>
<LI>G4BraggModel, G4BraggIonModel: use static pointer to G4*STARStopping
classes, which are initialized once.</LI>
<LI>G4PAIxSection, G4PAIPhotData, G4PAIPhotModel, G4PAIModelData:
corrected deletion at destruction; use
spline interpolation; fixed sampling of delta-electrons.
Fixed memory leak in G4PAIxSection.</LI>
<LI>G4PairProductionRelModel, G4eBremsstrahlungRelModel: added protection
at initialisation for the case when user artificially reduces high
energy limit of the model. Addressing problem report
<A HREF="http://bugzilla-geant4.kek.jp/show_bug.cgi?id=1670">#1670</A>.</LI>
<LI>G4PEEffectFluoModel: fixed threshold cross section.</LI>
<LI>G4GoudsmitSaundersonMscModel: fixed rare division by zero.</LI>
<LI>Use G4EmParameters at initialisation in G4eIonisation,
G4hIonisation, G4ionIonisation, G4eBremsstrahlung, G4GammaConversion,
G4ComptonScattering, G4PhotoElectricEffect, G4CoulombScattering,
G4WentzelVIModel,
G4WentzelOKandVIxSection and G4WentzelVIRelXSection.</LI>
<LI>G4GoudsmitSaundersonMscModel: fixed displacement computation.</LI>
<LI>G4PEEffectFluoModel: make internal array per material and not per
materialCutsCouple, allowing model to be used in unit tests.</LI>
<LI>Additional fixes for Coverity defects.</LI>
</UL></LI>
<LI><B>Utils</B>
<UL>
<LI>G4VMultipleScattering: added possibility to build extra table for a
model. Minor cleanup for post-safety computation.
Introduced optional mechanism of displacement at geometry boundary.</LI>
<LI>G4VEmModel, G4VEmFluctuationModel: defined different pattern to access
to random generator for sequential and MT modes to avoid compillation
problems; random generator pointer becomes available to derived
model classes in order to save CPU.</LI>
<LI>G4EmCorrections, G4EmElementSelector, G4VEmModel, G4VEmProcess,
G4VEnergyLossProcess, G4VMultipleScattering, G4ionEffectiveCharge:
general cleanup including: use G4Log; reduced number of divisions;
use std::min and std::max instead of "if" where possible.</LI>
<LI>Fix in G4VMscModel::ComputeSafety() pass 2nd parameter to
G4SafetyHelper for optimisation. Added default for 2nd parameter,
compatible with G4SafetyHelper.</LI>
<LI>G4VEnergyLossProcess: for sub-cutoff regime added upper limit when
calling G4SafetyHelper.</LI>
<LI>G4VSubCutProducer, G4LossTableManager, G4VEnergyLossProcess: added new
interface to allow for production of delta-electrons below production
threshold.</LI>
<LI>G4EnergyLossMessenger, G4EmProcessOption: added extra flag and UI
command "/process/em/deexcitationIgnoreCut" allowing to disable check
on production threshold by deexcitation module; added interface methods and
UI command '/process/msc/DisplacementBeyondSafety'.</LI>
<LI>G4VEnergyLossProcess, G4VEmProcess, G4VMultipleScattering: fix for
cases of crash in G4WrapperProcess in sequential mode.
Addressing problem report
<A HREF="http://bugzilla-geant4.kek.jp/show_bug.cgi?id=1594">#1594</A>.</LI>
<LI>G4EmSaturation: updated class design, VisibleEnergyDeposition() method
become virtual allowing application of user alternative algorithms.
Added protection to throw exception if e- or proton are not defined
when used in VisibleEnergyDeposition(); do not instantiate G4Electron
and G4Proton by default in InitialiseBirksCoefficient();
moved check on existence of e- and proton from run time to
initialisation (i.e. it is now done only once).</LI>
Changed initialisation of G4EmSaturation to work in MT mode.
<LI>G4LossTableManager: helper classes are instantiated only if user
requests via access method.</LI>
<LI>G4LossTableManager, G4VEnergyLossProcess, G4VEmProcess: improved
initialisation; moved modifiers for parameters from inline to source
and added extra check on parameter value; throw warnings if parameters
are out of range.</LI>
<LI>G4EmCalculator: added public FindProcess() method.</LI>
<LI>G4EmCorrections, G4EmElementSelector, G4LossTableManager,
G4VEmModel, G4VEmProcess, G4VEnergyLossProcess: explicit delete
PhysicsTables and PhysicsVectors at destruction.</LI>
<LI>G4VAtomDeexcitation: if de-excitation options are defined for the
world G4Region, propagate these options to all G4Regions.</LI>
<LI>G4VEmProcess, G4VEnergyLossProcess: fixed model type definition
for secondary particle production (fluorescence, PIXE, splitting);
set step limit to DBL_MAX if
selected model is inactive at such energy - addressing problem report
<A HREF="http://bugzilla-geant4.kek.jp/show_bug.cgi?id=1674">#1674</A>.</LI>
<LI>G4EmParameters, G4EmParametersMessenger: new classes for keeping EM
parameters static for run time.</LI>
<LI>G4VEmProcess, G4VEnergyLossProcess, G4VMultipleScattering,
G4EmProcessOptions, G4VAtomDeexcitation: changed initialisation logic,
to use G4EmParameters. Addressing problem report
<A HREF="http://bugzilla-geant4.kek.jp/show_bug.cgi?id=1670">#1670</A>.
<LI>G4MscStepLimitType, G4EnergyLossMessenger: added new step limit type,
UseSafetyPlus for multiple-scattering.</LI>
<LI>G4VEmProcess, G4VEmModel: added access methods for target element and
isotope.</LI>
<LI>G4EmConfigurator: set high energy activation limit for a new model not
more than high energy limit (needed for DNA models).</LI>
<LI>Fixed Coverity defects.</LI>
</UL>
<LI><B>Xrays</B>
<UL>
<LI>G4SynchrotronRadiation: extended model from e+, e- to be universal.
Applicable for all relativistic charged particles.</LI>
<LI>Fixes for Coverity defects in G4VXTRenergyLoss.</LI>
<LI>Fix in BuildPhysicsTable() for G4Scintillation.
Addressing problem report
<A HREF="http://bugzilla-geant4.kek.jp/show_bug.cgi?id=1678">#1678</A>.</LI>
<LI>Re-engineered UI commands related to optical processes.
Addressing problem report
<A HREF="http://bugzilla-geant4.kek.jp/show_bug.cgi?id=1675">#1675</A>.</LI>
</UL></LI>
</UL>
<A NAME="event-notes">
<H3><I>Event</I></H3></A>
<UL>
<LI>First implementation of memory reduction mechanism in multi-threading
mode. Adapted General Particle Source classes.</LI>
<LI>G4AdjointPrimaryGenerator: added splitting of forward gamma primaries to
improve convergence of Reverse-Montecarlo.</LI>
<LI>Fix in G4SPSPosDistribution::GenerateOne() which was not working
correctly for GeneratePointsOnSurface() and GeneratePointsInVolume().
Addressing problem report
<A HREF="http://bugzilla-geant4.kek.jp/show_bug.cgi?id=1656">#1656</A>.</LI>
<LI>Introduced mechanism for not deleting G4Event until visualized by a
different thread.</LI>
<LI>Implemented new strategy for GPS messenger: being instantiated as singleton.
UI commands are created in a worker thread, but commands are executed by
the master. Adding G4MUTEXDESTROY for GPS classes.</LI>
<LI>Correction in the logic of normalization of sources for GPS.
Initialize mutex for G4SPSEneDistribution class; fix for unitialized array.</LI>
<LI>G4GeneralParticleSourceMessenger: change G4ParticleTable::GetIon()
to G4IonTable::GetIon().</LI>
<LI>Fixed Coverity defects.</LI>
</UL>
<A NAME="externals-notes">
<H3><I>Externals</I></H3></A>
<UL>
<LI>Moved USolids module from source/geometry.
Adapted scripts for optional builds against an installation of the
<A HREF="https://cern.ch/aidasoft/USolids">Unified Solids Library</A>
in a different, outside location.</LI>
<LI>Removed unused 'tpmalloc' and 'memoryprotection' modules.</LI>
<LI>Updated CLHEP module to version 2.2.0.4:
<UL>
<LI>Converted statics and globals to const, thread-local or atomic
to improve thread safety.</LI>
<LI>Introduced CLHEP_THREAD_LOCAL and CLHEP_ATOMIC_INT_TYPE macros
thread_local and atomic keywords.</LI>
<LI>Fixed compilation warnings on clang and gcc-4.9 compilers for
MTwistEngine and RanshiEngine.</LI>
<LI>Fixed a type mismatch in Utility/memory.h,
reported as compilation warning on Windows/VC9.</LI>
<LI>Updated Hep3Vector to move operators 'operator()(int)' to be inline
and removed printout to improve CPU performance.</LI>
<LI>Moved definition of <TT>pi</TT> into SystemOfUnits.h so that its
hard-coded value is not defined twice.</LI>
</UL></LI>
<LI>USolids:
<UL>
<LI>Added UMultiUnion construct, which enables the simultaneous union
of multiple solids. Uses voxel technique to improve performance.</LI>
<LI>Added shapes from the USolids library: UExtrudedSolid, UGenericTrap,
UTessellatedSolid (together with UQuadrangularFacet, UTriangularFacet
and UTessellatedGeometryAlgorithms utility classes) and UTrap.</LI>
<LI>UPolyhedra: moved Extent() from protected to public.</LI>
<LI>UPolycone: correction in Capacity() for iteration over the number of
sections and in SurfaceArea() for the case opening-angle is less than 2*pi.
Fixes in InsideSection() for openPhi when StartPhi is negative,
in Init() for Polycone defined from ZPlane[0]>ZPlane[N],
and in DistanceToOut() for points starting on internal surface.</LI>
<LI>UTet: fixed approximation in Extent().</LI>
<LI>Minor fixes of errors reported by Coverity and unit tests in
UTubs,UCons, UTrap, UTet, UTriangular/QuadrangularFacet.</LI>
<LI>Removed useless 'inline' specification for pure virtual function
StreamInfo() in VUSolid base class.</LI>
<LI>Removed references to G4 types in several classes and some code cleanup.</LI>
</UL></LI>
</UL>
<A NAME="gen-notes">
<H3><I>General Processes</I></H3></A>
<UL>
<LI><B>Biasing</B>
<UL>
<LI><U>management</U>:
<UL>
<LI>Simplified the G4VBiasingOperation interface class:
<UL>
<LI>Suppressed DenyProcessPostStepDoIt() method, functionality
merged (and generalized) in ApplyFinalStateBiasing().</LI>
<LI>Extra argument added as last argument of
ApplyFinalStateBiasing(..., G4bool& forceBiasedFinalState),
allowing to force to return as is the generated final state;
covers the case of the deprecated DenyProcessPostStepDoIt() by
not changing the primary state, changing its weight, and
setting this argument "true".</LI>
<LI>Merged ProposeGPILSelection() into
ProvideOccurenceBiasingInteractionLaw(), which has now
the signature ProvideOccurenceBiasingInteractionLaw(const G4BiasingProcessInterface*, G4ForceCondition&).</LI>
</UL></LI>
</UL></LI>
<LI><U>generic</U>:
<UL>
<LI>Introduced G4BiasingProcessSharedData: a class that gathers
information shared by G4BiasingProcessInterface instances attached
to the same G4ParticleDefinition (hold by same G4ProcessManager).
Access to the object is provided by the G4BiasingProcessInterface
methods GetSharedData().
Provides in particular lists of G4BiasingProcessInterface instances
for physics/non-physics biasing.</LI>
</UL></LI>
<LI>Easier access to cross-sections/mean-free-pathes of wrapped
physics processes: this is done by a call to the
PostStepGetPhysicalInteractionLength() of the wrapped physics
processes that anticipates the call by the stepping manager:
the first G4BiasingProcessInterface in the
PostStepGetPhysicalInteractionLength() loop triggers these
calls, and results are cached in each G4BiasingProcessInterface
instance. This makes cross-sections of physics wrapped processes
up to date at the first call to the biasing operator, simplifying
biasing implementations dealing with several cross-section or the
total cross-section.</LI>
<LI>Related rewritting of biasing operator G4BOptrForceCollision,
biasing operation G4BOptnForceCommonTruncatedExp and simplified
implementation of interaction law G4ILawCommonTruncatedExp.</LI>
</UL></LI>
<LI><B>Management</B>
<UL>
<LI>Added new process type for UCN processes in G4ProcessType.</LI>
</UL></LI>
<LI><B>Optical</B>
<UL>
<LI>Implemented full UNIFIED reflectivity probabilities when a dichroic
surface reflects.</LI>
<LI>G4OpWLS, G4OpRayleigh: always rebuild the integral-table in
BuildPhysicsTable() method.</LI>
<LI>G4OpBoundaryProcess now allowing for Transmittance, Reflectivity and
Absorption on dielectric_dielectric and dielectric_metal boundaries.
Added ConstProperty "SURFACEROUGHNESS". If set, the reflectivity at
dielectric_dielectric surface is angular dependent and calculated from:
<TT>exp(-pow((4*pi*theSurfaceroughness*Rindex1*cost1/wavelength),2))</TT>
for <TT>Rindex1 > Rindex2</TT>.</LI>
<LI>G4OpRayleigh process now calculates the Rayleigh scattering length for
more materials than just Water (although the Water default is kept).
To do this the user would need to specify the ISOTHERMAL_COMPRESSIBILITY
as a material property and optionally an RS_SCALE_LENGTH (useful for
testing).</LI>
<LI>Re-engineered UI commands. Addressing problem report
<A HREF="http://bugzilla-geant4.kek.jp/show_bug.cgi?id=1675">#1675</A>.</LI>
</UL></LI>
<LI><B>Phonon</B>
<UL>
<LI>G4LatticeManager: changed to globally shared object no longer
thread-local. Fixes cases of null-pointer crash in MT mode.</LI>
</UL></LI>
<LI><B>Scoring</B>
<UL>
<LI>Introducing G4ParallelWorldProcessStore to allow G4ParallelWorldProcess
objects of all threads to update their corresponding world volumes when
entire geometry is destroyed and rebuilt between runs.</LI>
</UL></LI>
<LI><B>Transportation</B>
<UL>
<LI>G4Transportation and G4CoupledTransportation: made static data member
'fUseMagneticMoment' and its set method EnableUseMagneticMoment().</LI>
<LI>Added initialization of G4CoupledTransportation data members (fixes
reported Coverity defect). Renamed data member, to make its name
canonical.</LI>
</UL></LI>
</UL>
<A NAME="geo-notes">
<H3><I>Geometry</I></H3></A>
<UL>
<LI>Moved solids/usolids module to source/externals.</LI>
<LI><B>Magnetic field</B>
<UL>
<LI>Moved constructors and simple methods to inline in G4ChargeState
and G4LineSection for CPU speedup.</LI>
</UL></LI>
<LI><B>Management</B>
<UL>
<LI>Moved G4SmartVoxelHeader constructor for partial voxels refinements
from protected to public.</LI>
<LI>Added G4USolid bridge class from internal USolids module.
Enabled implementation of StreamInfo().</LI>
</UL></LI>
<LI><B>Navigation</B>
<UL>
<LI>G4PropagatorInField: added new method GetCurrentEquationOfMotion().</LI>
<LI>Added internal method RecheckDistanceToCurrentBoundary() for
G4SafetyHelper, G4Navigator and G4PathFinder, for checking a proposed
displacement (new position) to see if it is in mother, and a proposed
new direction to find potential backtrack to return to mother volume,
or distance to new exit.</LI>
<LI>Code cleanup: removed unnecessary G4ThreadLocal in G4ReplicaNavigation.</LI>
<LI>G4TransportationManager: added ClearParallelWorlds() method; internal
method to be invoked by G4RunManager when geometry is destroyed and