Re: [ROOT] TMultiDimFit

From: Rene Brun (Rene.Brun@cern.ch)
Date: Tue Aug 24 2004 - 14:37:57 MEST


Hi Tomasz,

The current TMultiDimFit defines the following interface and Set functions

 -In the constructor, you can specify a parametrisation with:
  enum EMDFPolyType {
    kMonomials,
    kChebyshev,
    kLegendre
  };

 -You can use the following setters;
   SetMaxAngle(Double_t angle=0);
   SetMaxFunctions(Int_t n) { fMaxFunctions = n; }
   SetMaxPowers(const Int_t *powers);
   SetMaxStudy(Int_t n) { fMaxStudy  = n; }
   SetMaxTerms(Int_t terms) { fMaxTerms = terms; }
   SetMinAngle(Double_t angle=1);
   SetPowerLimit(Double_t limit=1e-3);
   SetPowers(const Int_t *powers, Int_t terms);


More sophisticated selections can be done by overloading
Bool_t TMultiDimFit::Select(const Int_t *)
{
  // Selection method. User can override this method for specialized
  // selection of acceptable functions in fit. Default is to select
  // all. This message is sent during the build-up of the function
  // candidates table once for each set of powers in
  // variables. Notice, that the argument array contains the powers
  // PLUS ONE. For example, to De select the function
  //     f = x1^2 * x2^4 * x3^5,
  // this method should return kFALSE if given the argument
  //     { 3, 4, 6 }
  return kTRUE;
}


Rene Brun

Tomasz Bold wrote:
> 
> Dear ROOTers,
>         Is there possible to further constraint number of functions in
> TMultiDimFit. I do not want to see in the fit the functions like:
> x[0]*x[1]^2 etc. I want only polynomials if the form x[0], x[0]^2 , x[1],
> x[1]^2.
> 
> I know that such stated problem is simpler but... I still would be happy
> to use TMultiDimFit.
> 
> Regards,
>         Tomasz Bold
> 
> --------------------------------------
> Tomasz Bold
> mail me:
> bold@ftj.agh.edu.pl,
> Tomasz.Bold@cern.ch
> Tomasz.Bold@desy.de
> or call:
> +48 12 617 4729 (AGH)
> +48 12 662 8023 (IFJ)
> -------------------------------------



This archive was generated by hypermail 2b29 : Sun Jan 02 2005 - 05:50:09 MET