34#define INCLXX_IN_GEANT4_MODE 1
38#ifndef G4INCLConfig_hh
39#define G4INCLConfig_hh 1
137 std::stringstream ss;
144 return randomSeedVector;
220 return INCLXXDataFilePath;
223#ifdef INCL_DEEXCITATION_ABLAXX
224 std::string
const &getABLAv3pCxxDataFilePath()
const {
225 return ablav3pCxxDataFilePath;
229#ifdef INCL_DEEXCITATION_ABLACXX
230 std::string
const &getABLAXXDataFilePath()
const {
231 return ablaxxDataFilePath;
235#ifdef INCL_DEEXCITATION_ABLA07
236 std::string
const &getABLA07DataFilePath()
const {
237 return abla07DataFilePath;
240#ifdef INCL_DEEXCITATION_GEMINIXX
241 std::string
const &getGEMINIXXDataFilePath()
const {
242 return geminixxDataFilePath;
266 std::string
const &getROOTSelectionString()
const {
267 return rootSelectionString;
271#ifdef INCL_DEEXCITATION_FERMI_BREAKUP
272 G4int getMaxMassFermiBreakUp()
const {
273 return maxMassFermiBreakUp;
276 G4int getMaxChargeFermiBreakUp()
const {
277 return maxChargeFermiBreakUp;
284 return ((t==
Proton) ? rpCorrelationCoefficientProton : rpCorrelationCoefficientNeutron);
291 rpCorrelationCoefficientProton=corrCoeff;
293 rpCorrelationCoefficientNeutron=corrCoeff;
363 G4bool getConciseROOTTree()
const {
return conciseROOTTree; }
380 std::string inputFileName;
382 std::string outputFileRoot;
383 std::string fileSuffix;
384 std::string logFileName;
388 std::string targetString;
392 std::string projectileString;
398 std::string randomSeeds;
401 std::string pauliString;
405 std::string coulombString;
408 std::string potentialString;
412 std::string localEnergyBBString;
415 std::string localEnergyPiString;
418 std::string deExcitationModelList;
419 std::string deExcitationOptionDescription;
420 std::string deExcitationString;
422#ifdef INCL_DEEXCITATION_ABLAXX
423 std::string ablav3pCxxDataFilePath;
425#ifdef INCL_DEEXCITATION_ABLACXX
426 std::string ablaxxDataFilePath;
428#ifdef INCL_DEEXCITATION_ABLA07
429 std::string abla07DataFilePath;
431#ifdef INCL_DEEXCITATION_GEMINIXX
432 std::string geminixxDataFilePath;
434 std::string INCLXXDataFilePath;
436 std::string clusterAlgorithmString;
439 G4int clusterMaxMass;
447 std::string separationEnergyString;
450 std::string fermiMomentumString;
460 std::string rootSelectionString;
463#ifdef INCL_DEEXCITATION_FERMI_BREAKUP
464 G4int maxMassFermiBreakUp;
465 G4int maxChargeFermiBreakUp;
469 G4double rpCorrelationCoefficientProton;
470 G4double rpCorrelationCoefficientNeutron;
477 std::string randomNumberGenerator;
480 std::string phaseSpaceGenerator;
483 unsigned int autosaveFrequency;
485 std::string crossSectionsString;
487 G4int maxNumberMultipions;
489 std::string cascadeAction;
502 friend class ::ConfigParser;
double A(double temperature)
G4double getNeutronHalo() const
Get the neutron-halo size.
static std::string const getVersionString()
Get the INCL version string.
void setFermiMomentumType(FermiMomentumType const f)
Set the Fermi-momentum type.
PauliType getPauliType() const
Get the Pauli-blocking algorithm.
void setClusterAlgorithm(ClusterAlgorithmType const c)
Set the clustering algorithm.
void setProjectileSpecies(ParticleSpecies const &ps)
Set the projectile species.
G4bool getPionPotential() const
Do we want the pion potential?
FermiMomentumType getFermiMomentumType() const
Get the Fermi-momentum type.
PotentialType getPotentialType() const
Get the type of the potential for nucleons.
static std::string const getVersionID()
Get the INCL version ID.
void setDecayTimeThreshold(const G4double t)
Set decay time threshold time.
G4double getImpactParameter() const
void setLocalEnergyPiType(const LocalEnergyType t)
Set the type of local energy for N-N avatars.
void setBackToSpectator(const G4bool b)
Set back-to-spectator.
SeparationEnergyType getSeparationEnergyType() const
Get the separation-energy type.
CascadeActionType getCascadeActionType() const
Get the cascade-action type.
G4double getRPCorrelationCoefficient(const ParticleType t) const
Get the r-p correlation coefficient.
void setRNGType(RNGType const r)
Set the RNG type.
G4bool getRefraction() const
True if we should use refraction.
std::string const & getINCLXXDataFilePath() const
G4int getClusterMaxMass() const
Get the maximum mass for production of clusters.
G4int getVerboseEvent() const
Get the number of the verbose event.
void setCoulombType(CoulombType const c)
Set the Coulomb-distortion algorithm.
G4int getTargetA() const
Get the target mass number.
G4double getDecayTimeThreshold() const
Get the decay time threshold time.
std::string const & getCalculationTitle() const
Get the run title.
G4double getProjectileKineticEnergy() const
Get the projectile kinetic energy.
G4int getVerbosity() const
Get the verbosity.
void setTargetS(G4int S)
Set target strangess number.
void setRPCorrelationCoefficient(const ParticleType t, const G4double corrCoeff)
Set the r-p correlation coefficient.
G4int getMaxNumberMultipions() const
Get the maximum number of pions for multipion collisions.
std::string const & getLogFileName() const
Get the log file name.
unsigned int getAutosaveFrequency() const
Get the autosave frequency.
PhaseSpaceGeneratorType getPhaseSpaceGeneratorType() const
Get the phase-space-generator type.
void setCascadeActionType(CascadeActionType const c)
Set the cascade-action type.
DeExcitationType getDeExcitationType() const
Get the de-excitation model.
Random::SeedVector getRandomSeeds() const
Get the seeds for the random-number generator.
void setTargetA(G4int A)
Set target mass number.
G4double getHadronizationTime() const
Get the hadronization time.
ParticleSpecies getProjectileSpecies() const
Get the projectile species.
ClusterAlgorithmType getClusterAlgorithm() const
Get the clustering algorithm.
void setTargetZ(G4int Z)
Set target charge number.
void setPionPotential(const G4bool pionPot)
Set the type of the potential for nucleons.
~Config()
Default destructor.
void setNeutronHalo(const G4double d)
Set the neutron-halo size.
void setPhaseSpaceGeneratorType(PhaseSpaceGeneratorType const p)
Set the phase-space-generator type.
void setPotentialType(PotentialType type)
Set the type of the potential for nucleons.
LocalEnergyType getLocalEnergyPiType() const
Get the type of local energy for pi-N and decay avatars.
G4bool getInverseKinematics() const
void setCrossSectionsType(CrossSectionsType const c)
Set the Cross Section type.
G4bool isNaturalTarget() const
Natural targets.
void setAutosaveFrequency(const unsigned int f)
Set the autosave frequency.
G4int getTargetS() const
Get the target strangess number.
G4bool getBackToSpectator() const
Get back-to-spectator.
void setProjectileKineticEnergy(G4double const kinE)
Set the projectile kinetic energy.
void setMaxNumberMultipions(const G4int n)
Set the maximum number of pions for multipion collisions.
Config()
Default constructor.
G4bool getCDPP() const
Do we want CDPP?
G4double getNeutronSkin() const
Get the neutron-skin thickness.
CrossSectionsType getCrossSectionsType() const
Get the Cross Section type.
void setHadronizationTime(const G4double t)
Set the hadronization time.
G4double getCutNN() const
void setINCLXXDataFilePath(std::string const &s)
Set the INCLXX datafile path.
G4double getFermiMomentum() const
Get the Fermi momentum.
LocalEnergyType getLocalEnergyBBType() const
Get the type of local energy for N-N avatars.
G4double getBias() const
Get the bias.
void setNeutronSkin(const G4double d)
Set the neutron-skin thickness.
std::string summary()
Return a summary of the run configuration.
void init()
Initialise the members.
void setFermiMomentum(const G4double p)
Set the Fermi momentum.
G4int getTargetZ() const
Get the target charge number.
void setLocalEnergyBBType(const LocalEnergyType t)
Set the type of local energy for N-N avatars.
RNGType getRNGType() const
Get the RNG type.
void setRefraction(const G4bool r)
Set the refraction variable.
void setUseRealMasses(G4bool use)
Set whether to use real masses.
ParticleType getProjectileType() const
Get the projectile type.
G4bool getUseRealMasses() const
Whether to use real masses.
CoulombType getCoulombType() const
Get the Coulomb-distortion algorithm.
G4int getNumberOfShots() const
Get the number of shots.
std::string getDeExcitationString() const
Get the de-excitation string.
void setClusterMaxMass(const G4int m)
Set the maximum mass for production of clusters.
std::string const & getOutputFileRoot() const
Get the output file root.
void setRPCorrelationCoefficient(const G4double corrCoeff)
Set the r-p correlation coefficient.
static std::string const getVersionHash()
Get the INCL version hash.