Geant4-11
Public Member Functions | Private Attributes
G4EMDissociationSpectrum Class Reference

#include <G4EMDissociationSpectrum.hh>

Public Member Functions

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

Private Attributes

G4Besselbessel
 

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}

References bessel.

◆ ~G4EMDissociationSpectrum()

G4EMDissociationSpectrum::~G4EMDissociationSpectrum ( )

Definition at line 75 of file G4EMDissociationSpectrum.cc.

76{
77 delete bessel;
78}

References bessel.

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
static constexpr double fermi
Definition: G4SIunits.hh:83
static constexpr double halfpi
Definition: G4SIunits.hh:57
double G4double
Definition: G4Types.hh:83
static G4Pow * GetInstance()
Definition: G4Pow.cc:41
G4double powA(G4double A, G4double y) const
Definition: G4Pow.hh:230
static const G4double AP[5]
Definition: paraMaker.cc:42
int elm_coupling
Definition: hepunit.py:285
float amu_c2
Definition: hepunit.py:276

References a0, source.hepunit::amu_c2, anonymous_namespace{paraMaker.cc}::AP, source.hepunit::elm_coupling, fermi, G4Pow::GetInstance(), halfpi, and G4Pow::powA().

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}
static constexpr double pi
Definition: G4SIunits.hh:55
G4double K0(G4double)
Definition: G4Bessel.cc:116
G4double K1(G4double)
Definition: G4Bessel.cc:188
float hbarc
Definition: hepunit.py:264
int fine_structure_const
Definition: hepunit.py:286

References bessel, source.hepunit::fine_structure_const, source.hepunit::hbarc, G4Bessel::K0(), G4Bessel::K1(), CLHEP::detail::n, and pi.

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}

References bessel, source.hepunit::fine_structure_const, G4Pow::GetInstance(), source.hepunit::hbarc, G4Bessel::K0(), G4Bessel::K1(), CLHEP::detail::n, pi, and G4Pow::powA().

Referenced by G4EMDissociationCrossSection::GetCrossSectionForProjectile().

Field Documentation

◆ bessel

G4Bessel* G4EMDissociationSpectrum::bessel
private

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