Go to the documentation of this file. 1 #ifndef CombinedKinematicConstraintT_H
2 #define CombinedKinematicConstraintT_H
16 template<
class TupleType,
size_t N>
26 static void call(TupleType
const &
t,
F f)
35 template<
class TupleType>
42 static void call(TupleType
const &,
F)
46 template<
class TupleType,
typename F>
52 template<
class TupleType,
typename F>
64 typedef typename std::tuple_element<
N-1,TupleType>
::type Elem;
68 template<
class TupleType>
89 ROOT::Math::SVector<double, DIM> &
ret;
97 template<
int DIM,
int NTRK>
100 ROOT::Math::SMatrix<double, DIM, 7*NTRK> &
ret;
104 ret.Place_at(
cs.parametersDerivative(),this->
offset,0);
111 ROOT::Math::SMatrix<double, DIM, 3> &
ret;
115 ret.Place_at(
cs.positionDerivative(),this->
offset,0);
135 template<
class TupleType,
int NTRK >
157 virtual void init(
const std::vector<KinematicState>& states,
160 std::bind(&
base::init,std::placeholders::_1,std::ref(states),std::ref(
point), std::ref(mf)));
virtual int numberOfEquations() const =0
static void call(TupleType const &t, F f)
ROOT::Math::SMatrix< double, DIM, 7 *NTRK > & ret
void iterate_tuple(TupleType &t, F f)
CombinedKinematicConstraintT(Constraints const &iconstraints)
unique_ptr< ClusterSequence > cs
void operator()(C const &cs)
void fillParametersDerivative() const
ROOT::Math::SMatrix< double, DIM, 3 > positionDerivativeType
super::parametersDerivativeType parametersDerivativeType
static uInt32 F(BLOWFISH_CTX *ctx, uInt32 x)
parametersDerivativeType & jac_d() const
super::positionDerivativeType positionDerivativeType
ROOT::Math::SMatrix< double, DIM, 3 > & ret
ROOT::Math::SVector< double, DIM > valueType
virtual void init(const std::vector< KinematicState > &states, const GlobalPoint &point, const GlobalVector &mf)=0
positionDerivativeType & jac_e() const
PlaceParDer(ROOT::Math::SMatrix< double, DIM, 7 *NTRK > &iret)
static void call(TupleType &t, F f)
virtual int numberOfEquations() const
PlacePosDer(ROOT::Math::SMatrix< double, DIM, 3 > &iret)
virtual void init(const std::vector< KinematicState > &states, const GlobalPoint &point, const GlobalVector &mf)
void operator()(C const &cs)
ROOT::Math::SMatrix< double, DIM, 7 *NTRK > parametersDerivativeType
MultiTrackKinematicConstraintBaseT base
virtual CombinedKinematicConstraintT * clone() const
void operator()(C const &cs)
ROOT::Math::SVector< double, DIM > & ret
PlaceValue(ROOT::Math::SVector< double, DIM > &iret)
void fillPositionDerivative() const
static void call(TupleType const &, F)
static void call(TupleType &, F)
*vegas h *****************************************************used in the default bin number in original ***version of VEGAS is ***a higher bin number might help to derive a more precise ***grade subtle point
super::valueType valueType
std::tuple_element< N-1, TupleType >::type Elem
MultiTrackKinematicConstraintT< NTRK, combinedConstraintHelpers::totDim< TupleType >::nDim > super