Geant4 7.0 Release Notes
The code and binary libraries for the supported systems are available
through our Source Code Web page.
Please refer to the
Geant4
User Documentation for further information about using Geant4.
Contents
- Supported and Tested Platforms
- AIDA and CLHEP
- Compiler Specific Problems
- Known Run-Time Problems
- Compilation Warnings
- Known Run-Time Warnings
- Major items for migration of user code
- Detailed list of changes and fixes
1. Supported and Tested Platforms
Official platforms:
- SUN Solaris 5.8, C++ CC-5.4 Patch 111715-02.
- Linux, gcc 3.2.3.
This configuration was tested on 32 bits architectures with
the Scientific Linux CERN 3 (SLC3) distribution (based on RedHat Linux
Enterprise 3) and also with RedHat 7.3.
Versions of Geant4 have also been compiled successfully on other
Linux distributions, like Debian, Suse or more recent RedHat systems.
The default RedHat compiler gcc-2.96 distributed in RedHat 7.X is NOT
supported. It has been verified that it produces incorrect binaries,
therefore is not reliable. See also note below.
- Windows/XP and CygWin Tools with: Visual C++ 7.1 .NET
More verified configurations:
- SUN Solaris 5.8, C++ CC-5.5.
- Linux, gcc 3.4.3.
- Linux, Intel-icc 8.0.
- MacOS 10.3, gcc-3.3
Platforms configured but not tested and not supported:
- AIX 4.3.2, xlC 6.0
- DEC V4.0, cxx C++ V6.1-027
- HP 10.20, aCC C++ B3910B A.01.23
- SGI V6.5.5, CC 7.2.1
2. AIDA and CLHEP
Geant4 7.0 requires the installation
of CLHEP.
Tests have been performed with CLHEP-1.8.1.0
The software has been verified also with CLHEP-1.9.1.2.
Geant4 7.0 examples with histogramming cowork with AIDA 3.2.1
implementations. These include:
AIDA headers can be downloaded from:
http://aida.freehep.org
3. Compiler Specific Problems
- Linux Red Hat 7.X, gcc-2.96.
- The default compiler distributed by Red Hat since release 7.0 is
NOT supported and not considered reliable for running a Geant4-based
application. In more than one test case, binaries produced by gcc-2.96
have shown incorrect behavior, either due to wrong order of
initialisation of static data in memory or to bugs in the system
iostream classes, problems which apparently have all been
solved in more recent versions of the compiler (3.X series).
For information, gcc-2.96 is a compiler that has never been
officially released, nor supported by the GNU team itself and is not
considered reliable by the authors (for more information, see also
http://gcc.gnu.org/gcc-2.96.html).
4. Known Run-Time Problems and Limitations
For a complete list of outstanding run-time problems and to submit any
problem you may find running this version of Geant4, please refer to the
Geant4 Problem Reporting
System.
5. Compilation Warnings
There may be compilation warnings on some platforms. We do not believe
that any will lead to incorrect run-time behaviour.
6. Known Run-Time Warnings
The following message can be written to error output while tracking.
We believe it does not give rise to incorrect behaviour.
G4PropagateInField: Warning: Particle is looping
- tracking in field will be stopped.
It has performed 1000 steps in Field while a maximum of 1000
are allowed.
7. Major items for migration of user code
Some migrations are necessary in different areas of the user code in
order to upgrade from release 6.2 to release 7.0,
a full recompilation and/or reinstallation of libraries and user
applications is moreover required.
Direct usage of <cmath> for standard mathematical functions
In this release the Geant4 code makes now direct usage of <cmath>
for standard mathematical functions. All direct/indirect inclusions of
<math.h> have been removed.
To be compliant with this migration, the user code should be modified as well,
by adopting either one of the following approaches:
- Put in front of the following standard mathematical functions the std::
prefix for the namespace:
pow(), exp(), sqrt(), log(), log10(), sin(), cos(), tan(),
sinh(), cosh(), tanh(), asin(), acos(), atan(), atan2(),
ceil(), floor(), fabs(), fmod(), frexp(), ldexp(), modf()
- Alternatively, for places where code readability is a concern, add in source
files (not headers or inline methods, and after the headers inclusions), the
statement:
using namespace std;
As part of this migration also standard headers like:
<math.h>, <limits.h>, <stdlib.h>
are no longer indirectly included. This may require the user code to include
them if/where necessary.
To be noticed also that this migration involves also the removal of
usage of the ad-hoc template function originally defined in CLHEP:
T abs(T)
So the definition of this function will not be any longer available in a
indirect way. The standard mathematical function:
std::abs()
will have to be used instead.
New Installation procedure for the Configure script
The installation procedure of the kernel libraries using the Configure script
has changed. It is now required to specify the final area of installation for the
libraries and sources; libraries are now first built in the local directory
where the source has been downloaded and unpacked; and will be later-on installed
in the specified installation area (requiring root priviledges if
necessary).
See the Installation
Guide for the details.
Migration for usage of the G4VParticleChange class
An interface change to the class G4VParticleChange is implemented
in Geant4 7.0. Advanced users, who have implemented a physics process should
be aware that the following methods have been removed:
void SetTrueStepLength(G4double truePathLength);
void SetLocalEnergyDeposit(G4double anEnergyPart);
G4TrackStatus GetStatusChange() const;
void SetStatusChange(G4TrackStatus status);
void SetSteppingControl(G4SteppingControl StepControlFlag);
void SetParentWeight(G4double);
They have been replaced by the following methods, respectively:
void ProposeTrueStepLength(G4double truePathLength);
void ProposeLocalEnergyDeposit(G4double anEnergyPart);
G4TrackStatus GetTrackStatus() const;
void ProposeTrackStatus(G4TrackStatus status);
void ProposeSteppingControl(G4SteppingControl StepControlFlag);
void ProposeParentWeight(G4double);
For the detailed list of all interface changes involved in G4VParticleChange,
please consult:
http://cern.ch/geant4/source/source/migration_70.html.
Step limitation
A user now needs to change his/her code, in order to limit the step size of a
particle -- when using the class G4UserLimits to limit the step.
Up to the previous release, step limitation due to the maximum step length
of G4UserLimits was directly done by G4SteppingManager,
while all other limits (maxTrackLength, maxStepNumber,
MinKinEnergy and minRemainRange) were dealt by
G4UserSpecialCuts process. To solve this inconsistency,
to simplify the majority of applications which do not utilize the step limitation,
and to give more usability to the user, we introduce a new
process G4StepLimiter and move the step limitation procedure in
G4SteppingManager to this new process.
- The new process, G4StepLimiter, limits the step size specified by
G4UserLimits, but will not kill a track.
- G4UserLimits class is kept as it is, and can specify all limits as before.
- G4UserSpecialCuts is kept as it is. This process kills
a track once the track comes to a limit specified by G4UserLimits (as
it did previously). This provides the user the ability
to impose one or more kinds of "tracking cuts".
- Given no process took place for max step length limitation in the old design,
G4StepPoint::GetProcessDefinedStep() method used to return NULL.
In the new scheme, if a step is limited by the maximum step
length limitation, this method now returns a valid pointer of G4StepLimiter
process.
The user who is using the step length limitation MUST include the new G4StepLimiter
process in the physics-list explicitly. This new process may be assigned only to the
selected particle types (e.g. only to the charged particles) instead of setting it to
all particle types.
No change is required for the user who is NOT using G4UserLimits for the
purpose of maximum step limitation.
Killing of a particle
An advanced user who has created a process with a continuous component
('AlongStep' action) that can kill or bring a particle to a rest will need to
review their process implementation.
Energy-loss processes no longer change the track status of a charged particle
as part of their AlongStepDoIt() action.
For a user-defined process with a "continuous" component,
in order to stop (and thus either kill or bring to a rest in an 'alive' state)
a particle in its AlongStepDoIt() method,
it is now necessary to propose zero kinetic energy for the particle.
Alternatively a process can contribute to the particle arriving at zero energy,
as a result of the action of two or more processes, e.g. energy loss and
propagation in an electric field (in the transportation process).
Once a particle has zero (or less) proposed energy, it is brought to a rest
and its energy is set exactly to zero.
If the particle can decay, can be annihilated or generally has one or more
'AtRest' actions, then another step will be performed that calls these;
else, the particle is killed.
The discrete component (or 'PostStep' action) of a process will not be
performed once the particle has come to a stop.
Note: the case of a particle that comes to a rest in a field and is
then re-accelerated, is not supported at this time.
Future migration for G4GeneralParticleSource class
A 'tree-structured' command format is implemented in this release for
G4GeneralParticleSource. The old UI commands have been kept
for backward compatibility but will be removed in the future.
For more information, please consult:
http://reat.space.qinetiq.com/gps.
8. Detailed list of changes and fixes
These are the main new features/fixes included in this release since the
last patched public release (for the detailed list of fixes/additions,
please refer to the related History files provided in most packages):
- Implemented migration to <cmath> for standard mathematical
functions.
Configuration
- Configure script: now installing libraries in specified
installation area. Installation happens now in two steps: libraries are
first built locally and later-on installed. Defined new commands:
- Configure -build: to start the configuration process and
locally build the libraries.
- Configure -install: to install libraries and sources in
the specified installation area.
- Archived setup for Windows/VC++6 and removed WIN32-VC7 G4SYSTEM tag,
now replaced by WIN32-VC, setup for VC++ .NET.
- Relaxed compilation options for SUN-CC.
- Darwin-g++.gmk:
- Added -lXi to X11LIBS.
- Corrected options to build granular shared libs.
Have "-undefined define_a_way" instead of "-undefined error".
Digitization & Hits
- G4VDigi: added methods to store and retrieve HepRep attributes
in same manner as currently done for trajectories and hits.
Electromagnetic Processes (Low-energy)
- Fixes to tables manipulation, effective charge, graphite problem and
Bremsstrhalung low energy edge of the spectrum.
- Revision of G4LowEnergyPhotoelectric to allow for new development of
precise angular distributions.
- Improved parameterised PIXE model based on Paul & Sacher review; it
becomes the default one.
- Software improvement in G4PenelopeCompton.
- Implemented migration of processes to new G4VParticleChange
interfaces.
Electromagnetic Processes (Standard)
- Added new process: positron annihilation to pion pair (G4eeToHadrons).
- Added new utility class: G4EmCalculator, to access/calculate dedx, range,
cross sections of EM processes.
- Migrated to new scheme for store/retrieve Physics Tables:
new sequence of initialisation of EnergyLoss process: first PreparePhysicsTable,
then BuildPhysicsTable or RetreivePhysicsTable. Do not rebuild G4PhysicsVector if
cuts were not changed for given G4MaterialCutsCouple.
- Restructured subdirectories: multiple-scattering and other concrete models have
been moved from utils to standard and a new package (highenergy) has been
created.
- Migrated processes to new interface for G4VParticleChange.
- Multiple Scattering
- Changes in the angle distribution (slightly modified Highland formula for the
width of the central part, changes in the numerical values of some other
parameters) ---> approximately step independent distribution.
- Correction in SampleCosineTheta in order to avoid numerical precision
problems at high energy/small step.
- Fix precision problem for very high energy ions in gases (or with
small stepsize) has been solved in G4MscModel.
- proton Ionization
- Extended G4BraggModel below 1 keV
- Ion Ionization
- Decoupled G4ionIonisation process from proton ionisation,
use alpha stopping power tables for simulation of ion ionisation.
- Added G4ionEffectiveCharge class needed to ion physics.
- mu Ionization
- Fixed a problem observed after deactivation of muon ionisation.
- Provide a possibility to use the same EnergyLoss process class for
several particles (mu+ and mu-)
- Changed process names: Mu -> mu.
- PAIonization
- Removed G4PAIonisation; provided two new models of PAI ionisation
and example TestEm8 to demonstrate how to use these models. Provided
possibility to use PAI per region; any low cut should be established for
the PAI model.
- Removed G4IonisationByLogicalVolume.
- All EnergyLoss processes
- Removed ProposeTrackStatus() from AlongStep for EnergyLoss processes,
this action becomes under responsibility of G4SteppingManager.
- Pair production by muon
- Fixed bug in calculation of cross section of pair production by muons.
- eBremsstrahlung
- Added a threshold for G4eBremsstrahlung process, if emitted gamma is
above the threshold, incoming track is killed and is added to the list of
secondary particles.
- Compton Scattering
- Improved totalCrossSection parameterisation below 15 keV.
Event
- Made G4PrimaryTransformer a base class to allow for users to customize treatment
of particle types, especially those exotic to Geant4.
- Added treatment of G4UnknownParticle to
G4PrimaryTransformer.
- G4GeneralParticleSource: added new features, focused beam and
multiple vertices.
General Processes, Parameterisation, Cuts, Decay, Optical
- Migrated processes to new interface for G4VParticleChange.
- Cuts:
- Added G4PhysicsTableHelper class in order to assist
implementation of new scheme of Store/RetrievePhysicsTable()
for processes.
- Added G4MCCIndexConversionTable class and modified
G4ProductionCutsTable in order to extend functionality of
Store/RetrievePhysicsTable().
- Decay:
- Introduced G4UnknownDecay class.
- Added a new method GetRemainderLifeTime() to G4Decay.
- Management:
- Added PreparePhysicsTable() method in G4VProcess.
- Added const cast for arguments in
Store/RetrievePhysicsTable().
- Optical:
- Fixed bug in DielectricMetal only GetFacetNormal() for
LobeReflection.
- Transportation:
- Introduced G4StepLimiter to handle MaxAllowedStep
in G4UserLimits.
- Added pointer to sensitive detector in G4ParticleChangeForTransport
and updated G4Transportation to make use of it.
- Added protection in G4Transportation for specific case of
parameterised volumes by materials where no EM processes are defined.
- Added threshold energy for not abandoning stuck particles quickly in
G4Transportation.
- G4UserSpecialCuts: apply tracking cut only if Rmin or
Emin > DBL_MIN.
Geometry
- Magnetic Field
- Added Set/GetAnomaly() methods in G4Mag_SpinEqRhs
equation of motion.
- Management
- Introduced abstract class G4VStoreNotifier to be optionally
associated to stores by the user for the notification of the registration
and deregistration of objects in the stores.
- Added notification mechanism to volume, solid, and region stores.
- G4VTouchable: added GetCopyNumber() method, clone of
GetReplicaNumber().
- Introduced virtual method GetCubicVolume() to G4VSolid,
returning an estimation of the solid volume in internal units. This method
may be overloaded by derived classes to compute the exact geometrical
quantity for solids where this is possible, or anyway to cache the
computed value. By default it uses the new protected method
EstimateCubicVolume(stat, eps) with fixed statistics and error
accuracy, and does not cache the computed value.
- Added GetPolyhedron() to G4VPhysicalVolume, a smart access
function that creates a G4Polyhedron on request and stores for
future access. A null pointer means "not available".
- G4LogicalVolume:
- Added method GetMass() to G4LogicalVolume, returning
the value in absolute units of the mass of the logical volume tree.
The mass is computed from the estimated geometrical volume of each solid
and material's density associated to the logical volume and its daughters.
The returned value is cached and can be used for successive calls (default),
unless recomputation is forced by providing true as the first boolean
argument in input. Computation should be forced if the geometry setup has
changed after the previous call. An optional argument to specify a material
is provided; it is implicitely used for geometrical parameterisations by
material.
- Added method TotalVolumeEntities() to G4LogicalVolume,
returning the total number of physical volumes (placed or
replicated/parameterised) included in the tree represented by the current
logical volume.
- Fix in UpdateMaterial() for checking the existance of
root-region pointer for logical-volume. Fixes report #684.
- Navigation
- G4Navigator:
- Added new access method SeverityOfZeroStepping().
- Allow consecutive corrections for stuck tracks in ComputeStep()
up to 10 times before aborting the event.
- G4ReplicaNavigation: fix in DistanceToOutPhi() for the case
of phi sections on convex surfaces. Fixes problem report #651.
- Solids
- Added specific implementation for GetCubicVolume() wherever possible
and implemented caching of the computed value for all solids.
- Added specific GetPolyhedron() to solids, a smart access function
that creates a G4Polyhedron on request and stores for future access.
A null pointer means "not available".
- CSG solids:
- G4Trap: added check for X-centering in constructor by verteces.
Fixes problem report #687.
- Specific solids:
- Added new G4TwistedBox shape: a twisted box with twist angle
alpha, length a/2,b/2,L/2.
- Added new G4TwistedTrap shape: a twisted trapezoid with twist
angle alpha and same trapezoidal caps.
- Fixes in G4VSurface:
- GetNeighbours(): corrected axiscode (was returning the wrong
neighbours).
- SetNeighbours(): fixed problem #685
(index out of range).
- Fix in G4PolyconeSide::Inside() for points at radius = 0 for phi
slides solids with an inner radius. Addresses problem report #598.
- Volumes
- G4ReflectionFactory: added automatic reflection for visualization
attributes, biasing weights and regions associated to the logical volume.
Global
- New implementation of G4Allocator based on a pool of memory-chunks.
The size of a single chunk is kept at 1Kb as for the old allocator.
This implementation replaces the old G4Allocator which was based on
pages and no longer portable on the gcc-3.4.X compilers.
The new allocator also supports the standard interface required for STL
containers, in case it will be used as alternative allocator instead of
the default std::allocator.
Added inclusion of <cstddef> to G4Allocator.hh to make the
header self-consistent.
- Migrated code to use std namespace for mathematical functions
included from <cmath>. Removed explicit inclusion of CLHEP.h and
therefore also implicit inclusions of system headers <math.h>,
<stdlib.h> and <limits.h>.
- Removed implicit inclusion of CLHEP's template function abs(), use
now standard function std::abs() instead.
- G4PhysicsTable:
- Added collection of flags and related methods. The collection of boolean
values will be used by physics processes to flag if recomputation will be
required or not.
- Code cleanup and added Push_back() method.
- Added global function G4RandomDirection() providing a random 3-vector
normalised in 4pi.
- Cleared obsolete setup for min/max macros required for Windows/VC++6.
Graphical Representations
- Introduced forced auxiliary edge visible in G4VisAttributes.
- Removed G4Polymarker::line. Use G4Polyline instead.
- HepPolyhedron, BooleanProcessor: replaced occurences of
HepStd with std.
Hadronic Processes
- Migrated processes to new interface for G4VParticleChange.
- Improved treatment of cross-sections, and neutrons to improve on the ATLAS/HEC
shower-shape description for the QGSP physics list.
- cross_sections
- Updating pion cross-sections for copper, to be more closely consistent
with data.
- management
- Changed the framework classes, so that the G4TouchableHandle from the
parent G4Track is now carried forward to the secondary tracks in
all cases.
- stopping
- Changed process classes, so that the G4TouchableHandle from the parent
G4Track is now carried forward to the secondary tracks in all cases.
- models/binary_cascade
- Resonance potentials now consistently treated under the assumption that
they are zero.
- Introduced a new more selective system of debug printout steering.
- Cleared debug run-time output.
- models/cascade
- Fixed a memory fault, and some minor cleanup.
- models/chiral_inv_phase_space/body
- Fixed unnecessary debug messages affecting unit-test.
- Changed problem related print-out.
- models/high_energy
- Removed a phi asymmetry in the high energy neutral pion distributions.
- models/leading_particle
- Added clarification notice with respect to the nature of the code,
to be printed at start-up.
- Corrected treatment of secondaries in the creation of particle change.
- models/low_energy
- Fixed an energy non-conservation problem of few MeV size,
in relations to phase-space sampling.
- models/muon_nuclear
- Changed process name to be consistent with other muon processes.
- Changed memory allocation policy in the hadronic vertex to avoid a platform
dependency that can lead to a crash on exit.
- models/radioactive_decay
- Added G4MshellECDecay class and changed G4RadioactiveDecay
accordingly.
- Added better handling of incomplete data files.
- Corrected treatment of metastables as initial tracks in VR mode.
- Default decay window in VR model set to 9.9x109 - 1010 seconds.
- Added individual time stamp for splitted isotope
- Fixed problem reports #396 and #662.
- Applying now atomic relaxation only to 5 < z < 101.
- No more fast/slow beta decay mode with a faster 3-body decay implementation.
- G4RIsotopeTable: no longer reset the excitation energy.
- Added touchableHandle to secondary tracks.
Parameterisations
- New gflash submodule for fast shower parameterisation, contribution
of CMS and ATLAS.
- Moved original TRD classes to trd_models submodule.
Particles
- Introduced G4UnknownParticle class for bosons.
- Introduced G4MuonDecayChannelWithSpin class.
- Removed obsolete dependency to G4Material from G4ParticleDefinition and
related class.
Run and Interfaces
- Interfaces:
- G4UIXm: define default resources in case XENVIRONMENT
is not set.
- Run:
- Temporarily allow the use of G4ParticleTable before the
construction of physics table.
- Fixed wrong behaviour of G4RunManager when the user modifies the
geometry without replacing the world.
- Moved ConstructParticle() and ConstructProcess() methods to 'public'.
- G4VUserPhysicsList:
- Modified BuildPhysicsTable() and PreparePhysicsTable()
for new scheme of Store/RetrievePhysicsTable() methods.
- ConstructParticle() and ConstructProcess() methods are
moved to 'public'.
Track and Tracking
- Track
- Removed obsolete interface methods from G4VParticleChange.
- Modified G4ParticleChangeForDecay:
added thePolarizationChange and related methods.
- Fixed problem in the destructor of G4VUserTrackInformation.
- Tracking
- Made G4SteppingVerbose a singleton.
- G4SteppingManager:
- Change the track status to StopAndKill when a track looses
all kinetic energy cumulatively while the AlongStep loop.
- Now changing the track status to StopButAlive if the kinetic
energy becomes below zero while AlongStep loop.
- Fix on interactive on/off for AtRest processes.
- Do not issue G4Exception anymore also if no atRestDoit
processes exit.
- G4Trajectory, G4SmoothTrajectory:
added HepRep attribute for magnitude of momentum.
- Fix in G4SteppingManager::InvokePSDIP() for completing migration
to new G4VParticleChange interface.
Visualization
- Management
- Modeling
- Added G4PhysicalVolumeMassScene and improvements to
G4PhysicalVolumeModel.
- ASCIITree
- verbosity >= 3: prints volume, density of all volumes in hierarchy.
- verbosity >= 4: calculates the mass of the complete geometry tree taking
into account daughters up to the depth specified for each physical
volume in the current scene. Culling is ignored so that all volumes
are processed. Uses G4PhysicalVolumeMassScene.
- Added option to write to file (/vis/ASCIITree/set/outFile).
- DAWN
- Improved diagnostic on trapping non-regular polyhedra.
- HepRep
- Fixed a compilation problem in zlib for AMD64.
- Upgraded to latest version C++ HepRep driver from FreeHEP.
- Fixed GEANT-51, upgrade zlib to version 1.2.2 (for AMD64 compatibility).
- OpenGL
- Hidden line *and/or* hidden surface removal now work for OGL*X and OGL*Xm.
- Trap non-regular polyhedra and other small changes.
- Removed redundant fLastVP from G4OpenGLStoredSceneHandler.
- G4OpenGLWin32Viewer::ShowView(): correction in usage of glFlush to
allow proper visualization of trajectories.
- OpenInventor
- General code review of the driver.
- Porting on Windows.
- Corrected handling of transparent mode.
- Forced culling off by default and solid mode. User will see
all of the requested geometry volume tree; can use pointer button
and CTRL-left-click to uncover (SHIFT-left-click to re-cover);
can use the hand button and right-click to get wireframe.
Physics lists
- Imported hadronic lists and electromagnetic lists from top-level
to new module physics_lists.
- electromagnetic
- Instantiate processes only once for muons.
- Use ionIonisation for GenericIon, alpha, He3.
- hadronic
- Added to build missing LHEP_BERT_HP & LHEP_BIC_HP lists.
- Implemented migration to new G4VParticleChange interface.
- Removed debug printout in G4HadronQEDBuilder.
Environments
- New version of MOMO integrating GAG and Gain.
- Added new example and removed obsolete files.
Examples
- Updated reference outputs.
- advanced
- air_shower
- New example for the simulation of an UV detection system (UVscope).
- brachytherapy
- Improved analysis management and corrected initial seed setting.
- composite_calorimeter
- Use new phys-lists structure.
- cosmicray_charging
- Removed call by pointer of hadronics classes.
- Added MuNuclear interaction.
- Updated input macros for obsolete gps commands.
- gammaray_telescope
- hadrontherapy
- Correction to analysis classes.
- lAr_calorimeter
- Use new phys-lists structure.
- medical_linac
- Added MedLinacTrackingAction, MedLinacMLCDecorator
and MedLinacMLCMessenger.
- purging_magnet
- Cleared compilation warnings.
- radioprotection
- Added binary cascade approach.
- Added histograms and option to define the format of the output
file hbook or xml.
- Rich
- Implemented migration to new G4VParticleChange interface.
- Tiara
- Corrected link to the centralized hadronic physics lists and using
new physics-lists structure.
- Eliminated all the old links to the tiara-dedicated shared libraries
for the Packaging and the physics lists SWIG wraps based on the
templated physics list classes.
- underground_physics
- Implemented migration to new G4VParticleChange interface.
- xray_fluorescence
- General update, can now be used in batch mode without histograms.
- extended
- analysis/A01
- Removed dependency from user hadronics lists.
- electromagnetic/MuonProcesses
- Fix for generation of histograms according to 'muons' tag.
- Trivial fixes for compilation in gcc-3.2.
- Avoid deletion of Analysisfactory (for JAIDA).
- electromagnetic/PhotonProcesses
- Added new input macro anni.mac.
- Avoid deletion of Analysisfactory (for JAIDA).
- electromagnetic/TestEm1
- Compute and print CSDA range from G4EmCalculator.
- Set default vertex at left side of the box.
- Avoid deletion of Analysisfactory (for JAIDA).
- Define correctly all UI subdirectories.
- Modifications in HistoManager and Messenger for histograms files.
- Migrated to new interface for G4VParticleChange in
G4eBremsstrahlungCMS.
- Modified call to G4EmCalculator.
- PhysListEmStandard: put threshold for G4BremsstrahlungCMS
at 10 GeV.
- electromagnetic/TestEm2
- Define correctly all UI subdirectories.
- Modifications in RunAction for histograms files.
- Change USE_AIDA to G4ANALYSIS_USE in GNUmakefile.
- Fix in the logic of PhysicsList::AddPhysicsList().
- Fixed bug in change of cuts between runs.
- electromagnetic/TestEm3
- Modified HistoManager and Messenger in order to allow a multirun job.
- Removed static ionC12. Use generic ion instead.
- Avoid deletion of Analysisfactory (for JAIDA).
- More histograms: longitudinal energy profile and forward energy flow.
- Changed the numering of absorbers: start from 1 instead of 0.
and modified all macros according to the above.
- Define correctly all UI subdirectories.
- New StepMax processes and messenger.
- Updated macros tbhec and lhcb.
- electromagnetic/TestEm5
- Print stopping power.
- Showing example of use of G4EmCalculator.
- Added dedx1.mac and dedx2.mac input macros.
- Fixed a minor problem is energy deposit.
- Fixed a problem in PhysicsList for hadrons.
- Avoid deletion of Analysisfactory (for JAIDA).
- Define correctly all UI subdirectories.
- Added macros neutron.mac and hadron.mac.
- Modified call to G4EmCalculator.
- electromagnetic/TestEm7
- Reset histo and dose calculation by run.
- Introduced RunAction::FillHisto() method.
- Compute projected range of primary particle (new class TrackingAction).
- Removed static ionC12. Use generic ion instead.
- Optimised interfaces.
- Added proton.mac, updated ionC12.mac and removed run01.mac.
- Fixed minor problem in stepping action.
- Define correctly all UI subdirectories.
- Modifications in RunAction for histograms files.
- eventgenerator/exgps
- New example showing the usage of G4GeneralParticleSource for generating
primary incident particle according to user defined distributions.
These range from simple monocromatic point source to complicated mutiple
sources with various biasing schemes.
- field
- Removed dependency on old PAI and XTR models in PhysicsList
of field01/02/03 examples.
- gdml
- Archived old example and setup. New example based on GDML-2.0.0
demonstrating the abilities of import/export of GDML descriptions.
- medical/GammaTherapy
- New example of Gamma beam irradiation therapy on a water phantom.
- parallel
- New version of marshaling/unmarshaling code for ParN02 and ParN04,
generated from annotations using Marshalgen.
- radioactivedecay/exrdm
- New example for showing the usage of the G4RadioactiveDecay process to
simulate the decays of radioactive isotopes as well as the induced
radioactivity resulted from nuclear interactions.
- runAndEvent/RE01
- New example showing how to connect the information between
primary particles and hits and utilize user-information classes.
novice
- N02
- Removed trajectory printing from ExN02EventAction, now available
with /vis/scene/add/trajectories, included in vis.mac.
- DetectorConstruction: modified a comment for placements.
- N03
- visTutor/exN03Vis[5,10].mac : added commented examples
on how to request the visualization of a particular volume.
- visTutor/exN03Vis9.mac: added visualization with OGLIWin32 to verify
visualization of geometry and trajectories.
- DetectorConstruction: added commented vis attributes in order to
verify interactive expansion/contraction geometry system of the
OpenInventor driver.
- gui.mac: gun pulldown menu.
- N04
- Use standard hadronic physics-lists with QGSP.
- N05
- Modified method name for G4VParticleChange in
ExN05SpecialCuts.
- Implemented migration to new G4VParticleChange interfaces.
- N07
- Modified to comply to new cut-per-region scheme.