29 #ifndef G4DNABornIonisationModel_h
30 #define G4DNABornIonisationModel_h 1
54 const G4String& nam =
"DNABornIonisationModel");
98 typedef std::map<G4String,G4String,std::less<G4String> >
MapFile;
101 typedef std::map<G4String,G4DNACrossSectionDataSet*,std::less<G4String> >
MapData;
143 typedef std::map<double, std::vector<double> >
VecMap;
G4double RandomizeEjectedElectronEnergyFromCumulatedDcs(G4ParticleDefinition *aParticleDefinition, G4double incomingParticleEnergy, G4int shell)
const std::vector< G4double > * fpMolWaterDensity
G4double RandomizeEjectedElectronEnergy(G4ParticleDefinition *aParticleDefinition, G4double incomingParticleEnergy, G4int shell)
virtual void SampleSecondaries(std::vector< G4DynamicParticle * > *, const G4MaterialCutsCouple *, const G4DynamicParticle *, G4double tmin, G4double maxEnergy)
std::map< G4String, G4double, std::less< G4String > > lowEnergyLimit
std::vector< double > eTdummyVec
std::map< double, std::vector< double > > VecMap
virtual G4double CrossSectionPerVolume(const G4Material *material, const G4ParticleDefinition *p, G4double ekin, G4double emin, G4double emax)
std::vector< double > pTdummyVec
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)
G4VAtomDeexcitation * fAtomDeexcitation
virtual ~G4DNABornIonisationModel()
TriDimensionMap pDiffCrossSectionData[6]
std::map< G4String, G4DNACrossSectionDataSet *, std::less< G4String > > MapData
G4DNABornIonisationModel(const G4ParticleDefinition *p=0, const G4String &nam="DNABornIonisationModel")
std::map< G4String, G4String, std::less< G4String > > MapFile
G4int RandomSelect(G4double energy, const G4String &particle)
G4DNAWaterIonisationStructure waterStructure
TriDimensionMap eNrjTransfData[6]
G4DNABornIonisationModel & operator=(const G4DNABornIonisationModel &right)
std::map< double, std::map< double, double > > TriDimensionMap
G4double RandomTransferedEnergy(G4ParticleDefinition *aParticleDefinition, G4double incomingParticleEnergy, G4int shell)
G4double energy(const ThreeVector &p, const G4double m)
TriDimensionMap pNrjTransfData[6]
void SelectFasterComputation(G4bool input)
G4ParticleChangeForGamma * fParticleChangeForGamma
G4double Interpolate(G4double e1, G4double e2, G4double e, G4double xs1, G4double xs2)
double DifferentialCrossSection(G4ParticleDefinition *aParticleDefinition, G4double k, G4double energyTransfer, G4int shell)
TriDimensionMap eDiffCrossSectionData[6]
std::map< G4String, G4double, std::less< G4String > > highEnergyLimit
void RandomizeEjectedElectronDirection(G4ParticleDefinition *aParticleDefinition, G4double incomingParticleEnergy, G4double outgoingParticleEnergy, G4double &cosTheta, G4double &phi)
virtual void Initialise(const G4ParticleDefinition *, const G4DataVector &=*(new G4DataVector()))