GSI Object Oriented Online Offline (Go4)  GO4-6.3.0
Public Types | Public Member Functions | Protected Member Functions | Protected Attributes | Private Member Functions | Private Attributes | Friends | List of all members
TGo4FitData Class Reference

#include <TGo4FitData.h>

+ Inheritance diagram for TGo4FitData:

Public Types

enum  { dtHistogram = 1, dtGraph = 2 }
 

Public Member Functions

 TGo4FitData ()
 
 TGo4FitData (const char *iName, const char *iTitle, Int_t iDataType=dtHistogram, Bool_t AddAmpl=kFALSE)
 
virtual ~TGo4FitData ()
 
Int_t GetDataType () const
 
Bool_t GetUseBinScale () const
 
void SetUseBinScale (Bool_t iUseBinScale)
 
Bool_t CanAmplTouch () override
 
Int_t GetSigmaSource () const
 
Double_t GetSigmaValue () const
 
void SetSigmaSource (Int_t TakeFrom, Double_t SigmaValue=1.)
 
void SetSigmaValue (Double_t SigmaValue)
 
void SetExcludeLessThen (Double_t limit=0.)
 
Double_t GetExcludeLessThen () const
 
Bool_t SetNumberOfTransSlots (Int_t nslots)
 
Int_t GetNumberOfTransSlots () const
 
TGo4FitSlotGetAxisTransSlot (Int_t nslot) const
 
TGo4FitAxisTransGetAxisTrans (Int_t nslot) const
 
void SetAxisTrans (Int_t nslot, TGo4FitAxisTrans *Trans, Bool_t TransOwned=kFALSE)
 
void AddAxisTrans (TGo4FitAxisTrans *Trans, Bool_t TransOwned=kFALSE)
 
void SetAxisTransNeeded (Int_t nslot, Bool_t iNeeded=kFALSE)
 
virtual Bool_t IsAnyDataTransform () const
 
virtual std::unique_ptr< TGo4FitDataIterMakeIter ()
 
TObject * CreateDrawObject (const char *ObjName)
 
Bool_t DefineScaleMinMax (Int_t naxis, Double_t &min, Double_t &max)
 
Int_t DefineDimensions ()
 
Int_t DefineBinsSize ()
 
Bool_t IsCompatibleData (TGo4FitData *data)
 
void ApplyRangesForModelMask (TGo4FitComponent *model, Char_t *ModelMask)
 
void FillSlotList (TSeqCollection *list) override
 
void Print (Option_t *option="") const override
 
- Public Member Functions inherited from TGo4FitComponent
 TGo4FitComponent ()
 
 TGo4FitComponent (const char *iName, const char *iTitle)
 
virtual ~TGo4FitComponent ()
 
TGo4FitParameterGetAmplPar ()
 
const char * GetAmplName ()
 
const char * GetAmplFullName ()
 
Double_t GetAmplValue ()
 
void SetAmplValue (Double_t iAmpl)
 
Double_t GetAmplError ()
 
void SetAmplError (Double_t iError)
 
Bool_t MakeAmpl (Bool_t isFixed=kFALSE)
 
Bool_t RemoveAmpl ()
 
void SetRange (Int_t naxis, Double_t min, Double_t max)
 
void ExcludeRange (Int_t naxis, Double_t min, Double_t max)
 
void SetRangeMin (Int_t naxis, Double_t value)
 
void SetRangeMax (Int_t naxis, Double_t value)
 
void AddRangeCut (TCutG *cut, Bool_t exclude=kFALSE)
 
void ClearRanges (Int_t naxis=-1)
 
Bool_t IsAnyRangeLimits () const
 
Bool_t GetRangeMin (Int_t naxis, Double_t &value) const
 
Bool_t GetRangeMax (Int_t naxis, Double_t &value) const
 
Int_t GetNumRangeCondition () const
 
void GetRangeCondition (Int_t n, Int_t &typ, Int_t &naxis, Double_t &left, Double_t &right) const
 
void SetRangeCondition (Int_t n, Int_t typ, Int_t naxis, Double_t left, Double_t right)
 
void AddRangeCondition (Int_t typ, Int_t naxis, Double_t left, Double_t right)
 
void RemoveRangeCondition (Int_t n)
 
Int_t GetNumRangeCut () const
 
TCutG * GetRangeCut (Int_t n) const
 
Bool_t IsRangeCutExcluding (Int_t n) const
 
void SetRangeCutExcluding (Int_t n, Bool_t exclude=kTRUE)
 
void RemoveRangeCut (Int_t n)
 
