27 class TMinuit :
public TNamed {
30 TMinuit(
const TMinuit &m);
31 TMinuit& operator=(
const TMinuit &m);
107 Double_t *fMATUvline;
118 Double_t *fSEEKxbest;
123 Double_t *fCOMDplist;
124 Double_t *fPARSplist;
163 Bool_t fGraphicsMode;
173 TString fOrigin[kMAXWARN];
174 TString fWarmes[kMAXWARN];
177 TMethodCall *fMethodCall;
178 void (*fFCN)(Int_t &npar, Double_t *gin, Double_t &f, Double_t *u, Int_t flag);
183 TMinuit(Int_t maxpar);
185 virtual void BuildArrays(Int_t maxpar=15);
186 virtual TObject *Clone(
const char *newname=
"")
const;
187 virtual Int_t Command(
const char *command);
188 virtual TObject *Contour(Int_t npoints=10, Int_t pa1=0, Int_t pa2=1);
189 virtual Int_t DefineParameter( Int_t parNo,
const char *name, Double_t initVal, Double_t initErr, Double_t lowerLimit, Double_t upperLimit );
190 virtual void DeleteArrays();
191 virtual Int_t Eval(Int_t npar, Double_t *grad, Double_t &fval, Double_t *par, Int_t flag);
192 virtual Int_t FixParameter( Int_t parNo );
193 TMethodCall *GetMethodCall()
const {
return fMethodCall;}
194 TObject *GetObjectFit()
const {
return fObjectFit;}
195 Int_t GetMaxIterations()
const {
return fMaxIterations;}
196 virtual Int_t GetNumFixedPars()
const;
197 virtual Int_t GetNumFreePars()
const;
198 virtual Int_t GetNumPars()
const;
199 virtual Int_t GetParameter( Int_t parNo, Double_t ¤tValue, Double_t ¤tError )
const;
200 virtual TObject *GetPlot()
const {
return fPlot;}
201 Int_t GetStatus()
const {
return fStatus;}
202 virtual Int_t Migrad();
203 virtual void mnamin();
204 virtual void mnbins(Double_t a1, Double_t a2, Int_t naa, Double_t &bl, Double_t &bh, Int_t &nb, Double_t &bwid);
205 virtual void mncalf(Double_t *pvec, Double_t &ycalf);
206 virtual void mncler();
207 virtual void mncntr(Int_t ke1, Int_t ke2, Int_t &ierrf);
208 virtual void mncomd(
const char *crdbin, Int_t &icondn);
209 virtual void mncont(Int_t ke1, Int_t ke2, Int_t nptu, Double_t *xptu, Double_t *yptu, Int_t &ierrf);
210 virtual void mncrck(TString crdbuf, Int_t maxcwd, TString &comand, Int_t &lnc
211 , Int_t mxp, Double_t *plist, Int_t &llist, Int_t &ierr, Int_t isyswr);
212 virtual void mncros(Double_t &aopt, Int_t &iercr);
213 virtual void mncuve();
214 virtual void mnderi();
215 virtual void mndxdi(Double_t pint, Int_t ipar, Double_t &dxdi);
216 virtual void mneig(Double_t *a, Int_t ndima, Int_t n, Int_t mits, Double_t *work, Double_t precis, Int_t &ifault);
217 virtual void mnemat(Double_t *emat, Int_t ndim);
218 virtual void mnerrs(Int_t number, Double_t &eplus, Double_t &eminus, Double_t &eparab, Double_t &gcc);
219 virtual void mneval(Double_t anext, Double_t &fnext, Int_t &ierev);
220 virtual void mnexcm(
const char *comand, Double_t *plist, Int_t llist, Int_t &ierflg) ;
221 virtual void mnexin(Double_t *pint);
222 virtual void mnfixp(Int_t iint, Int_t &ierr);
223 virtual void mnfree(Int_t k);
224 virtual void mngrad();
225 virtual void mnhelp(TString comd);
226 virtual void mnhelp(
const char *command=
"");
227 virtual void mnhess();
228 virtual void mnhes1();
229 virtual void mnimpr();
230 virtual void mninex(Double_t *pint);
231 virtual void mninit(Int_t i1, Int_t i2, Int_t i3);
232 virtual void mnlims();
233 virtual void mnline(Double_t *start, Double_t fstart, Double_t *step, Double_t slope, Double_t toler);
234 virtual void mnmatu(Int_t kode);
235 virtual void mnmigr();
236 virtual void mnmnos();
237 virtual void mnmnot(Int_t ilax, Int_t ilax2, Double_t &val2pl, Double_t &val2mi);
238 virtual void mnparm(Int_t k, TString cnamj, Double_t uk, Double_t wk, Double_t a, Double_t b, Int_t &ierflg);
239 virtual void mnpars(TString &crdbuf, Int_t &icondn);
240 virtual void mnpfit(Double_t *parx2p, Double_t *pary2p, Int_t npar2p, Double_t *coef2p, Double_t &sdev2p);
241 virtual void mnpint(Double_t &pexti, Int_t i, Double_t &pinti);
242 virtual void mnplot(Double_t *xpt, Double_t *ypt,
char *chpt, Int_t nxypt, Int_t npagwd, Int_t npagln);
243 virtual void mnpout(Int_t iuext, TString &chnam, Double_t &val, Double_t &err, Double_t &xlolim, Double_t &xuplim, Int_t &iuint)
const;
244 virtual void mnprin(Int_t inkode, Double_t fval);
245 virtual void mnpsdf();
246 virtual void mnrazz(Double_t ynew, Double_t *pnew, Double_t *y, Int_t &jh, Int_t &jl);
247 virtual void mnrn15(Double_t &val, Int_t &inseed);
248 virtual void mnrset(Int_t iopt);
249 virtual void mnsave();
250 virtual void mnscan();
251 virtual void mnseek();
252 virtual void mnset();
253 virtual void mnsimp();
254 virtual void mnstat(Double_t &fmin, Double_t &fedm, Double_t &errdef, Int_t &npari, Int_t &nparx, Int_t &istat);
255 virtual void mntiny(
volatile Double_t epsp1, Double_t &epsbak);
256 Bool_t mnunpt(TString &cfname);
257 virtual void mnvert(Double_t *a, Int_t l, Int_t m, Int_t n, Int_t &ifail);
258 virtual void mnwarn(
const char *copt,
const char *corg,
const char *cmes);
259 virtual void mnwerr();
260 virtual Int_t Release( Int_t parNo );
261 virtual Int_t SetErrorDef( Double_t up );
262 virtual void SetFCN(
void (*fcn)(Int_t &, Double_t *, Double_t &f, Double_t *, Int_t));
263 virtual void SetGraphicsMode(Bool_t mode=kTRUE) {fGraphicsMode = mode;}
264 virtual void SetMaxIterations(Int_t maxiter=500) {fMaxIterations = maxiter;}
265 virtual void SetObjectFit(TObject *obj) {fObjectFit=obj;}
266 virtual Int_t SetPrintLevel( Int_t printLevel=0 );
271 R__EXTERN TMinuit *gMinuit;