[Geant4] P.S. Geant4 release 9.3.6 available

Frederick Jones fwj at triumf.ca
Thu Jul 8 15:20:02 PDT 2010

Sorry, RELEASE NOTES now attached!

Geant4 release 9.3.6, with compiled libraries that can be used
on Scientific Linux 4 or 5, is now available for TRIUMF Linux systems
on the path:


With the phase-out of IBM00 I am now providing only a 64-bit version
of Geant4.  It was built on TRCOMP01 (SL4) but will also work on
TRCOMP02 (SL5) and should work on other 64-bit SL4 and SL5 systems
that mount /triumfcs.

To build your Geant4 application using this release, copy the
file /triumfcs/linux/geant4/9.3.6/G4SETUP to your working directory,
source it, and run "make".

The libraries are compiled with OPENGL and OpenInventor visualization

Release notes are attached.  This release contains many bug fixes
as well as a number of new developments.

Source-code browser:



-------------- next part --------------


Some of the development/fixes included since the last development tag are:

 o New G4GenericTrap shape, a new solid representing an arbitrary trapezoid
   with up to 8 vertices standing on two parallel planes perpendicular to the
   Z axis; added as supported 'arb8' solid in GDML reader and writer.
 o New ionisation models for low density media (G4BraggIonGasModel,
   G4BetheBlochIonGasModel) and new model G4ICRU73QOModel for anti-particles.
 o New data set G4NEUTRONXS 1.0 for evaluated neutron cross section data
   on natural composition of elements.
 o Archived old 'leading_particle' hadronic module.
 o Moved QGSP_FTFP_BERT list among supported lists; removed previously blocked
   lists (FTFP_EMV, QGSC_EFLOW, QGSP_EMX); remove most obsolete lists (FTFC,
   QGSP_QE). Introduced new constructor for all builders with verbosity
 o Improved Qt UI commands and visualization in through OpenGL.
 o Introduced new 'i_mode' trajectory drawing and obsoleted old method
   for visualization.

---------- Reference-tag 'Release Notes' -----------

Summarised, the list of changes is the following:

config                                           config-V09-03-05
- Configure (Configure-V09-03-04)
  o Fixed selection of XERCESCROOT path for Windows.
  o Added quoting of uname in Qt.U to prevent Power Mac problems.
  o Added removal of quotes from make version string to handle non-English
    language systems.
  o Added new data set G4NEUTRONXS (Evaluated neutron cross section data,
    version 1.0).
  o Updated data set G4EMLOW to version 6.13.
- Removed 'leading_particle' hadronic module from include paths list.
- Increased stack size on WIN32-VC setup (i.e. 8MB as on Linux), adding
  the option to LDFLAGS.

digits_hits/utils                                detutils-V09-03-00
- Added missing virtual destructor to G4VScoringMesh and removed unnecessary
  virtual qualifiers to G4ScoringBox.

environments                                     envs-V09-03-01
- G4Py:
  o Revised usage of MultipleScattering classes to make use of new particle
    based processes.
  o Fixed bug in wrapping of G4GDMLParser.
  o Updated run-manager and physics-lists.
- Momo:
  o Revised obsolete trajectory drawing.

event                                            event-V09-03-03
- Removed obsolete CLHEP_HepMC option from G4EventManager class.

geometry/solids/specific                         geom-specific-V09-03-08
- Introducing new G4GenericTrap shape, a new solid representing an arbitrary
  trapezoid with up to 8 vertices standing on two parallel planes perpendicular
  to the Z axis.
- Fixed deletion of internal arrays in CreatePolyhedron() for G4Polycone
  and G4Polyhedra.

global                                           global-V09-03-08
- More safe numerical computation of A13() and logA() methods in G4Pow.
- Restored G4PVDataVector vectors in G4PhysicsVector owned by value instead
  of pointers, as originally was in released code.
- Changed date for release 9.4-beta.

graphics_reps                                    greps-V09-03-02
- G4VVisManager:
  o Added methods Draw(const G4VDigi&) and FilterDigi(const G4VDigi&).
    Removed temporary flag 'IsDefaultDrawTrajectory'.
  o Added method DispatchToModel(const G4VTrajectory&), i.e., without 'i_mode',
    to distinguish usage and in preparation for i_mode migration.