Bool_t CheckRangeConditions (const Double_t *values, Int_t numaxis)
 
void CollectParsTo (TGo4FitParsList &list) override
 
void SetUseBuffers (Bool_t iUse)
 
Bool_t GetUseBuffers () const
 
void Print (Option_t *option="") const override
 
- Public Member Functions inherited from TGo4FitParsList
 TGo4FitParsList ()
 
 TGo4FitParsList (Bool_t IsParsOwned)
 
 TGo4FitParsList (const char *Name, const char *Title, Bool_t IsParsOwned)
 
virtual ~TGo4FitParsList ()
 
virtual Int_t NumPars ()
 
TGo4FitParameterGetPar (Int_t n)
 
Int_t GetParIndex (const TGo4FitParameter *par)
 
TGo4FitParameterFindPar (const char *ParName)
 
TGo4FitParameterFindPar (const char *OwnerFullName, const char *ParName)
 
TGo4FitParameterFindPar (TGo4FitParameter *par)
 
Double_t GetParValue (const char *ParName)
 
Bool_t SetParValue (const char *ParName, Double_t iValue)
 
void GetParsValues (Double_t *pars)
 
void SetParsValues (Double_t *pars)
 
Double_t GetParError (const char *ParName)
 
Bool_t SetParError (const char *ParName, Double_t iError)
 
virtual Bool_t SetParFixed (const char *ParName, Bool_t iFixed=kTRUE)
 
virtual Bool_t GetParFixed (const char *ParName)
 
Int_t NumFixedPars ()
 
Int_t NumFreePars ()
 
virtual Bool_t SetParRange (const char *ParName, Double_t RangeMin, Double_t RangeMax)
 
virtual Bool_t GetParRange (const char *ParName, Double_t &RangeMin, Double_t &RangeMax)
 
virtual Bool_t SetParEpsilon (const char *ParName, Double_t Epsilon)
 
virtual Bool_t GetParEpsilon (const char *ParName, Double_t &Epsilon)
 
void SetParName (Int_t n, const char *name)
 
const char * GetParName (Int_t n)
 
const char * GetParFullName (Int_t n)
 
void SetParsNames (const char *name0="Par0", const char *name1="Par1", const char *name2="Par2", const char *name3="Par3", const char *name4="Par4", const char *name5="Par5", const char *name6="Par6", const char *name7="Par7", const char *name8="Par8", const char *name9="Par9")
 
void SetParsValues (Double_t par0=0., Double_t par1=0., Double_t par2=0., Double_t par3=0., Double_t par4=0., Double_t par5=0., Double_t par6=0., Double_t par7=0., Double_t par8=0., Double_t par9=0.)
 
virtual void MemorizePars ()
 
virtual bool CanRollbackPars ()
 
virtual void RememberPars ()
 
Bool_t IsAllParsFixed ()
 
TGo4FitParameterCreatePar (const char *ParName, const char *Title, Double_t iValue=0)
 
Bool_t RemovePar (const char *name)
 
Bool_t RemovePar (TGo4FitParameter *par)
 
void Print (Option_t *option="") const override
 
void PrintPars () const
 
void ClearPars ()
 
- Public Member Functions inherited from TGo4FitNamed
 TGo4FitNamed ()
 
 TGo4FitNamed (const char *Name, const char *Title, TNamed *Owner=nullptr)
 
virtual ~TGo4FitNamed ()
 
const char * GetFullName ()
 
const char * GetOwnerFullName ()
 
void SetOwner (TNamed *iOwner)
 
TNamed * GetOwner ()
 
void Print (Option_t *option="") const override
 
- Public Member Functions inherited from TGo4FitSlotList
 TGo4FitSlotList ()
 
virtual ~TGo4FitSlotList ()
 
void SetUpdateSlotList ()
 
const TObjArray * GetSlotList (Bool_t ForceUpdate=kFALSE)
 
Int_t NumSlots ()
 
TGo4FitSlotGetSlot (Int_t nslot)
 
TGo4FitSlotFindSlot (const char *FullSlotName)
 
Bool_t ConnectSlots (TGo4FitSlot *slot1, TGo4FitSlot *slot2)
 
Bool_t ConnectSlots (const char *Slot1FullName, const char *Slot2FullName)
 
TGo4FitSlotSetObject (TObject *obj, Bool_t iOwned=kFALSE)
 
TGo4FitSlotSetObject (const char *PlaceName, TObject *obj, Bool_t iOwned=kFALSE)
 
