Geant4  10.01.p02
G4IonFluctuations Class Reference

#include <G4IonFluctuations.hh>

+ Inheritance diagram for G4IonFluctuations:
+ Collaboration diagram for G4IonFluctuations:

Public Member Functions

 G4IonFluctuations (const G4String &nam="IonFluc")
 
virtual ~G4IonFluctuations ()
 
G4double SampleFluctuations (const G4MaterialCutsCouple *, const G4DynamicParticle *, G4double tmax, G4double length, G4double meanLoss)
 
G4double Dispersion (const G4Material *, const G4DynamicParticle *, G4double tmax, G4double length)
 
void InitialiseMe (const G4ParticleDefinition *)
 
void SetParticleAndCharge (const G4ParticleDefinition *, G4double q2)
 
- Public Member Functions inherited from G4VEmFluctuationModel
 G4VEmFluctuationModel (const G4String &nam)
 
virtual ~G4VEmFluctuationModel ()
 
const G4String & GetName () const
 

Private Member Functions

G4double Factor (const G4Material *, G4double Zeff)
 
G4double RelativisticFactor (const G4Material *, G4double Zeff)
 
G4IonFluctuations & operator= (const G4IonFluctuations &right)
 
 G4IonFluctuations (const G4IonFluctuations &)
 

Private Attributes

G4UniversalFluctuation uniFluct
 
const G4ParticleDefinition * particle
 
G4Pow * g4pow
 
G4double particleMass
 
G4double charge
 
G4double chargeSquare
 
G4double effChargeSquare
 
G4double parameter
 
G4double minNumberInteractionsBohr
 
G4double theBohrBeta2
 
G4double minFraction
 
G4double xmin
 
G4double minLoss
 
G4double kineticEnergy
 
G4double beta2
 

Additional Inherited Members

- Protected Attributes inherited from G4VEmFluctuationModel
CLHEP::HepRandomEngine * rndmEngineF
 

Detailed Description

Definition at line 61 of file G4IonFluctuations.hh.

Constructor & Destructor Documentation

G4IonFluctuations::G4IonFluctuations ( const G4String &  nam = "IonFluc")

Definition at line 73 of file G4IonFluctuations.cc.

References beta2, g4pow, G4Pow::GetInstance(), and kineticEnergy.

+ Here is the call graph for this function:

G4IonFluctuations::~G4IonFluctuations ( )
virtual

Definition at line 94 of file G4IonFluctuations.cc.

G4IonFluctuations::G4IonFluctuations ( const G4IonFluctuations &  )
private

Member Function Documentation

G4double G4IonFluctuations::Dispersion ( const G4Material *  material,
const G4DynamicParticle *  dp,
G4double  tmax,
G4double  length 
)
virtual

Implements G4VEmFluctuationModel.

Definition at line 177 of file G4IonFluctuations.cc.

References beta2, chargeSquare, fac, Factor(), G4Material::GetElectronDensity(), G4DynamicParticle::GetKineticEnergy(), G4Material::GetTotNbOfAtomsPerVolume(), kineticEnergy, and particleMass.

Referenced by SampleFluctuations().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

G4double G4IonFluctuations::Factor ( const G4Material *  material,
G4double  Zeff 
)
private

Definition at line 226 of file G4IonFluctuations.cc.

References a, G4Pow::A13(), beta2, charge, chargeSquare, effChargeSquare, G4INCL::KinematicsUtils::energy(), G4Pow::expA(), factor, G4lrint(), g4pow, G4Material::GetNumberOfElements(), G4Material::GetState(), iz, kineticEnergy, kStateGas, MeV, particleMass, G4Pow::powA(), RelativisticFactor(), and theBohrBeta2.

Referenced by Dispersion().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void G4IonFluctuations::InitialiseMe ( const G4ParticleDefinition *  part)
virtual

Reimplemented from G4VEmFluctuationModel.

Definition at line 99 of file G4IonFluctuations.cc.

References charge, chargeSquare, effChargeSquare, eplus, G4ParticleDefinition::GetPDGCharge(), G4ParticleDefinition::GetPDGMass(), G4UniversalFluctuation::InitialiseMe(), particle, particleMass, and uniFluct.

