G4StatMFMacroTetraNucleon Class Reference

#include <G4StatMFMacroTetraNucleon.hh>

Inheritance diagram for G4StatMFMacroTetraNucleon:

G4VStatMFMacroCluster

Public Member Functions

 G4StatMFMacroTetraNucleon ()
 ~G4StatMFMacroTetraNucleon ()
G4double CalcMeanMultiplicity (const G4double FreeVol, const G4double mu, const G4double nu, const G4double T)
G4double CalcZARatio (const G4double)
G4double CalcEnergy (const G4double T)
G4double CalcEntropy (const G4double T, const G4double FreeVol)

Detailed Description

Definition at line 38 of file G4StatMFMacroTetraNucleon.hh.


Constructor & Destructor Documentation

G4StatMFMacroTetraNucleon::G4StatMFMacroTetraNucleon (  )  [inline]

Definition at line 43 of file G4StatMFMacroTetraNucleon.hh.

00043 : G4VStatMFMacroCluster(4) {};

G4StatMFMacroTetraNucleon::~G4StatMFMacroTetraNucleon (  )  [inline]

Definition at line 46 of file G4StatMFMacroTetraNucleon.hh.

00046 {};


Member Function Documentation

G4double G4StatMFMacroTetraNucleon::CalcEnergy ( const G4double  T  )  [virtual]

Implements G4VStatMFMacroCluster.

Definition at line 95 of file G4StatMFMacroTetraNucleon.cc.

References G4VStatMFMacroCluster::_Energy, G4VStatMFMacroCluster::_InvLevelDensity, G4NucleiProperties::GetBindingEnergy(), G4StatMFParameters::GetKappaCoulomb(), G4StatMFParameters::Getr0(), G4VStatMFMacroCluster::theA, and G4VStatMFMacroCluster::theZARatio.

00096 {
00097     const G4double Coulomb = (3./5.)*(elm_coupling/G4StatMFParameters::Getr0())*
00098         (1.0 - 1.0/std::pow(1.0+G4StatMFParameters::GetKappaCoulomb(),1./3.));
00099                                                                         
00100     return _Energy  = -G4NucleiProperties::GetBindingEnergy(theA,2) + 
00101         Coulomb * theZARatio * theZARatio * std::pow(static_cast<G4double>(theA),5./3.) +
00102         (3./2.) * T +
00103         theA * T*T/_InvLevelDensity;
00104                                                         
00105 }

G4double G4StatMFMacroTetraNucleon::CalcEntropy ( const G4double  T,
const G4double  FreeVol 
) [virtual]

Implements G4VStatMFMacroCluster.

Definition at line 109 of file G4StatMFMacroTetraNucleon.cc.

References G4VStatMFMacroCluster::_InvLevelDensity, and G4VStatMFMacroCluster::_MeanMultiplicity.

00110 {
00111     const G4double ThermalWaveLenght = 16.15*fermi/std::sqrt(T);
00112     const G4double lambda3 = ThermalWaveLenght*ThermalWaveLenght*ThermalWaveLenght;
00113 
00114     G4double Entropy = 0.0;
00115     if (_MeanMultiplicity > 0.0)
00116         Entropy = _MeanMultiplicity*(5./2.+
00117                                      std::log(8.0*FreeVol/(lambda3*_MeanMultiplicity)))+ // 8 = theA*std::sqrt(theA)
00118             8.0*T/_InvLevelDensity;                     
00119                                                                 
00120     return Entropy;
00121 }

G4double G4StatMFMacroTetraNucleon::CalcMeanMultiplicity ( const G4double  FreeVol,
const G4double  mu,
const G4double  nu,
const G4double  T 
) [virtual]

Implements G4VStatMFMacroCluster.

Definition at line 69 of file G4StatMFMacroTetraNucleon.cc.

References G4VStatMFMacroCluster::_InvLevelDensity, G4VStatMFMacroCluster::_MeanMultiplicity, G4NucleiProperties::GetBindingEnergy(), G4StatMFParameters::GetKappaCoulomb(), G4StatMFParameters::Getr0(), G4VStatMFMacroCluster::theA, and G4VStatMFMacroCluster::theZARatio.

00071 {
00072     const G4double ThermalWaveLenght = 16.15*fermi/std::sqrt(T);
00073         
00074     const G4double lambda3 = ThermalWaveLenght*ThermalWaveLenght*ThermalWaveLenght;
00075         
00076     const G4double degeneracy = 1;  // He4
00077         
00078     const G4double Coulomb = (3./5.)*(elm_coupling/G4StatMFParameters::Getr0())*
00079         (1.0 - 1.0/std::pow(1.0+G4StatMFParameters::GetKappaCoulomb(),1./3.));
00080 
00081     const G4double BindingE = G4NucleiProperties::GetBindingEnergy(theA,2); //old value was 30.11*MeV
00082         
00083     G4double exponent = (BindingE + theA*(mu+nu*theZARatio+T*T/_InvLevelDensity) - 
00084                          Coulomb*theZARatio*theZARatio*std::pow(static_cast<G4double>(theA),5./3.))/T;
00085     if (exponent > 700.0) exponent = 700.0;
00086     
00087     _MeanMultiplicity = ( degeneracy*FreeVol* static_cast<G4double>(theA)* 
00088                           std::sqrt(static_cast<G4double>(theA))/lambda3)* 
00089         std::exp(exponent);
00090                          
00091     return _MeanMultiplicity;   
00092 }

G4double G4StatMFMacroTetraNucleon::CalcZARatio ( const   G4double  )  [inline, virtual]

Implements G4VStatMFMacroCluster.

Definition at line 64 of file G4StatMFMacroTetraNucleon.hh.

References G4VStatMFMacroCluster::theZARatio.

00064 {return theZARatio = 0.5;}                                                              


The documentation for this class was generated from the following files:
Generated on Mon May 27 17:53:26 2013 for Geant4 by  doxygen 1.4.7