- G4VGraphicsScene: added method AddCompound (const G4VDigi&).

interfaces                                       interfaces-V09-03-11
- G4UIExective: changed order for session type; GUI session is prioritized.
- G4VBasicShell: implemented improvements for command completion.
- G4Qt: added a link to G4UIQt.
- G4UIQt: added tab widgets for visualization. Added new command in help tree
  for immediate update of the tree. Fixed warning in standard-output during
  viewer creation and fixed flush problem. Fixed recursive repaint problem.

particles                                        particles-V09-03-05
- Added anti-nuclei as short-lived particles.
- G4MuonRadiativeDecayChannelWithSpin: corrected sign error.

persistency/ascii                                ascii-V09-03-00
- Added missing virtual destructor to G4tgbDetectorBuilder.

persistency/gdml                                 gdml-V09-03-03
- Added G4GenericTrap among the set of supported solids in both reader and
  writer, treating as 'arb8' GDML type.

physics_lists                                    phys-lists-V09-03-16
- Moved QGSP_FTFP_BERT list to supported (was experimental).
- Removed previously blocked lists (FTFP_EMV, QGSC_EFLOW, QGSP_EMX).
- Remove obsolete lists, except QGSP (now blocked) and QGSC_CHIPS;
- Introduced new constructor for all builders with verbosity argument.
  Existing constructors are kept, but updated default arguments to avoid
  ambigous signatures. Changed physics-lists to use the new constructor.
  Introduced new constructor for G4NeutronTrackingCut.
- Replaced G4HadronQElasticPhysics with G4QElasticPhysics and G4IonPhysics
  with G4QIonPhysics in the CHIPS physics-list 
  Bug fix for the virtual destructor in G4QElasticPhysics & G4QIonPhysics.
  Particles are restricted to SU(3) hadrons (no pi0 & eta) in G4QElasticPhysics.
  Fix in G4QPhotoNuclearPhysics to reset particles iterator.
- G4EmStandardPhysics_option2: added G4WentzelVIMscModel and 'RangeFactor' set
  to 0.04 for e+-.
- G4EmLivermorePhysics, G4EmPenelopePhysics, G4EmDNAPhysics,
  G4EmLivermorePolarizedPhysics: added G4GoudsmitSaundersonMscModel for e+-;
  added 1 MeV upper limit for the Livermore ionisation model (was 1 GeV).
- Revised QGSP_FTFP_BERT and FTFP_BERT lists to use CHIPS G4QInelastic for
  all "misc" particles, including anti-proton, anti-neutron  and hyperons,
  and use interface to CHIPS cross-sections G4QHadronInelasticDataSet for
  kaons. Required changes to respective HadronPhysics* classes.     
- G4FTFPNeutronBuilder, G4FTFPPiKBuilder, G4FTFPProtonBuilder,
  G4QGSPNeutronBuilder, G4QGSPPiKBuilder, G4QGSPProtonBuilder, G4QGSBuilder:
  added deletion of G4ExcitationHandler, G4QGSMFragmentation;
  HadronPhysicsQGSP_BERT, HadronPhysicsFTFP_BERT, HadronPhysicsQGSP_FTFP_BERT:
  added deletion of neutron builder.

processes/electromagnetic/highenergy             emhighenergy-V09-03-01
- New model G4ICRU73NoDeltaModel, derived from G4ICRU73QOModel.

processes/electromagnetic/lowenergy              emlowen-V09-03-35
- Added analytical (ecpssr) and empirical (Paul and Orlic) models for the
  calculation of hadronic shell ionisation CS.
- Modified initialisation of e- Emfietzoglou excitation model in
  G4DNAEmfietzoglouExcitationModel and in G4DNAMillerGreenExcitationModel,
  fixing memory leaks.
- Fix in G4AugerTransition to cure crash on Windows.
- Added missing virtual destructors where necessary.
- Corrected return value case in method GetPhotoElectronDirection() in
  Addressing problem report #1120.

processes/electromagnetic/muons                  emmuons-V09-03-01
- G4MuPairProductionModel: added sampling recoil of a primary particle
- G4MuIonisation: use G4ICRU73QOModel for mu- for E< 0.2 MeV.

