39 throw G4HadronicException(__FILE__, __LINE__,
"G4StatMFMacroChemicalPotential::operator= meant to not be accessible");
45 throw G4HadronicException(__FILE__, __LINE__,
"G4StatMFMacroChemicalPotential::operator== meant to not be accessible");
52 throw G4HadronicException(__FILE__, __LINE__,
"G4StatMFMacroChemicalPotential::operator!= meant to not be accessible");
73 if (fChemPa*fChemPb > 0.0) {
77 ChemPb -= 1.5*std::abs(ChemPb-ChemPa);
80 }
while (fChemPb < 0.0);
83 ChemPb += 1.5*std::abs(ChemPb-ChemPa);
86 }
while (fChemPb > 0.0);
94 if (!theSolver->
Brent(*
this)){
95 G4cout <<
"G4StatMFMacroChemicalPotential:"<<
" ChemPa="<<ChemPa
96 <<
" ChemPb="<<ChemPb<<
G4endl;
97 G4cout <<
"G4StatMFMacroChemicalPotential:"<<
" fChemPa="<<fChemPa
98 <<
" fChemPb="<<fChemPb<<
G4endl;
99 throw G4HadronicException(__FILE__, __LINE__,
"G4StatMFMacroChemicalPotential::CalcChemicalPotentialNu: I couldn't find the root.");
110 std::vector<G4VStatMFMacroCluster*>::iterator i;
113 (*i)->CalcZARatio(nu);
125 MeanZ += (
n++) * (*i)->GetZARatio() * (*i)->GetMeanMultiplicity();
G4GLOB_DLL std::ostream G4cout
static G4Pow * GetInstance()
G4double Z23(G4int Z) const
G4bool Brent(Function &theFunction)
void SetIntervalLimits(const G4double Limit1, const G4double Limit2)
G4double GetRoot(void) const
void CalcChemicalPotentialMu(const G4double nu)
std::vector< G4VStatMFMacroCluster * > * _theClusters
G4double CalcMeanZ(const G4double nu)
G4bool operator!=(const G4StatMFMacroChemicalPotential &right) const
G4double CalcChemicalPotentialNu(void)
G4double operator()(const G4double nu)
G4bool operator==(const G4StatMFMacroChemicalPotential &right) const
G4StatMFMacroChemicalPotential & operator=(const G4StatMFMacroChemicalPotential &right)
G4double _MeanMultiplicity
G4double _ChemPotentialMu
G4double _MeanTemperature
G4double _ChemPotentialNu
G4double CalcChemicalPotentialMu(void)
G4double GetMeanMultiplicity(void) const
static G4double GetGamma0()
static G4double GetCoulomb()
static const G4double CP[5]