10 #include "KVCalorimetry.h"
11 #include "KVNDTManager.h"
27 SetTitle(
"A KVCalorimetry");
61 void KVCalorimetry::init_KVCalorimetry()
67 kfree_neutrons_included =
kFALSE;
80 void KVCalorimetry::SetFragmentMinimumCharge(
Double_t value)
90 void KVCalorimetry::SetParticleFactor(
Double_t value)
100 void KVCalorimetry::SetLevelDensityParameter(
Double_t value)
122 void KVCalorimetry::SetNeutronMeanEnergyFactor(
Double_t value)
160 SetFragmentMinimumCharge(FragmentMinimumCharge);
161 SetParticleFactor(ParticleFactor);
188 SetLevelDensityParameter(LevelDensityParameter);
189 ktempdeduced =
kTRUE;
226 SetNeutronMeanEnergyFactor(NeutronMeanEnergyFactor);
228 kfree_neutrons_included =
kTRUE;
252 void KVCalorimetry::fill(
const KVNucleus* n)
273 AddIngValue(
"Zfrag",
n->GetZ());
274 AddIngValue(
"Afrag",
n->GetA());
275 AddIngValue(
"Ekfrag",
n->GetFrame(
GetFrame(), kFALSE)->GetKE());
276 AddIngValue(
"Qfrag",
n->GetMassExcess());
277 AddIngValue(
"Mfrag", 1);
280 AddIngValue(
"Zpart",
n->GetZ());
281 AddIngValue(
"Apart",
n->GetA());
282 AddIngValue(
"Ekpart",
n->GetFrame(
GetFrame(), kFALSE)->GetKE());
283 AddIngValue(
"Qpart",
n->GetMassExcess());
284 AddIngValue(
"Mpart", 1);
327 void KVCalorimetry::SumUp()
371 if (kfree_neutrons_included) {
379 SetIngValue(
"Aneu", Mneutron);
380 SetIngValue(
"Qneu", Mneutron * nn.GetMassExcess(0, 1));
381 SetIngValue(
"Mneu", Mneutron);
451 if (!kIsModified)
return;
456 if (kfree_neutrons_included) {
464 if (RootSquare(coefA, coefB, coefC)) {
466 SetIngValue(
"Temp", kracine_max);
483 ComputeExcitationEnergy();
485 ComputeTemperature();
495 void KVCalorimetry::ComputeTemperature()
const
498 Double_t exci = GetIngValue(
"Exci");
636 while (!fragpart.
End()) {
641 while (!prefixes.
End()) {
643 SetNameIndex(
name, min_index++);
647 if (kfree_neutrons_included) {
652 while (!prefixes.
End()) {
654 SetNameIndex(
name, min_index++);
656 SetNameIndex(
"Aexcess", min_index++);
657 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)