Skip to content

Commit 393f6fe

Browse files
authored
Merge pull request #94 from rest-for-physics/lobis-cosmic-energy-dist
New energy distribution formula for cosmics
2 parents f931c6f + 5a45b11 commit 393f6fe

File tree

2 files changed

+13
-9
lines changed

2 files changed

+13
-9
lines changed

inc/TRestGeant4PrimaryGeneratorInfo.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -48,7 +48,7 @@ EnergyDistributionTypes StringToEnergyDistributionTypes(const std::string&);
4848

4949
enum class EnergyDistributionFormulas {
5050
COSMIC_NEUTRONS,
51-
COSMIC_GAMMAS,
51+
COSMIC,
5252
};
5353

5454
std::string EnergyDistributionFormulasToString(const EnergyDistributionFormulas&);

src/TRestGeant4PrimaryGeneratorInfo.cxx

Lines changed: 12 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -163,8 +163,8 @@ string TRestGeant4PrimaryGeneratorTypes::EnergyDistributionFormulasToString(
163163
switch (type) {
164164
case EnergyDistributionFormulas::COSMIC_NEUTRONS:
165165
return "CosmicNeutrons";
166-
case EnergyDistributionFormulas::COSMIC_GAMMAS:
167-
return "CosmicGammas";
166+
case EnergyDistributionFormulas::COSMIC:
167+
return "Cosmic";
168168
}
169169
cout << "TRestGeant4PrimaryGeneratorTypes::EnergyDistributionFormulasToString - Error - Unknown energy "
170170
"distribution formula"
@@ -177,10 +177,9 @@ EnergyDistributionFormulas TRestGeant4PrimaryGeneratorTypes::StringToEnergyDistr
177177
if (TString(type).EqualTo(EnergyDistributionFormulasToString(EnergyDistributionFormulas::COSMIC_NEUTRONS),
178178
TString::ECaseCompare::kIgnoreCase)) {
179179
return EnergyDistributionFormulas::COSMIC_NEUTRONS;
180-
} else if (TString(type).EqualTo(
181-
EnergyDistributionFormulasToString(EnergyDistributionFormulas::COSMIC_GAMMAS),
182-
TString::ECaseCompare::kIgnoreCase)) {
183-
return EnergyDistributionFormulas::COSMIC_GAMMAS;
180+
} else if (TString(type).EqualTo(EnergyDistributionFormulasToString(EnergyDistributionFormulas::COSMIC),
181+
TString::ECaseCompare::kIgnoreCase)) {
182+
return EnergyDistributionFormulas::COSMIC;
184183
} else {
185184
cout << "TRestGeant4PrimaryGeneratorTypes::StringToEnergyDistributionFormulas - Error - Unknown "
186185
"energyDistributionFormulas: "
@@ -207,8 +206,13 @@ TF1 TRestGeant4PrimaryGeneratorTypes::EnergyDistributionFormulasToRootFormula(
207206
distribution.GetXaxis()->SetTitle("Energy (keV)");
208207
return distribution;
209208
}
210-
case EnergyDistributionFormulas::COSMIC_GAMMAS:
211-
exit(1);
209+
case EnergyDistributionFormulas::COSMIC:
210+
const char* title = "Cosmic distribution approximation";
211+
auto distribution = TF1(title, "TMath::Power(x, -2.7)", 1E2, 1E9);
212+
distribution.SetNormalized(true); // Normalized, not really necessary
213+
distribution.SetTitle(title);
214+
distribution.GetXaxis()->SetTitle("Energy (keV)");
215+
return distribution;
212216
}
213217
cout << "TRestGeant4PrimaryGeneratorTypes::EnergyDistributionFormulasToRootFormula - Error - Unknown "
214218
"energy distribution formula"

0 commit comments

Comments
 (0)