TGo4FitSlotIsObjectInSlots (TObject *obj)
 
Bool_t CheckObjects (Bool_t MakeOut=kTRUE)
 
Bool_t IsEmptySlots ()
 
void ClearObjects (const char *PlaceName=nullptr, Bool_t NonOwned=kTRUE)
 
void ClearSlot (TGo4FitSlot *slot, Bool_t NonOwned)
 
void SetSaveFlagForObjects (Int_t iSaveFlag, const char *PlaceName=nullptr)
 

Protected Member Functions

virtual Bool_t Initialize (Int_t UseBuffers=-1)
 
virtual void Finalize ()
 
Bool_t BuffersAllocated () const
 
Int_t GetBinsSize () const
 
Int_t GetScalesSize () const
 
Double_t * GetBinsValues () const
 
Double_t * GetBinsDevs () const
 
Double_t * GetBinsResult () const
 
const Double_t * GetScaleValues (Int_t nbin) const
 
const Double_t * GetWidthValues (Int_t nbin) const
 
const Int_t * GetFullIndex (Int_t nbin) const
 
Int_t GetIndexesSize () const
 
- Protected Member Functions inherited from TGo4FitComponent
TGo4FitParameterNewParameter (const char *Name, const char *Title, Double_t iValue=0., Bool_t Fixed=kFALSE, Int_t AtIndx=-1)
 
TGo4FitParameterNewAmplitude (const char *Name=nullptr, Double_t iValue=0., Bool_t IsFixed=kFALSE, Int_t AtIndx=0)
 
Int_t GetAmplIndex () const
 
void SetAmplIndex (Int_t iAmplIndex=-1)
 
- Protected Member Functions inherited from TGo4FitParsList
TGo4FitParameterAddPar (TGo4FitParameter *par)
 
TGo4FitParameterInsertPar (TGo4FitParameter *par, Int_t indx)
 
void SetParsOwner (TGo4FitNamed *iOwner)
 
void ClearParsBlocking ()
 
virtual TGo4FitParameterGet (Int_t n)
 
TGo4FitParameterFind (const char *ParName)
 
TGo4FitParameterFind (const char *OwnerFullName, const char *ParName)
 
TGo4FitParameterFind (TGo4FitParameter *par)
 
Bool_t RemoveParByIndex (Int_t indx)
 
- Protected Member Functions inherited from TGo4FitSlotList
void CheckDuplicatesOnSlot ()
 
void PrepareSlotsForWriting ()
 
 ClassDef (TGo4FitSlotList, 1)
 

Protected Attributes

Int_t fiDataType {0}
 
Bool_t fbUseBinScale {kFALSE}
 
Int_t fiTakeSigmasFrom {0}
 
Double_t fdSigmaValue {0}
 
Double_t fdExcludeLessThen {0}
 
TObjArray fxAxisTrans
 
- Protected Attributes inherited from TGo4FitSlotList
TObjArray * fxSlotList {nullptr}
 
Bool_t fbUpdateSlotList {kFALSE}
 

Private Member Functions

void ResetAllPoinetrs ()
 
void ReleaseAllPointers ()
 

Private Attributes

Int_t fiBinsSize {0}
 
Int_t fiIndexesSize {0}
 
Int_t fiScalesSize {0}
 
Double_t * fxValues {nullptr}
 
Double_t * fxStandDev {nullptr}
 
Double_t * fxBinsResult {nullptr}
 
Double_t * fxFullScale {nullptr}
 
Double_t * fxFullWidth {nullptr}
 
Int_t * fxFullIndex {nullptr}
 

Friends

class TGo4FitModel
 
class TGo4Fitter
 

Detailed Description

Basic abstract class for representing data, which should be fitted.

Definition at line 38 of file TGo4FitData.h.

Member Enumeration Documentation

◆ anonymous enum

anonymous enum
Enumerator
dtHistogram 
dtGraph 

Definition at line 40 of file TGo4FitData.h.

Constructor & Destructor Documentation

◆ TGo4FitData() [1/2]

TGo4FitData::TGo4FitData ( )

Default constructor.

Definition at line 28 of file TGo4FitData.cxx.

References ResetAllPoinetrs().

◆ TGo4FitData() [2/2]

TGo4FitData::TGo4FitData ( const char *  iName,
const char *  iTitle,
Int_t  iDataType = dtHistogram,
Bool_t  AddAmpl = kFALSE 
)

Creates TGo4FitData object with given name and title. Type of data (histogram or points) and usage of amplitude can be specified. TGo4FitData object should not be created directly. Implementation of this class like TGo4FitDataHistogram, TGo4FitDataGraph and so on should be used.

