1 #ifndef __JDETECTOR__JK40DEFAULTSIMULATOR__
2 #define __JDETECTOR__JK40DEFAULTSIMULATOR__
16 namespace JDETECTOR {}
17 namespace JPP {
using namespace JDETECTOR; }
98 return exp(ct * (
p1() + ct * (
p2() + ct * (
p3() + ct*
p4()))));
111 const double rateL0 =
object.rateL0;
113 if (in >>
object.rateL0) {
115 object.rateL1.clear();
117 for (
double x; in >> x; ) {
118 object.rateL1.push_back(x);
139 out <<
object.rateL0;
141 for (JRateL1_t::const_iterator i =
object.
rateL1.begin(); i !=
object.rateL1.end(); ++i) {
155 static double p1() {
return 2.85261; }
156 static double p2() {
return -0.949097; }
157 static double p3() {
return 0.182419; }
158 static double p4() {
return 1.23075; }
static JK40DefaultSimulator & getInstance()
Get reference to unique instance of this class object.
Default implementation of the simulation of K40 background.
Default K40 simulator interface.
static double p1()
Parameters for probability of coincidence as a function of the cosine of space angle between PMT axes...
double getSinglesRate() const
Get singles rate.
JRateL1_t rateL1
multiples rates [Hz]
esac print_variable DETECTOR INPUT_FILE OUTPUT_FILE CDF for TYPE in
esac $JPP_DIR examples JDetector JTransitTime o $OUTPUT_FILE n N $NPE T $TTS_NS d $DEBUG for HISTOGRAM in tts tt2 pmt
JK40DefaultSimulator()
Default constructor.
Compiler version dependent expressions, macros, etc.
JK40DefaultSimulator(const JK40Rates &rates)
Constructor.
virtual double getMultiplesRate(const JModuleIdentifier &module, const int M) const
Get multiples rate as a function of optical module.
static JK40Rates & getInstance()
Get reference to unique instance of this class object.
friend std::ostream & operator<<(std::ostream &out, const JK40DefaultSimulator &object)
Write K40 simulator to output.
friend std::istream & operator>>(std::istream &in, JK40DefaultSimulator &object)
Read K40 simulator from input.
double getMultiplesRate(const multiplicity_type M) const
Get multiples rate.
virtual double getProbability(const double ct) const
Get probability of coincidence.
JRateL0_t rateL0
singles rate [Hz]
Auxiliary class for object identification.
virtual double getSinglesRate(const JPMTIdentifier &pmt) const
Get singles rate as a function of PMT.
then set_variable FORMULA *[0] exp(-0.5 *(x-[1])*(x-[1])/([2]*[2]))" set_variable OUTPUT_FILE histogram.root JHistogram1D -o $WORKDIR/$OUTPUT_FILE -F "$FORMULA" -
Auxiliary class for K40 rates.