34 #ifndef G4DNASancheExcitationModel_h
35 #define G4DNASancheExcitationModel_h 1
49 const G4String& nam =
"DNASancheExcitationModel");
126 G4Exception(
"*** WARNING : the G4DNASancheExcitationModel class is not "
127 "validated below 2 eV !",
G4double TotalCrossSection(G4double t)
virtual void Initialise(const G4ParticleDefinition *, const G4DataVector &)
G4ParticleChangeForGamma * fParticleChangeForGamma
virtual void SampleSecondaries(std::vector< G4DynamicParticle * > *, const G4MaterialCutsCouple *, const G4DynamicParticle *, G4double tmin, G4double maxEnergy)
void SetVerboseLevel(G4int verbose)
G4DNASancheExcitationModel(const G4ParticleDefinition *p=0, const G4String &nam="DNASancheExcitationModel")
G4DNASancheExcitationModel & operator=(const G4DNASancheExcitationModel &right)
virtual G4double CrossSectionPerVolume(const G4Material *material, const G4ParticleDefinition *p, G4double ekin, G4double emin, G4double emax)
static const G4double emax
G4double VibrationEnergy(G4int level)
static constexpr double eV
void ExtendLowEnergyLimit(G4double)
std::vector< std::vector< G4double > > fEnergyLevelXS
std::vector< G4double > fEnergyTotalXS
void G4Exception(const char *originOfException, const char *exceptionCode, G4ExceptionSeverity severity, const char *description)
const std::vector< G4double > * fpWaterDensity
std::vector< G4double > tdummyVec
void SetLowEnergyLimit(G4double)
virtual ~G4DNASancheExcitationModel()
G4double LinInterpolate(G4double e1, G4double e2, G4double e, G4double xs1, G4double xs2)
G4double PartialCrossSection(G4double energy, G4int level)
G4int RandomSelect(G4double energy)
void SelectStationary(G4bool input)