A class representing a parameter of a model. More...
#include <BCParameter.h>
Public Member Functions | |
Constructors and destructors | |
BCParameter () | |
BCParameter (const char *name, double lowerlimit, double upperlimit) | |
BCParameter (const BCParameter ¶meter) | |
~BCParameter () | |
Assignment operators | |
BCParameter & | operator= (const BCParameter ¶meter) |
Member functions (get) | |
std::string | GetName () |
int | GetIndex () |
double | GetLowerLimit () |
double | GetUpperLimit () |
double | GetRangeWidth () |
Member functions (set) | |
void | SetName (const char *name) |
void | SetIndex (int index) |
void | SetLowerLimit (double limit=0) |
void | SetUpperLimit (double limit=1) |
void | SetLimits (double lowerlimit=0, double upperlimit=1) |
void | SetNuisance (int nuisance=1) |
Member functions (miscellaneous methods) | |
double | IsNuisance () |
bool | IsAtLimit (double value) |
void | PrintSummary () |
Private Member Functions | |
void | Copy (BCParameter ¶meter) const |
Private Attributes | |
int | fIndex |
double | fLowerLimit |
std::string | fName |
int | fNuisance |
double | fUpperLimit |
A class representing a parameter of a model.
Definition at line 29 of file BCParameter.h.
BCParameter::BCParameter | ( | ) |
The default constructor.
Definition at line 17 of file BCParameter.cxx.
{ fName = "parameter"; fLowerLimit = 0.; fUpperLimit = 1.; fNuisance = 0; }
BCParameter::BCParameter | ( | const char * | name, | |
double | lowerlimit, | |||
double | upperlimit | |||
) |
A constructor.
name | The name of the parameter. | |
lowerlimit | The lower limit of the parameter values. | |
upperlimit | The upper limit of the parameter values. |
Definition at line 27 of file BCParameter.cxx.
{ fName = "parameter"; fLowerLimit = 0.; fUpperLimit = 1.; fNuisance = 0; fName = name; fLowerLimit = lowerlimit; fUpperLimit = upperlimit; }
BCParameter::BCParameter | ( | const BCParameter & | parameter | ) |
The default copy constructor.
Definition at line 41 of file BCParameter.cxx.
{ parameter.Copy(*this); }
BCParameter::~BCParameter | ( | ) |
void BCParameter::Copy | ( | BCParameter & | parameter | ) | const [private] |
Definition at line 82 of file BCParameter.cxx.
{ parameter.fName = this -> fName; parameter.fIndex = this -> fIndex; parameter.fLowerLimit = this -> fLowerLimit; parameter.fUpperLimit = this -> fUpperLimit; parameter.fNuisance = this -> fNuisance; }
int BCParameter::GetIndex | ( | ) | [inline] |
Returns the index of the parameter within the parameter container of a BCModel.
Definition at line 79 of file BCParameter.h.
{ return fIndex; };
double BCParameter::GetLowerLimit | ( | ) | [inline] |
Definition at line 84 of file BCParameter.h.
{ return fLowerLimit; };
std::string BCParameter::GetName | ( | ) | [inline] |
double BCParameter::GetRangeWidth | ( | ) | [inline] |
Returns the range width of the parameter values. It is always a positive value.
Definition at line 96 of file BCParameter.h.
{ return (fUpperLimit>fLowerLimit)?fUpperLimit-fLowerLimit:fLowerLimit-fUpperLimit; };
double BCParameter::GetUpperLimit | ( | ) | [inline] |
Definition at line 89 of file BCParameter.h.
{ return fUpperLimit; };
bool BCParameter::IsAtLimit | ( | double | value | ) |
Returns true if the value is at a parameter limit.
Definition at line 93 of file BCParameter.cxx.
{ if (fLowerLimit == fUpperLimit) return false; if ( ( (value-fLowerLimit)*(value-fLowerLimit)/fLowerLimit/fLowerLimit <= 1e-10) || ( (value-fUpperLimit)*(value-fUpperLimit)/fUpperLimit/fUpperLimit <= 1e-10)) return true; else return false; }
double BCParameter::IsNuisance | ( | ) | [inline] |
Returns 1 if parameter is a nuisance parameter or 0 if not.
Definition at line 149 of file BCParameter.h.
{ return fNuisance; };
BCParameter & BCParameter::operator= | ( | const BCParameter & | parameter | ) |
The defaut assignment operator.
Definition at line 48 of file BCParameter.cxx.
{ if (this != ¶meter) parameter.Copy(* this); return * this; }
void BCParameter::PrintSummary | ( | ) |
Prints a parameter summary on the screen.
Definition at line 63 of file BCParameter.cxx.
{ std::cout <<" > Parameter : "<< fName << std::endl <<" Index : "<< fIndex << std::endl <<" Lower Limit : "<< fLowerLimit << std::endl <<" Upper Limit : "<< fUpperLimit << std::endl <<" Nuisance : "; if(fNuisance) std::cout<<"Yes"<<std::endl; else std::cout<<"No"<<std::endl; std::cout << std::endl; }
void BCParameter::SetIndex | ( | int | index | ) | [inline] |
Set the index of the parameter within the parameter container of a BCModel.
index | The index of the parameter. |
Definition at line 113 of file BCParameter.h.
{ fIndex = index; };
void BCParameter::SetLimits | ( | double | lowerlimit = 0 , |
|
double | upperlimit = 1 | |||
) | [inline] |
Set the limits of the parameter values.
lowerlimit | The lower limit of the parameter values. | |
upperlimit | The upper limit of the parameter values. |
Definition at line 132 of file BCParameter.h.
{ fLowerLimit = lowerlimit; fUpperLimit = upperlimit; };
void BCParameter::SetLowerLimit | ( | double | limit = 0 |
) | [inline] |
Set the lower limit of the parameter values.
limit | The lower limit of the parameter values. |
Definition at line 119 of file BCParameter.h.
{ fLowerLimit = limit; };
void BCParameter::SetName | ( | const char * | name | ) | [inline] |
name | The name of the parameter. |
Definition at line 106 of file BCParameter.h.
{ fName = name; };
void BCParameter::SetNuisance | ( | int | nuisance = 1 |
) | [inline] |
Set parameter to be nuisance.
nuisance | 1 - nuisance, 0 - not nuisance |
Definition at line 138 of file BCParameter.h.
{ fNuisance = nuisance; };
void BCParameter::SetUpperLimit | ( | double | limit = 1 |
) | [inline] |
Set the upper limit of the parameter values.
limit | The upper limit of the parameter values. |
Definition at line 125 of file BCParameter.h.
{ fUpperLimit = limit; };
int BCParameter::fIndex [private] |
The index of the parameter within the BCParameterSet of a BCModel.
Definition at line 175 of file BCParameter.h.
double BCParameter::fLowerLimit [private] |
The lower limit of the parameter value.
Definition at line 179 of file BCParameter.h.
std::string BCParameter::fName [private] |
The name of the parameter.
Definition at line 171 of file BCParameter.h.
int BCParameter::fNuisance [private] |
Flag to specify whether to integrate over this parameter or not.
Definition at line 187 of file BCParameter.h.
double BCParameter::fUpperLimit [private] |
The upper limit of the parameter value.
Definition at line 183 of file BCParameter.h.