43#ifndef G4MuElecInelasticModel_h
44#define G4MuElecInelasticModel_h 1
70 const G4String& nam =
"MuElecInelasticModel");
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,G4MuElecCrossSectionDataSet*,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;
double DifferentialCrossSection(G4ParticleDefinition *aParticleDefinition, G4double k, G4double energyTransfer, G4int shell)
G4ParticleChangeForGamma * fParticleChangeForGamma
virtual G4double CrossSectionPerVolume(const G4Material *material, const G4ParticleDefinition *p, G4double ekin, G4double emin, G4double emax)
virtual void SampleSecondaries(std::vector< G4DynamicParticle * > *, const G4MaterialCutsCouple *, const G4DynamicParticle *, G4double tmin, G4double maxEnergy)
virtual ~G4MuElecInelasticModel()
virtual void Initialise(const G4ParticleDefinition *, const G4DataVector &)