Geant4  10.02.p03
G4EMDissociationSpectrum Class Reference

#include <G4EMDissociationSpectrum.hh>

Collaboration diagram for G4EMDissociationSpectrum:

Public Member Functions

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

Private Attributes

G4Bessel * bessel
 

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 }
Here is the call graph for this function:

Member Function Documentation

◆ GetClosestApproach()

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

Definition at line 112 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 G4Pow * GetInstance()
Definition: G4Pow.cc:55
static const double halfpi
Definition: G4SIunits.hh:76
int elm_coupling
Definition: hepunit.py:286
G4double powA(G4double A, G4double y) const
Definition: G4Pow.hh:259
double G4double
Definition: G4Types.hh:76
float amu_c2
Definition: hepunit.py:277
static const double fermi
Definition: G4SIunits.hh:102
Here is the call graph for this function:
Here is the caller graph for this function:

◆ GetGeneralE1Spectrum()

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

Definition at line 82 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 K1(G4double)
Definition: G4Bessel.cc:188
int fine_structure_const
Definition: hepunit.py:287
Char_t n[5]
float hbarc
Definition: hepunit.py:265
G4double K0(G4double)
Definition: G4Bessel.cc:116
static const G4double b2
static const double pi
Definition: G4SIunits.hh:74
double G4double
Definition: G4Types.hh:76
Here is the call graph for this function:
Here is the caller graph for this function:

◆ GetGeneralE2Spectrum()

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

Definition at line 96 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 }
static G4Pow * GetInstance()
Definition: G4Pow.cc:55
G4double K1(G4double)
Definition: G4Bessel.cc:188
int fine_structure_const
Definition: hepunit.py:287
Char_t n[5]
float hbarc
Definition: hepunit.py:265
G4double K0(G4double)
Definition: G4Bessel.cc:116
static const G4double b2
static const double pi
Definition: G4SIunits.hh:74
G4double powA(G4double A, G4double y) const
Definition: G4Pow.hh:259
double G4double
Definition: G4Types.hh:76
static const G4double b4
Here is the call graph for this function:
Here is the caller graph for this function:

Member Data Documentation

◆ bessel

G4Bessel* G4EMDissociationSpectrum::bessel
private

Definition at line 78 of file G4EMDissociationSpectrum.hh.


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