10 #include "KVCalorimetry.h"
26 SetTitle(
"A KVCalorimetry");
60 void KVCalorimetry::init_KVCalorimetry()
66 kfree_neutrons_included =
kFALSE;
79 void KVCalorimetry::SetFragmentMinimumCharge(
Double_t value)
89 void KVCalorimetry::SetParticleFactor(
Double_t value)
99 void KVCalorimetry::SetLevelDensityParameter(
Double_t value)
121 void KVCalorimetry::SetNeutronMeanEnergyFactor(
Double_t value)
159 SetFragmentMinimumCharge(FragmentMinimumCharge);
160 SetParticleFactor(ParticleFactor);
187 SetLevelDensityParameter(LevelDensityParameter);
188 ktempdeduced =
kTRUE;
225 SetNeutronMeanEnergyFactor(NeutronMeanEnergyFactor);
227 kfree_neutrons_included =
kTRUE;
251 void KVCalorimetry::fill(
const KVNucleus* n)
272 AddIngValue(
"Zfrag",
n->GetZ());
273 AddIngValue(
"Afrag",
n->GetA());
274 AddIngValue(
"Ekfrag",
n->GetFrame(
GetFrame(), kFALSE)->GetKE());
275 AddIngValue(
"Qfrag",
n->GetMassExcess());
276 AddIngValue(
"Mfrag", 1);
279 AddIngValue(
"Zpart",
n->GetZ());
280 AddIngValue(
"Apart",
n->GetA());
281 AddIngValue(
"Ekpart",
n->GetFrame(
GetFrame(), kFALSE)->GetKE());
282 AddIngValue(
"Qpart",
n->GetMassExcess());
283 AddIngValue(
"Mpart", 1);
326 void KVCalorimetry::SumUp()
370 if (kfree_neutrons_included) {
378 SetIngValue(
"Aneu", Mneutron);
379 SetIngValue(
"Qneu", Mneutron * nn.GetMassExcess(0, 1));
380 SetIngValue(
"Mneu", Mneutron);
450 if (!kIsModified)
return;
455 if (kfree_neutrons_included) {
463 if (RootSquare(coefA, coefB, coefC)) {
465 SetIngValue(
"Temp", kracine_max);
482 ComputeExcitationEnergy();
484 ComputeTemperature();
494 void KVCalorimetry::ComputeTemperature()
const
497 Double_t exci = GetIngValue(
"Exci");
635 while (!fragpart.
End()) {
640 while (!prefixes.
End()) {
642 SetNameIndex(
name, min_index++);
646 if (kfree_neutrons_included) {
651 while (!prefixes.
End()) {
653 SetNameIndex(
name, min_index++);
655 SetNameIndex(
"Aexcess", min_index++);
656 SetNameIndex(
"Temp", min_index++);
Option_t Option_t TPoint TPoint const char GetTextMagnitude GetFillStyle GetLineColor GetLineWidth GetMarkerStyle GetTextAlign GetTextColor GetTextSize void value
Calorimetry of hot nuclei.
Double_t GetIngValue(const KVString &name) const
Improved calorimetry of hot nuclei.
void Calculate() override
void IncludeFreeNeutrons(Double_t AsurZ, Double_t NeutronMeanEnergyFactor, Double_t LevelDensityParameter)
void SetAsurZ(Double_t value)
protected method, set the value of AsurZ parameter
void UseChargeDiff(Int_t FragmentMinimumCharge, Double_t ParticleFactor)
virtual ~KVCalorimetry(void)
Destructeur.
void DeduceTemperature(Double_t LevelDensityParameter)
KVCalorimetry(void)
Createur par default.
Description of properties and kinematics of atomic nuclei.
Extension of ROOT TString class which allows backwards compatibility with ROOT v3....
void Begin(TString delim) const
KVString Next(Bool_t strip_whitespace=kFALSE) const
virtual Int_t GetNumberOfValues() const
const TString & GetFrame() const
void SetParameter(const Char_t *par, Double_t value)
Double_t GetParameter(const Char_t *par) const
Double_t Power(Double_t x, Double_t y)
Double_t Sqrt(Double_t x)