class ROOT::Fit::ParameterSettings


   Class, describing value, limits and step size of the parameters
   Provides functionality also to set/retrieve values, step sizes, limits and fix the
   parameters.

   To be done: add constraints (equality and inequality) as functions of the parameters

   @ingroup FitMain

Function Members (Methods)

public:
~ParameterSettings()
voidFix()
boolHasLowerLimit() const
boolHasUpperLimit() const
boolIsBound() const
boolIsDoubleBound() const
boolIsFixed() const
doubleLowerLimit() const
const string&Name() const
ROOT::Fit::ParameterSettings&operator=(const ROOT::Fit::ParameterSettings&)
ROOT::Fit::ParameterSettingsParameterSettings()
ROOT::Fit::ParameterSettingsParameterSettings(const ROOT::Fit::ParameterSettings&)
ROOT::Fit::ParameterSettingsParameterSettings(const string& name, double val)
ROOT::Fit::ParameterSettingsParameterSettings(const string& name, double val, double err)
ROOT::Fit::ParameterSettingsParameterSettings(const string& name, double val, double err, double min, double max)
voidRelease()
voidRemoveLimits()
voidSet(const string& name, double value)
voidSet(const string& name, double value, double step)
voidSet(const string& name, double value, double step, double lower, double upper)
voidSetLimits(double low, double up)
voidSetLowerLimit(double low)
voidSetName(const string& name)
voidSetStepSize(double err)
voidSetUpperLimit(double up)
voidSetValue(double val)
doubleStepSize() const
doubleUpperLimit() const
doubleValue() const

Data Members

private:
boolfFixflag to control if parameter is fixed
boolfHasLowerLimitflag to control lower parameter limit
boolfHasUpperLimitflag to control upper parameter limit
doublefLowerLimitlower parameter limit
stringfNameparameter name
doublefStepSizeparameter step size (used by minimizer)
doublefUpperLimitupper parameter limit
doublefValueparameter value

Class Charts

Inheritance Inherited Members Includes Libraries
Class Charts

Function documentation

ParameterSettings(const ROOT::Fit::ParameterSettings& )
      Default constructor

{}
ParameterSettings(const string& name, double val, double err)
constructor for unlimited named Parameter
{}
ParameterSettings(const string& name, double val, double err, double min, double max)
constructor for double limited Parameter
SetLimits(double low, double up)
ParameterSettings(const string& name, double val)
constructor for fixed Parameter
{}
void Set(const string& name, double value, double step)
 set value and name (unlimited parameter)
SetName(const string& name)
SetValue(double val)
SetStepSize(double err)
void Set(const string& name, double value, double step, double lower, double upper)
 set a limited parameter
void Set(const string& name, double value)
 set a fixed parameter
Fix()
~ParameterSettings()
      Destructor (no operations)

{}
double Value()
 copy constructor and assignment operators (leave them to the compiler)
 return parameter value
{ return fValue; }
double StepSize()
 return lower limit value
{ return fStepSize; }
double LowerLimit()
 return lower limit value
{return fLowerLimit;}
double UpperLimit()
 check if is fixed
{return fUpperLimit;}
bool IsFixed()
 check if parameter has lower limit
{ return fFix; }
bool HasLowerLimit()
 check if parameter has upper limit
{return fHasLowerLimit; }
bool HasUpperLimit()
 check if is bound
{return fHasUpperLimit; }
bool IsBound()
 check if is double bound (upper AND lower limit)
{ return fHasLowerLimit || fHasUpperLimit; }
bool IsDoubleBound()
 return name
{ return fHasLowerLimit && fHasUpperLimit; }
const std::string & Name()
{ return fName; }
void Release()
 release the parameter
{fFix = false;}
RemoveLimits()
void SetUpperLimit(double up)
 set a single upper limit
void SetLowerLimit(double low)
 set a single lower limit

Author: L. Moneta Thu Sep 21 16:21:48 2006
Last change: root/mathcore:$Id: ParameterSettings.h 25486 2008-09-22 12:43:03Z moneta $
Last generated: 2008-09-22 15:41
Copyright (c) 2006 LCG ROOT Math Team, CERN/PH-SFT *

This page has been automatically generated. If you have any comments or suggestions about the page layout send a mail to ROOT support, or contact the developers with any questions or problems regarding ROOT.