BCParameter Class Reference

A class representing a parameter of a model. More...

#include <BCParameter.h>

List of all members.

Public Member Functions

Assignment operators
BCParameteroperator= (const BCParameter &parameter)
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 &parameter) const

Private Attributes

std::string fName
int fIndex
double fLowerLimit
double fUpperLimit
int fNuisance


Detailed Description

A class representing a parameter of a model.

Author:
Daniel Kollar

Kevin Kröninger

Version:
1.0
Date:
08.2008 This class represents a parameter of a model. It contains information about the name and the range of the parameter.

Definition at line 29 of file BCParameter.h.


Constructor & Destructor Documentation

BCParameter::BCParameter (  ) 

The default constructor.

Definition at line 17 of file BCParameter.cxx.

00018 {
00019    fName       = "parameter";
00020    fLowerLimit = 0.;
00021    fUpperLimit = 1.;
00022    fNuisance   = 0;
00023 }

BCParameter::BCParameter ( const char *  name,
double  lowerlimit,
double  upperlimit 
)

A constructor.

Parameters:
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.

00028 {
00029    fName       = "parameter";
00030    fLowerLimit = 0.;
00031    fUpperLimit = 1.;
00032    fNuisance   = 0;
00033 
00034    fName       = name;
00035    fLowerLimit = lowerlimit;
00036    fUpperLimit = upperlimit;
00037 }

BCParameter::BCParameter ( const BCParameter parameter  ) 

The default copy constructor.

Definition at line 41 of file BCParameter.cxx.

00042 {
00043    parameter.Copy(*this);
00044 }

BCParameter::~BCParameter (  ) 

The default destructor.

Definition at line 58 of file BCParameter.cxx.

00059 {}

BCParameter::BCParameter (  ) 

The default constructor.

Definition at line 17 of file BCParameter.cxx.

00018 {
00019    fName       = "parameter";
00020    fLowerLimit = 0.;
00021    fUpperLimit = 1.;
00022    fNuisance   = 0;
00023 }

BCParameter::BCParameter ( const char *  name,
double  lowerlimit,
double  upperlimit 
)

A constructor.

Parameters:
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.

00028 {
00029    fName       = "parameter";
00030    fLowerLimit = 0.;
00031    fUpperLimit = 1.;
00032    fNuisance   = 0;
00033 
00034    fName       = name;
00035    fLowerLimit = lowerlimit;
00036    fUpperLimit = upperlimit;
00037 }

BCParameter::BCParameter ( const BCParameter parameter  ) 

The default copy constructor.

Definition at line 41 of file BCParameter.cxx.

00042 {
00043    parameter.Copy(*this);
00044 }

BCParameter::~BCParameter (  ) 

The default destructor.

Definition at line 58 of file BCParameter.cxx.

00059 {}


Member Function Documentation

BCParameter & BCParameter::operator= ( const BCParameter parameter  ) 

The defaut assignment operator.

Definition at line 48 of file BCParameter.cxx.

00049 {
00050    if (this != &parameter)
00051       parameter.Copy(* this);
00052 
00053    return * this;
00054 }

std::string BCParameter::GetName (  )  [inline]

Returns:
The name of the parameter.

Definition at line 72 of file BCParameter.h.

00073          { return fName; };

int BCParameter::GetIndex (  )  [inline]

Returns the index of the parameter within the parameter container of a BCModel.

Returns:
The index of the parameter in the model.

Definition at line 79 of file BCParameter.h.

00080          { return fIndex; };

double BCParameter::GetLowerLimit (  )  [inline]

Returns:
The lower limit of the parameter values.

Definition at line 84 of file BCParameter.h.

00085          { return fLowerLimit; };

double BCParameter::GetUpperLimit (  )  [inline]

Returns:
The upper limit of the parameter values.

Definition at line 89 of file BCParameter.h.

00090          { return fUpperLimit; };

double BCParameter::GetRangeWidth (  )  [inline]

Returns the range width of the parameter values. It is always a positive value.

Returns:
The range width of the parameter values.

Definition at line 96 of file BCParameter.h.

