forked from Geant4/geant4
-
Notifications
You must be signed in to change notification settings - Fork 2
/
Copy pathPatch4.10.0-1.txt
340 lines (316 loc) · 15.9 KB
/
Patch4.10.0-1.txt
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
Geant4 10.0 - patch-01 Release Notes
------------------------------------
28 February 2014
List of fixes included in this public patch since the public release 10.0:
o Configuration:
-------------
+ CMake:
o Include /opt/X11 paths for X11 and OpenGL on MacOS X Mavericks.
o Added variables for G4LIB_{BUILD,USE}_EXPAT as for ZLIB and export
them based on value of GEANT4_USE_SYSTEM_EXPAT.
Addresses problem report #1567.
o Added builtin zlib to list of features, added G4zlib to list of
libraries when used; export them to geant4-config.
Addresses problem report #1572.
o Replaced use of GNU awk extension 'length' in geant4-config for
determining number of datasets. Use return value of split function
to get length of array. Addresses problem reported in item #1614
in hypernews 'Installation and Configuration' forum.
+ GNUMake:
o Fixed setting of -fPIC in MT-mode for Linux-g++, Linux-icc and
Darwin targets.
o Analysis:
--------
+ Updated to g4tools 1.7.1.
Fixed performance issue observed for an ntuple with large numbers of
columns reported in item #455 in hypernews 'Analysis' forum.
o Event:
-----
+ Changed default value of Q (charge) for /gun/ion and /gun/ionL commands.
Now electrons are fully stripped (i.e. Q = Z) if Q is not specified.
+ G4SPSPosDistribution::IsSourceConfined(): added protection against
null pointer. Addressing problem report #1255.
o G3toG4:
------
+ Correction to CMake script: removed no longer existing package from
dependency list.
o Geometry:
--------
+ magneticfield:
o Added call to G4Mag_EqRhs::SetChargeMomentumMass() from
G4Mag_SpinEqRhs::SetChargeMomentumMass(), following report in
item #210 in hypernews 'Fields' forum.
+ navigation:
o Fixed implementation of SetNavigatorForTracking() in
G4TransportationManager, to initialise active navigator and
propagator-in-field with the new provided instance.
Addressing problem report #1537.
o Minor code cleanup in G4GlobalMagFieldMessenger.
+ solids/CSG:
o Added correct cloning mechanism in G4U* wrappers.
Addressing problem report #1553.
o Simply reset polyhedron pointer to zero for modifiers of G4U* wrappers
in parameterisation. Resolves crash in MT visualization when using
USolids.
+ solids/specific:
o Fix in G4GenericTrap::InsidePolygone() to check if p lies between
the two extremes of the segment. Addressing problem report #1541.
o Corrected cloning mechanism in G4U* wrappers.
Addressing problem report #1553.
o Simply reset polyhedron pointer to zero for modifiers of G4U* wrappers
in parameterisation. Resolves crash in MT visualization when using
USolids.
o Removed left-over debug printout in G4Polycone::SetOriginalParameters().
+ solids/usolids:
o Implemented precise safety in UTubs and UCons for SafetyFromOutside().
Precise safety is used in UPolycone for calculation of SafetyFromOutside().
o Fixed typo in SafetyFromInside() for UTubs for correct calculation of
'safePhi'.
o Corrected implementation of Clone() method in UBox, UTet, UTrd.
Corrected cloning mechanism and copy constructor in G4USolid.
Addressing problem report #1553.
o UPolycone fixes: added validity check of shape for case when
RMin > RMax; moved global bounding-box to be a class data member.
Corrected implementation of DistanceToOut(p,v) for convexity and
normals; corrected implementation of DistanceToOut(p,v) for stuck
tracks due to DistanceToIn=DistanceToOut=0; corrected implementation
of Inside() in case of OpenPhi.
o Removed ResetPolyhedron() from G4USolid bridge class as not necessary;
moved 'fPolyhedron' pointer to protected.
o Global:
------
+ G4PhysicsVector: small performance optimisation to avoid one division.
+ Fixed Coverity defects in G4Physics2DVector::Retrieve().
+ Implemented workaround to guarantee G4cout/G4cerr are initialized
correctly before main function.
+ Added protections to avoid core dumps caused by division by zero
and other minor updates in G4ConvergenceTester.
+ Updated date and version for 10.0.p01.
o Graphics Representations:
------------------------
+ Fixes defects reported by PVS static analysis tool.
Some code cleanup.
o Electromagnetic Processes:
-------------------------
+ DNA:
o Fix in G4DNAMolecularMaterial to prevent segmentation fault in case a
model is not created at initialisation time.
+ Low Energy:
o Suppressed exception warning issued by some Penelope models;
Controlled by verbosity flag now for diagnostics.
o Allow for (AutoLock-protected) creation on-the-fly of tables in
SampleSecondaries(); avoid crash when the loop of SampleSecondaries()
is inkoved in a unit test.
o Fixed Coverity report in G4LivermorePhotoElectricModel.
+ Standard:
o Bug fix in G4UrbanMscModel; 1st normal step in StepLimitType 2 mode
was not randomized.
Move methods ComputeTheta0,SimpleScattering(), SampleDisplacement(),
LatCorrelation() to be inlined for small CPU speedup.
o Fix in G4UniversalFluctuation for energy loss for extreme small cuts.
Bug fix in "ionization" computing (small observable effect).
Replaced G4Pow::expA() by faster G4Exp().
Reduced number of divisions by addition of extra class members.
o G4NuclearStopping: fix to avoid changing ion charge.
o G4ionIonisation: do not instantiate extra model at high enegry if
G4IonParameterisedModel is used. Improved printout at initialisation.
o G4SauterGavrilaAngularDistribution: use Penelope 2008 sampling
algorithm, as it is more effective; distribution itself is unchanged.
o G4GoudsmitSaundersonMscModel, G4GoudsmitSaundersonTable: use G4Log(),
and G4Exp().
o G4eCoulombScatteringModel, G4eSingleCoulombScatteringModel: get pointer
to the vector of cuts from parameters of Initialise(..) method and not
from G4ProductionCutsTable; more convenient for unit tests.
o Fixed Coverity defects.
+ Utils:
o G4VEnergyLossProcess: fixed division by zero for the case of an ion
with charge zero.
o G4EmCalculator: in FindCouple() method, implemented loop over all
regions if argument pointer to region of the method is null.
Added G4Exception if G4MaterialCutsCouple is not found out and
also inside GetCSDARange() when CSDA table is not initialized.
o G4LossTableMananger: fixed bug for initialisation of several runs
in one job (affecting muons and e- and providing non-reproducibility)
o G4LossTableMananger, G4EmProcessOptions: define default verbosity=0
for worker thread, so summary on EM processes is not duplicated.
o G4VEnergyLossProcess, G4VEmProcess: define fixed precison=6 for
initialisation printout.
+ xrays:
o Make some class members and methods static in G4Cerenkov and
G4Scintillation.
o Generic Processes:
-----------------
+ Cuts:
o Fixed verbosity warning in G4ProductionCutsTable.
+ Decay:
o Fixed problem of wrong global time for secondaries in case that the
primary track stops during along step. Addressing problem report #1555.
o Replaced use of DBL_MAX with age of the universe for stable particle
life time. Addressing problem report #1569.
+ Management:
o Fixed verbosity warning in G4ProcessTable.
+ Optical:
o Make 'WLSTimeGeneratorProfile' and 'UseTimeProfile' static in G4OpWLS.
o Hadronic Processes:
------------------
+ cross_sections:
o Removed wrong if statement against zero cross-section in
G4CrossSectionDataStore::SampleZandA(). Correct fix for the crashes
observed in QBBC.
o Disabled threshold for the inelastic cross-section in
G4BGGNucleonInelasticXS.
+ management:
o Added printout of energy momentum check in G4HadronicProcess.
+ models/binary_cascade:
o G4BinaryLightIoncascade::FuseNucleiAndPrompound(): added protection at
low energy: available energy is not sufficient to create a fragment.
o G4BinaryLightIonReaction: fix for Coverity report on small leak.
o Added printout of particle name in check for valid type of projectile
in G4BinaryCasacde::ApplyYourself().
+ models/de_excitation:
o G4ExcitationHandler: fixed minor memory leak in the case when
FermiBreakUp has no final states available; reported in item
#1371 in hypernews Hadronic forum.
o G4NuclearLevelManager: trivial fix for defect reported by Coverity.
+ models/inclxx:
o Fix for occasionally produced excited nucleon as a pre-fragment.
o Added getter for INCL Config object in the G4INCLInterfaceStore.
+ models/lend:
o Correction to CMake scripts: removed no longer existing package
from dependency list.
+ models/neutron_hp:
o Fixed problem in reading compressed data files in
G4NeutronHPThermalScatteringData. Addressing problem report #1543.
o Correction to CMake scripts: removed no longer existing package
from dependency list.
+ models/radioactive_decay:
o Fixed memory leak in G4RadioactiveDecay destructor by deleting
decay table map.
+ models/theo_high_energy:
o Correction to CMake scripts: removed no longer existing package
from dependency list.
+ models/utils:
o Use G4Allocator for allocation of G4Fragment objects.
Should help reducing memory churn and improve CPU performance.
Removed counter of warnings; added exception warning in verbose mode.
+ stopping:
o G4MuMinusCapturePrecompound: fixed case of infinite loop for mu-
capture. Addressing problem report #1536.
+ util:
o Cleanup of automatic TLS data conversion in G4ReactionProduct,
G4HadSignalHandler and G4HadronicWhiteBoard.
o Interfaces:
----------
+ Explicitly set the LC_NUMERIC locale to "C" in G4Qt.
Addressing problem report #1487.
Fixed problem with resizing the QGLwidget when scene is opened from UI.
o Particles:
---------
+ G4ParticleDefinition::DumpTable() displays correct stability
information for a general ion as long as it is known to
G4NuclideTable. Addressing to bug report #1560.
+ Fixed properties for heavy anti-baryons G4AntiLambdab, G4AntiSigmabZero
and G4AntiLambdacPlus. Addressing problem report #1571.
+ Minor fix in G4ParticleTable::GetParticle() method.
o Physics Lists:
-------------
+ Correction to CMake scripts: removed no longer existing packages from
dependency list.
+ constructors/electromagnetic:
o G4EmStandardPhysics_option4, G4EmLivermorePhysics, G4EmPenelopePhysics:
use RangeFactor=0.01 to increase simulation accuracy.
Use G4UrbanMscModel for pions, kaons, protons instead of WentzelVI
to have more accurate ranges of low-energy hadrons (in particular,
protons).
o G4EmStandardPhysics_option4, G4EmLivermorePhysics, G4EmPenelopePhysics,
G4EmStandardPhysics_option3: use the same order of processes for e+-,
does not change any result but makes more easy comparing log files for
different EM physics options.
o G4EmStandardPhysics, G4EmStandardPhysics_option1,
G4EmStandardPhysics_option2: added Coulomb scattering process for
pions, kaons, proton, anti-proton in order to have more smooth
transition from EM to hadronic scattering.
o Fixed race condision issue in OpticalPhysics; also specify command
/optics_engine/setOpProcessUse not available for 'Idle' state.
o Avoid static G4Scintillation method invoked through a pointer.
+ constructors/ions:
o INCL++ was incorrectly used up to 48 GeV for deuteron, triton,
He3 and alpha. Changed the upper limit for ions to 18*3 GeV.
+ lists:
o Registered model to handle neutron capture above 20 MeV in in LBE list.
Addressing problem report #1562.
o Run:
---
+ Changed order of setting world volume pointer to the transportation
manager for worker thread to be the same as the master thread and the
sequential mode, i.e. prior to invoking ConstructSDandField().
Addressing problem report #1561.
+ Making sure worker threads re-build physics tables as well when the
master thread is requested to rebuild.
o Track:
-----
+ Corrected message from CheckIt() in G4VParticleChange and
G4ParticleChangeForDecay.
o Examples:
--------
+ Updated reference outputs.
+ advanced/amsEcal:
o Added protection against division by zero in RunAction.
Addressing problem report #1522.
+ advanced/ChargeExchangeMC:
o Fixed few compiler warnings for shadowed variables).
FTFP_BERT replaces deprecated QGSP_BERT.
+ advanced/hadrontherapy:
o Fixed missing inizialization of data in PassiveProtonBeamLine class.
+ advanced/nanobeam:
o Made code thread safe to overcome unsafe CLHEP matrix inversion
in RunAction.
+ advanced/xray_fluorescence:
o Fixed shadowed variables and compilation errors when AIDA is available.
+ extended/analysis/B1Con:
o Increased number of events of run1.mac.
+ extended/electromagnetic/TestEm4:
o Updated vis.mac macro and printout from run.
+ extended/electromagnetic/TestEm8:
o HistoManager: more accurate computation of mean energy deposition;
fixed output of rms of mean energy.
+ extended/exoticphysics/phonon:
o Fix in CMake script to copy data in build directory.
+ extended/field/field04:
o Replaced Update() method and commands with ReinitializeGeometry().
Clean volumes and solids stores in Construct().
o Updated gui.mac: allow for execution of vis.mac first to make the
command added in menus available. Corrected wireframe parameter.
o Avoid static method being invoked by a pointer. Fixed uninitialized
variables in F04GlobalField.
+ extended/field/field05:
o Corrected History.
+ extended/optical/LXe:
o Updated gui.mac: allow for execution of vis.mac first to make the
command added in menus available. Corrected wireframe parameter.
o Rearrange /optics_engine commands in LXe.in, according to what
is allowed through G4OpticalPhysics.
+ extended/optical/OpNovice:
o Fixed race condision issue in OpNovicePhysicsList.
Addressing problem report #1539.
Limit invokation of static method only from master/sequential.
o Updated gui.mac: allow for execution of vis.mac first to make the
command added in menus available. Corrected wireframe parameter.
+ extended/optical/wls:
o Updated gui.mac: allow for execution of vis.mac first to make the
command added in menus available. Corrected wireframe parameter.
+ extended/radioactivedecay/rdecay02:
o Fixed problem identified in boudary chack mode in exrdmHisto::AddRow().
o Fix in exrdmAnalysisManager::EndOfEvent().
----------------------------------------------------------------------------
Technical Notes
---------------
o This patch should be applied on top of release 10.0.
o Technical notes distributed for release 10.0 are also applicable and
valid for this patch.
The code and rebuilt binary libraries for release 10.0.p01 are available
through our "Download" Web page:
http://cern.ch/geant4/support/download.shtml
Please refer to the Geant4 User Documentation:
http://cern.ch/geant4/support/userdocuments.shtml
for further information about using Geant4.