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

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 }

◆ ~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: