33 #define INCLXX_IN_GEANT4_MODE 1
37 #ifndef G4INCLConfig_hh
38 #define G4INCLConfig_hh 1
48 #if defined(HAS_BOOST_PROGRAM_OPTIONS) && !defined(INCLXX_IN_GEANT4_MODE)
49 #include <boost/program_options/options_description.hpp>
50 #include <boost/program_options/parsers.hpp>
51 #include <boost/program_options/variables_map.hpp>
55 namespace po = boost::program_options;
152 std::stringstream ss;
229 #ifdef INCL_DEEXCITATION_ABLAXX
230 std::string
const &getABLAv3pCxxDataFilePath()
const {
231 return ablav3pCxxDataFilePath;
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;
260 std::string
const &getROOTSelectionString()
const {
261 return rootSelectionString;
265 #ifdef INCL_DEEXCITATION_FERMI_BREAKUP
266 G4int getMaxMassFermiBreakUp()
const {
267 return maxMassFermiBreakUp;
310 #if defined(HAS_BOOST_PROGRAM_OPTIONS) && !defined(INCLXX_IN_GEANT4_MODE)
311 std::string
const echo()
const;
317 #if defined(HAS_BOOST_PROGRAM_OPTIONS) && !defined(INCLXX_IN_GEANT4_MODE)
318 std::string echoOptionsDescription(
const po::options_description &aDesc)
const;
320 po::options_description runOptDesc;
321 po::options_description hiddenOptDesc;
322 po::options_description genericOptDesc;
323 po::options_description physicsOptDesc;
324 po::variables_map variablesMap;
370 #ifdef INCL_DEEXCITATION_ABLAXX
371 std::string ablav3pCxxDataFilePath;
373 #ifdef INCL_DEEXCITATION_ABLA07
374 std::string abla07DataFilePath;
376 #ifdef INCL_DEEXCITATION_GEMINIXX
377 std::string geminixxDataFilePath;
401 std::string rootSelectionString;
404 #ifdef INCL_DEEXCITATION_FERMI_BREAKUP
405 G4int maxMassFermiBreakUp;
DeExcitationType getDeExcitationType() const
Get the de-excitation model.
std::string fermiMomentumString
The INCL configuration object.
ParticleType getProjectileType() const
Get the projectile type.
LocalEnergyType localEnergyPiType
std::string separationEnergyString
void setFermiMomentumType(FermiMomentumType const f)
Set the Fermi-momentum type.
void setProjectileSpecies(ParticleSpecies const &ps)
Set the projectile species.
ClusterAlgorithmType clusterAlgorithmType
std::string potentialString
void setRPCorrelationCoefficient(const G4double corrCoeff)
Set the r-p correlation coefficient.
std::string localEnergyBBString
PotentialType potentialType
FermiMomentumType fermiMomentumType
std::string deExcitationOptionDescription
G4int getTargetZ() const
Get the target charge number.
G4int getNumberOfShots() const
Get the number of shots.
std::string const & getINCLXXDataFilePath() const
G4int getVerboseEvent() const
Get the number of the verbose event.
void setProjectileKineticEnergy(G4double const kinE)
Set the projectile kinetic energy.
G4int getClusterMaxMass() const
Get the maximum mass for production of clusters.
std::string localEnergyPiString
~Config()
Default destructor.
std::string clusterAlgorithmString
void setRPCorrelationCoefficient(const ParticleType t, const G4double corrCoeff)
Set the r-p correlation coefficient.
std::string outputFileRoot
G4double getNeutronSkinAdditionalDiffuseness() const
Get the neutron-skin additional diffuseness.
G4bool isNaturalTarget() const
Natural targets.
static const G4int randomSeedMin
SeparationEnergyType getSeparationEnergyType() const
Get the separation-energy type.
std::string coulombString
void setLocalEnergyBBType(const LocalEnergyType t)
Set the type of local energy for N-N avatars.
G4int getVerbosity() const
Get the verbosity.
G4double getImpactParameter() const
G4bool getCDPP() const
Do we want CDPP?
static std::string const getVersionString()
Get the INCL version string.
LocalEnergyType localEnergyBBType
void setNeutronSkinAdditionalDiffuseness(const G4double d)
Set the neutron-skin additional diffuseness.
void setTargetA(G4int A)
Set target mass number.
G4bool getBackToSpectator() const
Get back-to-spectator.
G4double rpCorrelationCoefficientProton
std::string deExcitationModelList
PauliType getPauliType() const
Get the Pauli-blocking algorithm.
void setRefraction(const G4bool r)
Set the refraction variable.
G4double neutronSkinAdditionalDiffuseness
G4int getTargetA() const
Get the target mass number.
void setLocalEnergyPiType(const LocalEnergyType t)
Set the type of local energy for N-N avatars.
G4bool getPionPotential() const
Do we want the pion potential?
G4double rpCorrelationCoefficient
void push_back(const long val)
ParticleSpecies targetSpecies
G4bool getUseRealMasses() const
Whether to use real masses.
static const G4double A[nN]
G4double neutronSkinThickness
G4double projectileKineticEnergy
Config()
Default constructor.
std::string deExcitationString
Random::SeedVector getRandomSeeds() const
Get the seeds for the random-number generator.
ClusterAlgorithmType getClusterAlgorithm() const
Get the clustering algorithm.
FermiMomentumType getFermiMomentumType() const
Get the Fermi-momentum type.
std::string const & getLogFileName() const
Get the log file name.
PotentialType getPotentialType() const
Get the type of the potential for nucleons.
std::string getDeExcitationString() const
Get the de-excitation string.
static std::string const getVersionID()
Get the INCL version ID.
ParticleSpecies getProjectileSpecies() const
Get the projectile species.
void init()
Initialise the members.
static const G4int randomSeedMax
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.
LocalEnergyType getLocalEnergyBBType() const
Get the type of local energy for N-N avatars.
void setNeutronSkinThickness(const G4double d)
Set the neutron-skin thickness.
CoulombType getCoulombType() const
Get the Coulomb-distortion algorithm.
G4double getNeutronSkinThickness() const
Get the neutron-skin thickness.
std::string const & getOutputFileRoot() const
Get the output file root.
std::string const & getCalculationTitle() const
Get the run title.
std::string summary()
Return a summary of the run configuration.
void setClusterMaxMass(const G4int m)
Set the maximum mass for production of clusters.
std::string projectileString
G4double rpCorrelationCoefficientNeutron
std::string INCLXXDataFilePath
void setPionPotential(const G4bool pionPot)
Set the type of the potential for nucleons.
void setUseRealMasses(G4bool use)
Set whether to use real masses.
std::string inputFileName
DeExcitationType deExcitationType
G4double getProjectileKineticEnergy() const
Get the projectile kinetic energy.
SeparationEnergyType separationEnergyType
G4double getRPCorrelationCoefficient(const ParticleType t) const
Get the r-p correlation coefficient.
G4double getCutNN() const
static std::string const getVersionHash()
Get the INCL version hash.
G4bool getRefraction() const
True if we should use refraction.
void setTargetZ(G4int Z)
Set target charge number.
ParticleSpecies projectileSpecies