Definition at line 35 of file TGo4FitData.cxx.

References fxAxisTrans, TGo4FitComponent::NewAmplitude(), and ResetAllPoinetrs().

◆ ~TGo4FitData()

TGo4FitData::~TGo4FitData ( )
virtual

Destroys TGo4FitData object.

Definition at line 48 of file TGo4FitData.cxx.

References ReleaseAllPointers().

Member Function Documentation

◆ AddAxisTrans()

void TGo4FitData::AddAxisTrans ( TGo4FitAxisTrans Trans,
Bool_t  TransOwned = kFALSE 
)

Add transformation object to data. First new slot reserved for this object.

Definition at line 96 of file TGo4FitData.cxx.

References fxAxisTrans, GetNumberOfTransSlots(), SetNumberOfTransSlots(), and TGo4FitSlotList::SetObject().

Referenced by Example6(), and GetNumberOfTransSlots().

◆ ApplyRangesForModelMask()

void TGo4FitData::ApplyRangesForModelMask ( TGo4FitComponent model,
Char_t *  ModelMask 
)

Exclude points from model according model range conditions. Primary range conditions defines for data. No any model, associated to this data, can exceed it's ranges. But not full data range can be used for explicit model evaluation. This functions fill model mask (array of chars) inside data range, where model should be evaluated. Can be used only after Initialize() method.

Definition at line 311 of file TGo4FitData.cxx.

References BuffersAllocated(), TGo4FitComponent::CheckRangeConditions(), GetBinsSize(), GetScalesSize(), GetScaleValues(), and MakeIter().

Referenced by TGo4FitModel::Initialize(), and MakeIter().

◆ BuffersAllocated()

Bool_t TGo4FitData::BuffersAllocated ( ) const
inlineprotected

◆ CanAmplTouch()

Bool_t TGo4FitData::CanAmplTouch ( )
inlineoverridevirtual

Always return kTRUE. This specify that any data object may has or has not amplitude. Amplitude parameter (if exist) will be used to scale bins values.

Reimplemented from TGo4FitComponent.

Definition at line 80 of file TGo4FitData.h.

◆ CreateDrawObject()

TObject * TGo4FitData::CreateDrawObject ( const char *  ObjName)

Creates object, which can be drawn on canvas by ROOT. This method creates either TH1 (in case of histogram data) or TGraph object and fills bins by content of data.

Definition at line 121 of file TGo4FitData.cxx.

References MakeIter().

Referenced by MakeIter(), and TGo4FitDataIter::ReachEnd().

◆ DefineBinsSize()

Int_t TGo4FitData::DefineBinsSize ( )

Defines number of selected bins in data Creates iterator and sequentially checks all points

Definition at line 267 of file TGo4FitData.cxx.

References MakeIter().

Referenced by TGo4Fitter::CalculateNDF(), and MakeIter().

◆ DefineDimensions()

Int_t TGo4FitData::DefineDimensions ( )

Define dimension number of data Create iterator and checks number of dimension

Definition at line 256 of file TGo4FitData.cxx.

References MakeIter().

Referenced by TGo4FitPanel::Button_SimpleFit(), TGo4FitPanel::CreateModel(), TGo4FitPanel::LocateModel(), and MakeIter().

◆ DefineScaleMinMax()

Bool_t TGo4FitData::DefineScaleMinMax ( Int_t  naxis,
Double_t &  min,
Double_t &  max 
)

Return scales minimum and maximum for specified axis. Can be used before or after Initialize() method.

Definition at line 234 of file TGo4FitData.cxx.

References MakeIter().

Referenced by TGo4FitPanel::Cmd_AddRangeCondition(), and MakeIter().

◆ FillSlotList()

void TGo4FitData::FillSlotList ( TSeqCollection *  list)
overridevirtual

◆ Finalize()

void TGo4FitData::Finalize ( )
protectedvirtual

Removes all buffers, created in initialize() routine.

Definition at line 190 of file TGo4FitData.cxx.

References ReleaseAllPointers().

Referenced by TGo4Fitter::FinalizeFitterData().

◆ GetAxisTrans()

TGo4FitAxisTrans * TGo4FitData::GetAxisTrans ( Int_t  nslot) const

Return transformation object for given slot.

Definition at line 81 of file TGo4FitData.cxx.

References GetAxisTransSlot(), and TGo4FitSlot::GetObject().

Referenced by GetNumberOfTransSlots(), Initialize(), IsAnyDataTransform(), and TGo4FitDataIter::TransformScales().

