Geant4 11.1.1
Toolkit for the simulation of the passage of particles through matter
Loading...
Searching...
No Matches
G4hIonEffChargeSquare Class Reference

#include <G4hIonEffChargeSquare.hh>

+ Inheritance diagram for G4hIonEffChargeSquare:

Public Member Functions

 G4hIonEffChargeSquare (const G4String &name)
 
 ~G4hIonEffChargeSquare ()
 
G4double TheValue (const G4DynamicParticle *particle, const G4Material *material) override
 
G4double TheValue (const G4ParticleDefinition *aParticle, const G4Material *material, G4double kineticEnergy) override
 
G4double HighEnergyLimit (const G4ParticleDefinition *aParticle, const G4Material *material) const override
 
G4double LowEnergyLimit (const G4ParticleDefinition *aParticle, const G4Material *material) const override
 
G4double HighEnergyLimit (const G4ParticleDefinition *aParticle) const override
 
G4double LowEnergyLimit (const G4ParticleDefinition *aParticle) const override
 
G4bool IsInCharge (const G4DynamicParticle *particle, const G4Material *material) const override
 
G4bool IsInCharge (const G4ParticleDefinition *aParticle, const G4Material *material) const override
 
- Public Member Functions inherited from G4VLowEnergyModel
 G4VLowEnergyModel (const G4String &name)
 
virtual ~G4VLowEnergyModel ()
 
virtual G4double TheValue (const G4DynamicParticle *particle, const G4Material *material)=0
 
virtual G4double TheValue (const G4ParticleDefinition *aParticle, const G4Material *material, G4double kineticEnergy)=0
 
virtual G4double HighEnergyLimit (const G4ParticleDefinition *aParticle, const G4Material *material) const =0
 
virtual G4double LowEnergyLimit (const G4ParticleDefinition *aParticle, const G4Material *material) const =0
 
virtual G4double HighEnergyLimit (const G4ParticleDefinition *aParticle) const =0
 
virtual G4double LowEnergyLimit (const G4ParticleDefinition *aParticle) const =0
 
virtual G4bool IsInCharge (const G4DynamicParticle *particle, const G4Material *material) const =0
 
virtual G4bool IsInCharge (const G4ParticleDefinition *aParticle, const G4Material *material) const =0
 
G4VLowEnergyModeloperator= (const G4VLowEnergyModel &right)=delete
 
 G4VLowEnergyModel (const G4VLowEnergyModel &)=delete
 

Detailed Description

Definition at line 61 of file G4hIonEffChargeSquare.hh.

Constructor & Destructor Documentation

◆ G4hIonEffChargeSquare()

G4hIonEffChargeSquare::G4hIonEffChargeSquare ( const G4String name)
explicit

Definition at line 67 of file G4hIonEffChargeSquare.cc.

68 : G4VLowEnergyModel(name),
69 theHeMassAMU(4.0026)
70{;}

◆ ~G4hIonEffChargeSquare()

G4hIonEffChargeSquare::~G4hIonEffChargeSquare ( )

Definition at line 74 of file G4hIonEffChargeSquare.cc.

75{;}

Member Function Documentation

◆ HighEnergyLimit() [1/2]

G4double G4hIonEffChargeSquare::HighEnergyLimit ( const G4ParticleDefinition aParticle) const
overridevirtual

Implements G4VLowEnergyModel.

Definition at line 126 of file G4hIonEffChargeSquare.cc.

128{
129 return 1.0*TeV ;
130}

◆ HighEnergyLimit() [2/2]

G4double G4hIonEffChargeSquare::HighEnergyLimit ( const G4ParticleDefinition aParticle,
const G4Material material 
) const
overridevirtual

Implements G4VLowEnergyModel.

Definition at line 108 of file G4hIonEffChargeSquare.cc.

111{
112 return 1.0*TeV ;
113}

◆ IsInCharge() [1/2]

G4bool G4hIonEffChargeSquare::IsInCharge ( const G4DynamicParticle particle,
const G4Material material 
) const
overridevirtual

Implements G4VLowEnergyModel.

Definition at line 142 of file G4hIonEffChargeSquare.cc.

144{
145 return true ;
146}

◆ IsInCharge() [2/2]

G4bool G4hIonEffChargeSquare::IsInCharge ( const G4ParticleDefinition aParticle,
const G4Material material 
) const
overridevirtual

Implements G4VLowEnergyModel.

Definition at line 150 of file G4hIonEffChargeSquare.cc.

152{
153 return true ;
154}

◆ LowEnergyLimit() [1/2]

G4double G4hIonEffChargeSquare::LowEnergyLimit ( const G4ParticleDefinition aParticle) const
overridevirtual

Implements G4VLowEnergyModel.

Definition at line 134 of file G4hIonEffChargeSquare.cc.

136{
137 return 0.0 ;
138}

◆ LowEnergyLimit() [2/2]

G4double G4hIonEffChargeSquare::LowEnergyLimit ( const G4ParticleDefinition aParticle,
const G4Material material 
) const
overridevirtual

Implements G4VLowEnergyModel.

Definition at line 117 of file G4hIonEffChargeSquare.cc.

120{
121 return 0.0 ;
122}

◆ TheValue() [1/2]

G4double G4hIonEffChargeSquare::TheValue ( const G4DynamicParticle particle,
const G4Material material 
)
overridevirtual

Implements G4VLowEnergyModel.

Definition at line 79 of file G4hIonEffChargeSquare.cc.

81{
82 G4double energy = particle->GetKineticEnergy() ;
83 G4double particleMass = particle->GetMass() ;
84 G4double charge = (particle->GetDefinition()->GetPDGCharge())/eplus ;
85
86 G4double q = IonEffChargeSquare(material,energy,particleMass,charge) ;
87
88 return q ;
89}
double G4double
Definition: G4Types.hh:83
G4double GetMass() const
G4ParticleDefinition * GetDefinition() const
G4double GetKineticEnergy() const
G4double GetPDGCharge() const
G4double energy(const ThreeVector &p, const G4double m)

◆ TheValue() [2/2]

G4double G4hIonEffChargeSquare::TheValue ( const G4ParticleDefinition aParticle,
const G4Material material,
G4double  kineticEnergy 
)
overridevirtual

Implements G4VLowEnergyModel.

Definition at line 93 of file G4hIonEffChargeSquare.cc.

96{
97 // SetRateMass(aParticle) ;
98 G4double particleMass = aParticle->GetPDGMass() ;
99 G4double charge = (aParticle->GetPDGCharge())/eplus ;
100
101 G4double q = IonEffChargeSquare(material,kineticEnergy,particleMass,charge) ;
102
103 return q ;
104}

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