Skip to content

Commit eaa57aa

Browse files
committed
Import Geant4 9.5.2 source tree
1 parent b67a58d commit eaa57aa

File tree

318 files changed

+35327
-35867
lines changed

Some content is hidden

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

318 files changed

+35327
-35867
lines changed

CMakeLists.txt

+2-2
Original file line numberDiff line numberDiff line change
@@ -52,10 +52,10 @@ set(CMAKE_MODULE_PATH
5252
# See the documentation in each of these modules for further details.
5353
#
5454
# - Versioning. We do this here for now
55-
set(${PROJECT_NAME}_VERSION "9.5.1")
55+
set(${PROJECT_NAME}_VERSION "9.5.2")
5656
set(${PROJECT_NAME}_VERSION_MAJOR "9")
5757
set(${PROJECT_NAME}_VERSION_MINOR "5")
58-
set(${PROJECT_NAME}_VERSION_PATCH "1")
58+
set(${PROJECT_NAME}_VERSION_PATCH "2")
5959

6060
# - Provide dependent options as these are needed for some Geant4 features
6161
include(CMakeDependentOption)

ReleaseNotes/Patch4.9.5-2.txt

+250
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,250 @@
1+
2+
Geant4 9.5 - patch-02 Release Notes
3+
-----------------------------------
4+
5+
22 October 2012
6+
7+
List of fixes included in this public patch since the public release 9.5.p01:
8+
9+
o Environments
10+
------------
11+
+ G4Py:
12+
o Updated scripts for use of internal CLHEP module.
13+
o Added necessary updates for 9.5.p01. Addressing problem report #1317.
14+
o Fixed logics in configuration script for specifying Python include
15+
path. Addressing problem report #1316.
16+
o Fixes in pyG4VisManager: added static statement for GetVerbosity() and
17+
fixed GetConcreteInstance() returning an insufficient class pointer.
18+
Addressing problem report #1318.
19+
20+
o Digits_Hits:
21+
-----------
22+
+ G4VScoringMesh: avoid updating size and segment in command-line scoring
23+
and print warning when SetSize() or SetNumberOfSegments is called more
24+
then once.
25+
26+
o Error Propagation:
27+
-----------------
28+
+ Fixes in G4ErrorTrackLengthTarget and G4VErrorLimitProcess to solve
29+
memory leak. Addressing problem report #1284.
30+
+ Fixed variable name (partType -> partName) in G4ErrorFreeTrajState
31+
and delete code not needed in G4ErrorPhysicsList.
32+
+ Explicitly use inclusion of headers for system of units and physical
33+
constants and fixed spurious cases of hidden variables.
34+
35+
o Event:
36+
-----
37+
+ Correction for orthogonalization of rotation matrix in
38+
G4SPSPosDistribution::GenerateRotationMatrices() method.
39+
Addressing problem report #1299.
40+
41+
o Geometry:
42+
--------
43+
+ biasing:
44+
+ divisions:
45+
+ management:
46+
o Fixed trivial cases of variable shadowing.
47+
+ navigation:
48+
o G4Navigator: added method GetGlobalExitNormal() to be used in place
49+
of GetLocalExitNormal() by optical processes, to address problem
50+
report #1300. Compute normals also for replicas.
51+
Moved internal methods GetSavedState() and RestoreSavedState() to
52+
protected.
53+
o G4PropagatorInField, G4VIntersectionLocator: corrected two arguments
54+
of IntersectChord() to be const references instead of copy (fix for
55+
CPU performance).
56+
o G4Navigator, G4MultiNavigator and G4ErrorPropagationNavigator:
57+
use 'true' as default value for state keeping.
58+
o Fixed trivial cases of variable shadowing.
59+
+ solids/Boolean:
60+
o G4SubtractionSolid: refined protection for potential cases of
61+
infinite loop in DistanceToIn(p,v); return computed distance instead
62+
of zero and provide more descriptive information when issuing warning.
63+
+ solids/BREPS:
64+
o Fixed trivial cases of variable shadowing.
65+
+ solids/CSG:
66+
o G4Para::SurfaceNormal(): fixed calculation of sin(alpha) from
67+
cosine and tangent.
68+
o G4Torus: revised values of delta, to account for precision loss
69+
in calculating radius 'pt'. Reordered a few computation for better
70+
FP accuracy.
71+
+ volumes:
72+
o Corrected GNUMakefile for spurious inclusion path.
73+
74+
o Global:
75+
------
76+
+ G4PhysicsVector: added GetMaxEnergy() inlined method; indicate inline
77+
methods in header file by explicitly adding inline keyword; added inline
78+
method Value() and private method ComputeValue() in order to have inline
79+
access to the value for the case of multiple calls with the the same
80+
energy value.
81+
+ Correction to G4PhysicsOrderedFreeVector to fix ordering of elements.
82+
+ G4UnitsTable: added call to BuildUnitsTable() from static accessor to
83+
guarantee proper initialization of units in static calls.
84+
Modified warnings in cout to be compliant with G4Exception syntax.
85+
+ Implemented workaround to aid for templated symbols of
86+
G4ReferenceCountedHandle to be properly imported/exported
87+
for DLL build on Windows systems based on CMake.
88+
Addressing problem report #1329.
89+
+ Fixed trivial cases of variable shadowing.
90+
+ Updated date and version for 9.5.p02.
91+
92+
o Intercoms:
93+
---------
94+
+ Fixed trivial cases of variable shadowing.
95+
96+
o Interfaces:
97+
----------
98+
+ Fix in G4UIWin32 to make it work on Win64; replaced [Get|Set]WindowLong()
99+
with [Get|Set]WindowLongPtr() and GWL_USERDATA by GWLP_USERDATA.
100+
101+
o Particles:
102+
---------
103+
+ Fixed bug in decay table for k_star-.
104+
+ Modified G4eDecayProduct to use std::vector instead of fixed size array,
105+
removing limitation of number of daughters.
106+
107+
o Persistency:
108+
-----------
109+
+ ASCII:
110+
o Fixed case of conversion from size_t to G4int in G4tgrUtils in
111+
function AreWordsEquivalent(), detected on win64 system.
112+
+ GDML:
113+
o Proper handling of constant material properties.
114+
o Fixed trivial cases of variable shadowing.
115+
116+
o Electromagnetic Processes:
117+
-------------------------
118+
+ Standard:
119+
o G4eplusAnnihilation: fixed weight propagation for annihilation at rest.
120+
o G4IonFluctuations: use simplified algorithm for very small steps to
121+
avoid infinite loop in tracking of very low energy (~10 eV) ions.
122+
Addressing problem report #1345.
123+
o G4UrbanMscModel90: added protection against very low step limit to
124+
avoid infinite loop in tracking of very low energy (~10 eV) ions.
125+
Addressing problem report #1345.
126+
o G4UrbanMscModel92: use more loose protection against large angle
127+
scattering (1000 -> 10000).
128+
o Added missing reference to G4UrbanMscModel92 files in CMake script.
129+
+ Utils:
130+
o Fixed weight propagation from primary to secondaries in G4VEmProcess.
131+
132+
o Hadronic Processes:
133+
------------------
134+
+ cross_sections:
135+
o G4HadronCrossSections: use cache of previous cross-section and G4Pow
136+
to save some CPU time.
137+
+ management:
138+
o G4HadronicProcess: avoid cross-section computation in PostStepDoIt
139+
for neutral hadrons (minor improvement in CPU time).
140+
+ models/binary_cascade:
141+
o Fixed case of use of Lorentz vector explicit contructor in
142+
G4BinaryCascade.
143+
+ models/CHIPS:
144+
o Fix to linear table update for quasi-elastic cross-sections, also
145+
responsible for event non-reproducibility.
146+
o Fixed bug in ElectroNuclearReaction. Addressing problem report #1354.
147+
o Fixed cases of use of Lorentz vector explicit contructor in
148+
G4QFragmentation and G4Quasmon.
149+
+ models/de_excitation:
150+
o G4DiscreteGammaTransition: fixed algorithm of selection of discrete
151+
transition; restore transition to the ground state in gamma+C12
152+
reaction. Addressing problem report #1338.
153+
+ models/lend:
154+
o Fixed GNUmakefile for use of internal expat library, if explicitely
155+
chosen.
156+
o Fixed trivial cases of variable shadowing.
157+
+ models/neutron_hp:
158+
o Fixed case of use of Lorentz vector explicit contructor in
159+
G4NeutronHPCaptureFS.
160+
+ models/parton_string/hadronization:
161+
o Removed unnecessary assertions in G4ExcitedStringDecay and removed
162+
debug printouts.
163+
o Made copy ctor, =, == , and != operators private without
164+
implementation in G4LundStringFragmentation and G4QGSMFragmentation,
165+
fixing coverity warnings.
166+
+ models/qmd:
167+
o Fixed compilation warning on win64 in G4QMDMeanField.
168+
+ models/quasi_elastic
169+
o Bug fix in G4QuasiElRatios affecting the initialisation of table.
170+
Bug fix fixing wrong initialization of linear table and influencing
171+
event reproducibility.
172+
+ processes:
173+
o G4WHadronElasticProcess: fixed time and weight of recoil nuclear.
174+
o Fixed trivial cases of variable shadowing.
175+
+ stopping:
176+
o G4PiMinusAbsorptionBertini: if Bertini fails to interact projectile,
177+
return untouched projectile track as G4ParticleChange, so process
178+
manager can decay it.
179+
180+
o Generic Processes:
181+
-----------------
182+
+ Biasing:
183+
o Fixed trivial cases of variable shadowing.
184+
+ Cuts:
185+
o Fixed compilation warning in G4VRangeToEnergyConverter
186+
if G4_NO_VERBOSE set.
187+
o Fixed trivial cases of variable shadowing.
188+
+ Optical:
189+
o Adopt call to GlobalExitNormal() from G4Navigator in G4OpBoundaryProcess
190+
for proper extrapolation of normals on boundaries.
191+
Addressing problem report #1300.
192+
o Fixed Coverity defects and cases of variable shadowing.
193+
+ Transportation:
194+
o G4Transportation: corrected issues with initilisation of data members
195+
reported by Coverity.
196+
o Explicitly use inclusion of headers for system of units and physical
197+
constants and fixed cases of variable shadowing.
198+
199+
o Track:
200+
-----
201+
+ Fixed bug in copy constructor of G4VUUserTrackInformation.
202+
Addressing problem report #1346.
203+
204+
o Visualization:
205+
-------------
206+
+ OpenGL: fix in G4OpenGLWin32Viewer to make it work on Win64; replaced
207+
[Get|Set]WindowLong() with [Get|Set]WindowLongPtr() and GWL_USERDATA by
208+
GWLP_USERDATA.
209+
210+
o Examples:
211+
--------
212+
+ Updated reference outputs.
213+
+ advanced/composite_calorimeter:
214+
o Fixed crashes due to high global times converted to integers values.
215+
Addressing problem report #1337.
216+
+ advanced/human_phantom:
217+
o Make destructor virtual in G4BasePhantomBuilder.
218+
+ extended/electromagnetic/TestEm7
219+
o Fixed compilation problems on Mac for c2_functions.
220+
o Fixed case of division by zero at initialisation in
221+
G4ScreenedNuclearRecoil
222+
+ extended/field/field04
223+
o Renamed global allocator for F04Trajectory to not clash with one
224+
defined in the kernel. Fixes compilation problem on Windows.
225+
+ extended/persistency/gdml/G01:
226+
o Added missing unit in opticalsurfaces.gdml.
227+
+ extended/persistency/P01:
228+
o Fixes in GNUMakefile and CMake scripts.
229+
o Removed unnecessary G4Exception from the code.
230+
o Added root macro to read the hits.
231+
o Removed debug printout; small fix in the iterator type.
232+
+ examples/novice/N07:
233+
o Added protection within G4VERBOSE in ExN07SteppingVerbose.
234+
235+
----------------------------------------------------------------------------
236+
237+
Technical Notes
238+
---------------
239+
240+
o This patch should be applied on top of release 9.5 or 9.5.p01.
241+
o Technical notes distributed for release 9.5 are also applicable and
242+
valid for this patch.
243+
244+
The code and rebuilt binary libraries for release 9.5.p02 are available
245+
through our "Download" Web page:
246+
http://cern.ch/geant4/support/download.shtml
247+
248+
Please refer to the Geant4 User Documentation:
249+
http://cern.ch/geant4/support/userdocuments.shtml
250+
for further information about using Geant4.

environments/History

+12
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,18 @@ committal in the CVS repository !
1818
* Reverse chronological order (last date on top), please *
1919
----------------------------------------------------------
2020

21+
envs-V09-04-02 / 23 July 2012 Koichi Murakami
22+
[g4py]
23+
- configure script: fixed logics for specifying python include path (bug.1316)
24+
- pyG4VisManager: (bug.1318))
25+
added static statement for GetVerbosity.
26+
fixed GetConcreteInstance returns an insufficient class pointer.
27+
28+
21 July 2012 Koichi Murakami
29+
[g4py]
30+
- scripts updated for internal clhep use
31+
- updated for 9.5.p01 (bug.1317)
32+
2133
envs-V09-04-01 / 10 November 2011 Koichi Murakami
2234
[g4py]
2335
- include fixes on OSX Lion

