Skip to content

Commit a4cd538

Browse files
committed
Import Geant4 10.2.2 source tree
1 parent 2b0b734 commit a4cd538

File tree

438 files changed

+13262
-6724
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

438 files changed

+13262
-6724
lines changed

CMakeLists.txt

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
#
44
# 21st September 2010 Ben Morgan
55
#
6-
# $Id: CMakeLists.txt 95397 2016-02-09 11:27:59Z gcosmo $
6+
# $Id: CMakeLists.txt 97459 2016-06-03 09:28:04Z gcosmo $
77
#
88

99
#-----------------------------------------------------------------------
@@ -35,10 +35,10 @@ set(CMAKE_USER_MAKE_RULES_OVERRIDE_CXX
3535
project(Geant4)
3636

3737
# - Versioning. We do this here for now
38-
set(${PROJECT_NAME}_VERSION "10.2.1")
38+
set(${PROJECT_NAME}_VERSION "10.2.2")
3939
set(${PROJECT_NAME}_VERSION_MAJOR "10")
4040
set(${PROJECT_NAME}_VERSION_MINOR "2")
41-
set(${PROJECT_NAME}_VERSION_PATCH "1")
41+
set(${PROJECT_NAME}_VERSION_PATCH "2")
4242

4343

4444
# - Prepend our own CMake Modules to the search path

ReleaseNotes/Patch4.10.2-2.txt

Lines changed: 258 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,258 @@
1+
2+
Geant4 10.2 - patch-02 Release Notes
3+
------------------------------------
4+
5+
17 June 2016
6+
7+
List of fixes included in this public patch since the public release 10.2.p01:
8+
9+
o Configuration:
10+
-------------
11+
+ CMake:
12+
o Enhanced advanced option for use of external USolids/VecGeom library;
13+
it is now possible to select individual shapes for partial use of the
14+
set of primitives provided by the library, by specifying through the
15+
GEANT4_USE_USOLIDS the list of primitives to consider, i.e. using:
16+
-DGEANT4_USE_USOLIDS="box;tubs" will replace box and tubs shapes with
17+
USolids/VecGeom ones; -DGEANT4_USE_USOLIDS="all" or -DGEANT4_USE_USOLIDS
18+
will replace with all shapes enabled in the library.
19+
o Fix for treatment of FindCLHEP module for the case of external CLHEP
20+
installation. Addressing problem report #1855.
21+
o Adding libXt to X11_LIBRARIES on all Unix platforms when using
22+
Motif/Inventor. Addressing problem report #1828.
23+
Added missing Xmu to X11_LIBRARIES when using Motif/OpenInventor on
24+
MacOSX.
25+
o Corrected Modules/genwindef/LibSymbolInfo.cpp for use with Windows
26+
VC++ 64 bits compilation.
27+
o Updated data-sets to RadioactiveDecay-4.3.2 and G4ENSDFSTATE-1.2.3.
28+
+ GNUMake:
29+
o Added flags for partial use of USolids/VecGeom types.
30+
o Added Linux-clang.gmk script for use of clang compiler on Linux system.
31+
32+
o Analysis:
33+
--------
34+
+ Fixed compilation warnings from gcc-6.1.
35+
36+
o Digits-Hits:
37+
-----------
38+
+ Fixed typo in printing on cout in G4SDManager::AddNewDetector().
39+
+ Fixed shadowing compilation warnings in G4VScoringMesh for 'ps'.
40+
+ Code cleanup and introduced some C++11 features.
41+
+ Checked do-while loops for potential infinite loops.
42+
43+
o Event:
44+
-----
45+
+ Fixed typo in printout. Addressing problem report #1860.
46+
+ Fixed shadowing compilation warnings for 'ps'.
47+
+ Code cleanup and introduced some C++11 features.
48+
49+
o Externals
50+
---------
51+
+ zlib:
52+
o Fix in gzguts.h for Windows with Visual Studio 2015 in 64 bit
53+
compilation.
54+
55+
o Geometry:
56+
--------
57+
+ magnetic-field:
58+
o Corrected implementation of operator=() and copy-ctor for G4Field,
59+
G4ElectroMagneticField, G4ElectricField and G4CachedMagneticField.
60+
Fixed Clone() signatures in derived Field classes.
61+
+ management:
62+
o Throw exception in call to CreatePolyhedron() for base class G4USolid.
63+
Method is now implemented in the concrete wrappers. Code cleanup.
64+
o In G4USolid, directly call GetEntityType() from wrapper classes for
65+
CreatePolyhedron().
66+
o Added flag to USolids wrappers for partial use of USolids/VecGeom types.
67+
o G4AffineTransform: added inline keywords and fixed formatting.
68+
+ navigation:
69+
o Avoid static constant definition of surface tolerance in
70+
G4VoxelNavigation in method LocateNextVoxel() to clear spurious
71+
warnings for data-race conflicts from Valgrind/DRD tool; defined
72+
as class data member. Cleared up use of static constants also in
73+
other navigation classes.
74+
o Improved diagnostics in G4Navigator. Moved some debug checks to
75+
G4VERBOSE.
76+
o Fixed few compilation warnings on gcc-6.1.
77+
+ solids/Boolean:
78+
o Moved accessors and modifiers in UMultiUnion wrapper to be not inlined.
79+
Required modification in order to allow correct dispatching to VecGeom
80+
types.
81+
+ solids/CSG:
82+
o Added overloaded CreatePolyhedron() method to USolids wrappers.
83+
It is now possible to visualize supported VecGeom shapes.
84+
Added flag for partial use of USolids/VecGeom types.
85+
Moved accessors and modifiers to be not inlined. Required modification
86+
in order to allow correct dispatching to VecGeom types.
87+
Added overloaded GetEntityType() method.
88+
o G4Orb: fixed typo in G4Exception message.
89+
+ solids/specific:
90+
o Fix in G4IntersectingCone for smaller precision constant in
91+
LineHitsCone1() and LineHitsCone2(). Fixes issue observed in
92+
G4GenericPolycone. Addressing problem report #1794.
93+
o Added overloaded GetEntityType() method to USolids wrappers.
94+
Moved accessors and modifiers to be not inlined. Required modification
95+
in order to allow correct dispatching to VecGeom types.
96+
Added overloaded CreatePolyhedron() method. It is now possible to
97+
visualize supported VecGeom shapes.
98+
Added flag for partial use of USolids/VecGeom types.
99+
100+
o Global:
101+
------
102+
+ Define G4GeometryTolerance singleton instance pointer as tread-local
103+
to get rid of spurious race conflicts at initialisation.
104+
+ Added check for support of atomics for clang compiler in HEPRandom
105+
wrappers.
106+
+ Improved algorithm for G4RandomDirection.
107+
+ Turn warnings to fatal exceptions in G4UnitsTable for non existing
108+
units or categories in the table. Addressing problem report #1843.
109+
+ Updated date and version for 10.2.p02.
110+
111+
o Interfaces:
112+
----------
113+
+ Fix for Qt driver for position of 'OK' button.
114+
+ Fixed compilation warnings on MacOS for conversion to char* in G4UIXm.
115+
+ Fixed compilation warnings in G4UIWin32 for Windows.
116+
117+
o Particles:
118+
---------
119+
+ Fixed MT data-race in G4VDecayTable. Addressing problem report #1834.
120+
121+
o Persistency:
122+
-----------
123+
+ GDML:
124+
o G4GDMLWrite: increased max_chars in the transcode() calls.
125+
Addressing problem report #1847.
126+
o Added checks for correctness of imported units.
127+
Addressing problem report #1842.
128+
129+
o Parameterisations:
130+
-----------------
131+
+ gflash:
132+
o Added missing inclusion of header in G4VGFlashSensitiveDetector.
133+
Addressing problem report #1867.
134+
135+
o Physics Lists
136+
-------------
137+
+ constructors/hadron_elastic:
138+
o Made G4HadronElasticPhysicsPHP constructor thread-safe.
139+
+ constructors/hadron_inelastic:
140+
o G4HadronPhysicsFTFP_BERT_ATL: new constructor for ATLAS, similar to
141+
G4HadronPhysicsFTFP_BERT but with the transition between BERT and FTFP
142+
in the energy region [9, 12] GeV.
143+
o G4HadronPhysicsQGSP_BIC_AllHP: treat only proton with ParticleHP in
144+
this class, and move the others (deuteron, triton, 3He, alpha) to
145+
the class G4IonPhysicsPHP.
146+
+ constructors/ions:
147+
o Added G4IonPhysicsPHP constructor class.
148+
+ lists:
149+
o New experimental physics-list FTFP_BERT_ATL, similar to FTFP_BERT but
150+
with the transition between BERT and FTFP in the energy region [9, 12]
151+
GeV. Meant to reduce jet energy scale difference observed in ATLAS.
152+
o QGSP_BIC_AllHP : use new, specialized ion constructor, G4IonPhysicsPHP.
153+
154+
o Processes - Electromagnetic:
155+
---------------------------
156+
+ dna:
157+
o Fixed compilation warnings from gcc-6.1.
158+
+ lowenergy:
159+
o Updated G4LowEPComptonModel; addressing problem report #1676.
160+
o Replaced usage of std::exp() by G4Exp().
161+
o Fixed compilation warnings in gcc-6.1. Code cleanup.
162+
+ standard:
163+
o G4eSingleCoulombScatteringModel, G4ScreeningMottCrossSection: fixed
164+
initialisation of classes allowing to use precomputed cross-sections.
165+
Addressing problem report #1823.
166+
+ utils:
167+
o G4EmCalculator: added protection against zero cut value; use lowest
168+
electron energy. Addressing problem report #1845.
169+
170+
o Processes - Hadronic:
171+
--------------------
172+
+ models/de_excitation:
173+
o G4PhotonEvaporation: fixed final energy in the case of X-level.
174+
o G4ExcitationHandler: substituted usage of iterators by simple loop;
175+
added exception for the case of infinite loop of evaporation.
176+
Addressing problem report #1837.
177+
+ models/lend:
178+
o Fixed problem on setting birth time of delayed neutrons.
179+
+ models/particle_hp:
180+
o Fixed problem in deletion of models in multi-thread mode.
181+
o Corrected message about a behavior under the activation of fission
182+
fragment production.
183+
o Fixed bug in usage of G4Nucleus::GetBiassedThermalNucleus().
184+
o Fix for calculation of residual A and Z, affecting results for
185+
charged particle projectiles. Addressing problem report #1815.
186+
o Bug fix in sampling of kinematic energy of scattered particle in
187+
DiscreteTwoBody. Addressing problem report #1815.
188+
o Fixed warning message from gcc-6.1.
189+
o Fixed Coverity defects.
190+
+ models/parton_string/diffraction:
191+
o Fixed bug in G4FTFModel for nucleus-nucleus interactions
192+
Also improvements in sampling of kinematical variables.
193+
o Improved G4FTFAnnihilation; now creating Pi0, Eta and Eta_prime.
194+
+ models/quasi_elastic:
195+
o Fixed shadowing compilation warnings in G4QuasiElRatios for 'ps'.
196+
+ models/radioactive_decay:
197+
o Use new API for G4VDecayChannel class to avoid MT data-race.
198+
Fixes issues of observed event non-reproducibility in MT mode.
199+
+ models/util:
200+
o G4Fragment: introduced "spin", added accessors and modifiers needed
201+
by INCL++; fixes a memory leak discussed on HN PhysicsList Forum #930.
202+
o Use modified G4VDecayChannel API to avoid data-race in MT.
203+
o Fixed Coverity defects.
204+
205+
o Track:
206+
-----
207+
+ Use G4Log in G4VelocityTable::Value() method.
208+
209+
o Visualization:
210+
-------------
211+
+ Fixed compilation warnings from gcc-6.1.
212+
+ gMocren:
213+
o Fixed compilation warnings on win64.
214+
+ OpenInventor:
215+
o Corrected delete statement in sortBookmarksCB() for
216+
G4OpenInventorXtExaminerViewer.
217+
o Fixed compilation warnings on MacOS for conversion to char* in
218+
G4OpenInventorXtExtendedViewer and G4OpenInventorXtViewer sources.
219+
220+
o Data sets:
221+
---------
222+
+ Patched data set for nuclides properties G4ENSDFSTATE-1.2.3:
223+
o Corrected packaging for download. Contents unchanged.
224+
Addressing problem reports #1849, #1854.
225+
+ Patched data set for radioactive-decay, G4RadioactiveDecay-4.3.2:
226+
o Corrected packaging for download. Contents unchanged.
227+
Addressing problem reports #1849, #1854.
228+
229+
o Examples:
230+
--------
231+
+ Updated reference outputs.
232+
+ advanced/human_phantom:
233+
o Fixed compilation warnings from gcc-6.1.
234+
+ basic/B3:
235+
o Fixed initialization of the hits collections IDs in B3aEventAction.
236+
Addressing problem report #1862.
237+
+ basic/B5:
238+
o Fixed wrong determination of the copy number in replicas.
239+
+ extended/field:
240+
o field03, field04: fixed compilation warnings from gcc-6.1.
241+
+ extended/parameterisations/Par02:
242+
o Added magnetic field and corrected the way to create a G4FieldTrack
243+
object in Par02FastSimModelTracker.
244+
245+
----------------------------------------------------------------------------
246+
247+
Technical Notes
248+
---------------
249+
250+
o This patch should be applied on top of release 10.2.
251+
o Technical notes distributed for release 10.2 are also applicable and
252+
valid for this patch.
253+
254+
The code and rebuilt binary libraries for release 10.2.p01 are available
255+
through our "Download" Web page.
256+
257+
Please refer to the Geant4 User Documentation for further information about
258+
using Geant4.

cmake/History

Lines changed: 57 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -31,6 +31,63 @@ add this in the documentation for the changed file as [BUGFIX #BUGNUMBER].
3131

3232
----------------------------------------------------------
3333

34+
3rd June 2016 - Gunter Folger (cmake-V10-01-46)
35+
- Switch to corrected datasets to correct bad packing in patch01:
36+
- G4ENSDFSTATE.1.2.3
37+
- G4RadioactiveDecay.4.3.2
38+
39+
25th May 2016 - Ben Morgan (cmake-V10-01-45)
40+
- Modules/Geant4InterfaceOptions.cmake : Always add Xmu to X11_LIBRARIES when
41+
using Motif/OpenInventor to avoid missing symbol errors on OS X.
42+
43+
24th May 2016 - Ben Morgan
44+
- Modules/Geant4OptionalComponents.cmake : Fix regex to avoid matching to "CONS"
45+
shape is check for all shapes.
46+
47+
24th May 2016 - Ben Morgan
48+
- Modules/Geant4OptionalComponents.cmake : Initial implementation of a list
49+
based interface to GEANT4_USE_USOLIDS. Rather than booleans, unify USolids
50+
replacement into single string/list variable with following behaviour:
51+
1) Setting to "all", any CMake boolean true value, or a list containing either
52+
results in complete usolids replacement
53+
2) A list, i.e. "a;b;c", or shapes to replace with Usolids equivalents may be supplied.
54+
Validate arguments to prevent unknown shapes being set, and otherwise retain previous
55+
behaviour
56+
List allowed values in option docstring.
57+
- Modules/Geant4BuildProjectConfig.cmake : Ensure setting of Usolids use marker to a
58+
proper boolean value.
59+
- Templates/Geant4Config.cmake.in : Use new full boolean variable as expansion variable
60+
to indicate usolids support.
61+
62+
23rd May 2016 - Ben Morgan
63+
- Modules/Geant4OptionalComponents.cmake : Allow developers to select
64+
subsets of solids to replace with USolids equivalents. Request from developers
65+
and CMS to assist in performance evaluation. NOT INTENDED FOR USERS!
66+
If GEANT4_USE_SOLIDS is set, use existing configuration/setup. If it is OFF,
67+
allow setting of additional CMake options, one per shape, to enable replacement
68+
of that shape with USolids equivalent. When any of these variables are set, set
69+
additional internal variable GEANT4_USE_PARTIAL_USOLIDS. Convert variables to
70+
internal preprocessor flags for shape/usolid activation.
71+
- Modules/Geant4BuildProjectConfig.cmake : Export needed USOLIDS/shape activation
72+
preprocessor flags for selected configuration.
73+
- Modules/Geant4ConfigureConfigScript.cmake : Export needed USOLIDS/shape activation
74+
preprocessor flags for selected configuration.
75+
76+
28th April 2016 - Ben Morgan
77+
- Templates/Geant4Config.cmake.in: BUGFIX #1855. When using an external
78+
CLHEP, the provided FindCLHEP module is not used. Wrap call to
79+
find_package(CLHEP) with push/pop of CMAKE_MODULE_PATH to ensure
80+
Geant4's builtin module is used and not interfere with any user
81+
settings of CMAKE_MODULE_PATH.
82+
83+
19th April 2016
84+
- Correct Modules/genwindef/LibSymbolInfo.cpp for use with VC 64 bit compilation
85+
86+
16th March 2016 - Ben Morgan
87+
- Modules/Geant4InterfaceOptions.cmake : Fix Bug #1828
88+
Apply patch from Vladimir Belov to add libXt to X11_LIBRARIES on all
89+
Unix platforms when using Motif/Inventor.
90+
3491
23rd February 2016 - Gunter Folger (cmake-V10-01-44)
3592
- Correct md5sum for RadioactiveDecay-4.3.1 after removal of MAC Safari files.
3693

