1#ifndef __JRECONSTRUCTION__JMUONFEATURES__
2#define __JRECONSTRUCTION__JMUONFEATURES__
65 using JFIT::JTimeRange;
83 using JRegressor_t::operator();
127 const storage_type& storage,
128 const int debug = 0) :
132 using namespace JFIT;
138 JRegressor_t::debug =
debug;
141 JRegressor_t::MAXIMUM_ITERATIONS =
NMax;
143 this->parameters.resize(5);
180 for (
const auto&
hit : data) {
198 using namespace JFIT;
217 for (JEvt::const_iterator
track = in.begin();
track != in.end(); ++
track) {
234 for (buffer_type::const_iterator i = data.begin(); i != data.end(); ++i) {
241 buffer.push_back(
hit);
250 for (buffer_type::const_iterator i = buffer.begin(); i != buffer.end(); ++i) {
251 auto it = mapString.find((*i).getModuleID());
Coverage of dynamical detector calibration.
Basic data structure for L0 hit.
Data regression method for JFIT::JLine3Z.
General purpose messaging.
Direct access to module in detector data structure.
Auxiliary class to define a range between two values.
Auxiliary methods to convert data members or return values of member methods of a set of objects to a...
Router for direct addressing of module data in detector data structure.
const JModule & getModule(const JObjectID &id) const
Get module parameters.
Data structure for set of track fit results.
void select(const JSelector_t &selector)
Select fits.
JFit & add(const int type)
Add event to history.
Fit method based on the Levenberg-Marquardt method.
Data structure for fit of straight line paralel to z-axis.
static parameter_type pY()
static parameter_type pX()
static parameter_type pT()
Data structure for fit of straight line in positive z-direction.
static parameter_type pDY()
static parameter_type pDX()
JPosition3D & rotate(const JRotation3D &R)
Rotate.
Template definition of a multi-dimensional oscillation probability interpolation table.
Auxiliary class for a hit with background rate value.
Router for fast addressing of summary data in KM3NETDAQ::JDAQSummaryslice data structure as a functio...
double getRate(const JDAQPMTIdentifier &id) const
Get rate.
const JDAQModuleIdentifier & getModuleIdentifier() const
Get Module identifier.
const JDAQPMTIdentifier & getPMTIdentifier() const
Get PMT identifier.
static const int JMUONFEATURES_NUMBER_OF_LINES
number of lines see JRECONSTRUCTION::JMuonFeatures
static const int JSTART_LENGTH_METRES
distance between projected positions on the track of optical modules for which the response does not ...
static const int JMUONFEATURES_NUMBER_OF_HITS
number of hits see JRECONSTRUCTION::JMuonFeatures
static const int JMUONFEATURES_NUMBER_OF_DOMS
number of doms see JRECONSTRUCTION::JMuonFeatures
JMODEL::JString getString(const JFit &fit)
Get model parameters of string.
Auxiliary classes and methods for linear and iterative data regression.
JTOOLS::JRange< double > JZRange
Auxiliary classes and methods for 3D geometrical objects and operations.
const array_type< JValue_t > & make_array(const JValue_t(&array)[N])
Method to create array of values.
size_t getCount(const array_type< T > &buffer, const JCompare_t &compare)
Count number of unique values.
This name space includes all other name spaces (except KM3NETDAQ, KM3NET and ANTARES).
JPosition3D getPosition(const JFit &fit)
Get position.
void copy(const JFIT::JEvt::const_iterator __begin, const JFIT::JEvt::const_iterator __end, Evt &out)
Copy tracks.
bool qualitySorter(const JFit &first, const JFit &second)
Comparison of fit results.
JDirection3D getDirection(const JFit &fit)
Get direction.
Auxiliary classes and methods for triggering.
Data structure for coverage of detector by dynamical calibrations.
Auxiliary class for historical event.
Auxiliary class to test history.
Template definition of a data regressor of given model.
Wrapper class to add features after the final fit of muon trajectory.
JRegressor< JLine3Z, JGandalf > JRegressor_t
JMuonFeatures(const JMuonGandalfParameters_t ¶meters, const storage_type &storage, const int debug=0)
Constructor.
JEvt operator()(const input_type &input)
Fit function.
std::vector< hit_type > buffer_type
input_type getInput(const JModuleRouter &router, const JSummaryRouter &summary, const JDAQEvent &event, const JEvt &in, const coverage_type &coverage) const
Get input data.
Data structure for fit parameters.
double TMin_ns
minimal time w.r.t. Cherenkov hypothesis [ns]
double roadWidth_m
road width [m]
double TMax_ns
maximal time w.r.t. Cherenkov hypothesis [ns]
double VMax_npe
maximum number of of photo-electrons
double ZMax_m
maximal z-positon [m]
double ZMin_m
minimal z-positon [m]
int NMax
maximum number of iterations
size_t numberOfPrefits
number of prefits