environments/g4py/History

+11
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,17 @@ Geant4Py is a Geant4-Python bridge.
1414
* Reverse chronological order (last date on top), please *
1515
----------------------------------------------------------
1616

17+
23 July 2012 K.Murakami
18+
- configure script: fixed logics for specifying python include path (bug.1316)
19+
- pyG4VisManager: (bug.1318))
20+
added static statement for GetVerbosity.
21+
fixed GetConcreteInstance returns an insufficient class pointer.
22+
23+
21 July 2012 K.Murakami
24+
- configure script is updated for internal G4clhep
25+
- pyG4Run.cc, pyG4Event.cc are updated as non-copyable (9.5.p01) (bug.1317)
26+
- g4autobuild, g4package scripts are apdated for internal clhep use.
27+
1728
10 Nomvembter 2011 K.Murakami
1829
- fixes on OSX Lion matters
1930
- some minor fixes for 9.5 release

environments/g4py/configure

+28-17
Original file line numberDiff line numberDiff line change
@@ -5,8 +5,6 @@
55
# ======================================================================
66
export LANG=C
77

8-
IFS='
9-
'
108
PATH=/bin:/usr/bin
119
export PATH
1210

@@ -47,7 +45,7 @@ Fine tuning of the library path:
4745
--with-g4-libdir=DIR Geant4 library dir [\$G4INSTALL/lib/\$G4SYSTEM]
4846
--with-clhep-incdir=DIR CLHEP header dir [\$CLHEP_BASE_DIR/include]
4947
--with-clhep-libdir=DIR CLHEP library dir [\$CLHEP_BASE_DIR/lib]
50-
--with-clhep-lib=LIB library name of libCLHEP.so [CLHEP|\$CLHEP_LIB]
48+
--with-clhep-lib=LIB library name of CLHEP [CLHEP|\$CLHEP_LIB|G4clhep]
5149
5250
--with-python-incdir=DIR Python header dir [/usr/include/python(2.#)],
5351
(location of pyconfig.h)
@@ -279,10 +277,11 @@ echo "ok"
279277
# ---
280278
clhep_incdir1=${CLHEP_INCLUDE_DIR:-/zzz}
281279
clhep_incdir2=${CLHEP_BASE_DIR:+$CLHEP_BASE_DIR/include}
282-
set $clhep_incdir $clhep_incdir1 $clhep_incdir2
280+
clhep_incdir3=$g4_incdir
281+
set $clhep_incdir $clhep_incdir1 $clhep_incdir2 $clhep_incdir3
283282
for adir in $*
284283
do
285-
if [ -d "$adir" ]; then
284+
if [ -d "$adir"/CLHEP ]; then
286285
clhep_incdir=$adir
287286
break
288287
fi
@@ -319,6 +318,16 @@ fi
319318
echo "$clhep_libdir"
320319

321320
echo $ac_n "Checking for CLHEP lib name ... $ac_c"
321+
clhep_lib2=G4clhep
322+
set $clhep_lib $clhep_lib2
323+
for aclhep in $*
324+
do
325+
if [ -f "$clhep_libdir"/lib${aclhep}.${shlib} ]; then
326+
clhep_lib=$aclhep
327+
break
328+
fi
329+
done
330+
322331
if [ ! -f "$clhep_libdir"/lib${clhep_lib}.${shlib} ]; then
323332
echo "no"
324333
echo $ac_n "### lib${clhep_lib}.${shlib} (clhep-lib) does not exist. $ac_c"
@@ -329,19 +338,21 @@ echo "lib${clhep_lib}.${shlib}"
329338

330339
# ---
331340
echo $ac_n "Checking for Python include dir (pyconfig.h) ... $ac_c"
332-
# check version
333-
if [ $with_python3 = 0 ]; then
334-
set python python2.7 python2.6 python2.5 python2.4 python2.3 python2.2
335-
else
336-
set python3.1 python3.0
337-
fi
338-
for aincdir in $*
339-
do
340-
if [ -d /usr/include/"$aincdir" ]; then
341-
python_incdir=/usr/include/$aincdir
342-
break
341+
if [ $python_incdir = /zzz ]; then
342+
# check version
343+
if [ $with_python3 = 0 ]; then
344+
set python python2.7 python2.6 python2.5 python2.4 python2.3 python2.2
345+
else
346+
set python3.3 python3.2 python3.1 python3.0
343347
fi
344-
done
348+
for aincdir in $*
349+
do
350+
if [ -d /usr/include/"$aincdir" ]; then
351+
python_incdir=/usr/include/$aincdir
352+
break
353+
fi
354+
done
355+
fi
345356

346357
if [ ! -f "$python_incdir"/pyconfig.h ]; then
347358
echo "no"

environments/g4py/source/event/pyG4Event.cc

+1-1
Original file line numberDiff line numberDiff line change
@@ -51,7 +51,7 @@ using namespace pyG4Event;
5151
// ====================================================================
5252
void export_G4Event()
5353
{
54-
class_<G4Event, G4Event*>("G4Event", "event class")
54+
class_<G4Event, G4Event*, boost::noncopyable>("G4Event", "event class")
5555
.def(init<G4int>())
5656
// ---
5757
.def("Print", &G4Event::Print)

0 commit comments

Comments
 (0)