| [1337] | 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
|
|---|