cmake/Modules/Geant4BuildProjectConfig.cmake

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -67,8 +67,9 @@ endif()
6767

6868
# - USolids
6969
# Compile definitions
70-
if(GEANT4_USE_USOLIDS)
71-
list(APPEND GEANT4_CORE_DEFINITIONS -DG4GEOM_USE_USOLIDS)
70+
if(GEANT4_USE_USOLIDS OR GEANT4_USE_PARTIAL_USOLIDS)
71+
set(GEANT4_USE_USOLIDS_EITHER ON)
72+
list(APPEND GEANT4_CORE_DEFINITIONS ${GEANT4_USOLIDS_COMPILE_DEFINITIONS})
7273

7374
# System USolids headers, because these do appear in Geant4's
7475
# public interface. The library should be in the link interface

cmake/Modules/Geant4ConfigureConfigScript.cmake

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -151,13 +151,13 @@ if(NOT GEANT4_BUILD_GRANULAR_LIBS AND UNIX)
151151
endif()
152152

153153
# - USolids
154-
if(GEANT4_USE_USOLIDS)
154+
if(GEANT4_USE_USOLIDS OR GEANT4_USE_PARTIAL_USOLIDS)
155155
set(G4_BUILTWITH_USOLIDS "yes")
156156
set(G4_USOLIDS_INCLUDE_DIRS ${USOLIDS_INCLUDE_DIRS})
157157
list(REMOVE_DUPLICATES G4_USOLIDS_INCLUDE_DIRS)
158158
list(REMOVE_ITEM G4_USOLIDS_INCLUDE_DIRS ${_cxx_compiler_dirs})
159159

