Logo ROOT   6.08/07
Reference Guide
Quad12F.h
Go to the documentation of this file.
1 // @(#)root/minuit2:$Id$
2 // Authors: M. Winkler, F. James, L. Moneta, A. Zsenei 2003-2005
3 
4 /**********************************************************************
5  * *
6  * Copyright (c) 2005 LCG ROOT Math team, CERN/PH-SFT *
7  * *
8  **********************************************************************/
9 
10 #include "Minuit2/FCNBase.h"
11 
12 namespace ROOT {
13 
14  namespace Minuit2 {
15 
16 
17 class Quad12F : public FCNBase {
18 
19 public:
20 
21  double operator()(const std::vector<double>& par) const {
22 
23  double x = par[0];
24  double y = par[1];
25  double z = par[2];
26  double w = par[3];
27  double x0 = par[4];
28  double y0 = par[5];
29  double z0 = par[6];
30  double w0 = par[7];
31  double x1 = par[8];
32  double y1 = par[9];
33  double z1 = par[10];
34  double w1 = par[11];
35 
36 
37  return ( (1./70.)*(21*x*x + 20*y*y + 19*z*z - 14*x*z - 20*y*z) + w*w + (1./70.)*(21*x0*x0 + 20*y0*y0 + 19*z0*z0 - 14*x0*z0 - 20*y0*z0) + w0*w0 + (1./70.)*(21*x1*x1 + 20*y1*y1 + 19*z1*z1 - 14*x1*z1 - 20*y1*z1) + w1*w1);
38  }
39 
40  double Up() const {return 1.;}
41 
42 private:
43 
44 };
45 
46  } // namespace Minuit2
47 
48 } // namespace ROOT
double par[1]
Definition: unuranDistr.cxx:38
This namespace contains pre-defined functions to be used in conjuction with TExecutor::Map and TExecu...
Definition: StringConv.hxx:21
double Up() const
Error definition of the function.
Definition: Quad12F.h:40
double operator()(const std::vector< double > &par) const
The meaning of the vector of parameters is of course defined by the user, who uses the values of thos...
Definition: Quad12F.h:21
Double_t x[n]
Definition: legend1.C:17
Interface (abstract class) defining the function to be minimized, which has to be implemented by the ...
Definition: FCNBase.h:47
static const double x1[5]
Double_t y[n]
Definition: legend1.C:17
you should not use this method at all Int_t Int_t z
Definition: TRolke.cxx:630