+ Here is the call graph for this function:

G4IonFluctuations& G4IonFluctuations::operator= ( const G4IonFluctuations &  right)
private
G4double G4IonFluctuations::RelativisticFactor ( const G4Material *  mat,
G4double  Zeff 
)
private

Definition at line 422 of file G4IonFluctuations.cc.

References beta2, G4Log(), G4IonisParamMat::GetFermiEnergy(), G4Material::GetIonisation(), and G4IonisParamMat::GetMeanExcitationEnergy().

Referenced by Factor().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

G4double G4IonFluctuations::SampleFluctuations ( const G4MaterialCutsCouple *  couple,
const G4DynamicParticle *  dp,
G4double  tmax,
G4double  length,
G4double  meanLoss 
)
virtual

Implements G4VEmFluctuationModel.

Definition at line 112 of file G4IonFluctuations.cc.

References b2, beta2, charge, Dispersion(), G4UniformRand, G4InuclParticleNames::gam, G4DynamicParticle::GetKineticEnergy(), G4MaterialCutsCouple::GetMaterial(), kineticEnergy, minFraction, minLoss, parameter, particleMass, G4UniversalFluctuation::SampleFluctuations(), G4INCL::DeJongSpin::shoot(), uniFluct, and xmin.

+ Here is the call graph for this function:

void G4IonFluctuations::SetParticleAndCharge ( const G4ParticleDefinition *  part,
G4double  q2 
)
virtual

Reimplemented from G4VEmFluctuationModel.

Definition at line 442 of file G4IonFluctuations.cc.

References charge, chargeSquare, effChargeSquare, eplus, G4ParticleDefinition::GetPDGCharge(), G4ParticleDefinition::GetPDGMass(), particle, particleMass, G4UniversalFluctuation::SetParticleAndCharge(), and uniFluct.

+ Here is the call graph for this function:

Member Data Documentation

G4double G4IonFluctuations::beta2
private
G4double G4IonFluctuations::charge
private
G4double G4IonFluctuations::chargeSquare
private

Definition at line 105 of file G4IonFluctuations.hh.

Referenced by Dispersion(), Factor(), InitialiseMe(), and SetParticleAndCharge().

G4double G4IonFluctuations::effChargeSquare
private

Definition at line 106 of file G4IonFluctuations.hh.

Referenced by Factor(), InitialiseMe(), and SetParticleAndCharge().

G4Pow* G4IonFluctuations::g4pow
private

Definition at line 101 of file G4IonFluctuations.hh.

Referenced by Factor(), and G4IonFluctuations().

G4double G4IonFluctuations::kineticEnergy
private

Definition at line 116 of file G4IonFluctuations.hh.

Referenced by Dispersion(), Factor(), G4IonFluctuations(), and SampleFluctuations().

G4double G4IonFluctuations::minFraction
private

Definition at line 112 of file G4IonFluctuations.hh.

Referenced by SampleFluctuations().

G4double G4IonFluctuations::minLoss
private

Definition at line 114 of file G4IonFluctuations.hh.

Referenced by SampleFluctuations().

G4double G4IonFluctuations::minNumberInteractionsBohr
private

Definition at line 110 of file G4IonFluctuations.hh.

G4double G4IonFluctuations::parameter
private

Definition at line 109 of file G4IonFluctuations.hh.

Referenced by SampleFluctuations().

const G4ParticleDefinition* G4IonFluctuations::particle
private

Definition at line 99 of file G4IonFluctuations.hh.

Referenced by InitialiseMe(), and SetParticleAndCharge().

G4double G4IonFluctuations::particleMass
private
G4double G4IonFluctuations::theBohrBeta2
private

Definition at line 111 of file G4IonFluctuations.hh.

Referenced by Factor().

G4UniversalFluctuation G4IonFluctuations::uniFluct
private

Definition at line 98 of file G4IonFluctuations.hh.

Referenced by InitialiseMe(), SampleFluctuations(), and SetParticleAndCharge().

G4double G4IonFluctuations::xmin
private

Definition at line 113 of file G4IonFluctuations.hh.

Referenced by SampleFluctuations().


The documentation for this class was generated from the following files: