Warning, /geant4/CHANGELOG/Patch4.9.3-2.txt is written in an unsupported language. File is not indexed.
0001
0002 Geant4 9.3 - patch-02 Release Notes
0003 -----------------------------------
0004
0005 17 September 2010
0006
0007 List of fixes included in this public patch since the public release 9.3.p01:
0008
0009 o Configuration:
0010 -------------
0011 + Configure script:
0012 o Updated internal scripts for Configure: protected echos on
0013 LD_LIBRARY_PATH so that output from use of Configure post-install
0014 is clean. Also addressing problem report #1139.
0015 o Fixed selection of XERCESCROOT path for Windows.
0016 o Added quoting of uname in Qt.U to prevent Power Mac problems.
0017 o Added removal of quotes from make version string to handle non-English
0018 language systems.
0019 + Simplified QTLIBPATH setup in Linux-g++.gmk.
0020 + Increased stack size on WIN32-VC setup (i.e. 8MB as on Linux), adding
0021 the option to LDFLAGS.
0022
0023 o Digits+Hits:
0024 -----------
0025 + Added missing virtual destructor to G4VScoringMesh and removed
0026 unnecessary virtual qualifiers to G4ScoringBox.
0027
0028 o Event:
0029 -----
0030 + Improved logic in G4PrimaryTransformer. Addressing problem report #1101.
0031 + Fixed compilation warning in G4SmartTrackStack issued with gcc 4.5.0.
0032 + Removed obsolete CLHEP_HepMC option from G4EventManager class.
0033 + Fixed electron mass correction for ions in G4PrimaryTransformer.
0034
0035 o Geometry:
0036 --------
0037 + biasing:
0038 o G4IStore: corrected use of internal cell-importance iterator to avoid
0039 invalidation in methods GetImportance().
0040 o Corrected mispelled name for GetLowerWeight() method in classes
0041 G4WeightWindowStore and G4VWeightWindowStore. Fixed use of internal
0042 cell-importance iterator in G4WeightWindowStore::GetLowerWeight() to
0043 avoid cases of invalidation.
0044 o Fixed initialization of data in copy-constructor for G4GeometryCell.
0045 + divisions:
0046 o Improved logic in G4PVDivision constructors and in method
0047 G4PVDivisionFactory::CreatePVDivision() in case of invalid construct.
0048 o Properly initialise Boolean flag 'bDivInTrap' in G4VParameterisationTrd
0049 constructor.
0050 o G4ParameterisationTrd: disabled unreachable error message in method
0051 G4ParameterisationTrdX::CheckParametersValidity().
0052 o Removed uninitialised member in G4ParameterisationTrdX and correction
0053 in method ComputeSolid().
0054 o Get rid of unnecessary virtual specification for leaf classes in the
0055 hierarchy.
0056 + magneticfield:
0057 o Fixed cases of possible memory corruption in G4RKG3_Stepper.
0058 o Fixed case of unused array data member in G4ExactHelixStepper.
0059 o Removed useless code never executed in G4ConstRK4::Stepper().
0060 o Fixed initialization in constructor and fixed passing of time in
0061 G4NystromRK4.
0062 o Added dummy initialization of data members in constructors.
0063 + management:
0064 o Fixed compilation errors for code within G4GEOMETRY_VOXELDEBUG flag
0065 in G4GeometryManager and G4SmartVoxelHeader.
0066 o Added printout of voxel limits in G4SmartVoxelHeader::Buildnodes().
0067 o G4LogicalSurface: made virtual destructor and constructors not inline.
0068 o G4SmartVoxelHeader: fixed potential case of invalid iterator in
0069 deletion of test slices in BuildVoxelsWithinLimits().
0070 o G4GeometryManager: restore cout precision after printing voxel
0071 statistics.
0072 o Added dummy initialization of data members in constructors.
0073 + navigation:
0074 o Fix in G4GeomTestSegment::FindSomePoints(), to address problem
0075 report #980.
0076 o Fixed array out of bound error in G4MultipleNavigator and G4PathFinder
0077 constructors.
0078 o Fixed cout precision restoring where applicable.
0079 o Replaced use of DBL_MAX for distances with kInfinity in
0080 G4MultiNavigator and G4Navigator internals.
0081 o Added dummy initialisation of data members in constructors.
0082 + solids/BREPS:
0083 o Fixed possible leaks in G4BREPSolid::IsConvex() method,
0084 G4ToroidalSurface destructor, G4BezierSurface::ClipSurface() method
0085 and G4OsloMatrix construction.
0086 o Corrected possible dereferencing of null pointer in method
0087 G4BREPSolidSphere::DistanceToOut().
0088 o Corrected deletion of internal data in G4BSplineCurve::Project() method.
0089 o G4Assembly: corrected case of invalid iterator in destructor.
0090 o G4Hyperbola: corrected signature to internal Init() function to avoid
0091 parameter passed by value.
0092 o G4BSplineCurve: corrected initialization of null pointer in Project().
0093 o G4CompositeCurve, G4SurfaceBoundary: corrected cases of invalid
0094 iterator.
0095 o Some code cleanup in G4ConicalSurface, GCylindricalSurface and
0096 G4SpericalSurface.
0097 o Added dummy initialisation of static data where applicable.
0098 + solids/CSG:
0099 o G4Torus: fix in DistanceToOut(p,v,...) to address problem report #1081.
0100 Fixed call to internal method for finding roots, to avoid copy
0101 of sdt::vector() by parameters. Some cleanup to avoid unnecessary
0102 protected section and virtual table.
0103 o Fixed condition in G4Tubs::Inside(p) for point on surface.
0104 o Corrected use of std::fabs() in place of std::abs() in G4Tubs, G4Cons,
0105 G4Sphere and G4Torus. Use pre-computed half-tolerance constants in
0106 G4Torus.
0107 o Improved initialisation logic in several constructors.
0108 o Corrected cases of not-restored cout precision where applicable.
0109 + solids/specific:
0110 o Fix in G4TriangularFacet and G4TessellatedSolid to correct treatment
0111 of optical photon transport related to internal reflection at surface.
0112 Addresses problem report #1103.
0113 o G4ExtrudedSolid: eliminated requirement for clockwise ordering of
0114 polygon vertices. Added a check for vertices ordering; if vertices
0115 are defined anti-clockwise their ordering is reverted.
0116 Fix in polygon facet triangularization for consequent concave vertices.
0117 o Fixed deletion of internal arrays in CreatePolyhedron() for G4Polycone
0118 and G4Polyhedra.
0119 o G4EllipticalTube: extended implementation of SurfaceNormal(p) in
0120 agreement with canonical form.
0121 o Fixed cases of division by zero in G4VTwistSurface and G4TwistBoxSide.
0122 o Use INT_MAX as initialisation for max limits in G4SolidExtentList.
0123 o Fixed potential case of dereferencing null pointer in methods
0124 G4EllipticalTube::DistanceToOut(p,v), G4VCSGfaceted::DistanceToIn(p,v)
0125 and G4VCSGfaceted::DistanceToOut(p,v).
0126 o Fixed unecessary object copy as argument in method
0127 G4PolyhedraSide::IntersectSidePlane().
0128 o Replaced calls to std::abs() with std::fabs() where suitable.
0129 o Added dummy initialization of data members where applicable.
0130 + volumes:
0131 o Added Reset() method to G4ReflectionFactory for clearing maps of
0132 constituent and reflected volumes.
0133
0134 o Global:
0135 ------
0136 + More safe numerical computation of A13() and logA() methods in G4Pow.
0137 + Added INT_MAX and INT_MIN portability macros in templates.hh.
0138 + Fixed cases of invalidated iterator in G4StateManager.
0139 + Added dummy initialization of data members in constructors.
0140 + Changed date for patch-02 to release 9.3.
0141
0142 o Interfaces:
0143 ----------
0144 + Fixed call to contructor QKeySequence() in G4UIQt:AddButton() to
0145 allow for porting on gcc-4.5.0. Addresses problem report #1127.
0146
0147 o Particles:
0148 ---------
0149 + Fixed logic bug in G4ExcitedMesonConstructor::Add3PiMode().
0150 + G4MuonRadiativeDecayChannelWithSpin: corrected sign error.
0151
0152 o Persistency:
0153 -----------
0154 + Corrected dump of division axis in GDML writer.
0155 + Fixed printout of unit in G4GDMLWriteStructure for replicas and
0156 divisions, in the case of angles.
0157 + Added missing virtual destructor to G4tgbDetectorBuilder in ASCII module.
0158 Fixed signature for std::map in G4tgrVolumeMgr header.
0159 + Fixed recursive header inclusion in G4PersistencyCenter class in 'mctruth'
0160 module, and added dummy initialization of data members in constructors.
0161
0162 o Low-energy Electromagnetic Processes:
0163 ------------------------------------
0164 + Fixed bugs in G4AtomicDeexcitation and G4AugerTransition to cure crash
0165 on Windows.
0166 + Corrected return value case in method GetPhotoElectronDirection() in
0167 G4PhotoElectricAngularGeneratorSauterGavrila.
0168 Addressing problem report #1120.
0169
0170 o Standard Electromagnetic Processes:
0171 ----------------------------------
0172 + Adjoint:
0173 o G4AdjointAlongStepWeightCorrection: get rid of call to non-Standard
0174 isnan(), replaced by explicit validity test.
0175 o G4AdjointhMultipleScattering: removed unused header.
0176 + Polarisation:
0177 o Fix in G4ePolarizedIonisation to use default vector size of
0178 G4VEnergyLossProcess and avoid size mismatch in G4LossTableBuilder.
0179 + Standard:
0180 o G4eBremsstrahlungModel: fix in SelectRandomAtom() method.
0181 Addressing problem report #1115.
0182 o Fixed G4_O data in G4ASTARStopping.
0183 Fixed G4_Pt and G4_PROPANE data in G4PSTARStopping.
0184
0185 o Hadronic Processes:
0186 ------------------
0187 + models/cascade:
0188 o Fix for long-standing problem of energy non conservation in pion-nuclear
0189 reaction on very light nuclei (in particular He) in G4CascadeInterface.
0190 The workaround re-samples the interaction in the rare case when an
0191 unphysical final state with baryon number violation is generated.
0192 + models/CHIPS:
0193 o Fix in G4ChiralInvariantPhaseSpace to catch previously un-handled
0194 exceptions produced when a 'chipolino' pseudo-particle is produced by
0195 the model and thrown by Q4QEnvironment::Fragment; handles the case in
0196 which Q4QEnvironment returns a 90000000 fragment, and converts it to
0197 a gamma. Addressing problem report #1138.
0198 o Bug fix in G4QNucleus::ChoosePosition() for looping.
0199 o Fix in fragmentation module for run-time warning on Windows.
0200 + models/de_excitation:
0201 o Fixed numerical problem (division by zero) in G4GEMProbability.
0202 + models/neutron_hp:
0203 o Added safety for zero length cross-section table in
0204 G4NeutronHPFissionData. Addressing problem report #1118.
0205 o Add safety for negative value in G4NeutronHPInelasticCompFS.
0206 o Added model name in constructor of G4NeutronHPThermalScattering.
0207 Addressing problem report #1116.
0208 o Modified sampling in G4NeutronHPInelasticCompFS.
0209 o Fix bug about incidence energy in G4NeutronHPEnAngCorrelation.
0210 + models/parton_string/hadronization
0211 o Improved Lund string fragmentation.
0212 o Fixed inconsistency between LightFragmentationTest and Lund
0213 fragmentation.
0214 o Fixed problems of energy non-conservation in FTF.
0215 + models/photolepton_hadron/muon_nuclear:
0216 o G4MuNuclearInteraction: properly clear hadronic tracks PostStepDoIt().
0217 + models/util:
0218 o G4Fancy3DNucleus: added missing std:: to call to sort() algorithm.
0219
0220 o Generic Processes:
0221 -----------------
0222 + Biasing:
0223 o G4WeightWindowProcess: corrected call to method GetLowerWeight() in
0224 G4WeightWindowStore, after correction of mispelled name.
0225 + Optical:
0226 o Fix for backpainted surfaces to avoid applying twice reflectivity.
0227 Addressing problem report #1114.
0228 o Fixed sampling of 'theFacetNormal' for 'polishedbackpainted' material
0229 in G4OpBoundaryProcess::DielectricDielectric() method. Address problem
0230 reported on Hypernews Optical Processes Forum, thread #334.
0231 o Refashioned code in the case of type 'dielectric_dielect'.
0232 + Transportation:
0233 o Fix to G4Transportation to properly update the step flag which
0234 identifies the last step in a volume (applies for linear steps only,
0235 i.e. no field). Partially addressing problem report #1032.
0236
0237 o Run:
0238 ---
0239 + Corrected printing of number of events processed on run abortion.
0240 + Fixed definition of path for Windows in G4RunManager for random seeds
0241 directory: use '\' instead of '/' and suitable system command.
0242 + Use "const G4String&" as arguments and return value wherever applicable
0243 in G4RunManager and G4RunManagerKernel.
0244 + Added dummy initialisation of data members in constructors.
0245 + Use canonical form for exceptions in G4RunManager and added dummy return
0246 statements; same in G4VUserPhysicsList.
0247
0248 o Examples:
0249 --------
0250 + Migrated physics-lists to use particle-based multiple-scattering
0251 wherever necessary, and updated reference outputs.
0252 + advanced/human_phantom:
0253 o Added missing includes, causing compilation error.
0254 o Migrated physics-lists.
0255 o Corrected commands in some macros.
0256 + extended/geometry/olap:
0257 o Fixed compilation error for setting of kRadTolerance.
0258 o Removed inclusion of obsolete G4ParticleWithCuts header.
0259 + extended/persistency/gdml/G03:
0260 o Corrected selection of G4UItcsh in main(), to fix problem on Windows.
0261
0262 ----------------------------------------------------------------------------
0263
0264 Technical Notes
0265 ---------------
0266
0267 o This patch should be applied on top of relese 9.3.
0268 o Technical notes distributed for release 9.3 are also applicable and
0269 valid for this patch.
0270
0271 The code and rebuilt binary libraries for release 9.3 are available
0272 through our "Download" Web page:
0273 http://cern.ch/geant4/support/download.shtml
0274
0275 Please refer to the Geant4 User Documentation:
0276 http://cern.ch/geant4/support/userdocuments.shtml
0277 for further information about using Geant4.