24 int main(
int argc,
char **argv)
44 JParser<> zap(
"Auxiliary program to draw K40 fit function.");
52 catch(
const exception &error) {
53 FATAL(error.what() << endl);
57 const JModule module = getModule<JKM3NeT_t>(1001);
61 for (JModule::const_iterator i = module.begin(); i != module.end(); ++i) {
62 for (JModule::const_iterator
j = module.begin();
j != i; ++
j) {
64 if (
getDot(i->getDirection(),
j->getDirection()) > ct) {
65 ct =
getDot(i->getDirection(),
j->getDirection());
70 cout <<
"Cosine minimal angle between PMT axes " <<
FIXED(5,3) << ct << endl;
72 cout <<
"Modified rate [Hz] " <<
FIXED(6,3) << fitk40 .getValue(ct) <<
'/' <<
FIXED(6,3) << fitk40 .getValue(+1.0) << endl;
76 TH1D h0(
"h0", NULL, 5000, -1.0, +1.0);
78 for (Int_t i = 1; i <= h0.GetXaxis()->GetNbins(); ++i) {
80 const Double_t
x = h0.GetBinCenter(i);
82 h0.SetBinContent(i, fitk40.getValue(x));
Utility class to parse command line options.
int main(int argc, char *argv[])
Data structure for a composite optical module.
#define gmake_property(A)
macro to convert (template) parameter to JPropertiesElement object
double getDot(const JNeutrinoDirection &first, const JNeutrinoDirection &second)
Dot product.
Utility class to parse parameter values.
Empty structure for specification of parser element that is initialised (i.e. does not require input)...
Auxiliary data structure for floating point format specification.
Utility class to parse parameter values.
Double_t getValue(const Double_t ct) const
Get K40 coincidence rate as a function of cosine angle between PMT axes.
I/O formatting auxiliaries.
#define make_field(A,...)
macro to convert parameter to JParserTemplateElement object
General purpose messaging.
Utility class to parse command line options.
Fit parameters for two-fold coincidence rate due to K40.
Data structure for optical module.