Geant4-11
|
#include <G4INCLParticleSampler.hh>
Public Member Functions | |
NuclearDensity const * | getDensity () const |
Getter for theDensity. More... | |
NuclearPotential::INuclearPotential const * | getPotential () const |
Getter for thePotential. More... | |
G4double | getRPCorrelationCoefficient (const ParticleType t) const |
Getter for rpCorrelationCoefficient. More... | |
ParticleSampler (const G4int A, const G4int Z, const G4int S) | |
Constructor. More... | |
ParticleList | sampleParticles (ThreeVector const &position) |
void | sampleParticlesIntoList (ThreeVector const &position, ParticleList &theList) |
void | setDensity (NuclearDensity const *const d) |
Setter for theDensity. More... | |
void | setPotential (NuclearPotential::INuclearPotential const *const p) |
Setter for thePotential. More... | |
void | setRPCorrelationCoefficient (const ParticleType t, const G4double corrCoeff) |
Setter for rpCorrelationCoefficient. More... | |
~ParticleSampler () | |
Destructor. More... | |
Private Types | |
typedef Particle *(ParticleSampler::* | ParticleSamplerMethod) (const ParticleType t) const |
Private Member Functions | |
Particle * | sampleOneParticleWithFuzzyRPCorrelation (const ParticleType t) const |
Sample one particle with a fuzzy rp-correlation. More... | |
Particle * | sampleOneParticleWithoutRPCorrelation (const ParticleType t) const |
Sample one particle not taking into account the rp-correlation. More... | |
Particle * | sampleOneParticleWithRPCorrelation (const ParticleType t) const |
Sample one particle taking into account the rp-correlation. More... | |
void | updateSampleOneParticleMethods () |
Private Attributes | |
G4double | rpCorrelationCoefficient [UnknownParticle] |
Correlation coefficients for the r-p correlation. More... | |
ParticleSamplerMethod | sampleOneNeutron |
Sample a list of particles. More... | |
ParticleSamplerMethod | sampleOneProton |
Sample a list of particles. More... | |
const G4int | theA |
Mass number. More... | |
NuclearDensity const * | theDensity |
Pointer to the Cluster's NuclearDensity. More... | |
InterpolationTable const * | thePCDFTable [UnknownParticle] |
Array of pointers to the p-space CDF table. More... | |
NuclearPotential::INuclearPotential const * | thePotential |
Pointer to the Cluster's NuclearPotential. More... | |
InterpolationTable const * | theRCDFTable [UnknownParticle] |
Array of pointers to the r-space CDF table. More... | |
const G4int | theS |
Strangeness number. More... | |
const G4int | theZ |
Charge number. More... | |
Definition at line 54 of file G4INCLParticleSampler.hh.
|
private |
Definition at line 98 of file G4INCLParticleSampler.hh.
Constructor.
A | the mass number |
Z | the charge number |
Definition at line 51 of file G4INCLParticleSampler.cc.
References G4INCL::ParticleTable::getRPCorrelationCoefficient(), G4INCL::Lambda, G4INCL::Neutron, G4INCL::Proton, rpCorrelationCoefficient, thePCDFTable, theRCDFTable, and G4INCL::UnknownParticle.
G4INCL::ParticleSampler::~ParticleSampler | ( | ) |
|
inline |
Getter for theDensity.
Definition at line 68 of file G4INCLParticleSampler.hh.
References theDensity.
|
inline |
Getter for thePotential.
Definition at line 71 of file G4INCLParticleSampler.hh.
References thePotential.
|
inline |
Getter for rpCorrelationCoefficient.
Definition at line 74 of file G4INCLParticleSampler.hh.
References rpCorrelationCoefficient.
|
private |
Sample one particle with a fuzzy rp-correlation.
Definition at line 165 of file G4INCLParticleSampler.cc.
References G4INCL::Random::correlatedUniform(), G4INCL::NuclearPotential::INuclearPotential::getFermiMomentum(), G4INCL::NuclearDensity::getMaxRFromP(), G4INCL::Random::normVector(), G4INCL::Math::pow13(), rpCorrelationCoefficient, G4INCL::Particle::setUncorrelatedMomentum(), G4INCL::Random::sphereVector(), theDensity, and thePotential.
Referenced by updateSampleOneParticleMethods().
|
private |
Sample one particle not taking into account the rp-correlation.
Definition at line 157 of file G4INCLParticleSampler.cc.
References G4INCL::Random::normVector(), G4INCL::Random::shoot(), thePCDFTable, and theRCDFTable.
Referenced by sampleParticlesIntoList(), and updateSampleOneParticleMethods().
|
private |
Sample one particle taking into account the rp-correlation.
Definition at line 144 of file G4INCLParticleSampler.cc.
References G4INCL::NuclearPotential::INuclearPotential::getFermiMomentum(), G4INCL::NuclearDensity::getMaxRFromP(), G4INCL::ThreeVector::mag(), G4INCL::Particle::setUncorrelatedMomentum(), G4INCL::Random::sphereVector(), theDensity, and thePotential.
Referenced by updateSampleOneParticleMethods().
ParticleList G4INCL::ParticleSampler::sampleParticles | ( | ThreeVector const & | position | ) |
Definition at line 99 of file G4INCLParticleSampler.cc.
References sampleParticlesIntoList().
void G4INCL::ParticleSampler::sampleParticlesIntoList | ( | ThreeVector const & | position, |
ParticleList & | theList | ||
) |
Definition at line 105 of file G4INCLParticleSampler.cc.
References G4INCL::NuclearDensityFactory::createPCDFTable(), G4INCL::NuclearDensityFactory::createRCDFTable(), G4INCL::Particle::getMomentum(), G4INCL::Particle::getPosition(), G4INCL::Lambda, G4INCL::Neutron, G4INCL::Proton, sampleOneNeutron, sampleOneParticleWithoutRPCorrelation(), sampleOneProton, G4INCL::Particle::setPosition(), theA, thePCDFTable, theRCDFTable, theS, and theZ.
Referenced by G4INCL::Cluster::initializeParticles(), and sampleParticles().
void G4INCL::ParticleSampler::setDensity | ( | NuclearDensity const *const | d | ) |
Setter for theDensity.
Definition at line 71 of file G4INCLParticleSampler.cc.
References theDensity, and updateSampleOneParticleMethods().
Referenced by G4INCL::Nucleus::Nucleus(), and G4INCL::Nucleus::setDensity().
void G4INCL::ParticleSampler::setPotential | ( | NuclearPotential::INuclearPotential const *const | p | ) |
Setter for thePotential.
Definition at line 76 of file G4INCLParticleSampler.cc.
References thePotential, and updateSampleOneParticleMethods().
Referenced by G4INCL::Nucleus::Nucleus().
|
inline |
Setter for rpCorrelationCoefficient.
Definition at line 86 of file G4INCLParticleSampler.hh.
References rpCorrelationCoefficient.
|
private |
Definition at line 81 of file G4INCLParticleSampler.cc.
References G4INCL::Neutron, G4INCL::Proton, rpCorrelationCoefficient, sampleOneNeutron, sampleOneParticleWithFuzzyRPCorrelation(), sampleOneParticleWithoutRPCorrelation(), sampleOneParticleWithRPCorrelation(), sampleOneProton, theDensity, and thePotential.
Referenced by setDensity(), and setPotential().
|
private |
Correlation coefficients for the r-p correlation.
Definition at line 143 of file G4INCLParticleSampler.hh.
Referenced by getRPCorrelationCoefficient(), ParticleSampler(), sampleOneParticleWithFuzzyRPCorrelation(), setRPCorrelationCoefficient(), and updateSampleOneParticleMethods().
|
private |
Sample a list of particles.
This method is a pointer to the method that does the real work for neutrons.
Definition at line 110 of file G4INCLParticleSampler.hh.
Referenced by sampleParticlesIntoList(), and updateSampleOneParticleMethods().
|
private |
Sample a list of particles.
This method is a pointer to the method that does the real work for protons.
Definition at line 104 of file G4INCLParticleSampler.hh.
Referenced by sampleParticlesIntoList(), and updateSampleOneParticleMethods().
|
private |
Mass number.
Definition at line 122 of file G4INCLParticleSampler.hh.
Referenced by sampleParticlesIntoList().
|
private |
Pointer to the Cluster's NuclearDensity.
Definition at line 137 of file G4INCLParticleSampler.hh.
Referenced by getDensity(), sampleOneParticleWithFuzzyRPCorrelation(), sampleOneParticleWithRPCorrelation(), setDensity(), and updateSampleOneParticleMethods().
|
private |
Array of pointers to the p-space CDF table.
Definition at line 134 of file G4INCLParticleSampler.hh.
Referenced by ParticleSampler(), sampleOneParticleWithoutRPCorrelation(), and sampleParticlesIntoList().
|
private |
Pointer to the Cluster's NuclearPotential.
Definition at line 140 of file G4INCLParticleSampler.hh.
Referenced by getPotential(), sampleOneParticleWithFuzzyRPCorrelation(), sampleOneParticleWithRPCorrelation(), setPotential(), and updateSampleOneParticleMethods().
|
private |
Array of pointers to the r-space CDF table.
Definition at line 131 of file G4INCLParticleSampler.hh.
Referenced by ParticleSampler(), sampleOneParticleWithoutRPCorrelation(), and sampleParticlesIntoList().
|
private |
Strangeness number.
Definition at line 128 of file G4INCLParticleSampler.hh.
Referenced by sampleParticlesIntoList().
|
private |
Charge number.
Definition at line 125 of file G4INCLParticleSampler.hh.
Referenced by sampleParticlesIntoList().