278 lines
13 KiB
Plaintext
278 lines
13 KiB
Plaintext
|
|
Geant4 9.3 - patch-02 Release Notes
|
|
-----------------------------------
|
|
|
|
17 September 2010
|
|
|
|
List of fixes included in this public patch since the public release 9.3.p01:
|
|
|
|
o Configuration:
|
|
-------------
|
|
+ Configure script:
|
|
o Updated internal scripts for Configure: protected echos on
|
|
LD_LIBRARY_PATH so that output from use of Configure post-install
|
|
is clean. Also addressing problem report #1139.
|
|
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.
|
|
+ Simplified QTLIBPATH setup in Linux-g++.gmk.
|
|
+ Increased stack size on WIN32-VC setup (i.e. 8MB as on Linux), adding
|
|
the option to LDFLAGS.
|
|
|
|
o Digits+Hits:
|
|
-----------
|
|
+ Added missing virtual destructor to G4VScoringMesh and removed
|
|
unnecessary virtual qualifiers to G4ScoringBox.
|
|
|
|
o Event:
|
|
-----
|
|
+ Improved logic in G4PrimaryTransformer. Addressing problem report #1101.
|
|
+ Fixed compilation warning in G4SmartTrackStack issued with gcc 4.5.0.
|
|
+ Removed obsolete CLHEP_HepMC option from G4EventManager class.
|
|
+ Fixed electron mass correction for ions in G4PrimaryTransformer.
|
|
|
|
o Geometry:
|
|
--------
|
|
+ biasing:
|
|
o G4IStore: corrected use of internal cell-importance iterator to avoid
|
|
invalidation in methods GetImportance().
|
|
o Corrected mispelled name for GetLowerWeight() method in classes
|
|
G4WeightWindowStore and G4VWeightWindowStore. Fixed use of internal
|
|
cell-importance iterator in G4WeightWindowStore::GetLowerWeight() to
|
|
avoid cases of invalidation.
|
|
o Fixed initialization of data in copy-constructor for G4GeometryCell.
|
|
+ divisions:
|
|
o Improved logic in G4PVDivision constructors and in method
|
|
G4PVDivisionFactory::CreatePVDivision() in case of invalid construct.
|
|
o Properly initialise Boolean flag 'bDivInTrap' in G4VParameterisationTrd
|
|
constructor.
|
|
o G4ParameterisationTrd: disabled unreachable error message in method
|
|
G4ParameterisationTrdX::CheckParametersValidity().
|
|
o Removed uninitialised member in G4ParameterisationTrdX and correction
|
|
in method ComputeSolid().
|
|
o Get rid of unnecessary virtual specification for leaf classes in the
|
|
hierarchy.
|
|
+ magneticfield:
|
|
o Fixed cases of possible memory corruption in G4RKG3_Stepper.
|
|
o Fixed case of unused array data member in G4ExactHelixStepper.
|
|
o Removed useless code never executed in G4ConstRK4::Stepper().
|
|
o Fixed initialization in constructor and fixed passing of time in
|
|
G4NystromRK4.
|
|
o Added dummy initialization of data members in constructors.
|
|
+ management:
|
|
o Fixed compilation errors for code within G4GEOMETRY_VOXELDEBUG flag
|
|
in G4GeometryManager and G4SmartVoxelHeader.
|
|
o Added printout of voxel limits in G4SmartVoxelHeader::Buildnodes().
|
|
o G4LogicalSurface: made virtual destructor and constructors not inline.
|
|
o G4SmartVoxelHeader: fixed potential case of invalid iterator in
|
|
deletion of test slices in BuildVoxelsWithinLimits().
|
|
o G4GeometryManager: restore cout precision after printing voxel
|
|
statistics.
|
|
o Added dummy initialization of data members in constructors.
|
|
+ navigation:
|
|
o Fix in G4GeomTestSegment::FindSomePoints(), to address problem
|
|
report #980.
|
|
o Fixed array out of bound error in G4MultipleNavigator and G4PathFinder
|
|
constructors.
|
|
o Fixed cout precision restoring where applicable.
|
|
o Replaced use of DBL_MAX for distances with kInfinity in
|
|
G4MultiNavigator and G4Navigator internals.
|
|
o Added dummy initialisation of data members in constructors.
|
|
+ solids/BREPS:
|
|
o Fixed possible leaks in G4BREPSolid::IsConvex() method,
|
|
G4ToroidalSurface destructor, G4BezierSurface::ClipSurface() method
|
|
and G4OsloMatrix construction.
|
|
o Corrected possible dereferencing of null pointer in method
|
|
G4BREPSolidSphere::DistanceToOut().
|
|
o Corrected deletion of internal data in G4BSplineCurve::Project() method.
|
|
o G4Assembly: corrected case of invalid iterator in destructor.
|
|
o G4Hyperbola: corrected signature to internal Init() function to avoid
|
|
parameter passed by value.
|
|
o G4BSplineCurve: corrected initialization of null pointer in Project().
|
|
o G4CompositeCurve, G4SurfaceBoundary: corrected cases of invalid
|
|
iterator.
|
|
o Some code cleanup in G4ConicalSurface, GCylindricalSurface and
|
|
G4SpericalSurface.
|
|
o Added dummy initialisation of static data where applicable.
|
|
+ solids/CSG:
|
|
o G4Torus: fix in DistanceToOut(p,v,...) to address problem report #1081.
|
|
Fixed call to internal method for finding roots, to avoid copy
|
|
of sdt::vector() by parameters. Some cleanup to avoid unnecessary
|
|
protected section and virtual table.
|
|
o Fixed condition in G4Tubs::Inside(p) for point on surface.
|
|
o Corrected use of std::fabs() in place of std::abs() in G4Tubs, G4Cons,
|
|
G4Sphere and G4Torus. Use pre-computed half-tolerance constants in
|
|
G4Torus.
|
|
o Improved initialisation logic in several constructors.
|
|
o Corrected cases of not-restored cout precision where applicable.
|
|
+ solids/specific:
|
|
o Fix in G4TriangularFacet and G4TessellatedSolid to correct treatment
|
|
of optical photon transport related to internal reflection at surface.
|
|
Addresses problem report #1103.
|
|
o G4ExtrudedSolid: eliminated requirement for clockwise ordering of
|
|
polygon vertices. Added a check for vertices ordering; if vertices
|
|
are defined anti-clockwise their ordering is reverted.
|
|
Fix in polygon facet triangularization for consequent concave vertices.
|
|
o Fixed deletion of internal arrays in CreatePolyhedron() for G4Polycone
|
|
and G4Polyhedra.
|
|
o G4EllipticalTube: extended implementation of SurfaceNormal(p) in
|
|
agreement with canonical form.
|
|
o Fixed cases of division by zero in G4VTwistSurface and G4TwistBoxSide.
|
|
o Use INT_MAX as initialisation for max limits in G4SolidExtentList.
|
|
o Fixed potential case of dereferencing null pointer in methods
|
|
G4EllipticalTube::DistanceToOut(p,v), G4VCSGfaceted::DistanceToIn(p,v)
|
|
and G4VCSGfaceted::DistanceToOut(p,v).
|
|
o Fixed unecessary object copy as argument in method
|
|
G4PolyhedraSide::IntersectSidePlane().
|
|
o Replaced calls to std::abs() with std::fabs() where suitable.
|
|
o Added dummy initialization of data members where applicable.
|
|
+ volumes:
|
|
o Added Reset() method to G4ReflectionFactory for clearing maps of
|
|
constituent and reflected volumes.
|
|
|
|
o Global:
|
|
------
|
|
+ More safe numerical computation of A13() and logA() methods in G4Pow.
|
|
+ Added INT_MAX and INT_MIN portability macros in templates.hh.
|
|
+ Fixed cases of invalidated iterator in G4StateManager.
|
|
+ Added dummy initialization of data members in constructors.
|
|
+ Changed date for patch-02 to release 9.3.
|
|
|
|
o Interfaces:
|
|
----------
|
|
+ Fixed call to contructor QKeySequence() in G4UIQt:AddButton() to
|
|
allow for porting on gcc-4.5.0. Addresses problem report #1127.
|
|
|
|
o Particles:
|
|
---------
|
|
+ Fixed logic bug in G4ExcitedMesonConstructor::Add3PiMode().
|
|
+ G4MuonRadiativeDecayChannelWithSpin: corrected sign error.
|
|
|
|
o Persistency:
|
|
-----------
|
|
+ Corrected dump of division axis in GDML writer.
|
|
+ Fixed printout of unit in G4GDMLWriteStructure for replicas and
|
|
divisions, in the case of angles.
|
|
+ Added missing virtual destructor to G4tgbDetectorBuilder in ASCII module.
|
|
Fixed signature for std::map in G4tgrVolumeMgr header.
|
|
+ Fixed recursive header inclusion in G4PersistencyCenter class in 'mctruth'
|
|
module, and added dummy initialization of data members in constructors.
|
|
|
|
o Low-energy Electromagnetic Processes:
|
|
------------------------------------
|
|
+ Fixed bugs in G4AtomicDeexcitation and G4AugerTransition to cure crash
|
|
on Windows.
|
|
+ Corrected return value case in method GetPhotoElectronDirection() in
|
|
G4PhotoElectricAngularGeneratorSauterGavrila.
|
|
Addressing problem report #1120.
|
|
|
|
o Standard Electromagnetic Processes:
|
|
----------------------------------
|
|
+ Adjoint:
|
|
o G4AdjointAlongStepWeightCorrection: get rid of call to non-Standard
|
|
isnan(), replaced by explicit validity test.
|
|
o G4AdjointhMultipleScattering: removed unused header.
|
|
+ Polarisation:
|
|
o Fix in G4ePolarizedIonisation to use default vector size of
|
|
G4VEnergyLossProcess and avoid size mismatch in G4LossTableBuilder.
|
|
+ Standard:
|
|
o G4eBremsstrahlungModel: fix in SelectRandomAtom() method.
|
|
Addressing problem report #1115.
|
|
o Fixed G4_O data in G4ASTARStopping.
|
|
Fixed G4_Pt and G4_PROPANE data in G4PSTARStopping.
|
|
|
|
o Hadronic Processes:
|
|
------------------
|
|
+ models/cascade:
|
|
o Fix for long-standing problem of energy non conservation in pion-nuclear
|
|
reaction on very light nuclei (in particular He) in G4CascadeInterface.
|
|
The workaround re-samples the interaction in the rare case when an
|
|
unphysical final state with baryon number violation is generated.
|
|
+ models/CHIPS:
|
|
o Fix in G4ChiralInvariantPhaseSpace to catch previously un-handled
|
|
exceptions produced when a 'chipolino' pseudo-particle is produced by
|
|
the model and thrown by Q4QEnvironment::Fragment; handles the case in
|
|
which Q4QEnvironment returns a 90000000 fragment, and converts it to
|
|
a gamma. Addressing problem report #1138.
|
|
o Bug fix in G4QNucleus::ChoosePosition() for looping.
|
|
o Fix in fragmentation module for run-time warning on Windows.
|
|
+ models/de_excitation:
|
|
o Fixed numerical problem (division by zero) in G4GEMProbability.
|
|
+ models/neutron_hp:
|
|
o Added safety for zero length cross-section table in
|
|
G4NeutronHPFissionData. Addressing problem report #1118.
|
|
o Add safety for negative value in G4NeutronHPInelasticCompFS.
|
|
o Added model name in constructor of G4NeutronHPThermalScattering.
|
|
Addressing problem report #1116.
|
|
o Modified sampling in G4NeutronHPInelasticCompFS.
|
|
o Fix bug about incidence energy in G4NeutronHPEnAngCorrelation.
|
|
+ models/parton_string/hadronization
|
|
o Improved Lund string fragmentation.
|
|
o Fixed inconsistency between LightFragmentationTest and Lund
|
|
fragmentation.
|
|
o Fixed problems of energy non-conservation in FTF.
|
|
+ models/photolepton_hadron/muon_nuclear:
|
|
o G4MuNuclearInteraction: properly clear hadronic tracks PostStepDoIt().
|
|
+ models/util:
|
|
o G4Fancy3DNucleus: added missing std:: to call to sort() algorithm.
|
|
|
|
o Generic Processes:
|
|
-----------------
|
|
+ Biasing:
|
|
o G4WeightWindowProcess: corrected call to method GetLowerWeight() in
|
|
G4WeightWindowStore, after correction of mispelled name.
|
|
+ Optical:
|
|
o Fix for backpainted surfaces to avoid applying twice reflectivity.
|
|
Addressing problem report #1114.
|
|
o Fixed sampling of 'theFacetNormal' for 'polishedbackpainted' material
|
|
in G4OpBoundaryProcess::DielectricDielectric() method. Address problem
|
|
reported on Hypernews Optical Processes Forum, thread #334.
|
|
o Refashioned code in the case of type 'dielectric_dielect'.
|
|
+ Transportation:
|
|
o Fix to G4Transportation to properly update the step flag which
|
|
identifies the last step in a volume (applies for linear steps only,
|
|
i.e. no field). Partially addressing problem report #1032.
|
|
|
|
o Run:
|
|
---
|
|
+ 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.
|
|
+ Added dummy initialisation of data members in constructors.
|
|
+ Use canonical form for exceptions in G4RunManager and added dummy return
|
|
statements; same in G4VUserPhysicsList.
|
|
|
|
o Examples:
|
|
--------
|
|
+ Migrated physics-lists to use particle-based multiple-scattering
|
|
wherever necessary, and updated reference outputs.
|
|
+ advanced/human_phantom:
|
|
o Added missing includes, causing compilation error.
|
|
o Migrated physics-lists.
|
|
o Corrected commands in some macros.
|
|
+ extended/geometry/olap:
|
|
o Fixed compilation error for setting of kRadTolerance.
|
|
o Removed inclusion of obsolete G4ParticleWithCuts header.
|
|
+ extended/persistency/gdml/G03:
|
|
o Corrected selection of G4UItcsh in main(), to fix problem on Windows.
|
|
|
|
----------------------------------------------------------------------------
|
|
|
|
Technical Notes
|
|
---------------
|
|
|
|
o This patch should be applied on top of relese 9.3.
|
|
o Technical notes distributed for release 9.3 are also applicable and
|
|
valid for this patch.
|
|
|
|
The code and rebuilt binary libraries for release 9.3 are available
|
|
through our "Download" Web page:
|
|
http://cern.ch/geant4/support/download.shtml
|
|
|
|
Please refer to the Geant4 User Documentation:
|
|
http://cern.ch/geant4/support/userdocuments.shtml
|
|
for further information about using Geant4.
|