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

#include <G4EMDissociationSpectrum.hh>

Public Member Functions

 G4EMDissociationSpectrum ()
 
 ~G4EMDissociationSpectrum ()
 
G4double GetGeneralE1Spectrum (G4double, G4double, G4double)
 
G4double GetGeneralE2Spectrum (G4double, G4double, G4double)
 
G4double GetClosestApproach (const G4double, const G4double, G4double, G4double, G4double)
 

Detailed Description

Definition at line 67 of file G4EMDissociationSpectrum.hh.

Constructor & Destructor Documentation

◆ G4EMDissociationSpectrum()

G4EMDissociationSpectrum::G4EMDissociationSpectrum ( )

Definition at line 69 of file G4EMDissociationSpectrum.cc.

70{
71 bessel = new G4Bessel();
72}

◆ ~G4EMDissociationSpectrum()

G4EMDissociationSpectrum::~G4EMDissociationSpectrum ( )

Definition at line 75 of file G4EMDissociationSpectrum.cc.

76{
77 delete bessel;
78}

Member Function Documentation

◆ GetClosestApproach()

G4double G4EMDissociationSpectrum::GetClosestApproach ( const G4double AP,
const G4double ZP,
G4double AT,
G4double ZT,
G4double b )

Definition at line 111 of file G4EMDissociationSpectrum.cc.

113{
114 G4double bsq = b * b;
115 G4double gg = 1.0/std::sqrt(1-bsq);
116 G4double AProot3 = G4Pow::GetInstance()->powA(AP,1.0/3.0);
117 G4double ATroot3 = G4Pow::GetInstance()->powA(AT,1.0/3.0);
118 G4double bc = 1.34 * fermi * (AProot3+ATroot3 - 0.75 *(1.0/AProot3+1.0/ATroot3));
119// G4double a0 = ZP * ZT * classic_electr_radius/bsq;
120 G4double a0 = ZP * ZT * elm_coupling / (AT*AP*amu_c2/(AT+AP)) / bsq;
121 G4double bmin = 1.25 * bc + halfpi*a0/gg;
122 return bmin;
123}
const G4double a0
double G4double
Definition G4Types.hh:83
static G4Pow * GetInstance()
Definition G4Pow.cc:41
G4double powA(G4double A, G4double y) const
Definition G4Pow.hh:230

Referenced by G4EMDissociation::ApplyYourself(), and G4EMDissociationCrossSection::GetElementCrossSection().

◆ GetGeneralE1Spectrum()

G4double G4EMDissociationSpectrum::GetGeneralE1Spectrum ( G4double Eg,
G4double b,
G4double bmin )

Definition at line 81 of file G4EMDissociationSpectrum.cc.

83{
84 G4double b2 = b*b;
85 G4double gg = 1.0/std::sqrt(1.0-b2);
86 G4double xi = Eg * bmin / gg / b / hbarc;
87 G4double K0 = bessel->K0(xi);
88 G4double K1 = bessel->K1(xi);
89 G4double n = 2.0 * fine_structure_const / pi / b2 / Eg *
90 (xi*K0*K1 - xi*xi*b2/2.0*(K1*K1-K0*K0));
91 return n;
92}
G4double K0(G4double)
Definition G4Bessel.cc:116
G4double K1(G4double)
Definition G4Bessel.cc:188

Referenced by G4EMDissociationCrossSection::GetCrossSectionForProjectile().

◆ GetGeneralE2Spectrum()

G4double G4EMDissociationSpectrum::GetGeneralE2Spectrum ( G4double Eg,
G4double b,
G4double bmin )

Definition at line 95 of file G4EMDissociationSpectrum.cc.

97{
98 G4double b2 = b * b;
99 G4double b4 = b2 * b2;
100 G4double gg = 1.0/std::sqrt(1.0-b2);
101 G4double xi = Eg * bmin / gg / b / hbarc;
102 G4double K0 = bessel->K0(xi);
103 G4double K1 = bessel->K1(xi);
104 G4double n = 2.0 * fine_structure_const / pi / b4 / Eg *
105 (2.0*(1.0-b2)*K1*K1 + xi*G4Pow::GetInstance()->powA((2.0-b2),2.0)*K0*K1 -
106 xi*xi*b4/2.0*(K1*K1-K0*K0));
107 return n;
108}

Referenced by G4EMDissociationCrossSection::GetCrossSectionForProjectile().


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