◆ GetAxisTransSlot()

TGo4FitSlot * TGo4FitData::GetAxisTransSlot ( Int_t  nslot) const

Return slot for transformation object.

Definition at line 76 of file TGo4FitData.cxx.

References fxAxisTrans.

Referenced by GetAxisTrans(), and GetNumberOfTransSlots().

◆ GetBinsDevs()

Double_t* TGo4FitData::GetBinsDevs ( ) const
inlineprotected

Returns pointer on buffer with standard deviations for each data bins. Buffer has GetBinsSize() values. Return 0, if buffers were not allocated.

Definition at line 271 of file TGo4FitData.h.

References fxStandDev.

Referenced by TGo4Fitter::CalculateFCN(), and TGo4Fitter::GetDataBinsDevs().

◆ GetBinsResult()

Double_t* TGo4FitData::GetBinsResult ( ) const
inlineprotected

Returns pointer on buffer with complete model of data bins. Buffer has GetBinsSize() values. Return 0, if buffers were not allocated.

Definition at line 277 of file TGo4FitData.h.

References fxBinsResult, GetFullIndex(), GetScaleValues(), and GetWidthValues().

Referenced by TGo4FitModel::AddModelToDataResult(), TGo4Fitter::CalculateFCN(), TGo4Fitter::GetDataBinsResult(), and TGo4Fitter::RebuildAll().

◆ GetBinsSize()

Int_t TGo4FitData::GetBinsSize ( ) const
inlineprotected

◆ GetBinsValues()

Double_t* TGo4FitData::GetBinsValues ( ) const
inlineprotected

Returns pointer on buffer with data bins values. Buffer has GetBinsSize() values. Return 0, if buffers were not allocated.

Definition at line 265 of file TGo4FitData.h.

References fxValues.

Referenced by TGo4Fitter::CalculateFCN(), and TGo4Fitter::GetDataBinsValues().

◆ GetDataType()

Int_t TGo4FitData::GetDataType ( ) const
inline

Returns type of data source. 0 - histogram, 1 - points (scale values have no width)

Definition at line 63 of file TGo4FitData.h.

References fiDataType.

Referenced by TGo4FitPanel::Button_FitterDraw(), TGo4FitDataIter::ProduceScales(), and TGo4FitDataRidgeIter::StartReset().

◆ GetExcludeLessThen()

Double_t TGo4FitData::GetExcludeLessThen ( ) const
inline

Returns limit, which uses to exclude bins, less then this limit.

Definition at line 122 of file TGo4FitData.h.

References fdExcludeLessThen, and SetNumberOfTransSlots().

Referenced by TGo4FitDataIter::CheckPointForRange(), IsAnyDataTransform(), and Print().

◆ GetFullIndex()

const Int_t * TGo4FitData::GetFullIndex ( Int_t  nbin) const
protected

Return indexes values for specified data bin from buffer. Can be used only if buffers were allocated, otherwise return nullptr. nbin should be from 0 to GetBinsSize()-1

Definition at line 289 of file TGo4FitData.cxx.

References fxFullIndex, and GetIndexesSize().

Referenced by GetBinsResult(), and TGo4FitModel::GetDataFullIndex().

◆ GetIndexesSize()

Int_t TGo4FitData::GetIndexesSize ( ) const
inlineprotected

Returns dimension of indexes arrays. Can be used after Initialize() method, otherwise TGo4FitDataIter::IndexesSize() method should be used.

Definition at line 301 of file TGo4FitData.h.

References fiIndexesSize.

Referenced by TGo4FitModel::GetDataIndexesSize(), GetFullIndex(), and IsCompatibleData().

◆ GetNumberOfTransSlots()

Int_t TGo4FitData::GetNumberOfTransSlots ( ) const
inline

◆ GetScalesSize()

Int_t TGo4FitData::GetScalesSize ( ) const
inlineprotected

Returns number of axis values for each point. Can be used after Initialize() method, otherwise TGo4FitDataIter::ScalesSize() method should be used.

Definition at line 259 of file TGo4FitData.h.

References fiScalesSize.

Referenced by TGo4FitModel::AddModelToDataResult(), ApplyRangesForModelMask(), TGo4FitModel::EvaluateAtPoint(), GetScaleValues(), GetWidthValues(), and TGo4FitModel::RebuildShape().

◆ GetScaleValues()

const Double_t * TGo4FitData::GetScaleValues ( Int_t  nbin) const
protected

