KASKADE 7 development version
Public Types | Public Member Functions | List of all members
Bridge::IPLinearization< BarrierFunctional, VectorImpl, ImageImpl, QuadRule > Class Template Reference

Linearization for Constrained Optimization with Barrier methods. More...

#include <ip_aux.hh>

Detailed Description

template<class BarrierFunctional, class VectorImpl, class ImageImpl = VectorImpl, class QuadRule = TrapezoidalRule<typename BarrierFunctional::AnsatzVars::Grid::ctype, BarrierFunctional::AnsatzVars::Grid::dimension>>
class Bridge::IPLinearization< BarrierFunctional, VectorImpl, ImageImpl, QuadRule >

Linearization for Constrained Optimization with Barrier methods.

Combines the Functional to be minimized and appropriate barrier terms Barrier terms are assembled separately via a different type of quadrature rule.

Definition at line 31 of file ip_aux.hh.

Public Types

typedef BarrierFunctional IPFunctional
 
typedef BarrierFunctional::AnsatzVars::Grid Grid
 
typedef Grid::LeafGridView GridView
 
typedef VectorImpl DomainElement
 
typedef ImageImpl ImageElement
 
typedef BarrierFunctional::Scalar Scalar
 
typedef KaskadeLinearization< typename BarrierFunctional::OptimalityFunctional, VectorImpl > Unconstrained
 
typedef KaskadeLinearization< BarrierFunctional, VectorImpl, QuadRule > Barrier
 
typedef Dune::LinearOperator< DomainElement, ImageElementOperatorType
 

Public Member Functions

 IPLinearization (BarrierFunctional const &fu, DomainElement const &x_)
 
void precompute ()
 
double getMu () const
 Return gap parameter. More...
 
int cols (int cbegin, int cend) const
 
int rows (int cbegin, int cend) const
 
void getMatrixBlocks (MatrixAsTriplet< Scalar > &mat, int rbegin, int rend, int colbegin, int colend) const
 
void getRHSBlocks (std::vector< Scalar > &rhs, int rbegin, int rend) const
 
DomainElement const & getOriginImpl () const
 
int nRowBlocks () const
 
int nColBlocks () const
 
void flush ()
 
void touch ()
 
double getValue () const
 
double getL1norm () const
 
Barrier const & getBarrier () const
 
Unconstrained const & getUnconstrained () const
 

Member Typedef Documentation

◆ Barrier

template<class BarrierFunctional , class VectorImpl , class ImageImpl = VectorImpl, class QuadRule = TrapezoidalRule<typename BarrierFunctional::AnsatzVars::Grid::ctype, BarrierFunctional::AnsatzVars::Grid::dimension>>
typedef KaskadeLinearization<BarrierFunctional, VectorImpl, QuadRule> Bridge::IPLinearization< BarrierFunctional, VectorImpl, ImageImpl, QuadRule >::Barrier

Definition at line 42 of file ip_aux.hh.

◆ DomainElement

template<class BarrierFunctional , class VectorImpl , class ImageImpl = VectorImpl, class QuadRule = TrapezoidalRule<typename BarrierFunctional::AnsatzVars::Grid::ctype, BarrierFunctional::AnsatzVars::Grid::dimension>>
typedef VectorImpl Bridge::IPLinearization< BarrierFunctional, VectorImpl, ImageImpl, QuadRule >::DomainElement

Definition at line 37 of file ip_aux.hh.

◆ Grid

template<class BarrierFunctional , class VectorImpl , class ImageImpl = VectorImpl, class QuadRule = TrapezoidalRule<typename BarrierFunctional::AnsatzVars::Grid::ctype, BarrierFunctional::AnsatzVars::Grid::dimension>>
typedef BarrierFunctional::AnsatzVars::Grid Bridge::IPLinearization< BarrierFunctional, VectorImpl, ImageImpl, QuadRule >::Grid

Definition at line 35 of file ip_aux.hh.

◆ GridView

template<class BarrierFunctional , class VectorImpl , class ImageImpl = VectorImpl, class QuadRule = TrapezoidalRule<typename BarrierFunctional::AnsatzVars::Grid::ctype, BarrierFunctional::AnsatzVars::Grid::dimension>>
typedef Grid::LeafGridView Bridge::IPLinearization< BarrierFunctional, VectorImpl, ImageImpl, QuadRule >::GridView

Definition at line 36 of file ip_aux.hh.

◆ ImageElement

template<class BarrierFunctional , class VectorImpl , class ImageImpl = VectorImpl, class QuadRule = TrapezoidalRule<typename BarrierFunctional::AnsatzVars::Grid::ctype, BarrierFunctional::AnsatzVars::Grid::dimension>>
typedef ImageImpl Bridge::IPLinearization< BarrierFunctional, VectorImpl, ImageImpl, QuadRule >::ImageElement

Definition at line 38 of file ip_aux.hh.

◆ IPFunctional

