Warning, file /include/root/TMVA/MinuitWrapper.h was not indexed
or was modified since last indexation (in which case cross-reference links may be missing, inaccurate or erroneous).
0001
0002
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012
0013
0014
0015
0016
0017
0018
0019
0020
0021
0022
0023
0024
0025 #ifndef ROOT_TMVA_MinuitWrapper
0026 #define ROOT_TMVA_MinuitWrapper
0027
0028
0029
0030
0031
0032
0033
0034
0035
0036 #include "TMinuit.h"
0037 #include "TMVA/IFitterTarget.h"
0038 #include <vector>
0039
0040 class TMinuit;
0041
0042 namespace TMVA {
0043
0044 class IFitterTarget;
0045
0046 class MinuitWrapper : public TMinuit {
0047
0048 public:
0049
0050 MinuitWrapper( IFitterTarget& target, Int_t maxpar);
0051 virtual ~MinuitWrapper() {}
0052
0053 Int_t Eval(Int_t, Double_t*, Double_t&, Double_t*, Int_t) override;
0054 void SetFitterTarget( IFitterTarget& target ) { fFitterTarget = target; }
0055
0056 Int_t ExecuteCommand(const char *command, Double_t *args, Int_t nargs);
0057 void Clear(Option_t * = nullptr) override;
0058 Int_t GetStats (Double_t &amin, Double_t &edm, Double_t &errdef, Int_t &nvpar, Int_t &nparx);
0059 Int_t GetErrors (Int_t ipar, Double_t &eplus, Double_t &eminus, Double_t &eparab, Double_t &globcc);
0060 Int_t SetParameter(Int_t ipar,const char *parname, Double_t value, Double_t verr, Double_t vlow, Double_t vhigh);
0061 TObject *Clone(char const*) const override;
0062
0063 private:
0064
0065 IFitterTarget& fFitterTarget;
0066 std::vector<Double_t> fParameters;
0067 Int_t fNumPar;
0068
0069 ClassDefOverride(MinuitWrapper,0);
0070 };
0071
0072 }
0073
0074 #endif
0075
0076