Auxiliary program to print fit results;.
162 typedef JParallelFileScanner_t::multi_pointer_type multi_pointer_type;
164 JParallelFileScanner_t inputFile;
174 JParser<> zap(
"Auxiliary program to print fit results.");
177 zap[
'n'] =
make_field(numberOfEvents) = JLimit::max();
186 catch(
const exception& error) {
187 FATAL(error.what() << endl);
191 const int WIDTH = 16;
199 }
catch(
const exception& error) {}
202 while (inputFile.hasNext()) {
204 cout <<
"event: " << setw(10) << inputFile.getCounter() << endl;
206 multi_pointer_type ps = inputFile.next();
217 cout <<
"trigger: " << setw(10) << tev->
getCounter() <<
' '
220 if (mc.getEntries() != 0) {
228 if (option.count(MONTECARLO) != 0) {
236 cout <<
LEFT(
WIDTH) <<
"neutrino" << right <<
' ' << ta << endl;
248 is_hadron (*i) ?
"hadron" :
"other") << right <<
' ' << ta << endl;
254 cout <<
"number of fits " << setw(4) << right << evt->size() << endl;
256 for (
size_t i = 0; i != min(evt->size(), numberOfFits); ++i) {
258 const JFit& fit = (*evt)[i];
264 cout <<
LEFT(
WIDTH) <<
"fit" << right <<
' '
266 <<
FIXED(7,2) << fit.getQ() <<
' '
267 << setw(2) << fit.getHistory().size() <<
'/' << fit.getStatus();
269 for (
const auto& key : keys) {
275 for (
size_t row = 0; row != fit.getDimensionOfErrorMatrix(); ++row) {
276 for (
size_t col = 0; col <= row; ++col) {
277 cout <<
' ' <<
SCIENTIFIC(12,3) << fit.getV(row,col);
282 if (option.count(HISTORY) != 0) {
283 cout << fit.getHistory() << endl;
#define make_field(A,...)
macro to convert parameter to JParserTemplateElement object
Utility class to parse command line options.
General purpose class for parallel reading of objects from a single file or multiple files.
JDAQUTCExtended getTimesliceStart() const
Get start of timeslice.
JTriggerCounter_t getCounter() const
Get trigger counter.
Auxiliary class to convert DAQ hit time to/from Monte Carlo hit time.
double putTime() const
Get Monte Carlo time minus DAQ/trigger time.
const Trk & get_neutrino(const Evt &evt)
Get incoming neutrino.
JTrack3E getTrack(const Trk &track)
Get track.
bool is_electron(const Trk &track)
Test whether given track is a (anti-)electron.
bool has_neutrino(const Evt &evt)
Test whether given event has an incoming neutrino.
JPosition3D getPosition(const Vec &pos)
Get position.
bool is_muon(const Trk &track)
Test whether given track is a (anti-)muon.
Vec getOffset(const JHead &header)
Get offset.
bool is_hadron(const Trk &track)
Test whether given track is a hadron.
double getWeight(T __begin, T __end)
Get total weight of data points.
const array_type< JKey_t > & get_keys(const std::map< JKey_t, JValue_t, JComparator_t, JAllocator_t > &data)
Method to create array of keys of map.
This name space includes all other name spaces (except KM3NETDAQ, KM3NET and ANTARES).
Head getHeader(const JMultipleFileScanner_t &file_list)
Get Monte Carlo header.
KM3NeT DAQ data structures and auxiliaries.
The Evt class respresent a Monte Carlo (MC) event as well as an offline event.
Auxiliary data structure for floating point format specification.
Empty structure for specification of parser element that is initialised (i.e. does not require input)...
General purpose sorter of fit results.
Auxiliary class for defining the range of iterations of objects.
const JLimit & getLimit() const
Get limit.
Auxiliary data structure for floating point format specification.
The Vec class is a straightforward 3-d vector, which also works in pyroot.
Auxiliary data structure for alignment of data.
Reconstruction type dependent comparison of track quality.