69 typedef JParallelFileScanner_t::multi_pointer_type multi_pointer_type;
74 JLimit_t& numberOfEvents = inputFile.getLimit();
79 size_t numberOfPrefits;
86 JParser<> zap(
"Program to perform fit of muon path to data.");
102 catch(
const exception& error) {
127 JRegressor_t::debug =
debug;
128 JRegressor_t::Vmax_npe = 10.0;
129 JRegressor_t::MAXIMUM_ITERATIONS = 10000;
133 fit.transform(JRegressor_t::transformer_type::getDefaultTransformer());
137 fit.parameters.resize(4);
144 if (fit.getRmax() < roadWidth_m) {
146 roadWidth_m = fit.getRmax();
148 WARNING(
"Set road width to [m] " << roadWidth_m <<
endl);
151 const double Rmax_m = 100.0;
152 const double Tmax_ns = 10.0;
159 while (inputFile.hasNext()) {
163 multi_pointer_type ps = inputFile.next();
191 for (JDataL0_t::const_iterator i = dataL0.begin(); i != dataL0.end(); ++i) {
203 if (tz.
getDistance(
hit) <= Rmax_m && t1 >= -Tmax_ns && t1 <= +Tmax_ns) {
220 for (
unsigned int i = 0; i !=
module->size(); ++i) {
228 buffer.push_back(
JPMTW0(pmt, R_Hz,
top.count(
id)));
234 const int NDF = buffer.size() - fit.parameters.size();
240 if (
track->getE() > 0.1)
241 fit.E_GeV =
track->getE();
245 const double chi2 = fit(
JLine3Z(tz), buffer.begin(), buffer.end());
253 out.rbegin()->setW(
track->getW());
Data structure for detector geometry and calibration.
Recording of objects on file according a format that follows from the file name extension.
Various implementations of functional maps.
Basic data structure for L0 hit.
Data regression method for JFIT::JLine3Z.
General purpose messaging.
#define DEBUG(A)
Message macros.
Direct access to module in detector data structure.
int main(int argc, char **argv)
Parallel scanning of objects from a single file or multiple files according a format that follows fro...
Utility class to parse command line options.
#define make_field(A,...)
macro to convert parameter to JParserTemplateElement object
Scanning of objects from a single file according a format that follows from the extension of each fil...
ROOT TTree parameter settings of various packages.
Basic data structure for time and time over threshold information of hit.
Router for direct addressing of module data in detector data structure.
Data structure for PMT geometry, calibration and status.
Data structure for fit of straight line paralel to z-axis.
static parameter_type pY()
double getT(const JVector3D &pos) const
Get arrival time of Cherenkov light at given position.
static parameter_type pX()
double getDistance(const JVector3D &pos) const
Get distance.
Data structure for fit of straight line in positive z-direction.
static parameter_type pDY()
static parameter_type pDX()
JAxis3D & rotate(const JRotation3D &R)
Rotate axis.
Data structure for position in three dimensions.
JPosition3D & rotate(const JRotation3D &R)
Rotate.
double getZ() const
Get z position.
Template definition of a multi-dimensional oscillation probability interpolation table.
Auxiliary class for a hit with background rate value.
JDirection3D getDirection(const Vec &dir)
Get direction.
JPosition3D getPosition(const Vec &pos)
Get position.
double getQuality(const double chi2, const int NDF)
Get quality of fit.
JFit getFit(const int id, const JMODEL::JString &string)
Get fit parameters of string.
void load(const std::string &file_name, JDetector &detector)
Load detector from input file.
This name space includes all other name spaces (except KM3NETDAQ, KM3NET and ANTARES).
bool qualitySorter(const JFit &first, const JFit &second)
Comparison of fit results.
JFIT::JRegressor< JFIT::JLine3Z, JFIT::JGandalf > JRegressor_t
KM3NeT DAQ data structures and auxiliaries.
Auxiliary class for handling PMT geometry, rate and response.
Template definition of a data regressor of given model.
Auxiliary class for defining the range of iterations of objects.
static counter_type max()
Get maximum counter value.