TGo4FitModelGaussN Class Reference

N-dimensional gaussian peak. More...

#include <TGo4FitModelGaussN.h>

Inheritance diagram for TGo4FitModelGaussN:

TGo4FitModel TGo4FitComponent TGo4FitParsList TGo4FitSlotList TGo4FitNamed List of all members.

Public Member Functions

 TGo4FitModelGaussN ()
 Default constructor.
 TGo4FitModelGaussN (const char *iName, Int_t iNDimension=3)
 Creates TGo4FitModelGaussN model with given name.
virtual ~TGo4FitModelGaussN ()
 Destroys TGo4FitModelGaussN object.
Int_t GetAxisNumbers ()
 Returns number of dimensions (number of axises), where gaussian will be build.
Bool_t SetAxisNumbers (Int_t naxis)
 Sets number of axises (dimensions), where gaussian will be build.
Int_t GetAxisForIndex (Int_t indx)
 Gets axis number (0 - x-axis, 1 - y-axis) for specified dimension of gaussian.
void SetAxisForIndex (Int_t indx, Int_t axis)
 Change axis number for specified index (dimension) of gaussian.
Bool_t ResortIndexes (Int_t leaveaxis=-1)
 Checks duplicates in axis numbers, associated to different gaussian dimensions.
void FillMuVector (TVectorD &Mu)
 Fills vector of gaussian position from parameters values.
void FillSigmaMatrix (TMatrixD &Sigma)
 Fill covariance matrix from parameters values.
virtual void Print (Option_t *option) const
 Print information on standard output.
virtual Bool_t BeforeEval (Int_t)
 Prepares (if necesary) some intermediate variables to be able calculate values of model via EvalN() function.
virtual Double_t EvalN (const Double_t *v)
 Calculates value of model according current parameters values and provided axes values.

Protected Member Functions

TString GetPosParName (Int_t naxis)
TString GetWidthParName (Int_t naxis)
TString GetCovarParName (Int_t naxis1, Int_t naxis2)
virtual Int_t GetPosParIndex (Int_t naxis)
 Return index of parameter (if exist), which represent position of model for given axis.
virtual Int_t GetWidthParIndex (Int_t naxis)
 Return index of parameter (if exist), which represent width of model component for given axis.
virtual void AfterEval ()
 Clear buffers, which were created by BeforeEval() method.

Protected Attributes

TArrayI fxIndexes
 Array of axis indexes, where n-dim gaussian will be build.

Private Attributes

Int_t Par_ndim
 Temporary variable for EvalN() function.
Int_t * Par_indx
 Temporary variable for EvalN() function.
TVectorD * Vect_mu
 Temporary variable for EvalN() function.
TMatrixD * Matr_sig
 Temporary variable for EvalN() function.
TVectorD * Vect_x
 Temporary variable for EvalN() function.
TVectorD * Vect_dx
 Temporary variable for EvalN() function.

Detailed Description

N-dimensional gaussian peak.

Has following parameters: "Ampl" - amplitude; "Pos0", "Pos1", ... - line positions; "Width0", "Width1", "... - line widths; "Cov0_1", "Cov0_2", ..., "Cov1_2", "Cov1_3", ... - covariations parameters. To create instance of this model:

TGo4FitModelGaussN *g = new TGo4FitModelGaussN("Gauss", 2);

where first parameter - name of model component, second - number of dimensions.

Definition at line 37 of file TGo4FitModelGaussN.h.


Constructor & Destructor Documentation

TGo4FitModelGaussN::TGo4FitModelGaussN (  ) 

Default constructor.

Definition at line 20 of file TGo4FitModelGaussN.cxx.

TGo4FitModelGaussN::TGo4FitModelGaussN ( const char *  iName,
Int_t  iNDimension = 3 
)

Creates TGo4FitModelGaussN model with given name.

Number of dimensions also can be specified (default = 3).

Definition at line 24 of file TGo4FitModelGaussN.cxx.

References fxIndexes, GetCovarParName(), GetPosParName(), GetWidthParName(), and TGo4FitComponent::NewParameter().

