#include <G4WentzelVIRelXSection.hh>
Definition at line 71 of file G4WentzelVIRelXSection.hh.
◆ G4WentzelVIRelXSection() [1/2]
G4WentzelVIRelXSection::G4WentzelVIRelXSection |
( |
G4bool |
combined = true | ) |
|
Definition at line 67 of file G4WentzelVIRelXSection.cc.
93 for(
G4int j=1; j<100; ++j) {
static G4Pow * GetInstance()
static G4double ScreenRSquare[100]
const G4ParticleDefinition * theElectron
static G4NistManager * Instance()
const G4ParticleDefinition * theProton
static const double twopi
const G4ParticleDefinition * particle
static G4Proton * Proton()
static G4double FormFactor[100]
G4double Z13(G4int Z) const
static G4Positron * Positron()
int classic_electr_radius
const G4Material * currentMaterial
static G4Electron * Electron()
const G4ParticleDefinition * thePositron
G4NistManager * fNistManager
◆ ~G4WentzelVIRelXSection()
G4WentzelVIRelXSection::~G4WentzelVIRelXSection |
( |
| ) |
|
|
virtual |
◆ G4WentzelVIRelXSection() [2/2]
◆ ComputeElectronCrossSection()
◆ ComputeMaxElectronScattering()
void G4WentzelVIRelXSection::ComputeMaxElectronScattering |
( |
G4double |
cut | ) |
|
|
private |
Definition at line 329 of file G4WentzelVIRelXSection.cc.
335 (1.0 + 2.0*ratio*(tau + 1.0) + ratio*ratio);
const G4ParticleDefinition * theElectron
const G4ParticleDefinition * particle
◆ ComputeNuclearCrossSection()
◆ ComputeTransportCrossSectionPerAtom()
G4double G4WentzelVIRelXSection::ComputeTransportCrossSectionPerAtom |
( |
G4double |
CosThetaMax | ) |
|
Definition at line 184 of file G4WentzelVIRelXSection.cc.
187 if(cosTMax >= 1.0) {
return xsec; }
204 y = x2*(1.0 - 1.3333333*x + 3*
x2);
205 if(0.0 < factB) { y -= fb*x2*x*(0.6666667 -
x); }
208 xlog =
G4Log(1.0 + x);
210 if(0.0 < factB) { y -= fb*(x + x1 - 2*xlog); }
216 G4cout <<
"G4WentzelVIRelXSection::ComputeTransportCrossSectionPerAtom scattering on e- <0" 219 <<
" e(MeV)= " <<
tkin <<
" p(MeV/c)= " << sqrt(
mom2)
222 G4cout <<
" 1-costm= " << 1.0-costm <<
" screenZ= " <<
screenZ 242 y = x2*(1.0 - 1.3333333*x + 3*
x2);
243 if(0.0 < factB) { y -= fb*x2*x*(0.6666667 -
x); }
246 xlog =
G4Log(1.0 + x);
248 if(0.0 < factB) { y -= fb*(x + x1 - 2*xlog); }
254 G4cout <<
"G4WentzelVIRelXSection::ComputeTransportCrossSectionPerAtom scattering on e- <0" 260 <<
" x= " <<
" x1= " << x1 <<
G4endl;
const G4String & GetParticleName() const
G4GLOB_DLL std::ostream G4cout
const G4ParticleDefinition * particle
G4double G4Log(G4double x)
◆ GetCosThetaElec()
G4double G4WentzelVIRelXSection::GetCosThetaElec |
( |
| ) |
const |
|
inline |
◆ GetCosThetaNuc()
G4double G4WentzelVIRelXSection::GetCosThetaNuc |
( |
| ) |
const |
|
inline |
◆ GetMomentumSquare()
G4double G4WentzelVIRelXSection::GetMomentumSquare |
( |
| ) |
const |
|
inline |
◆ Initialise()
Definition at line 121 of file G4WentzelVIRelXSection.cc.
static const double hbarc
G4double FactorForAngleLimit() const
void SetupParticle(const G4ParticleDefinition *)
static const double fermi
static G4EmParameters * Instance()
const G4Material * currentMaterial
◆ operator=()
◆ SampleSingleScattering()
Definition at line 281 of file G4WentzelVIRelXSection.cc.
292 if(elecRatio > 0.0) {
293 if(rndmEngine->
flat() <= elecRatio) {
299 if(cost1 < cost2) {
return temp; }
307 /( (1.0 + z1*
factD)*fm*fm );
309 if(rndmEngine->
flat() > grej ) {
return temp; }
313 if(cost > 1.0) { cost = 1.0; }
314 else if(cost < -1.0) { cost =-1.0; }
315 G4double sint = sqrt((1.0 - cost)*(1.0 + cost));
void set(double x, double y, double z)
static const double twopi
◆ SetupKinematic()
Definition at line 179 of file G4WentzelVIRelXSection.hh.
G4IonisParamMat * GetIonisation() const
const G4Material * currentMaterial
G4double GetInvA23() const
◆ SetupParticle()
Definition at line 140 of file G4WentzelVIRelXSection.cc.
const G4ParticleDefinition * particle
G4double GetPDGSpin() const
G4double GetPDGMass() const
const G4Material * currentMaterial
static const double eplus
G4double GetPDGCharge() const
◆ SetupTarget()
Definition at line 157 of file G4WentzelVIRelXSection.cc.
178 return cosTetMaxNuc2;
static G4double ScreenRSquare[100]
const G4ParticleDefinition * theProton
const G4ParticleDefinition * particle
static G4double FormFactor[100]
void ComputeMaxElectronScattering(G4double cut)
◆ alpha2
◆ charge3
G4double G4WentzelVIRelXSection::charge3 |
|
private |
◆ chargeSquare
G4double G4WentzelVIRelXSection::chargeSquare |
|
private |
◆ coeff
◆ cosTetMaxElec
G4double G4WentzelVIRelXSection::cosTetMaxElec |
|
private |
◆ cosTetMaxNuc
G4double G4WentzelVIRelXSection::cosTetMaxNuc |
|
private |
◆ cosThetaMax
G4double G4WentzelVIRelXSection::cosThetaMax |
|
private |
◆ currentMaterial
const G4Material* G4WentzelVIRelXSection::currentMaterial |
|
private |
◆ ecut
◆ etag
◆ factB
◆ factB1
◆ factD
◆ factorA2
G4double G4WentzelVIRelXSection::factorA2 |
|
private |
◆ fG4pow
G4Pow* G4WentzelVIRelXSection::fG4pow |
|
private |
◆ fNistManager
◆ formfactA
G4double G4WentzelVIRelXSection::formfactA |
|
private |
◆ FormFactor
G4double G4WentzelVIRelXSection::FormFactor = {0.0} |
|
staticprivate |
◆ gam0pcmp
G4double G4WentzelVIRelXSection::gam0pcmp |
|
private |
◆ invbeta2
G4double G4WentzelVIRelXSection::invbeta2 |
|
private |
◆ isCombined
G4bool G4WentzelVIRelXSection::isCombined |
|
private |
◆ kinFactor
G4double G4WentzelVIRelXSection::kinFactor |
|
private |
◆ lowEnergyLimit
G4double G4WentzelVIRelXSection::lowEnergyLimit |
|
private |
◆ mass
◆ mom2
◆ momCM2
◆ numlimit
G4double G4WentzelVIRelXSection::numlimit |
|
private |
◆ nwarnings
G4int G4WentzelVIRelXSection::nwarnings |
|
private |
◆ nwarnlimit
G4int G4WentzelVIRelXSection::nwarnlimit |
|
private |
◆ particle
◆ pcmp2
◆ ScreenRSquare
G4double G4WentzelVIRelXSection::ScreenRSquare = {0.0} |
|
staticprivate |
◆ screenZ
G4double G4WentzelVIRelXSection::screenZ |
|
private |
◆ spin
◆ targetMass
G4double G4WentzelVIRelXSection::targetMass |
|
private |
◆ targetZ
G4int G4WentzelVIRelXSection::targetZ |
|
private |
◆ temp
◆ theElectron
◆ thePositron
◆ theProton
◆ tkin
The documentation for this class was generated from the following files: