57 cross_section.clear();
69 cross_section.push_back(0.0);
81 <<
" including following list of models:" <<
G4endl;
82 for(
G4int i=0; i<nModels; ++i) {
102 for(
G4int i=0; i<nModels; i++) {
121 for(
G4int i=0; i<nModels; ++i) {
124 cutEnergy, maxEnergy);
142 for(i=0; i<nModels; ++i) {
145 cross_section[i] = cross;
150 for(i=0; i<nModels; ++i) {
151 if(cross <= cross_section[i]) {
void AddModel(G4VEmModel *)
virtual void Initialise(const G4ParticleDefinition *, const G4DataVector &) final
virtual ~G4EmMultiModel()
G4double GetKineticEnergy() const
void SetParticleChange(G4VParticleChange *, G4VEmFluctuationModel *f=nullptr)
G4VEmFluctuationModel * GetModelOfFluctuations()
G4EmMultiModel(const G4String &nam="MultiModel")
virtual void SampleSecondaries(std::vector< G4DynamicParticle * > *, const G4MaterialCutsCouple *, const G4DynamicParticle *, G4double tmin, G4double tmax) final
const G4MaterialCutsCouple * CurrentCouple() const
G4GLOB_DLL std::ostream G4cout
double A(double temperature)
G4double CrossSection(const G4MaterialCutsCouple *, const G4ParticleDefinition *, G4double kineticEnergy, G4double cutEnergy=0.0, G4double maxEnergy=DBL_MAX)
virtual G4double ComputeCrossSectionPerAtom(const G4ParticleDefinition *, G4double kinEnergy, G4double Z, G4double A=0., G4double cutEnergy=0.0, G4double maxEnergy=DBL_MAX) final
const G4ParticleDefinition * GetParticleDefinition() const
void SetCurrentCouple(const G4MaterialCutsCouple *)
G4VParticleChange * pParticleChange
virtual G4double ComputeDEDX(const G4MaterialCutsCouple *, const G4ParticleDefinition *, G4double kineticEnergy, G4double cutEnergy) final
const G4String & GetName() const
const XML_Char XML_Content * model