TGo4FitModelGaussN::~TGo4FitModelGaussN (  )  [virtual]

Destroys TGo4FitModelGaussN object.

Definition at line 40 of file TGo4FitModelGaussN.cxx.

References Matr_sig, Vect_dx, Vect_mu, and Vect_x.


Member Function Documentation

Int_t TGo4FitModelGaussN::GetAxisNumbers (  )  [inline]

Returns number of dimensions (number of axises), where gaussian will be build.

Definition at line 59 of file TGo4FitModelGaussN.h.

References fxIndexes.

Referenced by SetAxisNumbers().

Bool_t TGo4FitModelGaussN::SetAxisNumbers ( Int_t  naxis  ) 

Sets number of axises (dimensions), where gaussian will be build.

Should be more than 0.

Definition at line 70 of file TGo4FitModelGaussN.cxx.

References TGo4FitParsList::FindPar(), fxIndexes, GetAxisNumbers(), GetCovarParName(), TGo4FitParsList::GetParIndex(), GetPosParName(), GetWidthParName(), TGo4FitComponent::NewParameter(), and TGo4FitParsList::RemovePar().

Int_t TGo4FitModelGaussN::GetAxisForIndex ( Int_t  indx  )  [inline]

Gets axis number (0 - x-axis, 1 - y-axis) for specified dimension of gaussian.

Can be, that first dimension of gaussian assign to z-axis, 2-nd dimension to x-axis, 3-rd dimension to y-axis. Default (created in constructor) is normal numbering, when number of dimension is equal to number of axis.

Definition at line 71 of file TGo4FitModelGaussN.h.

References fxIndexes.

void TGo4FitModelGaussN::SetAxisForIndex ( Int_t  indx,
Int_t  axis 
) [inline]

Change axis number for specified index (dimension) of gaussian.

Definition at line 76 of file TGo4FitModelGaussN.h.

References fxIndexes.

Bool_t TGo4FitModelGaussN::ResortIndexes ( Int_t  leaveaxis = -1  ) 

Checks duplicates in axis numbers, associated to different gaussian dimensions.

leaveaixs (if specified) sets dimension number, which will be unchanged.

Definition at line 115 of file TGo4FitModelGaussN.cxx.

References fxIndexes.

void TGo4FitModelGaussN::FillMuVector ( TVectorD &  Mu  ) 

Fills vector of gaussian position from parameters values.

Definition at line 150 of file TGo4FitModelGaussN.cxx.

References fxIndexes, and TGo4FitParsList::GetPar().

Referenced by BeforeEval().

void TGo4FitModelGaussN::FillSigmaMatrix ( TMatrixD &  Sigma  ) 

Fill covariance matrix from parameters values.

Definition at line 157 of file TGo4FitModelGaussN.cxx.

References fxIndexes, and TGo4FitParsList::GetPar().

Referenced by BeforeEval().

void TGo4FitModelGaussN::Print ( Option_t *  option  )  const [virtual]

Print information on standard output.

Reimplemented from TGo4FitModel.

Definition at line 212 of file TGo4FitModelGaussN.cxx.

References fxIndexes, and TGo4FitModel::Print().

Bool_t TGo4FitModelGaussN::BeforeEval ( Int_t   )  [virtual]

Prepares (if necesary) some intermediate variables to be able calculate values of model via EvalN() function.

Number of axis, which will be used in evaluations, should be specified.

Reimplemented from TGo4FitModel.

Definition at line 172 of file TGo4FitModelGaussN.cxx.

References AfterEval(), FillMuVector(), FillSigmaMatrix(), fxIndexes, Matr_sig, Par_indx, Par_ndim, Vect_dx, Vect_mu, and Vect_x.

Double_t TGo4FitModelGaussN::EvalN ( const Double_t *  v  )  [virtual]

Calculates value of model according current parameters values and provided axes values.

BeforeEval(), EvalN() & AfterEval() virtual methods provides general interface, where user-specific code should be situated.

Reimplemented from TGo4FitModel.

Definition at line 195 of file TGo4FitModelGaussN.cxx.

References Matr_sig, Par_indx, Par_ndim, Vect_dx, Vect_mu, and Vect_x.

