MC++
Polynomial Model Arithmetic for Factorable Functions

Classes

class  mc::PolyModel::Exceptions
 Exceptions of mc::PolyModel. More...
 

Functions

 mc::PolyModel::PolyModel (const unsigned int nvar, const unsigned int nord)
 Constructor of polynomial model environment for nvar variables and order nord
 
virtual mc::PolyModel::~PolyModel ()
 Destructor of polynomial model environment.
 
unsigned int mc::PolyModel::nvar () const
 Number of variables in polynomial model environment.
 
unsigned int mc::PolyModel::nord () const
 Order of polynomial model environment.
 
unsigned int mc::PolyModel::nmon () const
 Total number of monomial terms in polynomial model.
 
const unsigned int * mc::PolyModel::expmon () const
 Const pointer to array of size nmon()*nvar() with variable exponents on each monomial term. The exponent for variable ivar in monomial term imon is at position imon*nvar()+ivar.
 
unsigned int mc::PolyModel::loc_expmon (const unsigned int *iexp) const
 Index of monomial term whose variable exponents are the same as those in array iexp (of size nvar())
 
const unsigned int * mc::PolyModel::posord () const
 Array of size _nord with indices of first monomial term of order iord=1,...,_nord in polynomial model.
 
poly_size mc::PolyModel::get_binom (const unsigned int n, const unsigned int k) const
 Get binomial coefficient \(\left(\stackrel{n}{k}\right)\).
 
 mc::PolyVar< T >::PolyVar (PolyModel *env=0)
 Constructor of variable linked to polynomial model environment env
 
 mc::PolyVar< T >::PolyVar (const PolyVar< T > &var)
 Copy constructor of variable.
 
virtual mc::PolyVar< T >::~PolyVar ()
 Destructor of variable.
 
virtual PolyVar< T > & mc::PolyVar< T >::set (PolyModel *env)
 Set polynomial model environment in variable as env
 
virtual PolyVar< T > & mc::PolyVar< T >::set (const double *coefmon)
 Set multivariate polynomial coefficients in variable as coefmon
 
virtual PolyVar< T > & mc::PolyVar< T >::set (std::pair< unsigned int, const double * > &coefmon)
 Set multivariate polynomial coefficients in variable as coefmon - only first coefmon.first coefficients are set.
 
virtual PolyVar< T > & mc::PolyVar< T >::set (const T &bndrem)
 Set remainder term in variable as bndrem
 
virtual PolyVar< T > & mc::PolyVar< T >::set (const PolyVar< T > &var, const bool reset=true)
 Set multivariate polynomial coefficients and remainder term equal to those in variable var, possibly defined in another Taylor model environment with less variables or with a different expansion order. Coefficients involving other variables or higher order are initialized to 0 if reset=true (default), otherwise they are left unmodified. Higher-order terms in TV are bounded and added to the remainder bound.
 
virtual PolyVar< T > & mc::PolyVar< T >::get (PolyVar< T > &var, const bool reset=false)
 Copy multivariate polynomial coefficients from current variable into variable var, possibly defined in another polynomial model environment with less variables or with a lower expansion order. Copied coefficients are reset to 0 in current Taylor variable if reset=true, otherwise they are left unmodified (default).
 
virtual PolyModel * mc::PolyVar< T >::env () const
 Get pointer to associated polynomial model environment.
 
virtual T mc::PolyVar< T >::bound (const int type) const
 Compute bound on variable using bounder type
 
mc::PolyVar< T >::bound () const
 Retreive bound on variable using default bounder.
 
mc::PolyVar< T >::bndpol () const
 Retreive bound on multivariate polynomial using default bounder.
 
mc::PolyVar< T >::bndord (const unsigned int iord) const
 Retreive bound on all terms with (total) order iord in polynomial model.
 
mc::PolyVar< T >::remainder () const
 Return remainder term of variable.
 
virtual T mc::PolyVar< T >::B (const int type) const
 Shortcut to mc::PolyVar::bound.
 
virtual T mc::PolyVar< T >::B () const
 Shortcut to mc::PolyVar::bound.
 
mc::PolyVar< T >::R () const
 Shortcut to mc::PolyVar::remainder.
 
double mc::PolyVar< T >::coefmon (const unsigned int *iexp) const
 Get (possibly scaled) coefficient in monomial term with variable exponents as given in iexp
 
std::pair< unsigned int, const
double * > 
mc::PolyVar< T >::coefmon () const
 Get pair of size of, and const pointer to, array of (possibly scaled) monomial coefficients in multivariate polynomial of Taylor variable.
 
std::pair< unsigned int, const
unsigned int * > 
mc::PolyVar< T >::expmon () const
 Get pair of size of, and const pointer to, array of monomial exponents in multivariate polynomial of Taylor variable.
 
virtual PolyVar< T > & mc::PolyVar< T >::operator= (const PolyVar< T > &)
 Overloaded operator '=' for polynomial model variables.
 

Detailed Description