Return scale values for specified index from buffer. Can be used only if buffers were allocated, otherwise return nullptr. nbin should be from 0 to GetBinsSize()-1

Definition at line 274 of file TGo4FitData.cxx.

References fxFullScale, and GetScalesSize().

Referenced by ApplyRangesForModelMask(), TGo4FitModel::EvaluateAtPoint(), and GetBinsResult().

◆ GetSigmaSource()

Int_t TGo4FitData::GetSigmaSource ( ) const
inline

Return source of sigma values. Possible values are: 0 - no sigma sources; 1 - sigma should be taken from data source object; 2 - sigma is constant and defined by GetSigmaValue() function.

Definition at line 89 of file TGo4FitData.h.

References fiTakeSigmasFrom.

Referenced by TGo4FitDataIter::GetDeviation(), and Print().

◆ GetSigmaValue()

Double_t TGo4FitData::GetSigmaValue ( ) const
inline

Return constant sigma value. Uses, when GetSigmaSource() returns 2.

Definition at line 95 of file TGo4FitData.h.

References fdSigmaValue.

Referenced by TGo4FitDataIter::GetDeviation(), and Print().

◆ GetUseBinScale()

Bool_t TGo4FitData::GetUseBinScale ( ) const
inline

Returns kTRUE, if binary numbers used as scale values.

Definition at line 68 of file TGo4FitData.h.

References fbUseBinScale.

Referenced by IsAnyDataTransform(), TGo4FitDataIter::ProduceScales(), and TGo4FitDataIter::ReserveArrays().

◆ GetWidthValues()

const Double_t * TGo4FitData::GetWidthValues ( Int_t  nbin) const
protected

Return scales width values for specified index from buffer. Can be used only if buffers were allocated, otherwise return nullptr. nbin should be from 0 to GetBinsSize()-1

Definition at line 282 of file TGo4FitData.cxx.

References fxFullWidth, and GetScalesSize().

Referenced by TGo4FitModel::EvaluateAtPoint(), and GetBinsResult().

◆ Initialize()

Bool_t TGo4FitData::Initialize ( Int_t  UseBuffers = -1)
protectedvirtual

Initialize data object. This routine should be used to allocate memory for internal buffers. Its automatically calls in DoActions() routine of fitter. if UseBuffers>0 or ( GetUseBuffers() && UseBuffers<0) internal buffers will be created. Consuming more memory may dramatically decrease time for fitting.

Definition at line 130 of file TGo4FitData.cxx.

References fiBinsSize, fiIndexesSize, fiScalesSize, fxBinsResult, fxFullIndex, fxFullScale, fxFullWidth, fxStandDev, fxValues, GetAxisTrans(), GetNumberOfTransSlots(), TGo4FitParsList::IsAllParsFixed(), and MakeIter().

Referenced by TGo4Fitter::InitFitterData().

◆ IsAnyDataTransform()

Bool_t TGo4FitData::IsAnyDataTransform ( ) const
virtual

Return kTRUE, if either initial data axis or data bins are transformed by TGo4FitData object. For instance, if SetUseBinScales() is used.

Definition at line 111 of file TGo4FitData.cxx.

References GetAxisTrans(), GetExcludeLessThen(), GetNumberOfTransSlots(), and GetUseBinScale().

Referenced by TGo4FitPanel::Button_FitterDraw(), GetNumberOfTransSlots(), TGo4FitPanel::PaintModelsFor(), and TGo4FitPanel::UpdateWizPaint().

◆ IsCompatibleData()

Bool_t TGo4FitData::IsCompatibleData ( TGo4FitData data)

Checks, if data has same dimensions number and size of each dimensions. Used, when one data objects used to be a model component of another data object. Should be used only after Initialize() method for current data object.

Definition at line 296 of file TGo4FitData.cxx.

References GetIndexesSize(), and MakeIter().

Referenced by TGo4FitModelFromData::Initialize(), and MakeIter().

◆ MakeIter()

virtual std::unique_ptr<TGo4FitDataIter> TGo4FitData::MakeIter ( )
inlinevirtual

◆ Print()

void TGo4FitData::Print ( Option_t *  option = "") const
override

◆ ReleaseAllPointers()

void TGo4FitData::ReleaseAllPointers ( )
private

Release all memory, allocated for buffers.

Definition at line 211 of file TGo4FitData.cxx.

References fxBinsResult, fxFullIndex, fxFullScale, fxFullWidth, fxStandDev, fxValues, and ResetAllPoinetrs().

Referenced by Finalize(), and ~TGo4FitData().