processes/electromagnetic/polarisation           empolar-V09-03-00
- Fix in G4ePolarizedIonisation to use default vector size of
  G4VEnergyLossProcess and avoid size mismatch in G4LossTableBuilder.

processes/electromagnetic/standard               emstand-V09-03-17
- G4BraggIonGasModel, G4BetheBlochIonGasModel: new ionisation models for low
  density media.
- New model G4ICRU73QOModel for anti-particles
- G4hIonisation: use G4ICRU73QOModel for negatively charged particles below
  2 MeV and for anti-particles.
- G4BraggModel: above 2 MeV use ICRU'49 parameterisation for all atoms.
- G4WentzelOKandVIxSection: new class to compute cross sections and sample
  scattering angle.
- G4WentzelVIModel, G4eCoulombScatteringModel, G4CoulombScatteringModel: use
  new class G4WentzelOKandVIxSection.
- G4WentzelVIModel: optimized method of step limitation.
- G4WentzelVIModel, G4eCoulombScatteringModel: added momentum dependent limit
  of scattering angle between single and multiple scattering which allows to
  use G4WentzelVIModel with optical model of hadron scattering.
- G4GoudsmitSaundersonMscModel, G4GoudsmitSaundersonTable: optimized code to
  improve speed by addition extra class members.
- G4UrbanMscModel93: removed randomisation of step limit for the first step in
  any volume in the case of usage of safety.
- Removed obsolete models: G4UrbanMscModel, G4UrbanMscModel2, G4UrbanMscModel71,
  G4MultipleScattering, G4ComptonScattering52, G4PolarizedComptonScattering.
- G4PAIModel, G4PAIPhotonModel: added printout for the model initialisation.

processes/electromagnetic/utils                  emutils-V09-03-16
- G4VEmModel: added method ChargeSquareRatio() to access current charge of
  an ion; use this method in G4VEnergyLossProcess.
- G4EmConfigurator: fix for case of more than one model added per a process.
- G4EmCorrections: moved G4AtomicShell header into source.

processes/electromagnetic/xrays                  xrays-V09-03-01
- Included scintillation rise time to G4Scintillation.
- Use std namespace for mathematical functions explicitly.

processes/hadronic                               hadr-V09-03-00
- Removed obsolete code for 'leading_particle' model.
- cross_sections (hadr-cross-V09-03-06)
  o G4NeutronElasticXS, G4NeutronInelasticXS, G4NeutronCaptureXS: added
    path to new data set through environment variable G4NEUTRONXSDATA.
  o Implemented integer Z and A transition to G4CrossSectionDataStore.
  o G4UPiNuclearCrossSection: fixed memory leak at destruction.
  o Updated G4GlauberGribovCrossSection for anti-protons.
- management (hadr-man-V09-03-02)
  o G4HadronicProcess: added methods CheckEnergyMomentumConservation(),
    SetEpReportLevel(), SetEnergyMomentumCheckLevels() and
    GetEnergyMomentumCheckLevels(), which implement energy/momentum 
    checking. Some code cleanup.
  o New G4HadronicEPTestMessenger class to provide energy/momentum test 
    commands available in UI.
- models/cascade (hadr-casc-V09-03-43)
  o Improved angular distributions for 2-body final states of pi-nucleon,
    nucleon-nucleon, kaon-nucleon anf hyperon-nucleon scattering.
  o Energy/momentum checks added which remove large energy non-conservation
  o CPU speed improvements from the removal of unnecessary class instantiations.
  o Code re-organization to permit more speed improvements in the future.
- models/chiral_inv_phase_space (hadr-chips-V09-03-06)
  + body:
    o Corrected Titanium and Zirconium isotopes in G4QIsotope.
    o Added decay of Chipolino in the G4QEnvironment, when A_env=0.
    o Bug fix in G4QPDGCode and G4QEnvironment for Omega and Sigma;
      when mass is small for Lambda andSigma+, use Xi0,p.
  + cross_sections:
    o Bug fix following G4NucleiProperties warning for A=0, Z=0.
    o Bug fix in G4QNeutronNuclearCrossSection for Ba isotopes.
    o Bug fix for K0 in G4QKaonMinusElasticCrossSection::GetExchangeT().
  + fragmentation:
    o Corrected treatment of vacuum.
  + processes:
    o Correction in G4QElastic for K0 elastic cross-sections.
    o nn is decayed in G4QLowEnergy; Omega- is included in G4QElastic;
      N neutrons (A=N, Z=0) are decayed in G4QLowEnergy.
    o Bug-fix in G4QLowEnergy: pions as secondaries.
    o Bug-fix in K0 elastic & Ion-Ion Elastic.
