43 #ifndef G4MicroElecInelasticModel_h
44 #define G4MicroElecInelasticModel_h 1
70 const G4String& nam =
"MicroElecInelasticModel");
101 std::map<G4String,G4double,std::less<G4String> > lowEnergyLimit;
102 std::map<G4String,G4double,std::less<G4String> > highEnergyLimit;
109 typedef std::map<G4String,G4String,std::less<G4String> > MapFile;
112 typedef std::map<G4String,G4MicroElecCrossSectionDataSet*,std::less<G4String> > MapData;
139 typedef std::map<double, std::map<double, double> > TriDimensionMap;
140 TriDimensionMap eDiffCrossSectionData[7];
141 TriDimensionMap pDiffCrossSectionData[7];
142 std::vector<double> eTdummyVec;
143 std::vector<double> pTdummyVec;
145 typedef std::map<double, std::vector<double> > VecMap;
virtual G4double CrossSectionPerVolume(const G4Material *material, const G4ParticleDefinition *p, G4double ekin, G4double emin, G4double emax)
G4MicroElecInelasticModel(const G4ParticleDefinition *p=0, const G4String &nam="MicroElecInelasticModel")
virtual void Initialise(const G4ParticleDefinition *, const G4DataVector &)
virtual ~G4MicroElecInelasticModel()
double DifferentialCrossSection(G4ParticleDefinition *aParticleDefinition, G4double k, G4double energyTransfer, G4int shell)
G4ParticleChangeForGamma * fParticleChangeForGamma
virtual void SampleSecondaries(std::vector< G4DynamicParticle * > *, const G4MaterialCutsCouple *, const G4DynamicParticle *, G4double tmin, G4double maxEnergy)