Go to the documentation of this file.
13 #ifndef SimG4Core_TotemRPProtonTransportParametrization_TMultiDimFet_H
14 #define SimG4Core_TotemRPProtonTransportParametrization_TMultiDimFet_H
28 #ifndef ROOT_TVirtualFitter
29 #include "TVirtualFitter.h"
127 virtual Bool_t
Select(
const Int_t *iv);
128 virtual Bool_t
TestFunction(Double_t squareResidual, Double_t dResidur);
138 virtual void AddRow(
const Double_t *
x, Double_t
D, Double_t E = 0);
139 virtual void AddTestRow(
const Double_t *
x, Double_t
D, Double_t E = 0);
143 virtual Double_t
Eval(
const Double_t *
x,
const Double_t *coeff =
nullptr)
const;
195 virtual Double_t
MakeChi2(
const Double_t *coeff =
nullptr);
210 virtual void SetPowers(
const Int_t *powers, Int_t terms);
217 #endif //SimG4Core_TotemRPProtonTransportParametrization_TMultiDimFet_H
Double_t fPrecision
Error from test.
Double_t fTestError
Error from parameterization.
Double_t fChi2
Root mean square of fit.
Double_t fError
Exit code of parameterisation.
uint32_t dimension(pat::CandKinResolution::Parametrization parametrization)
Returns the number of free parameters in a parametrization (3 or 4)
Int_t GetTestSampleSize() const
virtual Bool_t Select(const Int_t *iv)
Int_t GetMaxTerms() const
void SetPowerLimit(Double_t limit=1e-3)
Double_t fMaxResidual
Vector of the final residuals.
Double_t GetMinQuantity() const
Int_t fTestSampleSize
Test sample, independent variables.
void ReducePolynomial(double error)
std::vector< Int_t > fPowerIndex
virtual void MakeHistograms(Option_t *option="A")
virtual Double_t MakeChi2(const Double_t *coeff=nullptr)
TVectorD fOrthCoefficients
Double_t fMinQuantity
Max value of dependent quantity.
std::vector< Int_t > fMaxPowersFinal
Norm of the evaluated functions.
Bool_t IsFolder() const override
Double_t fMaxAngle
Min angle for acepting new function.
Int_t fNVariables
Training sample, independent variables.
Double_t fMinRelativeError
Double_t GetMaxAngle() const
Int_t GetResidualMaxRow() const
Double_t fPowerLimit
maximum powers, ex-array
Double_t GetError() const
const TVectorD * GetTestVariables() const
const TVectorD * GetTestSqError() const
Double_t GetPowerLimit() const
Double_t fSumSqResidual
Row giving min residual.
Double_t GetMinRelativeError() const
std::vector< Int_t > GetPowers() const
Int_t fNCoefficients
Sum of Square residuals.
Double_t GetTestPrecision() const
virtual void MakeCoefficients()
TVectorD fVariables
Sum of squares away from mean.
virtual void MakeRealCode(const char *filename, const char *classname, Option_t *option="")
Double_t GetSumSqQuantity() const
TVectorD fCoefficientsRMS
virtual void MakeParameterization()
virtual void FindParameterization(double precision)
virtual void MakeCandidates()
TVectorD fCoefficients
Model matrix.
Double_t GetMinAngle() const
virtual void MakeCode(const char *functionName="MDF", Option_t *option="")
Double_t fMinResidual
Max redsidual value.
void SetMaxFunctions(Int_t n)
Int_t fParameterisationCode
Chi square of fit.
virtual void MakeMethod(const Char_t *className="MDF", Option_t *option="")
virtual void AddRow(const Double_t *x, Double_t D, Double_t E=0)
Double_t fMeanQuantity
Training sample, error in quantity.
Int_t GetMaxFunctions() const
TVectorD fSqError
Training sample, dependent quantity.
Double_t fTestCorrelationCoeff
Correlation matrix.
Double_t GetPrecision() const
std::vector< Int_t > GetPowerIndex() const
virtual void PrintPolynomialsSpecial(Option_t *option="m") const
TVectorD fTestQuantity
Size of training sample.
virtual Double_t Eval(const Double_t *x, const Double_t *coeff=nullptr) const
TMatrixD fOrthFunctions
max functions to study
Int_t fMaxFunctionsTimesNVariables
maximum powers from fit, ex-array
Int_t GetPolyType() const
std::vector< Int_t > GetMaxPowers() const
std::vector< Int_t > fMaxPowers
Min relative error accepted.
TVectorD fMaxVariables
mean value of independent variables
Int_t fMaxTerms
Max angle for acepting new function.
void SetMinAngle(Double_t angle=1)
Double_t fSumSqQuantity
Min value of dependent quantity.
EMDFPolyType fPolyType
Bit pattern of hisograms used.
virtual Bool_t TestFunction(Double_t squareResidual, Double_t dResidur)
TVectorD fTestVariables
Test sample, Error in quantity.
Int_t fMaxStudy
acceptance code, ex-array
Int_t fMinResidualRow
Row giving max residual.
std::vector< Int_t > fPowers
Int_t fMaxFunctions
Functions evaluated over sample.
void Print(Option_t *option="ps") const override
virtual void MakeNormalized()
Double_t GetResidualSumSq() const
TMatrixD fCorrelationMatrix
Multi Correlation coefficient.
const TVectorD * GetMaxVariables() const
Double_t fCorrelationCoeff
Relative precision of test.
Int_t GetSampleSize() const
Double_t GetMeanQuantity() const
Int_t GetResidualMinRow() const
Double_t fSumSqAvgQuantity
SumSquare of dependent quantity.
const TVectorD * GetMeanVariables() const
Byte_t fHistogramMask
List of histograms.
const TMatrixD * GetCorrelationMatrix() const
virtual void SetPowers(const Int_t *powers, Int_t terms)
Double_t GetSumSqAvgQuantity() const
virtual void AddTestRow(const Double_t *x, Double_t D, Double_t E=0)
void SetMaxTerms(Int_t terms)
Double_t fMinAngle
Size of test sample.
TMatrixD fOrthCurvatureMatrix
The model coefficients.
Double_t fTestPrecision
Relative precision of param.
DecomposeProduct< arg, typename Div::arg > D
virtual Double_t MakeGramSchmidt(Int_t function)
virtual void MakeCorrelation()
void ZeroDoubiousCoefficients(double error)
virtual Double_t EvalFactor(Int_t p, Double_t x) const
const TVectorD * GetVariables() const
void SetMinRelativeError(Double_t error)
const TVectorD * GetMinVariables() const
Int_t GetNVariables() const
void SetMaxAngle(Double_t angle=0)
Int_t GetNCoefficients() const
const TMatrixD * GetFunctions() const
TVectorD fTestSqError
Test sample, dependent quantity.
T angle(T x1, T y1, T z1, T x2, T y2, T z2)
Double_t fRMS
Vector of RMS of coefficients.
void Clear(Option_t *option="") override
Double_t GetMaxQuantity() const
Double_t GetTestError() const
std::string className(const T &t)
virtual TList * GetHistograms() const
std::vector< Int_t > fFunctionCodes
const TVectorD * GetCoefficients() const
TList * fHistograms
Multi Correlation coefficient.
Double_t GetResidualMax() const
Int_t fMaxResidualRow
Min redsidual value.
Int_t GetMaxStudy() const
void SetMaxStudy(Int_t n)
void SetMaxPowers(const Int_t *powers)
const TVectorD * GetTestQuantity() const
const TMultiDimFet & operator=(const TMultiDimFet &in)
TMatrixD fFunctions
Control parameter.
virtual void MakeCoefficientErrors()
Double_t GetResidualMin() const
const TVectorD * GetQuantity() const
const TVectorD * GetSqError() const
std::vector< Int_t > GetFunctionCodes() const
TVectorD fOrthFunctionNorms
As above, but orthogonalised.
virtual Double_t EvalControl(const Int_t *powers)