Geant4
10.01.p02
|
#include <G4MuPairProductionModel.hh>
Protected Member Functions | |
G4double | ComputMuPairLoss (G4double Z, G4double tkin, G4double cut, G4double tmax) |
G4double | ComputeMicroscopicCrossSection (G4double tkin, G4double Z, G4double cut) |
virtual G4double | ComputeDMicroscopicCrossSection (G4double tkin, G4double Z, G4double pairEnergy) |
G4double | MaxSecondaryEnergyForElement (G4double kineticEnergy, G4double Z) |
Protected Member Functions inherited from G4VEmModel | |
G4ParticleChangeForLoss * | GetParticleChangeForLoss () |
G4ParticleChangeForGamma * | GetParticleChangeForGamma () |
virtual G4double | MaxSecondaryEnergy (const G4ParticleDefinition *, G4double kineticEnergy) |
const G4MaterialCutsCouple * | CurrentCouple () const |
void | SetCurrentElement (const G4Element *) |
Protected Attributes | |
const G4ParticleDefinition * | particle |
G4NistManager * | nist |
G4double | factorForCross |
G4double | sqrte |
G4double | particleMass |
G4double | z13 |
G4double | z23 |
G4double | lnZ |
G4int | currentZ |
Protected Attributes inherited from G4VEmModel | |
CLHEP::HepRandomEngine * | rndmEngineMod |
G4ElementData * | fElementData |
G4VParticleChange * | pParticleChange |
G4PhysicsTable * | xSectionTable |
const std::vector< G4double > * | theDensityFactor |
const std::vector< G4int > * | theDensityIdx |
size_t | idxTable |
Static Protected Attributes | |
static const G4double | xgi [8] |
static const G4double | wgi [8] |
Static Protected Attributes inherited from G4VEmModel | |
static const G4double | inveplus = 1.0/CLHEP::eplus |
Private Member Functions | |
void | MakeSamplingTables () |
void | DataCorrupted (G4int Z, G4double logTkin) |
G4double | FindScaledEnergy (G4int Z, G4double rand, G4double logTkin, G4double yymin, G4double yymax) |
G4MuPairProductionModel & | operator= (const G4MuPairProductionModel &right) |
G4MuPairProductionModel (const G4MuPairProductionModel &) | |
Private Attributes | |
G4ParticleDefinition * | theElectron |
G4ParticleDefinition * | thePositron |
G4ParticleChangeForLoss * | fParticleChange |
G4double | minPairEnergy |
G4double | lowestKinEnergy |
G4int | nzdat |
G4int | nYBinPerDecade |
size_t | nbiny |
size_t | nbine |
G4double | ymin |
G4double | dy |
G4double | emin |
G4double | emax |
Static Private Attributes | |
static const G4int | zdat [5] ={1, 4, 13, 29, 92} |
static const G4double | adat [5] ={1.01, 9.01,26.98, 63.55, 238.03} |
Definition at line 73 of file G4MuPairProductionModel.hh.
G4MuPairProductionModel::G4MuPairProductionModel | ( | const G4ParticleDefinition * | p = 0 , |
const G4String & | nam = "muPairProd" |
||
) |
Definition at line 104 of file G4MuPairProductionModel.cc.
References G4Electron::Electron(), emax, emin, G4ParticleDefinition::GetPDGMass(), G4NistManager::Instance(), lnZ, lowestKinEnergy, nist, particleMass, G4Positron::Positron(), SetParticle(), TeV, theElectron, thePositron, z13, and z23.
|
virtual |
Definition at line 141 of file G4MuPairProductionModel.cc.
|
private |
|
virtual |
Reimplemented from G4VEmModel.
Definition at line 417 of file G4MuPairProductionModel.cc.
References ComputeMicroscopicCrossSection(), lowestKinEnergy, G4INCL::Math::max(), MaxSecondaryEnergyForElement(), G4INCL::Math::min(), and minPairEnergy.
|
virtual |
Reimplemented from G4VEmModel.
Definition at line 198 of file G4MuPairProductionModel.cc.
References ComputMuPairLoss(), G4Material::GetAtomicNumDensityVector(), G4Material::GetElementVector(), G4Material::GetNumberOfElements(), lowestKinEnergy, MaxSecondaryEnergyForElement(), and minPairEnergy.
|
protectedvirtual |
Reimplemented in G4hPairProductionModel.
Definition at line 304 of file G4MuPairProductionModel.cc.
References a0, a1, a3, a4, a5, c3, e3, factorForCross, fe, G4Exp(), G4Log(), particleMass, sqrte, wgi, xgi, G4InuclParticleNames::xi0, z13, and z23.
Referenced by ComputeMicroscopicCrossSection(), ComputMuPairLoss(), and MakeSamplingTables().
|
protected |
Definition at line 266 of file G4MuPairProductionModel.cc.
References ComputeDMicroscopicCrossSection(), G4Exp(), G4Log(), G4INCL::Math::max(), MaxSecondaryEnergyForElement(), minPairEnergy, wgi, and xgi.
Referenced by ComputeCrossSectionPerAtom().
|
protected |
Definition at line 225 of file G4MuPairProductionModel.cc.
References ComputeDMicroscopicCrossSection(), G4Exp(), G4Log(), G4INCL::Math::min(), minPairEnergy, wgi, and xgi.
Referenced by ComputeDEDXPerVolume().
Definition at line 649 of file G4MuPairProductionModel.cc.
References FatalException, G4Exception(), G4Exp(), G4VEmModel::GetName(), and G4VEmModel::IsMaster().
Referenced by FindScaledEnergy().
|
inlineprivate |
Definition at line 218 of file G4MuPairProductionModel.hh.
References DataCorrupted(), G4VEmModel::fElementData, G4Physics2DVector::FindLinearX(), G4ElementData::GetElement2DData(), p0, and G4Physics2DVector::Value().
Referenced by SampleSecondaries().
|
virtual |
Implements G4VEmModel.
Definition at line 155 of file G4MuPairProductionModel.cc.
References dy, emax, emin, G4VEmModel::fElementData, fParticleChange, G4Log(), G4VEmModel::GetParticleChangeForLoss(), G4VEmModel::HighEnergyLimit(), G4VEmModel::InitialiseElementSelectors(), G4VEmModel::IsMaster(), G4VEmModel::LowEnergyLimit(), lowestKinEnergy, MakeSamplingTables(), G4INCL::Math::max(), minPairEnergy, nbine, nbiny, nYBinPerDecade, particle, SetParticle(), and ymin.
Referenced by G4TablesForExtrapolator::ComputeMuonDEDX().
|
virtual |
Reimplemented from G4VEmModel.
Definition at line 187 of file G4MuPairProductionModel.cc.
References G4VEmModel::fElementData, G4VEmModel::GetElementData(), G4VEmModel::GetElementSelectors(), G4VEmModel::HighEnergyLimit(), lowestKinEnergy, particle, and G4VEmModel::SetElementSelectors().
|
private |
Definition at line 441 of file G4MuPairProductionModel.cc.
References ComputeDMicroscopicCrossSection(), dy, emax, emin, fac, G4VEmModel::fElementData, G4Exp(), G4Log(), imax, G4ElementData::InitialiseForElement(), iz, MaxSecondaryEnergyForElement(), MeV, minPairEnergy, nbine, nbiny, nzdat, G4Physics2DVector::PutValue(), G4Physics2DVector::PutX(), G4Physics2DVector::PutY(), ymin, and zdat.
Referenced by Initialise().
|
inlineprotected |
Definition at line 202 of file G4MuPairProductionModel.hh.
References currentZ, G4lrint(), G4NistManager::GetLOGZ(), G4NistManager::GetZ13(), lnZ, nist, particleMass, sqrte, z13, and z23.
Referenced by ComputeCrossSectionPerAtom(), ComputeDEDXPerVolume(), ComputeMicroscopicCrossSection(), MakeSamplingTables(), and SampleSecondaries().
|
virtual |
Reimplemented from G4VEmModel.
Definition at line 146 of file G4MuPairProductionModel.cc.
References lowestKinEnergy, and G4INCL::Math::max().
|
private |
|
virtual |
Implements G4VEmModel.
Definition at line 510 of file G4MuPairProductionModel.cc.
References currentZ, FindScaledEnergy(), fParticleChange, G4Exp(), G4Log(), G4UniformRand, G4InuclParticleNames::gam, G4DynamicParticle::GetKineticEnergy(), G4NistManager::GetLOGZ(), G4DynamicParticle::GetMomentum(), G4DynamicParticle::GetMomentumDirection(), G4Element::GetZ(), iz, lnZ, G4INCL::Math::max(), MaxSecondaryEnergyForElement(), MeV, G4INCL::Math::min(), minPairEnergy, nist, nzdat, particle, particleMass, G4VEmModel::SelectRandomAtom(), G4ParticleChangeForLoss::SetProposedKineticEnergy(), G4ParticleChangeForLoss::SetProposedMomentumDirection(), theElectron, thePositron, ymin, and zdat.
|
inline |
Definition at line 183 of file G4MuPairProductionModel.hh.
References lowestKinEnergy.
|
inline |
Definition at line 191 of file G4MuPairProductionModel.hh.
References G4ParticleDefinition::GetPDGMass(), particle, and particleMass.
Referenced by G4MuPairProductionModel(), and Initialise().
|
staticprivate |
Definition at line 178 of file G4MuPairProductionModel.hh.
|
protected |
Definition at line 153 of file G4MuPairProductionModel.hh.
Referenced by MaxSecondaryEnergyForElement(), and SampleSecondaries().
|
private |
Definition at line 173 of file G4MuPairProductionModel.hh.
Referenced by Initialise(), and MakeSamplingTables().
|
private |
Definition at line 175 of file G4MuPairProductionModel.hh.
Referenced by G4MuPairProductionModel(), Initialise(), and MakeSamplingTables().
|
private |
Definition at line 174 of file G4MuPairProductionModel.hh.
Referenced by G4MuPairProductionModel(), Initialise(), and MakeSamplingTables().
|
protected |
Definition at line 147 of file G4MuPairProductionModel.hh.
Referenced by G4hPairProductionModel::ComputeDMicroscopicCrossSection(), and ComputeDMicroscopicCrossSection().
|
private |
Definition at line 161 of file G4MuPairProductionModel.hh.
Referenced by Initialise(), and SampleSecondaries().
|
protected |
Definition at line 152 of file G4MuPairProductionModel.hh.
Referenced by G4MuPairProductionModel(), MaxSecondaryEnergyForElement(), and SampleSecondaries().
|
private |
Definition at line 164 of file G4MuPairProductionModel.hh.
Referenced by ComputeCrossSectionPerAtom(), ComputeDEDXPerVolume(), G4MuPairProductionModel(), Initialise(), InitialiseLocal(), MinPrimaryEnergy(), and SetLowestKineticEnergy().
|
private |
Definition at line 163 of file G4MuPairProductionModel.hh.
Referenced by ComputeCrossSectionPerAtom(), ComputeDEDXPerVolume(), ComputeMicroscopicCrossSection(), ComputMuPairLoss(), Initialise(), MakeSamplingTables(), and SampleSecondaries().
|
private |
Definition at line 171 of file G4MuPairProductionModel.hh.
Referenced by Initialise(), and MakeSamplingTables().
|
private |
Definition at line 170 of file G4MuPairProductionModel.hh.
Referenced by Initialise(), and MakeSamplingTables().
|
protected |
Definition at line 145 of file G4MuPairProductionModel.hh.
Referenced by G4MuPairProductionModel(), MaxSecondaryEnergyForElement(), and SampleSecondaries().
|
private |
Definition at line 169 of file G4MuPairProductionModel.hh.
Referenced by Initialise().
|
private |
Definition at line 166 of file G4MuPairProductionModel.hh.
Referenced by MakeSamplingTables(), and SampleSecondaries().
|
protected |
Definition at line 144 of file G4MuPairProductionModel.hh.
Referenced by Initialise(), InitialiseLocal(), SampleSecondaries(), and SetParticle().
|
protected |
Definition at line 149 of file G4MuPairProductionModel.hh.
Referenced by G4hPairProductionModel::ComputeDMicroscopicCrossSection(), ComputeDMicroscopicCrossSection(), G4MuPairProductionModel(), MaxSecondaryEnergyForElement(), SampleSecondaries(), and SetParticle().
|
protected |
Definition at line 148 of file G4MuPairProductionModel.hh.
Referenced by G4hPairProductionModel::ComputeDMicroscopicCrossSection(), ComputeDMicroscopicCrossSection(), and MaxSecondaryEnergyForElement().
|
private |
Definition at line 159 of file G4MuPairProductionModel.hh.
Referenced by G4MuPairProductionModel(), and SampleSecondaries().
|
private |
Definition at line 160 of file G4MuPairProductionModel.hh.
Referenced by G4MuPairProductionModel(), and SampleSecondaries().
|
staticprotected |
Definition at line 155 of file G4MuPairProductionModel.hh.
Referenced by G4hPairProductionModel::ComputeDMicroscopicCrossSection(), ComputeDMicroscopicCrossSection(), ComputeMicroscopicCrossSection(), and ComputMuPairLoss().
|
staticprotected |
Definition at line 155 of file G4MuPairProductionModel.hh.
Referenced by G4hPairProductionModel::ComputeDMicroscopicCrossSection(), ComputeDMicroscopicCrossSection(), ComputeMicroscopicCrossSection(), and ComputMuPairLoss().
|
private |
Definition at line 172 of file G4MuPairProductionModel.hh.
Referenced by Initialise(), MakeSamplingTables(), and SampleSecondaries().
|
protected |
Definition at line 150 of file G4MuPairProductionModel.hh.
Referenced by G4hPairProductionModel::ComputeDMicroscopicCrossSection(), ComputeDMicroscopicCrossSection(), G4MuPairProductionModel(), and MaxSecondaryEnergyForElement().
|
protected |
Definition at line 151 of file G4MuPairProductionModel.hh.
Referenced by G4hPairProductionModel::ComputeDMicroscopicCrossSection(), ComputeDMicroscopicCrossSection(), G4MuPairProductionModel(), and MaxSecondaryEnergyForElement().
|
staticprivate |
Definition at line 177 of file G4MuPairProductionModel.hh.
Referenced by MakeSamplingTables(), and SampleSecondaries().