TString TGo4FitModelGaussN::GetPosParName ( Int_t  naxis  )  [protected]

Definition at line 47 of file TGo4FitModelGaussN.cxx.

Referenced by SetAxisNumbers(), and TGo4FitModelGaussN().

TString TGo4FitModelGaussN::GetWidthParName ( Int_t  naxis  )  [protected]

Definition at line 54 of file TGo4FitModelGaussN.cxx.

Referenced by SetAxisNumbers(), and TGo4FitModelGaussN().

TString TGo4FitModelGaussN::GetCovarParName ( Int_t  naxis1,
Int_t  naxis2 
) [protected]

Definition at line 61 of file TGo4FitModelGaussN.cxx.

Referenced by SetAxisNumbers(), and TGo4FitModelGaussN().

Int_t TGo4FitModelGaussN::GetPosParIndex ( Int_t  naxis  )  [protected, virtual]

Return index of parameter (if exist), which represent position of model for given axis.

Reimplemented from TGo4FitModel.

Definition at line 138 of file TGo4FitModelGaussN.cxx.

References fxIndexes.

Int_t TGo4FitModelGaussN::GetWidthParIndex ( Int_t  naxis  )  [protected, virtual]

Return index of parameter (if exist), which represent width of model component for given axis.

Reimplemented from TGo4FitModel.

Definition at line 144 of file TGo4FitModelGaussN.cxx.

References fxIndexes.

void TGo4FitModelGaussN::AfterEval (  )  [protected, virtual]

Clear buffers, which were created by BeforeEval() method.

Reimplemented from TGo4FitModel.

Definition at line 205 of file TGo4FitModelGaussN.cxx.

References Matr_sig, Vect_dx, Vect_mu, and Vect_x.

Referenced by BeforeEval().


Member Data Documentation

TArrayI TGo4FitModelGaussN::fxIndexes [protected]

Array of axis indexes, where n-dim gaussian will be build.

Definition at line 115 of file TGo4FitModelGaussN.h.

Referenced by BeforeEval(), FillMuVector(), FillSigmaMatrix(), GetAxisForIndex(), GetAxisNumbers(), GetPosParIndex(), GetWidthParIndex(), Print(), ResortIndexes(), SetAxisForIndex(), SetAxisNumbers(), and TGo4FitModelGaussN().

Int_t TGo4FitModelGaussN::Par_ndim [private]

Temporary variable for EvalN() function.

Definition at line 122 of file TGo4FitModelGaussN.h.

Referenced by BeforeEval(), and EvalN().

Int_t* TGo4FitModelGaussN::Par_indx [private]

Temporary variable for EvalN() function.

Definition at line 128 of file TGo4FitModelGaussN.h.

Referenced by BeforeEval(), and EvalN().

TVectorD* TGo4FitModelGaussN::Vect_mu [private]

Temporary variable for EvalN() function.

Definition at line 134 of file TGo4FitModelGaussN.h.

Referenced by AfterEval(), BeforeEval(), EvalN(), and ~TGo4FitModelGaussN().

TMatrixD* TGo4FitModelGaussN::Matr_sig [private]

Temporary variable for EvalN() function.

Definition at line 140 of file TGo4FitModelGaussN.h.

Referenced by AfterEval(), BeforeEval(), EvalN(), and ~TGo4FitModelGaussN().

TVectorD* TGo4FitModelGaussN::Vect_x [private]

Temporary variable for EvalN() function.

Definition at line 146 of file TGo4FitModelGaussN.h.

Referenced by AfterEval(), BeforeEval(), EvalN(), and ~TGo4FitModelGaussN().

TVectorD* TGo4FitModelGaussN::Vect_dx [private]

Temporary variable for EvalN() function.

Definition at line 152 of file TGo4FitModelGaussN.h.

Referenced by AfterEval(), BeforeEval(), EvalN(), and ~TGo4FitModelGaussN().


The documentation for this class was generated from the following files:
Generated on Thu Oct 28 15:54:21 2010 for Go4-Fitpackagev4.04-2 by  doxygen 1.5.1