◆ ResetAllPoinetrs()

void TGo4FitData::ResetAllPoinetrs ( )
private

Clears (sets to 0) all pointers, used for buffer allocations.

Definition at line 195 of file TGo4FitData.cxx.

References fiBinsSize, fiIndexesSize, fiScalesSize, fxBinsResult, fxFullIndex, fxFullScale, fxFullWidth, fxStandDev, and fxValues.

Referenced by ReleaseAllPointers(), and TGo4FitData().

◆ SetAxisTrans()

void TGo4FitData::SetAxisTrans ( Int_t  nslot,
TGo4FitAxisTrans Trans,
Bool_t  TransOwned = kFALSE 
)

Sets transformation object for given slot. If not enough slots was reserved, SetNumberOfTransSlots(nslot+1) will be called first.

Definition at line 87 of file TGo4FitData.cxx.

References fxAxisTrans, GetNumberOfTransSlots(), SetNumberOfTransSlots(), and TGo4FitSlotList::SetObject().

Referenced by GetNumberOfTransSlots().

◆ SetAxisTransNeeded()

void TGo4FitData::SetAxisTransNeeded ( Int_t  nslot,
Bool_t  iNeeded = kFALSE 
)

Specified, when iNeeded = kTRUE, that transformation object should always be provided to data.

Definition at line 103 of file TGo4FitData.cxx.

References fxAxisTrans, GetNumberOfTransSlots(), and SetNumberOfTransSlots().

Referenced by GetNumberOfTransSlots().

◆ SetExcludeLessThen()

void TGo4FitData::SetExcludeLessThen ( Double_t  limit = 0.)
inline

Sets limit to exclude bins, which not less then this limit.

Definition at line 117 of file TGo4FitData.h.

References fdExcludeLessThen.

Referenced by QFitDataWidget::BinsLimitEdt_textChanged(), Example13(), TGo4FitDataGraph::TGo4FitDataGraph(), TGo4FitDataProfile::TGo4FitDataProfile(), and TGo4FitDataRidge::TGo4FitDataRidge().

◆ SetNumberOfTransSlots()

Bool_t TGo4FitData::SetNumberOfTransSlots ( Int_t  nslots)

Sets number of slots for scale transformation objects. By default, TGo4FitData has no place (slots) for transformation objects. In this case scale values can be taken from data source (TAxis of TH1) or just bins numbers can be used. To use transformation of these values, inherited from TGo4FitAxisTrans class should be used. Slots for such objects can be reserved first.

Definition at line 53 of file TGo4FitData.cxx.

References fxAxisTrans, GetNumberOfTransSlots(), and TGo4FitSlotList::SetUpdateSlotList().

Referenced by AddAxisTrans(), BuildFitter(), GetExcludeLessThen(), SetAxisTrans(), and SetAxisTransNeeded().

◆ SetSigmaSource()

void TGo4FitData::SetSigmaSource ( Int_t  TakeFrom,
Double_t  SigmaValue = 1. 
)
inline

Sets source of sigma for data. For description see GetSigmaSource() function.

Definition at line 101 of file TGo4FitData.h.

References fdSigmaValue, and fiTakeSigmasFrom.

Referenced by QFitDataWidget::SigmaCmb_activated().

◆ SetSigmaValue()

void TGo4FitData::SetSigmaValue ( Double_t  SigmaValue)
inline

Set constant sigma value. Value will be used, if GetSigmaSource()==2.

Definition at line 112 of file TGo4FitData.h.

References fdSigmaValue.

Referenced by QFitDataWidget::SigmaEdt_textChanged().

◆ SetUseBinScale()

void TGo4FitData::SetUseBinScale ( Bool_t  iUseBinScale)
inline

If kTRUE, binary numbers will be used as scale values.

Definition at line 73 of file TGo4FitData.h.

References fbUseBinScale.

Referenced by BuildFitter(), and QFitDataWidget::UseBinsChk_toggled().

Friends And Related Function Documentation

◆ TGo4FitModel

friend class TGo4FitModel
friend

Definition at line 228 of file TGo4FitData.h.

◆ TGo4Fitter

friend class TGo4Fitter
friend

Definition at line 229 of file TGo4FitData.h.

Member Data Documentation

◆ fbUseBinScale

Bool_t TGo4FitData::fbUseBinScale {kFALSE}
protected

Use binary numbers as scale values. if this flag set, bin numbers are used as scale values

Definition at line 313 of file TGo4FitData.h.

Referenced by GetUseBinScale(), Print(), and SetUseBinScale().

