MC++
|
C++ template class computing spectral bounds for the Hessian matrix of a factorable function on a box. More...
#include <specbnd.hpp>
Classes | |
class | Exceptions |
Exceptions of mc::Specbnd. More... | |
struct | Options |
Options of mc::Specbnd. More... | |
Public Member Functions | |
Specbnd () | |
Default constructor (needed to declare arrays of Specbnd) | |
Specbnd (const double c) | |
Constructor for real scalar c | |
Specbnd (const T &B) | |
Constructor for an interval B | |
Specbnd (const T &B, const unsigned int i, const unsigned int n) | |
Constructor for a variable with range B and index i of n independent variables. | |
Specbnd (const Specbnd< T > &x) | |
Copy constructor. | |
~Specbnd () | |
Destructor. | |
Specbnd< T > & | set (const T &B, const unsigned int i, const unsigned int n) |
Set variable with range B and index i of n independent variables. | |
Specbnd< T > & | set (const fadbad::F< T > &FB, const T &SB) |
Set function and first derivative bounds as well as spectral bounds to, respectively, FB and SB | |
Specbnd< T > & | dep (const unsigned int i, const unsigned int n) |
Set the index of a variable (and total number of variables) | |
unsigned int | dep () const |
Return number of independent variables. | |
const T & | I () const |
Return function bounds. | |
const fadbad::F< T > & | FI () const |
Return function and gradient bounds. | |
const T & | SI () const |
Return spectral bounds for Hessian matrix. | |
Static Public Member Functions | |
static std::pair< double, double > | spectrum (const fadbad::B< fadbad::F< double > > *D2X) |
Compute spectrum of Hessian matrix D2X of type fadbad::B< fadbad::F<double> >* using LAPACK function dsyev . | |
static std::pair< double, double > | spectrum (const fadbad::F< fadbad::F< double > > &D2X) |
Compute spectrum of Hessian matrix D2F of type fadbad::F< fadbad::F<double> > using LAPACK function dsyev . | |
static std::pair< double, double > | spectral_bound (const fadbad::B< fadbad::F< T > > *D2X) |
Compute spectral bound of interval Hessian matrix D2X of type fadbad::B< fadbad::F<T> >*. The bounding method is selected via mc::Specbnd::Options::HESSBND. | |
static std::pair< double, double > | spectral_bound (const fadbad::F< fadbad::F< T > > &D2X) |
Compute spectral bound of interval Hessian matrix D2X of type fadbad::F< fadbad::F<T> >. The bounding method is selected via mc::Specbnd::Options::HESSBND. | |
mc::Specbnd<T> is a C++ template class computing spectral bounds for the Hessian matrix of a factorable function on a box. The template parameter T corresponds to the type used in the underlying interval arithmetic calculations.