forked from Geant4/geant4
-
Notifications
You must be signed in to change notification settings - Fork 2
/
Copy pathReleaseNotes4.10.3.html
2377 lines (2292 loc) · 113 KB
/
ReleaseNotes4.10.3.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.3 Release Notes</TITLE>
</HEAD>
<BODY BGCOLOR='F0F0F0'>
<P> </P>
<BR>
<P> </P>
<P ALIGN="Center">
<FONT SIZE="+4" COLOR="#238E23">
<B>Geant4 10.3 Release Notes</B>
</FONT>
<TABLE WIDTH="100%">
<TR><TD ALIGN="Right">
<FONT SIZE="-1" COLOR="#5C3317">
<B><I>December 9<SUP>th</SUP>, 2016</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.8.5.<BR>
Tested on 64 bit architectures (Intel or AMD) with
CERN CentOS Linux 7 (CC7) (based on CentOS Linux 7).</LI>
<LI>MacOSX 10.12 Sierra with clang-3.8 (Apple LLVM/Clang-8.0.0)</LI>
<LI>Windows-10 with Visual C++ 14.0 (Visual Studio 2015)</LI>
</UL>
More verified and tested configurations (64 bits):
<UL>
<LI>Linux, gcc-4.9.3, gcc-5.3.0, gcc-6.2.0, clang-3.9</LI>
<LI>Linux, Intel-icc 16.0</LI>
<LI>MacOSX 10.10 with clang-3.6</LI>
<LI>MacOSX 10.11 with clang-3.7</LI>
<LI>Windows-7 with Visual C++ 14.0 (Visual Studio 2015)</LI>
<LI>Linux for Intel Xeon Phi with Intel-icc 16.0
(gcc-4.9 compatibility layer)</LI>
</UL>
Note: Windows platforms are supported/verified only for the sequential mode.
Multi-threading capability is not yet supported on Windows.
<P> </P>
<A NAME="2."></A>
<HR>
<!-- ============================================== -->
<H2>2. Supported CLHEP version</H2>
This release of Geant4 requires and has been verified with
<A TARGET="ext" HREF="http://cern.ch/clhep/">CLHEP</A>, release <B>2.3.4.3</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>Minimum required version of CMake to build Geant4 is 3.3.</LI>
</UL>
<P> </P>
<B>Run</B>
<P> </P>
<UL>
<LI>A new application state <TT>G4State_Init</TT> is introduced. Geant4
becomes this state during initialization of geometry and physics.
Ordinary users who use G4RunManager or G4MTRunManager
won't see any difference, and thus no migration is required.
For users having their own custom run manager which changes the
Geant4 application state, it is required to make sure the state
change to <TT>G4State_Idle</TT> takes place after the initialization of
geometry and physics. User's custom run manager does not need to
change Geant4 application state to <TT>G4State_Init</TT> as it is
taken care by G4RunManagerKernel.</LI>
</UL>
<P> </P>
<B>Geometry</B>
<P> </P>
<UL>
<LI>A new minor release of the GDML schema, GDML-3.1.4, is used,
supporting export of scaled volumes.
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>Senditive Detectors</B>
<P> </P>
<UL>
<LI>An explicit call to G4SDManager::AddNewDetector() <U>must now be added</U>
in order to register a sensitive-detector. The use of
G4VUserDetectorConstruction::SetSensitiveDetector() no longer does
this implicitly.</LI>
</UL>
<P> </P>
<B>Electromagnetic and optical physics</B>
<P> </P>
<UL>
<LI>The data file G4EMLOW-6.50 should be used.</LI>
<LI>It is recommended to use C++ interface to G4EmParameters and/or UI commands
from G4EmParametersMessenger for EM parameters definition. The class
G4EmProcessOptions still exist but may provide wrong configuration of
EM physics, this class will be removed in the next public release.</LI>
</UL>
<P> </P>
<B>Hadronic physics</B>
<P> </P>
<UL>
<LI>The new data sets <TT>G4PhotonEvaporation-4.3</TT>,
<TT>G4RadioactiveDecay-5.1</TT> and <TT>G4ENSDFSTATE-2.1</TT>
should be used. Updated also the optional data-set <TT>G4TENDL-1.3</TT></LI>
<LI>The <TT>G4PhotonEvaporation-4.3</TT> data sets include two sets of gamma level data.
By default the old set (equivalent to <TT>G4PhotonEvaporation-3.2</TT>) is used.
When radioactive-decay is enabled (G4RadioactiveDecayPhysics constructor added
to the physics-list), the new data format for gamma-level data is used.</LI>
</UL>
<P> </P>
<B>Analysis</B>
<P> </P>
<UL>
<LI>The parameter classes G4Parameter<T>, G4VParameter and G4ParameterManager
are renamed to G4Accumulable<T>, G4VAccumulable and G4AccumulableManager
respectively, to better reflect the meaning of the <I>accumulable</I> objects.</LI>
<LI>Stopped support of HBOOK output format.</LI>
</UL>
<P> </P>
<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 9</A> of this document.
<UL>
<LI>New data set versions: <TT>G4EMLOW-6.50, G4ENSDFSTATE-2.1,
G4RadioactiveDecay-5.1, G4PhotonEvaporation-4.3</TT>.
</LI>
<LI>In order to use <TT>ParticleHP</TT> for charged particles
(protons, deuterons, tritons, He3 and alphas), an optional data
set <TT>G4TENDL-1.3</TT> is required, and should be downloaded in
addition from the Geant4 web site.</LI>
</UL>
<A NAME="4."></A>
<HR>
<!-- ============================================== -->
<H2>4. New Developments and Capabilities </H2>
<B>Analysis</B>
<UL>
<LI>Implemented merging of ntuples in multi-threaded mode with Root output type.</LI>
</UL>
<B>Geometry</B>
<UL>
<LI>A configuration option allows an installation to use the
<A HREF="https://cern.ch/aidasoft/USolids">VecGeom Unified Solids Library</A>
primitives, to replace the original Geant4 solids, as in the
previous release. The path to an external installation of the VecGeom
library (VecGeom version <TT>v00.03.00</TT>) should be specified.
See the associated instructions file for configuration and installation.</LI>
<LI>New magneticfield stepper classes G4BogackiShampine23 (BS23),
G4BogackiShampine45 (BS45) and DormandPrince745 (DP45), implementing
third order (BS23) and fifth order (BS45, DP45) embedded RK tableaus;
together with new FSAL integrator driver classes and steppers.</LI>
</UL>
<B>Electromagnetic physics</B>
<UL>
<LI>Upper energy limit of physics tables is extended from <TT>10 TeV</TT> to
<TT>100 TeV</TT>.</LI>
<LI>A set of new UI commands is added which allows defining models per region.
In particular, UI commands defining PAI model, DNA models, MicroElec models
for a given geometrical region (G4Region) on top of any EM physics
configuration. It is also possible to define alternative reference physics
configurations for a particular region on top of any other reference EM
physics.</LI>
<LI>A new process of <TT>e+e-</TT> pair creation by electron or positron is added
to <TT>Option3</TT> and <TT>Option4</TT> EM physics configurations.</LI>
<LI>Sampling of lateral displacement for the Urban model has been updated in
<TT>Option3</TT>, <TT>Option4</TT>, <TT>Livermore</TT> and <TT>Penelope</TT>
physics configurations. Due to that, the Urban model predictions become close
to predictions of Goudsmit-Saunderson and Wentzel-VI models.</LI>
</UL>
<B>Hadronic physics</B>
<UL>
<LI>Achieved consistent set of data - G4ENSDFSTATE-2.1, G4RadioactiveDecay-5.1,
G4PhotonEvaporation-4.3, in terms of isomer excitation levels - and physics
models which use these data - radioactive-decay and photon-evaporation,
in terms of energy and lifetime of excited nuclides.</LI>
<LI>Precompound/de-excitation code has been restructed in order to use the
same data as radioactive-decay model and former, internal hard-coded data
are not used any longer.
The possibility to simulate correlated emissions of gammas has been
introduced but not yet activated.</LI>
<LI>Improved the evaporation spectrum of Bertini-like intra-nuclear cascade
model (BERT).
This reduces the overproduction of low-energy neutrons and protons.</LI>
<LI>Extended the INCLXX intra-nuclear cascade model to include eta and omega
meson production.</LI>
<LI>Fritiof (FTF) string model is similar to the one in version 10.2.p02,
except for the treatment of the excited nuclear remnant, in order to
produce hadronic showers similar to those in version 10.1.</LI>
</UL>
<B>Particles</B>
<UL>
<LI>Particles properties have been updated according to PDG-2015.</LI>
<LI>New floating level base to ions and related classes is introduced in this release,
and the nuclide table has been adapted to conform to the new scheme.</LI>
</UL>
<B>Physics Lists</B>
<UL>
<LI>A new set of UI commands is available allowing to enable a specific
EM physics configuration per G4Region by a name of EM physics constructor.</LI>
<LI>The physics lists <TT>FTFP_BERT</TT> and <TT>FTFP_BERT_HP</TT> have changed
the transition region between Bertini-like (BERT) and Fritiof/Precompound-de-excitation
(FTFP) models: now it is between <TT>3</TT> and <TT>12 GeV</TT> (instead of
<TT>4</TT> and <TT>5 GeV</TT>), for pions, kaons, proton and neutron (for hyperons
it remains unchanged between <TT>2</TT> and <TT>6 GeV</TT>; for anti-baryons,
FTF is used everywhere).</LI>
</UL>
<B>Visualization and Interfaces</B>
<UL>
<LI>Significant improvements in the Qt interface and graphics.</LI>
<LI>A significant speed-up for OpenGL viewers (including Qt) on some platforms
due to better use of the graphics pipeline. The associated command that
controls this behaviour is
<TT>/vs/ogl/flushAt [endOfEvent endOfRun eachPrimitive NthPrimitive NthEvent never]</TT>.
The default is <TT>/vis/ogl/flushAt NthEvent 100</TT>.</LI>
<LI>A new feature is the ability to <I>fly-through</I> saved views with
<TT>/vis/viewer/interpolate</TT> (not yet available on Windows).
Use the help command to see options (one may make movie sequences this
way).</LI>
<LI>A default icon toolbar for the Qt driver. The file <TT>icons.mac</TT> in
some examples is no longer needed. <I>Viewer properties</I> (editable)
and <I>pick informations</I> have been moved to this new icon toolbar.</LI>
<LI>A new command, <TT>/gui/defaultIcons [enable disable]</TT>, to manage the
default icon toolbar.</LI>
<LI>Improved command line completion in the Qt interface.</LI>
</UL>
<A NAME="5."></A>
<HR>
<!-- ============================================== -->
<H2>5. Expected effects on physics and computing performance</H2>
<B>Electromagnetic physics</B>
<UL>
<LI>Expected similar CPU/memory performance and physics results for the
default EM physics configuration.</LI>
<LI>High energy EM showers will be narrower on per-mille level due to fixed
LPM effect treatment for the bremsstrahlung.</LI>
<LI>Sampling scattering by the Urban model should be improved for <TT>Option3</TT>,
<TT>Option4</TT>, <TT>Livermore</TT> and <TT>Penelope</TT> physics configurations.</LI>
</UL>
<B>Hadronic physics</B>
<UL>
<LI>Based on tests performed on simplified calorimeters, hadronic showers are
similar to those in version 10.1.
Some differences - in particular wider hadronic showers and smoother
behaviour as a function of the projectile energy, especially between
<TT>4</TT> and <TT>12 GeV</TT> - are due to the change of transition region
between FTFP and BERT in the physics lists <TT>FTFP_BERT</TT> and
<TT>FTFP_BERT_HP</TT> (now set to <TT>3-12 GeV</TT>).</LI>
<LI>The energy response of hadronic showers in Iron and Copper is similar
to the one in version 10.1, i.e. a few percent lower than in version 10.2;
for heavier absorbers (Tungsten and Lead), it is a few percent lower than
both versions 10.1 and 10.2.</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>Set CLHEP-2.3.3.0 as the minimum required version for external CLHEP library.</LI>
<LI>Fix to preserve same build optimisation settings of libraries installation
when building applications/examples.
Currently applicable only for single-mode installation.</LI>
<LI>Added option for TEXT output file in FindStatTest.cmake script.
<LI>Provided placeholder variable for adding setting of XercesC library path.
Addressing problem report <A HREF="http://bugzilla-geant4.kek.jp/show_bug.cgi?id=1877">#1877</A>.</LI>
<LI>Added options <TT>-fno-math-errno</TT>, <TT>-ftree-vectorize</TT>, <TT>-fno-trapping-math</TT> to
default flags in Release mode for gcc and clang compilers to assist in
auto-vectorization; move optimization level to <TT>-O3</TT> on all supported
compilers.</LI>
<LI>No longer use --whole-archive for physics-lists module on static builds.</LI>
<LI>Change default build type to Release when using single mode tools like
Make/Ninja.</LI>
<LI>Fix bug in Qt4/5 handling on Windows. Added expansion variable for Qt
dynamic loader setup and fixed export of Qt settings to GNUmake
configuration scripts.</LI>
<LI>Added FindDCMTK.cmake needed for extended/medical/DICOM example.</LI>
<LI>Correctly export USolids/VecGeom settings to GNUmake configuration scripts.</LI>
<LI>Fixed optimization level in Release mode for Windows to be <TT>-Ox</TT>.</LI>
<LI>Always convert exported data paths to native CMake paths. Prevents parse
errors on Windows, where native paths are exported.</LI>
<LI>Updated data-sets versions.</LI>
</UL>
<A NAME="ana-notes">
<H3><I>Analysis</I></H3></A>
<UL><LI><B>Accumulables</B>
<UL>
<LI>Extended and improved current implementation of parameters: parameters
names are optional; extended merge mode with kMaximum, kMinimum and
removed kUser (not needed anymore); added access to paremeters via
iterators and ids (defined by the order of registering); introduced
G4MergeFunction<T> type and apply merging via a function defined according
to the merge mode.</LI>
<LI>Added prefix, postfix increment operators to G4Accumulable.</LI>
</UL></LI>
<LI><B>Histograms & Profiles </B>
<UL>
<LI>Enabled creating/configuring profiles without cut values (vmin, vmax).
These values are now treated in a special way.</LI>
</UL></LI>
<LI><B>Ntuples</B>
<UL>
<LI>Implemented merging of ntuples in MT mode with Root output type.
Merging ntuples in a selected number of output files.
Merging has to be activated in user applications.</LI>
<LI>Added parallel ntuple in g4tools: on a same booked nutple, pass baskets from threads
or mpi ranks to a "main ntuple" tied to a file.</LI>
<LI>Added methods to tools/impi for passing ntuple data.</LI>
</UL></LI>
<LI><B>Output types</B>
<UL>
<LI> Stopped support of HBOOK output format.</LI>
</UL></LI>
<LI><B>Fixes</B>
<UL>
<LI>Fixed incompatibility with Root 5.x and 6.x formats.</LI>
<LI>Fixed writing of CSV profiles; fixed duplicating ntuple header.</LI>
<LI>Use of nullptr and return 0. when the return type is double.</LI>
<LI>Fixed compilation warnings on Windows-64.</LI>
</UL></LI>
<LI><B>g4tools</B>
<UL>
<LI>Updated the g4tools version to g4tools-2.3.0.</LI>
</UL></LI>
</UL>
<A NAME="digits-notes">
<H3><I>Digitization & Hits</I></H3></A>
<UL>
<LI>Removed implicit addition to manager of sensitive-detector passed via
G4MultiSensistiveDetector proxy.
Addressing problem report <A HREF="http://bugzilla-geant4.kek.jp/show_bug.cgi?id=1908">#1908</A>.</LI>
<LI>Built-in scorer now uses G4StatDouble.</LI>
<LI>Further clean up in G4THitsMap, G4VScoringMesh with c++11 templates.</LI>
</UL>
<A NAME="emstd-notes">
<H3><I>Electromagnetic Processes</I></H3></A>
<UL>
<LI><B>Adjoint</B>
<UL>
<LI>Added new adjoint process G4AdjointForcedInteractionForGamma to force the
reverse interaction of adjoint gamma.</LI>
<LI>Modification in G4AdjointBremsstrahlungModel to use the direcet angular
model to compute the direction of the adjoint secondary.</LI>
<LI>Added G4UrbanAdjointMscModel and G4eAdjointMultipleScattering classes.</LI>
<LI>Slight modifications of G4VEmAdjointModel for new forced interaction.</LI>
</UL></LI>
<LI><B>DNA</B>:
<UL>
<LI>G4DNAScreenedRutherfordElasticModel: modified handling of energy
boundaries at init time. Deprecated SetKillBelowThreshold() method;
modified initialisation to prevent erasing/rewriting data.</LI>
<LI>G4DNAChemistryManager: reversed logic in CreateWaterMolecule()
for interface with physics models.</LI>
<LI>G4DNAChampionElasticModel: rearranged declaration of attributes.
Deprecated GetKillBelowThreshold() method; removed attributes;
modified Theta() method. Reset check ekin >= LowEnergyLimit().
Added missing computation of 'sigma'.</LI>
<LI>G4DNAUeharaScreenedRutherfordElasticModel: added exception at init
time if model is used for anything other than e-.
Deprecated SetKillBelowThreshold() and GetKillBelowThreshold() methods,
use G4LowECapture or G4DNAElectronSolvatation; modified
SelectHighEnergyLimit() method; removed attributes.
Added possibility to extend applicability limit.</LI>
<LI>G4DNAChampionElasticModel, G4DNAUeharaScreenedRutherfordElasticModel:
added pre-processor flag to control Verbose check mode; checking energy
boundaries in Initialise(), removed call to G4Electron; cleanup in
CrossSectionPerVolume by removing unnecessary checks and calls to map;
removed energy checks in SampleSecondaries().</LI>
<LI>Updated fast computation of G4DNAScreenRutherfordElasticModel and
G4DNAUeharaScreenedRutherfordElasticModel.</LI>
<LI>Renamed class G4DNAElectronSolvatation to G4DNAElectronSolvation.</LI>
<LI>G4DNAOneStepThermalizationModel: using pre-processor flag to control
check mode verbosity; removed call to G4Electron at initialization.</LI>
<LI>G4DNATransformElectronModel: using pre-processor flag to control check
mode verbosity; removed call to G4Electron at initialization; added
check for creation of solvated electron.</LI>
<LI>G4MoleculeCounter: at initialization time, prevent creating entries
for unregistered molecule definition.
Removed check of c++ version for unique_ptr/auto_ptr selection.</LI>
<LI>G4DNAMeltonAttachmentModel, G4DNASancheExcitationModel: removed usage
of internal energy boundaries.</LI>
<LI>G4DNASancheExcitationModel: removed warning when SANCHE_VERBOSE is OFF.</LI>
<LI>G4VUserChemistryList: added flag; some code cleanup.</LI>
<LI>Added nrj extensibility to SR and USR models.</LI>
<LI>Replaced usage of std::exp() by G4Exp().</LI>
<LI>Added stationary mode to sub-excitation electron processes.</LI>
<LI>G4Scheduler: moved G4IosFlagsSaver to Process().</LI>
<LI>Added G4VMoleculeCounter and enabled using custom molecule counter.
Pass location information to molecule counter</LI>
<LI>G4ITNavigator2: relocate voxelNavigator before every call to
ComputeStep() and ComputeSafety().</LI>
<LI>Updated displacers; changed electron thermalization distribution in
WaterDisplacer. OneStepTherm: two inner thermalization models can be
chosen as template argument.</LI>
<LI>G4VMolecularDissociationDisplacer: added missing initializer.</LI>
<LI>G4VMolecularDissociationDisplacer and G4DNAWaterDissociationDisplacer:
displacement types can be thread shared.</LI>
<LI>Requires G4EMLOW-6.50 data-set.</LI>
</UL></LI>
<LI><B>High Energy</B>
<UL>
<LI>Use C++11 features explicit, override, delete, nullptr.</LI>
</UL></LI>
<LI><B>Low Energy</B>
<UL>
<LI>Removed verbosity in G4AtomicTransitionManager.
Addressing problem report <A HREF="http://bugzilla-geant4.kek.jp/show_bug.cgi?id=1874">#1874</A>.</LI>
<LI>Fixed typo in G4hParameterisedLossModel.
Addressing problem report <A HREF="http://bugzilla-geant4.kek.jp/show_bug.cgi?id=1876">#1876</A>.</LI>
<LI>Adopt c++11 features in Penelope models (nullptr, range-based loops).</LI>
<LI>G4MicroElecInelasticModel: changes to allow faster computation.</LI>
<LI>Requires G4EMLOW-6.50 data set.</LI>
</UL></LI>
<LI><B>Muons</B>
<UL>
<LI>G4ePairProduction: new process e+e- pair production by e+-.</LI>
<LI>Use C++11 features explicit, override, delete, nullptr.</LI>
</UL></LI>
<LI><B>Polarisation</B>
<UL>
<LI>G4PolarizedCompton, G4eplusPolarizedAnnihilation,
G4ePolarisedIonisation: in PostStepGPIL(), use cached values of
'currentInteractionLength'; fixes problem at boundaries where
updated value was incorrectly used.</LI>
<LI>C++11 migrations: explicit, override, delete operators on function
declarations; remaining nullptr; write floats/doubles with '.'.
Use C++11 features nullptr and range-based for loop in
G4PolarizationManager.</LI>
</UL></LI>
<LI><B>Standard</B>
<UL>
<LI>G4UrbanMscModel: use new lateral displacement algorithm in opt-3
and opt-4 physics-lists. Modified randomisation of "true path length".</LI>
<LI>G4UniversalFluctuation: fixed bug in Glandz part, Gaussian sampling.
The sampling is symmetrical around 'emean' now. Some code cleanup.</LI>
<LI>G4SeltzerBergerModel: fixed data handling for Z > 92.
Addressing problem report <A HREF="http://bugzilla-geant4.kek.jp/show_bug.cgi?id=1870">#1870</A>,
about invalid read of data at run time.</LI>
<LI>G4eBremsstrahlungRelModel: change LPM constant such that it gives
suppression variable consistent with Migdal's one; fixes small issue in
LPM function computation.</LI>
<LI>G4SeltzerBergerModel, G4eBremsstrahlungRelModel, G4eBremParametrizedModel:
use G4Element::GetZasInt().</LI>
<LI>G4eBremsstrahlungRelModel: removed unused variables.</LI>
<LI>G4eBremsstrahlung: improved printout.</LI>
<LI>G4alphaIonisation, G4hIonisation, G4ionIonisation: do not define
StepFunction in constructor.</LI>
<LI>G4ASTARStopping, G4PSTARStopping, G4NISTStoppingData, G4BraggModel:
data arrays become float, computation is left double.</LI>
<LI>G4BraggModel, G4BraggIonModel, G4BetheBlochModel: use float for local
static data.</LI>
<LI>G4MottCoefficients, G4ScreeningMottCrossSection and
G4eSingleCoulombScatteringModel: fix to use nuclear form-factor options
via G4EmParameters.</LI>
<LI>G4ScreeningMottCrossSection: fixed precision lost in relativistic
kinematics when E > 30 TeV.</LI>
<LI>G4WentzelOKandVIxSection: added alternative nuclear form-factor approximations.</LI>
<LI>G4BetheHeitlerModel, G4ICRU49NuclearStoppingModel, G4IonFluctuations,
G4GoudsmitSaundersonMscModel, G4IonFluctuations: use better name for
G4Pow pointer.</LI>
<LI>G4eeToTwoGammaModel, G4eplusAnnihilation: fixed polarisation of final gamma.</LI>
<LI>Added c++11 keywords: explicit, final, override, delete; use nullptr
and use G4Element::GetZasInt().</LI>
</UL></LI>
<LI><B>Utils</B>
<UL>
<LI>G4VEmProcess, G4EmModelManager: added extra methods to access models.</LI>
<LI>G4VEnegryLossProcess, G4EmCorrections: removed unused class members.</LI>
<LI>G4EmParameters, G4EmParametersMessenger: moved remaining parameters
from G4EmProcessOptions, which now becomes obsolete.</LI>
<LI>G4EmParameters: allow to change parameters only from the master thread
and only at PreInit or Idle states.</LI>
<LI>G4EmCalculator, G4LossTableBuilder, G4LossTableManager, G4VMscModel,
G4VEmModel, G4VEmProcess, G4VEnergyLossProcess: use only G4EmParameters
class interfaces for initialisation, improved debug printout.</LI>
<LI>G4NuclearFormfactorType: added new enumerator.</LI>
<LI>G4VMultipleScattering: moved position change to AlongStep.
Added method NumberOfModels().</LI>
<LI>G4EmModelManager: reviewed and fixed model configuration for DNA
physics.</LI>
<LI>G4EmCorrections: make part of data static, make internal vectors static,
shared between threads.</LI>
<LI>G4LossTableManager, G4VEmModel, G4VMultipleScattering: cleanup of
static const data.</LI>
<LI>G4VEmModel, G4VAtomDeexcitation, G4EmCalculator: use new method
GetZasInt() from G4Element.</LI>
<LI>G4VEmModel: fix in SelectRandomAtomNumber() method. Fixed destruction
in MT mode.</LI>
<LI>G4VAtomDeexcitation: fixed possible data race at initialistion.
Extended printout at initialisation.
Completed migration to G4EmParameters interface.</LI>
<LI>G4AtomicShell: make methods inlined.</LI>
<LI>G4DummyModel: set default low-enegry limit to 0 (needed for DNA).</LI>
<LI>G4EmParameters, G4VEmProcess, G4VEnergyLossProcess: default upper energy
limits are extended from 10 TeV to 100 TeV.</LI>
<LI>Fixed typo in G4EmBiasingManager.
Addressing problem report <A HREF="http://bugzilla-geant4.kek.jp/show_bug.cgi?id=1876">#1876</A>.</LI>
<LI>G4AtomicDeexcitation, G4EmParameters, G4EmParametersMessenger: added new
methods and UI command to define optional EM physics per geometrical region.
Added interface and UI command to enable thread safe built-in Birks
saturation corrections; added access to G4EmSaturation.</LI>
<LI>G4EmSaturation: make it thread safe, added data for G4_PbWO4; fixed data
for G4_lAr, according to recent report from ATLAS.
Run-time methods are now "const".</LI>
<LI>G4LossTableManager: changed initialisation of G4EmSaturation.</LI>
<LI>G4EmCorrections, G4ionEffectiveCharge: use better name for G4Pow pointer.</LI>
<LI>Use C++11 keywords explicit, override, delete and nullptr.</LI>
<LI>Fixed Coverity defects.</LI>
</UL>
<LI><B>Xrays</B>
<UL>
<LI>Added new class G4ScintillationTrackInformation and use it in
G4Scintillation.</LI>
<LI>Use C++11 features explicit, override, delete, nullptr.</LI>
<LI>Added stacking flag to G4Scintillation and G4Cerenkov and new
GetNumPhotons() method.</LI>
</UL></LI>
</UL>
<A NAME="errprop-notes">
<H3><I>Error Propagation</I></H3></A>
<UL>
<LI>G4ErrorPhysicsList: replaced direct use of 'aParticleIterator' with
GetParticleIterator().</LI>
</UL>
<A NAME="event-notes">
<H3><I>Event</I></H3></A>
<UL>
<LI>Introducing G4MultiEventAction to allow multiple user actions
in the same job.</LI>
<LI>Particle gun now can shoot ions with floating level base.</LI>
<LI>Modified G4AdjointStackingAction for the implementation of splitting
in reverse MC tracking.</LI>
<LI>Set polarization to pre-assigned decay products in G4PrimaryTransformer.
Addressing problem report <A HREF="http://bugzilla-geant4.kek.jp/show_bug.cgi?id=1914">#1914</A>.</LI>
<LI>Changed the way of deleting G4PrimaryVertex objects to avoid stack overflow
for very large number of primary vertices.</LI>
</UL>
<A NAME="externals-notes">
<H3><I>Externals</I></H3></A>
<UL>
<LI>Updated CLHEP module to version 2.3.4.3:
<UL>
<LI>Added use_atomic.h header to use std::atomic if compiler supports it.</LI>
<LI>MixMaxRng: corrected initialisation and use of 'numberOfEngines'
when more than one threads calls the constructor.
Use simple loop for flatArray(); engine built-in function turns out
to be extremely slow and unefficient.
Use seed_spbox() for seeding MixMax with single seed.
Avoid hard-coded constant for initialisation of VECTOR_STATE_SIZE in
MixMaxRng, to directly use actual value of "N" from mixmax generator.
Corrected check for counter range in method getState().
Changed default number of N in mixmax generator to 17 (was 256).
Removed use of obsolete 'register' keyword.
Provided new skipping coefficients for the new value of N and for
the optional case N=8.</LI>
<LI>HepRandom: revised settings of "defaults" to use a single
thread_local pointer.</LI>
<LI>Fixed array initialisation in Evaluator static method function().</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>Checked for unbounded while loop in G4ProcessPlacer.</LI>
<LI>Cleanup G4BiasingAppliedCase enum for obsolete logic related to BAC_DenyInteraction case.</LI>
</UL></LI>
<LI><U>generic</U>:
<UL>
<LI>Introducing parallel geometry capability in generic biasing:
<UL>
<LI>G4BiasingProcessInterface: checks for biasing operator in mass and parallel geometries;</LI>
<LI>G4ParallelGeometriesLimiterProcess is a new process that limits the step on the boundaries
of the parallel geometries. One instance handles all parallel geometries the generic biasing
has to be aware of;</LI>
<LI>G4BiasingProcessSharedData (already existing class for data shared among biasing
processes related to a same G4ParticleDefinition) has been extended to carry information
related to parallel geometries;</LI>
<LI>G4BiasingHelper is extended to handle addition of G4ParallelGeometriesLimiterProcess
to the process manager.</LI>
</UL>
</LI>
<LI>Clean up the obsolete code related to DenyProcessPostStepDoIt() in G4BOptnForceFreeFlight,
in accordance with the clean up in G4BiasingAppliedCase above. (The corresponding logic case was
merged in ApplyFinalStateBiasing() in a more general manner in 10.1.)</LI>
<LI>Fixed Coverity defect in G4ParallelGeometriesLimiterProcess.</LI>
</UL></LI>
</UL></LI>
<LI><B>Decay</B>
<UL>
<LI>Added G4MuonicAtomDecay class for decay of muonic atoms.</LI>
<LI>Added better diagnostics in exception in G4Decay::DecayIt().</LI>
</UL></LI>
<LI><B>Optical</B>
<UL>
<LI>Added flag for InvokeSD() method call in G4OpBoundaryProcess.</LI>
<LI>Fixed potential problem of photon stuck when traveling almost perpendicular
to the surface normal.
Addressing problem report <A HREF="http://bugzilla-geant4.kek.jp/show_bug.cgi?id=1888">#1888</A>.</LI>
</UL></LI>
<LI><B>Parameterisations</B>
<UL>
<LI>New G4FastSimulationManagerHelper utility, used for adding
G4FastSimulationManagerProcess to a process manager.</LI>
<LI>Fixed Coverity defects.</LI>
</UL></LI>
<LI><B>Scoring</B>
<UL>
<LI>G4ParallelWorldProcess: added verbosity to check update of field-track.</LI>
<LI>Fixed Coverity defects.</LI>
</UL></LI>
</UL>
<A NAME="geo-notes">
<H3><I>Geometry</I></H3></A>
<UL>
<LI><B>Magnetic field</B>
<UL>
<LI>Added new stepper classes G4BogackiShampine23 (BS23),
G4BogackiShampine45 (BS45) and DormandPrince745 (DP45),
implementing third order (BS23) and fifth order (BS45, DP45)
embedded RK tableaus.</LI>
<LI>Added new stepper classes embedded RK method: DoLoMcPriRK34 (6-stage
3/4 RK, interpolation), DormandPrinceRK56 (9-stage 5/6 RK,
interpolation, FSAL-able) and DormandPrinceRK78 (13-stage 7/8 RK,
interpolation).</LI>
<LI>Added TsitourasRK45 stepper.</LI>
<LI>First version of FSAL classes: FSAL Integrator Driver (concrete,
stand-alone driver); FSAL Integrator Stepper (base class);
FBogackiShampine45 (FSAL-version of BogackiShampine45 stepper);
FDormandPrince745 (FSAL-version of FDormandPrince745 stepper).</LI>
<LI>G4MagIntegratorStepper: added counter for calls to equation RHS,
with Get/Reset() methods.</LI>
<LI>G4HelixMixedStepper: fixes and added new (5th order) stepper choices.</LI>
<LI>Fix in G4CashKarp for the size of arrays holding intermediate values.</LI>
<LI>G4PropagatorInField: fix to pass accuracy values to Intersection Locator
after re-evaluating epsilon.</LI>
<LI>Fixed G4ClassicalRK4 header with protection against multiple inclusions.</LI>
<LI>Checked while-do loops against potential infinite loops.</LI>
</UL></LI>
<LI><B>Management</B>
<UL>
<LI>Added G4ScaleTransform class for Cartesian scaling transformations.</LI>
<LI>Introduced G4BoundingEnvelope helper class to be used for the
calculation of the extent of a solid within the limits defined by
the G4VoxelLimits object.</LI>
<LI>Properly use 3D transformations in G4ReflectedSolid. Removed unused
affine-transformation data and related methods; removed not used cached
inverse transformation. Simplified code.
Re-implemented CalculateExtent() to use new class G4BoundingEnvelope.</LI>
<LI>Removed redundant check in G4GeomSplitter::UseWorkArea().
Addressing problem report <A HREF="http://bugzilla-geant4.kek.jp/show_bug.cgi?id=1876">#1876</A>.</LI>
<LI>Added checks for bounding-box extents in G4USolid. Make direct use of
extent from shapes for computing bounding-box in CalculateExtent().</LI>
<LI>New utility class G4GeomTools providing static utility methods for
geometry related calculations.</LI>
<LI>New class G4LogicalCrystalVolume, representing an extended logical
volume for crystal description.</LI>
<LI>G4LogicalVolume: added virtual keyword to destructor for extended
types in the kernel. Added IsExtended() method.</LI>
<LI>Added Extent() virtual method to G4VSolid and G4ReflectedSolid.</LI>
<LI>Fixed use of iterator in G4LogicalVolume::ClearDaughters(); simplified
implementation.</LI>
<LI>Moved initialisation of G4GeomSplitter thread-local data to be inline
along with generic template type. Fixing compilation/linking errors on
clang-3.9 and XCode-8 on MacOS.</LI>
</UL></LI>
<LI><B>Navigation</B>
<UL>
<LI>Fix in G4Navigator::GetGlobalExitNormal() to synchronise caching of
'fExitNormalGlobalFrame' before returning.
Addressing problem report <A HREF="http://bugzilla-geant4.kek.jp/show_bug.cgi?id=1750">#1750</A>.</LI>
<LI>More diagnostics in G4VERBOSE mode in G4Navigator::GetGlobalExitNormal().</LI>
<LI>G4ReplicaNavigation: use Cartesian tolerance in distance evaluation
in DistanceToOutPhi().
Addressing problem report <A HREF="http://bugzilla-geant4.kek.jp/show_bug.cgi?id=1902">#1902</A>.</LI>
<LI>G4Navigator: in ComputeStep() force abortion of event if track gets
really stuck, but avoid check for overlaps if push-verbosity is set to
false. Extended printout for stuck tracks, to show also local coordinates.</LI>
<LI>G4PhantomParameterisation: revisited precision checks.</LI>
<LI>Fixed recursion test for overlaps in G4GeomTestVolume to iterate on
all daughters.</LI>
<LI>Added annotations for while-do loops.</LI>
</UL></LI>
<LI><B>Solids (Boolean)</B>
<UL>
<LI>Added new class G4ScaledSolid providing ability to scale dimensions of
a shape in X, Y or Z.</LI>
<LI>Boosted computation of GetPointOnSurface() for G4BooleanSolid;
reimplemented algorithm, using cached list of primitives.</LI>
<LI>Added warning in G4BooleanSolid::GetPointOnSurface() in case of non
convergence after fixed number of trials.</LI>
<LI>Removed tolerance argument to call to G4BoundingEnvelope in
G4ScaledSolid::CalculateExtent().</LI>
<LI>G4SubtractionSolid: directly return previously computed distance in
DistanceToIn(p,v) if no progress is made (zero step).</LI>
<LI>Implemented Extent() method for all constructs and use it in
CalculateExtent().</LI>
</UL></LI>
<LI><B>Solids (CSG)</B>
<UL>
<LI>Re-implemented CalculateExtent() to all solids and related USolids
wrappers, to make use of G4BoundingEnvelope. Implemented bounding-box
to take into consideration cuts in phi and construction of bounding
envelope for rotated cases.
Removed no-longer used method CreateRotatedVertices() implementations.</LI>
<LI>Added Extent() method and checks on extent validity to all solids.
Use G4GeomTools::DiskExtent() for calculation of bounding box in Extent()
for G4Tubs, G4Cons and related USolids wrappers.</LI>
<LI>Disabled check for intersection of cut planes in G4CutTubs constructor,
as too strict and not necessary.
Addressing problem report <A HREF="http://bugzilla-geant4.kek.jp/show_bug.cgi?id=1887">#1887</A>.
</UL></LI>
<LI><B>Solids (Specific)</B>
<UL>
<LI>Revised implementation for GetSurfaceArea() and GetCubicVolume() in
G4GenericTrap.</LI>
<LI>Added 'const' qualifier for methods in G4ExtrudedSolid.</LI>
Added CheckPolygon() to remove collinear and coincident points from
polygons.</LI>
<LI>Improved algorithms for computation of area in G4TriangularFacet and
G4QuadrangularFacet. Added post-const qualifier to GetArea().</LI>
<LI>G4QuadrangularFacet: added exhaustive tests in constructor to catch
potential problems with a quadrangular facet: collinear vertices, non
planar surface, degenerate, concave or self intersecting quadrilateral.</LI>
<LI>G4TriangularFacet: improved test in constructor to detect degenerate
(too small or too narrow) triangles.</LI>
<LI>Fixed minor typo in function Create() for G4Polycone, G4Polyhedra and
G4GenericPolycone. Fixed minor typos in G4GenericTrap::SurfaceNormal() and
G4VTwistSurface::CurrentStatus::ResetfDone().
Issues detected by PVS-Studio static code analyzer.
Addressing problem report <A HREF="http://bugzilla-geant4.kek.jp/show_bug.cgi?id=1876">#1876</A>.</LI>
<LI>Moved accessors/modifiers for splitter data to non-inline in
G4PolyhedraSide and G4PolyconeSide. Moved initialisation of G4GeomSplitter
thread-local data to be inline along with generic template type.
Fixing compilation/linking errors on clang-3.9 and XCode-8 on MacOS.</LI>
<LI>Reimplemented CalculateExtent() in G4Polycone, G4Polyhedra, G4EllipticalCone,
G4Paraboloid, G4ExtrudedSolid, G4Hype, G4GenericPolycone, G4TessellatedSolid,
G4TwistedTubs, G4Tet, G4GenericTrap, G4EllipticalTube, G4VTwistedFaceted and
associated USolids wrappers, to make use of G4BoundingEnvelope.
Removed no-longer used method CreateRotatedVertices().</LI>
<LI>Added caching of corners and implementation of GetCorner() in G4UPolycone
in order to assure correct translation.</LI>
<LI>Extended G4UPolyhedra wrapper to cache corners and start/end Phi
parameters, to assure correct treatment of angles.</LI>
<LI>Fix in G4PolyPhiFace for potential unitialised data in Inside().</LI>
<LI>Correction in G4EllipticalCone::DistanceToOut(p) to make it more accurate.</LI>
</UL></LI>
<LI><B>Volumes</B>
<UL>
<LI>Moved initialisation of G4GeomSplitter thread-local data to be inline
along with generic template type.
Fixing compilation/linking errors on clang-3.9 and XCode-8 on MacOS.</LI>
</UL></LI>
</UL>
<A NAME="glob-notes">
<H3><I>Global</I></H3></A>
<UL>
<LI>Added 'us' and 'ps' units symbols for microsend and picosecond
respectively to G4UnitsTable. Requiring new CLHEP library 2.3.4.2
for external CLHEP library.</LI>
<LI>Converted all units and constants from "static const" to "static
constexpr".</LI>
<LI>Introduced new utility class G4MTBarrier implementing a synchronization
point between threads.</LI>
<LI>Changed exception code in G4TWorkspacePool from G4TWorkspacePool
to "WorkspaceNN".</LI>
<LI>Fix in G4UnitsTable and G4UnitDefinition to be properly shared by all
threads. Addressing problem report <A HREF="http://bugzilla-geant4.kek.jp/show_bug.cgi?id=1869">#1869</A>.</LI>
<LI>G4UnitsTable: use 'hep_pascal' instead of 'pascal' to avoid potential
symbol conflicts on Windows.</LI>
<LI>Added kilovolt/m and megavolt/m to G4UnitsTable for electric field.
Addressing enhancement request <A HREF="http://bugzilla-geant4.kek.jp/show_bug.cgi?id=1891">#1891</A>.</LI>
<LI>G4PhysicsVector, G4PhysicsTable and derived classes: general cleanup.
Removed duplicate methods; more correct names for some variables; adoption
of c++11 keywords; updated comments; removed unnecessary files.</LI>
<LI>G4StatDouble: fixed computation of RMS and added new constructor.</LI>
<LI>G4UnitsTable: added IsUnitDefined() method, checking existance of a unit
in the table. Addressing problem report <A HREF="http://bugzilla-geant4.kek.jp/show_bug.cgi?id=1880">#1880</A>.
<LI>Made initialisation of G4TWorkspacePool thread-local data to be inline
along with generic template type. Fixing compilation/linking errors on
clang-3.9 and XCode-8 on MacOS.</LI>
<LI>G4Threading: added GetNumberOfRunningWorkerThreads() function.</LI>
<LI>Fixed compilation warning on MacOS Sierra in MT mode in function
G4Threading::G4GetPidId().</LI>
<LI>Updated date of release for 10.3.</LI>
</UL>
<A NAME="greps-notes">
<H3><I>Graphical Representations</I></H3></A>
<UL>
<LI>G4VisAttributes: added flag to force auxiliary edge visibility, i.e., to
record if the user has asked for forcing; introduced default argument 'true'
for SetVisibility(), SetDaughtersInvisible(), SetForceWireframe(),
SetForceSolid() and SetForceAuxEdgeVisible(); improved logic for setting
force drawing style and auxiliary edge visibility; moved above methods and
static metohds to be non inline.</LI>
<LI>G4VisAttributes::GetInvisible(): changed to use a static instance instead
of G4VisAttributes::Invisible; moved implementation to be not inline.</LI>
<LI>G4VisAttributes::Invisible: deprecated.</LI>
<LI>G4VGraphicsScene: built-in scorer now uses G4StatDouble instead
of G4double for maps. Added pure virtual methods AddSolid() for G4Orb and
G4Ellipsoid.</LI>
<LI>HepPolyhedron: changed default number of line segments per circle
(DEFAULT_NUMBER_OF_STEPS) to 72.</LI>
<LI>Fixed compilation warning on Linux with -O3 optimisation mode.</LI>
</UL>
<A NAME="had-notes">
<H3><I>Hadronic Processes</I></H3></A>
<UL>
<LI><B>Cross sections</B>
<UL>
<LI>G4ComponentGGHadronNucleusXsc: added two new fields to be used by final
string generators.</LI>
<LI>G4CrossSectionDataSetRegistry: removed termination trick from ParticleHP
models introduced in previous release.</LI>
<LI>G4VCrossSectionDataSet, G4CrossSectionDataStore: fixed minor Coverity
report.</LI>
<LI>G4CrossSectionDataStore: added "throw" to hadronic exception; minor
optimisation in G4ComponentGGHadronNucleusXsc and G4ComponentGGNuclNuclXsc.
Addressing problem report <A HREF="http://bugzilla-geant4.kek.jp/show_bug.cgi?id=1876">#1876</A>.</LI>
<LI>Checked do-while loops for potential infinite loops.</LI>
</UL></LI>
<LI><B>Management</B>
<UL>
<LI>G4HadronicProcess: added flag for "integral" approach to take into
account cross-section change at a step. Do not create new materials
in GetElementCrossSection(), just try to find existing simple
G4Material ones instead. Adopt C++11 keyword nullptr.</LI>
<LI>G4HadronicProcessStore: call initialisation of all
G4HadronicInteractions.</LI>
<LI>G4HadronicProcess: added check on the final-state secondaries to see
if kaon0 or anti_kaon0 are present: if this the case, they are transformed
into either kaon0S or kaon0L, with equal (50%) probability.</LI>
<LI>G4EnergyRangeManager: fixed Coverity defect.</LI>
<LI><U>Models Management</U>:
<UL>
<LI>G4HadronicInteractionRegistry: added InitialiseModels() method.
G4HadronicInteraction: added InitialiseModel() method.</LI>
<LI>G4VPreCompoundModel, G4VIntraNuclearTransportModel,
G4HadronicInteractionRegistry, G4HadronicInteraction:
added c++11 keywords, minor cleanup.</LI>
</UL></LI>
</UL></LI>
<LI><B>Processes</B>
<UL>
<LI>UCN processes: fixed incorrectly calculated MicroRoughness correction
to absorption probability. Corrected calculation of refracted velocity
after transmission.</LI>