29#ifndef G4DNARelativisticIonisationModel_h
30#define G4DNARelativisticIonisationModel_h 1
50 const G4String& nam =
"DNARelativisticIonisationModel");
99 std::map <G4int, std::vector<G4double> >
eVecEZ;
101 typedef std::map <G4int, std::map<G4double, std::vector<G4double> > >
static const G4double e1[44]
static const G4double e2[44]
static const G4double emax
DeauxDimensionVecMapZ eVecEjeEZ
std::map< G4int, std::map< G4int, std::map< G4double, std::map< G4double, G4double > > > > QuadDimensionMapZ
std::vector< G4int > iShell[99]
std::map< G4int, std::vector< G4double > > eVecEZ
void SelectFasterComputation(G4bool input)
G4int RandomSelect(const G4Material *material, const G4ParticleDefinition *, G4double kineticEnergy)
QuadDimensionMapZ eDiffCrossSectionDataZ
G4double Interpolate(G4double e1, G4double e2, G4double e, G4double xs1, G4double xs2)
virtual void Initialise(const G4ParticleDefinition *, const G4DataVector &= *(new G4DataVector()))
std::vector< G4int > iState[99]
virtual void LoadAtomicStates(G4int z, const char *path)
virtual ~G4DNARelativisticIonisationModel()
virtual G4double GetTotalCrossSection(const G4Material *material, const G4ParticleDefinition *, G4double kineticEnergy)
G4VAtomDeexcitation * fAtomDeexcitation
G4DNARelativisticIonisationModel(const G4ParticleDefinition *p=0, const G4String &nam="DNARelativisticIonisationModel")
TriDimensionVecMapZ eProbaShellMapZ
const G4ParticleDefinition * fParticleDefinition
const std::vector< G4double > * fMaterialDensity
G4ThreeVector GetEjectedElectronDirection(const G4ParticleDefinition *, G4double energy, G4double secondaryenergy)
std::vector< G4int > iSubShell[99]
std::vector< G4double > Nelectrons[99]
G4double fHighEnergyLimit
virtual G4double CrossSectionPerVolume(const G4Material *material, const G4ParticleDefinition *p, G4double ekin, G4double emin, G4double emax)
std::vector< G4double > Ekinetic[99]
std::map< G4int, std::map< G4double, std::vector< G4double > > > DeauxDimensionVecMapZ
G4double QuadInterpolator(G4double e11, G4double e12, G4double e21, G4double e22, G4double x11, G4double x12, G4double x21, G4double x22, G4double t1, G4double t2, G4double t, G4double e)
G4DNARelativisticIonisationModel(const G4DNARelativisticIonisationModel &)
virtual G4double GetPartialCrossSection(const G4Material *material, G4int level, const G4ParticleDefinition *, G4double kineticEnergy)
virtual G4double GetDifferentialCrossSection(const G4Material *material, const G4ParticleDefinition *particle, G4double kineticEnergy, G4double secondaryEnergy, G4int level)
G4double GetEjectedElectronEnergy(const G4Material *material, const G4ParticleDefinition *, G4double energy, G4int shell)
virtual void SampleSecondaries(std::vector< G4DynamicParticle * > *, const G4MaterialCutsCouple *, const G4DynamicParticle *, G4double tmin, G4double maxEnergy)
std::vector< G4double > Ebinding[99]
G4ParticleChangeForGamma * fParticleChangeForGamma
std::map< G4int, std::map< G4int, std::map< G4double, std::vector< G4double > > > > TriDimensionVecMapZ
QuadDimensionMapZ eEjectedEnergyDataZ
void SelectStationary(G4bool input)
G4double energy(const ThreeVector &p, const G4double m)