|
Jpp 20.0.0-72-g597b30bc9
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. | |
| JK40DefaultSimulator (const JK40Rates &rates, const JMixedK40Rates &mixed) | |
| 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 double | getL01Rate () const override |
| Get mixed L0 (lower module) and L1 (upper module) rate [Hz]. | |
| virtual double | getL10Rate () const override |
| Get mixed L1 (lower module) and L0 (upper module) rate [Hz]. | |
| virtual void | generateHits (const JModule &module, const JTimeRange &period, JModuleData &output) const override |
| Generate hits. | |
| virtual void | generateHits (const module_pair &input, const JTimeRange &period, const module_data &output) const override |
| Generate mixed-L1/L0 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] | |
| double | rateL01 |
| mixed L0 (lower module) and L1 (upper module) rate [Hz] | |
| double | rateL10 |
| mixed L1 (lower module) and L0 (upper module) rate [Hz] | |
Static Private Member Functions | |
| static double & | get_sigma () |
| Get intrinsic time smearing of K40 coincidences. | |
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 31 of file JK40DefaultSimulator.hh.
|
inline |
Default constructor.
Definition at line 40 of file JK40DefaultSimulator.hh.
|
inline |
|
inline |
Constructor.
| rates | K40 rates [Hz] |
| mixed | mixed K40 rates [Hz] |
Definition at line 63 of file JK40DefaultSimulator.hh.
|
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 78 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 92 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 105 of file JK40DefaultSimulator.hh.
|
inlineoverridevirtual |
Get probability of coincidence.
| ct | cosine space angle between PMT axes |
Implements JDETECTOR::JK40DefaultSimulatorInterface.
Definition at line 117 of file JK40DefaultSimulator.hh.
|
inlineoverridevirtual |
Get mixed L0 (lower module) and L1 (upper module) rate [Hz].
Implements JDETECTOR::JK40DefaultSimulatorInterface.
Definition at line 128 of file JK40DefaultSimulator.hh.
|
inlineoverridevirtual |
Get mixed L1 (lower module) and L0 (upper module) rate [Hz].
Implements JDETECTOR::JK40DefaultSimulatorInterface.
Definition at line 139 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 200 of file JK40DefaultSimulator.hh.
|
inlinestaticprotected |
Definition at line 201 of file JK40DefaultSimulator.hh.
|
inlinestaticprotected |
Definition at line 202 of file JK40DefaultSimulator.hh.
|
inlinestaticprotected |
Definition at line 203 of file JK40DefaultSimulator.hh.
|
inlineoverridevirtualinherited |
Generate hits.
| module | module |
| period | time window [ns] |
| output | background data |
Implements JDETECTOR::JK40Simulator.
Definition at line 169 of file JK40DefaultSimulatorInterface.hh.
|
inlineoverridevirtualinherited |
Generate mixed-L1/L0 hits.
| input | module pair |
| period | time window [ns] |
| output | background data |
Implements JDETECTOR::JK40Simulator.
Definition at line 318 of file JK40DefaultSimulatorInterface.hh.
|
inlinestaticinherited |
Get intrinsic time smearing of K40 coincidences.
Definition at line 378 of file JK40DefaultSimulatorInterface.hh.
|
inlinestaticinherited |
Set intrinsic time smearing of K40 coincidences.
| sigma | sigma [ns] |
Definition at line 389 of file JK40DefaultSimulatorInterface.hh.
|
inlinestaticprivateinherited |
Get intrinsic time smearing of K40 coincidences.
Definition at line 400 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 152 of file JK40DefaultSimulator.hh.
|
friend |
Write K40 simulator to output.
| out | output stream |
| object | K40 simulator |
Definition at line 180 of file JK40DefaultSimulator.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.
|
protectedinherited |
mixed L0 (lower module) and L1 (upper module) rate [Hz]
Definition at line 300 of file JK40Rates.hh.
|
protectedinherited |
mixed L1 (lower module) and L0 (upper module) rate [Hz]
Definition at line 301 of file JK40Rates.hh.