- models/coherent_elastic (hadr-cohe-V09-03-02)
  o G4UHadronElasticProcess: fixed CHIPS warning for Cu, due to wrong
    isotope sected; addressing problem report from ALICE.
- models/de_excitation (hadr-deex-V09-03-18)
  o G4Evaporation: fixed problem of isotope production for high Z fragments.
    A problem introduced in the recent revision of the model.
- models/incl (hadr-incl-V09-03-01)
  o Added missing virtual destructor to base classes where necessary.
- models/isotope_production (hadr-isopro-V09-03-00)
  o Cleanup of documents and added History file.
- models/management (hadr-modman-V09-03-02)
  o G4HadronicInteraction: added two methods, GetEnergyMomentumCheckLevels()
    and SetEnergyMomentumCheckLevels() in order to implement checking
    of energy/momentum conservation.
  o G4VPreCompoundModel: moved constructor and destructor to source.
- models/parton_string/diffraction (hadr-string-diff-V09-03-01)
  o Added missing virtual destructor to G4DiffractiveHHScatterer.
- models/parton_string/hadronization (had-hadronization-V09-03-00)
  o Improved Lund string fragmentation.
  o Fixed inconsistency between LightFragmentationTest and Lund fragmentation.
  o Fixed problems of energy non-conservation in FTF.
- models/pre_equilibrium (hadr-pre-V09-03-06)
  o G4PreCompoundModel: moved constructor and destructor to source.
  o G4LowEIonFragmentation: cleanup comment.
- models/radioactive_decay (radioactive_decay-V09-03-00)
  o G4RadioactiveDecay:
    + In LoadDecayTable() create a decay table for isomers not included in RDM
      database and assume they all under go IT decay.
    + After DoDecay() check if there is any secondary produced. Kill the track
      if not to prevent infinite loop.
    + Insert a special treatment for K-40 beta decay; applied SetICM(),
      SetARM() and SetHLThreshold() to a decay channel.
      Addresses problem report #1068.  
    + Make sure the propertime is positive; negative case occures when the
      isomer is not in RDM database and its f-l is set to -1 by default.  
    + Corrected typo in declaration.
  o G4NuclearDecayChannel: added initialisation to all three constructors. 
  o G4RadioactiveDecay, G4NuclearDecayChannel:
    + Limit the shell index to < 7, as required by the ARM. Changed to use
      BreakUp() rather than BreakItUp() so to limit to one transition per step
      when ICM is applied. Addresses problem report #1001.
    + Added private member data 'applyICM', 'applyARM' and 'halflifethresold'
      with their modifiers.
  o G4RadioactiveDecayMessenger: added the UI commands for SetICM, SETARM
    and SetHLThreshold.

processes/optical                                op-V09-03-03
- Modified G4OpBoundaryProcess to call ProposeLocalEnergyDeposit() every time
  a photon is in 'fStopAndKill' state because of NoRINDEX. This will trigger
  scoring when a photon encounters a volume not defined as an optical medium.

run                                              run-V09-03-01
- Corrected printing of number of events processed on run abortion.
- Fixed definition of path for Windows in G4RunManager for random seeds
  directory: use '\' instead of '/' and suitable system command.
- Use "const G4String&" as arguments and return value wherever applicable
  in G4RunManager and G4RunManagerKernel.

tracking                                         tracking-V09-03-04
- G4VTrajectory, G4Trajectory, G4SmoothTrajectory: added deprecation message,
  being printed via G4Exception only once, and only if a user invokes with a
  non-zero value of 'i_mode' in DrawTrajectory().

