41 #ifndef G4DNACPA100IonisationModel_h
42 #define G4DNACPA100IonisationModel_h 1
66 const G4String& nam =
"DNACPA100IonisationModel");
117 typedef std::map<G4String,G4String,std::less<G4String> >
MapFile;
120 typedef std::map<G4String,G4DNACrossSectionDataSet*,std::less<G4String> >
MapData;
160 typedef std::map<G4double, std::vector<G4double> >
VecMap;
TriDimensionMap eDiffCrossSectionData[6]
virtual void Initialise(const G4ParticleDefinition *, const G4DataVector &=*(new G4DataVector()))
void SelectFasterComputation(G4bool input)
G4ParticleChangeForGamma * fParticleChangeForGamma
void SelectStationary(G4bool input)
std::map< G4double, std::vector< G4double > > VecMap
static const G4double emax
virtual G4double CrossSectionPerVolume(const G4Material *material, const G4ParticleDefinition *p, G4double ekin, G4double emin, G4double emax)
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)
G4DNACPA100WaterIonisationStructure waterStructure
G4VAtomDeexcitation * fAtomDeexcitation
std::map< G4double, std::map< G4double, G4double > > TriDimensionMap
TriDimensionMap eNrjTransfData[6]
virtual ~G4DNACPA100IonisationModel()
void SelectUseDcs(G4bool input)
G4DNACPA100IonisationModel & operator=(const G4DNACPA100IonisationModel &right)
std::vector< G4double > eTdummyVec
std::map< G4String, G4double, std::less< G4String > > highEnergyLimit
const std::vector< G4double > * fpMolWaterDensity
std::map< G4String, G4double, std::less< G4String > > lowEnergyLimit
void RandomizeEjectedElectronDirection(G4ParticleDefinition *aParticleDefinition, G4double incomingParticleEnergy, G4double outgoingParticleEnergy, G4double &cosTheta, G4double &phi)
G4double RandomizeEjectedElectronEnergy(G4ParticleDefinition *aParticleDefinition, G4double incomingParticleEnergy, G4int shell)
G4double RandomizeEjectedElectronEnergyFromCompositionSampling(G4ParticleDefinition *aParticleDefinition, G4double incomingParticleEnergy, G4int shell)
virtual void SampleSecondaries(std::vector< G4DynamicParticle * > *, const G4MaterialCutsCouple *, const G4DynamicParticle *, G4double tmin, G4double maxEnergy)
G4double DifferentialCrossSection(G4ParticleDefinition *aParticleDefinition, G4double k, G4double energyTransfer, G4int shell)
G4double Interpolate(G4double e1, G4double e2, G4double e, G4double xs1, G4double xs2)
G4int RandomSelect(G4double energy, const G4String &particle)
G4double RandomizeEjectedElectronEnergyFromCumulatedDcs(G4ParticleDefinition *aParticleDefinition, G4double incomingParticleEnergy, G4int shell)
std::map< G4String, G4String, std::less< G4String > > MapFile
G4double RandomTransferedEnergy(G4ParticleDefinition *aParticleDefinition, G4double incomingParticleEnergy, G4int shell)
G4DNACPA100IonisationModel(const G4ParticleDefinition *p=0, const G4String &nam="DNACPA100IonisationModel")
std::map< G4String, G4DNACrossSectionDataSet *, std::less< G4String > > MapData