Warning, /geant4/CHANGELOG/Beta4.10.3-1.txt is written in an unsupported language. File is not indexed.
0001
0002 Geant4 10.3-beta-01 Release Notes
0003 ---------------------------------
0004
0005 30 June 2016
0006
0007 Migration Notes & Main New Features
0008 -----------------------------------
0009
0010 o Introduced new utility class G4MTBarrier implementing a synchronization
0011 point between threads.
0012 o Added handling of multiple actions to be instantiated and handled by
0013 user code. Added G4MultiRunAction, G4MultiPrimaryAction and
0014 G4Multi{Stepping,Tracking}Action.
0015 o Added ability to scale shapes' dimension in X, Y and Z.
0016 Added possibility to import/export scaled shapes in GDML.
0017 o Updated properties of particles according to PDG-2015.
0018 o Introducing floating level base to G4Ions and related classes.
0019 o Disabled multiple-scattering at post-step for position change,
0020 now all happening along-step.
0021 o All EM parameters now handled by G4EmParameters class and can be modified
0022 via UI commands, G4EmProcessOptions class is obsolete and will be
0023 removed soon.
0024 o Major revision of the QGS final-state model (note: this was already
0025 included in 10.2.beta, but did not enter in 10.2 due to the missing
0026 re-tuning of parameters): implemented Reggeon cascading and "Fermi motion";
0027 new algorithm for the determination of the kinematical properties of
0028 partons; improved formation of the residual nucleus.
0029 o New tuning of the FTF model parameters; introduced smearing of delta-isobar
0030 mass and improved di-quark fragmentation into baryons in Lund string
0031 fragmentation.
0032 o Introduced drawing and filtering by touched volume in visualization.
0033 o New data sets G4ENSDFSTATE-1.3.1, G4RadioactiveDecay-4.4.1 and G4TENDL-1.2.
0034
0035
0036 ----------------------------------------------------------------------------
0037
0038 Technical Notes
0039 ---------------
0040
0041 o Tested platforms:
0042 + Linux, gcc-4.8.4.
0043 Tested on 64 bit architectures (Intel or AMD) with CERN CentOS
0044 Linux 7 (CC7) (based on CentOS Linux 7).
0045 Versions of Geant4 have also been compiled successfully on other
0046 Linux distributions, Ubuntu, Debian, Suse or other RedHat systems.
0047 + MacOSX 10.11, clang-3.7 (Apple LLVM/Clang-7.3.0)
0048 * For multi-threading on MacOSX, -clang- compiler has to be used.
0049 + Windows/10 with Visual C++ 14.0 (Visual Studio 2015)
0050 * Multi-threading mode currently -not- supported on Windows.
0051
0052 o More verified configurations:
0053 + Linux, gcc-4.9.4, gcc-5.3.0, gcc-6.1.0
0054 + Linux, Intel-icc 15.0, 16.0.
0055 + MacOSX 10.10 with clang-3.6
0056 + MacOSX 10.9 with clang-3.5
0057 + Linux for Intel Xeon Phi with Intel-icc 15.0, 16.0
0058 (gcc-4.9 compatibility layer)
0059
0060 o Geant4 10.3-beta-01 has been tested using CLHEP-2.3.3.0, required
0061 for external installation of the CLHEP library.
0062
0063 Please refer to the Geant4 User Documentation:
0064 http://cern.ch/geant4/support/userdocuments.shtml
0065 for further information about using Geant4.
0066
0067 ----------------------------------------------------------------------------
0068
0069 List of features and fixes included in this Beta release since 10.2.p02:
0070
0071 o Configuration:
0072 -------------
0073 + CMake:
0074 o Set CLHEP-2.3.3.0 as the required version for external CLHEP library.
0075 o Updated version of data sets:
0076 G4ENSDFSTATE-1.3.1, G4RadioactiveDecay-4.4.1 and G4TENDL-1.2.
0077 Updated tags for 10.3-beta.
0078
0079 o Analysis:
0080 --------
0081 + Fixed incompatibility with ROOT 5.x and 6.x formats.
0082 + Fixed compilation warnings on Windows-64.
0083 + Updated to g4tools version 1.27.4 (see History_tools).
0084
0085 o Event:
0086 -----
0087 + Introducing G4MultiEventAction to allow multiple user actions
0088 in the same job.
0089
0090 o Externals:
0091 ---------
0092 + Updated CLHEP module to version 2.3.3.0:
0093 o Added use_atomic.h header to use std::atomic if compiler supports it.
0094 o MixMaxRng: corrected initialisation and use of 'numberOfEngines'
0095 when more than one threads calls the constructor.
0096 Use simple loop for flatArray(); engine built-in function turns out
0097 to be extremely slow and unefficient.
0098 Use seed_spbox() for seeding MixMax with single seed.
0099 Avoid hard-coded constant for initialisation of VECTOR_STATE_SIZE in
0100 MixMaxRng, to directly use actual value of "N" from mixmax generator.
0101 Corrected check for counter range in method getState().
0102 Changed default number of N in mixmax generator to 17 (was 256).
0103 Removed use of obsolete 'register' keyword.
0104 Provided new skipping coefficients for the new value of N and for
0105 the optional case N=8.
0106 o HepRandom: revised settings of "defaults" to use a single
0107 thread_local pointer.
0108
0109 o Geometry:
0110 --------
0111 + magneticfield:
0112 o Added new stepper classes G4BogackiShampine23 (BS23),
0113 G4BogackiShampine45 (BS45) and DormandPrince745 (DP45),
0114 implementing third order (BS23) and fifth order (BS45, DP45)
0115 embedded RK tableaus.
0116 o Added new stepper classes embedded RK method: DoLoMcPriRK34 (6-stage
0117 3/4 RK, interpolation), DormandPrinceRK56 (9-stage 5/6 RK,
0118 interpolation, FSAL-able) and DormandPrinceRK78 (13-stage 7/8 RK,
0119 interpolation).
0120 o Added TsitourasRK45 stepper.
0121 o First version of FSAL classes: FSAL Integrator Driver (concrete,
0122 stand-alone driver); FSAL Integrator Stepper (base class);
0123 FBogackiShampine45 (FSAL-version of BogackiShampine45 stepper);
0124 FDormandPrince745 (FSAL-version of FDormandPrince745 stepper).
0125 o G4MagIntegratorStepper: added counter for calls to equation RHS,
0126 with Get/Reset() methods.
0127 o G4HelixMixedStepper: fixes and added new (5th order) stepper choices.
0128 o Fix in G4CashKarp for the size of arrays holding intermediate values.
0129 + management:
0130 o Added G4ScaleTransform class for Cartesian scaling transformations.
0131 o Introduced G4BoundingEnvelope helper class to be used for the
0132 calculation of the extent of a solid within the limits defined by
0133 the G4VoxelLimits object.
0134 o Properly use 3D transformations in G4ReflectedSolid. Removed unused
0135 affine-transformation data and related methods; removed not used cached
0136 inverse transformation. Simplified code.
0137 Re-implemented CalculateExtent() to use new class G4BoundingEnvelope.
0138 + solids/Boolean:
0139 o Added new class G4ScaledSolid providing ability to scale dimensions of
0140 a shape in X, Y or Z.
0141 o Boosted computation of GetPointOnSurface() for G4BooleanSolid;
0142 reimplemented algorithm, using cached list of primitives.
0143 o Added warning in G4BooleanSolid::GetPointOnSurface() in case of non
0144 convergence after fixed number of trials.
0145 + solids/specific:
0146 o Revised implementation for GetSurfaceArea() and GetCubicVolume() in
0147 G4GenericTrap.
0148 o Added 'const' qualifier for methods in G4ExtrudedSolid.
0149 Added CheckPolygon() to remove collinear and coincident points from
0150 polygons.
0151 o Improved algorithms for computation of area in G4TriangularFacet and
0152 G4QuadrangularFacet. Added post-const qualifier to GetArea().
0153 o G4QuadrangularFacet: added exhaustive tests in constructor to catch
0154 potential problems with a quadrangular facet: collinear vertices, non
0155 planar surface, degenerate, concave or self intersecting quadrilateral.
0156 o G4TriangularFacet: improved test in constructor to detect degenerate
0157 (too small or too narrow) triangles.
0158
0159 o Global:
0160 ------
0161 + Added 'us' and 'ps' units symbols for microsend and picosecond
0162 respectively to G4UnitsTable. Requiring new CLHEP library 2.3.3.0
0163 for external CLHEP library.
0164 + Converted all units and constants from "static const" to "static
0165 constexpr".
0166 + Introduced new utility class G4MTBarrier implementing a synchronization
0167 point between threads.
0168 + Changed exception code in G4TWorkspacePool from G4TWorkspacePool
0169 to "WorkspaceNN".
0170 + Changed date for release 10.3-beta.
0171
0172 o Materials:
0173 ---------
0174 + G4DensityEffectData, G4IonisParamMat: fixed density effect parameters
0175 corrections for the case when NIST mean ionisation potential is not equal
0176 to that parameter in Shternheimer table.
0177 + G4NistElementBuilder, G4NistMaterialBuilder: added access to the mean
0178 ionisation potential; put liquid water in front of the list of NIST
0179 materials (index=0), so pure materials can be easier accessed via atomic
0180 number (Z > 0).
0181 + Added new class G4AtomicShells_EADL which extends shell data up to Z=120.
0182 + G4MaterialPropertiesTable: moved complex methods from inline to source.
0183 + G4UCNMicroRoughnessHelper: all methods declared as const.
0184 + G4NistManager, G4NistMaterialBuilder, G4NistElementBuilder: added new
0185 const methods FindElement(), FindMaterial() and FindSimpleMaterial(),
0186 for possible run-time use in MT mode.
0187 + G4Material: avoid deletion of G4MaterialPropertyTable.
0188 + G4Element: added method GetZ_asInt().
0189 + G4AtomicShells, G4SandiaTable: substituted asserts by G4Exception.
0190 + Code cleanup; adoption of nullptr, use of const/static.
0191
0192 o Particles:
0193 ---------
0194 + Updated properties of particles according to PDG-2015.
0195 + Introducing floating level base to G4Ions and related classes.
0196 Migrated G4NuclideTable to the new floating level base scheme;
0197 temporarily disable new scheme for G4IsotopeMagneticMomentTable.
0198 + Fixed G4IonTable::GetIon() with non-zero level.
0199 + Changed default life of ion and hyper nucleus from -1 to 0.
0200 + Fixed Coverity defects.
0201
0202 o Persistency:
0203 -----------
0204 + GDML:
0205 o Added ability to automatically export the names of sensitive detectors
0206 as auxiliary information.
0207 o Added ability to import and export scaled shapes. Extended GDML schema
0208 by adding "scaledSolid" tag supporting scaled shapes.
0209 o New GDML schema version 3.1.4 (files: gdml.xsd, gdml_solids.xsd).
0210
0211 o Physics Lists:
0212 -------------
0213 + Builders:
0214 o Disabled multiple-scattering at post-step in OrderingParameterTable.
0215 + Constructors:
0216 o electromagnetic:
0217 - Added SetScintillationTrackInfo() method to G4OpticalPhysics with
0218 associated command in G4OpticalPhysicsMessenger.
0219 Fixed memory leak in G4OpticalPhysicsMessenger.
0220 - Partial fix for allowing calls to optical UI commands in "PreInit"
0221 state. Partially addressing problem report #1832.
0222 - G4EmStandardPhysics_option3, option4: added process of e+e- pair
0223 creation by e+ and e-; enabled lateral displacement for muons and
0224 hadrons.
0225 - G4EmStandardPhysicsGS: set default range factor to 0.1.
0226 - DNA and ModelActivator constructors: corrected model/process names;
0227 adjusted high energy threshold of solvation (kill) in respect to the
0228 energy range of the elastic model.
0229 Added G4DNAElectronSolvation to all DNA constructors.
0230 - Updated G4EmDNAPhysics_option5 and G4EmDNAChemistry.
0231 - Updated G4EmDNAPhysics_option7 constructor.
0232 - Updated G4EmModelActivator. Fixed activation of DNA models.
0233 Use Uehara model with chemistry. Corrected elastic process name
0234 for ions.
0235 - Added flag and command for whether or not to call InvokeSD() method
0236 of G4OpBoundaryProcess.
0237 - Fixed G4Exception message in G4OpticalPhysicsMessenger.
0238 - Fixed Coverity defects.
0239 o decay:
0240 - Added G4UnknownDecayPhysics constructor.
0241 - G4RadioactiveDecayPhysics: enabled atomic de-excitation by the call
0242 to EM parameters in ConstructProcess() method.
0243 + Lists:
0244 o FTFP_BERT_TRV: Switch on the low-mass diffraction dissociation
0245 used in G4HadronHElasticPhysics.
0246 Use GS multiple scattering with the most precise "error-free"
0247 stepping instead of the default (Opt0), for the purpose of studying
0248 the impact of multiple scattering on hadronic showers.
0249 o Moved code to be inline in G4RegisterPhysLists so that it gets
0250 compiled as part of the G4PhysListRegistry compilation unit.
0251 This ensures that all the physics lists declared to the registry are
0252 referenced by it such that the linker will include them if libraries
0253 are built statically.
0254
0255 o Electromagnetic Processes:
0256 -------------------------
0257 + DNA:
0258 o G4DNAScreenedRutherfordElasticModel: modified handling of energy
0259 boundaries at init time. Deprecated SetKillBelowThreshold() method;
0260 modified initialisation to prevent erasing/rewriting data.
0261 o G4DNAChemistryManager: reversed logic in CreateWaterMolecule()
0262 for interface with physics models.
0263 o G4DNAChampionElasticModel: rearranged declaration of attributes.
0264 Deprecated GetKillBelowThreshold() method; removed attributes;
0265 modified Theta() method. Reset check ekin >= LowEnergyLimit().
0266 Added missing computation of 'sigma'.
0267 o G4DNAUeharaScreenedRutherfordElasticModel: added exception at init
0268 time if model is used for anything other than e-.
0269 Deprecated SetKillBelowThreshold() and GetKillBelowThreshold() methods,
0270 use G4LowECapture or G4DNAElectronSolvatation; modified
0271 SelectHighEnergyLimit() method; removed attributes.
0272 Added possibility to extend applicability limit.
0273 o G4DNAChampionElasticModel, G4DNAUeharaScreenedRutherfordElasticModel:
0274 added pre-processor flag to control Verbose check mode; checking energy
0275 boundaries in Initialise(), removed call to G4Electron; cleanup in
0276 CrossSectionPerVolume by removing unnecessary checks and calls to map;
0277 removed energy checks in SampleSecondaries().
0278 o Updated fast computation of G4DNAScreenRutherfordElasticModel and
0279 G4DNAUeharaScreenedRutherfordElasticModel.
0280 o Renamed class G4DNAElectronSolvatation to G4DNAElectronSolvation.
0281 o G4DNAOneStepThermalizationModel: using pre-processor flag to control
0282 check mode verbosity; removed call to G4Electron at initialization.
0283 o G4DNATransformElectronModel: using pre-processor flag to control check
0284 mode verbosity; removed call to G4Electron at initialization; added
0285 check for creation of solvated electron.
0286 o G4MoleculeCounter: at initialization time, prevent creating entries
0287 for unregistered molecule definition.
0288 Removed check of c++ version for unique_ptr/auto_ptr selection.
0289 o G4DNAMeltonAttachmentModel, G4DNASancheExcitationModel: removed usage
0290 of internal energy boundaries.
0291 o G4DNASancheExcitationModel: removed warning when SANCHE_VERBOSE is OFF.
0292 o G4VUserChemistryList: added flag; some code cleanup.
0293 o Added nrj extensibility to SR and USR models.
0294 o Replaced usage of std::exp() by G4Exp().
0295 + High Energy:
0296 o Use C++11 features explicit, override, delete, nullptr.
0297 + Muons:
0298 o G4ePairProduction: new process e+e- pair production by e+-.
0299 o Use C++11 features explicit, override, delete, nullptr.
0300 + Polarisation:
0301 o G4PolarizedCompton, G4eplusPolarizedAnnihilation,
0302 G4ePolarisedIonisation: in PostStepGPIL(), use cached values of
0303 'currentInteractionLength'; fixes problem at boundaries where
0304 updated value was incorrectly used.
0305 o C++11 migrations: explicit, override, delete operators on function
0306 declarations; remaining nullptr; write floats/doubles with '.'.
0307 Use C++11 features nullptr and range-based for loop in
0308 G4PolarizationManager.
0309 + Standard:
0310 o G4UrbanMscModel: use new lateral displacement algorithm in opt-3
0311 and opt-4 physics-lists. Modified randomisation of "true path length".
0312 o G4UniversalFluctuation: fixed bug in Glandz part, Gaussian sampling.
0313 The sampling is symmetrical around 'emean' now. Some code cleanup.
0314 o G4SeltzerBergerModel: fixed data handling for Z > 92.
0315 Addressing problem report #1870, about invalid read of data
0316 at run time.
0317 o G4eBremsstrahlungRelModel: change LPM constant such that it gives
0318 suppression variable consistent with Migdal's one; fixes small issue in
0319 LPM function computation.
0320 o G4alphaIonisation, G4hIonisation, G4ionIonisation: do not define
0321 StepFunction in constructor.
0322 o Fixed shadowing compilation warnings in G4GoudsmitSaundersonMscModel
0323 for 'ps'.
0324 o G4ASTARStopping, G4PSTARStopping, G4NISTStoppingData, G4BraggModel:
0325 data arrays become float, computation is left double.
0326 o G4BraggModel, G4BraggIonModel, G4BetheBlochModel: use float for local
0327 static data.
0328 o Added c++11 keywords: explicit, final, override, delete; use nullptr
0329 and use G4Element::GetZasInt().
0330 + Utils:
0331 o G4VEmProcess, G4EmModelManager: added extra methods to access models.
0332 o G4VEnegryLossProcess, G4EmCorrections: removed unused class members.
0333 o Use C++11 keywords explicit, override, delete and nullptr.
0334 o G4EmParameters, G4EmParametersMessenger: moved remaining parameters
0335 from G4EmProcessOptions, which now becomes obsolete.
0336 o G4EmCalculator, G4LossTableBuilder, G4LossTableManager, G4VMscModel,
0337 G4VEmModel, G4VEmProcess, G4VEnergyLossProcess: use only G4EmParameters
0338 class interfaces for initialisation.
0339 o G4NuclearFormfactorType: added new enumerator.
0340 o G4VMultipleScattering: moved position change to AlongStep.
0341 Added method NumberOfModels().
0342 o G4EmModelManager: reviewed and fixed model configuration for DNA
0343 physics.
0344 o G4EmParameters: allow to change parameters only from the master thread
0345 and only at PreInit or Idle states.
0346 o G4EmCorrections: make part of data static, make internal vectors static,
0347 shared between threads.
0348 o G4LossTableManager, G4VEmModel, G4VMultipleScattering: minor cleanup of
0349 static const data.
0350 o G4VEmModel, G4VAtomDeexcitation, G4EmCalculator: use new method
0351 GetZasInt() from G4Element.
0352 o G4VEmModel: fix in SelectRandomAtomNumber() method. Fixed destruction
0353 in MT mode.
0354 o G4VAtomDeexcitation: fixed possible data race at initialistion.
0355 Extended printout at initialisation.
0356 Completed migration to G4EmParameters interface.
0357 o G4AtomicShell: make methods inlined.
0358 o G4DummyModel: set default low-enegry limit to 0 (needed for DNA).
0359 o G4VMultipleScattering, G4EmModelManager, G4LossTableManager: improved
0360 debug printout.
0361 o Fixed Coverity defects.
0362 + Xrays:
0363 o Added new class G4ScintillationTrackInformation and use it in
0364 G4Scintillation.
0365 o Use C++11 features explicit, override, delete, nullptr.
0366
0367 o Generic Processes:
0368 -----------------
0369 - Biasing:
0370 o Checked for unbounded while loop in G4ProcessPlacer.
0371 + Decay:
0372 o Added better diagnostics in exception in G4Decay::DecayIt().
0373 + Optical:
0374 o Added flag for InvokeSD() method call in G4OpBoundaryProcess.
0375
0376 o Hadronic Processes:
0377 ------------------
0378 + cross_sections
0379 o Checked do-while loops for potential infinite loops.
0380 + management
0381 o G4HadronicProcess: added flag for "integral" approach to take into
0382 account cross-section change at a step. Do not create new materials
0383 in GetElementCrossSection(), just try to find existing simple
0384 G4Material ones instead. Adopt C++11 keyword nullptr.
0385 o G4HadronicProcessStore: call initialisation of all
0386 G4HadronicInteractions.
0387 + models/coherent_elastic
0388 o G4LMsdGenerator: restored hadronic internal decay scheme allowing for
0389 stable decay of the Roper resonances.
0390 + models/de_excitation
0391 o G4EvaporationChannel, G4EvaporationProbability: fixed kinematics
0392 and added discrete excitation energy for the residual fragment
0393 if the excitation is below maximum known level energy.
0394 o G4NuclearLevelData: added extra methods allowing to access the maximum
0395 level energy per isotope in level DB. Added method FindLevel() allowing
0396 to find discrete level for any consumer model.
0397 o G4DeexPrecoParameters, G4NuclearLevelData: added new class for
0398 parameters.
0399 o G4EvaporationProbability: fixed bug in computation of probability
0400 density function; use new method FindLevel() in G4NuclearLevelData when
0401 sampling kinetic energy of emitted particles; changed interface for
0402 sampling method. More detailed grid for probabilities.
0403 Use same sampling algorithm as in the pre-compound model (do not
0404 interpolate probability).
0405 o G4EvaporationChannel: use new interface to the sampling of energy.
0406 o Updated list of parameters; added full list of pre-coumpound parameters
0407 and extra de-excitation ones. Allow to change parameters only from the
0408 master thread and only at PreInit or Idle states.
0409 o G4ExcitationHandler: allow addition of new evaporation or FermiBreakUp
0410 models after the initialisation of the handler.
0411 Removed G4Exception when MF model is called, instead increase default
0412 limit on excitation energy per nucleon to 100GeV.
0413 o G4ExcitationHandler, G4EvaporationChannel, G4EvaporationProbability,
0414 G4NeutronRadCapture: use G4DeexPrecoParameters for initialisation;
0415 initialisation is done once at the first event.
0416 o G4NucLevel, G4LevelManager, G4LevelReader, G4PhotonEvaporation: changed
0417 data structure for the transition data; instead of final energy, index
0418 of final level, added multi-polarity of the transition.
0419 This will allow for correlated gamma emission.
0420 o G4EvaporationChannel, G4EvaporationProbability: improved initialisation
0421 of run time members
0422 o G4NuclearLevelData: improved FindLevel() method.
0423 o G4VEvaporationChannel, G4LevelReader, G4ExcitationHandler,
0424 G4LevelReader: removed commented lines, removed empty descructors.
0425 o G4VEvaporation, G4Evaporation, G4VFermiBreakUp, G4FermiBreakUp,
0426 G4PhotonEvaporation, G4ExcitationHandler: cleaned up initialisation;
0427 added G4VFermiBreakUp pure virtual methods allowing to have alternative
0428 models.
0429 o G4Evaporation: allow change of the channel factory after initialisation.
0430 o G4NeutronRadCapture: added initialisation of G4PhotonEvaporation.
0431 o G4DeexPrecoParameters, Evaporation: use default channel factory.
0432 o G4NuclearLevelData, G4LevelManager: added method to access low-edge
0433 levels.
0434 o G4KalbachCrossSection: more smooth inverse cross section for transitions
0435 of high energy.
0436 o Removed specific GEMCoulombBarrier classes per ion.
0437 o G4PhotonEvaporation: rationalised initialisation in case radioactive
0438 decay initialisation is incomplete, no effect on hadron inelastic
0439 interactions.
0440 o G4DeexPrecoParameters, G4NuclearLevelData, G4ExcitationHandler,
0441 G4PhotonEvaporation: fixed initialisation in MT mode if physics-list
0442 has only radioactive decay.
0443 o Added c++11 keywords in many headers.
0444 o Added warning in G4ExcitationHandler for super excited fragments;
0445 improved warning printout for the high energy excitation.
0446 o G4LevelManager, G4NucLevel: substituted asserts by G4Exception.
0447 o Cleaned up code in CoulombBarrier and FermiFragment classes.
0448 o Fixed Coverity defects.
0449 + models/management
0450 o G4HadronicInteractionRegistry: added InitialiseModels() method.
0451 G4HadronicInteraction: added InitialiseModel() method.
0452 o G4VPreCompoundModel, G4VIntraNuclearTransportModel,
0453 G4HadronicInteractionRegistry, G4HadronicInteraction:
0454 added c++11 keywords, minor cleanup.
0455 + models/particle_hp
0456 o Changed default option of GNUmake script; G4PHPDEBUG flag was
0457 unintentionally activated.
0458 + models/parton_string
0459 o Major revision of QGS model; implemented Reggeon cascading and
0460 associated "Fermi motion". Implemented new algorithm of parton
0461 kinematical properties determination and calculation of residual
0462 nucleus properties. Adjusted G4GammaParticipants to the revised
0463 model.
0464 o Improved energy-momentum conservation in the QGS model, especially
0465 in the case of diffraction interactions.
0466 o G4QGSMSplitableHadron: fixed bug in the case of gamma projectile with
0467 P_minus = 0.
0468 o New tuning of FTF model parameters.
0469 o Introduced various <Pt^2> for diffractive and non-diffractive
0470 interactions in G4FTFModel, for NA49 and NA61/SHINE experimental data.
0471 o Fine tuning in G4DiffractiveExcitation for the FTF model, to describe
0472 NA49 experimental data, especially, <Pt> on Xf.
0473 o Fix to address the baryon puzzle of NA49 data; <Pt> of baryons 1/2 at a
0474 string fragmentation setting up at 435 MeV/c, and <Pt> for barion 3/2
0475 production st 900 MeV/c.
0476 o Fine tuning of G4LundStringFragmentation. <Pt> of mesons created at
0477 quark fragmentation is decreased. <Pt> of baryons created at quark and
0478 di-quark is increased. Corrected fragmentation functions of qq-> B(1/2)
0479 and B(3/2). <Pt^2> is increased in 2 times.
0480 Important for a description of NA49 experimental data on pp-interactions
0481 at 158 GeV/c, especially for xF and Pt distributions.
0482 o Introduced smearing of delta-isobar mass; delta-isobars are now treated
0483 as a kinetic track; improved parameterisation of the quark exchange
0484 process with excitation.
0485 NA61/SHINE exp. data on Pi+, Pi-, K+, K- and protons in PP interactions
0486 at 20, 31, 40, 80 and 158 GeV/c are now described. Now reproducing the
0487 ratio of <Strane Q>/<Normal Q> in PP interactions. Not describing kink
0488 in AA interactions.
0489 o Improved di-quark fragmentation into baryons in Lund string
0490 fragmentation. Improved description of NA49 and NA61/SHINE exp. data
0491 on p+p->p+X. Improvements in method SetMinimalStringMass(), relevant
0492 for Pbar P annihilation.
0493 o Moved G4PomeronCrossSection class to 'qgsm' module.
0494 + models/pre_equilibrium
0495 o G4PreCompoundModel: changed non-equilibrium condition to switch to
0496 de-excitation; this allows to perform pre-equilibrium emission for
0497 light nuclei.
0498 o Migrated classes to use G4DeexPrecoParameters; removed obsolete class
0499 G4PreCompoundParameters.
0500 o G4GNASHTransitions: fixed problem in computation of probability.
0501 o Use nullptr and define internal const as static const.
0502 + models/radioactive_decay
0503 o G4RadioactiveDecay: renamed several methods and variables to more
0504 closely represent their meaning.
0505 In DoDecay(): added protection for zero pointer in case of missing
0506 decay channel. Added new method AddDeexcitationSpectrumForBiasMode().
0507 In BuildPhysicsTable(), removed initialization of atomic de-excitation
0508 to avoid overwriting its initialization in EM.
0509 Throw fatal exception if initialization not done somewhere.
0510 Initialisation should be now done in physics-lists.
0511 o Added production of gamma and electron spectra from de-excitation of
0512 excited levels in the biased mode.
0513 o Removed obsolete class G4RIsotopeTable.
0514 + models/util
0515 o Fixed Coverity defect in G4Fragment.
0516
0517 o Run
0518 ---
0519 + Added handling of multiple actions to be instantiated and handled by
0520 user code. Added G4MultiRunAction class to allow for multiple run actions
0521 in a single job; added G4MultiPrimaryAction to allow for multiple
0522 user-primary generation actions in a single job.
0523 + Renamed all MT related exceptions to have new code matching pattern.
0524 + Use scoped enum for G4MTRunManager::WorkerActionRequest and
0525 added PROCESSUI action.
0526 + Added G4MTRunManager::GetNumberActiveThreads() method.
0527 + Use new class G4MTBarrier to implement synchronization points.
0528 + Introduced skeleton for new functionality to force workers to
0529 execute UI commands w/o beamOn.
0530 Introduced new UI command: "/run/workersProcessCmds" to trigger
0531 execution of UI commands by workers even without a "/run/beamOn";
0532 C++ API is G4MTRunManager::RequestWorkersProcessCommandsStack().
0533 + When workers are terminated they execute the UI commands issued
0534 after the last /run/beamOn
0535 + Fixed potential memory leak in G4RunMessenger.
0536 + Disabled multi-scattering during post-step in G4PhysicsListHelper.
0537 Fixed default process ordering parameters for G4UnknownDecay that
0538 should not have AtRest.
0539 + G4AdjointSimManager: correction in the use of run actions to avoid
0540 infinite loop during an adjoint simulation.
0541 + G4AdjointPrimaryGenerationAction: removed 3 times splitting of primary
0542 adjoint gamma.
0543
0544 o Track & Tracking
0545 ----------------
0546 + Change G4VUserTrackInformation pointer in G4Track to mutable and setters
0547 to be const-methods. This allows the user to set his/her
0548 G4VUserTrackInformation pointer without casting G4Track const pointer.
0549 + New G4Multi{Stepping,Tracking}Action classes to allow for multiple
0550 user-actions in the same job.
0551
0552 o Visualization:
0553 -------------
0554 + management:
0555 o MT mode: moved flush to end of visualization thread; this is so that
0556 all trajectories are flushed from the thread before switching back to
0557 master thread. Also fixing picking in MT mode.
0558 o Introduced UI command /vis/viewer/interpolate.
0559 o Added some calls to SetView for security.
0560 o Inhibited use of BeginRun, BeginEvent, EndEvent and EndRun
0561 when vis is not enabled, for example after /vis/disable.
0562 In particular this prevents the start of the vis thread in
0563 multi-threading mode.
0564 o G4VisExecutive: registered drawing and filtering by touched volume.
0565 o G4VisCommandsSceneAdd: removed incorrect check on existing models in
0566 command "/vis/scene/add/volume". It was preventing parallel worlds being
0567 added individually.
0568 o Fixed mistake in introductory vis manager message.
0569 o Improved error tracking: introduced error code to track error
0570 conditions in G4VVisCommand; tracked error conditions for '/vis/open'
0571 and '/vis/drawTree' in G4VisCommandsCompound.
0572 o Improved '/vis/viewer/save'.
0573 o Use SetWorldVolume() for OriginVolume drawing and filtering.
0574 o Code cleanup in G4VisCommandsSceneHandler.
0575 + modeling:
0576 o Introduced drawing and filtering by touched volume.
0577 i.e., "/vis/modeling/trajectories/create/drawByTouchedVolume"
0578 "/vis/filtering/trajectories/create/touchedVolumeFilter"
0579 and their associated commands.
0580 This selects only by a single string, the physical volume name.
0581 If there are more than one physical volumes with that name then any
0582 trajectory touching any one of those volumes will be selected.
0583 If the user sets more than one physical volume name (by using the set
0584 command more than once) the trajectory will be selected if it touches
0585 either of those volumes and which of the attributes (e.g., colour)
0586 associated with those volumes is chosen is arbitrary.
0587 A more comprehensive facility would allow the user to select by
0588 touched touchable, i.e., by the full path and copy numbers of the
0589 physical volume - but that is a job for the future if a use case arises.
0590 o Added specific arguments to LocateGlobalPointAndSetup() to handle
0591 multi-threading mode in G4TrajectoryDrawByOriginVolume::Draw() and
0592 G4TrajectoryOriginVolumeFilter::Evaluate().
0593 o G4TrajectoryModelFactories: added
0594 G4TrajectoryDrawByTouchedVolumeFactory.
0595 o G4TrajectoryFilterFactories: added
0596 G4TrajectoryTouchedVolumeFilterFactory.
0597 o Added new files and classes: G4TrajectoryDrawByTouchedVolume and
0598 G4TrajectoryTouchedVolumeFilter.
0599 o G4ModelColourMap: sdded new access function GetBasicMap().
0600 o G4ModelingParameters: added VisAttributesModifier set commands.
0601 o Tidied uo G4TrajectoryDrawByOriginVolume.
0602 o G4TrajectoryDrawByOriginVolume: tidied #include statements.
0603 + OpenGL:
0604 o Xm: Ensure all items get flushed to screen, even when
0605 'eventsDrawInterval' is set greater than 1.
0606 o Fixed some inconsistencies in "/vis/ogl/set/eventsDrawInterval" and
0607 "/vis/ogl/set/displayListLimit" commands.
0608 o Fixed bug in picking output text.
0609 o G4OpenGLXViewer: Added thread awareness regarding glXMakeCurrent.
0610 o Fix for notifying multiple OGL X views.
0611 o Fix in G4OpenGLViewer::getRealPrintFilename() so that files can
0612 easily be referenced in alphanumeric order.
0613 o CompareForKernelVisit(): tested for total visualization attributes
0614 modifiers instead of just for size.
0615 o Fixed typo for macro G4CONDITIONBROADCAST.
0616 + OpenInventor:
0617 o G4OpenInventorXtExaminerViewer: designed new icons (XPM) for the
0618 "Extended Pick Mode" and "Pick Reference Trajectory" buttons.
0619 o Modified the mouse-over-trajectory output to make it more clear.
0620 o Improved diagnostics for Bookmark file handling.
0621 o New approach for determining distance along the reference path, using
0622 element centers instead of bounding boxes. Solves problems with spurious
0623 bounding box warnings and incorrect distance values.
0624 o G4OpenInventorXtExtended & G4OpenInventorXtExtendedViewer: suppressed
0625 some unwanted diagnostic output.
0626 o Fixed setting of transparency type
0627 (SoGLRenderAction::SORTED_OBJECT_ADD).
0628 o Fixed dispatching.
0629 o Fixed Coverity defects.
0630 + Tree:
0631 o G4ASCIITreeSceneHandler: prevent multiple writing of the informational
0632 header on the output file.
0633 + XXX:
0634 o CompareForKernelVisit(): tested for total visualization attributes
0635 modifiers instead of just for size.
0636
0637 o Data Sets:
0638 ---------
0639 + G4ENSDFSTATE-1.3.1:
0640 o Added missing data for AC225, SI25, 193RN, TE140.
0641 + G4RadioactiveDecay-4.4.1:
0642 o Added KM coefficients for e- capture and taken from DDEP data.
0643 o Correction to Fe55
0644 o Corrected 0 lifetime for Ac225.
0645 + G4TENDL-1.2:
0646 o Compressed version of the library.
0647 o Added information of source (ENDF/B-VII.1 or TENDL-2014) for each file.
0648 o Fixed problem to Deuteron/Inelastic/F01/1_3_Hydrogen.z.
0649
0650 o Examples:
0651 --------
0652 + Updated reference outputs, macros and scripts.
0653 + advanced/air_shower
0654 o Replaced usage of std::log() by G4Log().
0655 + advanced/amsEcal
0656 o PhysListEmStandard: use G4EmParameters.
0657 + advanced/composite_calorimeter (ccal-V10-02-00)
0658 o Replaced usage of std::exp() by G4Exp().
0659 + advanced/hadrontherapy
0660 o Added new modulator class.
0661 + advanced/microbeam (microbeam-V10-02-00)
0662 o Replaced usage of std::exp() by G4Exp().
0663 + advanced/microelectronics
0664 o Fixed multiple-scattering definition in PhysicsList.
0665 + advanced/nanobeam
0666 o Replaced usage of std::exp() by G4Exp().
0667 + advanced/underground_physics
0668 o DMXPhysicsList: migrated EM physics to G4EmParameters.
0669 + extended/electromagnetic/TestEm0
0670 o PhysicsList: use G4EmParameters.
0671 + extended/electromagnetic/TestEm1
0672 o PhysicsList::AddRadioactiveDecay(): set like threshold to
0673 0.1*picosecond in G4NuclideTable. Updated radioactive.mac.
0674 Use G4EmParameters.
0675 o Added decayinfly.mac macro.
0676 o Modified colors in vis.mac.
0677 o PrimaryGeneratorMessenger: restore command SetDefaultKinematic.
0678 Updated all macros.
0679 + extended/electromagnetic/TestEm2
0680 o PhysicsList: use G4EmParameters.
0681 + extended/electromagnetic/TestEm3
0682 o PhysicsList: use G4EmParameters.
0683 + extended/electromagnetic/TestEm5
0684 o EventAction: corrected filling of histogram 1.
0685 o PhysicsList: use G4EmParameters.
0686 o Removed geant3 sub-directory.
0687 + extended/electromagnetic/TestEm7
0688 o Fix in c2_functions.
0689 o Fixed compilation warnings on gcc-6.1.
0690 + extended/electromagnetic/TestEm8
0691 o TestParameters, Run, PrimaryGeneratorAction, PrimaryGeneratorMessenger:
0692 reorganized printout of beam particle; use energy smearing as an
0693 addition of noise, so smeared noise should be added in units of energy.
0694 + extended/electromagnetic/TestEm10
0695 o Major example revision & clean-up: simplified class names; refactored
0696 detector construction & its messenger classes; revised scoring, removed
0697 unused code and replaced histograms with standard calls to g4tools;
0698 added StackingAction which accounts XTR gamma, all gamma and all e-
0699 spectra; changed to a modular physics list and introduced
0700 TransitionRadiationPhysics builder; clean-up of the primary generator
0701 action; added test_suite.sh script.
0702 + extended/electromagnetic/TestEm11
0703 o PhysicsList: added radioactiveDecay process; use G4EmParameters.
0704 o Removed G4DiscreteScattering.
0705 o Run: compute energy deposit per absorber
0706 o PrimaryGenerator: restored SetDefaultKinematic().
0707 o Updated macro radioactive.mac.
0708 + extended/electromagnetic/TestEm12
0709 o PhysicsList, PhysListEmStandard: use G4EmParameters.
0710 + extended/electromagnetic/TestEm13, TestEm14
0711 o PhysicsList: use G4EmParameters.
0712 o Removed geant3 sub-directory.
0713 + extended/electromagnetic/TestEm15
0714 o PhysicsList: use G4EmParameters.
0715 + extended/electromagnetic/TestEm18
0716 o PhysListEmStandard: use G4EmParameters.
0717 + extended/hadronic/Hadr06
0718 o Added NE213 material.
0719 o PhysicsList: added G4StoppingPhysics.
0720 o EmStandardPhysics: use G4EmParameters.
0721 + extended/hadronic/Hadr07
0722 o New example to survey energy deposition and particle's flux from
0723 an hadronic cascade.
0724 + extended/medical/dna/clustering
0725 o Added GNUmakefile and reference output.
0726 + extended/medical/dna/dnaphysics
0727 o Added flagProcess value for electron capture.
0728 o DetectorConstructor, DetectorMessenger: ensure that geometry is created
0729 once; material may be changed for next runs.
0730 o SteppingAction: added label for solvation.
0731 o Added 2nd argument in SteppingAction for number of threads.
0732 o /run/initialise moved from code to macro.
0733 o DNA physics configuration moved from code to macro.
0734 + extended/medical/dna/microdosimetry
0735 o Increase cuts of G4ElectronCapture to 7.4 eV to remain compatible
0736 with the energy validity of the Champion's elastic model.
0737 + extended/medical/dna/range
0738 + extended/medical/dna/wvalue
0739 o Changed physics constructor selection.
0740 + medical/electronScattering
0741 o PhysListEmStandard: use G4EmParameters.
0742 o PhysListEmStandard_WVI, SS: added SetMscThetaLimit().
0743 + extended/parallel/TBB
0744 o Ported code following last updates to 'run' category.
0745 + extended/parallel/ThreadsafeScorers
0746 o Corrected GNUmakefile.
0747 + extended/persistency/persistency/gdml/G01
0748 o Added test case for scaled solids: scaledTube.gdml.
0749 o Added missing gdml files to CMake installation script.
0750 + extended/polarisation/Pol01
0751 o PhysicsList: move to use current method of ConstructParticle().
0752 + extended/radioactivedecay/rdecay01
0753 o Initialize atomic de-excitation in PhysicsList::ConstructProcess()
0754 instead of in G4RadioactiveDecay to avoid overwriting initializtion
0755 in EM.
0756 o Set world size to 2 cm and gun direction along X.
0757 o Added survey of each nuclide in a given time window.
0758 Print-out activity of each nuclide.
0759 + extended/radioactivedecay/rdecay02
0760 o PhysicsList: register hadronic processes.
0761 + extended/runAndEvent/RE01
0762 o Removed obsolete use of readout geometry.
0763 o Added protection against a track sticking on the calorimeter inner
0764 boundary.
0765 o Use G4UnknownDecayPhysics constructor and removed ad-hoc physics-list.
0766 + extended/runAndEvent/RE04
0767 o Added command "/vis/drawVolume worlds" to vis.mac.
0768
0769 ----------------------------------------------------------------------------
0770