Back to home page

EIC code displayed by LXR

 
 

    


Warning, /geant4/CHANGELOG/ReleaseNotes4.2.0.txt is written in an unsupported language. File is not indexed.

0001 
0002                  Geant4 2.0 Release Notes
0003                  ------------------------
0004 
0005                                                      30th June 2000
0006 
0007 These are the main new features/fixes included in this release (for the
0008 detailed list of fixes/additions, please refer to the related History files):
0009 
0010   o Electromagnetic Processes:
0011     -------------------------
0012     - internal reorganisation of the EnergyLoss classes.
0013       Introduced one level of abstraction through the G4VEnergyLoss class
0014       for muons, electrons and hadrons.
0015     - introduced new functionalities for the energy loss fluctuation model, 
0016       and bug fixes.  
0017     - removed *Plus* process classes and merged to standard processes:
0018       optimized generation of delta rays near the geometrical boudaries is
0019       now performed as the default.
0020     - bug fixed in the multiple scattering.
0021     - bugs fixed in G4eIonisation and G4hIonisation.
0022     - absolute min gamma energy fixed to 10 keV in G4eBremsstrahlung.
0023     - bugs fixed in G4MuIonisation and G4MuPairProduction.
0024       Updated Physics Reference Manual for muon processes. 
0025     - Added new models of Transition Radiation radiators
0026       in processes/parametrisation.
0027 
0028   o Electromagnetic Processes, Low-energy :
0029     -------------------------------------
0030     - fixes in G4LowEnergyBremsstrahlung for continuous energy loss.
0031     - modifications for integration of cross sections, corrections of
0032       fluorescence transition probabilities to take into account
0033       non-radiative transitions.
0034 
0035   o General Processes, Parameterisation, Decay :
0036     ------------------------------------------
0037     - introduced new set of models for X-ray transition radiation
0038       parameterisation.
0039     - implemented full migration to STL for processes/parameterisation
0040       and processes/management modules.
0041     - added process registration into ProcessTable in copy constructor.
0042     - fixed registration of "shortlived" particles for G4Decay.
0043 
0044   o Geometry:
0045     --------
0046   - magneticfield:
0047     o corrected helical steppers.
0048     o fix in G4LineSection to prevent divisions by 0 and sqrt(<0).
0049     o modified method for finding new trial step in G4ChordFinder. 
0050   - management:
0051     o design change in G4VSolid for visualization utilities: changed pure
0052       virtual method G4VSolid::GetExtent() to virtual. Added default
0053       implementation based on CalculateExtent().
0054   - BREPS solids:
0055     o Decoupled BREPS module from the STEP Reader;
0056     o Memory leak fixes and some code cleanup.
0057   - CSG and specific solids:
0058     o created new module solids/specific and moved therein all non-CSG
0059       shapes previously placed in solids/CSG.
0060     o Added new shape in solids/specific: G4EllipticalTube.
0061     o Fixed bug in G4PolyhedraSide::Normal(...). This fixes a problem
0062       observed in G4Polyhedra::SurfaceNormal. Fixes in G4Hype.
0063     o Fixed typo in method name in G4Polyhedra.: changed GetNumSIde() to
0064       GetNumSide().
0065     o Added more diagnostics in G4Cons, G4Sphere and G4Torus in function
0066       DistanceToOut(p,v,...).
0067     o Fix in DistanceToIn(p,v) for G4Box and G4Trd to return zero
0068       distance in case computed value is less than 0.5*kCarTolerance.
0069     o Added safety against call from outside in DistanceToOut(p)
0070     o Fix to G4Tubs::DistanceToOut(p,v,...) in computation of xi, yi
0071       for (sphi>=-0.5*kCarTolerance).
0072     o Added more diagnostics in case of invalid enum for DistanceToOut.
0073     o Added new alternative functions SolveBiQuadratic/CubicNew in G4Torus.
0074   - solids/Boolean:
0075     o Implemented CreatePolyhedron method.
0076     o G4DisplacedSolid: reversed implementation of GetFrameRotation and
0077       GetObjectRotation, removing inappropriate invertion.
0078     o G4DisplacedSolid::GetConstituentMovedSolid() made const.
0079     o Fixed bug in G4SubtractionSolid::DistanceToOut(p,v,...).
0080       validNorm flag was uncorrectly set to true.
0081   - STEP:
0082     o Upgraded NIST STEP Reader to SCL (STEP Class Library) 3.2;
0083     o Implemented porting on supported platforms/compilers and
0084       ISO-ANSI C++ compliance.
0085   - STEP Interface module:
0086     o Implemented porting to support the new NIST STEP Reader;
0087     o Reduced inter-class dependencies by reorganising include
0088       statements.
0089     o Improved overall diagnostics and fixed internal memory-leaks;
0090     o Added protections for NULL pointers generated by missing geometry
0091       creators.
0092     o Implemented temporary solution for association of placements
0093       with manifolded solids for advanced BREP shape representations.
0094   - volumes:
0095     o introduced kCarTolerance for check over taken step length and 
0096       TruePathLength in G4PropagatorInField::ComputeStep().
0097     o fixes in G4ReplicaNavigation::ComputeStep() for zero-step length
0098       loops observed when point is on boundary.
0099 
0100   o Globals and Config:
0101     ------------------
0102     - Added class G4PhysicsLnVector implementing a physics vector with
0103       natural logarithmic scale for energy/momentum bins.
0104     - Added string identifier to G4UserLimits.
0105     - Defined G4complex type as complex type of doubles.
0106     - Fixes to STLInterface wrappers: fixed initialization of base STL
0107       vector in default constructor of vector collections.
0108     - Changed implementation of G4Integrator to a template class.
0109     - Config: implemented modular setup. Now system specific configurations
0110       are grouped in separated files $G4SYSTEM.gmk and placed in the new 
0111       directory config/sys.
0112 
0113   o Graphics Representations:
0114     ------------------------
0115     - Added HepPolyhedron class and re-implemented G4Polyhedron using this
0116       new class (which will become part of CLHEP).
0117     - Added boolean processor for boolean operations of HepPolyhedron
0118       objects.
0119 
0120   o Hadronic Processes:
0121     ------------------
0122     - management: allowing ion interactions in G4HadronInelasticProcess.
0123     - cross_sections: added new classes for ion-ion reactions, and for ion
0124        reactions on Hydrogen.
0125     - processes: added new process for ion induced reactions.
0126     - models/isotope_production: added model for proton induced isotope
0127        production, validity range is the proton spallation energy range
0128        (to use this, an update of the G4NDL library is required).
0129     - models/neutron_hp: enabled production of residual nuclei for some
0130        inelastic final states.
0131     - models/generator/de_excitation: design iteration to allow re-use of
0132        root-finding algorithms.
0133     - models/generator/quark_gluon_string: added gamma annihilation
0134        cross-sections and anti-nucleaon-nucleon annihilation. Bug fixes
0135        in AntiSigma SU(12) wafe-function. Extended G4SPBaryon.
0136     - models/generator/string_fragmentation: extended
0137        G4VLongitudinalStringDecay to allow string excitation dependent
0138        parameters.
0139     - models/generator/util: bug fixes and added functionality in
0140        G4KineticTrack.
0141     - models/radiative_decay: added model for simulating the decay of
0142        radio-active nuclei and isomeric states. Validity range is the
0143        range of materials available from ENSDF as of May 2000. To use
0144        this model a data set is provided in geant4/data/RadiativeDecay
0145        and the environment variable G4RADIOACTIVEDATA must be set.
0146     - fixes for memory leaks observed at event loop.
0147 
0148     NOTE: the consistent data sets for photon evaporation and radio-active
0149           decay (derived from the same version of the ENSDF data) are
0150           provided from Web in the source download area. A previous version
0151           of photon evaporation data is also provided.
0152 
0153   o Interfaces:
0154     ----------
0155     - Introduced new G4UITerminal (G4UItcsh) with UNIX-like shell
0156       (currently fully tested only on Linux-g++ and SUN-CC systems).
0157     
0158   o Particles:
0159     ---------
0160     - Full migration to STL performed.
0161     - Removed G4RhoPlus, G4RhoZero, and G4RhoMinus classes.
0162       Added "rho0" in G4ShortLivedConstructor.
0163     - Fixes in G4IsotopeTable and G4NucleiProperties classes.
0164     - Introduced ParticleSubType property in ParticleDefinition.
0165     - Added GetAtomicNumber() and GetAtomicMass() methods to G4VIon,
0166       G4Proton, and G4Neutron.
0167     - Added G4VDecayChannel::GetAngularMomentum() method.
0168 
0169   o Tracking & Track:
0170     ----------------
0171     - Added thePolarizationChange in G4ParticleChangeForTransportation.
0172     - Added cashing mechanism of pointer to material in G4StepPoint.
0173       to extract material information from parametrized volumes.
0174     - GetTouchable/SetTouchable methods have been changed to handle
0175       "const" pointers.
0176     - Introduced G4VUserTrackInformation class and associated to G4Track.
0177     - Fixed problem in deleting touchable in G4SteppingManager.
0178 
0179   o Visualization:
0180     -------------
0181     - Introduced first implementation of the G4RayTracer. With G4RayTracer
0182       all solids types supported in Geant4 can be visualised.
0183     - Added commands /vis/viewer/update, /vis/viewer/reset.
0184     - Added "compound" commands: /vis/open, /vis/drawVolume.
0185     - Added ability to visualise boolean solids through G4Polyhedron objects.
0186     - Added G4LogicalVolumeModel::DescribeSolid(), which explicitly adds
0187       components of composite solids as white forced-wireframe objects.
0188     - OPACS:
0189       o G4GoSceneHandler: correct polyhedron wire-frame in order to remove
0190         some edges.
0191       o G4WoViewer: changed camera name checking so that a viewer created
0192         by the GUI (Wo) could be hooked.
0193       o G4GoSceneHandler: changed circle rendering.
0194     - Bug fix in G4PhysicalVolumeModel for replicas.
0195 
0196 
0197 Notes: 
0198 
0199   o  Geant4 2.0 is based on STL and can be installed with strict
0200      ISO/ANSI C++ compliant setup or not. See notes below.
0201 
0202 The code and some binary libraries are available through our "Source
0203 Code" Web page:
0204 - see our Geant4 Home Page (http://cern.ch/geant4).
0205 
0206 Please refer to the Geant4 User Documentation
0207 (http://cern.ch/geant4/G4UsersDocuments/Overview/html)
0208 for further information about using Geant4.
0209 Updates to the documentation for Geant4 2.0 are expected to be published as
0210 usual within three weeks from the release date.
0211 
0212 
0213 Contents
0214 --------
0215 
0216   1. Supported and Tested Platforms
0217   2. LHC++ and CLHEP 1.5
0218   3. The Standard Template Library (STL)
0219   4. Persistency
0220   5. Compiler Specific Problems
0221   6. Known Run-Time Problems
0222   7. Compilation Warnings
0223   8. Known Run-Time Warnings
0224 
0225 
0226 1. Supported and Tested Platforms
0227 ---------------------------------
0228 
0229   o SUN Solaris 5.6, C++ 4.2 patch 104631-04.
0230   o HP 10.20, aCC C++ B3910B A.01.23
0231   o Linux 2.2.12-20, gcc C++ egcs-2.91.66 (egcs 1.1.2).
0232       This configuration was tested with the RedHat 6.1 distribution, but
0233       versions of Geant4 have also been compiled successfully on Debian
0234       and Suse distributions.
0235 
0236 Platforms also tested but giving rise to some problems - see below:
0237 
0238   o DEC V4.0, cxx C++ V6.1-027.
0239   o SUN Solaris 5.6, C++ 5.0 patches 107357-07, 107311-09.
0240 
0241 Platforms configured but not yet tested (a patch will follow, if needed):
0242 
0243   o NT 4.0 with Service Pack 4 and Cygnus Tools b20 with:
0244       Visual C++ 6.0 Service Pack 2
0245 
0246 Platforms configured but not tested and not supported:
0247   o SGI V6.5.5, CC 7.2.1 with ObjectSpace
0248   o AIX 4.3.2, xlC compiler with ObjectSpace
0249 
0250 
0251 2. LHC++ and CLHEP 1.5
0252 ----------------------
0253 
0254 Geant4 2.0 requires the installation of CLHEP 1.5. 
0255 
0256 See CLHEP 1.5 (http://cern.ch/clhep/INSTALLATION/clhep.html).
0257 
0258 By default, the CLHEP installation scripts will activate ISO/ANSI C++ features
0259 if the compiler is capable. You need to explicitly disable CLHEP settings in
0260 case you wish non-ISO/ANSI setup on those compilers (for example, DEC).
0261 Note that the installation of the "Hist" package in CLHEP for histogramming
0262 is now disabled by default. If you wish to install CLHEP with the "Hist"
0263 package, you need to edit the CLHEP installation scripts and add the
0264 corresponding entry.
0265 
0266 Geant4 2.0 coworks with LHC++ 2.0.0 and components included therein:
0267   Objectivity 5.2.1 
0268   ObjectSpace 2.1
0269   HepODBMS 0.3.1.3 
0270   CLHEP 1.5.0.0
0271  
0272 3. The Standard Template Library
0273 --------------------------------
0274 
0275 The following versions of STL have been tested:
0276 
0277    ObjectSpace STL on
0278           DEC, HP and SUN.
0279 
0280           See ObjectSpace (http://www.objectspace.com).
0281 
0282    "Native" STL on: Linux, HP, DEC and SUN.
0283 
0284 This is selected at installation/compile time by the environment variable
0285 G4USE_OSPACE in the case of the former - see documentation.
0286 
0287 NOTES:
0288 - Be aware that by default, the installation scripts will expect to use
0289   the native STL implementation. You must set the G4USE_OSPACE variable
0290   in the environment in order to select the ObjectSpace implementation.
0291 
0292 - Platform specific setup:
0293   o DEC:   ObjectSpace is required in non ISO/ANSI setup.
0294            Native STL is required for ISO/ANSI setup.
0295   o HP:    either ObjectSpace or native STL can be used (non ISO/ANSI setup).
0296   o SUN:   ObjectSpace is required in non ISO/ANSI setup (CC 4.2).
0297            Native STL is required for ISO/ANSI setup (CC 5.0 only).
0298   o Linux: native STL is required (non ISO/ANSI setup).
0299   o NT:    Native STL and ISO/ANSI setup required.
0300 
0301 In the interest of stability, a significant part of the code in Geant4 2.0
0302 still makes use of the "STL Interface" wrapper classes, used for allowing the
0303 migration from Rogue Wave Tools.h++ container library.  For these the emphasis
0304 has remained on correct behaviour, rather than performance.
0305 
0306 
0307 4. Persistency
0308 --------------
0309 
0310 - Platforms
0311 
0312   Persistency in Geant4 2.0 release has been tested on the following
0313   platforms/software versions:
0314 
0315   G4SYSTEM       OS        C++ compiler   HepODBMS   Objectivity
0316   ---------  -----------   ------------   ---------  -----------
0317    SUN-CC    SunOS 5.6      CC 4.2         0.3.1.4      5.2.1
0318   Linux-g++  Linux  RH6.1   egcs 1.1.2     0.3.1.1      5.2.1
0319 
0320 - Known Problems
0321 
0322   There are many warning messages on some platforms during the
0323   installation of the libraries and the compilation of the examples.
0324   Most of them can be safely ignored.  It is annoying but hard to get
0325   rid of them due to various reasons.
0326   
0327   For the detail of the warning messages, please refer to the release
0328   note of Geant4 1.0.
0329 
0330 
0331 5. Compiler Specific Problems
0332 -----------------------------
0333 
0334   o DEC V4.0, cxx C++ V6.1-027.
0335 
0336     - We have found cases of mis-compilation of min and max templates
0337       on DEC.  We have traced those which cause serious malfunction
0338       but there is no guarantee that there are no other cases.
0339       Detailed inspection of assembler output suggests that this
0340       problem might not be confined to min and max.  This has been
0341       reported to DEC/Compaq.  We understand a new version 6.2 of the
0342       compiler is now available.  However we cannot guarantee correct
0343       execution of Geant4 on DEC with the current version of the
0344       compiler.
0345     - A bug in cin.getline() system function causes an anomalous
0346       behavior when running in interactive-mode on DEC-cxx 6.1 in
0347       ISO/ANSI mode. We tested the bug has been fixed in more recent
0348       versions of the compiler.
0349       
0350   o SUN Solaris 5.6, C++ 5.0 patches 107357-07, 107311-09.
0351 
0352       Due to a compiler bug, some code in Geant4 cannot be compiled in
0353       optimised mode, patches are available from SUN (107357-09, 107311-10)
0354       which are claimed to fix this problem, we have not been able to test
0355       them yet. Tests have been performed only by using the debuggable
0356       version of the libraries.
0357 
0358 
0359 6. Known Run-Time Problems and Limitations
0360 ------------------------------------------
0361 
0362 - In the "high energy" hadronic model, a problem of energy non conservation
0363   has been observed. A fix for it is currently under test and will be
0364   available soon in a public patch.
0365 - In multiple scattering, the nuclear size correction maybe not well adapted
0366   for electrons. A fix will come soon.
0367 - The parametrisation of the total cross section for electron bremsstrahlung
0368   will be reviewed in order to allow generation of gamma below 10 keV.
0369 
0370 
0371 7. Compilation Warnings
0372 -----------------------
0373 
0374 There are compilation warnings on some platforms.  We do not believe
0375 that any will lead to incorrect run-time behaviour, but we are working
0376 on reducing them.
0377 
0378 
0379 8. Known Run-Time Warnings
0380 --------------------------
0381 
0382 The following messages can be written to error output while tracking.  We
0383 believe none give rise to incorrect behaviour.
0384 
0385   o G4PropagateInField: Warning: Particle is looping 
0386     -  tracking in field will be stopped. 
0387        It has performed 10000 steps in Field  while a maximum of 10000
0388        are allowed.