void BCParameter::SetName ( const char *  name  )  [inline]

Parameters:
name The name of the parameter.

Definition at line 106 of file BCParameter.h.

00107          { fName = name; };

void BCParameter::SetIndex ( int  index  )  [inline]

Set the index of the parameter within the parameter container of a BCModel.

Parameters:
index The index of the parameter.

Definition at line 113 of file BCParameter.h.

00114          { fIndex = index; };

void BCParameter::SetLowerLimit ( double  limit = 0  )  [inline]

Set the lower limit of the parameter values.

Parameters:
limit The lower limit of the parameter values.

Definition at line 119 of file BCParameter.h.

00120          { fLowerLimit = limit; };

void BCParameter::SetUpperLimit ( double  limit = 1  )  [inline]

Set the upper limit of the parameter values.

Parameters:
limit The upper limit of the parameter values.

Definition at line 125 of file BCParameter.h.

00126          { fUpperLimit = limit; };

void BCParameter::SetLimits ( double  lowerlimit = 0,
double  upperlimit = 1 
) [inline]

Set the limits of the parameter values.

Parameters:
lowerlimit The lower limit of the parameter values.
upperlimit The upper limit of the parameter values.

Definition at line 132 of file BCParameter.h.

00133          { fLowerLimit = lowerlimit; fUpperLimit = upperlimit; };

void BCParameter::SetNuisance ( int  nuisance = 1  )  [inline]

Set parameter to be nuisance.

Parameters:
nuisance 1 - nuisance, 0 - not nuisance

Definition at line 138 of file BCParameter.h.

00139          { fNuisance = nuisance; };

double BCParameter::IsNuisance (  )  [inline]

Returns 1 if parameter is a nuisance parameter or 0 if not.

Returns:
1 - is nuisance paramete, 0 - is not nuisance parameter

Definition at line 149 of file BCParameter.h.

00150          { return fNuisance; };

bool BCParameter::IsAtLimit ( double  value  ) 

Returns true if the value is at a parameter limit.

Returns:
flag States if value is at parameter limit.

Definition at line 93 of file BCParameter.cxx.

00094 {
00095    if (fLowerLimit == fUpperLimit)
00096       return false;
00097 
00098    if ( ( (value-fLowerLimit)*(value-fLowerLimit)/fLowerLimit/fLowerLimit <= 1e-10) ||
00099          ( (value-fUpperLimit)*(value-fUpperLimit)/fUpperLimit/fUpperLimit <= 1e-10))
00100       return true;
00101    else
00102       return false;
00103 }

void BCParameter::PrintSummary (  ) 

Prints a parameter summary on the screen.

Definition at line 63 of file BCParameter.cxx.

00064 {
00065    std::cout
00066       <<"       > Parameter   : "<< fName << std::endl
00067       <<"         Index       : "<< fIndex << std::endl
00068       <<"         Lower Limit : "<< fLowerLimit << std::endl
00069       <<"         Upper Limit : "<< fUpperLimit << std::endl
00070       <<"         Nuisance    : ";
00071 
00072    if(fNuisance)
00073       std::cout<<"Yes"<<std::endl;
00074    else
00075       std::cout<<"No"<<std::endl;
00076 
00077    std::cout << std::endl;
00078 }

void BCParameter::Copy ( BCParameter parameter  )  const [private]

Definition at line 82 of file BCParameter.cxx.

00083 {
00084    parameter.fName       = this -> fName;
00085    parameter.fIndex      = this -> fIndex;
00086    parameter.fLowerLimit = this -> fLowerLimit;
00087    parameter.fUpperLimit = this -> fUpperLimit;
00088    parameter.fNuisance   = this -> fNuisance;
00089 }


Member Data Documentation

std::string BCParameter::fName [private]

The name of the parameter.

Definition at line 171 of file BCParameter.h.

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.

double BCParameter::fUpperLimit [private]

The upper limit of the parameter value.

Definition at line 183 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.


The documentation for this class was generated from the following files:
Generated on Thu Feb 11 11:29:37 2010 for BayesianAnalysisToolkit by  doxygen 1.5.1