Go to the documentation of this file. 1 #ifndef __JDETECTOR__JK40RATES___
2 #define __JDETECTOR__JK40RATES___
79 if (rates_Hz.
rateL1.empty()) {
83 rates_Hz.
rateL1.push_back(500.0);
84 rates_Hz.
rateL1.push_back( 50.0);
85 rates_Hz.
rateL1.push_back( 5.0);
175 for (JRateL1_t::iterator i =
rateL1.begin(); i !=
rateL1.end(); ++i) {
191 const double rateL0 =
object.rateL0;
193 if (in >>
object.
rateL0) {
195 object.rateL1.clear();
197 for (
double x; in >> x; ) {
198 object.rateL1.push_back(x);
219 out <<
object.rateL0;
221 for (JRateL1_t::const_iterator i =
object.
rateL1.begin(); i !=
object.rateL1.end(); ++i) {
JRateL1_t rateL1
multiples rates [Hz]
std::vector< double > JRateL1_t
Type definition of count rate as a function of multiplicty [Hz] The multiples rate start counting at ...
This name space includes all other name spaces (except KM3NETDAQ, KM3NET and ANTARES).
Auxiliary class for K40 rates.
double getSinglesRate() const
Get singles rate.
friend std::ostream & operator<<(std::ostream &out, const JK40Rates &object)
Write K40 rates to output.
size_t multiplicity_type
Type definition of multiplicity.
friend std::istream & operator>>(std::istream &in, JK40Rates &object)
Read K40 rates from input.
static JK40Rates & getInstance()
Get reference to unique instance of this class object.
JRateL0_t rateL0
singles rate [Hz]
void correct(const double QE)
Correct rates for global efficiency,.
multiplicity_type getUpperL1Multiplicity() const
Get upper multiplicty.
double getMultiplesRate(const multiplicity_type M) const
Get multiples rate.
multiplicity_type getLowerL1Multiplicity() const
Get lower multiplicty.
JK40Rates()
Default constructor.
double JRateL0_t
Type definition of singles rate [Hz].
static const multiplicity_type LOWER_L1_MULTIPLICITY
Lower L1 multiplicity.
Auxiliary classes and methods for detector calibration.
JK40Rates(const JRateL0_t rateL0_Hz, const JRateL1_t &rateL1_Hz=JRateL1_t())
Constructor.