BornAgain  1.19.0
Simulate and fit neutron and x-ray scattering at grazing incidence
RealLimits Class Reference

Limits for a real fit parameter. More...

Public Member Functions

bool hasLowerAndUpperLimits () const
 if has lower and upper limit
 
bool hasLowerLimit () const
 if has lower limit
 
bool hasUpperLimit () const
 if has upper limit
 
bool isInRange (double value) const
 returns true if proposed value is in limits range
 
bool isLimited () const
 
bool isLimitless () const
 
bool isLowerLimited () const
 
bool isNonnegative () const
 
bool isPositive () const
 
bool isUpperLimited () const
 
double lowerLimit () const
 Returns lower limit.
 
bool operator!= (const RealLimits &other) const
 
bool operator== (const RealLimits &other) const
 
void removeLimits ()
 remove limits
 
void removeLowerLimit ()
 remove lower limit
 
void removeUpperLimit ()
 remove upper limit
 
void setLimits (double xmin, double xmax)
 Sets lower and upper limits.
 
void setLowerLimit (double value)
 Sets lower limit.
 
void setUpperLimit (double value)
 Sets upper limit.
 
std::string toString () const
 
double upperLimit () const
 Returns upper limit.
 

Static Public Member Functions

static RealLimits limited (double left_bound_value, double right_bound_value)
 Creates an object bounded from the left and right.
 
static RealLimits limitless ()
 Creates an object withoud bounds (default)
 
static RealLimits lowerLimited (double bound_value)
 Creates an object bounded from the left.
 
static RealLimits nonnegative ()
 Creates an object which can have only positive values with 0. included.
 
static RealLimits positive ()
 Creates an object which can have only positive values (>0., zero is not included)
 
static RealLimits upperLimited (double bound_value)
 Creates an object bounded from the right.
 

Protected Member Functions

 RealLimits (bool has_lower_limit, bool has_upper_limit, double lower_limit, double upper_limit)
 

Protected Attributes

bool m_has_lower_limit
 
bool m_has_upper_limit
 parameter has lower bound
 
double m_lower_limit
 parameter has upper bound
 
double m_upper_limit
 minimum allowed value
 

Friends

std::ostream & operator<< (std::ostream &ostr, const RealLimits &m)
 Prints class.
 

Detailed Description

Limits for a real fit parameter.