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.
1.7.1