1 | |
---|
2 | Geant4 1.1 Release Notes |
---|
3 | ------------------------ |
---|
4 | |
---|
5 | 10th March 2000 |
---|
6 | |
---|
7 | The following is a summary of the main fixes collected since release 1.0 and |
---|
8 | included in Geant4 1.1 (for the detailed list of fixes/updates, please refer |
---|
9 | to the related History files): |
---|
10 | |
---|
11 | o Configuration scripts |
---|
12 | - introduced G4NO_OPTIMISE flag for compilation with no optimisation level, |
---|
13 | G4DEBUG if defined takes precedence. |
---|
14 | - added G4DEBUG and G4OPTIMISE to the CPPFLAGS list. |
---|
15 | - fixed bug in EXTRALIBS. |
---|
16 | - fixed linking order for compound libraries. |
---|
17 | |
---|
18 | o Electromagnetic Processes: |
---|
19 | - low-energy processes: |
---|
20 | + updated anti-proton energy losses to provide simulation down to 1 keV. |
---|
21 | + minor bug fixes to G4ionLowEnergyIonisation. |
---|
22 | + fixes to electron and photon low energy processes. |
---|
23 | |
---|
24 | o Events: |
---|
25 | - introduced corrections for trajectories of suspended tracks. |
---|
26 | |
---|
27 | o Geometry: |
---|
28 | - syncronixed HEAD version of files after ISO-C++ migration. |
---|
29 | - CSG: |
---|
30 | fixed bug in DistanceToIn(p,v) for G4Trap. |
---|
31 | - volumes: |
---|
32 | added protection to GetSlice() in G4DrawVoxels. |
---|
33 | |
---|
34 | o Globals: |
---|
35 | - added check on definition of CLHEP_MAX_MIN_DEFINED flag. |
---|
36 | - introduced constructor for 3vectors in G4BestUnits. |
---|
37 | - fixed truncation problem in G4Poisson. |
---|
38 | - STLinterface: |
---|
39 | + enforced bound-checking for [] access operators. |
---|
40 | + fixed bugs in G4String::toUpper() and G4String::toLower(). |
---|
41 | + fixed bounds overflow error in G4RWTPtrSortedVector::find(). |
---|
42 | |
---|
43 | o Graphics Representations |
---|
44 | - fix for spheres with small dtheta. |
---|
45 | |
---|
46 | o Hadronic Processes: |
---|
47 | - fixed the 'no data' problem observed in the neutron transport tests. |
---|
48 | |
---|
49 | o Persistency: |
---|
50 | - fixed typo in G4PersistentGeomMan class. |
---|
51 | |
---|
52 | o Tracking & Track: |
---|
53 | - added protection for NULL pointers in G4SteppingManager. |
---|
54 | - fixed bug related to track weight in G4VParticleChange. |
---|
55 | |
---|
56 | o Visualization: |
---|
57 | - added fix for ISO-ANSI C++ in VRML driver. |
---|
58 | - introduced commands /vis/viewer/show and /vis/viewer/refresh |
---|
59 | - introduced general handling of displaced solids. |
---|
60 | - added some protections in case of no viewer and no voxelisation. |
---|
61 | |
---|
62 | o G3-to-G4 tool: |
---|
63 | - introduced fixes to G3VolTable::GetVTE() and G3Division::CreateSolid(). |
---|
64 | - avoid placement of top-level logical volume in G3toG4BuildTree. |
---|
65 | - removed obsolete files. |
---|
66 | |
---|
67 | o Examples: |
---|
68 | - introduced stepping verbosity (N02, N03). |
---|
69 | - added 10 TeV mu- in macro exampleN04.EMtest.in. |
---|
70 | - extended/electromagnetic examples: bug fixes and introduced low-energy |
---|
71 | test (TestEm6) |
---|
72 | - introduced 'large N' input macros. |
---|
73 | - updated reference outputs. |
---|
74 | |
---|
75 | Notes: |
---|
76 | |
---|
77 | o Geant4 1.1 is based on STL and the code has been upgraded to be |
---|
78 | ISO-ANSI C++ compliant. Code in this release include the ability to |
---|
79 | choose between using the 'std' namespace in ISO/ANSI mode or using |
---|
80 | traditional style programming in the global namespace (exceptions |
---|
81 | still apply concerning mathematical functions - <math.h> in global |
---|
82 | namespace is still in use, or standard C I/O functions). |
---|
83 | |
---|
84 | The source code and some binary libraries are available through our "Source |
---|
85 | Code" Web page: |
---|
86 | - see our Geant4 Home Page (http://cern.ch/geant4). |
---|
87 | |
---|
88 | Please refer to the Geant4 User Documentation |
---|
89 | (http://cern.ch/geant4/G4UsersDocuments/Overview/html) |
---|
90 | for further information about using Geant4. |
---|
91 | |
---|
92 | |
---|
93 | Contents |
---|
94 | -------- |
---|
95 | |
---|
96 | 1. Supported and Tested Platforms |
---|
97 | 2. CLHEP 1.4 |
---|
98 | 3. The Standard Template Library (STL) |
---|
99 | 4. Persistency |
---|
100 | 5. Compiler Specific Problems |
---|
101 | 6. Known Run-Time Problems |
---|
102 | 7. Compilation Warnings |
---|
103 | 8. Known Run-Time Warnings |
---|
104 | |
---|
105 | |
---|
106 | 1. Supported and Tested Platforms |
---|
107 | --------------------------------- |
---|
108 | |
---|
109 | o SUN Solaris 5.6, C++ 4.2 patch 104631-04 |
---|
110 | o HP 10.20, aCC C++ B3910B A.01.18 or A.01.21 |
---|
111 | o Linux 2.2.5-22, gcc C++ egcs-2.91.66 (egcs 1.1.2). |
---|
112 | This configuration was tested in the RedHat 6.1 distribution, but |
---|
113 | versions of Geant4 have also been compiled successfully on, Debian |
---|
114 | and Suse distributions. |
---|
115 | |
---|
116 | Platforms/compilers also tested but giving rise to some problems - see below: |
---|
117 | |
---|
118 | o DEC V4.0, cxx C++ V6.1-027. |
---|
119 | o SUN Solaris 5.6, C++ 5.0 patches 107357-07, 107311-09 |
---|
120 | o NT 4.0 with Service Pack 4 and Cygnus Tools b20 with: |
---|
121 | Visual C++ 6.0 Service Pack 2 |
---|
122 | |
---|
123 | Platforms configured but not tested and not supported: |
---|
124 | o SGI V6.5.5, CC 7.2.1 with ObjectSpace |
---|
125 | o AIX 4.3.2, xlC compiler with ObjectSpace |
---|
126 | |
---|
127 | 2. CLHEP 1.4 |
---|
128 | ------------ |
---|
129 | |
---|
130 | Geant4 1.0 requires the installation of CLHEP 1.4. |
---|
131 | |
---|
132 | See CLHEP 1.4 (http://cern.ch/clhep/INSTALLATION/clhep.html). |
---|
133 | |
---|
134 | Be aware, for the platforms listed below, the standard CLHEP installation |
---|
135 | will use ISO-ANSI setup: |
---|
136 | |
---|
137 | DEC: if using the compiler option "-std strict_ansi", it is required to |
---|
138 | compile Geant4 in ISO-ANSI mode and 'native' STL. |
---|
139 | |
---|
140 | NT: if CLHEP has been installed with the line: |
---|
141 | #define HEP-USE-STD 1 |
---|
142 | uncommented in file config/CLHEP-x86-cygnus-win32, it is required to |
---|
143 | compile Geant4 in ISO-ANSI mode and 'native' STL. |
---|
144 | |
---|
145 | |
---|
146 | |
---|
147 | 3. The Standard Template Library |
---|
148 | -------------------------------- |
---|
149 | |
---|
150 | The following versions of STL have been tested: |
---|
151 | |
---|
152 | "Native" STL on: Linux, HP, DEC, SUN, NT. |
---|
153 | |
---|
154 | ObjectSpace STL on |
---|
155 | DEC, HP, NT and SUN. |
---|
156 | |
---|
157 | See ObjectSpace (http://www.objectspace.com). |
---|
158 | |
---|
159 | This is selected at installation/compile time by the environment variable |
---|
160 | G4USE_OSPACE in the case of the latter - see documentation. |
---|
161 | |
---|
162 | NOTES: |
---|
163 | - Be aware that by default, the installation scripts will expect to use |
---|
164 | the native STL implementation. You must set the G4USE_OSPACE variable |
---|
165 | in the environment in order to select the ObjectSpace implementation. |
---|
166 | |
---|
167 | - Platforms specific setup: |
---|
168 | o DEC: - Default: 'native' STL and ISO-ANSI setup. |
---|
169 | - G4USE_OSPACE set: selects ObjectSpace STL (required) |
---|
170 | and no ISO-ANSI setup. |
---|
171 | o HP: - Default: 'native' STL and ISO-ANSI setup. |
---|
172 | - G4USE_OSPACE set: selects ObjectSpace STL (required) |
---|
173 | and no ISO-ANSI setup. |
---|
174 | - G4NO_STD_NAMESPACE set: either ObjectSpace or 'native' STL |
---|
175 | can be used. |
---|
176 | o SUN: - Default: 'native' STL and ISO-ANSI setup. |
---|
177 | This setup requires the CC compiler version 5.0. |
---|
178 | - G4USE_OSPACE set: selects ObjectSpace STL (required) |
---|
179 | and no ISO-ANSI setup. |
---|
180 | o Linux: native STL is required. No ISO-ANSI setup. |
---|
181 | o NT: - Default: 'native' STL and ISO-ANSI setup. |
---|
182 | - G4USE_OSPACE set: selects ObjectSpace STL (required) |
---|
183 | and no ISO-ANSI setup. |
---|
184 | |
---|
185 | Geant4 1.1 requires the Standard Template Library. |
---|
186 | In the interest of stability, a significant part of the code still makes use |
---|
187 | of the "STL Interface" wrapper classes. For these the emphasis has remained |
---|
188 | on correct behaviour, rather than performance. |
---|
189 | |
---|
190 | |
---|
191 | 4. Persistency |
---|
192 | -------------- |
---|
193 | |
---|
194 | - See release notes for Geant4 1.0. |
---|
195 | |
---|
196 | |
---|
197 | 5. Compiler Specific Problems |
---|
198 | ----------------------------- |
---|
199 | |
---|
200 | o DEC V4.0, cxx C++ V6.1-027. |
---|
201 | |
---|
202 | We have found cases of mis-compilation of min and max templates |
---|
203 | on DEC. We have traced those which cause serious malfunction |
---|
204 | but there is no guarantee that there are no other cases. |
---|
205 | Detailed inspection of assembler output suggests that this |
---|
206 | problem might not be confined to min and max. This has been |
---|
207 | reported to DEC/Compaq. We understand a new version 6.2 of the |
---|
208 | compiler is now available. However we cannot guarantee correct |
---|
209 | execution of Geant4 on DEC with the current version of the |
---|
210 | compiler. |
---|
211 | |
---|
212 | o SUN Solaris 5.6, CC 5.0 patches 107357-07, 107311-09 |
---|
213 | |
---|
214 | The listed patches are required in order to fix a bug in the |
---|
215 | system Standard I/O libraries for streams. |
---|
216 | Part of the Geant4 code can be compiled only in debug mode (G4DEBUG |
---|
217 | set). A bug in the compiler optimiser causes the compiler to run in |
---|
218 | an infinite loop during compilation. Also, the inclusion of debug |
---|
219 | symbols causes the generation of abnormally huge binary objects. |
---|
220 | A bug report is being filed to SUN Support. |
---|
221 | |
---|
222 | o NT |
---|
223 | |
---|
224 | - Due to limitations of the VC++ optimiser, testing was done using |
---|
225 | the debuggable version only. |
---|
226 | - g3tog4 has not been ported to NT. |
---|
227 | - During the making of dependency files during compilation there |
---|
228 | are repeated warnings ("Strstrea.h not found") - this is an |
---|
229 | artifact of using g++ for this purpose. |
---|
230 | - Ignore linker warnings: "conflicts with use of other libs". |
---|
231 | - Ignore linker errors: "unresolved external symbol |
---|
232 | __imp__MessageBoxA@16". |
---|
233 | |
---|
234 | 6. Known Run-Time Problems |
---|
235 | -------------------------- |
---|
236 | |
---|
237 | o Reading STEP files on DEC with optimised libraries causes a Memory |
---|
238 | fault - but see notes on DEC above. |
---|
239 | o In rare cases heavy ions appear not to be properly stopped and killed |
---|
240 | in tracking, therefore Geant4 sticks making many small steps. This |
---|
241 | behaviour has been observed on SUN and is under investigation. |
---|
242 | o On WindowsNT and DEC (ISO-ANSI setup), a problem can occur reading the data |
---|
243 | files associated with the environment variable $NeutronHPCrossSections. |
---|
244 | The problem is being investigated. |
---|
245 | |
---|
246 | |
---|
247 | 7. Compilation Warnings |
---|
248 | ----------------------- |
---|
249 | |
---|
250 | There are compilation warnings on some platforms. We do not believe |
---|
251 | that any will lead to incorrect run-time behaviour, however a parallel |
---|
252 | Q/A activity is on going to reduce them. |
---|
253 | |
---|
254 | |
---|
255 | 8. Known Run-Time Warnings |
---|
256 | -------------------------- |
---|
257 | |
---|
258 | The following messages can be written to error output while tracking. We |
---|
259 | believe none give rise to incorrect behaviour. |
---|
260 | |
---|
261 | o G4PropagatorInField::LocateIntersectionPoint: Warning: Integration |
---|
262 | inaccuracy requires an adjustment in the step's endpoint Two |
---|
263 | mid-points are further apart than their curve length difference: |
---|
264 | Dist = xxx curve length = yyy |
---|
265 | o Warning in G4Navigator::ComputeStep: The Step's starting point has |
---|
266 | moved... |
---|
267 | o G4PropagateInField: Warning: Particle is looping |
---|
268 | - tracking in field will be stopped. |
---|
269 | It has performed 10000 steps in Field while a maximum of 10000 |
---|
270 | are allowed. |
---|
271 | |
---|
272 | For very high energy muons (ex. 1 TeV) warnings of this kind might be |
---|
273 | generated: |
---|
274 | |
---|
275 | o G4ParticleChange::CheckIt : the Momentum Change is not unit vector !! |
---|
276 | Difference: 1e-09 |
---|
277 | G4ParticleChange::CheckIt |
---|