template<class BarrierFunctional , class VectorImpl , class ImageImpl = VectorImpl, class QuadRule = TrapezoidalRule<typename BarrierFunctional::AnsatzVars::Grid::ctype, BarrierFunctional::AnsatzVars::Grid::dimension>>
typedef BarrierFunctional Bridge::IPLinearization< BarrierFunctional, VectorImpl, ImageImpl, QuadRule >::IPFunctional

Definition at line 34 of file ip_aux.hh.

◆ OperatorType

template<class BarrierFunctional , class VectorImpl , class ImageImpl = VectorImpl, class QuadRule = TrapezoidalRule<typename BarrierFunctional::AnsatzVars::Grid::ctype, BarrierFunctional::AnsatzVars::Grid::dimension>>
typedef Dune::LinearOperator<DomainElement, ImageElement> Bridge::IPLinearization< BarrierFunctional, VectorImpl, ImageImpl, QuadRule >::OperatorType

Definition at line 43 of file ip_aux.hh.

◆ Scalar

template<class BarrierFunctional , class VectorImpl , class ImageImpl = VectorImpl, class QuadRule = TrapezoidalRule<typename BarrierFunctional::AnsatzVars::Grid::ctype, BarrierFunctional::AnsatzVars::Grid::dimension>>
typedef BarrierFunctional::Scalar Bridge::IPLinearization< BarrierFunctional, VectorImpl, ImageImpl, QuadRule >::Scalar

Definition at line 39 of file ip_aux.hh.

◆ Unconstrained

template<class BarrierFunctional , class VectorImpl , class ImageImpl = VectorImpl, class QuadRule = TrapezoidalRule<typename BarrierFunctional::AnsatzVars::Grid::ctype, BarrierFunctional::AnsatzVars::Grid::dimension>>
typedef KaskadeLinearization<typename BarrierFunctional::OptimalityFunctional, VectorImpl> Bridge::IPLinearization< BarrierFunctional, VectorImpl, ImageImpl, QuadRule >::Unconstrained

Definition at line 41 of file ip_aux.hh.

Constructor & Destructor Documentation

◆ IPLinearization()

template<class BarrierFunctional , class VectorImpl , class ImageImpl = VectorImpl, class QuadRule = TrapezoidalRule<typename BarrierFunctional::AnsatzVars::Grid::ctype, BarrierFunctional::AnsatzVars::Grid::dimension>>
Bridge::IPLinearization< BarrierFunctional, VectorImpl, ImageImpl, QuadRule >::IPLinearization ( BarrierFunctional const &  fu,
DomainElement const &  x_ 
)
inline

Definition at line 45 of file ip_aux.hh.

Member Function Documentation

◆ cols()

template<class BarrierFunctional , class VectorImpl , class ImageImpl = VectorImpl, class QuadRule = TrapezoidalRule<typename BarrierFunctional::AnsatzVars::Grid::ctype, BarrierFunctional::AnsatzVars::Grid::dimension>>
int Bridge::IPLinearization< BarrierFunctional, VectorImpl, ImageImpl, QuadRule >::cols ( int  cbegin,
int  cend 
) const
inline

Definition at line 67 of file ip_aux.hh.

◆ flush()

template<class BarrierFunctional , class VectorImpl , class ImageImpl = VectorImpl, class QuadRule = TrapezoidalRule<typename BarrierFunctional::AnsatzVars::Grid::ctype, BarrierFunctional::AnsatzVars::Grid::dimension>>
void Bridge::IPLinearization< BarrierFunctional, VectorImpl, ImageImpl, QuadRule >::flush ( )
inline

◆ getBarrier()

template<class BarrierFunctional , class VectorImpl , class ImageImpl = VectorImpl, class QuadRule = TrapezoidalRule<typename BarrierFunctional::AnsatzVars::Grid::ctype, BarrierFunctional::AnsatzVars::Grid::dimension>>
Barrier const & Bridge::IPLinearization< BarrierFunctional, VectorImpl, ImageImpl, QuadRule >::getBarrier ( ) const
inline

Definition at line 128 of file ip_aux.hh.

◆ getL1norm()

template<class BarrierFunctional , class VectorImpl , class ImageImpl = VectorImpl, class QuadRule = TrapezoidalRule<typename BarrierFunctional::AnsatzVars::Grid::ctype, BarrierFunctional::AnsatzVars::Grid::dimension>>
double Bridge::IPLinearization< BarrierFunctional, VectorImpl, ImageImpl, QuadRule >::getL1norm ( ) const
inline

Definition at line 118 of file ip_aux.hh.

◆ getMatrixBlocks()

template<class BarrierFunctional , class VectorImpl , class ImageImpl = VectorImpl, class QuadRule = TrapezoidalRule<typename BarrierFunctional::AnsatzVars::Grid::ctype, BarrierFunctional::AnsatzVars::Grid::dimension>>
void Bridge::IPLinearization< BarrierFunctional, VectorImpl, ImageImpl, QuadRule >::getMatrixBlocks ( MatrixAsTriplet< Scalar > &  mat,
int  rbegin,
int  rend,
int  colbegin,
int  colend 
) const
inline

Definition at line 70 of file ip_aux.hh.

