Warning, /geant4/CHANGELOG/Patch4.10.0-1.txt is written in an unsupported language. File is not indexed.
0001
0002 Geant4 10.0 - patch-01 Release Notes
0003 ------------------------------------
0004
0005 28 February 2014
0006
0007 List of fixes included in this public patch since the public release 10.0:
0008
0009 o Configuration:
0010 -------------
0011 + CMake:
0012 o Include /opt/X11 paths for X11 and OpenGL on MacOS X Mavericks.
0013 o Added variables for G4LIB_{BUILD,USE}_EXPAT as for ZLIB and export
0014 them based on value of GEANT4_USE_SYSTEM_EXPAT.
0015 Addresses problem report #1567.
0016 o Added builtin zlib to list of features, added G4zlib to list of
0017 libraries when used; export them to geant4-config.
0018 Addresses problem report #1572.
0019 o Replaced use of GNU awk extension 'length' in geant4-config for
0020 determining number of datasets. Use return value of split function
0021 to get length of array. Addresses problem reported in item #1614
0022 in hypernews 'Installation and Configuration' forum.
0023 + GNUMake:
0024 o Fixed setting of -fPIC in MT-mode for Linux-g++, Linux-icc and
0025 Darwin targets.
0026
0027 o Analysis:
0028 --------
0029 + Updated to g4tools 1.7.1.
0030 Fixed performance issue observed for an ntuple with large numbers of
0031 columns reported in item #455 in hypernews 'Analysis' forum.
0032
0033 o Event:
0034 -----
0035 + Changed default value of Q (charge) for /gun/ion and /gun/ionL commands.
0036 Now electrons are fully stripped (i.e. Q = Z) if Q is not specified.
0037 + G4SPSPosDistribution::IsSourceConfined(): added protection against
0038 null pointer. Addressing problem report #1255.
0039
0040 o G3toG4:
0041 ------
0042 + Correction to CMake script: removed no longer existing package from
0043 dependency list.
0044
0045 o Geometry:
0046 --------
0047 + magneticfield:
0048 o Added call to G4Mag_EqRhs::SetChargeMomentumMass() from
0049 G4Mag_SpinEqRhs::SetChargeMomentumMass(), following report in
0050 item #210 in hypernews 'Fields' forum.
0051 + navigation:
0052 o Fixed implementation of SetNavigatorForTracking() in
0053 G4TransportationManager, to initialise active navigator and
0054 propagator-in-field with the new provided instance.
0055 Addressing problem report #1537.
0056 o Minor code cleanup in G4GlobalMagFieldMessenger.
0057 + solids/CSG:
0058 o Added correct cloning mechanism in G4U* wrappers.
0059 Addressing problem report #1553.
0060 o Simply reset polyhedron pointer to zero for modifiers of G4U* wrappers
0061 in parameterisation. Resolves crash in MT visualization when using
0062 USolids.
0063 + solids/specific:
0064 o Fix in G4GenericTrap::InsidePolygone() to check if p lies between
0065 the two extremes of the segment. Addressing problem report #1541.
0066 o Corrected cloning mechanism in G4U* wrappers.
0067 Addressing problem report #1553.
0068 o Simply reset polyhedron pointer to zero for modifiers of G4U* wrappers
0069 in parameterisation. Resolves crash in MT visualization when using
0070 USolids.
0071 o Removed left-over debug printout in G4Polycone::SetOriginalParameters().
0072 + solids/usolids:
0073 o Implemented precise safety in UTubs and UCons for SafetyFromOutside().
0074 Precise safety is used in UPolycone for calculation of SafetyFromOutside().
0075 o Fixed typo in SafetyFromInside() for UTubs for correct calculation of
0076 'safePhi'.
0077 o Corrected implementation of Clone() method in UBox, UTet, UTrd.
0078 Corrected cloning mechanism and copy constructor in G4USolid.
0079 Addressing problem report #1553.
0080 o UPolycone fixes: added validity check of shape for case when
0081 RMin > RMax; moved global bounding-box to be a class data member.
0082 Corrected implementation of DistanceToOut(p,v) for convexity and
0083 normals; corrected implementation of DistanceToOut(p,v) for stuck
0084 tracks due to DistanceToIn=DistanceToOut=0; corrected implementation
0085 of Inside() in case of OpenPhi.
0086 o Removed ResetPolyhedron() from G4USolid bridge class as not necessary;
0087 moved 'fPolyhedron' pointer to protected.
0088
0089 o Global:
0090 ------
0091 + G4PhysicsVector: small performance optimisation to avoid one division.
0092 + Fixed Coverity defects in G4Physics2DVector::Retrieve().
0093 + Implemented workaround to guarantee G4cout/G4cerr are initialized
0094 correctly before main function.
0095 + Added protections to avoid core dumps caused by division by zero
0096 and other minor updates in G4ConvergenceTester.
0097 + Updated date and version for 10.0.p01.
0098
0099 o Graphics Representations:
0100 ------------------------
0101 + Fixes defects reported by PVS static analysis tool.
0102 Some code cleanup.
0103
0104 o Electromagnetic Processes:
0105 -------------------------
0106 + DNA:
0107 o Fix in G4DNAMolecularMaterial to prevent segmentation fault in case a
0108 model is not created at initialisation time.
0109 + Low Energy:
0110 o Suppressed exception warning issued by some Penelope models;
0111 Controlled by verbosity flag now for diagnostics.
0112 o Allow for (AutoLock-protected) creation on-the-fly of tables in
0113 SampleSecondaries(); avoid crash when the loop of SampleSecondaries()
0114 is inkoved in a unit test.
0115 o Fixed Coverity report in G4LivermorePhotoElectricModel.
0116 + Standard:
0117 o Bug fix in G4UrbanMscModel; 1st normal step in StepLimitType 2 mode
0118 was not randomized.
0119 Move methods ComputeTheta0,SimpleScattering(), SampleDisplacement(),
0120 LatCorrelation() to be inlined for small CPU speedup.
0121 o Fix in G4UniversalFluctuation for energy loss for extreme small cuts.
0122 Bug fix in "ionization" computing (small observable effect).
0123 Replaced G4Pow::expA() by faster G4Exp().
0124 Reduced number of divisions by addition of extra class members.
0125 o G4NuclearStopping: fix to avoid changing ion charge.
0126 o G4ionIonisation: do not instantiate extra model at high enegry if
0127 G4IonParameterisedModel is used. Improved printout at initialisation.
0128 o G4SauterGavrilaAngularDistribution: use Penelope 2008 sampling
0129 algorithm, as it is more effective; distribution itself is unchanged.
0130 o G4GoudsmitSaundersonMscModel, G4GoudsmitSaundersonTable: use G4Log(),
0131 and G4Exp().
0132 o G4eCoulombScatteringModel, G4eSingleCoulombScatteringModel: get pointer
0133 to the vector of cuts from parameters of Initialise(..) method and not
0134 from G4ProductionCutsTable; more convenient for unit tests.
0135 o Fixed Coverity defects.
0136 + Utils:
0137 o G4VEnergyLossProcess: fixed division by zero for the case of an ion
0138 with charge zero.
0139 o G4EmCalculator: in FindCouple() method, implemented loop over all
0140 regions if argument pointer to region of the method is null.
0141 Added G4Exception if G4MaterialCutsCouple is not found out and
0142 also inside GetCSDARange() when CSDA table is not initialized.
0143 o G4LossTableMananger: fixed bug for initialisation of several runs
0144 in one job (affecting muons and e- and providing non-reproducibility)
0145 o G4LossTableMananger, G4EmProcessOptions: define default verbosity=0
0146 for worker thread, so summary on EM processes is not duplicated.
0147 o G4VEnergyLossProcess, G4VEmProcess: define fixed precison=6 for
0148 initialisation printout.
0149 + xrays:
0150 o Make some class members and methods static in G4Cerenkov and
0151 G4Scintillation.
0152
0153 o Generic Processes:
0154 -----------------
0155 + Cuts:
0156 o Fixed verbosity warning in G4ProductionCutsTable.
0157 + Decay:
0158 o Fixed problem of wrong global time for secondaries in case that the
0159 primary track stops during along step. Addressing problem report #1555.
0160 o Replaced use of DBL_MAX with age of the universe for stable particle
0161 life time. Addressing problem report #1569.
0162 + Management:
0163 o Fixed verbosity warning in G4ProcessTable.
0164 + Optical:
0165 o Make 'WLSTimeGeneratorProfile' and 'UseTimeProfile' static in G4OpWLS.
0166
0167 o Hadronic Processes:
0168 ------------------
0169 + cross_sections:
0170 o Removed wrong if statement against zero cross-section in
0171 G4CrossSectionDataStore::SampleZandA(). Correct fix for the crashes
0172 observed in QBBC.
0173 o Disabled threshold for the inelastic cross-section in
0174 G4BGGNucleonInelasticXS.
0175 + management:
0176 o Added printout of energy momentum check in G4HadronicProcess.
0177 + models/binary_cascade:
0178 o G4BinaryLightIoncascade::FuseNucleiAndPrompound(): added protection at
0179 low energy: available energy is not sufficient to create a fragment.
0180 o G4BinaryLightIonReaction: fix for Coverity report on small leak.
0181 o Added printout of particle name in check for valid type of projectile
0182 in G4BinaryCasacde::ApplyYourself().
0183 + models/de_excitation:
0184 o G4ExcitationHandler: fixed minor memory leak in the case when
0185 FermiBreakUp has no final states available; reported in item
0186 #1371 in hypernews Hadronic forum.
0187 o G4NuclearLevelManager: trivial fix for defect reported by Coverity.
0188 + models/inclxx:
0189 o Fix for occasionally produced excited nucleon as a pre-fragment.
0190 o Added getter for INCL Config object in the G4INCLInterfaceStore.
0191 + models/lend:
0192 o Correction to CMake scripts: removed no longer existing package
0193 from dependency list.
0194 + models/neutron_hp:
0195 o Fixed problem in reading compressed data files in
0196 G4NeutronHPThermalScatteringData. Addressing problem report #1543.
0197 o Correction to CMake scripts: removed no longer existing package
0198 from dependency list.
0199 + models/radioactive_decay:
0200 o Fixed memory leak in G4RadioactiveDecay destructor by deleting
0201 decay table map.
0202 + models/theo_high_energy:
0203 o Correction to CMake scripts: removed no longer existing package
0204 from dependency list.
0205 + models/utils:
0206 o Use G4Allocator for allocation of G4Fragment objects.
0207 Should help reducing memory churn and improve CPU performance.
0208 Removed counter of warnings; added exception warning in verbose mode.
0209 + stopping:
0210 o G4MuMinusCapturePrecompound: fixed case of infinite loop for mu-
0211 capture. Addressing problem report #1536.
0212 + util:
0213 o Cleanup of automatic TLS data conversion in G4ReactionProduct,
0214 G4HadSignalHandler and G4HadronicWhiteBoard.
0215
0216 o Interfaces:
0217 ----------
0218 + Explicitly set the LC_NUMERIC locale to "C" in G4Qt.
0219 Addressing problem report #1487.
0220 Fixed problem with resizing the QGLwidget when scene is opened from UI.
0221
0222 o Particles:
0223 ---------
0224 + G4ParticleDefinition::DumpTable() displays correct stability
0225 information for a general ion as long as it is known to
0226 G4NuclideTable. Addressing to bug report #1560.
0227 + Fixed properties for heavy anti-baryons G4AntiLambdab, G4AntiSigmabZero
0228 and G4AntiLambdacPlus. Addressing problem report #1571.
0229 + Minor fix in G4ParticleTable::GetParticle() method.
0230
0231 o Physics Lists:
0232 -------------
0233 + Correction to CMake scripts: removed no longer existing packages from
0234 dependency list.
0235 + constructors/electromagnetic:
0236 o G4EmStandardPhysics_option4, G4EmLivermorePhysics, G4EmPenelopePhysics:
0237 use RangeFactor=0.01 to increase simulation accuracy.
0238 Use G4UrbanMscModel for pions, kaons, protons instead of WentzelVI
0239 to have more accurate ranges of low-energy hadrons (in particular,
0240 protons).
0241 o G4EmStandardPhysics_option4, G4EmLivermorePhysics, G4EmPenelopePhysics,
0242 G4EmStandardPhysics_option3: use the same order of processes for e+-,
0243 does not change any result but makes more easy comparing log files for
0244 different EM physics options.
0245 o G4EmStandardPhysics, G4EmStandardPhysics_option1,
0246 G4EmStandardPhysics_option2: added Coulomb scattering process for
0247 pions, kaons, proton, anti-proton in order to have more smooth
0248 transition from EM to hadronic scattering.
0249 o Fixed race condision issue in OpticalPhysics; also specify command
0250 /optics_engine/setOpProcessUse not available for 'Idle' state.
0251 o Avoid static G4Scintillation method invoked through a pointer.
0252 + constructors/ions:
0253 o INCL++ was incorrectly used up to 48 GeV for deuteron, triton,
0254 He3 and alpha. Changed the upper limit for ions to 18*3 GeV.
0255 + lists:
0256 o Registered model to handle neutron capture above 20 MeV in in LBE list.
0257 Addressing problem report #1562.
0258
0259 o Run:
0260 ---
0261 + Changed order of setting world volume pointer to the transportation
0262 manager for worker thread to be the same as the master thread and the
0263 sequential mode, i.e. prior to invoking ConstructSDandField().
0264 Addressing problem report #1561.
0265 + Making sure worker threads re-build physics tables as well when the
0266 master thread is requested to rebuild.
0267
0268 o Track:
0269 -----
0270 + Corrected message from CheckIt() in G4VParticleChange and
0271 G4ParticleChangeForDecay.
0272
0273 o Examples:
0274 --------
0275 + Updated reference outputs.
0276 + advanced/amsEcal:
0277 o Added protection against division by zero in RunAction.
0278 Addressing problem report #1522.
0279 + advanced/ChargeExchangeMC:
0280 o Fixed few compiler warnings for shadowed variables).
0281 FTFP_BERT replaces deprecated QGSP_BERT.
0282 + advanced/hadrontherapy:
0283 o Fixed missing inizialization of data in PassiveProtonBeamLine class.
0284 + advanced/nanobeam:
0285 o Made code thread safe to overcome unsafe CLHEP matrix inversion
0286 in RunAction.
0287 + advanced/xray_fluorescence:
0288 o Fixed shadowed variables and compilation errors when AIDA is available.
0289 + extended/analysis/B1Con:
0290 o Increased number of events of run1.mac.
0291 + extended/electromagnetic/TestEm4:
0292 o Updated vis.mac macro and printout from run.
0293 + extended/electromagnetic/TestEm8:
0294 o HistoManager: more accurate computation of mean energy deposition;
0295 fixed output of rms of mean energy.
0296 + extended/exoticphysics/phonon:
0297 o Fix in CMake script to copy data in build directory.
0298 + extended/field/field04:
0299 o Replaced Update() method and commands with ReinitializeGeometry().
0300 Clean volumes and solids stores in Construct().
0301 o Updated gui.mac: allow for execution of vis.mac first to make the
0302 command added in menus available. Corrected wireframe parameter.
0303 o Avoid static method being invoked by a pointer. Fixed uninitialized
0304 variables in F04GlobalField.
0305 + extended/field/field05:
0306 o Corrected History.
0307 + extended/optical/LXe:
0308 o Updated gui.mac: allow for execution of vis.mac first to make the
0309 command added in menus available. Corrected wireframe parameter.
0310 o Rearrange /optics_engine commands in LXe.in, according to what
0311 is allowed through G4OpticalPhysics.
0312 + extended/optical/OpNovice:
0313 o Fixed race condision issue in OpNovicePhysicsList.
0314 Addressing problem report #1539.
0315 Limit invokation of static method only from master/sequential.
0316 o Updated gui.mac: allow for execution of vis.mac first to make the
0317 command added in menus available. Corrected wireframe parameter.
0318 + extended/optical/wls:
0319 o Updated gui.mac: allow for execution of vis.mac first to make the
0320 command added in menus available. Corrected wireframe parameter.
0321 + extended/radioactivedecay/rdecay02:
0322 o Fixed problem identified in boudary chack mode in exrdmHisto::AddRow().
0323 o Fix in exrdmAnalysisManager::EndOfEvent().
0324
0325 ----------------------------------------------------------------------------
0326
0327 Technical Notes
0328 ---------------
0329
0330 o This patch should be applied on top of release 10.0.
0331 o Technical notes distributed for release 10.0 are also applicable and
0332 valid for this patch.
0333
0334 The code and rebuilt binary libraries for release 10.0.p01 are available
0335 through our "Download" Web page:
0336 http://cern.ch/geant4/support/download.shtml
0337
0338 Please refer to the Geant4 User Documentation:
0339 http://cern.ch/geant4/support/userdocuments.shtml
0340 for further information about using Geant4.