Import Geant4 10.7.0 source tree
This commit is contained in:
@@ -15,6 +15,9 @@ code and to keep track of all tags.
|
||||
* Please list in reverse chronological order (last date on top)
|
||||
---------------------------------------------------------------
|
||||
|
||||
15 Nov 2020 - Jose Luis Rodriguez Sanchez (hadr-abla-V10-06-00)
|
||||
--------------------------------------------------
|
||||
- Fix some coverity warnings.
|
||||
|
||||
08 Oct 2018 - Jose Luis Rodriguez Sanchez (hadr-abla-V10-04-06)
|
||||
--------------------------------------------------
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
# Package: Geant4.src.G4processes.G4hadronic.G4hadronic_models.G4had_hetcpp.G4hadronic_hetcpp_utils
|
||||
#
|
||||
# Sources description for a library.
|
||||
# Lists the sources and headers of the code explicitely.
|
||||
# Lists the sources and headers of the code explicitly.
|
||||
# Lists include paths needed.
|
||||
# Lists the internal granular and global dependencies of the library.
|
||||
# Source specific properties should be added at the end.
|
||||
@@ -14,35 +14,9 @@
|
||||
#
|
||||
#------------------------------------------------------------------------------
|
||||
|
||||
# List external includes needed.
|
||||
include_directories(${CLHEP_INCLUDE_DIRS})
|
||||
|
||||
# List internal includes needed.
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/geometry/management/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/geometry/volumes/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPGeometry/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPRandom/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/global/management/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/materials/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/particles/bosons/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/barions/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/ions/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/mesons/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/particles/leptons/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/particles/management/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/management/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/management/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/util/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/util/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/handler/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/evaporation/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/track/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/intercoms/include)
|
||||
|
||||
#
|
||||
# Define the Geant4 Module.
|
||||
#
|
||||
include(Geant4MacroDefineModule)
|
||||
GEANT4_DEFINE_MODULE(NAME G4hadronic_abla_abla
|
||||
HEADERS
|
||||
G4AblaDataDefs.hh
|
||||
|
||||
@@ -1317,15 +1317,13 @@ c Clear BU_TAB (array of multifragmentation products)
|
||||
EV_TAB[i][3] = VYOUT;
|
||||
EV_TAB[i][4] = VZOUT;
|
||||
}
|
||||
|
||||
|
||||
if(IMULTBU>200)std::cout << "IMULTBU>200 " << IMULTBU << std::endl;
|
||||
delete problamb;
|
||||
delete Nblamb;
|
||||
}// if(T_diff>0.1)
|
||||
// End of multi-fragmentation
|
||||
// End of multi-fragmentation
|
||||
mult7777:
|
||||
|
||||
// std::cout << "hola 100" << std::endl;
|
||||
|
||||
// Start basic de-excitation of fragments
|
||||
aprfp = idnint(aprf);
|
||||
zprfp = idnint(zprf);
|
||||
@@ -5093,7 +5091,7 @@ G4double G4Abla::eflmac(G4int ia, G4int iz, G4int flag, G4int optshp)
|
||||
- 3.0/4.0 * (1.0 + 9.0/(2.0*y0) + 7.0/std::pow(y0,2)
|
||||
+ 7.0/(2.0 * std::pow(y0,3))) * std::exp(-2.0*y0));
|
||||
|
||||
// now calulation of total binding energy a.j. 16.7.96
|
||||
// now calculation of total binding energy a.j. 16.7.96
|
||||
|
||||
efl = -1.0 * av*(1.0 - kv*i*i)*a + as*(1.0 - ks*i*i)*b1 * std::pow(a,(2.0/3.0)) + a0
|
||||
+ c1*z*z*b3/std::pow(a,(1.0/3.0)) - c4*std::pow(z,(4.0/3.0))/std::pow(a,(1.e0/3.e0))
|
||||
@@ -5360,7 +5358,7 @@ C BARR - Barrier
|
||||
C OMEGA - Curvature of the potential
|
||||
C
|
||||
C BASS MODEL NPA 1974 - used only if expansion is considered (OPTEXP=1)
|
||||
C or one wants this model explicitely (OPTBAR=1)
|
||||
C or one wants this model explicitly (OPTBAR=1)
|
||||
C October 2011 - AK - new parametrization of the barrier and its position,
|
||||
C see W.W. Qu et al., NPA 868 (2011) 1; this is now
|
||||
C default option (OPTBAR=0)
|
||||
@@ -7056,8 +7054,15 @@ void G4Abla::imf(G4double ACN,G4double ZCN,G4double TEMP,G4double EE,G4double *Z
|
||||
G4double BBIMF[98][251];
|
||||
G4double SSBIMF[98][251];
|
||||
G4int OPTSHPIMF=opt->optshpimf;
|
||||
|
||||
// Initialization
|
||||
for (G4int ia = 0; ia < 98; ia++)
|
||||
for (G4int ib = 0; ib < 251; ib++) {
|
||||
BBIMF[ia][ib] = 0.0;
|
||||
SSBIMF[ia][ib] = 0.0;
|
||||
}
|
||||
|
||||
// take the half of the CN and transform it in integer (floor it)
|
||||
// take the half of the CN and transform it in integer (floor it)
|
||||
IZIMFMAX = idnint(ZCN / 2.0);
|
||||
|
||||
if(IZIMFMAX<3){
|
||||
@@ -7469,7 +7474,7 @@ G4int VISOSTAB[191][2]={
|
||||
void G4Abla::evap_postsaddle(G4double A, G4double Z, G4double EXC, G4double *E_scission_post, G4double *A_scission, G4double *Z_scission,G4double &vx_eva,G4double &vy_eva,G4double &vz_eva,G4int *NbLam0_par){
|
||||
|
||||
// AK 2006 - Now in case of fission deexcitation between saddle and scission
|
||||
// is explicitely calculated. Langevin calculations made by P. Nadtochy
|
||||
// is explicitly calculated. Langevin calculations made by P. Nadtochy
|
||||
// used to parametrise saddle-to-scission time
|
||||
|
||||
G4double af,zf,ee;
|
||||
@@ -9138,7 +9143,7 @@ G4double G4Abla::eflmac_profi(G4double ia, G4double iz)
|
||||
- 3.0/4.0 * (1.0 + 9.0/(2.0*y0) + 7.0/std::pow(y0,2)
|
||||
+ 7.0/(2.0 * std::pow(y0,3))) * std::exp(-2.0*y0));
|
||||
|
||||
// now calulation of total binding energy
|
||||
// now calculation of total binding energy
|
||||
|
||||
efl = -1.0 * av*(1.0 - kv*i*i)*a + as*(1.0 - ks*i*i)*b1 * std::pow(a,(2.0/3.0)) + a0
|
||||
+ c1*z*z*b3/std::pow(a,(1.0/3.0)) - c4*std::pow(z,(4.0/3.0))/std::pow(a,(1.e0/3.e0))
|
||||
@@ -9857,7 +9862,9 @@ void G4Abla::unstable_tke(G4double ain,G4double zin,G4double anew,G4double znew,
|
||||
ianew = idnint(anew);
|
||||
iznew = idnint(znew);
|
||||
innew = ianew - iznew;
|
||||
//
|
||||
//
|
||||
if(ain==0)return;
|
||||
//
|
||||
if(izin>12){
|
||||
mglms(ain,zin,3,&MASS);
|
||||
mglms(anew,znew,3,&MASS1);
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
# Package: Geant4.src.G4processes.G4hadronic.G4hadronic_models.G4hadronic_abrasion
|
||||
#
|
||||
# Sources description for a library.
|
||||
# Lists the sources and headers of the code explicitely.
|
||||
# Lists the sources and headers of the code explicitly.
|
||||
# Lists include paths needed.
|
||||
# Lists the internal granular and global dependencies of the library.
|
||||
# Source specific properties should be added at the end.
|
||||
@@ -14,48 +14,9 @@
|
||||
#
|
||||
#------------------------------------------------------------------------------
|
||||
|
||||
# List external includes needed.
|
||||
include_directories(${CLHEP_INCLUDE_DIRS})
|
||||
|
||||
# List internal includes needed.
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/geometry/magneticfield/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/geometry/management/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/geometry/volumes/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPGeometry/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPNumerics/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPRandom/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/global/management/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/materials/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/particles/bosons/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/barions/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/ions/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/mesons/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/particles/leptons/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/particles/management/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/particles/shortlived/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/cross_sections/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/management/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/ablation/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/evaporation/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/fermi_breakup/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/handler/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/management/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/multifragmentation/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/photon_evaporation/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/util/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/im_r_matrix/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/management/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/pre_equilibrium/exciton_model/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/util/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/processes/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/util/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/management/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/track/include)
|
||||
|
||||
#
|
||||
# Define the Geant4 Module.
|
||||
#
|
||||
include(Geant4MacroDefineModule)
|
||||
GEANT4_DEFINE_MODULE(NAME G4hadronic_abrasion
|
||||
HEADERS
|
||||
G4NuclearAbrasionGeometry.hh
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
# Package: Geant4.src.G4processes.G4hadronic.G4hadronic_models.G4hadronic_binary
|
||||
#
|
||||
# Sources description for a library.
|
||||
# Lists the sources and headers of the code explicitely.
|
||||
# Lists the sources and headers of the code explicitly.
|
||||
# Lists include paths needed.
|
||||
# Lists the internal granular and global dependencies of the library.
|
||||
# Source specific properties should be added at the end.
|
||||
@@ -14,47 +14,9 @@
|
||||
#
|
||||
#------------------------------------------------------------------------------
|
||||
|
||||
# List external includes needed.
|
||||
include_directories(${CLHEP_INCLUDE_DIRS})
|
||||
|
||||
# List internal includes needed.
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/geometry/magneticfield/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/geometry/management/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/geometry/volumes/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPGeometry/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPNumerics/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPRandom/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/global/management/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/materials/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/particles/bosons/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/barions/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/ions/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/mesons/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/particles/leptons/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/particles/management/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/particles/shortlived/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/cross_sections/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/management/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/evaporation/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/fermi_breakup/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/handler/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/management/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/multifragmentation/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/photon_evaporation/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/util/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/im_r_matrix/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/management/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/pre_equilibrium/exciton_model/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/util/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/processes/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/util/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/management/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/track/include)
|
||||
|
||||
#
|
||||
# Define the Geant4 Module.
|
||||
#
|
||||
include(Geant4MacroDefineModule)
|
||||
GEANT4_DEFINE_MODULE(NAME G4hadronic_binary
|
||||
HEADERS
|
||||
G4Absorber.hh
|
||||
|
||||
@@ -373,7 +373,7 @@ G4HadFinalState * G4BinaryCascade::ApplyYourself(const G4HadProjectile & aTrack,
|
||||
|
||||
|
||||
} else { // no interaction, return primary
|
||||
if(std::getenv("BCDEBUG") ) G4cerr << " ######### Binary Cascade Reaction void, return intial state ######### "<< G4endl;
|
||||
if(std::getenv("BCDEBUG") ) G4cerr << " ######### Binary Cascade Reaction void, return initial state ######### "<< G4endl;
|
||||
theParticleChange.SetStatusChange(isAlive);
|
||||
theParticleChange.SetEnergyChange(aTrack.GetKineticEnergy());
|
||||
theParticleChange.SetMomentumChange(aTrack.Get4Momentum().vect().unit());
|
||||
|
||||
@@ -94,7 +94,7 @@ void G4BinaryLightIonReaction::ModelDescription(std::ostream& outFile) const
|
||||
<< "using G4BinaryCasacde to model the interaction of a light\n"
|
||||
<< "nucleus with a nucleus.\n"
|
||||
<< "The lighter of the two nuclei is treated like a set of projectiles\n"
|
||||
<< "which are transported simultanously through the heavier nucleus.\n";
|
||||
<< "which are transported simultaneously through the heavier nucleus.\n";
|
||||
}
|
||||
|
||||
//--------------------------------------------------------------------------------
|
||||
|
||||
@@ -1195,7 +1195,7 @@ Re-tag with subdirectories "utils" and "evaporation" (excluded by mistake).
|
||||
------------------------------------------------------
|
||||
- G4TwoBodyAngularDist: NEW Factory singleton containing all of the
|
||||
angular-distribution generators created below. Code from G4EPCollider to
|
||||
choose generator based on intial and final states moved here, accessed
|
||||
choose generator based on initial and final states moved here, accessed
|
||||
through static function.
|
||||
|
||||
- G4ElementaryParticleCollider: Angular distribution generators moved to
|
||||
@@ -3662,7 +3662,7 @@ interfaces between pion/nucleon and kaon/hyperon samplers.
|
||||
conditional dimensioning (e.g., if N8==0, use [1]). Define second
|
||||
9-body constructor to accept and initialize the new arrays.
|
||||
|
||||
4) Eliminate static intialization of index[], moving it into
|
||||
4) Eliminate static initialization of index[], moving it into
|
||||
initialize(). Template specialization can't be used with data!
|
||||
|
||||
5) Add separate "sum" (summed N-body cross-sections) and "tot" arrays
|
||||
|
||||
@@ -27,7 +27,7 @@
|
||||
// Date: 7 March 2013
|
||||
//
|
||||
// Description: Singleton class to evaluate multi-body momentum distribution
|
||||
// functions based on intial state codes and multiplicity.
|
||||
// functions based on initial state codes and multiplicity.
|
||||
//
|
||||
// NOTE: Separate multiplicity-3 generators are not used, per V.Uzhinsky
|
||||
//
|
||||
|
||||
@@ -27,7 +27,7 @@
|
||||
// Date: 21 February 2013
|
||||
//
|
||||
// Description: Singleton class to evaluate two-body angular distribution
|
||||
// functions based on intial/final state codes.
|
||||
// functions based on initial/final state codes.
|
||||
//
|
||||
// 20130307 M. Kelsey -- Add verbosity interface for contained objects
|
||||
// 20130422 M. Kelsey -- Add three-body distributions, for temporary use
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
# Package: Geant4.src.G4processes.G4hadronic.G4hadronic_models.G4had_hetcpp.G4hadronic_bert_cascade
|
||||
#
|
||||
# Sources description for a library.
|
||||
# Lists the sources and headers of the code explicitely.
|
||||
# Lists the sources and headers of the code explicitly.
|
||||
# Lists include paths needed.
|
||||
# Lists the internal granular and global dependencies of the library.
|
||||
# Source specific properties should be added at the end.
|
||||
@@ -35,47 +35,9 @@
|
||||
# 20150323 M. Kelsey -- Add newly split G4KaonSampler and G4HyperonSampler
|
||||
#------------------------------------------------------------------------------
|
||||
|
||||
# List external includes needed.
|
||||
include_directories(${CLHEP_INCLUDE_DIRS})
|
||||
|
||||
# List internal includes needed.
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/geometry/management/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/geometry/volumes/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPGeometry/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPNumerics/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPRandom/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/global/management/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/intercoms/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/materials/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/particles/bosons/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/barions/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/ions/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/mesons/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/particles/leptons/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/particles/management/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/particles/shortlived/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/cross_sections/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/management/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/cascade/cascade/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/evaporation/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/fermi_breakup/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/handler/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/management/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/multifragmentation/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/photon_evaporation/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/util/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/management/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/pre_equilibrium/exciton_model/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/util/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/processes/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/util/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/management/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/track/include)
|
||||
|
||||
#
|
||||
# Define the Geant4 Module.
|
||||
#
|
||||
include(Geant4MacroDefineModule)
|
||||
GEANT4_DEFINE_MODULE(NAME G4hadronic_bert_cascade
|
||||
HEADERS
|
||||
G4Analyser.hh
|
||||
|
||||
@@ -27,7 +27,7 @@
|
||||
// Date: 7 March 2013
|
||||
//
|
||||
// Description: Singleton class to evaluate multi-body momentum distribution
|
||||
// functions based on intial state codes and multiplicity.
|
||||
// functions based on initial state codes and multiplicity.
|
||||
//
|
||||
// 20130308 Use envvar to enable/disable use of 3-body generators.
|
||||
// 20130619 Change singleton instance to be thread-local, to avoid collisions.
|
||||
|
||||
@@ -318,7 +318,7 @@ void G4NucleiModel::generateModel(G4int a, G4int z) {
|
||||
<< G4endl;
|
||||
}
|
||||
|
||||
// If model already built, just return; otherwise intialize everything
|
||||
// If model already built, just return; otherwise initialize everything
|
||||
if (a == A && z == Z) {
|
||||
if (verboseLevel > 1) G4cout << " model already generated" << z << G4endl;
|
||||
reset();
|
||||
|
||||
@@ -27,7 +27,7 @@
|
||||
// Date: 21 February 2013
|
||||
//
|
||||
// Description: Singleton class to evaluate two-body angular distribution
|
||||
// functions based on intial/final state codes.
|
||||
// functions based on initial/final state codes.
|
||||
//
|
||||
// 20130307 M. Kelsey -- Add verbosity interface
|
||||
// 20130422 M. Kelsey -- Add three-body distributions, for temporary use
|
||||
|
||||
@@ -13,11 +13,17 @@ code and to keep track of all tags.
|
||||
---------------------------------------------------------------
|
||||
* Please list in reverse chronological order (last date on top)
|
||||
---------------------------------------------------------------
|
||||
|
||||
22 July 2020 - V.Ivanchenko (hadr-cohe-V10-06-03)
|
||||
---------------------------------------------------------------
|
||||
- G4HadronElastic - added numerical protection against precision lost
|
||||
addressing problem #2253
|
||||
|
||||
30 April 2020 - B. Morgan (hadr-cohe-V10-06-02)
|
||||
---------------------------------------------------------------
|
||||
- Remove obsolete GRANULAR_DEPENDENCIES entries
|
||||
|
||||
18 January 2019 - V.Ivanchenko (hadr-cohe-V10-06-01)
|
||||
18 January 2020 - V.Ivanchenko (hadr-cohe-V10-06-01)
|
||||
---------------------------------------------------------------
|
||||
- G4ElasticHadrNucleusHE - for pi- and Z>1 reuse data structure
|
||||
computed for pi+ in order to reduce memory and CPU at
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
# Package: Geant4.src.G4processes.G4hadronic.G4hadronic_models.G4hadronic_coherent_elastic
|
||||
#
|
||||
# Sources description for a library.
|
||||
# Lists the sources and headers of the code explicitely.
|
||||
# Lists the sources and headers of the code explicitly.
|
||||
# Lists include paths needed.
|
||||
# Lists the internal granular and global dependencies of the library.
|
||||
# Source specific properties should be added at the end.
|
||||
@@ -14,35 +14,9 @@
|
||||
#
|
||||
#------------------------------------------------------------------------------
|
||||
|
||||
# List external includes needed.
|
||||
include_directories(${CLHEP_INCLUDE_DIRS})
|
||||
|
||||
# List internal includes needed.
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/geometry/management/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/geometry/volumes/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPGeometry/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPNumerics/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPRandom/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/global/management/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/materials/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/particles/bosons/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/barions/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/ions/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/mesons/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/particles/leptons/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/particles/management/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/cuts/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/cross_sections/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/management/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/management/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/util/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/management/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/track/include)
|
||||
|
||||
#
|
||||
# Define the Geant4 Module.
|
||||
#
|
||||
include(Geant4MacroDefineModule)
|
||||
GEANT4_DEFINE_MODULE(NAME G4hadronic_coherent_elastic
|
||||
HEADERS
|
||||
G4AntiNuclElastic.hh
|
||||
|
||||
@@ -208,6 +208,7 @@ G4HadronElastic::SampleInvariantT(const G4ParticleDefinition* part,
|
||||
const G4double plabLowLimit = 400.0*CLHEP::MeV;
|
||||
const G4double GeV2 = GeV*GeV;
|
||||
const G4double z07in13 = std::pow(0.7, 0.3333333333);
|
||||
const G4double numLimit = 18.;
|
||||
|
||||
G4int pdg = std::abs(part->GetPDGEncoding());
|
||||
G4double tmax = pLocalTmax/GeV2;
|
||||
@@ -255,8 +256,8 @@ G4HadronElastic::SampleInvariantT(const G4ParticleDefinition* part,
|
||||
cc = 0.2*g4pow->powZ(A,0.4)/dd;//1:0.4 --- 2: 0.4
|
||||
}
|
||||
}
|
||||
G4double q1 = 1.0 - G4Exp(-bb*tmax);
|
||||
G4double q2 = 1.0 - G4Exp(-dd*tmax);
|
||||
G4double q1 = 1.0 - G4Exp(-std::min(bb*tmax, numLimit));
|
||||
G4double q2 = 1.0 - G4Exp(-std::min(dd*tmax, numLimit));
|
||||
G4double s1 = q1*aa;
|
||||
G4double s2 = q2*cc;
|
||||
if((s1 + s2)*G4UniformRand() < s2) {
|
||||
|
||||
@@ -14,6 +14,29 @@ code and to keep track of all tags.
|
||||
* Please list in reverse chronological order (last date on top)
|
||||
---------------------------------------------------------------
|
||||
|
||||
12 August 2020 Vladimir Ivanchenko (hadr-deex-V10-06-07)
|
||||
- G4NuclearLevelData - use Zmax for initialisation before the run
|
||||
|
||||
28 July 2020 Vladimir Ivanchenko (hadr-deex-V10-06-06)
|
||||
- G4ExcitationHandler - verbose level is defined by G4HadronicParameters
|
||||
class or by the hardcoded local verbose level defined only for
|
||||
debugging
|
||||
- G4DeexPrecoParameters - verbose level is defined by G4HadronicParameters
|
||||
class or by the local verbose level
|
||||
- G4DeexParametersMessenger - removed obsolete UI command
|
||||
|
||||
24 July 2020 Vladimir Ivanchenko (hadr-deex-V10-06-05)
|
||||
- G4NuclearLevelData - reduced usage of mutex locks; read all level data
|
||||
begin of run
|
||||
- G4ExcitationHandler - use Zmax+1 instead of Zmax for nuclear level
|
||||
initialisation
|
||||
|
||||
13 July 2020 Vladimir Ivanchenko (hadr-deex-V10-06-04)
|
||||
- G4NuclearLevelData - more safe initialisation of data in MT mode, use mutex
|
||||
locks only within each method, whithout calls to other methods
|
||||
- G4ExcitationHandler - call to G4NuclearLevelData to initilise data for
|
||||
levels for all elements possibly involved in the geometry
|
||||
|
||||
12 May 2020 Alberto Ribon (hadr-deex-V10-06-03)
|
||||
- G4DeexPrecoParameters : in the method Dump(), check the global verbosity
|
||||
level of hadronics (if zero, do not print anything).
|
||||
@@ -225,7 +248,7 @@ code and to keep track of all tags.
|
||||
introduced in previous tag
|
||||
|
||||
18 October 2018 Vladimir Ivanchenko (hadr-deex-V10-04-08)
|
||||
- G4LevelManager, G4NuclearLevelData, G4LevelReader - added intialisation
|
||||
- G4LevelManager, G4NuclearLevelData, G4LevelReader - added initialisation
|
||||
of level density and pairing correction per isotope, added
|
||||
possibility to choose between two parameterisations of level
|
||||
density
|
||||
@@ -251,7 +274,7 @@ code and to keep track of all tags.
|
||||
|
||||
24 August 2018 Vladimir Ivanchenko (hadr-deex-V10-04-05)
|
||||
- G4LevelReader - attempt to fix problems #1986 and #2076 by
|
||||
change of hadling of internal convertion data
|
||||
change of hadling of internal conversion data
|
||||
|
||||
06 August 2018 Alberto Ribon (hadr-deex-V10-04-04)
|
||||
- G4NeutronRadCapture : replaced the explicit high-energy limit of
|
||||
@@ -1232,7 +1255,7 @@ code and to keep track of all tags.
|
||||
01 Dec 2014 Vladimir Ivanchenko (hadr-deex-V10-00-29)
|
||||
----------------------------------------------------------
|
||||
- G4VGammaDeexcitation, G4PhotonEvaporation - propagate vacant
|
||||
shell number after internal convertion allowing to enable
|
||||
shell number after internal conversion allowing to enable
|
||||
atomic de-excitation in radioactive decay
|
||||
|
||||
28 Nov 2014 Vladimir Ivanchenko (hadr-deex-V10-00-28)
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
# Package: Geant4.src.G4processes.G4hadronic.G4hadronic_models.G4hadronic_deex.G4hadronic_ablation
|
||||
#
|
||||
# Sources description for a library.
|
||||
# Lists the sources and headers of the code explicitely.
|
||||
# Lists the sources and headers of the code explicitly.
|
||||
# Lists include paths needed.
|
||||
# Lists the internal granular and global dependencies of the library.
|
||||
# Source specific properties should be added at the end.
|
||||
@@ -14,44 +14,9 @@
|
||||
#
|
||||
#------------------------------------------------------------------------------
|
||||
|
||||
# List external includes needed.
|
||||
include_directories(${CLHEP_INCLUDE_DIRS})
|
||||
|
||||
# List internal includes needed.
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/geometry/magneticfield/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/geometry/management/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/geometry/volumes/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPGeometry/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPNumerics/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPRandom/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/global/management/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/materials/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/particles/bosons/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/barions/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/ions/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/mesons/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/particles/leptons/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/particles/management/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/management/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/evaporation/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/fermi_breakup/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/fission/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/handler/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/management/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/multifragmentation/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/photon_evaporation/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/util/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/im_r_matrix/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/management/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/pre_equilibrium/exciton_model/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/util/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/util/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/track/include)
|
||||
|
||||
#
|
||||
# Define the Geant4 Module.
|
||||
#
|
||||
include(Geant4MacroDefineModule)
|
||||
GEANT4_DEFINE_MODULE(NAME G4hadronic_ablation
|
||||
HEADERS
|
||||
G4WilsonAblationModel.hh
|
||||
|
||||
+1
-1
@@ -65,7 +65,7 @@ private:
|
||||
G4bool operator!=(const G4EvaporationChannel & right) const;
|
||||
|
||||
// This data member define the channel.
|
||||
// They are intializated at object creation (constructor) time.
|
||||
// They are initialised at object creation (constructor) time.
|
||||
G4int theA;
|
||||
G4int theZ;
|
||||
G4int resA;
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
# Package: Geant4.src.G4processes.G4hadronic.G4hadronic_models.G4hadronic_deex.G4hadronic_deex_evaporation
|
||||
#
|
||||
# Sources description for a library.
|
||||
# Lists the sources and headers of the code explicitely.
|
||||
# Lists the sources and headers of the code explicitly.
|
||||
# Lists include paths needed.
|
||||
# Lists the internal granular and global dependencies of the library.
|
||||
# Source specific properties should be added at the end.
|
||||
@@ -14,36 +14,9 @@
|
||||
#
|
||||
#------------------------------------------------------------------------------
|
||||
|
||||
# List external includes needed.
|
||||
include_directories(${CLHEP_INCLUDE_DIRS})
|
||||
|
||||
# List internal includes needed.
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPGeometry/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPNumerics/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPRandom/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/global/management/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/materials/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/particles/bosons/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/barions/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/ions/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/mesons/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/particles/leptons/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/particles/management/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/management/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/fission/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/fermi_breakup/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/gem_evaporation/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/management/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/photon_evaporation/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/util/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/util/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/util/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/track/include)
|
||||
|
||||
#
|
||||
# Define the Geant4 Module.
|
||||
#
|
||||
include(Geant4MacroDefineModule)
|
||||
GEANT4_DEFINE_MODULE(NAME G4hadronic_deex_evaporation
|
||||
HEADERS
|
||||
G4AlphaEvaporationChannel.hh
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
# Package: Geant4.src.G4processes.G4hadronic.G4hadronic_models.G4hadronic_deex.G4hadronic_deex_fermi_breakup
|
||||
#
|
||||
# Sources description for a library.
|
||||
# Lists the sources and headers of the code explicitely.
|
||||
# Lists the sources and headers of the code explicitly.
|
||||
# Lists include paths needed.
|
||||
# Lists the internal granular and global dependencies of the library.
|
||||
# Source specific properties should be added at the end.
|
||||
@@ -14,27 +14,9 @@
|
||||
#
|
||||
#------------------------------------------------------------------------------
|
||||
|
||||
# List external includes needed.
|
||||
include_directories(${CLHEP_INCLUDE_DIRS})
|
||||
|
||||
# List internal includes needed.
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPGeometry/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPNumerics/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPRandom/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/global/management/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/particles/bosons/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/barions/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/particles/leptons/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/particles/management/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/management/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/util/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/util/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/util/include)
|
||||
|
||||
#
|
||||
# Define the Geant4 Module.
|
||||
#
|
||||
include(Geant4MacroDefineModule)
|
||||
GEANT4_DEFINE_MODULE(NAME G4hadronic_deex_fermi_breakup
|
||||
HEADERS
|
||||
G4FermiBreakUpVI.hh
|
||||
|
||||
+1
-1
@@ -159,7 +159,7 @@ void G4FermiFragmentsPoolVI::Initialise()
|
||||
G4int Amin = ndata->GetMinA(Z);
|
||||
G4int Amax = std::min(maxA, ndata->GetMaxA(Z)+1);
|
||||
for(G4int A=Amin; A<Amax; ++A) {
|
||||
const G4LevelManager* man = ndata->GetLevelManager(Z, A, true);
|
||||
const G4LevelManager* man = ndata->GetLevelManager(Z, A);
|
||||
if(man) {
|
||||
size_t nn = man->NumberOfTransitions();
|
||||
// very unstable state
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
# Package: Geant4.src.G4processes.G4hadronic.G4hadronic_models.G4hadronic_deex.G4hadronic_deex_fission
|
||||
#
|
||||
# Sources description for a library.
|
||||
# Lists the sources and headers of the code explicitely.
|
||||
# Lists the sources and headers of the code explicitly.
|
||||
# Lists include paths needed.
|
||||
# Lists the internal granular and global dependencies of the library.
|
||||
# Source specific properties should be added at the end.
|
||||
@@ -14,32 +14,9 @@
|
||||
#
|
||||
#------------------------------------------------------------------------------
|
||||
|
||||
# List external includes needed.
|
||||
include_directories(${CLHEP_INCLUDE_DIRS})
|
||||
|
||||
# List internal includes needed.
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPGeometry/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPNumerics/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPRandom/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/global/management/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/materials/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/particles/bosons/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/barions/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/ions/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/mesons/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/particles/leptons/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/particles/management/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/management/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/management/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/util/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/util/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/util/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/track/include)
|
||||
|
||||
#
|
||||
# Define the Geant4 Module.
|
||||
#
|
||||
include(Geant4MacroDefineModule)
|
||||
GEANT4_DEFINE_MODULE(NAME G4hadronic_deex_fission
|
||||
HEADERS
|
||||
G4CompetitiveFission.hh
|
||||
|
||||
+1
-1
@@ -79,7 +79,7 @@ private:
|
||||
|
||||
// Data Members ************
|
||||
// This data member define the channel.
|
||||
// They are intializated at object creation (constructor) time.
|
||||
// They are initialised at object creation (constructor) time.
|
||||
|
||||
// Atomic Number
|
||||
G4int A;
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
# Package: Geant4.src.G4processes.G4hadronic.G4hadronic_models.G4hadronic_deex.G4hadronic_deex_gem_evaporation
|
||||
#
|
||||
# Sources description for a library.
|
||||
# Lists the sources and headers of the code explicitely.
|
||||
# Lists the sources and headers of the code explicitly.
|
||||
# Lists include paths needed.
|
||||
# Lists the internal granular and global dependencies of the library.
|
||||
# Source specific properties should be added at the end.
|
||||
@@ -14,34 +14,9 @@
|
||||
#
|
||||
#------------------------------------------------------------------------------
|
||||
|
||||
# List external includes needed.
|
||||
include_directories(${CLHEP_INCLUDE_DIRS})
|
||||
|
||||
# List internal includes needed.
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPGeometry/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPNumerics/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPRandom/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/global/management/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/materials/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/particles/bosons/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/barions/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/ions/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/mesons/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/particles/leptons/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/particles/management/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/management/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/fission/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/management/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/photon_evaporation/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/util/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/util/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/util/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/track/include)
|
||||
|
||||
#
|
||||
# Define the Geant4 Module.
|
||||
#
|
||||
include(Geant4MacroDefineModule)
|
||||
GEANT4_DEFINE_MODULE(NAME G4hadronic_deex_gem_evaporation
|
||||
HEADERS
|
||||
G4C16GEMChannel.hh
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
# Package: Geant4.src.G4processes.G4hadronic.G4hadronic_models.G4hadronic_deex.G4hadronic_deex_handler
|
||||
#
|
||||
# Sources description for a library.
|
||||
# Lists the sources and headers of the code explicitely.
|
||||
# Lists the sources and headers of the code explicitly.
|
||||
# Lists include paths needed.
|
||||
# Lists the internal granular and global dependencies of the library.
|
||||
# Source specific properties should be added at the end.
|
||||
@@ -14,38 +14,9 @@
|
||||
#
|
||||
#------------------------------------------------------------------------------
|
||||
|
||||
# List external includes needed.
|
||||
include_directories(${CLHEP_INCLUDE_DIRS})
|
||||
|
||||
# List internal includes needed.
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/geometry/management/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/geometry/volumes/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPGeometry/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPNumerics/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPRandom/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/global/management/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/materials/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/particles/bosons/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/barions/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/ions/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/mesons/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/particles/leptons/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/particles/management/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/evaporation/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/fermi_breakup/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/management/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/multifragmentation/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/photon_evaporation/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/util/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/util/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/util/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/management/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/track/include)
|
||||
|
||||
#
|
||||
# Define the Geant4 Module.
|
||||
#
|
||||
include(Geant4MacroDefineModule)
|
||||
GEANT4_DEFINE_MODULE(NAME G4hadronic_deex_handler
|
||||
HEADERS
|
||||
G4ExcitationHandler.hh
|
||||
|
||||
@@ -70,6 +70,8 @@
|
||||
|
||||
#include "G4VMultiFragmentation.hh"
|
||||
#include "G4VFermiBreakUp.hh"
|
||||
#include "G4Element.hh"
|
||||
#include "G4ElementTable.hh"
|
||||
|
||||
#include "G4VEvaporation.hh"
|
||||
#include "G4VEvaporationChannel.hh"
|
||||
@@ -111,7 +113,6 @@ G4ExcitationHandler::G4ExcitationHandler()
|
||||
|
||||
G4ExcitationHandler::~G4ExcitationHandler()
|
||||
{
|
||||
//G4cout << "### Delete handler " << this << G4endl;
|
||||
delete theMultiFragmentation;
|
||||
delete theFermiModel;
|
||||
if(isEvapLocal) { delete theEvaporation; }
|
||||
@@ -119,17 +120,26 @@ G4ExcitationHandler::~G4ExcitationHandler()
|
||||
|
||||
void G4ExcitationHandler::SetParameters()
|
||||
{
|
||||
if(fVerbose > 1) {
|
||||
G4cout << "G4ExcitationHandler::SetParameters() started " << this << G4endl;
|
||||
}
|
||||
auto param = G4NuclearLevelData::GetInstance()->GetParameters();
|
||||
G4NuclearLevelData* ndata = G4NuclearLevelData::GetInstance();
|
||||
auto param = ndata->GetParameters();
|
||||
isActive = true;
|
||||
if(fDummy == param->GetDeexChannelsType()) { isActive = false; }
|
||||
// check if de-excitation is needed
|
||||
if(fDummy == param->GetDeexChannelsType()) {
|
||||
isActive = false;
|
||||
} else {
|
||||
// upload data for elements used in geometry
|
||||
G4int Zmax = 20;
|
||||
const G4ElementTable* table = G4Element::GetElementTable();
|
||||
for(auto & elm : *table) { Zmax = std::max(Zmax, elm->GetZasInt()); }
|
||||
ndata->UploadNuclearLevelData(Zmax+1);
|
||||
}
|
||||
minEForMultiFrag = param->GetMinExPerNucleounForMF();
|
||||
minExcitation = param->GetMinExcitation();
|
||||
maxExcitation = param->GetPrecoHighEnergy();
|
||||
icID = param->GetInternalConversionID();
|
||||
fVerbose = param->GetVerbose();
|
||||
|
||||
// allowing local debug printout
|
||||
fVerbose = std::max(fVerbose, param->GetVerbose());
|
||||
if(isActive) {
|
||||
if(!thePhotonEvaporation) { SetPhotonEvaporation(new G4PhotonEvaporation()); }
|
||||
if(!theEvaporation) {
|
||||
@@ -139,6 +149,9 @@ void G4ExcitationHandler::SetParameters()
|
||||
if(!theMultiFragmentation) { SetMultiFragmentation(new G4StatMF()); }
|
||||
}
|
||||
theFermiModel->SetVerbose(fVerbose);
|
||||
if(fVerbose > 1) {
|
||||
G4cout << "G4ExcitationHandler::SetParameters() done " << this << G4endl;
|
||||
}
|
||||
}
|
||||
|
||||
void G4ExcitationHandler::Initialise()
|
||||
@@ -155,7 +168,8 @@ void G4ExcitationHandler::Initialise()
|
||||
theFermiModel->Initialise();
|
||||
theEvaporation->InitialiseChannels();
|
||||
}
|
||||
if(fVerbose > 0) { param->Dump(); }
|
||||
// dump level is controlled by parameter class
|
||||
param->Dump();
|
||||
}
|
||||
|
||||
void G4ExcitationHandler::SetEvaporation(G4VEvaporation* ptr, G4bool flag)
|
||||
|
||||
+2
-3
@@ -69,9 +69,9 @@ class G4DeexParametersMessenger: public G4UImessenger
|
||||
public: // with description
|
||||
|
||||
explicit G4DeexParametersMessenger(G4DeexPrecoParameters*);
|
||||
virtual ~G4DeexParametersMessenger();
|
||||
~G4DeexParametersMessenger() override;
|
||||
|
||||
virtual void SetNewValue(G4UIcommand*, G4String) override;
|
||||
void SetNewValue(G4UIcommand*, G4String) override;
|
||||
|
||||
private:
|
||||
|
||||
@@ -86,7 +86,6 @@ private:
|
||||
|
||||
G4UIcmdWithAnInteger* maxjCmd;
|
||||
G4UIcmdWithAnInteger* verbCmd;
|
||||
G4UIcmdWithAnInteger* upCmd;
|
||||
|
||||
};
|
||||
|
||||
|
||||
+9
-23
@@ -29,6 +29,8 @@
|
||||
// List of parameters of the pre-compound model
|
||||
// and the deexcitation module
|
||||
//
|
||||
// Verbosity level depends on the local verbosity level and the verbosity
|
||||
// level of hadronics defined in G4HadronicParameters
|
||||
|
||||
#ifndef G4DeexPrecoParameters_h
|
||||
#define G4DeexPrecoParameters_h 1
|
||||
@@ -64,8 +66,9 @@ public:
|
||||
friend std::ostream& operator<< (std::ostream& os,
|
||||
const G4DeexPrecoParameters&);
|
||||
|
||||
// inline access methods
|
||||
G4int GetVerbose() const;
|
||||
|
||||
// inline access methods
|
||||
inline G4double GetLevelDensity() const;
|
||||
|
||||
inline G4double GetR0() const;
|
||||
@@ -102,8 +105,6 @@ public:
|
||||
|
||||
inline G4int GetUploadZ() const;
|
||||
|
||||
inline G4int GetVerbose() const;
|
||||
|
||||
inline G4bool NeverGoBack() const;
|
||||
|
||||
inline G4bool UseSoftCutoff() const;
|
||||
@@ -168,8 +169,6 @@ public:
|
||||
|
||||
void SetTwoJMAX(G4int);
|
||||
|
||||
void SetUploadZ(G4int);
|
||||
|
||||
void SetVerbose(G4int);
|
||||
|
||||
void SetNeverGoBack(G4bool);
|
||||
@@ -203,19 +202,16 @@ public:
|
||||
|
||||
void SetDeexChannelsType(G4DeexChannelType);
|
||||
|
||||
// obsolete method (has no effect)
|
||||
inline void SetUseFilesNEW(G4bool) {};
|
||||
|
||||
private:
|
||||
|
||||
G4bool IsLocked() const;
|
||||
|
||||
G4DeexPrecoParameters(const G4DeexPrecoParameters & right) = delete;
|
||||
const G4DeexPrecoParameters& operator=
|
||||
(const G4DeexPrecoParameters &right) = delete;
|
||||
G4bool operator==(const G4DeexPrecoParameters &right) const = delete;
|
||||
G4bool operator!=(const G4DeexPrecoParameters &right) const = delete;
|
||||
|
||||
private:
|
||||
|
||||
G4bool IsLocked() const;
|
||||
|
||||
G4DeexParametersMessenger* theMessenger;
|
||||
G4StateManager* fStateManager;
|
||||
|
||||
@@ -260,7 +256,6 @@ private:
|
||||
G4int fMinZForPreco;
|
||||
G4int fMinAForPreco;
|
||||
|
||||
G4int fMaxZ;
|
||||
G4int fVerbose;
|
||||
|
||||
// Preco flags
|
||||
@@ -279,6 +274,7 @@ private:
|
||||
G4bool fLD; // use simple level density model
|
||||
G4bool fFD; // use transition to discrete level
|
||||
G4bool fIsomerFlag; // enable isomere production
|
||||
G4bool fLocalVerbose; // is user set verbose for this module
|
||||
|
||||
// type of a set of e-exitation channels
|
||||
G4DeexChannelType fDeexChannelType;
|
||||
@@ -373,16 +369,6 @@ inline G4int G4DeexPrecoParameters::GetTwoJMAX() const
|
||||
return fTwoJMAX;
|
||||
}
|
||||
|
||||
inline G4int G4DeexPrecoParameters::GetUploadZ() const
|
||||
{
|
||||
return fMaxZ;
|
||||
}
|
||||
|
||||
inline G4int G4DeexPrecoParameters::GetVerbose() const
|
||||
{
|
||||
return fVerbose;
|
||||
}
|
||||
|
||||
inline G4bool G4DeexPrecoParameters::NeverGoBack() const
|
||||
{
|
||||
return fNeverGoBack;
|
||||
|
||||
+2
-7
@@ -72,9 +72,8 @@ public:
|
||||
~G4NuclearLevelData();
|
||||
|
||||
// run time call to access or to create level manager
|
||||
// isLocked flag informs, that the thread is already locked
|
||||
const G4LevelManager* GetLevelManager(G4int Z, G4int A,
|
||||
G4bool isLocked = false);
|
||||
// if data are not yet uploaded then lazy initialisation is used
|
||||
const G4LevelManager* GetLevelManager(G4int Z, G4int A);
|
||||
|
||||
// add private data to isotope from master thread
|
||||
G4bool AddPrivateData(G4int Z, G4int A, const G4String& filename);
|
||||
@@ -118,10 +117,6 @@ public:
|
||||
|
||||
private:
|
||||
|
||||
void InitialiseForIsotope(G4int Z, G4int A);
|
||||
|
||||
void InitialiseUp(G4int Z);
|
||||
|
||||
G4DeexPrecoParameters* fDeexPrecoParameters;
|
||||
G4LevelReader* fLevelReader;
|
||||
G4PairingCorrection* fPairingCorrection;
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
# Package: Geant4.src.G4processes.G4hadronic.G4hadronic_models.G4hadronic_deex.G4hadronic_deex_management
|
||||
#
|
||||
# Sources description for a library.
|
||||
# Lists the sources and headers of the code explicitely.
|
||||
# Lists the sources and headers of the code explicitly.
|
||||
# Lists include paths needed.
|
||||
# Lists the internal granular and global dependencies of the library.
|
||||
# Source specific properties should be added at the end.
|
||||
@@ -14,32 +14,9 @@
|
||||
#
|
||||
#------------------------------------------------------------------------------
|
||||
|
||||
# List external includes needed.
|
||||
include_directories(${CLHEP_INCLUDE_DIRS})
|
||||
|
||||
# List internal includes needed.
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPGeometry/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPNumerics/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPRandom/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/global/management/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/materials/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/intercoms/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/particles/bosons/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/barions/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/ions/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/mesons/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/particles/leptons/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/particles/management/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/management/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/util/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/util/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/util/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/track/include)
|
||||
|
||||
#
|
||||
# Define the Geant4 Module.
|
||||
#
|
||||
include(Geant4MacroDefineModule)
|
||||
GEANT4_DEFINE_MODULE(NAME G4hadronic_deex_management
|
||||
HEADERS
|
||||
G4DeexParametersMessenger.hh
|
||||
|
||||
+7
-16
@@ -61,46 +61,40 @@
|
||||
G4DeexParametersMessenger::G4DeexParametersMessenger(G4DeexPrecoParameters* ptr)
|
||||
: theParameters(ptr)
|
||||
{
|
||||
fDirectory = new G4UIdirectory("/process/deex/");
|
||||
fDirectory = new G4UIdirectory("/process/had/deex/");
|
||||
fDirectory->SetGuidance("Commands for nuclear de-excitation module.");
|
||||
|
||||
readCmd = new G4UIcmdWithABool("/process/deex/readICdata",this);
|
||||
readCmd = new G4UIcmdWithABool("/process/had/deex/readICdata",this);
|
||||
readCmd->SetGuidance("Enable/disable download IC data per atomic shell.");
|
||||
readCmd->SetParameterName("readIC",true);
|
||||
readCmd->SetDefaultValue(false);
|
||||
readCmd->AvailableForStates(G4State_PreInit);
|
||||
|
||||
icCmd = new G4UIcmdWithABool("/process/deex/setIC",this);
|
||||
icCmd = new G4UIcmdWithABool("/process/had/deex/setIC",this);
|
||||
icCmd->SetGuidance("Enable/disable simulation of e- internal conversion.");
|
||||
icCmd->SetParameterName("IC",true);
|
||||
icCmd->SetDefaultValue(true);
|
||||
icCmd->AvailableForStates(G4State_PreInit);
|
||||
|
||||
corgCmd = new G4UIcmdWithABool("/process/deex/correlatedGamma",this);
|
||||
corgCmd = new G4UIcmdWithABool("/process/had/deex/correlatedGamma",this);
|
||||
corgCmd->SetGuidance("Enable/disable simulation of correlated gamma emission.");
|
||||
corgCmd->SetParameterName("corrG",true);
|
||||
corgCmd->SetDefaultValue(false);
|
||||
corgCmd->AvailableForStates(G4State_PreInit);
|
||||
|
||||
isoCmd = new G4UIcmdWithABool("/process/deex/isomerProduction",this);
|
||||
isoCmd = new G4UIcmdWithABool("/process/had/deex/isomerProduction",this);
|
||||
isoCmd->SetGuidance("Enable/disable simulation of long lived isomers.");
|
||||
isoCmd->SetParameterName("corrG",true);
|
||||
isoCmd->SetDefaultValue(false);
|
||||
isoCmd->AvailableForStates(G4State_PreInit);
|
||||
|
||||
maxjCmd = new G4UIcmdWithAnInteger("/process/deex/maxTwoJ",this);
|
||||
maxjCmd = new G4UIcmdWithAnInteger("/process/had/deex/maxTwoJ",this);
|
||||
maxjCmd->SetGuidance("Set max value for 2J for simulation of correlated gamma emission.");
|
||||
maxjCmd->SetParameterName("max2J",true);
|
||||
maxjCmd->SetDefaultValue(10);
|
||||
maxjCmd->AvailableForStates(G4State_PreInit);
|
||||
|
||||
upCmd = new G4UIcmdWithAnInteger("/process/deex/uploadZ",this);
|
||||
upCmd->SetGuidance("Set max value for Z to be uploaded before 1st event");
|
||||
upCmd->SetParameterName("uploadZ",true);
|
||||
upCmd->SetDefaultValue(30);
|
||||
upCmd->AvailableForStates(G4State_PreInit);
|
||||
|
||||
verbCmd = new G4UIcmdWithAnInteger("/process/deex/verbose",this);
|
||||
verbCmd = new G4UIcmdWithAnInteger("/process/had/deex/verbose",this);
|
||||
verbCmd->SetGuidance("Set verbosity level.");
|
||||
verbCmd->SetParameterName("verb",true);
|
||||
verbCmd->SetDefaultValue(1);
|
||||
@@ -118,7 +112,6 @@ G4DeexParametersMessenger::~G4DeexParametersMessenger()
|
||||
delete corgCmd;
|
||||
delete isoCmd;
|
||||
delete maxjCmd;
|
||||
delete upCmd;
|
||||
delete verbCmd;
|
||||
}
|
||||
|
||||
@@ -137,8 +130,6 @@ void G4DeexParametersMessenger::SetNewValue(G4UIcommand* command,
|
||||
theParameters->SetIsomerProduction(isoCmd->GetNewBoolValue(newValue));
|
||||
} else if (command == maxjCmd) {
|
||||
theParameters->SetTwoJMAX(maxjCmd->GetNewIntValue(newValue));
|
||||
} else if (command == upCmd) {
|
||||
theParameters->SetUploadZ(upCmd->GetNewIntValue(newValue));
|
||||
} else if (command == verbCmd) {
|
||||
theParameters->SetVerbose(verbCmd->GetNewIntValue(newValue));
|
||||
}
|
||||
|
||||
+10
-11
@@ -75,8 +75,7 @@ void G4DeexPrecoParameters::SetDefaults()
|
||||
fPrecoType = 3;
|
||||
fDeexType = 3;
|
||||
fTwoJMAX = 10;
|
||||
fMaxZ = 9;
|
||||
fVerbose = 1;
|
||||
fVerbose = G4HadronicParameters::Instance()->GetVerboseLevel();
|
||||
fNeverGoBack = false;
|
||||
fUseSoftCutoff = false;
|
||||
fUseCEM = true;
|
||||
@@ -90,6 +89,7 @@ void G4DeexPrecoParameters::SetDefaults()
|
||||
fLD = true;
|
||||
fFD = false;
|
||||
fIsomerFlag = true;
|
||||
fLocalVerbose = false;
|
||||
fDeexChannelType = fCombined;
|
||||
fInternalConversionID =
|
||||
G4PhysicsModelCatalog::Register("e-InternalConvertion");
|
||||
@@ -194,15 +194,10 @@ void G4DeexPrecoParameters::SetTwoJMAX(G4int n)
|
||||
fTwoJMAX = n;
|
||||
}
|
||||
|
||||
void G4DeexPrecoParameters::SetUploadZ(G4int z)
|
||||
{
|
||||
if(IsLocked() || z < 1) { return; }
|
||||
fMaxZ = z;
|
||||
}
|
||||
|
||||
void G4DeexPrecoParameters::SetVerbose(G4int n)
|
||||
{
|
||||
if(IsLocked()) { return; }
|
||||
if( n != fVerbose ) { fLocalVerbose = true; }
|
||||
fVerbose = n;
|
||||
}
|
||||
|
||||
@@ -335,16 +330,20 @@ std::ostream& G4DeexPrecoParameters::StreamInfo(std::ostream& os) const
|
||||
<< fInternalConversionID << "\n";
|
||||
os << "Correlated gamma emission flag " << fCorrelatedGamma << "\n";
|
||||
os << "Max 2J for sampling of angular correlations " << fTwoJMAX << "\n";
|
||||
os << "Upload data before 1st event for Z < " << fMaxZ << "\n";
|
||||
os << "=======================================================================" << "\n";
|
||||
os.precision(prec);
|
||||
return os;
|
||||
}
|
||||
|
||||
G4int G4DeexPrecoParameters::GetVerbose() const
|
||||
{
|
||||
G4int verb = G4HadronicParameters::Instance()->GetVerboseLevel();
|
||||
return (fLocalVerbose && verb > 0) ? fVerbose : verb;
|
||||
}
|
||||
|
||||
void G4DeexPrecoParameters::Dump() const
|
||||
{
|
||||
if (G4Threading::IsMasterThread() && fVerbose > 0 &&
|
||||
G4HadronicParameters::Instance()->GetVerboseLevel() > 0 ) { StreamInfo(G4cout); }
|
||||
if ( G4Threading::IsMasterThread() && GetVerbose() > 0 ) { StreamInfo(G4cout); }
|
||||
}
|
||||
|
||||
std::ostream& operator<< (std::ostream& os, const G4DeexPrecoParameters& par)
|
||||
|
||||
@@ -391,7 +391,7 @@ G4LevelReader::LevelManager(G4int Z, G4int A, G4int nlev,
|
||||
if(!ReadDataItem(infile,fICC[k])) {
|
||||
//if(infile.fail()) {
|
||||
if(fVerbose > 1) {
|
||||
G4cout << "### Fail to read convertion coeff k= " << k
|
||||
G4cout << "### Fail to read conversion coeff k= " << k
|
||||
<< " for transition j= " << j
|
||||
<< " Z= " << Z << " A= " << A << G4endl;
|
||||
}
|
||||
|
||||
+36
-63
@@ -458,40 +458,39 @@ G4NuclearLevelData::~G4NuclearLevelData()
|
||||
for(G4int Z=1; Z<ZMAX; ++Z) {
|
||||
size_t nn = (fLevelManagers[Z]).size();
|
||||
for(size_t j=0; j<nn; ++j) {
|
||||
//G4cout << " G4NuclearLevelData delete Z= " << Z
|
||||
// << " A= " << AMIN[Z]+j << G4endl;
|
||||
delete (fLevelManagers[Z])[j];
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
const G4LevelManager*
|
||||
G4NuclearLevelData::GetLevelManager(G4int Z, G4int A, G4bool isLocked)
|
||||
G4NuclearLevelData::GetLevelManager(G4int Z, G4int A)
|
||||
{
|
||||
const G4LevelManager* man = nullptr;
|
||||
if(0 < Z && Z < ZMAX && A >= AMIN[Z] && A <= AMAX[Z]) {
|
||||
const G4int idx = A - AMIN[Z];
|
||||
if(!(fLevelManagerFlags[Z])[idx]) {
|
||||
if(isLocked) {
|
||||
(fLevelManagers[Z])[idx] = fLevelReader->CreateLevelManager(Z, A);
|
||||
(fLevelManagerFlags[Z])[idx] = true;
|
||||
} else {
|
||||
InitialiseForIsotope(Z, A);
|
||||
}
|
||||
if(Z < 1 || Z >= ZMAX || A < AMIN[Z] || A > AMAX[Z]) { return nullptr; }
|
||||
const G4int idx = A - AMIN[Z];
|
||||
if( !(fLevelManagerFlags[Z])[idx] ) {
|
||||
#ifdef G4MULTITHREADED
|
||||
G4MUTEXLOCK(&nuclearLevelDataMutex);
|
||||
if( !(fLevelManagerFlags[Z])[idx] ) {
|
||||
#endif
|
||||
(fLevelManagers[Z])[idx] = fLevelReader->CreateLevelManager(Z, A);
|
||||
(fLevelManagerFlags[Z])[idx] = true;
|
||||
#ifdef G4MULTITHREADED
|
||||
}
|
||||
man = (fLevelManagers[Z])[idx];
|
||||
G4MUTEXUNLOCK(&nuclearLevelDataMutex);
|
||||
#endif
|
||||
}
|
||||
return man;
|
||||
return (fLevelManagers[Z])[idx];
|
||||
}
|
||||
|
||||
G4bool
|
||||
G4NuclearLevelData::AddPrivateData(G4int Z, G4int A, const G4String& filename)
|
||||
{
|
||||
G4bool res = false;
|
||||
#ifdef G4MULTITHREADED
|
||||
G4MUTEXLOCK(&nuclearLevelDataMutex);
|
||||
#endif
|
||||
if(Z > 0 && Z < ZMAX && A >= AMIN[Z] && A <= AMAX[Z]) {
|
||||
#ifdef G4MULTITHREADED
|
||||
G4MUTEXLOCK(&nuclearLevelDataMutex);
|
||||
#endif
|
||||
const G4LevelManager* newman =
|
||||
fLevelReader->MakeLevelManager(Z, A, filename);
|
||||
if(newman) {
|
||||
@@ -504,6 +503,9 @@ G4NuclearLevelData::AddPrivateData(G4int Z, G4int A, const G4String& filename)
|
||||
(fLevelManagers[Z])[idx] = newman;
|
||||
(fLevelManagerFlags[Z])[idx] = true;
|
||||
}
|
||||
#ifdef G4MULTITHREADED
|
||||
G4MUTEXUNLOCK(&nuclearLevelDataMutex);
|
||||
#endif
|
||||
} else {
|
||||
G4ExceptionDescription ed;
|
||||
ed << "private nuclear level data for Z= " << Z << " A= " << A
|
||||
@@ -511,9 +513,6 @@ G4NuclearLevelData::AddPrivateData(G4int Z, G4int A, const G4String& filename)
|
||||
G4Exception("G4NuclearLevelData::AddPrivateData","had0433",FatalException,
|
||||
ed,"Stop execution");
|
||||
}
|
||||
#ifdef G4MULTITHREADED
|
||||
G4MUTEXUNLOCK(&nuclearLevelDataMutex);
|
||||
#endif
|
||||
return res;
|
||||
}
|
||||
|
||||
@@ -527,55 +526,29 @@ G4int G4NuclearLevelData::GetMaxA(G4int Z) const
|
||||
return (Z >= 0 && Z < ZMAX) ? AMAX[Z] : 0;
|
||||
}
|
||||
|
||||
void G4NuclearLevelData::InitialiseForIsotope(G4int Z, G4int A)
|
||||
{
|
||||
if(Z < 1 || Z >= ZMAX || A < AMIN[Z] || A > AMAX[Z]) { return; }
|
||||
const G4int idx = A - AMIN[Z];
|
||||
#ifdef G4MULTITHREADED
|
||||
if(!(fLevelManagerFlags[Z])[idx]) {
|
||||
G4MUTEXLOCK(&nuclearLevelDataMutex);
|
||||
#endif
|
||||
// initialise only once
|
||||
// before 1st event fragments Z < zmax are initialized
|
||||
if(!fInitialized) {
|
||||
fInitialized = true;
|
||||
InitialiseUp(fDeexPrecoParameters->GetUploadZ());
|
||||
}
|
||||
if(!(fLevelManagerFlags[Z])[idx]) {
|
||||
(fLevelManagers[Z])[idx] = fLevelReader->CreateLevelManager(Z, A);
|
||||
(fLevelManagerFlags[Z])[idx] = true;
|
||||
}
|
||||
#ifdef G4MULTITHREADED
|
||||
G4MUTEXUNLOCK(&nuclearLevelDataMutex);
|
||||
}
|
||||
#endif
|
||||
}
|
||||
|
||||
void G4NuclearLevelData::UploadNuclearLevelData(G4int Z)
|
||||
void G4NuclearLevelData::UploadNuclearLevelData(G4int ZZ)
|
||||
{
|
||||
if(fInitialized) return;
|
||||
#ifdef G4MULTITHREADED
|
||||
G4MUTEXLOCK(&nuclearLevelDataMutex);
|
||||
#endif
|
||||
fDeexPrecoParameters->SetUploadZ(Z);
|
||||
InitialiseUp(Z);
|
||||
#ifdef G4MULTITHREADED
|
||||
G4MUTEXUNLOCK(&nuclearLevelDataMutex);
|
||||
#endif
|
||||
}
|
||||
|
||||
void G4NuclearLevelData::InitialiseUp(G4int ZZ)
|
||||
{
|
||||
G4int mZ = ZZ;
|
||||
if(mZ >= ZMAX) { mZ = ZMAX; }
|
||||
for(G4int Z=1; Z<mZ; ++Z) {
|
||||
for(G4int A=AMIN[Z]; A<=AMAX[Z]; ++A) {
|
||||
G4int idx = A - AMIN[Z];
|
||||
if(!(fLevelManagerFlags[Z])[idx]) {
|
||||
(fLevelManagers[Z])[idx] = fLevelReader->CreateLevelManager(Z, A);
|
||||
(fLevelManagerFlags[Z])[idx] = true;
|
||||
if(!fInitialized) {
|
||||
fInitialized = true;
|
||||
G4int mZ = ZZ;
|
||||
if(mZ > ZMAX) { mZ = ZMAX; }
|
||||
for(G4int Z=1; Z<mZ; ++Z) {
|
||||
for(G4int A=AMIN[Z]; A<=AMAX[Z]; ++A) {
|
||||
G4int idx = A - AMIN[Z];
|
||||
if( !(fLevelManagerFlags[Z])[idx] ) {
|
||||
(fLevelManagers[Z])[idx] = fLevelReader->CreateLevelManager(Z, A);
|
||||
(fLevelManagerFlags[Z])[idx] = true;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
#ifdef G4MULTITHREADED
|
||||
G4MUTEXUNLOCK(&nuclearLevelDataMutex);
|
||||
#endif
|
||||
}
|
||||
|
||||
G4double G4NuclearLevelData::GetMaxLevelEnergy(G4int Z, G4int A) const
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
# Package: Geant4.src.G4processes.G4hadronic.G4hadronic_models.G4hadronic_deex.G4hadronic_deex_multifragmentation
|
||||
#
|
||||
# Sources description for a library.
|
||||
# Lists the sources and headers of the code explicitely.
|
||||
# Lists the sources and headers of the code explicitly.
|
||||
# Lists include paths needed.
|
||||
# Lists the internal granular and global dependencies of the library.
|
||||
# Source specific properties should be added at the end.
|
||||
@@ -14,30 +14,9 @@
|
||||
#
|
||||
#------------------------------------------------------------------------------
|
||||
|
||||
# List external includes needed.
|
||||
include_directories(${CLHEP_INCLUDE_DIRS})
|
||||
|
||||
# List internal includes needed.
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPGeometry/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPNumerics/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPRandom/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/global/management/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/materials/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/particles/bosons/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/barions/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/ions/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/mesons/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/particles/leptons/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/particles/management/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/management/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/util/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/util/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/track/include)
|
||||
|
||||
#
|
||||
# Define the Geant4 Module.
|
||||
#
|
||||
include(Geant4MacroDefineModule)
|
||||
GEANT4_DEFINE_MODULE(NAME G4hadronic_deex_multifragmentation
|
||||
HEADERS
|
||||
G4Solver.hh
|
||||
|
||||
+3
-3
@@ -36,20 +36,20 @@
|
||||
G4StatMFMacroChemicalPotential &
|
||||
G4StatMFMacroChemicalPotential::operator=(const G4StatMFMacroChemicalPotential & )
|
||||
{
|
||||
throw G4HadronicException(__FILE__, __LINE__, "G4StatMFMacroChemicalPotential::operator= meant to not be accessable");
|
||||
throw G4HadronicException(__FILE__, __LINE__, "G4StatMFMacroChemicalPotential::operator= meant to not be accessible");
|
||||
return *this;
|
||||
}
|
||||
|
||||
G4bool G4StatMFMacroChemicalPotential::operator==(const G4StatMFMacroChemicalPotential & ) const
|
||||
{
|
||||
throw G4HadronicException(__FILE__, __LINE__, "G4StatMFMacroChemicalPotential::operator== meant to not be accessable");
|
||||
throw G4HadronicException(__FILE__, __LINE__, "G4StatMFMacroChemicalPotential::operator== meant to not be accessible");
|
||||
return false;
|
||||
}
|
||||
|
||||
|
||||
G4bool G4StatMFMacroChemicalPotential::operator!=(const G4StatMFMacroChemicalPotential & ) const
|
||||
{
|
||||
throw G4HadronicException(__FILE__, __LINE__, "G4StatMFMacroChemicalPotential::operator!= meant to not be accessable");
|
||||
throw G4HadronicException(__FILE__, __LINE__, "G4StatMFMacroChemicalPotential::operator!= meant to not be accessible");
|
||||
return true;
|
||||
}
|
||||
|
||||
|
||||
+2
-2
@@ -34,7 +34,7 @@
|
||||
// Copy constructor
|
||||
G4StatMFMicroManager::G4StatMFMicroManager(const G4StatMFMicroManager & )
|
||||
{
|
||||
throw G4HadronicException(__FILE__, __LINE__, "G4StatMFMicroManager::copy_constructor meant to not be accessable");
|
||||
throw G4HadronicException(__FILE__, __LINE__, "G4StatMFMicroManager::copy_constructor meant to not be accessible");
|
||||
}
|
||||
|
||||
// Operators
|
||||
@@ -42,7 +42,7 @@ G4StatMFMicroManager::G4StatMFMicroManager(const G4StatMFMicroManager & )
|
||||
G4StatMFMicroManager & G4StatMFMicroManager::
|
||||
operator=(const G4StatMFMicroManager & )
|
||||
{
|
||||
throw G4HadronicException(__FILE__, __LINE__, "G4StatMFMicroManager::operator= meant to not be accessable");
|
||||
throw G4HadronicException(__FILE__, __LINE__, "G4StatMFMicroManager::operator= meant to not be accessible");
|
||||
return *this;
|
||||
}
|
||||
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
# Package: Geant4.src.G4processes.G4hadronic.G4hadronic_models.G4hadronic_deex.G4hadronic_deex_photon_evaporation
|
||||
#
|
||||
# Sources description for a library.
|
||||
# Lists the sources and headers of the code explicitely.
|
||||
# Lists the sources and headers of the code explicitly.
|
||||
# Lists include paths needed.
|
||||
# Lists the internal granular and global dependencies of the library.
|
||||
# Source specific properties should be added at the end.
|
||||
@@ -14,36 +14,9 @@
|
||||
#
|
||||
#------------------------------------------------------------------------------
|
||||
|
||||
# List external includes needed.
|
||||
include_directories(${CLHEP_INCLUDE_DIRS})
|
||||
|
||||
# List internal includes needed.
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/geometry/management/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/geometry/volumes/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPGeometry/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPNumerics/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPRandom/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/global/management/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/materials/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/particles/bosons/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/barions/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/ions/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/mesons/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/particles/leptons/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/particles/management/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/electromagnetic/lowenergy/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/management/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/util/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/management/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/util/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/util/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/management/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/track/include)
|
||||
|
||||
#
|
||||
# Define the Geant4 Module.
|
||||
#
|
||||
include(Geant4MacroDefineModule)
|
||||
GEANT4_DEFINE_MODULE(NAME G4hadronic_deex_photon_evaporation
|
||||
HEADERS
|
||||
G4GammaTransition.hh
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
# Package: Geant4.src.G4processes.G4hadronic.G4hadronic_models.G4hadronic_deex.G4hadronic_deex_util
|
||||
#
|
||||
# Sources description for a library.
|
||||
# Lists the sources and headers of the code explicitely.
|
||||
# Lists the sources and headers of the code explicitly.
|
||||
# Lists include paths needed.
|
||||
# Lists the internal granular and global dependencies of the library.
|
||||
# Source specific properties should be added at the end.
|
||||
@@ -14,30 +14,9 @@
|
||||
#
|
||||
#------------------------------------------------------------------------------
|
||||
|
||||
# List external includes needed.
|
||||
include_directories(${CLHEP_INCLUDE_DIRS})
|
||||
|
||||
# List internal includes needed.
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPGeometry/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPNumerics/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPRandom/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/global/management/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/materials/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/particles/bosons/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/barions/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/ions/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/mesons/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/particles/leptons/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/particles/management/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/management/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/util/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/util/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/track/include)
|
||||
|
||||
#
|
||||
# Define the Geant4 Module.
|
||||
#
|
||||
include(Geant4MacroDefineModule)
|
||||
GEANT4_DEFINE_MODULE(NAME G4hadronic_deex_util
|
||||
HEADERS
|
||||
G4AlphaCoulombBarrier.hh
|
||||
|
||||
@@ -14,6 +14,13 @@ code and to keep track of all tags.
|
||||
* Please list in reverse chronological order (last date on top)
|
||||
---------------------------------------------------------------
|
||||
|
||||
24 November 2020 - Alberto Ribon (hadr-emd-V10-06-00)
|
||||
-----------------------------------------------------
|
||||
- G4EMDissociation : fix Lorentz kinematics (which was causing
|
||||
energy-momentum violations) and switch off too frequent warning
|
||||
messages by G4Fragment, as suggested by Laurie Nevay and
|
||||
Andrey Abramov (bug report #2254).
|
||||
|
||||
07 March 2017 - Vladimir Ivanchenko (hadr-emd-V10-03-00)
|
||||
-----------------------------------------------------
|
||||
- G4EMDissociation.cc : removed explicit instantiation of
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
# Package: Geant4.src.G4processes.G4hadronic.G4hadronic_models.G4hadronic_em_dissociation
|
||||
#
|
||||
# Sources description for a library.
|
||||
# Lists the sources and headers of the code explicitely.
|
||||
# Lists the sources and headers of the code explicitly.
|
||||
# Lists include paths needed.
|
||||
# Lists the internal granular and global dependencies of the library.
|
||||
# Source specific properties should be added at the end.
|
||||
@@ -14,47 +14,9 @@
|
||||
#
|
||||
#------------------------------------------------------------------------------
|
||||
|
||||
# List external includes needed.
|
||||
include_directories(${CLHEP_INCLUDE_DIRS})
|
||||
|
||||
# List internal includes needed.
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/geometry/magneticfield/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/geometry/management/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/geometry/volumes/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPGeometry/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPNumerics/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPRandom/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/global/management/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/materials/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/particles/bosons/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/barions/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/ions/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/mesons/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/particles/leptons/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/particles/management/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/particles/shortlived/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/cross_sections/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/management/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/evaporation/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/fermi_breakup/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/handler/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/management/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/multifragmentation/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/photon_evaporation/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/util/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/im_r_matrix/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/management/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/pre_equilibrium/exciton_model/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/util/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/processes/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/util/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/management/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/track/include)
|
||||
|
||||
#
|
||||
# Define the Geant4 Module.
|
||||
#
|
||||
include(Geant4MacroDefineModule)
|
||||
GEANT4_DEFINE_MODULE(NAME G4hadronic_em_dissociation
|
||||
HEADERS
|
||||
G4EMDissociation.hh
|
||||
|
||||
@@ -244,7 +244,7 @@ G4HadFinalState *G4EMDissociation::ApplyYourself
|
||||
// energy includes the projectile and virtual gamma. This is then used
|
||||
// to calculate the boost required for the secondaries.
|
||||
|
||||
pP.setE(pP.e()+Eg);
|
||||
pP.setE( std::sqrt( pP.vect().mag2() + (mass + Eg)*(mass + Eg) ) );
|
||||
boost = pP.findBoostToCM();
|
||||
}
|
||||
else
|
||||
@@ -349,7 +349,7 @@ G4HadFinalState *G4EMDissociation::ApplyYourself
|
||||
|
||||
G4Fragment* theFragment = new
|
||||
G4Fragment((G4int) typeDaughter->GetBaryonNumber(),
|
||||
(G4int) typeDaughter->GetPDGCharge(), dynamicDaughter->Get4Momentum());
|
||||
(G4int) typeDaughter->GetPDGCharge(), dynamicDaughter->Get4Momentum(), false);
|
||||
|
||||
if (verboseLevel >= 2) {
|
||||
G4cout <<"Dynamic properties of the prefragment:" <<G4endl;
|
||||
|
||||
Executable → Regular
Executable → Regular
@@ -4,7 +4,7 @@
|
||||
# Package: Geant4.src.G4processes.G4hadronic.G4hadronic_models.G4had_fission
|
||||
#
|
||||
# Sources description for a library.
|
||||
# Lists the sources and headers of the code explicitely.
|
||||
# Lists the sources and headers of the code explicitly.
|
||||
# Lists include paths needed.
|
||||
# Lists the internal granular and global dependencies of the library.
|
||||
# Source specific properties should be added at the end.
|
||||
@@ -14,35 +14,9 @@
|
||||
#
|
||||
#------------------------------------------------------------------------------
|
||||
|
||||
# List external includes needed.
|
||||
include_directories(${CLHEP_INCLUDE_DIRS})
|
||||
|
||||
# List internal includes needed.
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/geometry/management/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/geometry/volumes/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPGeometry/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPRandom/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/global/management/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/materials/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/particles/bosons/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/barions/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/ions/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/mesons/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/particles/leptons/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/particles/management/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/cross_sections/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/management/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/management/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/particle_hp/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/processes/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/util/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/management/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/track/include)
|
||||
|
||||
#
|
||||
# Define the Geant4 Module.
|
||||
#
|
||||
include(Geant4MacroDefineModule)
|
||||
GEANT4_DEFINE_MODULE(NAME G4had_fission
|
||||
HEADERS
|
||||
G4FissLib.hh
|
||||
|
||||
Executable → Regular
@@ -4,7 +4,7 @@
|
||||
# Package: Geant4.src.G4processes.G4hadronic.G4hadronic_models.G4lepto_nuclear
|
||||
#
|
||||
# Sources description for a library.
|
||||
# Lists the sources and headers of the code explicitely.
|
||||
# Lists the sources and headers of the code explicitly.
|
||||
# Lists include paths needed.
|
||||
# Lists the internal granular and global dependencies of the library.
|
||||
# Source specific properties should be added at the end.
|
||||
@@ -14,50 +14,9 @@
|
||||
#
|
||||
#------------------------------------------------------------------------------
|
||||
|
||||
# List external includes needed.
|
||||
include_directories(${CLHEP_INCLUDE_DIRS})
|
||||
|
||||
# List internal includes needed.
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/geometry/management/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/geometry/volumes/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPGeometry/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPRandom/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/global/management/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/materials/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/particles/bosons/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/barions/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/ions/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/mesons/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/particles/leptons/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/particles/management/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/cross_sections/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/management/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/binary_cascade/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/cascade/cascade/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/evaporation/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/fermi_breakup/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/handler/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/multifragmentation/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/management/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/photon_evaporation/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/util/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/lend/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/management/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/parton_string/hadronization/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/parton_string/diffraction/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/parton_string/management/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/pre_equilibrium/exciton_model/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/theo_high_energy/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/util/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/processes/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/util/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/management/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/track/include)
|
||||
|
||||
#
|
||||
# Define the Geant4 Module.
|
||||
#
|
||||
include(Geant4MacroDefineModule)
|
||||
GEANT4_DEFINE_MODULE(NAME G4had_gamma_nuclear
|
||||
HEADERS
|
||||
G4LENDorBERTModel.hh
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
# Package: Geant4.src.G4processes.G4hadronic.G4hadronic_models.G4had_im_r_matrix
|
||||
#
|
||||
# Sources description for a library.
|
||||
# Lists the sources and headers of the code explicitely.
|
||||
# Lists the sources and headers of the code explicitly.
|
||||
# Lists include paths needed.
|
||||
# Lists the internal granular and global dependencies of the library.
|
||||
# Source specific properties should be added at the end.
|
||||
@@ -14,38 +14,9 @@
|
||||
#
|
||||
#------------------------------------------------------------------------------
|
||||
|
||||
# List external includes needed.
|
||||
include_directories(${CLHEP_INCLUDE_DIRS})
|
||||
|
||||
# List internal includes needed.
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/geometry/magneticfield/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/geometry/management/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/geometry/volumes/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPGeometry/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPNumerics/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPRandom/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/global/management/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/materials/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/particles/bosons/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/barions/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/ions/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/mesons/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/particles/leptons/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/particles/management/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/particles/shortlived/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/cross_sections/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/management/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/management/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/util/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/processes/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/util/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/management/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/track/include)
|
||||
|
||||
#
|
||||
# Define the Geant4 Module.
|
||||
#
|
||||
include(Geant4MacroDefineModule)
|
||||
GEANT4_DEFINE_MODULE(NAME G4had_im_r_matrix
|
||||
HEADERS
|
||||
G4ListOfCollisions.hh
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
# Package: Geant4.src.G4processes.G4hadronic.G4hadronic_models.G4had_hetcpp.G4hadronic_hetcpp_utils
|
||||
#
|
||||
# Sources description for a library.
|
||||
# Lists the sources and headers of the code explicitely.
|
||||
# Lists the sources and headers of the code explicitly.
|
||||
# Lists include paths needed.
|
||||
# Lists the internal granular and global dependencies of the library.
|
||||
# Source specific properties should be added at the end.
|
||||
@@ -14,36 +14,9 @@
|
||||
#
|
||||
#------------------------------------------------------------------------------
|
||||
|
||||
# List external includes needed.
|
||||
include_directories(${CLHEP_INCLUDE_DIRS})
|
||||
|
||||
# List internal includes needed.
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/geometry/management/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/geometry/volumes/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPGeometry/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPRandom/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/global/management/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/materials/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/particles/bosons/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/barions/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/ions/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/mesons/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/particles/leptons/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/particles/management/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/cross_sections/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/management/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/binary_cascade/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/im_r_matrix/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/management/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/util/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/management/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/track/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/intercoms/include)
|
||||
|
||||
#
|
||||
# Define the Geant4 Module.
|
||||
#
|
||||
include(Geant4MacroDefineModule)
|
||||
GEANT4_DEFINE_MODULE(NAME G4hadronic_inclxx_physics
|
||||
HEADERS
|
||||
G4INCLAvatarDumpAction.hh
|
||||
|
||||
+1
-1
@@ -92,7 +92,7 @@ namespace G4INCL {
|
||||
} else if(ParticleConfig::isPair(nucleon, strange, Neutron, SigmaPlus)) {
|
||||
finalType = Proton;
|
||||
} else {
|
||||
INCL_ERROR("Unknown particle pair in Strange-N absorbtion: " << nucleon << '\t' << strange << '\n');
|
||||
INCL_ERROR("Unknown particle pair in Strange-N absorption: " << nucleon << '\t' << strange << '\n');
|
||||
return;
|
||||
}
|
||||
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
# Package: Geant4.src.G4processes.G4hadronic.G4hadronic_models.G4had_hetcpp.G4hadronic_hetcpp_utils
|
||||
#
|
||||
# Sources description for a library.
|
||||
# Lists the sources and headers of the code explicitely.
|
||||
# Lists the sources and headers of the code explicitly.
|
||||
# Lists include paths needed.
|
||||
# Lists the internal granular and global dependencies of the library.
|
||||
# Source specific properties should be added at the end.
|
||||
@@ -14,45 +14,9 @@
|
||||
#
|
||||
#------------------------------------------------------------------------------
|
||||
|
||||
# List external includes needed.
|
||||
include_directories(${CLHEP_INCLUDE_DIRS})
|
||||
|
||||
# List internal includes needed.
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/geometry/management/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/geometry/volumes/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPGeometry/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPRandom/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/global/management/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/materials/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/particles/bosons/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/barions/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/ions/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/mesons/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/particles/leptons/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/particles/management/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/cross_sections/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/management/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/binary_cascade/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/im_r_matrix/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/inclxx/incl_physics/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/inclxx/utils/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/evaporation/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/fission/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/handler/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/management/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/util/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/pre_equilibrium/exciton_model/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/management/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/util/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/util/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/management/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/track/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/intercoms/include)
|
||||
|
||||
#
|
||||
# Define the Geant4 Module.
|
||||
#
|
||||
include(Geant4MacroDefineModule)
|
||||
GEANT4_DEFINE_MODULE(NAME G4hadronic_inclxx_interface
|
||||
HEADERS
|
||||
G4INCLXXInterface.hh
|
||||
|
||||
@@ -304,11 +304,11 @@ namespace G4INCL {
|
||||
Bool_t forcedDeltasOutside;
|
||||
/** \brief Event involved forced eta/omega decays outside the nucleus */
|
||||
Bool_t forcedPionResonancesOutside;
|
||||
/** \brief Event involved forced strange absorbtion inside the nucleus */
|
||||
/** \brief Event involved forced strange absorption inside the nucleus */
|
||||
Bool_t absorbedStrangeParticle;
|
||||
/** \brief Event involved forced Sigma Zero decays outside the nucleus */
|
||||
Bool_t forcedSigmaOutside;
|
||||
/** \brief Event involved forced antiKaon/Sigma absorbtion inside the nucleus */
|
||||
/** \brief Event involved forced antiKaon/Sigma absorption inside the nucleus */
|
||||
Bool_t forcedStrangeInside;
|
||||
/** \brief Number of forced Lambda emit out of the nucleus */
|
||||
Int_t emitLambda;
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
# Package: Geant4.src.G4processes.G4hadronic.G4hadronic_models.G4had_hetcpp.G4hadronic_hetcpp_utils
|
||||
#
|
||||
# Sources description for a library.
|
||||
# Lists the sources and headers of the code explicitely.
|
||||
# Lists the sources and headers of the code explicitly.
|
||||
# Lists include paths needed.
|
||||
# Lists the internal granular and global dependencies of the library.
|
||||
# Source specific properties should be added at the end.
|
||||
@@ -14,37 +14,9 @@
|
||||
#
|
||||
#------------------------------------------------------------------------------
|
||||
|
||||
# List external includes needed.
|
||||
include_directories(${CLHEP_INCLUDE_DIRS})
|
||||
|
||||
# List internal includes needed.
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/geometry/management/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/geometry/volumes/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPGeometry/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPRandom/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/global/management/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/materials/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/particles/bosons/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/barions/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/ions/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/mesons/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/particles/leptons/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/particles/management/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/cross_sections/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/management/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/binary_cascade/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/im_r_matrix/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/pre_equilibrium/exciton_model/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/management/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/util/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/management/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/track/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/intercoms/include)
|
||||
|
||||
#
|
||||
# Define the Geant4 Module.
|
||||
#
|
||||
include(Geant4MacroDefineModule)
|
||||
GEANT4_DEFINE_MODULE(NAME G4hadronic_inclxx_utils
|
||||
HEADERS
|
||||
G4INCLAllocationPool.hh
|
||||
|
||||
@@ -13,6 +13,10 @@ code and to keep track of all tags.
|
||||
---------------------------------------------------------------
|
||||
* Please list in reverse chronological order (last date on top)
|
||||
---------------------------------------------------------------
|
||||
12 November 2020 Ben Morgan (hadr-lend-V10-06-03)
|
||||
---------------------------------------------------
|
||||
- Apply typo fixes from Gurkan Myczko (https://github.com/Geant4/geant4/pull/15)
|
||||
|
||||
30 April 2020 Ben Morgan (hadr-lend-V10-06-02)
|
||||
---------------------------------------------------
|
||||
- Remove obsolete GRANULAR_DEPENDENCIES entries
|
||||
@@ -290,7 +294,7 @@ constants, in plan to remove implicit inclusion from globals.hh.
|
||||
|
||||
7 August 2012 Gabriele Cosmo (hadr-lend-V09-05-02)
|
||||
----------------------------------------------
|
||||
Fixed GNUmakefile for use of internal expat library, if explicitely chosen.
|
||||
Fixed GNUmakefile for use of internal expat library, if explicitly chosen.
|
||||
|
||||
13 June 2012 Tatsumi Koi (hadr-lend-V09-05-01)
|
||||
----------------------------------------------
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
# Package: Geant4.src.G4processes.G4hadronic.G4hadronic_models.G4had_lend
|
||||
#
|
||||
# Sources description for a library.
|
||||
# Lists the sources and headers of the code explicitely.
|
||||
# Lists the sources and headers of the code explicitly.
|
||||
# Lists include paths needed.
|
||||
# Lists the internal granular and global dependencies of the library.
|
||||
# Source specific properties should be added at the end.
|
||||
@@ -14,41 +14,9 @@
|
||||
#
|
||||
#------------------------------------------------------------------------------
|
||||
|
||||
# List external includes needed.
|
||||
include_directories(${CLHEP_INCLUDE_DIRS})
|
||||
include_directories(${EXPAT_INCLUDE_DIRS})
|
||||
|
||||
# List internal includes needed.
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/geometry/management/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/geometry/volumes/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPGeometry/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPRandom/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/global/management/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/materials/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/particles/bosons/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/barions/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/ions/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/mesons/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/particles/leptons/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/particles/management/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/cross_sections/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/management/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/management/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/photon_evaporation/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/util/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/pre_equilibrium/exciton_model/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/management/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/util/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/processes/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/util/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/management/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/track/include)
|
||||
|
||||
|
||||
#
|
||||
# Define the Geant4 Module.
|
||||
#
|
||||
include(Geant4MacroDefineModule)
|
||||
GEANT4_DEFINE_MODULE(NAME G4had_lend
|
||||
HEADERS
|
||||
G4GIDI.hh
|
||||
@@ -234,7 +202,7 @@ GEANT4_DEFINE_MODULE(NAME G4had_lend
|
||||
#
|
||||
# Not this again... Need to add *another* compile definition to lend sources
|
||||
# for DLLs....
|
||||
# We do this quick and dirty, add the definition directly. I *don't want it
|
||||
# We do this quick and dirty, add the definition directly. I *don't want it
|
||||
# polluting compile of all other processes modules
|
||||
# in global mode
|
||||
#
|
||||
|
||||
@@ -106,7 +106,7 @@ G4HadFinalState* G4LENDInelastic::ApplyYourself(const G4HadProjectile& aTrack,
|
||||
// of events, this improves on average.
|
||||
|
||||
if (loop > loopMax - 1) {
|
||||
// G4cout << " too many loops, return intial state " << G4endl;
|
||||
// G4cout << " too many loops, return initial state " << G4endl;
|
||||
|
||||
theParticleChange.Clear();
|
||||
theParticleChange.SetStatusChange(isAlive);
|
||||
|
||||
@@ -25,7 +25,7 @@ using namespace GIDI;
|
||||
|
||||
static const char Okay_message[] = "all is okay";
|
||||
static const char mallocError_message[] = "could not allocate memory";
|
||||
static const char insufficientMemory_message[] = "user's memory is too small to hanlde data";
|
||||
static const char insufficientMemory_message[] = "user's memory is too small to handle data";
|
||||
static const char badIndex_message[] = "bad index";
|
||||
static const char XNotAscending_message[] = "x values are not ascending";
|
||||
static const char badIndexForX_message[] = "index not correct for x value";
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
# Package: Geant4.src.G4processes.G4hadronic.G4hadronic_models.G4lepto_nuclear
|
||||
#
|
||||
# Sources description for a library.
|
||||
# Lists the sources and headers of the code explicitely.
|
||||
# Lists the sources and headers of the code explicitly.
|
||||
# Lists include paths needed.
|
||||
# Lists the internal granular and global dependencies of the library.
|
||||
# Source specific properties should be added at the end.
|
||||
@@ -14,49 +14,9 @@
|
||||
#
|
||||
#------------------------------------------------------------------------------
|
||||
|
||||
# List external includes needed.
|
||||
include_directories(${CLHEP_INCLUDE_DIRS})
|
||||
|
||||
# List internal includes needed.
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/geometry/management/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/geometry/volumes/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPGeometry/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPRandom/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/global/management/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/materials/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/particles/bosons/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/barions/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/ions/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/mesons/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/particles/leptons/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/particles/management/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/cross_sections/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/management/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/binary_cascade/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/cascade/cascade/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/evaporation/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/fermi_breakup/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/handler/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/multifragmentation/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/management/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/photon_evaporation/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/util/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/management/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/parton_string/hadronization/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/parton_string/diffraction/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/parton_string/management/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/pre_equilibrium/exciton_model/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/theo_high_energy/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/util/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/processes/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/util/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/management/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/track/include)
|
||||
|
||||
#
|
||||
# Define the Geant4 Module.
|
||||
#
|
||||
include(Geant4MacroDefineModule)
|
||||
GEANT4_DEFINE_MODULE(NAME G4had_lept_nuclear
|
||||
HEADERS
|
||||
G4ANuElNucleusCcModel.hh
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
# Package: Geant4.src.G4processes.G4hadronic.G4hadronic_models.G4had_mod_man
|
||||
#
|
||||
# Sources description for a library.
|
||||
# Lists the sources and headers of the code explicitely.
|
||||
# Lists the sources and headers of the code explicitly.
|
||||
# Lists include paths needed.
|
||||
# Lists the internal granular and global dependencies of the library.
|
||||
# Source specific properties should be added at the end.
|
||||
@@ -14,31 +14,9 @@
|
||||
#
|
||||
#------------------------------------------------------------------------------
|
||||
|
||||
# List external includes needed.
|
||||
include_directories(${CLHEP_INCLUDE_DIRS})
|
||||
|
||||
# List internal includes needed.
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/geometry/management/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/geometry/navigation/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/geometry/volumes/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPGeometry/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPRandom/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/global/management/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/materials/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/particles/bosons/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/barions/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/ions/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/mesons/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/particles/leptons/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/particles/management/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/util/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/management/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/track/include)
|
||||
|
||||
#
|
||||
# Define the Geant4 Module.
|
||||
#
|
||||
include(Geant4MacroDefineModule)
|
||||
GEANT4_DEFINE_MODULE(NAME G4had_mod_man
|
||||
HEADERS
|
||||
G4HadronicInteraction.hh
|
||||
|
||||
@@ -13,6 +13,63 @@ code and to keep track of all tags.
|
||||
---------------------------------------------------------------
|
||||
* Please list in reverse chronological order (last date on top)
|
||||
---------------------------------------------------------------
|
||||
|
||||
05 November 2020 Alberto Ribon (hadr-hpp-V10-06-12)
|
||||
--------------------------------------------------
|
||||
- G4ParticleHPInelastic, G4ParticleHPInelasticData : improved error message
|
||||
in the case that both G4PARTICLEHPDATA and the related particle-specific
|
||||
environmental variable (e.g. G4PROTONHPDATA) are not defined.
|
||||
The recommandation is to define only G4PARTICLEHPDATA.
|
||||
|
||||
27 October 2020 Alberto Ribon (hadr-hpp-V10-06-11)
|
||||
--------------------------------------------------
|
||||
- G4ParticleHPInelastic, G4ParticleHPManager : enabled the print out of
|
||||
the physics parameters (only once and with a format similar to
|
||||
Precompound/de-excitation and RadioativeDecay; note that rather than
|
||||
enabling the print out in G4ParticleHPInelastic::BuildPhysicsTable,
|
||||
we could have used instead the analogous method BuildPhysicsTable of
|
||||
one of the following classes: G4ParticleHPCapture, G4ParticleHPElastic
|
||||
and G4ParticleHPFission).
|
||||
- G4ParticleHPContAngularPar, G4ParticleHPInelasticBaseFS,
|
||||
G4ParticleHPEnAngCorrelation, G4ParticleHPFinalState : replaced
|
||||
the use of the environmental variable G4PHP_DO_NOT_ADJUST_FINAL_STATE
|
||||
(the only one used outside the class G4ParticleHPManager - a part for
|
||||
the one pointing to the data libraries) with the equivalent
|
||||
G4ParticleHPManager::GetInstance()->GetDoNotAdjustFinalState().
|
||||
|
||||
05 August 2020 Alberto Ribon (hadr-hpp-V10-06-10)
|
||||
-------------------------------------------------
|
||||
- G4ParticleHPMessenger : added new UI macro command
|
||||
"use_Wendt_fission_model" related to the use of Wendt fission
|
||||
model; make sure that not more than one fission fragment model
|
||||
is active.
|
||||
- G4ParticleHPManager : added a new variable related to the use of
|
||||
Wendt fission model; throw a "JustWarning" exception when the
|
||||
environmental variables are used (to remind that they are still
|
||||
valid but deprecated, and will be removed in Geant4 version 11.0);
|
||||
added new method "DumpSetting()" which needs to be called somewhere
|
||||
to print out once the values of its parameters.
|
||||
- G4ParticleHPChannel : moved environmental variable related to
|
||||
the use of Wendt fission model from this class to
|
||||
G4ParticleHPManager.
|
||||
|
||||
21 July 2020 Ben Morgan (hadr-hpp-V10-06-09)
|
||||
--------------------------------------------
|
||||
- Use GEANT4_BUILD_PHP_AS_HP option to enable PHP_AS_HP,
|
||||
retiring use of PHP_AS_HP environment variable.
|
||||
|
||||
17 July 2020 Dennis Wright (hadr-hpp-V10-06-08)
|
||||
-------------------------------------------------
|
||||
- Fix bug #2233: two fission fragment models can be active at the same time
|
||||
If Wendt model is active in ctor of G4ParticleHPChannel, turn off standard
|
||||
fragment production model
|
||||
|
||||
30 June 2020 Dennis Wright (hadr-hpp-V10-06-07)
|
||||
-------------------------------------------------
|
||||
- Fix bug #2234: thread competition in method
|
||||
G4FissionProductYieldDist::G4GetFission(void). Place auto lock
|
||||
on this method.
|
||||
|
||||
28 May 2020 Ben Morgan (hadr-hpp-V10-06-06)
|
||||
---------------------------------------------------
|
||||
- Remove obsolete GRANULAR_DEPENDENCIES entries
|
||||
|
||||
Executable → Regular
Executable → Regular
Executable → Regular
Executable → Regular
Executable → Regular
Executable → Regular
Executable → Regular
Executable → Regular
Executable → Regular
Executable → Regular
+4
@@ -89,6 +89,10 @@ private:
|
||||
/** Initialize is a common function called by all constructors. */
|
||||
void Initialize( std::istringstream& dataStream );
|
||||
|
||||
#ifdef G4MULTITHREADED
|
||||
static G4Mutex fissprodMutex;
|
||||
#endif
|
||||
|
||||
public:
|
||||
// Functions
|
||||
/** Generates a fission event using default sampling and returns the pointer
|
||||
|
||||
@@ -23,11 +23,9 @@
|
||||
// * acceptance of all terms of the Geant4 Software license. *
|
||||
// ********************************************************************
|
||||
//
|
||||
//
|
||||
//
|
||||
// Hadronic Process: Very Low Energy Neutron X-Sections
|
||||
// original by H.P. Wellisch, TRIUMF, 14-Feb-97
|
||||
// Builds and has the Cross-section data for one element and channel.
|
||||
// Hadronic Process: Very Low Energy Neutron X-Sections
|
||||
// original by H.P. Wellisch, TRIUMF, 14-Feb-97
|
||||
// Builds and has the Cross-section data for one element and channel.
|
||||
//
|
||||
// Bug fixes and workarounds in the destructor, F.W.Jones 06-Jul-1999
|
||||
// 070612 Fix memory leaking by T. Koi
|
||||
@@ -38,29 +36,34 @@
|
||||
//
|
||||
#ifndef G4ParticleHPChannel_h
|
||||
#define G4ParticleHPChannel_h 1
|
||||
|
||||
#include "globals.hh"
|
||||
#include "G4ParticleHPIsoData.hh"
|
||||
#include "G4ParticleHPVector.hh"
|
||||
#include "G4Material.hh"
|
||||
#include "G4HadProjectile.hh"
|
||||
//#include "G4NeutronInelasticProcess.hh"
|
||||
//#include "G4HadronFissionProcess.hh"
|
||||
//#include "G4HadronElasticProcess.hh"
|
||||
//#include "G4HadronCaptureProcess.hh"
|
||||
#include "G4StableIsotopes.hh"
|
||||
#include "G4ParticleHPCaptureFS.hh"
|
||||
#include "G4ParticleHPFinalState.hh"
|
||||
#include "G4Element.hh"
|
||||
#include "G4WendtFissionFragmentGenerator.hh"
|
||||
#include "G4ParticleHPManager.hh"
|
||||
|
||||
class G4ParticleDefinition;
|
||||
|
||||
|
||||
class G4ParticleHPChannel
|
||||
{
|
||||
public:
|
||||
|
||||
G4ParticleHPChannel(G4ParticleDefinition* projectile)
|
||||
: wendtFissionGenerator(std::getenv("G4NEUTRON_HP_USE_WENDT_FISSION_MODEL") == NULL ? NULL : G4WendtFissionFragmentGenerator::GetInstance())
|
||||
G4ParticleHPChannel(G4ParticleDefinition* projectile) :
|
||||
wendtFissionGenerator( G4ParticleHPManager::GetInstance()->GetUseWendtFissionModel() ?
|
||||
G4WendtFissionFragmentGenerator::GetInstance() : nullptr )
|
||||
{
|
||||
if ( G4ParticleHPManager::GetInstance()->GetUseWendtFissionModel() ) {
|
||||
// Make sure both fission fragment models are not active at same time
|
||||
G4ParticleHPManager::GetInstance()->SetProduceFissionFragments( false );
|
||||
}
|
||||
theProjectile = const_cast<G4ParticleDefinition*>(projectile);
|
||||
theChannelData = new G4ParticleHPVector;
|
||||
theBuffer = 0;
|
||||
@@ -72,9 +75,13 @@ public:
|
||||
theElement = NULL;
|
||||
}
|
||||
|
||||
G4ParticleHPChannel()
|
||||
: wendtFissionGenerator(std::getenv("G4NEUTRON_HP_USE_WENDT_FISSION_MODEL") == NULL ? NULL : G4WendtFissionFragmentGenerator::GetInstance())
|
||||
G4ParticleHPChannel() : wendtFissionGenerator( G4ParticleHPManager::GetInstance()->GetUseWendtFissionModel() ?
|
||||
G4WendtFissionFragmentGenerator::GetInstance() : nullptr )
|
||||
{
|
||||
if ( G4ParticleHPManager::GetInstance()->GetUseWendtFissionModel() ) {
|
||||
// Make sure both fission fragment models are not active at same time
|
||||
G4ParticleHPManager::GetInstance()->SetProduceFissionFragments( false );
|
||||
}
|
||||
theProjectile = G4Neutron::Neutron();
|
||||
theChannelData = new G4ParticleHPVector;
|
||||
theBuffer = 0;
|
||||
@@ -106,17 +113,16 @@ public:
|
||||
//}
|
||||
// FWJ experiment
|
||||
//if(active!=0) delete [] active;
|
||||
// T.K.
|
||||
if ( theFinalStates != 0 )
|
||||
{
|
||||
// T.K.
|
||||
if ( theFinalStates != 0 )
|
||||
{
|
||||
for ( G4int i = 0 ; i < niso ; i++ )
|
||||
{
|
||||
delete theFinalStates[i];
|
||||
}
|
||||
delete [] theFinalStates;
|
||||
}
|
||||
if ( active != 0 ) delete [] active;
|
||||
|
||||
}
|
||||
if ( active != 0 ) delete [] active;
|
||||
}
|
||||
|
||||
G4double GetXsec(G4double energy);
|
||||
|
||||
+2
-5
@@ -39,6 +39,7 @@
|
||||
#include "G4ParticleHPProduct.hh"
|
||||
#include "G4ReactionProduct.hh"
|
||||
#include "G4Cache.hh"
|
||||
#include "G4ParticleHPManager.hh"
|
||||
|
||||
class G4ParticleDefinition;
|
||||
|
||||
@@ -93,11 +94,7 @@ public:
|
||||
inline void Init(std::istream & aDataFile)
|
||||
{
|
||||
bAdjustFinalState = true;
|
||||
const char* ctmp = std::getenv("G4PHP_DO_NOT_ADJUST_FINAL_STATE");
|
||||
if( ctmp && G4String(ctmp) == "1" )
|
||||
{
|
||||
bAdjustFinalState = false;
|
||||
}
|
||||
if ( G4ParticleHPManager::GetInstance()->GetDoNotAdjustFinalState() ) bAdjustFinalState = false;
|
||||
|
||||
// T.K. Comment out following line to keep the condition at the
|
||||
// validation efforts comparing NeutronHP and PartileHP for neutrons (2015 Sep.)
|
||||
|
||||
@@ -62,8 +62,8 @@ public:
|
||||
theNDLDataM = 0;
|
||||
|
||||
adjustResult = true;
|
||||
if ( std::getenv( "G4PHP_DO_NOT_ADJUST_FINAL_STATE" ) ) adjustResult = false;
|
||||
|
||||
if ( G4ParticleHPManager::GetInstance()->GetDoNotAdjustFinalState() ) adjustResult = false;
|
||||
|
||||
theProjectile = G4Neutron::Neutron();
|
||||
|
||||
theResult.Put( 0 );
|
||||
|
||||
@@ -75,19 +75,27 @@ class G4ParticleHPManager
|
||||
void DumpDataSource();
|
||||
|
||||
G4bool GetUseOnlyPhotoEvaporation() { return USE_ONLY_PHOTONEVAPORATION; };
|
||||
void SetUseOnlyPhotoEvaporation( G4bool val ) { USE_ONLY_PHOTONEVAPORATION = val; };
|
||||
G4bool GetSkipMissingIsotopes() { return SKIP_MISSING_ISOTOPES; };
|
||||
G4bool GetNeglectDoppler() { return NEGLECT_DOPPLER; };
|
||||
G4bool GetDoNotAdjustFinalState() { return DO_NOT_ADJUST_FINAL_STATE; };
|
||||
G4bool GetProduceFissionFragments() { return PRODUCE_FISSION_FRAGMENTS; };
|
||||
G4bool GetUseWendtFissionModel() { return USE_WENDT_FISSION_MODEL; };
|
||||
G4bool GetUseNRESP71Model() { return USE_NRESP71_MODEL; };
|
||||
|
||||
void SetUseOnlyPhotoEvaporation( G4bool val ) { USE_ONLY_PHOTONEVAPORATION = val; };
|
||||
void SetSkipMissingIsotopes( G4bool val ) { SKIP_MISSING_ISOTOPES = val; };
|
||||
void SetNeglectDoppler( G4bool val ) { NEGLECT_DOPPLER = val; };
|
||||
void SetDoNotAdjustFinalState( G4bool val ) { DO_NOT_ADJUST_FINAL_STATE = val; };
|
||||
void SetProduceFissionFragments( G4bool val ) { PRODUCE_FISSION_FRAGMENTS = val; };
|
||||
void SetProduceFissionFragments( G4bool val ) {
|
||||
// Make sure both fission fragment models are not active at same time
|
||||
USE_WENDT_FISSION_MODEL ? PRODUCE_FISSION_FRAGMENTS = false : PRODUCE_FISSION_FRAGMENTS = val ; };
|
||||
void SetUseWendtFissionModel( G4bool val ) { USE_WENDT_FISSION_MODEL = val;
|
||||
// Make sure both fission fragment models are not active at same time
|
||||
if ( USE_WENDT_FISSION_MODEL ) PRODUCE_FISSION_FRAGMENTS = false; };
|
||||
void SetUseNRESP71Model( G4bool val ) { USE_NRESP71_MODEL = val; };
|
||||
|
||||
void DumpSetting(); // Needs to be called somewhere to print out information once per run.
|
||||
|
||||
void RegisterElasticCrossSections( G4PhysicsTable* val ){ theElasticCrossSections = val; };
|
||||
G4PhysicsTable* GetElasticCrossSections(){ return theElasticCrossSections; };
|
||||
void RegisterCaptureCrossSections( G4PhysicsTable* val ){ theCaptureCrossSections = val; };
|
||||
@@ -134,6 +142,7 @@ class G4ParticleHPManager
|
||||
G4bool NEGLECT_DOPPLER;
|
||||
G4bool DO_NOT_ADJUST_FINAL_STATE;
|
||||
G4bool PRODUCE_FISSION_FRAGMENTS;
|
||||
G4bool USE_WENDT_FISSION_MODEL;
|
||||
G4bool USE_NRESP71_MODEL;
|
||||
|
||||
G4PhysicsTable* theElasticCrossSections;
|
||||
|
||||
@@ -51,18 +51,9 @@ class G4ParticleHPMessenger: public G4UImessenger
|
||||
G4UIcmdWithAString* NeglectDopplerCmd;
|
||||
G4UIcmdWithAString* DoNotAdjustFSCmd;
|
||||
G4UIcmdWithAString* ProduceFissionFragementCmd;
|
||||
G4UIcmdWithAString* WendtFissionModelCmd;
|
||||
G4UIcmdWithAString* NRESP71Cmd;
|
||||
G4UIcmdWithAnInteger* VerboseCmd;
|
||||
//G4UIcmdWithAString* AllowHeavyElementCmd;
|
||||
/*
|
||||
* #setenv G4NEUTRONHP_USE_ONLY_PHOTONEVAPORATION 1
|
||||
* #setenv G4NEUTRONHP_SKIP_MISSING_ISOTOPES 1
|
||||
* #setenv G4NEUTRONHP_NEGLECT_DOPPLER 1
|
||||
* #setenv G4NEUTRONHP_DO_NOT_ADJUST_FINAL_STATE 1
|
||||
* #setenv G4NEUTRONHP_PRODUCE_FISSION_FRAGMENTS 1
|
||||
*
|
||||
*/
|
||||
|
||||
};
|
||||
|
||||
#endif
|
||||
|
||||
Executable → Regular
Executable → Regular
Executable → Regular
@@ -4,7 +4,7 @@
|
||||
# Package: Geant4.src.G4processes.G4hadronic.G4hadronic_models.G4had_par_hp
|
||||
#
|
||||
# Sources description for a library.
|
||||
# Lists the sources and headers of the code explicitely.
|
||||
# Lists the sources and headers of the code explicitly.
|
||||
# Lists include paths needed.
|
||||
# Lists the internal granular and global dependencies of the library.
|
||||
# Source specific properties should be added at the end.
|
||||
@@ -14,39 +14,9 @@
|
||||
#
|
||||
#-----------------------------------------------------------------------
|
||||
|
||||
# List external includes needed.
|
||||
include_directories(${CLHEP_INCLUDE_DIRS})
|
||||
include_directories(${ZLIB_INCLUDE_DIRS})
|
||||
|
||||
# List internal includes needed.
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/geometry/management/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/geometry/volumes/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPGeometry/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPRandom/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/global/management/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/materials/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/particles/bosons/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/barions/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/ions/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/mesons/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/particles/leptons/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/particles/management/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/cross_sections/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/management/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/management/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/photon_evaporation/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/util/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/management/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/util/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/processes/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/util/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/processes/management/include)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/source/track/include)
|
||||
|
||||
#
|
||||
# Define the Geant4 Module.
|
||||
#
|
||||
include(Geant4MacroDefineModule)
|
||||
GEANT4_DEFINE_MODULE(NAME G4had_par_hp
|
||||
HEADERS
|
||||
G4InterpolationIterator.hh
|
||||
@@ -467,7 +437,7 @@ GEANT4_DEFINE_MODULE(NAME G4had_par_hp
|
||||
)
|
||||
|
||||
# List any source specific properties here
|
||||
if("$ENV{PHP_AS_HP}")
|
||||
if(GEANT4_BUILD_PHP_AS_HP)
|
||||
add_definitions(-DPHP_AS_HP)
|
||||
endif()
|
||||
|
||||
|
||||
Executable → Regular
Executable → Regular
Executable → Regular
Executable → Regular
Executable → Regular
Executable → Regular
@@ -79,6 +79,11 @@
|
||||
|
||||
using CLHEP::pi;
|
||||
|
||||
#ifdef G4MULTITHREADED
|
||||
#include "G4AutoLock.hh"
|
||||
G4Mutex G4FissionProductYieldDist::fissprodMutex = G4MUTEX_INITIALIZER;
|
||||
#endif
|
||||
|
||||
G4FissionProductYieldDist::
|
||||
G4FissionProductYieldDist( G4int WhichIsotope,
|
||||
G4FFGEnumerations::MetaState WhichMetaState,
|
||||
@@ -107,42 +112,39 @@ G4FissionProductYieldDist( G4int WhichIsotope,
|
||||
}
|
||||
|
||||
G4FissionProductYieldDist::
|
||||
G4FissionProductYieldDist( G4int WhichIsotope,
|
||||
G4FFGEnumerations::MetaState WhichMetaState,
|
||||
G4FFGEnumerations::FissionCause WhichCause,
|
||||
G4FFGEnumerations::YieldType WhichYieldType,
|
||||
G4int Verbosity,
|
||||
std::istringstream& dataStream)
|
||||
: Isotope_(WhichIsotope),
|
||||
MetaState_(WhichMetaState),
|
||||
Cause_(WhichCause),
|
||||
YieldType_(WhichYieldType),
|
||||
Verbosity_(Verbosity)
|
||||
G4FissionProductYieldDist(G4int WhichIsotope,
|
||||
G4FFGEnumerations::MetaState WhichMetaState,
|
||||
G4FFGEnumerations::FissionCause WhichCause,
|
||||
G4FFGEnumerations::YieldType WhichYieldType,
|
||||
G4int Verbosity,
|
||||
std::istringstream& dataStream)
|
||||
: Isotope_(WhichIsotope), MetaState_(WhichMetaState), Cause_(WhichCause),
|
||||
YieldType_(WhichYieldType), Verbosity_(Verbosity)
|
||||
{
|
||||
G4FFG_FUNCTIONENTER__
|
||||
|
||||
try
|
||||
{
|
||||
// Initialize the class
|
||||
Initialize(dataStream);
|
||||
} catch (std::exception& e)
|
||||
{
|
||||
G4FFG_FUNCTIONLEAVE__
|
||||
throw e;
|
||||
}
|
||||
G4FFG_FUNCTIONENTER__
|
||||
|
||||
try
|
||||
{
|
||||
// Initialize the class
|
||||
Initialize(dataStream);
|
||||
} catch (std::exception& e)
|
||||
{
|
||||
G4FFG_FUNCTIONLEAVE__
|
||||
throw e;
|
||||
}
|
||||
|
||||
G4FFG_FUNCTIONLEAVE__
|
||||
}
|
||||
|
||||
void G4FissionProductYieldDist::
|
||||
Initialize( std::istringstream& dataStream )
|
||||
|
||||
void G4FissionProductYieldDist::Initialize(std::istringstream& dataStream)
|
||||
{
|
||||
G4FFG_FUNCTIONENTER__
|
||||
|
||||
IncidentEnergy_ = 0.0;
|
||||
TernaryProbability_ = 0;
|
||||
AlphaProduction_ = 0;
|
||||
SetNubar();
|
||||
IncidentEnergy_ = 0.0;
|
||||
TernaryProbability_ = 0;
|
||||
AlphaProduction_ = 0;
|
||||
SetNubar();
|
||||
|
||||
// Set miscellaneous variables
|
||||
AlphaDefinition_ = reinterpret_cast<G4Ions*>(G4Alpha::Definition());
|
||||
@@ -188,99 +190,98 @@ G4FFG_FUNCTIONENTER__
|
||||
G4FFG_FUNCTIONLEAVE__
|
||||
}
|
||||
|
||||
G4DynamicParticleVector* G4FissionProductYieldDist::
|
||||
G4GetFission( void )
|
||||
G4DynamicParticleVector* G4FissionProductYieldDist::G4GetFission(void)
|
||||
{
|
||||
G4FFG_FUNCTIONENTER__
|
||||
|
||||
// Check to see if the user has set the alpha production to a somewhat
|
||||
// reasonable level
|
||||
CheckAlphaSanity();
|
||||
#ifdef G4MULTITHREADED
|
||||
G4AutoLock lk(&G4FissionProductYieldDist::fissprodMutex);
|
||||
#endif
|
||||
|
||||
// Generate the new G4DynamicParticle pointers to identify key locations in
|
||||
// the G4DynamicParticle chain that will be passed to the G4FissionEvent
|
||||
G4ReactionProduct* FirstDaughter = NULL;
|
||||
G4ReactionProduct* SecondDaughter = NULL;
|
||||
std::vector< G4ReactionProduct* >* Alphas = new std::vector< G4ReactionProduct* >;
|
||||
std::vector< G4ReactionProduct* >* Neutrons = new std::vector< G4ReactionProduct* >;
|
||||
std::vector< G4ReactionProduct* >* Gammas = new std::vector< G4ReactionProduct* >;
|
||||
// Check to see if the user has set the alpha production to a somewhat
|
||||
// reasonable level
|
||||
CheckAlphaSanity();
|
||||
|
||||
// Generate all the nucleonic fission products
|
||||
// How many nucleons do we have to work with?
|
||||
//TK modified 131108
|
||||
//const G4int ParentA = Isotope_ % 1000;
|
||||
//const G4int ParentZ = (Isotope_ - ParentA) / 1000;
|
||||
const G4int ParentA = (Isotope_/10) % 1000;
|
||||
const G4int ParentZ = ((Isotope_/10) - ParentA) / 1000;
|
||||
RemainingA_ = ParentA;
|
||||
RemainingZ_ = ParentZ;
|
||||
// Generate the new G4DynamicParticle pointers to identify key locations in
|
||||
// the G4DynamicParticle chain that will be passed to the G4FissionEvent
|
||||
G4ReactionProduct* FirstDaughter = NULL;
|
||||
G4ReactionProduct* SecondDaughter = NULL;
|
||||
std::vector< G4ReactionProduct* >* Alphas = new std::vector< G4ReactionProduct* >;
|
||||
std::vector< G4ReactionProduct* >* Neutrons = new std::vector< G4ReactionProduct* >;
|
||||
std::vector< G4ReactionProduct* >* Gammas = new std::vector< G4ReactionProduct* >;
|
||||
|
||||
// Don't forget the extra nucleons depending on the fission cause
|
||||
switch(Cause_)
|
||||
{
|
||||
case G4FFGEnumerations::NEUTRON_INDUCED:
|
||||
++RemainingA_;
|
||||
break;
|
||||
// Generate all the nucleonic fission products
|
||||
// How many nucleons do we have to work with?
|
||||
//TK modified 131108
|
||||
const G4int ParentA = (Isotope_/10) % 1000;
|
||||
const G4int ParentZ = ((Isotope_/10) - ParentA) / 1000;
|
||||
RemainingA_ = ParentA;
|
||||
RemainingZ_ = ParentZ;
|
||||
|
||||
case G4FFGEnumerations::PROTON_INDUCED:
|
||||
++RemainingZ_;
|
||||
break;
|
||||
// Don't forget the extra nucleons depending on the fission cause
|
||||
switch(Cause_)
|
||||
{
|
||||
case G4FFGEnumerations::NEUTRON_INDUCED:
|
||||
++RemainingA_;
|
||||
break;
|
||||
|
||||
case G4FFGEnumerations::GAMMA_INDUCED:
|
||||
case G4FFGEnumerations::SPONTANEOUS:
|
||||
default:
|
||||
// Nothing to do here
|
||||
break;
|
||||
}
|
||||
case G4FFGEnumerations::PROTON_INDUCED:
|
||||
++RemainingZ_;
|
||||
break;
|
||||
|
||||
// Ternary fission can be set by the user. Thus, it is necessary to
|
||||
// sample the alpha particle first and the first daughter product
|
||||
// second. See the discussion in
|
||||
// G4FissionProductYieldDist::G4GetFissionProduct() for more information
|
||||
// as to why the fission events are sampled this way.
|
||||
GenerateAlphas(Alphas);
|
||||
case G4FFGEnumerations::GAMMA_INDUCED:
|
||||
case G4FFGEnumerations::SPONTANEOUS:
|
||||
default:
|
||||
// Nothing to do here
|
||||
break;
|
||||
}
|
||||
|
||||
// Generate the first daughter product
|
||||
FirstDaughter = new G4ReactionProduct(GetFissionProduct());
|
||||
RemainingA_ -= FirstDaughter->GetDefinition()->GetAtomicMass();
|
||||
RemainingZ_ -= FirstDaughter->GetDefinition()->GetAtomicNumber();
|
||||
if(Verbosity_ & G4FFGEnumerations::DAUGHTER_INFO)
|
||||
{
|
||||
G4FFG_SPACING__
|
||||
G4FFG_LOCATION__
|
||||
// Ternary fission can be set by the user. Thus, it is necessary to
|
||||
// sample the alpha particle first and the first daughter product
|
||||
// second. See the discussion in
|
||||
// G4FissionProductYieldDist::G4GetFissionProduct() for more information
|
||||
// as to why the fission events are sampled this way.
|
||||
GenerateAlphas(Alphas);
|
||||
|
||||
// Generate the first daughter product
|
||||
FirstDaughter = new G4ReactionProduct(GetFissionProduct());
|
||||
RemainingA_ -= FirstDaughter->GetDefinition()->GetAtomicMass();
|
||||
RemainingZ_ -= FirstDaughter->GetDefinition()->GetAtomicNumber();
|
||||
if (Verbosity_ & G4FFGEnumerations::DAUGHTER_INFO) {
|
||||
G4FFG_SPACING__
|
||||
G4FFG_LOCATION__
|
||||
|
||||
G4cout << " -- First daughter product sampled" << G4endl;
|
||||
G4FFG_SPACING__
|
||||
G4cout << " Name: " << FirstDaughter->GetDefinition()->GetParticleName() << G4endl;
|
||||
G4FFG_SPACING__
|
||||
G4cout << " Z: " << FirstDaughter->GetDefinition()->GetAtomicNumber() << G4endl;
|
||||
G4FFG_SPACING__
|
||||
G4cout << " A: " << FirstDaughter->GetDefinition()->GetAtomicMass() << G4endl;
|
||||
G4FFG_SPACING__
|
||||
G4cout << " Meta State: " << (FirstDaughter->GetDefinition()->GetPDGEncoding() % 10) << G4endl;
|
||||
}
|
||||
G4cout << " -- First daughter product sampled" << G4endl;
|
||||
G4FFG_SPACING__
|
||||
G4cout << " Name: " << FirstDaughter->GetDefinition()->GetParticleName() << G4endl;
|
||||
G4FFG_SPACING__
|
||||
G4cout << " Z: " << FirstDaughter->GetDefinition()->GetAtomicNumber() << G4endl;
|
||||
G4FFG_SPACING__
|
||||
G4cout << " A: " << FirstDaughter->GetDefinition()->GetAtomicMass() << G4endl;
|
||||
G4FFG_SPACING__
|
||||
G4cout << " Meta State: " << (FirstDaughter->GetDefinition()->GetPDGEncoding() % 10) << G4endl;
|
||||
}
|
||||
|
||||
GenerateNeutrons(Neutrons);
|
||||
GenerateNeutrons(Neutrons);
|
||||
|
||||
// Now that all the nucleonic particles have been generated, we can
|
||||
// calculate the composition of the second daughter product.
|
||||
G4int NewIsotope = RemainingZ_ * 1000 + RemainingA_;
|
||||
SecondDaughter = new G4ReactionProduct(GetParticleDefinition(NewIsotope, G4FFGEnumerations::GROUND_STATE));
|
||||
if(Verbosity_ & G4FFGEnumerations::DAUGHTER_INFO)
|
||||
{
|
||||
G4FFG_SPACING__
|
||||
G4FFG_LOCATION__
|
||||
// Now that all the nucleonic particles have been generated, we can
|
||||
// calculate the composition of the second daughter product.
|
||||
G4int NewIsotope = RemainingZ_ * 1000 + RemainingA_;
|
||||
SecondDaughter = new G4ReactionProduct(GetParticleDefinition(NewIsotope, G4FFGEnumerations::GROUND_STATE));
|
||||
if (Verbosity_ & G4FFGEnumerations::DAUGHTER_INFO) {
|
||||
G4FFG_SPACING__
|
||||
G4FFG_LOCATION__
|
||||
|
||||
G4cout << " -- Second daughter product sampled" << G4endl;
|
||||
G4FFG_SPACING__
|
||||
G4cout << " Name: " << SecondDaughter->GetDefinition()->GetParticleName() << G4endl;
|
||||
G4FFG_SPACING__
|
||||
G4cout << " Z: " << SecondDaughter->GetDefinition()->GetAtomicNumber() << G4endl;
|
||||
G4FFG_SPACING__
|
||||
G4cout << " A: " << SecondDaughter->GetDefinition()->GetAtomicMass() << G4endl;
|
||||
G4FFG_SPACING__
|
||||
G4cout << " Meta State: " << (SecondDaughter->GetDefinition()->GetPDGEncoding() % 10) << G4endl;
|
||||
}
|
||||
G4cout << " -- Second daughter product sampled" << G4endl;
|
||||
G4FFG_SPACING__
|
||||
G4cout << " Name: " << SecondDaughter->GetDefinition()->GetParticleName() << G4endl;
|
||||
G4FFG_SPACING__
|
||||
G4cout << " Z: " << SecondDaughter->GetDefinition()->GetAtomicNumber() << G4endl;
|
||||
G4FFG_SPACING__
|
||||
G4cout << " A: " << SecondDaughter->GetDefinition()->GetAtomicMass() << G4endl;
|
||||
G4FFG_SPACING__
|
||||
G4cout << " Meta State: " << (SecondDaughter->GetDefinition()->GetPDGEncoding() % 10) << G4endl;
|
||||
}
|
||||
|
||||
// Calculate how much kinetic energy will be available
|
||||
// 195 to 205 MeV are available in a fission reaction, but about 20 MeV
|
||||
|
||||
@@ -33,7 +33,9 @@
|
||||
//
|
||||
// P. Arce, June-2014 Conversion neutron_hp to particle_hp
|
||||
//
|
||||
// June-2019 - E. Mendoza --> Modification to allow using an incomplete data library if the G4NEUTRONHP_SKIP_MISSING_ISOTOPES environmental flag is defined. The missing XS are set to 0.
|
||||
// June-2019 - E. Mendoza --> Modification to allow using an incomplete
|
||||
// data library if the G4NEUTRONHP_SKIP_MISSING_ISOTOPES environmental
|
||||
// flag is defined. The missing XS are set to 0.
|
||||
|
||||
|
||||
#include <stdlib.h>
|
||||
@@ -44,23 +46,22 @@
|
||||
#include "G4ParticleHPFinalState.hh"
|
||||
#include "G4HadTmpUtil.hh"
|
||||
|
||||
#include "G4ParticleHPManager.hh"
|
||||
#include "G4ParticleHPReactionWhiteBoard.hh"
|
||||
|
||||
G4double G4ParticleHPChannel::GetXsec(G4double energy)
|
||||
{
|
||||
return std::max(0., theChannelData->GetXsec(energy));
|
||||
}
|
||||
G4double G4ParticleHPChannel::GetXsec(G4double energy)
|
||||
{
|
||||
return std::max(0., theChannelData->GetXsec(energy));
|
||||
}
|
||||
|
||||
G4double G4ParticleHPChannel::GetWeightedXsec(G4double energy, G4int isoNumber)
|
||||
{
|
||||
return theIsotopeWiseData[isoNumber].GetXsec(energy);
|
||||
}
|
||||
G4double G4ParticleHPChannel::GetWeightedXsec(G4double energy, G4int isoNumber)
|
||||
{
|
||||
return theIsotopeWiseData[isoNumber].GetXsec(energy);
|
||||
}
|
||||
|
||||
G4double G4ParticleHPChannel::GetFSCrossSection(G4double energy, G4int isoNumber)
|
||||
{
|
||||
return theFinalStates[isoNumber]->GetXsec(energy);
|
||||
}
|
||||
G4double G4ParticleHPChannel::GetFSCrossSection(G4double energy, G4int isoNumber)
|
||||
{
|
||||
return theFinalStates[isoNumber]->GetXsec(energy);
|
||||
}
|
||||
|
||||
void G4ParticleHPChannel::
|
||||
Init(G4Element * anElement, const G4String dirName, const G4String aFSType)
|
||||
|
||||
@@ -57,6 +57,7 @@
|
||||
#include "G4NucleiProperties.hh"
|
||||
#include "G4ParticleHPKallbachMannSyst.hh"
|
||||
#include "G4IonTable.hh"
|
||||
#include "G4ParticleHPManager.hh"
|
||||
#include <set>
|
||||
|
||||
G4ParticleHPContAngularPar::G4ParticleHPContAngularPar( G4ParticleDefinition* projectile )
|
||||
@@ -66,8 +67,8 @@ G4ParticleHPContAngularPar::G4ParticleHPContAngularPar( G4ParticleDefinition* pr
|
||||
fCache.Get()->currentMeanEnergy = -2;
|
||||
fCache.Get()->fresh = true;
|
||||
adjustResult = true;
|
||||
if ( std::getenv( "G4PHP_DO_NOT_ADJUST_FINAL_STATE" ) ) adjustResult = false;
|
||||
|
||||
if ( G4ParticleHPManager::GetInstance()->GetDoNotAdjustFinalState() ) adjustResult = false;
|
||||
|
||||
theMinEner = DBL_MAX;
|
||||
theMaxEner = -DBL_MAX;
|
||||
theProjectile = projectile;
|
||||
@@ -81,7 +82,7 @@ G4ParticleHPContAngularPar::G4ParticleHPContAngularPar( G4ParticleDefinition* pr
|
||||
void G4ParticleHPContAngularPar::Init(std::istream & aDataFile, G4ParticleDefinition* projectile)
|
||||
{
|
||||
adjustResult = true;
|
||||
if ( std::getenv( "G4PHP_DO_NOT_ADJUST_FINAL_STATE" ) ) adjustResult = false;
|
||||
if ( G4ParticleHPManager::GetInstance()->GetDoNotAdjustFinalState() ) adjustResult = false;
|
||||
|
||||
theProjectile = projectile;
|
||||
|
||||
|
||||
@@ -151,7 +151,7 @@
|
||||
theFS.SampleNeutronMult(all, Prompt, delayed, eKinetic, 0);
|
||||
if(Prompt==0&&delayed==0) Prompt=all;
|
||||
theNeutrons = theFC.ApplyYourself(Prompt); // delayed always in FS
|
||||
// take 'U' into account explicitely (see 5.4) in the sampling of energy @@@@
|
||||
// take 'U' into account explicitly (see 5.4) in the sampling of energy @@@@
|
||||
break;
|
||||
case 1:
|
||||
theFS.SampleNeutronMult(all, Prompt, delayed, eKinetic, 1);
|
||||
|
||||
@@ -83,7 +83,8 @@ G4ParticleHPInelastic::G4ParticleHPInelastic(G4ParticleDefinition* projectile, c
|
||||
|
||||
//G4cout << " entering G4ParticleHPInelastic constructor"<<G4endl;
|
||||
if ( !std::getenv("G4PARTICLEHPDATA") && !std::getenv(dataDirVariable) ) {
|
||||
G4String message( "Please set the environement variable " + G4String(dataDirVariable) + " to point to the " + theProjectile->GetParticleName() + " cross-section files." );
|
||||
G4String message("Please setenv G4PARTICLEHPDATA (recommended) or, at least setenv " +
|
||||
G4String(dataDirVariable) + " to point to the " + theProjectile->GetParticleName() + " cross-section files." );
|
||||
throw G4HadronicException(__FILE__, __LINE__,message.c_str());
|
||||
}
|
||||
if ( std::getenv(dataDirVariable) ) {
|
||||
@@ -345,9 +346,7 @@ throw G4HadronicException(__FILE__, __LINE__, "Channel: Do not know what to do w
|
||||
const std::pair<G4double, G4double> G4ParticleHPInelastic::GetFatalEnergyCheckLevels() const
|
||||
{
|
||||
// max energy non-conservation is mass of heavy nucleus
|
||||
// if ( getenv("G4PHP_DO_NOT_ADJUST_FINAL_STATE") ) return std::pair<G4double, G4double>(5*perCent,250*GeV);
|
||||
// This should be same to the hadron default value
|
||||
// return std::pair<G4double, G4double>(10*perCent,10*GeV);
|
||||
return std::pair<G4double, G4double>(10*perCent,DBL_MAX);
|
||||
}
|
||||
|
||||
@@ -501,7 +500,7 @@ void G4ParticleHPInelastic::BuildPhysicsTable(const G4ParticleDefinition& projec
|
||||
throw G4HadronicException(__FILE__, __LINE__,message.c_str());
|
||||
}
|
||||
if(!std::getenv(dataDirVariable)){
|
||||
G4String message("Please set the environement variable " + G4String(dataDirVariable) + " to point to the " + projectile.GetParticleName() + " cross-section files.");
|
||||
G4String message("Please set the environment variable " + G4String(dataDirVariable) + " to point to the " + projectile.GetParticleName() + " cross-section files.");
|
||||
throw G4HadronicException(__FILE__, __LINE__,message.c_str());
|
||||
}
|
||||
dirName = std::getenv(dataDirVariable);
|
||||
@@ -512,8 +511,10 @@ void G4ParticleHPInelastic::BuildPhysicsTable(const G4ParticleDefinition& projec
|
||||
|
||||
*/
|
||||
#ifdef G4VERBOSE
|
||||
if ( G4HadronicParameters::Instance()->GetVerboseLevel() > 0 )
|
||||
if ( G4HadronicParameters::Instance()->GetVerboseLevel() > 0 ) {
|
||||
hpmanager->DumpSetting();
|
||||
G4cout << "@@@ G4ParticleHPInelastic instantiated for particle " << projectile.GetParticleName() << " data directory variable is " << dataDirVariable << " pointing to " << dirName << G4endl;
|
||||
}
|
||||
#endif
|
||||
for (G4int i = numEle ; i < (G4int)G4Element::GetNumberOfElements(); i++)
|
||||
{
|
||||
|
||||
@@ -327,7 +327,7 @@ void G4ParticleHPInelasticBaseFS::BaseApply(const G4HadProjectile & theTrack,
|
||||
{
|
||||
tmpHadrons = theEnergyAngData->Sample(eKinetic);
|
||||
|
||||
if ( !std::getenv( "G4PHP_DO_NOT_ADJUST_FINAL_STATE" ) ) {
|
||||
if ( ! G4ParticleHPManager::GetInstance()->GetDoNotAdjustFinalState() ) {
|
||||
//141017 Fix BEGIN
|
||||
//Adjust A and Z in the case of miss much between selected data and target nucleus
|
||||
if ( tmpHadrons != NULL ) {
|
||||
@@ -492,7 +492,7 @@ void G4ParticleHPInelasticBaseFS::BaseApply(const G4HadProjectile & theTrack,
|
||||
#ifdef PHP_AS_HP
|
||||
bAdjustPhotons = true;
|
||||
#else
|
||||
if ( std::getenv( "G4PHP_DO_NOT_ADJUST_FINAL_STATE" ) ) bAdjustPhotons = false;
|
||||
if ( G4ParticleHPManager::GetInstance()->GetDoNotAdjustFinalState() ) bAdjustPhotons = false;
|
||||
#endif
|
||||
|
||||
if( bAdjustPhotons ) {
|
||||
|
||||
@@ -32,7 +32,7 @@
|
||||
// 080603 bug fix for Hadron Hyper News #932 by T. Koi
|
||||
// 080612 bug fix contribution from Benoit Pirard and Laurent Desorgher (Univ. Bern) #4,6
|
||||
// 080717 bug fix of calculation of residual momentum by T. Koi
|
||||
// 080801 protect negative avalable energy by T. Koi
|
||||
// 080801 protect negative available energy by T. Koi
|
||||
// introduce theNDLDataA,Z which has A and Z of NDL data by T. Koi
|
||||
// 081024 G4NucleiPropertiesTable:: to G4NucleiProperties::
|
||||
// 090514 Fix bug in IC electron emission case
|
||||
|
||||
@@ -76,7 +76,8 @@ G4ParticleHPInelasticData::G4ParticleHPInelasticData(G4ParticleDefinition* proje
|
||||
SetName( dataName );
|
||||
|
||||
if ( !std::getenv(dataDirVariable) && !std::getenv( "G4PARTICLEHPDATA" ) ){
|
||||
G4String message("Please setenv " + G4String(dataDirVariable) + " to point to the " + projectile->GetParticleName() + " cross-section files.");
|
||||
G4String message("Please setenv G4PARTICLEHPDATA (recommended) or, at least setenv " +
|
||||
G4String(dataDirVariable) + " to point to the " + projectile->GetParticleName() + " cross-section files.");
|
||||
throw G4HadronicException(__FILE__, __LINE__,message.c_str());
|
||||
}
|
||||
|
||||
|
||||
@@ -36,6 +36,7 @@
|
||||
#include "G4ParticleHPThreadLocalManager.hh"
|
||||
#include "G4ParticleHPMessenger.hh"
|
||||
#include "G4HadronicException.hh"
|
||||
#include "G4Exception.hh"
|
||||
|
||||
G4ParticleHPManager* G4ParticleHPManager::instance = 0;
|
||||
|
||||
@@ -46,6 +47,7 @@ G4ParticleHPManager::G4ParticleHPManager()
|
||||
,NEGLECT_DOPPLER(false)
|
||||
,DO_NOT_ADJUST_FINAL_STATE(false)
|
||||
,PRODUCE_FISSION_FRAGMENTS(false)
|
||||
,USE_WENDT_FISSION_MODEL(false)
|
||||
,USE_NRESP71_MODEL(false)
|
||||
,theElasticCrossSections(0)
|
||||
,theCaptureCrossSections(0)
|
||||
@@ -61,12 +63,73 @@ G4ParticleHPManager::G4ParticleHPManager()
|
||||
,theTSInelasticFinalStates(0)
|
||||
{
|
||||
messenger = new G4ParticleHPMessenger( this );
|
||||
if ( std::getenv( "G4NEUTRONHP_DO_NOT_ADJUST_FINAL_STATE" ) || std::getenv("G4PHP_DO_NOT_ADJUST_FINAL_STATE") ) DO_NOT_ADJUST_FINAL_STATE = true;
|
||||
if ( std::getenv( "G4NEUTRONHP_USE_ONLY_PHOTONEVAPORATION" ) ) USE_ONLY_PHOTONEVAPORATION = true;
|
||||
if ( std::getenv( "G4NEUTRONHP_NEGLECT_DOPPLER" ) || std::getenv("G4PHP_NEGLECT_DOPPLER") ) NEGLECT_DOPPLER = true;
|
||||
if ( std::getenv( "G4NEUTRONHP_SKIP_MISSING_ISOTOPES" ) ) SKIP_MISSING_ISOTOPES = true;
|
||||
if ( std::getenv( "G4NEUTRONHP_PRODUCE_FISSION_FRAGMENTS" ) ) PRODUCE_FISSION_FRAGMENTS = true;
|
||||
if ( std::getenv( "G4PHP_USE_NRESP71_MODEL" ) ) USE_NRESP71_MODEL = true;
|
||||
// The rest of this method will be removed in G4 11.0
|
||||
if ( std::getenv( "G4NEUTRONHP_DO_NOT_ADJUST_FINAL_STATE" ) ||
|
||||
std::getenv( "G4PHP_DO_NOT_ADJUST_FINAL_STATE" ) ) {
|
||||
DO_NOT_ADJUST_FINAL_STATE = true;
|
||||
G4ExceptionDescription ed;
|
||||
ed << "Environmental variables G4NEUTRONHP_DO_NOT_ADJUST_FINAL_STATE and \n"
|
||||
<< "G4PHP_DO_NOT_ADJUST_FINAL_STATE are valid but deprecated and will be replaced \n"
|
||||
<< "with the UI command: /process/had/particle_hp/do_not_adjust_final_state \n"
|
||||
<< "in the next major release, Geant4 version 11.0";
|
||||
G4Exception( "G4ParticleHPManager ", "HP_MAN_165", JustWarning, ed );
|
||||
}
|
||||
if ( std::getenv( "G4NEUTRONHP_USE_ONLY_PHOTONEVAPORATION" ) ) {
|
||||
USE_ONLY_PHOTONEVAPORATION = true;
|
||||
G4ExceptionDescription ed;
|
||||
ed << "Environmental variable G4NEUTRONHP_USE_ONLY_PHOTONEVAPORATION \n"
|
||||
<< "is valid but deprecated and will be replaced with the UI command: \n"
|
||||
<< "/process/had/particle_hp/use_photo_evaporation \n"
|
||||
<< "in the next major release, Geant4 version 11.0";
|
||||
G4Exception( "G4ParticleHPManager ", "HP_MAN_166", JustWarning, ed );
|
||||
}
|
||||
if ( std::getenv( "G4NEUTRONHP_NEGLECT_DOPPLER" ) ||
|
||||
std::getenv( "G4PHP_NEGLECT_DOPPLER" ) ) {
|
||||
NEGLECT_DOPPLER = true;
|
||||
G4ExceptionDescription ed;
|
||||
ed << "Environmental variables G4NEUTRONHP_NEGLECT_DOPPLER and G4PHP_NEGLECT_DOPPLER \n"
|
||||
<< "are valid but deprecated and will be replaced with the UI command: \n"
|
||||
<< "/process/had/particle_hp/neglect_Doppler_broadening \n"
|
||||
<< "in the next major release, Geant4 version 11.0";
|
||||
G4Exception( "G4ParticleHPManager ", "HP_MAN_167", JustWarning, ed );
|
||||
}
|
||||
if ( std::getenv( "G4NEUTRONHP_SKIP_MISSING_ISOTOPES" ) ) {
|
||||
SKIP_MISSING_ISOTOPES = true;
|
||||
G4ExceptionDescription ed;
|
||||
ed << "Environmental variable G4NEUTRONHP_SKIP_MISSING_ISOTOPES \n"
|
||||
<< "is valid but deprecated and will be replaced with the UI command: \n"
|
||||
<< "/process/had/particle_hp/skip_missing_isotopes \n"
|
||||
<< "in the next major release, Geant4 version 11.0";
|
||||
G4Exception( "G4ParticleHPManager ", "HP_MAN_168", JustWarning, ed );
|
||||
}
|
||||
if ( std::getenv( "G4NEUTRONHP_PRODUCE_FISSION_FRAGMENTS" ) ) {
|
||||
PRODUCE_FISSION_FRAGMENTS = true;
|
||||
G4ExceptionDescription ed;
|
||||
ed << "Environmental variable G4NEUTRONHP_PRODUCE_FISSION_FRAGMENTS \n"
|
||||
<< "is valid but deprecated and will be replaced with the UI command: \n"
|
||||
<< "/process/had/particle_hp/produce_fission_fragment \n"
|
||||
<< "in the next major release, Geant4 version 11.0";
|
||||
G4Exception( "G4ParticleHPManager ", "HP_MAN_169", JustWarning, ed );
|
||||
}
|
||||
if ( std::getenv( "G4NEUTRON_HP_USE_WENDT_FISSION_MODEL" ) ) {
|
||||
USE_WENDT_FISSION_MODEL = true;
|
||||
// Make sure both fission fragment models are not active at same time
|
||||
PRODUCE_FISSION_FRAGMENTS = false;
|
||||
G4ExceptionDescription ed;
|
||||
ed << "Environmental variable G4NEUTRON_HP_USE_WENDT_FISSION_MODEL \n"
|
||||
<< "is valid but deprecated and will be replaced with the UI command: \n"
|
||||
<< "/process/had/particle_hp/use_Wendt_fission_model \n"
|
||||
<< "in the next major release, Geant4 version 11.0";
|
||||
G4Exception( "G4ParticleHPManager ", "HP_MAN_170", JustWarning, ed );
|
||||
}
|
||||
if ( std::getenv( "G4PHP_USE_NRESP71_MODEL" ) ) {
|
||||
USE_NRESP71_MODEL = true;
|
||||
G4ExceptionDescription ed;
|
||||
ed << "Environmental variable G4PHP_USE_NRESP71_MODEL is valid but deprecated and \n"
|
||||
<< "will be replaced with the UI command: /process/had/particle_hp/use_NRESP71_model \n"
|
||||
<< "in the next major release, Geant4 version 11.0";
|
||||
G4Exception( "G4ParticleHPManager ", "HP_MAN_171", JustWarning, ed );
|
||||
}
|
||||
}
|
||||
|
||||
G4ParticleHPManager::~G4ParticleHPManager()
|
||||
@@ -255,3 +318,20 @@ void G4ParticleHPManager::RegisterInelasticFinalStates( const G4ParticleDefiniti
|
||||
{
|
||||
theInelasticFSs.insert ( std::pair<const G4ParticleDefinition*,std::vector<G4ParticleHPChannelList*>*>( particle , val ) );
|
||||
}
|
||||
|
||||
|
||||
void G4ParticleHPManager::DumpSetting() {
|
||||
G4cout << G4endl
|
||||
<< "=======================================================" << G4endl
|
||||
<< "====== ParticleHP Physics Parameters ========" << G4endl
|
||||
<< "=======================================================" << G4endl
|
||||
<< " UseOnlyPhotoEvaporation ? " << USE_ONLY_PHOTONEVAPORATION << G4endl
|
||||
<< " SkipMissingIsotopes ? " << SKIP_MISSING_ISOTOPES << G4endl
|
||||
<< " NeglectDoppler ? " << NEGLECT_DOPPLER << G4endl
|
||||
<< " DoNotAdjustFinalState ? " << DO_NOT_ADJUST_FINAL_STATE << G4endl
|
||||
<< " ProduceFissionFragments ? " << PRODUCE_FISSION_FRAGMENTS << G4endl
|
||||
<< " UseWendtFissionModel ? " << USE_WENDT_FISSION_MODEL << G4endl
|
||||
<< " UseNRESP71Model ? " << USE_NRESP71_MODEL << G4endl
|
||||
<< "=======================================================" << G4endl
|
||||
<< G4endl;
|
||||
}
|
||||
|
||||
@@ -68,6 +68,12 @@ G4ParticleHPMessenger::G4ParticleHPMessenger( G4ParticleHPManager* man )
|
||||
ProduceFissionFragementCmd->SetCandidates("true false");
|
||||
ProduceFissionFragementCmd->AvailableForStates(G4State_PreInit,G4State_Idle);
|
||||
|
||||
WendtFissionModelCmd = new G4UIcmdWithAString("/process/had/particle_hp/use_Wendt_fission_model",this);
|
||||
WendtFissionModelCmd->SetGuidance("Enable use of Wendt fission model.");
|
||||
WendtFissionModelCmd->SetParameterName("choice",false);
|
||||
WendtFissionModelCmd->SetCandidates("true false");
|
||||
WendtFissionModelCmd->AvailableForStates(G4State_PreInit,G4State_Idle);
|
||||
|
||||
NRESP71Cmd = new G4UIcmdWithAString("/process/had/particle_hp/use_NRESP71_model",this);
|
||||
NRESP71Cmd->SetGuidance("Enable to use NRESP71 model for n on C reaction");
|
||||
NRESP71Cmd->SetParameterName("choice",false);
|
||||
@@ -90,6 +96,8 @@ G4ParticleHPMessenger::~G4ParticleHPMessenger()
|
||||
delete NeglectDopplerCmd;
|
||||
delete DoNotAdjustFSCmd;
|
||||
delete ProduceFissionFragementCmd;
|
||||
delete WendtFissionModelCmd;
|
||||
delete NRESP71Cmd;
|
||||
delete VerboseCmd;
|
||||
}
|
||||
|
||||
@@ -113,6 +121,11 @@ void G4ParticleHPMessenger::SetNewValue(G4UIcommand* command,G4String newValue)
|
||||
if ( command == ProduceFissionFragementCmd ) {
|
||||
manager->SetProduceFissionFragments( bValue );
|
||||
}
|
||||
if ( command == WendtFissionModelCmd ) {
|
||||
manager->SetUseWendtFissionModel( bValue );
|
||||
// Make sure both fission fragment models are not active at same time
|
||||
if ( bValue ) manager->SetProduceFissionFragments( false );
|
||||
}
|
||||
if ( command == NRESP71Cmd ) {
|
||||
manager->SetUseNRESP71Model( bValue );
|
||||
}
|
||||
|
||||
@@ -369,7 +369,7 @@ G4ReactionProductVector * G4ParticleHPPhotonDist::GetPhotons(G4double anEnergy)
|
||||
thePhotons->operator[](count)->SetKineticEnergy(energy[i]);
|
||||
}
|
||||
count++;
|
||||
if (count > nSecondaries) throw G4HadronicException(__FILE__, __LINE__, "G4ParticleHPPhotonDist::GetPhotons inconsistancy");
|
||||
if (count > nSecondaries) throw G4HadronicException(__FILE__, __LINE__, "G4ParticleHPPhotonDist::GetPhotons inconsistency");
|
||||
}
|
||||
|
||||
} else { // nDiscrete != 1 or nPartials != 1
|
||||
@@ -400,7 +400,7 @@ G4ReactionProductVector * G4ParticleHPPhotonDist::GetPhotons(G4double anEnergy)
|
||||
thePhotons->operator[](count)->SetKineticEnergy(energy[i]);
|
||||
}
|
||||
count++;
|
||||
if (count > nSecondaries) throw G4HadronicException(__FILE__, __LINE__, "G4ParticleHPPhotonDist::GetPhotons inconsistancy");
|
||||
if (count > nSecondaries) throw G4HadronicException(__FILE__, __LINE__, "G4ParticleHPPhotonDist::GetPhotons inconsistency");
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -428,7 +428,7 @@ G4ReactionProductVector * G4ParticleHPPhotonDist::GetPhotons(G4double anEnergy)
|
||||
{
|
||||
if (std::abs(currentEnergy-theGammas[ii])<0.1*keV) break;
|
||||
}
|
||||
if(ii==nDiscrete2) ii--; // fix for what seems an (file12 vs file 14) inconsistancy found in the ENDF 7N14 data. @@
|
||||
if(ii==nDiscrete2) ii--; // fix for what seems an (file12 vs file 14) inconsistency found in the ENDF 7N14 data. @@
|
||||
if(ii<nIso)
|
||||
{
|
||||
// isotropic distribution
|
||||
@@ -543,7 +543,7 @@ G4ReactionProductVector * G4ParticleHPPhotonDist::GetPhotons(G4double anEnergy)
|
||||
{
|
||||
if (std::abs(currentEnergy-theGammas[ii])<0.1*keV) break;
|
||||
}
|
||||
if(ii==nDiscrete2) ii--; // fix for what seems an (file12 vs file 14) inconsistancy found in the ENDF 7N14 data. @@
|
||||
if(ii==nDiscrete2) ii--; // fix for what seems an (file12 vs file 14) inconsistency found in the ENDF 7N14 data. @@
|
||||
if(ii<nIso)
|
||||
{
|
||||
//Bug reported Chao Zhang (Chao.Zhang@usd.edu), Dongming Mei(Dongming.Mei@usd.edu) Feb. 25, 2009
|
||||
|
||||
Executable → Regular
@@ -14,6 +14,49 @@ code and to keep track of all tags.
|
||||
* Please list in reverse chronological order (last date on top)
|
||||
---------------------------------------------------------------
|
||||
|
||||
14-Oct-2020 V. Ivanchenko (hadr-string-diff-V10-06-08)
|
||||
- G4FTFModel - attempt to fix crash rarely observed in pion+proton
|
||||
reaction: removed commented lines and unused variables; added
|
||||
tolerance 1.e-10 for numerical computation; extended debug printout;
|
||||
replace in all loops "i++" -> "++i"; cleaned-up sampling of Pt
|
||||
for residual nucleons - limit argument for G4Exp by 200 instead of 1e+9
|
||||
|
||||
29-Sep-2020 A. Ribon (hadr-string-diff-V10-06-07)
|
||||
- G4DiffractiveExcitation : Vladimir Uzhinsky's implementation of a
|
||||
new splitting of excited hadrons into quark-antiquark or quark-diquark
|
||||
in the method CreateStrings.
|
||||
Other code improvements of this class were also introduced by
|
||||
Vladimir Uzhinsky.
|
||||
|
||||
21-Sep-2020 J. Yarba (hadr-string-diff-V10-06-06)
|
||||
- G4FTFParameters.cc : extend FTF configuration interface
|
||||
to include parameters of quark exchange with and/or without
|
||||
excitation, for baryon and pion projectiles
|
||||
|
||||
16-Sep-2020 A. Ribon (hadr-string-diff-V10-06-05)
|
||||
- G4FTFModel : quasi-elastic is not applied any longer when the target
|
||||
nucleus has one nucleon and the projectile hadron is not an ion.
|
||||
This avoids to double count elastic scattering (as reported by
|
||||
by Daria Prokhorova of NA61/SHINE in 158 GeV/c proton interactions
|
||||
on liquid hydrogen: see bug report #2274).
|
||||
|
||||
08-Sep-2020 A. Ribon (hadr-string-diff-V10-06-04)
|
||||
- G4FTFAnnihilation : added initialization of 2-dimensional arrays as
|
||||
suggested by Coverity. Used consistently pre-increment instead of
|
||||
post-increment.
|
||||
|
||||
28-Jul-2020 A. Ribon (hadr-string-diff-V10-06-03)
|
||||
- G4DiffractiveExcitation : add protection against inexisting in Geant4
|
||||
excited hyperon states (Sigma* and Xi*).
|
||||
- G4FTFAnnihilation : removed useless check against inexisting in
|
||||
either PDG (Lambda*) or Geant4 (Sigma* and Xi*) excited hyperon
|
||||
states.
|
||||
|
||||
24-Jul-2020 A. Ribon (hadr-string-diff-V10-06-02)
|
||||
- G4DiffractiveExcitation : extended for handling heavy (charm and
|
||||
bottom) hadrons; introduced also a new pre-processor option for
|
||||
debugging heavy hadrons, switched off by default.
|
||||
|
||||
08-Mar-2020 V. Ivanchenko (hadr-string-diff-V10-06-01)
|
||||
- G4FTFModel, G4FTFParticipants - clean-up: removed unused methods, delete
|
||||
operators, use C++11 keywords
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user