Geant4  10.00.p03
G4StatMFParameters.cc
Go to the documentation of this file.
1 //
2 // ********************************************************************
3 // * License and Disclaimer *
4 // * *
5 // * The Geant4 software is copyright of the Copyright Holders of *
6 // * the Geant4 Collaboration. It is provided under the terms and *
7 // * conditions of the Geant4 Software License, included in the file *
8 // * LICENSE and available at http://cern.ch/geant4/license . These *
9 // * include a list of copyright holders. *
10 // * *
11 // * Neither the authors of this software system, nor their employing *
12 // * institutes,nor the agencies providing financial support for this *
13 // * work make any representation or warranty, express or implied, *
14 // * regarding this software system or assume any liability for its *
15 // * use. Please see the license in the file LICENSE and URL above *
16 // * for the full disclaimer and the limitation of liability. *
17 // * *
18 // * This code implementation is the result of the scientific and *
19 // * technical work of the GEANT4 collaboration. *
20 // * By using, copying, modifying or distributing the software (or *
21 // * any work based on the software) you agree to acknowledge its *
22 // * use in resulting scientific publications, and indicate your *
23 // * acceptance of all terms of the Geant4 Software license. *
24 // ********************************************************************
25 //
26 //
27 // $Id: G4StatMFParameters.cc 68724 2013-04-05 09:26:32Z gcosmo $
28 //
29 // Hadronic Process: Nuclear De-excitations
30 // by V. Lara
31 
32 
33 #include "G4StatMFParameters.hh"
34 #include "G4SystemOfUnits.hh"
35 
36 const G4double G4StatMFParameters::fKappa = 1.0; // dimensionless
37 
38 const G4double G4StatMFParameters::fKappaCoulomb = 2.0; // dimensionless
39 
41 
42 // Bethe-Weizsacker coefficients
44 
46 
48 
49 // Critical temperature (for liquid-gas phase transitions)
51 
52 // Nuclear radius
54 
56 {}
57 
59 {}
60 
62 {
63  return fKappa;
64 }
65 
67 {
68  return fKappaCoulomb;
69 }
70 
72 {
73  return fEpsilon0;
74 }
75 
77 {
78  return fE0;
79 }
80 
82 {
83  return fBeta0;
84 }
85 
87 {
88  return fGamma0;
89 }
90 
92 {
93  return fCriticalTemp;
94 }
95 
97 {
98  return fr0;
99 }
100 
102 {
103  G4double res = 0.0;
104  if (T < fCriticalTemp) {
105  G4double CriticalTempSqr = fCriticalTemp*fCriticalTemp;
106  G4double TempSqr = T*T;
107  G4double tmp = (CriticalTempSqr-TempSqr)/(CriticalTempSqr+TempSqr);
108 
109  res = fBeta0*tmp*std::pow(tmp,0.25);
110  }
111  return res;
112 }
113 
115 {
116  G4double res = 0.0;
117  if (T < fCriticalTemp) {
118  G4double CriticalTempSqr = fCriticalTemp*fCriticalTemp;
119  G4double TempSqr = T*T;
120  G4double tmp = (CriticalTempSqr-TempSqr)/(CriticalTempSqr+TempSqr);
121 
122  res = -5.0*fBeta0*std::pow(tmp,0.25)*(CriticalTempSqr*T)/
123  ((CriticalTempSqr+TempSqr)*(CriticalTempSqr+TempSqr));
124  }
125  return res;
126 }
127 
128 G4double
130 {
131  // Maximun average multiplicity: M_0 = 2.6 for A ~ 200
132  // and M_0 = 3.3 for A <= 110
133  G4double MaxAverageMultiplicity = 2.6;
134  if (A <= 110) { MaxAverageMultiplicity = 3.3; }
135  return MaxAverageMultiplicity;
136 }
137 
static G4double GetGamma0()
static const G4double fr0
static const double MeV
Definition: G4SIunits.hh:193
static const G4double fGamma0
static const G4double fCriticalTemp
static G4double GetKappaCoulomb()
static const G4double fEpsilon0
int G4int
Definition: G4Types.hh:78
static const G4double fE0
static G4double GetMaxAverageMultiplicity(G4int A)
static G4double Getr0()
static G4double GetE0()
static const G4double A[nN]
static G4double DBetaDT(G4double T)
static const G4double fKappa
static G4double GetEpsilon0()
static G4double GetBeta0()
double G4double
Definition: G4Types.hh:76
static const G4double fKappaCoulomb
static G4double Beta(G4double T)
static G4double GetKappa()
static G4double GetCriticalTemp()
static const double fermi
Definition: G4SIunits.hh:93
static const G4double fBeta0