visualization                                    vis-V09-03-08
- management:
  o Added generic drivers: OGL, OGLI, OGLS, OI.
  o Added /vis/scene/add/digis and /vis/filtering/digi commands.
  o Added AddCompound(const G4VDigi&).to drivers
  o Introduced DispatchToModel without i_mode.
  o Moved i-mode deprecation warnings to G4VTrajectory.
  o Improved /vis/viewer/rebuild.
  o Improved action after "/vis/geometry/..." commands.
  o Restore previous viewer after /vis/drawTree.
  o Changed order of flags to follow G4UIExecutive.
  o G4VisManager, G4VisExecutive: introduced optional verbosity string
    argument in constructor; made 'fVerbosity' and GetVerbosity() static.
  o Added virtual destructors to fix compilation warnings.
- modeling:
  o Added G4DigiModel and G4DigiFilterFactories.
  o Added default colours to G4TrajectoryDrawByParticleID.
  o Replace polyhedra with solids for sections and cutaways.
  o Trap use of i_mode and print warning.
- HepRep (vis-HepRep-V09-03-03):
  o Added command 'renderCylAsPolygon'.
  o Added protection against multiple repaint call, and protection against
    resizeGl with bad values.
- gMocren:
  o Removed dependency on G4VisManager. Improved printout.
- OpenGL:
  o Some improvements with auto rotation mode.
  o G4OpenGLQtViewer: better inclusion of new tabs in UI part.
    Many improvements to OpenGL Qt.
  o Speed improvements for polymarkers (e.g., trajectories).
  o Use generic section and cutaway algorithm.
- OpenInventor:
  o Added protection against repeated initialisation.
- RayTracer:
  o Added DrawTrajectory(); ready for i_mode migration.
  o Added missing virtual destructor to G4VRTScanner, G4RTXScanner and
    G4RTSimpleScanner classes.

- New data set G4NEUTRONXS for Evaluated neutron cross section data
  on natural composition of elements.

