1 #ifndef _MdLDFFinderAG_VMinMethodFunctor_h_
2 #define _MdLDFFinderAG_VMinMethodFunctor_h_
12 #include <mevt/MEvent.h>
13 #include <mdet/MDetector.h>
14 #include <utl/AxialVector.h>
16 #include <boost/tuple/tuple.hpp>
22 #include <Minuit2/MnMinimize.h>
23 #include <Minuit2/MnHesse.h>
24 #include <Minuit2/FCNBase.h>
25 #include <Minuit2/FunctionMinimum.h>
26 #include <Minuit2/MnUserParameters.h>
27 #include <Minuit2/MnUserCovariance.h>
28 #include <Minuit2/MnPrint.h>
30 namespace MdLDFFinderAG {
72 virtual double operator()(
const std::vector<double>& par )
const = 0;
73 virtual double Up()
const = 0;
74 ROOT::Minuit2::FunctionMinimum
Minimize( std::vector<double>& par, std::vector<double>& epar,
const std::vector<bool>& fpar )
const;
121 #endif // _MdLDFFinderAG_VMinMethodFunctor_h_
AxialVector cross(const Vector &l, const Vector &r)
vector cross product
void SetAxis(utl::Vector axis)
void SetSilentCounterList(CounterList cl)
unsigned int fSilentLimit
CounterList fCandidateCounters
void SetCandidateCounterList(CounterList cl)
ROOT::Minuit2::FunctionMinimum Minimize(std::vector< double > &par, std::vector< double > &epar, const std::vector< bool > &fpar) const
double DistanceInShowerPlane(const utl::Vector v) const
boost::shared_ptr< const CoordinateTransformer > CoordinateSystemPtr
Shared pointer for coordinate systems.
utl::CoordinateSystemPtr siteCS
std::vector< mevt::Counter * > CounterListBase
CounterList fSilentCounters
const VLDFFunctor * fLDFunction
Common interface for functors performing the muon LDF fitting.
double CalculateSilentLikelihood(const std::vector< double > &par) const
Likelihood of silent counters.
friend std::ostream & operator<<(std::ostream &os, const CounterList &dt)
virtual double operator()(const std::vector< double > &par) const =0
Perform the actual count.
utl::Vector GetAxis() const
virtual double Up() const =0
virtual ~VMinMethodFunctor()
Meant to be used as base class: virtual destructor.
Common interface for functors performing the muon LDF fitting.