/home/docs/checkouts/readthedocs.org/user_builds/ratpac/checkouts/latest/src/gen/include/RAT/FermiFunction.hh Source File

Ratpac-two: /home/docs/checkouts/readthedocs.org/user_builds/ratpac/checkouts/latest/src/gen/include/RAT/FermiFunction.hh Source File
Ratpac-two
FermiFunction.hh
1 // RAT::FermiFunction
2 // 11-Jan-2006 WGS
3 
4 // I've copied these constants and functions from the original code
5 // from Joe Formaggio and Jason Detwiler, even though they duplicate
6 // some definitions that can be found in Geant4. As a precaution,
7 // I've put them in the RAT namespace. If one were being complete,
8 // one would revise contstants like "ElectronMass" to be the Geant4
9 // definitions.
10 
11 #ifndef __RAT_FermiFunction__
12 #define __RAT_FermiFunction__
13 
14 #include <complex>
15 
16 namespace RAT {
17 
18 static const double ElectronMass = 0.510998918;
19 static const double AlphaMass = 3727.42;
20 static const double UnitMass = 931.502; // MeV
21 
22 double GetRandomNumber(double rmin = 0., double rmax = 1.);
23 
24 double Nucl_Beta(int Beta, double Z, double A, double W, double W0, int N, double vMass);
25 
26 double Nucl_Wave(int Beta, double Z, double A, double W, int k);
27 
28 double Nucl_Size(int Beta, double Z, double W, int k);
29 
30 double Nucl_Radius(double A);
31 
32 double Nucl_Mass(double A, double Z);
33 
34 double Nucl_Wave_Phase(int Beta, double Z, double A, double W, int k, int sel);
35 
36 double Screening_Potential(double Z, double p, int Beta);
37 
38 std::complex<double> Hyper1F1Norm(std::complex<double> A, std::complex<double> B, std::complex<double> Z);
39 
40 double Factorial(int N);
41 
42 double HyperGeometric_PQF(double A[], int nA, double B[], int nB, double Z);
43 
44 double GammaLn(double xx);
45 
46 std::complex<double> GammaLn_Complex(std::complex<double> xx);
47 
48 } // namespace RAT
49 
50 #endif
Definition: CCCrossSecMessenger.hh:29