87{
90
92 JLimit_t& numberOfEvents = inputFile.getLimit();
94 double stdev = numeric_limits<double>::max();
96
97 try {
98
100
102
103 JParser<> zap(
"Example program to plot compass fit results.");
104
105 zap[
'f'] =
make_field(inputFile,
"output of JCompass");
110
111 zap(argc, argv);
112 }
113 catch(const exception &error) {
114 FATAL(error.what() << endl);
115 }
116
117
121
122 map_type G0("Q0.twist");
123 map_type
G1(
"Q1.twist");
124 map_type GA("Q0.swing");
125 map_type GB("Q0.atan2");
126
127
129
131
134
138 HC[evt->id]->Fill(log10(evt->
chi2 / evt->
ndf));
139 }
140
142
143 if (evt->
chi2 / evt->
ndf <= stdev) {
144
147
149
152 GA[evt->id].put(t1,
getAngle(q0.swing));
153 GB[evt->id].put(t1, atan2(q0.swing.getB(), q0.swing.getC()));
154 }
155 }
157
158
160
163 out << *(i->second);
164 }
165 }
166
167 for (map_type*
g1 : { &G0, &
G1, &GA, &GB }) {
168 for (map_type::const_iterator i =
g1->begin(); i !=
g1->end(); ++i) {
170 }
171 }
172
173 out.Write();
174 out.Close();
175}
#define DEBUG(A)
Message macros.
#define make_field(A,...)
macro to convert parameter to JParserTemplateElement object
#define MAKE_CSTRING(A)
Make C-string.
#define gmake_property(A)
macros to convert (template) parameter to JPropertiesElement object
Double_t g1(const Double_t x)
Function.
Double_t G1(const Double_t x)
Integral of method g1.
Utility class to parse parameter values.
Utility class to parse command line options.
Auxiliary class to manage set of compatible ROOT objects (e.g. histograms) using unique keys.
General purpose class for object reading from a list of file names.
virtual bool hasNext() override
Check availability of next element.
counter_type getCounter() const
Get counter.
virtual const pointer_type & next() override
Get next element.
JModel getModel(const JEvt &evt)
Get model.
void model(JModel_t &value)
Auxiliary function to constrain model during fit.
double getAngle(const JQuaternion3D &first, const JQuaternion3D &second)
Get space angle between quanternions.
static const JVector3D JVector3Z_t(0, 0, 1)
unit z-vector
This name space includes all other name spaces (except KM3NETDAQ, KM3NET and ANTARES).
double UNIXTimeStop
stop time
double ndf
weighed number of degrees of freedom
double UNIXTimeStart
start time
Model for fit to acoustics data.
Auxiliary data structure for decomposition of quaternion in twist and swing quaternions.
Empty structure for specification of parser element that is initialised (i.e. does not require input)...
Auxiliary data structure to build TGraph.
Auxiliary class for defining the range of iterations of objects.
static counter_type max()
Get maximum counter value.