#include <G4StatMFMacroTemperature.hh>
Definition at line 42 of file G4StatMFMacroTemperature.hh.
Definition at line 47 of file G4StatMFMacroTemperature.cc.
53 _FreeInternalE0(FreeE0),
55 _MeanMultiplicity(0.0),
56 _MeanTemperature(0.0),
57 _ChemPotentialMu(0.0),
58 _ChemPotentialNu(0.0),
60 _theClusters(ClusterVector)
G4StatMFMacroTemperature::~G4StatMFMacroTemperature |
( |
| ) |
|
Definition at line 66 of file G4StatMFMacroTemperature.cc.
86 while (fTa < 0.0 && ++iterations < 10) {
93 while (fTa*fTb > 0.0 && iterations++ < 10) {
94 Tb += 2.*std::fabs(Tb-Ta);
99 G4cerr <<
"G4StatMFMacroTemperature:"<<
" Ta="<<Ta<<
" Tb="<<Tb<<
G4endl;
100 G4cerr <<
"G4StatMFMacroTemperature:"<<
" fTa="<<fTa<<
" fTb="<<fTb<<
G4endl;
101 throw G4HadronicException(__FILE__, __LINE__,
"G4StatMFMacroTemperature::CalcTemperature: I couldn't bracket the solution.");
108 G4cout <<
"G4StatMFMacroTemperature, Crenshaw method failed:"<<
" Ta="
109 <<Ta<<
" Tb="<<Tb<<
G4endl;
110 G4cout <<
"G4StatMFMacroTemperature, Crenshaw method failed:"<<
" fTa="
111 <<fTa<<
" fTb="<<fTb<<
G4endl;
113 _MeanTemperature = theSolver->
GetRoot();
119 if (std::fabs(FunctionValureAtRoot) > 5.e-2) {
120 if (_MeanTemperature < 1. || _MeanTemperature > 50.) {
121 G4cout <<
"Crenshaw method failed; function = " << FunctionValureAtRoot
122 <<
" solution? = " << _MeanTemperature <<
" MeV " <<
G4endl;
126 if (!theSolverBrent->
Brent(*
this)){
127 G4cout <<
"G4StatMFMacroTemperature, Brent method failed:"
128 <<
" Ta="<<Ta<<
" Tb="<<Tb<<
G4endl;
129 G4cout <<
"G4StatMFMacroTemperature, Brent method failed:"
130 <<
" fTa="<<fTa<<
" fTb="<<fTb<<
G4endl;
131 throw G4HadronicException(__FILE__, __LINE__,
"G4StatMFMacroTemperature::CalcTemperature: I couldn't find the root with any method.");
134 _MeanTemperature = theSolverBrent->
GetRoot();
135 FunctionValureAtRoot = this->
operator()(_MeanTemperature);
136 delete theSolverBrent;
138 if (std::abs(FunctionValureAtRoot) > 5.e-2) {
139 G4cout <<
"Brent method failed; function = " << FunctionValureAtRoot
140 <<
" solution? = " << _MeanTemperature <<
" MeV " <<
G4endl;
141 throw G4HadronicException(__FILE__, __LINE__,
"G4StatMFMacroTemperature::CalcTemperature: I couldn't find the root with any method.");
147 return _MeanTemperature;
void SetIntervalLimits(const G4double Limit1, const G4double Limit2)
G4bool Brent(Function &theFunction)
G4GLOB_DLL std::ostream G4cout
G4double GetRoot(void) const
T max(const T t1, const T t2)
brief Return the largest of the two arguments
G4double operator()(const G4double T)
static constexpr double MeV
G4bool Crenshaw(Function &theFunction)
G4GLOB_DLL std::ostream G4cerr
G4double G4StatMFMacroTemperature::GetChemicalPotentialMu |
( |
void |
| ) |
const |
|
inline |
G4double G4StatMFMacroTemperature::GetChemicalPotentialNu |
( |
void |
| ) |
const |
|
inline |
G4double G4StatMFMacroTemperature::GetEntropy |
( |
void |
| ) |
const |
|
inline |
G4double G4StatMFMacroTemperature::GetMeanMultiplicity |
( |
void |
| ) |
const |
|
inline |
G4double G4StatMFMacroTemperature::GetTemperature |
( |
void |
| ) |
const |
|
inline |
The documentation for this class was generated from the following files: