Back to home page

EIC code displayed by LXR

 
 

    


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.