◆ fdExcludeLessThen

Double_t TGo4FitData::fdExcludeLessThen {0}
protected

Sets limit for exclude bins, which less then this limit

Definition at line 329 of file TGo4FitData.h.

Referenced by GetExcludeLessThen(), and SetExcludeLessThen().

◆ fdSigmaValue

Double_t TGo4FitData::fdSigmaValue {0}
protected

Value of sigma when fiTakeSigmasFrom = 2

Definition at line 324 of file TGo4FitData.h.

Referenced by GetSigmaValue(), SetSigmaSource(), and SetSigmaValue().

◆ fiBinsSize

Int_t TGo4FitData::fiBinsSize {0}
private

Number of entries in buffers.

Definition at line 351 of file TGo4FitData.h.

Referenced by GetBinsSize(), Initialize(), and ResetAllPoinetrs().

◆ fiDataType

Int_t TGo4FitData::fiDataType {0}
protected

Specified type of data: 0 - Histogram, 1 - graphics, 2 and so on - user defined

Definition at line 307 of file TGo4FitData.h.

Referenced by GetDataType(), and Print().

◆ fiIndexesSize

Int_t TGo4FitData::fiIndexesSize {0}
private

Number of indexes for each point.

Definition at line 356 of file TGo4FitData.h.

Referenced by GetIndexesSize(), Initialize(), and ResetAllPoinetrs().

◆ fiScalesSize

Int_t TGo4FitData::fiScalesSize {0}
private

Number of scales values for each point.

Definition at line 361 of file TGo4FitData.h.

Referenced by GetScalesSize(), Initialize(), and ResetAllPoinetrs().

◆ fiTakeSigmasFrom

Int_t TGo4FitData::fiTakeSigmasFrom {0}
protected

Specify sigma source. 0 - no sigmas, 1 - try take from data, 2 - constant value (fdSigmaValue)

Definition at line 319 of file TGo4FitData.h.

Referenced by GetSigmaSource(), and SetSigmaSource().

◆ fxAxisTrans

TObjArray TGo4FitData::fxAxisTrans
protected

Array of slots for scale transformation objects.

Definition at line 334 of file TGo4FitData.h.

Referenced by AddAxisTrans(), FillSlotList(), GetAxisTransSlot(), GetNumberOfTransSlots(), Print(), SetAxisTrans(), SetAxisTransNeeded(), SetNumberOfTransSlots(), and TGo4FitData().

◆ fxBinsResult

Double_t* TGo4FitData::fxBinsResult {nullptr}
private

Buffer for complete model of bins values.

Definition at line 376 of file TGo4FitData.h.

Referenced by GetBinsResult(), Initialize(), ReleaseAllPointers(), and ResetAllPoinetrs().

◆ fxFullIndex

Int_t* TGo4FitData::fxFullIndex {nullptr}
private

Store combination of indexes for each data bins. Size of [GetBinsSize()][NumDimension()]. Used in case of maximum memory usage.

Definition at line 397 of file TGo4FitData.h.

Referenced by GetFullIndex(), Initialize(), ReleaseAllPointers(), and ResetAllPoinetrs().

◆ fxFullScale

Double_t* TGo4FitData::fxFullScale {nullptr}
private

Array of axis values for each bins. Used in case of maximum memory usage. Size [BinsSize * AxisNumber]

Definition at line 383 of file TGo4FitData.h.

Referenced by BuffersAllocated(), GetScaleValues(), Initialize(), ReleaseAllPointers(), and ResetAllPoinetrs().

◆ fxFullWidth

Double_t* TGo4FitData::fxFullWidth {nullptr}
private

Array of width values for each bin. Used in case of maximum memory usage. Size [BinsSize * AxisNumber]

Definition at line 390 of file TGo4FitData.h.

Referenced by GetWidthValues(), Initialize(), ReleaseAllPointers(), and ResetAllPoinetrs().

◆ fxStandDev

Double_t* TGo4FitData::fxStandDev {nullptr}
private

Buffer for standard deviations of bins values.

Definition at line 371 of file TGo4FitData.h.

Referenced by GetBinsDevs(), Initialize(), ReleaseAllPointers(), and ResetAllPoinetrs().

◆ fxValues

Double_t* TGo4FitData::fxValues {nullptr}
private

Buffer for bins values.

Definition at line 366 of file TGo4FitData.h.

Referenced by BuffersAllocated(), GetBinsValues(), Initialize(), ReleaseAllPointers(), and ResetAllPoinetrs().


The documentation for this class was generated from the following files: