class to handle Muon Gandalf reconstruction first, two other angular reconstructionS should be ran : JMuonPrefit and JMuonSimplex  
 More...
#include <JMuonGandalf.hh>
class to handle Muon Gandalf reconstruction first, two other angular reconstructionS should be ran : JMuonPrefit and JMuonSimplex 
Definition at line 47 of file JMuonGandalf.hh.
 
◆ JRegressor_t
◆ JMuonGandalf() [1/2]
  
  
      
        
          | JFIT::JMuonGandalf::JMuonGandalf  | 
          ( | 
           | ) | 
           | 
         
       
   | 
  
inline   | 
  
 
 
◆ JMuonGandalf() [2/2]
Parameterized constructor. 
- Parameters
 - 
  
    | router | JSharedPointer of JModuleRouter, this is built via detector file.  | 
    | parameters | struct that holds default-optimized parameters for the reconstruction, for ARCA and ORCA configuration. These default parameters could be found in $JPP_DATA.  | 
    | pdfFile | PDF file descriptor  | 
  
   
Definition at line 72 of file JMuonGandalf.hh.
   79       JRegressor_t::T_ns.setRange(-50.0, +450.0);
 
   80       JRegressor_t::Vmax_npe           =   10.0;   
 
   81       JRegressor_t::MAXIMUM_ITERATIONS = 10000;
 
 
 
 
◆ ~JMuonGandalf()
  
  
      
        
          | JFIT::JMuonGandalf::~JMuonGandalf  | 
          ( | 
           | ) | 
           | 
         
       
   | 
  
inline   | 
  
 
 
◆ getJEvt()
Declaration of Member function that actually performs the reconstruction. 
Member function definition.
- Parameters
 - 
  
    | timeSlice | which is contructed via a JDAQEvent  | 
    | InPreFits | input JEvt which is a container of prefits, normally JMuonSimplex  | 
    | OutFits | non const (output) JEvt.  | 
  
   
Definition at line 133 of file JMuonGandalf.hh.
  137   if ( InPreFits.empty() ) 
return;
 
  154   JEvt::iterator __end = InPreFits.end();
 
  157     __end = std::partition( InPreFits.begin(), __end, 
 
  162   if (InPreFits.begin() != __end) {
 
  164     std::copy(InPreFits.begin(), __end, std::back_inserter(OutFits));
 
  166     if (numberOfPrefits > 0) {
 
  167       std::advance(__end = InPreFits.begin(), std::min(numberOfPrefits, OutFits.size()));
 
  170     std::partial_sort(InPreFits.begin(), __end, InPreFits.end(), 
qualitySorter);
 
  172     __end = std::partition(InPreFits.begin(), __end, 
 
  178     buildL0(timeSlice, *
router_, std::back_inserter(dataL0));
 
  182       for (JEvt::const_iterator track = InPreFits.begin(); track != __end; ++track) {
 
  193         for (JDataL0_t::const_iterator i = dataL0.begin(); i != dataL0.end(); ++i) {
 
  206         std::sort(data.begin(), data.end(), 
compare);
 
  208         JDataW0_t::iterator __end = std::unique( data.begin(), data.end(), 
 
  209                                                  std::equal_to<KM3NETDAQ::JDAQPMTIdentifier>()
 
  218           if (track->getE() > 0.1)
 
  223           const double chi2 = 
fitRegresor_(JLine3Z(tz), data.begin(), __end);
 
  229           const double energy(0);
 
 
 
 
◆ compare()
Compare hits by PMT identifier and time. 
- Parameters
 - 
  
    | first | first hit  | 
    | second | second hit  | 
  
   
- Returns
 - true if first before second; else false 
 
Definition at line 116 of file JMuonGandalf.hh.
  119       if (std::equal_to<KM3NETDAQ::JDAQPMTIdentifier>()(first, second))
 
  120         return std::less<JTRIGGER::JHit>()(first, second);
 
  122         return std::less<KM3NETDAQ::JDAQPMTIdentifier>()(first, second);
 
 
 
 
◆ router_
◆ parameters_
◆ fitRegresor_
The documentation for this class was generated from the following file:
 
Auxiliary class for a hit with background rate value.
 
number of iterations from JGandalf.cc
 
counter_type advance(counter_type &counter, const counter_type value, const counter_type limit=std::numeric_limits< counter_type >::max())
Advance counter.
 
static bool compare(const JTRIGGER::JHitL0 &first, const JTRIGGER::JHitL0 &second)
Compare hits by PMT identifier and time.
 
JRegressor_t fitRegresor_
 
angular resolution [rad] from JGandalf.cc
 
std::vector< T >::difference_type distance(typename std::vector< T >::const_iterator first, typename PhysicsEvent::const_iterator< T > second)
Specialisation of STL distance.
 
static parameter_type pY()
 
void copy(const Head &from, JHead &to)
Copy header from from to to.
 
JPosition3D & rotate(const JRotation3D &R)
Rotate.
 
static parameter_type pT()
 
Auxiliary class to match data points with given model.
 
bool qualitySorter(const JFit &first, const JFit &second)
Comparison of fit results.
 
Template definition of a data regressor of given model.
 
Auxiliary class to test history.
 
control parameter from JGandalf.cc
 
std::size_t numberOfPrefits
 
number of hits from JGandalf.cc
 
angular resolution [rad] from JGandalf.cc
 
JFIT::JMuonGandalfParameters_t parameters_
 
Data structure for fit of straight line paralel to z-axis.
 
Auxiliary class to test history.
 
static parameter_type pDX()
 
static parameter_type pDY()
 
static parameter_type pX()
 
JFit getFit(const JHistory &history, const JTrack3D &track, const double Q, const int NDF, const double energy=0.0, const int status=0)
Get fit.
 
Container for historical events.
 
double getQuality(const double chi2, const int NDF)
Get quality of fit.
 
JPosition3D getPosition(const JFit &fit)
Get position.
 
JLANG::JSharedPointer< const JDETECTOR::JModuleRouter > router_
 
JDirection3D getDirection(const JFit &fit)
Get direction.