Skip to content

Commit db23516

Browse files
committed
Import Geant4 10.4.3 source tree
1 parent 4873be1 commit db23516

File tree

7,368 files changed

+20314
-19354
lines changed

Some content is hidden

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

7,368 files changed

+20314
-19354
lines changed

CMakeLists.txt

+2-2
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
#
44
# 21st September 2010 Ben Morgan
55
#
6-
# $Id: CMakeLists.txt 110078 2018-05-15 10:04:54Z gcosmo $
6+
# $Id$
77
#
88

99
#-----------------------------------------------------------------------
@@ -38,7 +38,7 @@ set(CMAKE_USER_MAKE_RULES_OVERRIDE_CXX
3838
project(Geant4)
3939
set(${PROJECT_NAME}_VERSION_MAJOR 10)
4040
set(${PROJECT_NAME}_VERSION_MINOR 4)
41-
set(${PROJECT_NAME}_VERSION_PATCH 2)
41+
set(${PROJECT_NAME}_VERSION_PATCH 3)
4242
set(${PROJECT_NAME}_VERSION "${${PROJECT_NAME}_VERSION_MAJOR}.${${PROJECT_NAME}_VERSION_MINOR}.${${PROJECT_NAME}_VERSION_PATCH}")
4343

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

CONTRIBUTING.md

+16-2
Original file line numberDiff line numberDiff line change
@@ -1,2 +1,16 @@
1-
The Geant4 Collaboration:
2-
http://geant4.cern.ch/collaboration/members.shtml
1+
Contributing to Geant4
2+
=====
3+
To contribute patches to Geant4, users can submit Pull Requests (PR) such that:
4+
5+
- A single PR refers to a single particular topic (fix or suggested enhancement);
6+
PRs including uncorrelated changes in codes in different areas or modules will
7+
not be considered.
8+
9+
A PR will be examined by a responsible and eventually extracted for a patch in
10+
the development repository of Geant4, to be included in a future release or
11+
patch.
12+
13+
For simple bug-fixes, it is anyhow recommended to use the official
14+
`Bugzilla problem reporting system <https://bugzilla-geant4.kek.jp/>`.
15+
16+
The Geant4 Collaboration

ReleaseNotes/Patch4.10.4-3.txt

+168
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,168 @@
1+
2+
Geant4 10.4 - patch-03 Release Notes
3+
------------------------------------
4+
5+
8 February 2019
6+
7+
List of fixes included in this public patch since the public release 10.4.p02:
8+
9+
o Configuration:
10+
-------------
11+
+ CMake:
12+
o Corrected URLs for data installation to use https; added -L flag to curl
13+
to follow redirects when accessing a dataset URL.
14+
o Geant4MakeRules_cxx.cmake: added -DGL_SILENCE_DEPRECATION to
15+
CMAKE_CXX_FLAGS_INIT for clang to silence GL deprecation compilation
16+
warnings on MacOS 10.14 Mojave.
17+
+ GNUMake:
18+
o Fixed setting of G4RUNPATHOPTION in Darwin/Linux-clang/g++ and binmake.cmk.
19+
Addressing problem report #2086.
20+
o Cleanup settings for GL in Darwin-clang.gmk and Darwin-g++.gmk.
21+
Added -DGL_SILENCE_DEPRECATION to CPPFLAGS to silence GL deprecation
22+
compilation warnings on MacOS 10.14 Mojave.
23+
24+
o Analysis:
25+
--------
26+
+ Fixed a deadlock issue with G4RootPNtupleManager where the mutex
27+
was locked before being passed to Root.
28+
+ Fixed compilation warnings on gcc-8.1.0.
29+
30+
o Geometry:
31+
--------
32+
+ management:
33+
o Use reverse_iterator in G4SolidStore::DeRegister() in order to speedup
34+
partial deregistration on setups with many solids instances.
35+
o G4Region: added possibility to disable search in the tree in
36+
AddRootLogicalVolume() for speeding up process in complex flat geometries.
37+
38+
o Global:
39+
------
40+
+ G4PhysicsVector, G4Physics2DVector: fixed possible out-of-bound access
41+
in FindBin() method. Addressing problem report #2087.
42+
+ Updated date and version for 10.4.p03.
43+
44+
o Interfaces:
45+
----------
46+
+ G4Xt: fixed compilation warnings for casts on gcc-8.1.
47+
+ Fixed compilation warnings for not used return parameters.
48+
49+
o Persistency - gdml
50+
------------------
51+
+ Clear auxiliary map information in G4GDMLReadStructure::Clear().
52+
Addressing problem report #2064.
53+
+ Added stripping of invalid characters for names generation in writer classes
54+
to prevent invalid NCName strings in exported GDML files. Adopt properly
55+
stripped generated strings for exporting names of optical surfaces.
56+
57+
o Processes - Electromagnetic:
58+
---------------------------
59+
+ dna:
60+
o Fixed header guards in G4ITFinder and G4AllITFinder.
61+
Addressing problem report #2084.
62+
+ standard:
63+
o G4GoudsmitSaundersonTable: fixed gcc-8.1.0 compilation warnings.
64+
+ utils:
65+
o G4EmElementSelector: optimisation of element selection for compound
66+
materials.
67+
+ xrays:
68+
o G4Cerenkov, G4Scintillation: correctly reset number of photons
69+
to 0 each step. Addressing problem report #2056.
70+
Added protection against infinite loops due to very small steps.
71+
Addressing problem report #1992.
72+
73+
o Processes - Hadronic:
74+
--------------------
75+
+ management:
76+
o G4HadronicProcess: added check if secondary particle is on the mass
77+
shell; if its mass differ from the PDG mass more for 1.5 MeV then mass
78+
is forced to the mass shell, energy conserved, but momentum is changed.
79+
Use correct return type when calling CheckResult() from PostStepDoIt():
80+
fixes case when the value of pointer 'result' does not get properly
81+
reset to NULL in case a non-conservation is detected, thus "bad"
82+
interaction does not get re-sampled.
83+
Fixed compilation warnings on gcc-8.1.0 regarding catching polymorphic
84+
type by value, instead of by reference.
85+
o G4HadronicProcess, G4VLeadingParticleBiasing, G4HadLeadBias: fixed
86+
compilation warning with gcc-7.
87+
+ models/binary_cascade
88+
o G4GeneratorPrecompoundInterface: fixed printout typo.
89+
+ models/cascade:
90+
o G4GDecay3: fixed problem reported by CMS due to wrong kinematics in
91+
the final state by removing loop check; adding protection for low value
92+
of mother mass.
93+
+ models/de_excitation:
94+
o G4LevelReader: fixed initialisation of 'fAlphaMax' from 1.e+6 to 1.e+15;
95+
needed for correct IC probability of some isotopes.
96+
Addresses problem reports #1986 and #2076, by change of handling of
97+
internal conversion data.
98+
+ models/particle_hp
99+
o G4ParticleHPCaptureFS::ApplyYourself(): Lorentz boost of neutron into
100+
target frame was backwards; reversed it. Also replaced SetDefinition()
101+
with SetDefinitionAndUpdateE(). Addresses problem report #1919.
102+
o Fixed definition of singletons for G4ParticleHPManager and
103+
G4ParticleHPThreadLocalManager and some code cleanup.
104+
Made G4ParticleHPThreadLocalManager a G4ThreadlLocalSingleton to avoid
105+
memory leaks generated each time a thread creates the instance.
106+
o Fixed bug for double allocation of G4ParticleHPReactionWhiteBoard in
107+
G4ParticleHPThreadLocalManager::OpenReactionWhiteBoard().
108+
o G4ParticleHPElementData: removed unnecessary inheritance from
109+
G4HadronicCrossSection.
110+
o Fixed incorrect sampling of isotropic distribution.
111+
Addressing problem report #1745.
112+
o Fixed gamma level mismatch in G4ParticleHPInelasticCompFS.
113+
Not a complete fix because gamma data comes from ENSDF and does not
114+
necessarily match excitations in ENDF.
115+
Addressing problem report #1789.
116+
o Fixed memory leaks in G4ParticleHPContEnergyAngular::Sample() and
117+
G4ParticleHPContAngularPar::cacheInit().
118+
Addressing problem report #2026.
119+
o G4ParticleHPElasticFS::ApplyYourself(): use correct reference frames for
120+
calculation of projectile and target momenta. Correction made for cases
121+
when cos(Theta) is given in lab frame and in center of momentum frame.
122+
Partial fix of momentum non-conservation for problem report #1918.
123+
o Fixed potential leaks in G4ParticleHPPhotonDist, G4ParticleHPContAngularPar
124+
and G4ParticleHPFinalState for use of pointers cached in G4Cache.
125+
o G4ENDFTapeRead, G4FissionProductYieldDist: fixed compilation warnings
126+
on gcc 8.1.0, regarding catching polymorphic type by value, instead of
127+
by reference.
128+
o Minor code cleanup and formatting.
129+
+ models/parton_string/diffraction
130+
o G4FTFAnnihilation: fix to get flat cos(theta) and phi distributions for
131+
antiproton annihilation at rest.
132+
+ models/rpg
133+
o G4RPGAntiKZeroInelastic, G4RPGInelastic: fixed compilation warnings on
134+
gcc-8.1.0, regarding catching polymorphic type by value, instead of by
135+
reference.
136+
+ processes:
137+
o G4HadronElasticProcess, G4NeutrinoElectronProcess: fixed compilation
138+
warnings on gcc 8.1.0, regarding catching polymorphic type by value,
139+
instead of by reference.
140+
+ stopping:
141+
o G4HadronStoppingProcess, G4MuonicAtomDecay: fixed compilation warnings
142+
on gcc 8.1.0, regarding catching polymorphic type by value, instead of
143+
by reference.
144+
145+
o Processes - Scoring:
146+
-------------------
147+
o G4ParallelWorldProcess: fixed track velocity of optical photons for the
148+
first step in a layered mass geometry.
149+
150+
o Examples:
151+
--------
152+
+ extended/fieldBlineTracer:
153+
o Fixed compilation error for missing header inclusion.
154+
155+
----------------------------------------------------------------------------
156+
157+
Technical Notes
158+
---------------
159+
160+
o This patch should be applied on top of release 10.4 or 10.4.p01 or p02.
161+
o Technical notes distributed for release 10.4 are also applicable and
162+
valid for this patch.
163+
164+
The code and rebuilt binary libraries for release 10.4.p03 are available
165+
through our "Download" Web page.
166+
167+
Please refer to the Geant4 User Documentation for further information about
168+
using Geant4.

cmake/History

+10
Original file line numberDiff line numberDiff line change
@@ -31,6 +31,16 @@ add this in the documentation for the changed file as [BUGFIX #BUGNUMBER].
3131

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

34+
18th October 2018 - Ben Morgan (cmake-V10-03-55)
35+
- Modules/Geant4InstallData.cmake: Use https for URL
36+
- Templates/geant4-config.in: Add -L flag to curl to follow redirects
37+
when accessing dataset url
38+
39+
28th September 2018 - Gabriele Cosmo
40+
- Modules/Geant4MakeRules_cxx.cmake: added -DGL_SILENCE_DEPRECATION
41+
to CMAKE_CXX_FLAGS_INIT for clang to silence GL deprecation compilation
42+
warnings on MacOS 10.14 Mojave.
43+
3444
23rd May 2018 - Gunter Folger (cmake-V10-03-54)
3545
- Update Geant4DatasetDefinitions to use G4RealSurface 2.1.1
3646
patched version bringing back data lost in 2.1

cmake/Modules/Geant4InstallData.cmake

+1-1
Original file line numberDiff line numberDiff line change
@@ -99,7 +99,7 @@
9999
# retrieving them globally
100100
#-----------------------------------------------------------------------
101101
# Geant4 Data Repository
102-
set(GEANT4_DATASETS_URL "http://cern.ch/geant4-data/datasets")
102+
set(GEANT4_DATASETS_URL "https://cern.ch/geant4-data/datasets")
103103

104104
# Where to install data in the build tree
105105
set(GEANT4_BUILD_FULL_DATADIR ${PROJECT_BINARY_DIR}/data)

cmake/Modules/Geant4MakeRules_cxx.cmake

+2-2
Original file line numberDiff line numberDiff line change
@@ -37,9 +37,9 @@ if(CMAKE_COMPILER_IS_GNUCXX OR CMAKE_CXX_COMPILER_ID MATCHES ".*Clang")
3737
set(CMAKE_CXX_FLAGS_MINSIZEREL_INIT "-Os -DNDEBUG")
3838
set(CMAKE_CXX_FLAGS_RELWITHDEBINFO_INIT "-O2 -g")
3939

40-
# Remove superfluous "unused argument" "warnings" from Clang
40+
# Remove superfluous "unused argument" and "GL deprecation" "warnings" from Clang
4141
if(CMAKE_CXX_COMPILER_ID MATCHES ".*Clang")
42-
set(CMAKE_CXX_FLAGS_INIT "${CMAKE_CXX_FLAGS_INIT} -Qunused-arguments")
42+
set(CMAKE_CXX_FLAGS_INIT "${CMAKE_CXX_FLAGS_INIT} -Qunused-arguments -DGL_SILENCE_DEPRECATION")
4343
endif()
4444

4545
# Though it should be the default, always use libc++ with AppleClang

cmake/Templates/geant4-config.in

+1-1
Original file line numberDiff line numberDiff line change
@@ -370,7 +370,7 @@ install_datasets()
370370
# - Download bundle to cache
371371
dataset_file=$(echo $ds | cut -d "|" -f4)
372372
echo "+ downloading ${dataset_file}"
373-
${G4CURL} -f -m ${dataset_timeout} -o ${g4downloaddir}/${dataset_file} ${dataset_url}/${dataset_file}
373+
${G4CURL} -L -f -m ${dataset_timeout} -o ${g4downloaddir}/${dataset_file} ${dataset_url}/${dataset_file}
374374
curl_status="$?"
375375
if [ "$curl_status" != "0" ] ; then
376376
echo "- download of '${dataset_file}' failed : CURL error $?"

config/G4UI_BUILD.gmk

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
# $Id: G4UI_BUILD.gmk 66368 2012-12-18 09:20:17Z gcosmo $
1+
# $Id$
22
# -------------------------------------------------------------
33
# Interfaces-specific CPPFLAGS for BUILD phase.
44
# John Allison, 6th July 1998.

config/G4UI_USE.gmk

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
# $Id: G4UI_USE.gmk 66368 2012-12-18 09:20:17Z gcosmo $
1+
# $Id$
22
# -------------------------------------------------------------
33
# GNUmakefile for CPPFLAGS for interfaces USE phase.
44
# John Allison, 6th July 1998.

config/G4VIS_BUILD.gmk

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
# $Id: G4VIS_BUILD.gmk 66368 2012-12-18 09:20:17Z gcosmo $
1+
# $Id$
22
# -------------------------------------------------------------
33
# Visualization-specific CPPFLAGS for BUILD phase.
44
# John Allison, 24th January 1998.

config/G4VIS_USE.gmk

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
# $Id: G4VIS_USE.gmk 66368 2012-12-18 09:20:17Z gcosmo $
1+
# $Id$
22
# -------------------------------------------------------------
33
# GNUmakefile for CPPFLAGS for visualization USE phase.
44
# John Allison, 24th January 1998.

config/History

+16-1
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
svn log $Id: History 110053 2018-05-15 08:55:49Z gcosmo $
1+
svn log $Id$
22
-------------------------------------------------------------------
33

44
=========================================================
@@ -16,6 +16,21 @@ committal in the CVS repository !
1616
* Reverse chronological order (last date on top), please *
1717
----------------------------------------------------------
1818

19+
28th September 2018 Gabriele Cosmo (config-V10-03-10)
20+
- Added -DGL_SILENCE_DEPRECATION to CPPFLAGS to Darwin setups to silence
21+
deprecation compilation warnings on MacOS 10.14 Mojave.
22+
23+
18th September 2018 Gabriele Cosmo
24+
- Cleanup settings for GL in Darwin-clang.gmk and Darwin-g++.gmk.
25+
26+
12th September 2018 Gabriele Cosmo
27+
- Withdraw changes of last tag for Linux-g++ and corrected use of
28+
G4RUNPATHOPTION in binmake.gmk for installed kernel libraries.
29+
30+
7th September 2018 Gabriele Cosmo
31+
- Fixed setting of G4RUNPATHOPTION in Darwin/Linux-clang/g++ and binmake.cmk.
32+
Addressing problem report #2086.
33+
1934
12th April 2018 Gabriele Cosmo (config-V10-03-09)
2035
- WIN32-VC.gmk: updated obsolete configuration for Qt5.
2136

config/analysis.gmk

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
# $Id: analysis.gmk 66368 2012-12-18 09:20:17Z gcosmo $
1+
# $Id$
22
# Guy Barrand, 20th Mai 2000
33
#
44
# Analysis variables...

config/architecture.gmk

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
# $Id: architecture.gmk 110053 2018-05-15 08:55:49Z gcosmo $
1+
# $Id$
22
# ------------------------------------------------------------------------
33
# GEANT 4 - Architecture configuration script for GNU Make
44
#

config/binmake.gmk

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,3 @@
1-
# $Id: binmake.gmk 106467 2017-10-11 08:09:08Z gcosmo $
21
# ----------------------------------------------------------
32
# Script defining rules and paths for making binaries.
43
# First implementation: Gabriele Cosmo, 25/06/1998.
@@ -194,6 +193,7 @@ ifdef G4EXLIB
194193
# For the example dependent directory, keep the
195194
# path to the shared lib in the executable.
196195
LDFLAGS += $(G4RUNPATHOPTION)$(G4TMPDIR)
196+
LDFLAGS += $(G4RUNPATHOPTION)$(G4LIB)/$(G4SYSTEM)
197197
endif
198198
endif
199199
include $(G4INSTALL)/config/common.gmk

config/common.gmk

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
# $Id: common.gmk 66368 2012-12-18 09:20:17Z gcosmo $
1+
# $Id$
22
# ----------------------------------------------------------------
33
# Common part of GNUmakefile for libraries. John Allison, 5/7/95.
44
# ----------------------------------------------------------------

config/globlib.gmk

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
# $Id: globlib.gmk 66368 2012-12-18 09:20:17Z gcosmo $
1+
# $Id$
22
# --------------------------------------------------------------
33
# Script for compound libraries. Gabriele Cosmo, 25/6/98.
44
# --------------------------------------------------------------

config/interactivity.gmk

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
# $Id: interactivity.gmk 66368 2012-12-18 09:20:17Z gcosmo $
1+
# $Id$
22
# GNUmakefile for CPPFLAGS, LDFLAGS for interactivy,
33
# ie interfaces and visualization.
44
#

config/liblist.c

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
/* $Id: liblist.c 66368 2012-12-18 09:20:17Z gcosmo $ */
1+
/* $Id$ */
22

33
/*
44
Given a "libname.map" file on standard input and a list or directory

config/moc.gmk

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
# $Id: moc.gmk 66368 2012-12-18 09:20:17Z gcosmo $
1+
# $Id$
22
# ----------------------------------------------------------------
33
# Common part of GNUmakefile for libraries. John Allison, 5/7/95.
44
# ----------------------------------------------------------------

config/sys/Darwin-clang.gmk

+8-7
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,7 @@ ifeq ($(G4SYSTEM),Darwin-clang)
1010
CXXFLAGS += -Wwrite-strings -Wpointer-arith -Woverloaded-virtual
1111
CXXFLAGS += -Wno-variadic-macros -Wshadow -pipe
1212
CXXFLAGS += -fno-trapping-math -ftree-vectorize -fno-math-errno
13+
CPPFLAGS += -DGL_SILENCE_DEPRECATION
1314
G4USE_STD11 := 1
1415
ifdef G4USE_STD14
1516
CPPFLAGS += -std=c++14
@@ -47,7 +48,7 @@ ifeq ($(G4SYSTEM),Darwin-clang)
4748
FCFLAGS += -O2 -g
4849
CCFLAGS += -O2 -g
4950
endif
50-
G4RUNPATHOPTION := -Wl,-rpath
51+
G4RUNPATHOPTION := -Wl,-rpath,
5152
# G4STATIC_MODE += -Wl,-force_load
5253
FC := gfortran
5354
FCFLAGS += -fno-automatic -fno-backslash -fno-second-underscore
@@ -84,12 +85,12 @@ ifeq ($(G4SYSTEM),Darwin-clang)
8485
OGLFLAGS := -I$(OGLHOME)/include
8586
endif
8687
ifndef OGLLIBS
87-
QTGLPATH := $(shell test -f /System/Library/Frameworks/OpenGL.framework/OpenGL && echo "/System/Library/Frameworks/OpenGL.framework")
88-
ifeq ($(QTGLPATH),/System/Library/Frameworks/OpenGL.framework)
89-
OGLLIBS := -F/System/Library/Frameworks -framework OpenGL -framework AGL
90-
ifeq ($(G4VIS_USE_OPENGLX),1)
91-
OGLLIBS += -L$(OGLHOME)/lib -lGLU -lGL
92-
endif
88+
OGLPATH := $(shell test -f /Library/Frameworks/OpenGL.framework/OpenGL && echo "/Library/Frameworks/OpenGL.framework")
89+
ifneq ($(OGLPATH),/Library/Frameworks/OpenGL.framework)
90+
OGLPATH := $(shell test -f /System/Library/Frameworks/OpenGL.framework/OpenGL && echo "/System/Library/Frameworks/OpenGL.framework")
91+
endif
92+
ifneq ($(OGLPATH),)
93+
OGLLIBS := -F$(OGLPATH)/.. -framework OpenGL -framework AGL
9394
else
9495
OGLLIBS := -L$(OGLHOME)/lib -lGLU -lGL
9596
endif

0 commit comments

Comments
 (0)