forked from Geant4/geant4
-
Notifications
You must be signed in to change notification settings - Fork 2
/
Copy pathReleaseNotes4.1.0.txt
355 lines (279 loc) · 14.4 KB
/
ReleaseNotes4.1.0.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
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
Geant4 1.0 Release Notes
------------------------
7th December 1999
These are the main new features/fixes included in this release (for the
detailed list of fixes/additions, please refer to the related History files):
o Electromagnetic Processes:
- Multiple scattering: fine tuning and fixes for low energy e-;
inclusion of nuclear size effect for high energy (e+,e- > 100 MeV,
hadrons > 1 GeV);
- IonisationPlus: improved code and testing, for electrons and hadrons.
- LowEnergy: implemented hadron and ion ionisation; minor fixes in
photo electric process.
- Xrays: fixes in Cerenkov process.
- Created new examples in examples/extended/electromagnetic.
o Geometry:
- Field: minor fixes, more access to user parameters and clearer warnings;
- CSG/Booleans: fixes and more detailed unit tests;
- BREPS/STEP: fix to the NIST STEP reader for complex surfaces;
- Volumes: first implementation for visualization of voxels;
- Transportation: added protection for zero step in field.
o Globals:
- STLInterface:
major modifications for removing all references to Rogue Wave classes;
removed wrappers for hash dictionaries; reorganised classes/files.
- management:
introduced 'g4std' wrappers and keywords for migration to the ISO/ANSI
C++ standard and usage of the std namespace; fixed minor bug in
G4PhysicsVector.
o Hadronic Processes:
- new isotope-production models for neutron induced production and
corresponding design updates in hadronic/management;
- additional string model for proton induced reactions;
- design iteration on multi-fragmentation;
- memory usage optimization in the neutron transport.
NOTE: an updated set of neutron data files is now required.
o Particles:
- introduced dynamical electric charge in G4DynamicParticle to allow
change of charge for ions;
- introduced new G4IsotopeTable to manage excitation energy, lifetime,
and decay modes for isotopes;
- corrected identifier for isotopes Promethium and Prasceodym;
- corrected spelling for file-names and keyword "barion" to "baryon".
o Persistency:
- added association of HitsCollection and PrimaryVertex to G4PEvent;
added persistency of Boolean solid types; fixes for ODMG compliance;
added G4PPRimaryParticle;
- added new examples in examples/extended/persistency.
o Visualization:
- introduced visualization of *components* of a boolean solid.
Visualisation of the *result* of the boolean operation will be
available in a future release;
- introduced new commands (use help <command name> for more information):
/vis/scene/add/logicalVolume
/vis/viewer/update
- improvements to FukuiRenderer (DAWN):
made destination directory of g4.prim and g4.eps customizable
with the environmental variable G4DAWNFILE_DEST_DIR; auto
incrementation of output file names is now supported;
- removed ray tracing, pending re-implementation.
Notes:
o Geant4 1.0 is based on STL. All direct references to Rogue Wave have
been removed from the code. See notes below.
o The code released in Geant4 1.0 is not ISO/ANSI C++ compliant.
A future minor release or patch will be provided that
will include the ability to choose between using namespaces in
ISO/ANSI mode or using traditional style "includes".
This code and some binary libraries are available through our "Source
Code" Web page:
- see our Geant4 Home Page (http://cern.ch/geant4).
Please refer to the Geant4 User Documentation
(http://cern.ch/geant4/G4UsersDocuments/Overview/html)
for further information about using Geant4.
Updates to the documentation for Geant4 1.0 are still in preparation and are
expected to be published within three weeks.
Contents
--------
1. Supported and Tested Platforms
2. CLHEP 1.4
3. The Standard Template Library (STL)
4. Persistency
5. Compiler Specific Problems
6. Known Run-Time Problems
7. Compilation Warnings
8. Known Run-Time Warnings
1. Supported and Tested Platforms
---------------------------------
o SUN Solaris 5.6, C++ 4.2 patch 104631-04.
o HP 10.20, aCC C++ B3910B A.01.18 or A.01.21
o Linux 2.0.35, gcc C++ egcs-2.91.66 (egcs 1.1.2).
This configuration was tested in the RedHat 5.1 distribution, but
versions of Geant4 have also been compiled successfully on RedHat 6.1,
Debian and Suse distributions.
Platforms also tested but giving rise to some problems - see below:
o DEC V4.0, cxx C++ V6.1-027.
o NT 4.0 with Service Pack 4 and Cygnus Tools b20 with:
Visual C++ 6.0 Service Pack 2
Platforms configured but not tested and not supported:
o SGI V6.5.5, CC 7.2.1 with ObjectSpace
o AIX 4.3.2, xlC compiler with ObjectSpace
2. CLHEP 1.4
------------
Geant4 1.0 requires the installation of CLHEP 1.4.
See CLHEP 1.4 (http://cern.ch/clhep/INSTALLATION/clhep.html).
The following platform specific instructions apply:
DEC: Do *not* use the compiler option "-std strict_ansi".
NT: After configure, edit the file config/CLHEP-x86-cygnus-win32
and comment out "#define HEP-USE-STD 1".
3. The Standard Template Library
--------------------------------
The following versions of STL have been tested:
ObjectSpace STL on
DEC, HP, NT and SUN.
See ObjectSpace (http://www.objectspace.com).
"Native" STL on: Linux, HP.
This is selected at installation/compile time by the environment variable
G4USE_OSPACE in the case of the former - see documentation.
NOTES:
- Be aware that by default, the installation scripts will expect to use
the native STL implementation. You must set the G4USE_OSPACE variable
in the environment in order to select the ObjectSpace implementation.
- Platform specific setup:
o DEC: ObjectSpace is required.
o HP: either ObjectSpace or native STL can be used. In order to use
native STL you must also set the environment variable
G4NO_STD_NAMESPACE.
o SUN: ObjectSpace is required.
o Linux: native STL is required.
o NT: ObjectSpace is required.
Support for native STL and ISO/ANSI installation will be added
soon (future patch or minor release).
- A future minor release or patch will allow ISO/ANSI compliant installations.
Their characteristics will be:
o DEC: Native STL will be used
o HP: The setup for native STL will trigger by default the ISO/ANSI
installation (set G4NO_STD_NAMESPACE in the environment to avoid it.)
o SUN: Support for CC 5.0 compiler and native STL (ISO/ANSI installation)
o NT: Support for native STL and ISO/ANSI installation
The modifications to support these installations will be tested soon.
They will be made available in a patch or minor release.
Geant4 1.0 is the first release requiring the Standard Template Library.
In the interest of stability, a significant part of the code still makes use
of the "STL Interface" wrapper classes. For these the emphasis has remained
on correct behaviour, rather than performance. The size of libraries and
executables can appear considerably larger than the previous Rogue-Wave based
versions.
4. Persistency
--------------
- Platforms
Persistency in Geant4 1.0 release has been tested on the following
platforms/software versions:
G4SYSTEM OS C++ compiler HepODBMS Objectivity
--------- ----------- ------------ --------- -----------
SUN-CC SunOS 5.6 CC 4.2 0.3.1.0 5.2
HP-aCC HP-UX 10.20 aCC A.01.18 0.3.0.1 5.1.2
Linux-g++ Linux RH5.1 egcs 1.1.2 0.3.0.1 5.1.2
A patch to run persistency examples on DEC-cxx will be released
later, pending a fix to HepODBMS library.
- Known Problems
1) The following warning messages appear on some platforms during the
installation of the libraries and the compilation of the example
files. The message comes from the parser of the Objectivity
preprocessor. It can be ignored.
-------------------------------------------------------------------------
"/opt/SUNWspro/SC4.2/include/CC/generic.h", line 29: warning: omission of
explicit type is nonstandard ("int" assumed)
extern genericerror(int, char*);
^
"/opt/SUNWspro/SC4.2/include/CC/iostream.h", line 781: warning: integer
conversion resulted in a change of sign
unsafe_istream& wignore(int=1, wchar_t=WEOF);
^
"/opt/SUNWspro/SC4.2/include/CC/iostream.h", line 962: warning: integer
conversion resulted in a change of sign
istream& wignore(int=1, wchar_t=WEOF);
-------------------------------------------------------------------------
2) The following warning messages appear during the installation of the
library. This is due to a design choice of the persitent object
and it can be safely ignored.
-------------------------------------------------------------------------
warning: persistent-capable class member type is a problem
The type of base class vector<G4VPhysicalVolume * > is a problem
The type of member vector<G4VPhysicalVolume * >::start_ is pointer
The type of member vector<G4VPhysicalVolume * >::finish_ is pointer
The type of member vector<G4VPhysicalVolume * >::end_of_storage_
is pointer
The type of member vector<G4VPhysicalVolume * >::alloc_ is a
problem
The type of member allocator<G4VPhysicalVolume * >::impl_ is
pointer
G4VPhysVolRefVArray transPhysVolPtrs;
^
-------------------------------------------------------------------------
3) The following warning messages appears during the installation of the
libraries and the compilation of the example files. Dependency
file is used to solve the GNUmake dependencies inside the Geant4
categories and it can be safely ignored.
-------------------------------------------------------------------------
In file included from /afs/cern.ch/sw/lhcxx/specific/@sys/HepODBMS/0.3.1.0/
include/HepODBMS/odbms/HepODBMS.h:75,
from include/G4PersistentTypes.hh:21,
from include/G4VPersistentSubMan.hh:34,
from src/G4VPersistentSubMan.cc:16:
/afs/cern.ch/sw/lhcxx/specific/sun/Objectivity/5.2/include/oo.h:57:
warning: No include path in which to find generic.h
-------------------------------------------------------------------------
4) The following error messages appear at the end of the library
installation, and it can be safely ignored.
-------------------------------------------------------------------------
installing schema header files ...
cp: cannot access /afs/cern.ch/sw/geant4/stt/ref+/AIX-xlC/debug/persistency/
STL/tmp/SUN-CC/G4pglobal/*.hh
schema header file does not exist, so ignore the error message...
-------------------------------------------------------------------------
5) The following warning message appears at the runtime of the persistency
examples, which is generated by HepDbApplication in HepODBMS.
It can be ignored.
-------------------------------------------------------------------------
Opening federated database OO_FD_BOOT.
WARNING: g4example: Could not find naming root directory:
Naming will be disabled.
-------------------------------------------------------------------------
5. Compiler Specific Problems
-----------------------------
o DEC V4.0, cxx C++ V6.1-027.
We have found cases of mis-compilation of min and max templates
on DEC. We have traced those which cause serious malfunction
but there is no guarantee that there are no other cases.
Detailed inspection of assembler output suggests that this
problem might not be confined to min and max. This has been
reported to DEC/Compaq. We understand a new version 6.2 of the
compiler is now available. However we cannot guarantee correct
execution of Geant4 on DEC with the current version of the
compiler.
o NT
- Due to limitations of the VC++ optimiser, testing was done using
the debuggable version only.
- g3tog4 has not been ported to NT.
- During the making of dependency files during compilation there
are repeated warnings ("Strstrea.h not found") - this is an
artifact of using g++ for this purpose.
- Ignore linker warnings: "conflicts with use of other libs".
- Ignore linker errors: "unresolved external symbol
__imp__MessageBoxA@16".
6. Known Run-Time Problems
--------------------------
o Reading STEP files on DEC with optimised libraries causes a Memory
fault - but see notes on DEC above.
o In rare cases heavy ions appear not to be properly stopped and killed
in tracking, therefore Geant4 sticks making many small steps. This
behaviour has been observed on SUN and is under investigation.
o On WindowsNT, a problem can occur reading the data files associated with
the environment variable G4LEVELGAMMADATA. (Usually the value
for this variable is $G4INSTALL/geant4/data/PhotonEvaporation .)
A correction that resolves this anomalous behaviour will be issued
soon, in a patch.
7. Compilation Warnings
-----------------------
There are compilation warnings on some platforms. We do not believe
that any will lead to incorrect run-time behaviour, but we are working
on reducing them.
8. Known Run-Time Warnings
--------------------------
The following messages can be written to error output while tracking. We
believe none give rise to incorrect behaviour.
o G4PropagatorInField::LocateIntersectionPoint: Warning: Integration
inaccuracy requires an adjustment in the step's endpoint Two
mid-points are further apart than their curve length difference:
Dist = xxx curve length = yyy
o Warning in G4Navigator::ComputeStep: The Step's starting point has
moved...
o G4PropagateInField: Warning: Particle is looping
- tracking in field will be stopped.
It has performed 10000 steps in Field while a maximum of 10000
are allowed.
For very high energy muons (ex. 1 TeV) warnings of this kind might be
generated:
o G4ParticleChange::CheckIt : the Momentum Change is not unit vector !!
Difference: 1e-09
G4ParticleChange::CheckIt