|
ATLAS Offline Software
|
#include <TFCSPCAEnergyParametrization.h>
|
static void | P2X (TVectorD *, TVectorD *, TMatrixD *, int, const double *, double *, int) |
|
static std::string | startMsg (MSG::Level lvl, const std::string &file, int line) |
| Make a message to decorate the start of logging. More...
|
|
◆ FindDuplicateClasses_t
◆ FindDuplicates_t
◆ FCSReturnCodePCA
◆ FCSStatusBits
Status bit for FCS needs.
Enumerator |
---|
kMatchAllPDGID | Set this bit in the TObject bit field if valid for all PDGID.
|
Definition at line 52 of file TFCSParametrizationBase.h.
◆ TFCSPCAEnergyParametrization()
TFCSPCAEnergyParametrization::TFCSPCAEnergyParametrization |
( |
const char * |
name = nullptr , |
|
|
const char * |
title = nullptr |
|
) |
| |
◆ add_pdgid()
void TFCSParametrization::add_pdgid |
( |
int |
id | ) |
|
|
virtualinherited |
◆ clean()
void TFCSPCAEnergyParametrization::clean |
( |
| ) |
|
◆ CleanAuxInfo()
◆ clear()
void TFCSParametrization::clear |
( |
| ) |
|
|
inherited |
◆ clear_pdgid()
void TFCSParametrization::clear_pdgid |
( |
| ) |
|
|
virtualinherited |
◆ compare()
Definition at line 78 of file TFCSParametrization.cxx.
81 <<
IsA()->GetName() <<
" != " <<
ref.IsA()->GetName());
84 std::string
name(GetName());
87 <<
" != " <<
ref.GetName());
90 std::string
title(GetTitle());
93 <<
" != " <<
ref.GetTitle());
◆ Ekin_max()
double TFCSParametrization::Ekin_max |
( |
| ) |
const |
|
inlineoverridevirtualinherited |
◆ Ekin_min()
double TFCSParametrization::Ekin_min |
( |
| ) |
const |
|
inlineoverridevirtualinherited |
◆ Ekin_nominal()
double TFCSParametrization::Ekin_nominal |
( |
| ) |
const |
|
inlineoverridevirtualinherited |
◆ eta_max()
double TFCSParametrization::eta_max |
( |
| ) |
const |
|
inlineoverridevirtualinherited |
◆ eta_min()
double TFCSParametrization::eta_min |
( |
| ) |
const |
|
inlineoverridevirtualinherited |
◆ eta_nominal()
double TFCSParametrization::eta_nominal |
( |
| ) |
const |
|
inlineoverridevirtualinherited |
◆ FindDuplicates()
Definition at line 90 of file TFCSParametrizationBase.cxx.
92 for (
unsigned int i = 0;
i <
size(); ++
i)
97 auto checkexist = dup.find(param);
98 if (checkexist != dup.end()) {
100 << param->GetName());
101 if (checkexist->second.replace) {
104 << refparam <<
"=" << refparam->GetName()
105 <<
", duplicate is " << param <<
"=" << param->GetName()
106 <<
" index " <<
i <<
" of " <<
this);
107 dup[refparam].mother.push_back(
this);
108 dup[refparam].index.push_back(
i);
113 dup[param] = Duplicate_t();
114 for (
auto &
ref : dup) {
117 if (param == refparam)
120 if (refparam ==
nullptr)
123 if (
ref.second.replace)
126 if (*param == *refparam) {
128 << refparam <<
"=" << refparam->GetName()
129 <<
", duplicate is " << param <<
"=" << param->GetName()
130 <<
" index " <<
i <<
" of " <<
this);
131 dup[param].replace = refparam;
132 dup[refparam].mother.push_back(
this);
133 dup[refparam].index.push_back(
i);
◆ get_layers()
const std::vector<int>& TFCSPCAEnergyParametrization::get_layers |
( |
| ) |
const |
|
inline |
◆ get_total_energy_normalization()
float TFCSPCAEnergyParametrization::get_total_energy_normalization |
( |
| ) |
const |
|
inline |
◆ get_totalE_probability_ratio()
TH1 * TFCSPCAEnergyParametrization::get_totalE_probability_ratio |
( |
int |
Ekin_bin | ) |
const |
◆ is_match_all_calosample()
virtual bool TFCSPCAEnergyParametrization::is_match_all_calosample |
( |
| ) |
const |
|
inlineoverridevirtual |
◆ is_match_all_Ekin()
virtual bool TFCSParametrization::is_match_all_Ekin |
( |
| ) |
const |
|
inlineoverridevirtualinherited |
◆ is_match_all_Ekin_bin()
virtual bool TFCSPCAEnergyParametrization::is_match_all_Ekin_bin |
( |
| ) |
const |
|
inlineoverridevirtual |
◆ is_match_all_eta()
virtual bool TFCSParametrization::is_match_all_eta |
( |
| ) |
const |
|
inlineoverridevirtualinherited |
◆ is_match_all_pdgid()
virtual bool TFCSParametrizationBase::is_match_all_pdgid |
( |
| ) |
const |
|
inlinevirtualinherited |
◆ is_match_calosample()
bool TFCSPCAEnergyParametrization::is_match_calosample |
( |
int |
calosample | ) |
const |
|
overridevirtual |
◆ is_match_Ekin()
virtual bool TFCSParametrization::is_match_Ekin |
( |
float |
Ekin | ) |
const |
|
inlineoverridevirtualinherited |
◆ is_match_Ekin_bin()
bool TFCSPCAEnergyParametrization::is_match_Ekin_bin |
( |
int |
Ekin_bin | ) |
const |
|
overridevirtual |
◆ is_match_eta()
virtual bool TFCSParametrization::is_match_eta |
( |
float |
eta | ) |
const |
|
inlineoverridevirtualinherited |
◆ is_match_pdgid()
virtual bool TFCSParametrization::is_match_pdgid |
( |
int |
id | ) |
const |
|
inlineoverridevirtualinherited |
◆ level()
MSG::Level ISF_FCS::MLogging::level |
( |
| ) |
const |
|
inlineinherited |
Retrieve output level.
Definition at line 201 of file MLogging.h.
201 {
return msg().level(); }
◆ loadInputs() [1/2]
bool TFCSPCAEnergyParametrization::loadInputs |
( |
TFile * |
file | ) |
|
◆ loadInputs() [2/2]
bool TFCSPCAEnergyParametrization::loadInputs |
( |
TFile * |
file, |
|
|
const std::string & |
folder |
|
) |
| |
Definition at line 254 of file TFCSPCAEnergyParametrization.cxx.
276 file->cd(
x +
"1/pca");
278 if (RelevantLayers ==
nullptr) {
279 ATH_MSG_ERROR(
"TFCSPCAEnergyParametrization::m_RelevantLayers in first "
288 for (
int i = 0;
i < RelevantLayers->GetSize();
i++)
295 TMatrixDSym *symCov = (TMatrixDSym *)
gDirectory->Get(
"symCov");
296 TVectorD *MeanValues = (TVectorD *)
gDirectory->Get(
"MeanValues");
297 TVectorD *SigmaValues = (TVectorD *)
gDirectory->Get(
"SigmaValues");
298 TVectorD *Gauss_means = (TVectorD *)
gDirectory->Get(
"Gauss_means");
299 TVectorD *Gauss_rms = (TVectorD *)
gDirectory->Get(
"Gauss_rms");
301 if (symCov ==
nullptr) {
303 <<
bin <<
" is null!");
306 if (MeanValues ==
nullptr) {
308 <<
bin <<
" is null!");
311 if (SigmaValues ==
nullptr) {
313 <<
bin <<
" is null!");
316 if (Gauss_means ==
nullptr) {
318 <<
bin <<
" is null!");
321 if (Gauss_rms ==
nullptr) {
323 <<
bin <<
" is null!");
330 TMatrixDSymEigen cov_eigen(*symCov);
331 TMatrixD *EV =
new TMatrixD(cov_eigen.GetEigenVectors());
338 std::vector<std::string>
layer;
341 for (
unsigned int i = 0;
i < layerNr.size();
i++) {
342 layer.emplace_back(Form(
"layer%i", layerNr[
i]));
344 layer.emplace_back(
"totalE");
346 std::vector<TFCS1DFunction *> cumulative;
347 cumulative.reserve(
layer.size());
349 for (
unsigned int l = 0;
l <
layer.size();
l++) {
358 cumulative.push_back(
fct);
◆ msg() [1/2]
MsgStream & ISF_FCS::MLogging::msg |
( |
| ) |
const |
|
inlineinherited |
Return a stream for sending messages directly (no decoration)
Definition at line 231 of file MLogging.h.
232 MsgStream *
ms = m_msg_tls.get();
◆ msg() [2/2]
MsgStream & ISF_FCS::MLogging::msg |
( |
const MSG::Level |
lvl | ) |
const |
|
inlineinherited |
Return a decorated starting stream for sending messages.
Definition at line 240 of file MLogging.h.
◆ msgLvl()
bool ISF_FCS::MLogging::msgLvl |
( |
const MSG::Level |
lvl | ) |
const |
|
inlineinherited |
Check whether the logging system is active at the provided verbosity level.
Definition at line 222 of file MLogging.h.
◆ n_bins()
virtual int TFCSPCAEnergyParametrization::n_bins |
( |
| ) |
const |
|
inlineoverridevirtual |
◆ n_pcabins()
int TFCSPCAEnergyParametrization::n_pcabins |
( |
| ) |
const |
|
inline |
◆ operator==()
◆ operator[]() [1/2]
◆ operator[]() [2/2]
◆ P2X()
void TFCSPCAEnergyParametrization::P2X |
( |
TVectorD * |
, |
|
|
TVectorD * |
, |
|
|
TMatrixD * |
, |
|
|
int |
, |
|
|
const double * |
, |
|
|
double * |
, |
|
|
int |
|
|
) |
| |
|
static |
Definition at line 232 of file TFCSPCAEnergyParametrization.cxx.
237 const double *gSigmaValues = SigmaValues->GetMatrixArray();
238 const double *gMeanValues = MeanValues->GetMatrixArray();
239 const double *gEigenVectors = EV->GetMatrixArray();
241 for (
int i = 0;
i < gNVariables;
i++) {
242 x[
i] = gMeanValues[
i];
243 for (
int j = 0; j < nTest; j++) {
245 p[j] * gSigmaValues[
i] * (
double)(gEigenVectors[
i * gNVariables + j]);
◆ pdgid()
const std::set<int>& TFCSParametrization::pdgid |
( |
| ) |
const |
|
inlineoverridevirtualinherited |
◆ Print()
void TFCSPCAEnergyParametrization::Print |
( |
Option_t * |
option = "" | ) |
const |
|
override |
◆ RemoveDuplicates()
void TFCSParametrizationBase::RemoveDuplicates |
( |
| ) |
|
|
inherited |
Definition at line 142 of file TFCSParametrizationBase.cxx.
146 std::set<TFCSParametrizationBase *> dellist;
147 for (
auto &dupiter : dupclasses) {
149 for (
auto onedup : dup) {
150 if (onedup.second.mother.empty())
154 for (
unsigned int i = 0;
i < onedup.second.mother.size(); ++
i) {
155 int index = onedup.second.index[
i];
158 unsigned int delcount = dup[delparam].mother.
size();
161 << delparam <<
"=" << delparam->GetName() <<
" index "
162 <<
index <<
" of " << mother <<
", has " << delcount
163 <<
" other replacements attached. Deleting");
165 dellist.insert(delparam);
168 << delparam <<
"=" << delparam->GetName() <<
" index "
169 <<
index <<
" of " << mother <<
", has " << delcount
170 <<
" other replacements attached. Skipping");
180 std::map<std::string, int> ndel;
181 for (
auto *delparam : dellist) {
183 bool present = dup2.find(delparam) != dup2.end();
186 << delparam->GetName()
187 <<
" still referenced somewhere!");
190 << delparam->GetName());
191 ++ndel[delparam->ClassName()];
195 for (
auto &del : ndel)
196 ATH_MSG_INFO(
"Deleted " << del.second <<
" duplicate objects of class "
◆ RemoveNameTitle()
void TFCSParametrizationBase::RemoveNameTitle |
( |
| ) |
|
|
inherited |
◆ reset_match_all_pdgid()
virtual void TFCSParametrizationBase::reset_match_all_pdgid |
( |
| ) |
|
|
inlinevirtualinherited |
◆ set_daughter()
◆ set_Ekin()
◆ set_Ekin_eta()
◆ set_Ekin_max()
void TFCSParametrization::set_Ekin_max |
( |
double |
max | ) |
|
|
virtualinherited |
◆ set_Ekin_min()
void TFCSParametrization::set_Ekin_min |
( |
double |
min | ) |
|
|
virtualinherited |
◆ set_Ekin_nominal()
void TFCSParametrization::set_Ekin_nominal |
( |
double |
min | ) |
|
|
virtualinherited |
◆ set_eta()
◆ set_eta_max()
void TFCSParametrization::set_eta_max |
( |
double |
max | ) |
|
|
virtualinherited |
◆ set_eta_min()
void TFCSParametrization::set_eta_min |
( |
double |
min | ) |
|
|
virtualinherited |
◆ set_eta_nominal()
void TFCSParametrization::set_eta_nominal |
( |
double |
min | ) |
|
|
virtualinherited |
◆ set_geometry()
void TFCSParametrizationBase::set_geometry |
( |
ICaloGeometry * |
geo | ) |
|
|
virtualinherited |
◆ set_match_all_pdgid()
virtual void TFCSParametrizationBase::set_match_all_pdgid |
( |
| ) |
|
|
inlinevirtualinherited |
◆ set_pdgid() [1/2]
void TFCSParametrization::set_pdgid |
( |
const std::set< int > & |
ids | ) |
|
|
virtualinherited |
◆ set_pdgid() [2/2]
void TFCSParametrization::set_pdgid |
( |
int |
id | ) |
|
|
virtualinherited |
◆ set_pdgid_Ekin_eta()
◆ set_total_energy_normalization()
void TFCSPCAEnergyParametrization::set_total_energy_normalization |
( |
float |
norm | ) |
|
|
inline |
◆ set_totalE_probability_ratio()
void TFCSPCAEnergyParametrization::set_totalE_probability_ratio |
( |
int |
Ekin_bin, |
|
|
TH1 * |
hist |
|
) |
| |
◆ setLevel()
void ISF_FCS::MLogging::setLevel |
( |
MSG::Level |
lvl | ) |
|
|
virtualinherited |
◆ simulate()
Method in all derived classes to do some simulation.
Result should be returned in simulstate.
Simulate all energies in calo layers for energy parametrizations. Simulate cells for shape simulation.
Reimplemented from TFCSParametrizationBase.
Definition at line 120 of file TFCSPCAEnergyParametrization.cxx.
128 int pcabin = simulstate.
Ebin();
138 TMatrixD *EV =
m_EV[pcabin - 1];
143 std::vector<TFCS1DFunction *> cumulative =
m_cumulative[pcabin - 1];
147 double *vals_gauss_means = (
double *)Gauss_means->GetMatrixArray();
148 double *vals_gauss_rms = Gauss_rms->GetMatrixArray();
150 double *output_data =
new double[layerNr.size() + 1];
151 double *input_data =
new double[layerNr.size() + 1];
153 for (
unsigned int l = 0;
l <= layerNr.size();
l++) {
154 double mean = vals_gauss_means[
l];
155 double rms = vals_gauss_rms[
l];
158 input_data[
l] = gauszz;
161 P2X(SigmaValues, MeanValues, EV, layerNr.size() + 1, input_data,
162 output_data, layerNr.size() + 1);
164 double *simdata =
new double[layerNr.size() + 1];
165 double sum_fraction = 0.0;
166 for (
unsigned int l = 0;
l <= layerNr.size();
l++) {
167 double simdata_uniform =
168 (TMath::Erf(output_data[
l] / 1.414213562) + 1) / 2.
f;
170 simdata[
l] = cumulative[
l]->rnd_to_fct(simdata_uniform);
172 if (
l != layerNr.size())
173 sum_fraction += simdata[
l];
176 double scalefactor = 1.0 / sum_fraction;
182 int layerNrsize =
static_cast<int>(layerNr.size());
183 for (
int l = 0;
l < layerNrsize;
l++) {
184 simdata[
l] *= scalefactor;
191 if (h_totalE_ratio) {
192 float pass_probability = 0;
193 float Etot = simdata[layerNr.size()];
194 if (Etot > h_totalE_ratio->GetXaxis()->GetXmin() &&
195 Etot < h_totalE_ratio->GetXaxis()->GetXmax()) {
198 float random = CLHEP::RandFlat::shoot(simulstate.
randomEngine());
199 if (random > pass_probability) {
200 delete[] output_data;
208 double total_energy =
210 simulstate.
set_E(total_energy);
214 double energyfrac = 0.0;
215 for (
unsigned int l = 0;
l < layerNr.size();
l++) {
217 energyfrac = simdata[
l];
220 simulstate.
set_E(
s, energyfrac * total_energy);
221 simulstate.
set_SF(scalefactor);
224 delete[] output_data;
◆ size()
virtual unsigned int TFCSParametrizationBase::size |
( |
| ) |
const |
|
inlinevirtualinherited |
◆ startMsg()
std::string ISF_FCS::MLogging::startMsg |
( |
MSG::Level |
lvl, |
|
|
const std::string & |
file, |
|
|
int |
line |
|
) |
| |
|
staticinherited |
Make a message to decorate the start of logging.
Print a message for the start of logging.
Definition at line 116 of file MLogging.cxx.
120 auto last_slash =
file.find_last_of(
'/');
121 int path_len = last_slash == std::string::npos ? 0 : last_slash;
122 int trim_point = path_len;
123 int total_len =
file.length();
124 if (total_len - path_len > col1_len)
125 trim_point = total_len - col1_len;
126 std::string trimmed_name =
file.substr(trim_point);
128 "NIL",
"VERBOSE",
"DEBUG",
"INFO",
"WARNING",
"ERROR",
"FATAL",
"ALWAYS"};
129 std::string
level = LevelNames[lvl];
130 std::string level_string = std::string(
"(") +
level +
") ";
132 output << std::setw(col1_len) << std::right << trimmed_name <<
":"
133 << std::setw(col2_len) << std::left <<
line << std::setw(col3_len)
134 << std::right << level_string;
◆ ATLAS_THREAD_SAFE
boost::thread_specific_ptr<MsgStream> m_msg_tls ISF_FCS::MLogging::ATLAS_THREAD_SAFE |
|
inlinestaticprivateinherited |
Do not persistify!
MsgStream instance (a std::cout like with print-out levels)
Definition at line 215 of file MLogging.h.
◆ do_rescale
int TFCSPCAEnergyParametrization::do_rescale |
◆ init_Ekin_max
constexpr double TFCSParametrizationBase::init_Ekin_max = 14000000 |
|
staticconstexprprotectedinherited |
◆ init_Ekin_min
constexpr double TFCSParametrizationBase::init_Ekin_min = 0 |
|
staticconstexprprotectedinherited |
◆ init_Ekin_nominal
constexpr double TFCSParametrizationBase::init_Ekin_nominal = 0 |
|
staticconstexprprotectedinherited |
◆ init_eta_max
constexpr double TFCSParametrizationBase::init_eta_max = 100 |
|
staticconstexprprotectedinherited |
◆ init_eta_min
constexpr double TFCSParametrizationBase::init_eta_min = -100 |
|
staticconstexprprotectedinherited |
◆ init_eta_nominal
constexpr double TFCSParametrizationBase::init_eta_nominal = 0 |
|
staticconstexprprotectedinherited |
◆ m_cumulative
std::vector<std::vector<TFCS1DFunction *> > TFCSPCAEnergyParametrization::m_cumulative |
|
private |
◆ m_Ekin_max
double TFCSParametrization::m_Ekin_max |
|
privateinherited |
◆ m_Ekin_min
double TFCSParametrization::m_Ekin_min |
|
privateinherited |
◆ m_Ekin_nominal
double TFCSParametrization::m_Ekin_nominal |
|
privateinherited |
◆ m_eta_max
double TFCSParametrization::m_eta_max |
|
privateinherited |
◆ m_eta_min
double TFCSParametrization::m_eta_min |
|
privateinherited |
◆ m_eta_nominal
double TFCSParametrization::m_eta_nominal |
|
privateinherited |
◆ m_EV
std::vector<TMatrixD *> TFCSPCAEnergyParametrization::m_EV |
|
private |
◆ m_Gauss_means
std::vector<TVectorD *> TFCSPCAEnergyParametrization::m_Gauss_means |
|
private |
◆ m_Gauss_rms
std::vector<TVectorD *> TFCSPCAEnergyParametrization::m_Gauss_rms |
|
private |
◆ m_MeanValues
std::vector<TVectorD *> TFCSPCAEnergyParametrization::m_MeanValues |
|
private |
◆ m_nm
std::string ISF_FCS::MLogging::m_nm |
|
privateinherited |
◆ m_numberpcabins
int TFCSPCAEnergyParametrization::m_numberpcabins |
|
private |
◆ m_pdgid
std::set<int> TFCSParametrization::m_pdgid |
|
privateinherited |
◆ m_RelevantLayers
std::vector<int> TFCSPCAEnergyParametrization::m_RelevantLayers |
|
private |
◆ m_SigmaValues
std::vector<TVectorD *> TFCSPCAEnergyParametrization::m_SigmaValues |
|
private |
◆ m_total_energy_normalization
float TFCSPCAEnergyParametrization::m_total_energy_normalization {1} |
|
private |
◆ m_totalE_probability_ratio
std::vector<TH1 *> TFCSPCAEnergyParametrization::m_totalE_probability_ratio |
|
private |
The documentation for this class was generated from the following files:
virtual void set_daughter(unsigned int, TFCSParametrizationBase *)
Some derived classes have daughter instances of TFCSParametrizationBase objects The set_daughter meth...
virtual void set_Ekin_nominal(double min)
FCSReturnCode
Base class for all FastCaloSim parametrizations Functionality in derivde classes is provided through ...
const std::set< int > & pdgid() const override
std::vector< TVectorD * > m_SigmaValues
std::vector< int > m_RelevantLayers
static constexpr double init_Ekin_max
Do not persistify!
bool compare(const TFCSParametrizationBase &ref) const
Do not persistify!
static constexpr double init_eta_nominal
Do not persistify!
void mean(std::vector< double > &bins, std::vector< double > &values, const std::vector< std::string > &files, const std::string &histname, const std::string &tplotname, const std::string &label="")
static constexpr double init_Ekin_min
Do not persistify!
std::vector< TVectorD * > m_Gauss_rms
#define IsA
Declare the TObject style functions.
double Ekin_max() const override
virtual bool is_match_all_pdgid() const
static constexpr double init_eta_min
Do not persistify!
Scalar eta() const
pseudorapidity method
MSG::Level level() const
Retrieve output level.
float m_total_energy_normalization
static void P2X(TVectorD *, TVectorD *, TMatrixD *, int, const double *, double *, int)
bool loadInputs(TFile *file)
void FindDuplicates(FindDuplicateClasses_t &dup)
virtual void set_Ekin_max(double max)
static constexpr double init_eta_max
Do not persistify!
double eta_nominal() const override
CLHEP::HepRandomEngine * randomEngine()
virtual void set_Ekin(const TFCSParametrizationBase &ref)
virtual void set_eta(const TFCSParametrizationBase &ref)
IMessageSvc * getMessageSvc(bool quiet=false)
virtual void set_eta_max(double max)
virtual int n_bins() const override
std::vector< TMatrixD * > m_EV
virtual void set_pdgid(int id)
virtual void set_Ekin_eta(const TFCSParametrizationBase &ref)
MsgStream & msg() const
Return a stream for sending messages directly (no decoration)
virtual void set_Ekin_min(double min)
TFCSEnergyParametrization(const char *name=nullptr, const char *title=nullptr)
TH1 * get_totalE_probability_ratio(int Ekin_bin) const
std::map< std::string, FindDuplicates_t > FindDuplicateClasses_t
std::string m_nm
Message source name.
double Ekin_min() const override
void Print(Option_t *option="") const
Print object information.
std::vector< TVectorD * > m_MeanValues
std::map< TFCSParametrizationBase *, Duplicate_t > FindDuplicates_t
double eta_max() const override
std::vector< std::vector< TFCS1DFunction * > > m_cumulative
double eta_min() const override
virtual void set_eta_nominal(double min)
std::vector< TH1 * > m_totalE_probability_ratio
void set_E(int sample, double Esample)
static constexpr double init_Ekin_nominal
float interpolate_get_y(TH1 *hist, float x)
#define ATH_MSG_WARNING(x)
const boost::regex ref(r_ef)
double Ekin_nominal() const override
virtual void set_eta_min(double min)
std::vector< TVectorD * > m_Gauss_means
@ kMatchAllPDGID
Set this bit in the TObject bit field if valid for all PDGID.
virtual unsigned int size() const
Some derived classes have daughter instances of TFCSParametrizationBase objects The size() and operat...
bool msgLvl(const MSG::Level lvl) const
Check whether the logging system is active at the provided verbosity level.
void set_Efrac(int sample, double Efracsample)