Jpp test-rotations-old
the software that should make you happy
|
Default implementation of the simulation of K40 background. More...
#include <JK40DefaultSimulator.hh>
Public Member Functions | |
JK40DefaultSimulator () | |
Default constructor. | |
JK40DefaultSimulator (const JK40Rates &rates) | |
Constructor. | |
virtual double | getSinglesRate (const JPMTIdentifier &pmt) const override |
Get singles rate as a function of PMT. | |
virtual double | getMultiplesRate (const JModuleIdentifier &module, const int M) const override |
Get multiples rate as a function of optical module. | |
virtual double | getProbability (const double ct) const override |
Get probability of coincidence. | |
virtual void | generateHits (const JModule &module, const JTimeRange &period, JModuleData &output) const |
Generate hits. | |
double | getSinglesRate () const |
Get singles rate. | |
const JRateL1_t & | getMultiplesRates () const |
Get multiples rate. | |
double | getMultiplesRate (const multiplicity_type M) const |
Get multiples rate at given multiplicity. | |
multiplicity_type | getLowerL1Multiplicity () const |
Get lower multiplicty. | |
multiplicity_type | getUpperL1Multiplicity () const |
Get upper multiplicty. | |
void | correct (const double QE) |
Correct rates for global efficiency,. | |
Static Public Member Functions | |
static JK40DefaultSimulator & | getInstance () |
Get reference to unique instance of this class object. | |
static double | getSigma () |
Get intrinsic time smearing of K40 coincidences. | |
static void | setSigma (const double sigma) |
Set intrinsic time smearing of K40 coincidences. | |
Static Public Attributes | |
static const multiplicity_type | LOWER_L1_MULTIPLICITY = 2 |
Lower L1 multiplicity. | |
Static Protected Member Functions | |
static double | p1 () |
Parameters for probability of coincidence as a function of the cosine of space angle between PMT axes. | |
static double | p2 () |
static double | p3 () |
static double | p4 () |
Protected Attributes | |
JRateL0_t | rateL0 |
singles rate [Hz] | |
JRateL1_t | rateL1 |
multiples rates [Hz] | |
Static Private Member Functions | |
static double & | get_sigma () |
Get intrinsic time smearing of K40 coincidences. | |
Private Attributes | |
probabilityL1 | |
std::vector< double > | rateL1_Hz |
Multiples rate as a function of the multiplicity. | |
Friends | |
std::istream & | operator>> (std::istream &in, JK40DefaultSimulator &object) |
Read K40 simulator from input. | |
std::ostream & | operator<< (std::ostream &out, const JK40DefaultSimulator &object) |
Write K40 simulator to output. | |
Default implementation of the simulation of K40 background.
This class implements the JK40Simulator interface.
Definition at line 30 of file JK40DefaultSimulator.hh.
|
inline |
Default constructor.
Definition at line 38 of file JK40DefaultSimulator.hh.
|
inline |
|
inlinestatic |
Get reference to unique instance of this class object.
This method returns an object with default values. The singles and multiples rates are taken from KM3NeT internal note "Detector simulations for KM3NeT".
Definition at line 62 of file JK40DefaultSimulator.hh.
|
inlineoverridevirtual |
Get singles rate as a function of PMT.
pmt | PMT identifier |
Implements JDETECTOR::JK40DefaultSimulatorInterface.
Reimplemented in JTRIGGER::JK40RunByRunSimulator.
Definition at line 76 of file JK40DefaultSimulator.hh.
|
inlineoverridevirtual |
Get multiples rate as a function of optical module.
module | optical module identifier |
M | multiplicity (M >= 2) |
Implements JDETECTOR::JK40DefaultSimulatorInterface.
Definition at line 89 of file JK40DefaultSimulator.hh.
|
inlineoverridevirtual |
Get probability of coincidence.
ct | cosine space angle between PMT axes |
Implements JDETECTOR::JK40DefaultSimulatorInterface.
Definition at line 101 of file JK40DefaultSimulator.hh.
|
inlinestaticprotected |
Parameters for probability of coincidence as a function of the cosine of space angle between PMT axes.
Values are provided by V.Kulikovski.
Definition at line 160 of file JK40DefaultSimulator.hh.
|
inlinestaticprotected |
Definition at line 161 of file JK40DefaultSimulator.hh.
|
inlinestaticprotected |
Definition at line 162 of file JK40DefaultSimulator.hh.
|
inlinestaticprotected |
Definition at line 163 of file JK40DefaultSimulator.hh.
|
inlinevirtualinherited |
Generate hits.
module | module |
period | time window [ns] |
output | background data |
Implements JDETECTOR::JK40Simulator.
Definition at line 134 of file JK40DefaultSimulatorInterface.hh.
|
inlinestaticinherited |
Get intrinsic time smearing of K40 coincidences.
Definition at line 282 of file JK40DefaultSimulatorInterface.hh.
|
inlinestaticinherited |
Set intrinsic time smearing of K40 coincidences.
sigma | sigma [ns] |
Definition at line 293 of file JK40DefaultSimulatorInterface.hh.
|
inlinestaticprivateinherited |
Get intrinsic time smearing of K40 coincidences.
Definition at line 304 of file JK40DefaultSimulatorInterface.hh.
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
Get multiples rate at given multiplicity.
M | multiplicity (M >= JK40Rates::LOWER_L1_MULTIPLICITY) |
Definition at line 94 of file JK40Rates.hh.
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
Correct rates for global efficiency,.
QE | global efficiency |
Definition at line 130 of file JK40Rates.hh.
|
friend |
Read K40 simulator from input.
in | input stream |
object | K40 simulator |
Definition at line 114 of file JK40DefaultSimulator.hh.
|
friend |
Write K40 simulator to output.
out | output stream |
object | K40 simulator |
Definition at line 142 of file JK40DefaultSimulator.hh.
|
privateinherited |
|
mutableprivateinherited |
Multiples rate as a function of the multiplicity.
The index i corresponds to multiplicity M = i + 2.
Definition at line 316 of file JK40DefaultSimulatorInterface.hh.
|
staticinherited |
Lower L1 multiplicity.
Definition at line 217 of file JK40Rates.hh.
|
protectedinherited |
singles rate [Hz]
Definition at line 221 of file JK40Rates.hh.
|
protectedinherited |
multiples rates [Hz]
Definition at line 222 of file JK40Rates.hh.