examples                                         examples-V09-03-06
- Updated reference outputs.
- Updated visualization setups for trajectory drawing in most examples
  (air_shower-V09-03-00, amsEcal-V09-03-01, ccal-V09-03-00,
   gammaraytel-V09-03-00, lAr_calorimeter-V09-03-00, medical_linac-V09-03-00,
   microdosimetry-V09-03-01, purtag-V09-03-01, radioprotection-V09-03-01,
   DMX-V09-03-01, XrayFluo-V09-03-00, xraytel-V09-03-00, exampleA01-V09-03-00,
   ReverseMC01-V09-03-00, testem1-V09-03-02, testem2-V09-03-04,
   testem3-V09-03-04, testem4-V09-03-02, testem5-V09-03-02, testem6-V09-03-03,
   testem9-V09-03-03, testem10-V09-03-01, testem11-V09-03-03,
   testem12-V09-03-03, testem13-V09-03-03, testem14-V09-03-03,
   testem15-V09-03-02, testem16-V09-03-02, testem17-V09-03-02,
   testem18-V09-03-02, exgps-V09-03-01, exHepMC-V09-03-02, p6decayer-V09-03-01,
   fieldex01-V09-03-03, fieldex02-V09-03-03, fieldex03-V09-03-03,
   g3tog4Tests-V09-03-01, exhadr00-V09-03-03, electronScattering-V09-03-06,
   exampleES2-V09-03-00, fano-V09-03-03, fano2-V09-03-03, gtherapy-V09-03-01,
   ExDiane-V09-03-00, MPI-V09-03-01, ParN02-V09-03-00, ParN04-V09-03-01,
   exgflash-V09-03-00, G02-V09-03-00, exampleP01-V09-03-00,
   exampleP02-V09-03-00, exampleP03-V09-03-01, expol01-V09-03-01,
   exrdm-V09-03-02, exampleRE01-V09-03-01, exampleRE02-V09-03-01,
   exampleN02-V09-03-01, exampleN03-V09-03-02, exampleN04-V09-03-01,
   exampleN05-V09-03-01, exampleN06-V09-03-00, exampleN07-V09-03-01.
- advanced/brachytherapy (brachy-V09-03-01)
- advanced/hadrontherapy (hadrontherapy-V09-03-04)
  o Use G4UIExecutive and some minor revisions.
- advanced/human_phantom (human_phantom-V09-03-02)
  o Migrated physics-lists.
- advanced/microbeam (microbeam-V09-03-06)
  o Added option "ionGasModel" to the physics-list.
- advanced/Rich (Rich-V09-03-02)
  o Use G4UIExecutive.
- extended/electromagnetic/TestEm7 (testem7-V09-03-04)
  o Added extra EM option "ionGasModels", which disables effective ion
    charge and enables use of new models G4BraggIonGasModel, 
  o Added extra macro ionGasC12.mac.
  o Fixed setup for histograms through JAIDA.
- extended/electromagnetic/TestEm8 (testem8-V09-03-03)
  o PhysicsList, Em8DetectorConstruction: renamed "VertexDetector" with
  o Added cut per region in TestEm8.in.
- extended/eventgenerator/particleGun (particleGunExample-V09-03-01)
  o New example demonstrating three different ways of usage of G4ParticleGun
    shooting primary particles in different cases.
- extended/exoticphysics/monopole (monopole-V09-03-05)
  o Substituted QGSP list by QGSP_BERT.
  o Added new classes for monopole G4MonopoleEquation, G4MonopoleFieldSetup
    and G4MonopoleTransportation; contribution by B.Bozsogi.
- extended/field/field04 (fieldex04-V09-03-01)
  o Modified F04Trajectory class to compile without warnings by implementing
    a DrawTrajectory() method.
- extended/hadronic/Hadr01 (exhadr01-V09-03-06)
  o Cleanup of physics-list according to last update to physics_list library.
- extended/medical/DICOM (DICOM-V09-03-03)
  o Added function to read nested items (defined and undefined)
  o Removed dependencies on CONQUEST
  o DICOM handler can now read whichever DICOM file (PT,CT,DR,CR,US,MR... )
- extended/optical/LXe (LXe-V09-03-00)
- extended/optical/wls (WLS-V09-03-02)
  o Modified Trajectory class to compile without warnings by implementing
    a DrawTrajectory() method.
- examples/extended/persistency/gdml/G01 (G01-V09-03-03)
  o Added G4GenericTrap to the solids.gdml sample.
- examples/extended/persistency/gdml/G03 (G03-V09-03-03)
  o Corrected selection of G4UItcsh in main(), to fix problem on Windows.
- examples/novice/N04 (exampleN04-V09-03-01)
  o Replaced QGSP list with QGSP_BERT.

tests                                            tests-V09-03-06
- Updated reference outputs and tools.
- Archived test32 on leading_particle biasing/MARS.
- test01 (test01-V09-03-00)
  o Removed inclusion of obsolete G4MultipleScattering class.
  o Added printout of total imprinted volumes for assemblies.
- test10 (test10-V09-03-00)
  o Added G4GenericTrap solid to the test suite.
- test12 (test12-V09-03-00)
  o Allow NIST materials to be used.
  o Added more Physics lists.
- test18 (test18-V09-03-00)
  o Migrated to use particle-based multiple-scattering process.
- test19 (test19-V09-03-03)
  o Added more processes to test. Corrections to QGS/FTF.
  o Migrated to use particle-based multiple-scattering process.
- test22 (test22-V09-03-02)
- test28 (test28-V09-03-00)
- test29 (test29-V09-03-00)
  o Migrated to use particle-based multiple-scattering process.
- test30 (test30-V09-03-05)
  o Removed usage of G4CascadeElasticInterface.
  o Allowing to run in testing mode; SetModels.csh script may not be called.
- test31 (test31-V09-03-01)
  o Added pi- and anti_proton beams to test31.in.
- test37 (test37-V09-03-03)
  o Updated PhysList for WentzelVI model and scripts.
  o RunAction: use overwrite mode for Sandia output file.
  o Fixed script for opt2 physics-list.
- test39 (test39-V09-03-04)
  o Exclude use of G4ElasticCascadeInterface.
  o Migrated to use particle-based multiple-scattering process.
- test41 (test41-V09-03-01)
  o Added StackingAction and updated scripts.
- test49 (test49-V09-03-00)
  o Migrated to use particle-based multiple-scattering process.
- test50 (test50-V09-03-02)
  o Protected code with G4ANALYSIS_USE where necessary.
  o Replaced use of SetFacrange() with SetRangeFactor() to fix compilation
  o Updated visualization parameters.

More information about the Geant4 mailing list