Warning, /geant4/CHANGELOG/ReleaseNotes4.3.2.txt is written in an unsupported language. File is not indexed.
0001
0002 Geant4 3.2 Release Notes
0003 ------------------------
0004
0005 29th June 2001
0006
0007 These are the main new features/fixes included in this release since
0008 release 3.1 (for the detailed list of fixes/additions, please refer to the
0009 related History files):
0010
0011 o Configuration:
0012 -------------
0013 - Added G4VIS_BUILD_ASCIITREE_DRIVER, G4VIS_USE_ASCIITREE and
0014 G4VIS_BUILD_GAGTREE_DRIVER, G4VIS_USE_GAGTREE variables to
0015 activate module for ascii/GAG hierachycal tree of geometry volumes.
0016 - Introduced changes for persistency: common.gmk is now split in three,
0017 one general, and one for specific for transient and persistent each.
0018 Dependencies now much better handled in persistency.
0019 - Removed G4_NO_CBRT flag from WIN32-VC.gmk, no more needed.
0020
0021 o Event:
0022 -----
0023 - Fixes to cowork with STL vector migration of 'geometry'.
0024
0025 o Electromagnetic Processes (Low-energy):
0026 --------------------------------------
0027 - Migration to STL vector. Removed references to RW wrappers.
0028 - Fixed pedantic warnings detected on Linux ANSI setup.
0029 - Added new process for polarised Compton scattering.
0030 - Bug fix in anti-proton ionisation.
0031
0032 o Electromagnetic Processes (Standard):
0033 ------------------------------------
0034 - Fixed pedantic warnings detected on Linux ANSI setup.
0035
0036 o General Processes, Parameterisation, Decay, Optical:
0037 ---------------------------------------------------
0038 - Fixed pedantic warnings detected on Linux ANSI setup.
0039
0040 o Geometry:
0041 --------
0042 - Migrated code to native STL vector. Removed all references to
0043 Rogue-Wave wrappers.
0044 - Management:
0045 o Adopt explicit initialisation for 'minExtents' and 'maxExtents'
0046 in G4SmartVoxelHeader::BuildNodes(...).
0047 - Boolean solids:
0048 o Fix in G4IntersectionSolid::DistanceToIn(p,v) resolving
0049 bug observed in problem report #153.
0050 - BREPS solids:
0051 o Fixes to allow -ansi compilation on Linux-g++, gcc-2.95-2 compiler:
0052 - G4Ray: changed usage of hypot(x,y) to sqrt(x*x+y*y).
0053 - G4Hyperbola: changed usage of atanh(x) to 0.5*log((1+x)/(1-x)).
0054 o G4ProjectedSurface: corrected initialisation of temporary
0055 G4Point3D objects, to use the correct CLHEP constructor.
0056 - CSG solids:
0057 o Added G4CSGDEBUG preprocessor flag to discriminate for debug
0058 verbosity specific to CSG solids. Included in G4Exception of
0059 DistanceToOut() for "point p is outside" in G4Box, G4Cons,
0060 G4Tubs.
0061 o G4Trap: fixed memory leak in CalculateExtent() for creation of
0062 vertices in case of finite rotation.
0063 - Magnetic Field:
0064 o Updated G4Mag_SpinEqRhs for correction to spin tracking.
0065 o Fixed G4FieldManager constructors to give default values to
0066 delta parameters.
0067 - STEP reader:
0068 - Fix for porting on Linux-g++ 2.95-2 -ansi: removed usage of
0069 strdup() in dirobj.cc; replaced with existing solution for
0070 __O3DB__.
0071 - Volumes:
0072 o G4AuxiliaryNavServices::CheckPointOnSurface(): added additional
0073 check to resolve endless looping of G4Navigator in case the track
0074 is passing through a point, edge or surface shared by two solids.
0075 Fixes problem report #185.
0076 o Fixes in G4ReplicaNavigation for bug reports #253 and #254:
0077 - in VoxelLocate(...), treated particular case of rotational
0078 symmetry with extent over 360 degrees.
0079 - in DistanceToOutPhi(...), fix to correctly handle cases where
0080 the starting point is on boundary of replicas and direction is
0081 along boundary.
0082 o Enabled the use of different field managers for different parts
0083 of the detector. This first implementation allows a volume that
0084 has a field manager to override the global one.
0085 - Note: All field managers currently must refer to fields
0086 in global coordinates.
0087 - New ability: setting of the delta accuracy parameters differently
0088 in different volumes (even while maintaining the same
0089 field as the global one).
0090 o Added new parameter to G4PropagatorInField 'fEpsilonMin' which is
0091 the minimal relative accuracy for MF driving.
0092
0093 o Global:
0094 ------
0095 - Added contructor to G4DataVector with additional argument
0096 for initialising values of collection.
0097 - Removed definition of cbrt() in globals.hh to allow ANSI compilation
0098 on Linux-g++ architecture with compiler gcc-2.95-2.
0099 - Defined 'str_size' as G4std::string::size_type and replaced usage of
0100 'size_t' in G4String and G4SubString. Fixes problem report #40.
0101
0102 o Graphics Representations:
0103 ------------------------
0104 - Fixes in HepPolyhedron:
0105 o Extended implementation to cover unforeseen earlier situation
0106 during preselection of faces without intersection.
0107 o Made GetNumberOfRotationSteps() static and public.
0108 o Added GetSurfaceArea() and GetVolume().
0109 - Fixed warnings about possible use of uninitialized variables.
0110 - Migrated to STL vector. Removed references to RW wrappers.
0111 - Bug fix in BooleanProcessor to address problem report #153.
0112
0113 o Hadronic Processes:
0114 ------------------
0115 - Migration to STL vector of the pre-compound and evaporation codes and
0116 removal of most warnings detected by Linux ANSI pedantic setup.
0117 - Management:
0118 o Fixes memory leak in G4InelasticInteraction: systematic search
0119 for leaks - energy scan 50MeV-10GeV.
0120 - High energy model:
0121 o Energy- OR Momentum- conservation, can be chosen by the user.
0122 o Added production of Evaporation particles.
0123 o Better description of experimental data, mainly in Strange
0124 Particle Production.
0125 o Cleared compilation warnings on Linux-g++.
0126 o Minor bug-fix in G4HEPionMinusInelastic.
0127 o Introduced temporary workaround in G4HEInelastic for high energy
0128 problem (number of particles created in one event larger than
0129 allocation).
0130 o Missing initialization of strangeness corrected, removing energy
0131 non-conservation in rare cases.
0132 - Generator models:
0133 o Upgrade of angular distributions and fission yields in pre-compound
0134 and evaporation models.
0135 o Defined local cbrt() in G4FermiMomentum, to allow porting
0136 on gcc-2.95-2 ANSI setup.
0137 o De-excitation: interface adjustment in G4ParaFissionModel.
0138 o Kinetic model: fixed exceptional condition for inelastic scattering
0139 off Hydrogene. No recoil required.
0140 - Radiative-decay model:
0141 o Fixes to cowork with STL vector migration of 'geometry'.
0142 - Low energy neutron transport model:
0143 o New code revision: requires new set of data, G4NDL3.0 or later.
0144 o Includes also an upgrade of the doppler broadening.
0145 Allows for running on 0K data, and doing exact doppler broadening
0146 on the fly (according to the temperature specified in G4Material),
0147 with good performance up to about 5000K.
0148 o Bug fix in G4NeutronHPInelasticCompFS to get the correct Q-value
0149 for Lithium (the bug was introduced in recent development).
0150 - Utilities:
0151 o Fixed memory leak in G4ReactionDynamics: systematic search for
0152 leaks - energy scan verification 50MeV-10GeV.
0153 o Fixed bug in nuclear reactions for light ions.
0154
0155 o Materials:
0156 ---------
0157 - Fixed pedantic warnings detected on Linux ANSI setup.
0158 - Fix to explicitly initialise to zero values of G4DataVector used
0159 to fill sandia-matrix.
0160
0161 o Particles:
0162 ---------
0163 - Added a0(980), f0(400-1200), f0(980).
0164 - Fixed bugs in G4ParticleDefinition::GetPDGIsospin().
0165 - Fixed element name in G4IonTable.
0166 - Fixed PDG encoding for excited Lambdas.
0167 - Added special treatment for Lamdas in G4PDGCodeChecker.
0168 - Fixed pedantic warnings detected on Linux ANSI setup.
0169
0170 o Persistency:
0171 -----------
0172 - Removed useless declaration of typedef G4ThreeVectorList.
0173 - Adapted to new config setup.
0174 - Changed usage of NULL to 0.
0175
0176 o Run and Intercoms:
0177 -----------------
0178 - Added binary mode for G4VUserPhysicsList::Retrieve/StorePhysicsTable().
0179 - Added G4VUserPhysicsList::RetrieveCutValues and related.
0180 - Added G4VUserPhysicsList::Set/ResetStoredInAscii() to switch on ascii
0181 mode for Retrieve/StorePhysicsTable().
0182 - Added 'setStoredInAscii' command in G4UserPhysicsList.
0183
0184 o Tracking & Track:
0185 ----------------
0186 - Migration to STL vector. Removed references to RW wrappers.
0187 - Moved G4TrackingMessenger* messenger to the class scope in
0188 G4TrackingManager.
0189 - Fixed problem of vertex information loss for suspended tracks.
0190 Fixes problem report #240.
0191 - Fix to G4SteppingManager to explicitly initialise values in STL
0192 collections members of the class.
0193
0194 o Transportation:
0195 --------------
0196 - Correction for 'spin-update' to G4Transportation: to avoid overwrite
0197 of the spin value for photons and other non-charged particles (and
0198 for charged particles in zero field).
0199
0200 o Visualization:
0201 -------------
0202 - Added two new commands:
0203 /vis/scene/add/text
0204 /vis/scene/add/axes
0205 - Improvements in /vis/scene/add/volume.
0206 - Added /vis/drawTree.
0207 - Introduced first version of G4ASCIITree to dump geometry hierarchy
0208 to standard output as ASCII stream.
0209 This requires two new environment variables:
0210 G4VIS_BUILD_ASCIITREE_DRIVER and G4VIS_USE_ASCIITREE.
0211 - Introduced first version of G4GAGTree to dump geometry hierarchy
0212 to GAG GUI system.
0213 This requires two new environment variables:
0214 G4VIS_BUILD_GAGTREE_DRIVER and G4VIS_USE_GAGTREE.
0215 - Migration to STL vector. Removed references to RW wrappers.
0216 - Removed OS dependence from the DAWN-network driver.
0217 * gethostname() removed
0218 * removed G4SocketConfig.hh and G4SocketMacro.hh.
0219 NOTE: now "setenv G4DAWN_HOST_NAME hostname" is mandatory to use
0220 the DAWN-network driver.
0221
0222 o G4toG4 Tool:
0223 -----------
0224 - Fix in GNUmakefile: G4MAKESHLIB replaced with G4LIB_BUILD_SHARED
0225 to allow building of shared library according to the new mechanism.
0226 - Fix in G3toG4BuildTree for a case of the placement a volume in
0227 cloned mothers. G3toG4BuildTree() has been split in two methods
0228 G3toG4BuildLVTree() and G3toG4BuildPVTree(), the first creating
0229 logical volumes only, the second performing placements afterwards.
0230 - Cleared pedantic warnings detected on Linux-g++ with ISO/ANSI setup.
0231
0232 o Examples:
0233 --------
0234 - exampleN03: updated visualization macros in visTutor:
0235 o Commands /vis/set/XXX's are replaced with /vis/viewer/set/XXX
0236 o Commands /vis/camera/XXX's are replaced with /vis/viewer/XXX
0237 except for /vis/camera/spin.
0238 o Added exN03Tree0.mac for ASCII DTREE and exN03Tree1.mac for
0239 GAG DTREE
0240 - Migrated novice/N05 to STL vector.
0241 - Added new interactive commands in extended/electromagnetic/TestEm5.
0242 - Updated examples:
0243 o extended/analysis/AnaEx01
0244 o extended/persistency/PersistentEx01 and PersistentEx02
0245 o advanced/xray_telescope
0246
0247 Notes:
0248
0249 o Geant4 3.2 is based on STL and can be installed with strict
0250 ISO/ANSI C++ compliant setup or not. See notes below.
0251
0252 The code and some binary libraries are available through our "Source Code"
0253 Web page:
0254 - see our Geant4 Home Page (http://cern.ch/geant4).
0255
0256 Please refer to the Geant4 User Documentation
0257 (http://cern.ch/geant4/G4UsersDocuments/Overview/html)
0258 for further information about using Geant4.
0259 Updates to the documentation for Geant4 3.2 are expected to be published as
0260 usual within three weeks from the release date.
0261
0262
0263 Contents
0264 --------
0265
0266 1. Supported and Tested Platforms
0267 2. ANAPHE and CLHEP
0268 3. The Standard Template Library (STL)
0269 4. Persistency
0270 5. Compiler Specific Problems
0271 6. Known Run-Time Problems
0272 7. Compilation Warnings
0273 8. Known Run-Time Warnings
0274
0275
0276 1. Supported and Tested Platforms
0277 ---------------------------------
0278
0279 o SUN Solaris 5.6/5.7, C++ 4.2 Patch 104631-04, C++ 5.2 Patch 109508-03.
0280 o HP 10.20, aCC C++ B3910B A.01.23
0281 o Linux 2.2.17-7, gcc C++ egcs-2.91.66 (egcs 1.1.2), gcc 2.95-2.
0282 This configuration was tested with the RedHat 6.1 distribution, but
0283 versions of Geant4 have also been compiled successfully on more recent
0284 RedHat, Debian and Suse distributions.
0285 o NT 4.0 with Service Pack 4 or Windows-2000 and Cygnus Tools b20 with:
0286 Visual C++ 6.0 Service Pack 2
0287
0288 Platforms also tested but giving rise to some problems - see below:
0289
0290 o DEC V4.0, cxx C++ V6.1-027.
0291
0292 Platforms configured but not tested and not supported:
0293 o SGI V6.5.5, CC 7.2.1 with ObjectSpace
0294 o AIX 4.3.2, xlC compiler with ObjectSpace
0295
0296
0297 2. ANAPHE and CLHEP
0298 -------------------
0299
0300 Geant4 3.2 requires the installation of CLHEP.
0301
0302 See CLHEP (http://cern.ch/clhep/INSTALLATION/clhep.html).
0303 Tests have been performed with CLHEP 1.6.0.0.
0304
0305 By default, the CLHEP installation scripts will activate ISO/ANSI C++ features
0306 if the compiler is capable. You need to explicitly disable CLHEP settings in
0307 case you wish non-ISO/ANSI setup on specific compilers.
0308
0309 Geant4 3.2 coworks with ANAPHE 3.6.0 and components included therein:
0310 Objectivity 6.1
0311 ObjectSpace 2.1
0312 HepODBMS 0.3.2.9
0313 CLHEP 1.6.0.0
0314
0315 For more information about ANAPHE, see: http://cern.ch/anaphe
0316
0317
0318 3. The Standard Template Library
0319 --------------------------------
0320
0321 The following versions of STL have been tested:
0322
0323 ObjectSpace STL on SUN (CC 4.2).
0324
0325 See ObjectSpace (http://www.objectspace.com).
0326
0327 "Native" STL on: Windows/NT, Linux, HP, DEC and SUN (CC 5.2).
0328
0329 This is selected at installation/compile time by the environment variable
0330 G4USE_OSPACE in the case of the former - see documentation.
0331
0332 NOTES:
0333 - Be aware that by default, the installation scripts will expect to use
0334 the native STL implementation. You must set the G4USE_OSPACE variable
0335 in the environment in order to select the ObjectSpace implementation.
0336
0337 - Platform specific setup:
0338 o DEC: ObjectSpace is required in non ISO/ANSI setup.
0339 Native STL is required for ISO/ANSI setup.
0340 o HP: Native STL is used (non ISO/ANSI setup).
0341 o SUN: ObjectSpace is required in non ISO/ANSI setup (CC 4.2).
0342 Native STL is required for ISO/ANSI setup (CC 5.2 only).
0343 o Linux: Native STL is required (non ISO/ANSI setup).
0344 o NT: Native STL and ISO/ANSI setup required.
0345
0346
0347 4. Persistency
0348 --------------
0349
0350 Platform
0351 --------
0352
0353 Persistency in Geant4 3.2 release is tested on the following
0354 platforms:
0355
0356 G4SYSTEM OS C++ compiler HepODBMS Objectivity
0357 --------- ----------- ------------ --------- -----------
0358 SUN-CC SunOS 5.6 CC 4.2 0.3.1.4 5.2.1
0359 SUN-CC5 SunOS 5.7 CC 5.2 0.3.2.10(*) 6.1.3 (*)
0360 Linux-g++ RedHat 6.1 egcs-2.91.66 0.3.1.4 5.2.1
0361 Linux-g++ RedHat 6.1 egcs-2.95.2 0.3.2.3 (#) 6.0 (#)
0362
0363 (*) HepODBMS header files must be prepared with "ooddlx -noline"
0364 option. See below.
0365 (#) Setup scripts for HepODBMS and Objectivity has been changed on
0366 CERN AFS. See g4odbms_setup[.sh.csh] in example PersistentEx01
0367 in 'geant4/examples/extended/persistency' for example setup scripts.
0368
0369 Known Problems
0370 --------------
0371
0372 - There are several warning messages on some platforms during the
0373 installation of the libraries and the compilation of the examples.
0374 Most of them can be safely ignored. It is annoying but hard to get
0375 rid of them due to various reasons.
0376
0377 - A warning message "Could not find naming root directory" appears at
0378 runtime of the persistency examples. It is generaged by
0379 HepDbApplication in HepODBMS. It can be ignored.
0380
0381 - On Solaris7 (SUN-CC5), persistent header files has to be generated by
0382 ooddlx with "-noline" option to work around a bug in C++ compiler.
0383 This workaround applies not only to Geant4 Persistency category but
0384 also to HepODBMS, and the user defined ddl files as well. This
0385 option removes the "#line" directive of the file name and the line
0386 number of the original .ddl file. As a consequences, C++ compiler
0387 no longer "tells" the correct file name and the line number of the
0388 .ddl file if compiler error occurs. Try to identify the compiler
0389 error by first looking into the header file generated by ooddlx,
0390 and then locate the source of the problem by looking into the .ddl
0391 file. A patch to the compiler is expected from SUN.
0392
0393
0394 5. Compiler Specific Problems
0395 -----------------------------
0396
0397 o DEC V4.0, cxx C++ V6.1-027.
0398
0399 - We have found cases of mis-compilation of min and max templates
0400 on DEC. We have traced those which cause serious malfunction
0401 but there is no guarantee that there are no other cases.
0402 Detailed inspection of assembler output suggests that this
0403 problem might not be confined to min and max. This has been
0404 reported to DEC/Compaq. We understand a new version 6.2 of the
0405 compiler is now available. However we cannot guarantee correct
0406 execution of Geant4 on DEC with the current version of the
0407 compiler.
0408 - A bug in cin.getline() system function causes an anomalous
0409 behavior when running in interactive-mode on DEC-cxx 6.1 in
0410 ISO/ANSI mode. We tested the bug has been fixed in more recent
0411 versions of the compiler.
0412
0413
0414 6. Known Run-Time Problems and Limitations
0415 ------------------------------------------
0416
0417 For a complete list of outstanding run-time problems and to submit any
0418 problem you may find running this version of Geant4, please refer to the
0419 Geant4 Problem Reporting System, available on the Web at this address:
0420
0421 http://cern.ch/geant4/problemreport
0422
0423
0424 7. Compilation Warnings
0425 -----------------------
0426
0427 There are compilation warnings on some platforms. We do not believe
0428 that any will lead to incorrect run-time behaviour, but we are working
0429 on reducing them.
0430
0431
0432 8. Known Run-Time Warnings
0433 --------------------------
0434
0435 The following messages can be written to error output while tracking. We
0436 believe none give rise to incorrect behaviour.
0437
0438 o G4PropagateInField: Warning: Particle is looping
0439 - tracking in field will be stopped.
0440 It has performed 10000 steps in Field while a maximum of 10000
0441 are allowed.