160-
set(G4_USOLIDS_CFLAGS "-DG4GEOM_USE_USOLIDS")
160+
string(REPLACE ";" " " G4_USOLIDS_CFLAGS "${GEANT4_USOLIDS_COMPILE_DEFINITIONS}")
161161
foreach(_dir ${G4_USOLIDS_INCLUDE_DIRS})
162162
set(G4_USOLIDS_CFLAGS "${G4_USOLIDS_CFLAGS} -I${_dir}")
163163
endforeach()

cmake/Modules/Geant4DatasetDefinitions.cmake

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -38,11 +38,11 @@ geant4_add_dataset(
3838
# - Radioisotopes
3939
geant4_add_dataset(
4040
NAME RadioactiveDecay
41-
VERSION 4.3.1
41+
VERSION 4.3.2
4242
FILENAME G4RadioactiveDecay
4343
EXTENSION tar.gz
4444
ENVVAR G4RADIOACTIVEDATA
45-
MD5SUM e4a1a08a1c26000ffd32f17c38309c6d
45+
MD5SUM ed171641682cf8c10fc3f0266c8d482e
4646
)
4747

4848
# - Neutron XS
@@ -98,10 +98,10 @@ geant4_add_dataset(
9898
# - ENSDFSTATE
9999
geant4_add_dataset(
100100
NAME G4ENSDFSTATE
101-
VERSION 1.2.1
101+
VERSION 1.2.3
102102
FILENAME G4ENSDFSTATE
103103
EXTENSION tar.gz
104104
ENVVAR G4ENSDFSTATEDATA
105-
MD5SUM 55eba9a1fc69626ac8eb0eb40330acf9
105+
MD5SUM 98fef898ea35df4010920ad7ad88f20b
106106
)
107107

0 commit comments

Comments
 (0)