◆ getMu()

template<class BarrierFunctional , class VectorImpl , class ImageImpl = VectorImpl, class QuadRule = TrapezoidalRule<typename BarrierFunctional::AnsatzVars::Grid::ctype, BarrierFunctional::AnsatzVars::Grid::dimension>>
double Bridge::IPLinearization< BarrierFunctional, VectorImpl, ImageImpl, QuadRule >::getMu ( ) const
inline

Return gap parameter.

Definition at line 65 of file ip_aux.hh.

◆ getOriginImpl()

template<class BarrierFunctional , class VectorImpl , class ImageImpl = VectorImpl, class QuadRule = TrapezoidalRule<typename BarrierFunctional::AnsatzVars::Grid::ctype, BarrierFunctional::AnsatzVars::Grid::dimension>>
DomainElement const & Bridge::IPLinearization< BarrierFunctional, VectorImpl, ImageImpl, QuadRule >::getOriginImpl ( ) const
inline

Definition at line 99 of file ip_aux.hh.

◆ getRHSBlocks()

template<class BarrierFunctional , class VectorImpl , class ImageImpl = VectorImpl, class QuadRule = TrapezoidalRule<typename BarrierFunctional::AnsatzVars::Grid::ctype, BarrierFunctional::AnsatzVars::Grid::dimension>>
void Bridge::IPLinearization< BarrierFunctional, VectorImpl, ImageImpl, QuadRule >::getRHSBlocks ( std::vector< Scalar > &  rhs,
int  rbegin,
int  rend 
) const
inline

Definition at line 82 of file ip_aux.hh.

◆ getUnconstrained()

template<class BarrierFunctional , class VectorImpl , class ImageImpl = VectorImpl, class QuadRule = TrapezoidalRule<typename BarrierFunctional::AnsatzVars::Grid::ctype, BarrierFunctional::AnsatzVars::Grid::dimension>>
Unconstrained const & Bridge::IPLinearization< BarrierFunctional, VectorImpl, ImageImpl, QuadRule >::getUnconstrained ( ) const
inline

Definition at line 129 of file ip_aux.hh.

◆ getValue()

template<class BarrierFunctional , class VectorImpl , class ImageImpl = VectorImpl, class QuadRule = TrapezoidalRule<typename BarrierFunctional::AnsatzVars::Grid::ctype, BarrierFunctional::AnsatzVars::Grid::dimension>>
double Bridge::IPLinearization< BarrierFunctional, VectorImpl, ImageImpl, QuadRule >::getValue ( ) const
inline

Definition at line 108 of file ip_aux.hh.

◆ nColBlocks()

template<class BarrierFunctional , class VectorImpl , class ImageImpl = VectorImpl, class QuadRule = TrapezoidalRule<typename BarrierFunctional::AnsatzVars::Grid::ctype, BarrierFunctional::AnsatzVars::Grid::dimension>>
int Bridge::IPLinearization< BarrierFunctional, VectorImpl, ImageImpl, QuadRule >::nColBlocks ( ) const
inline

Definition at line 102 of file ip_aux.hh.

◆ nRowBlocks()

template<class BarrierFunctional , class VectorImpl , class ImageImpl = VectorImpl, class QuadRule = TrapezoidalRule<typename BarrierFunctional::AnsatzVars::Grid::ctype, BarrierFunctional::AnsatzVars::Grid::dimension>>
int Bridge::IPLinearization< BarrierFunctional, VectorImpl, ImageImpl, QuadRule >::nRowBlocks ( ) const
inline

Definition at line 101 of file ip_aux.hh.

◆ precompute()

template<class BarrierFunctional , class VectorImpl , class ImageImpl = VectorImpl, class QuadRule = TrapezoidalRule<typename BarrierFunctional::AnsatzVars::Grid::ctype, BarrierFunctional::AnsatzVars::Grid::dimension>>
void Bridge::IPLinearization< BarrierFunctional, VectorImpl, ImageImpl, QuadRule >::precompute ( )
inline

Definition at line 53 of file ip_aux.hh.

◆ rows()

template<class BarrierFunctional , class VectorImpl , class ImageImpl = VectorImpl, class QuadRule = TrapezoidalRule<typename BarrierFunctional::AnsatzVars::Grid::ctype, BarrierFunctional::AnsatzVars::Grid::dimension>>
int Bridge::IPLinearization< BarrierFunctional, VectorImpl, ImageImpl, QuadRule >::rows ( int  cbegin,
int  cend 
) const
inline

Definition at line 68 of file ip_aux.hh.

◆ touch()

template<class BarrierFunctional , class VectorImpl , class ImageImpl = VectorImpl, class QuadRule = TrapezoidalRule<typename BarrierFunctional::AnsatzVars::Grid::ctype, BarrierFunctional::AnsatzVars::Grid::dimension>>
void Bridge::IPLinearization< BarrierFunctional, VectorImpl, ImageImpl, QuadRule >::touch ( )
inline

Definition at line 106 of file ip_aux.hh.


The documentation for this class was generated from the following file: