ROL
Public Member Functions | Protected Attributes | List of all members
InnerProductMatrix< Real > Class Template Reference

#include <InnerProductMatrix.hpp>

+ Inheritance diagram for InnerProductMatrix< Real >:

Public Member Functions

 InnerProductMatrix (const std::vector< Real > &U, const std::vector< Real > &V, const std::vector< Real > &w, const int a=1)
 
 InnerProductMatrix (const std::vector< Real > &U, const std::vector< Real > &V, const std::vector< Real > &w, const std::vector< Real > &a)
 
 InnerProductMatrix (InnerProductMatrix< Real > *ipm)
 
void update (const std::vector< Real > &a)
 
virtual ~InnerProductMatrix ()
 
void apply (ROL::Ptr< const std::vector< Real > > xp, ROL::Ptr< std::vector< Real > > bp)
 
void applyadd (ROL::Ptr< const std::vector< Real > > xp, ROL::Ptr< std::vector< Real > > bp)
 
void applyaddtimes (ROL::Ptr< const std::vector< Real > > xp, ROL::Ptr< std::vector< Real > > bp, Real factor)
 
Real inner (ROL::Ptr< const std::vector< Real > > up, ROL::Ptr< const std::vector< Real > > vp)
 Compute the inner product \(u^\top M v\).
 
virtual void solve (ROL::Ptr< const std::vector< Real > > bp, ROL::Ptr< std::vector< Real > > xp)
 
virtual Real inv_inner (ROL::Ptr< const std::vector< Real > > up, ROL::Ptr< const std::vector< Real > > vp)
 

Protected Attributes

const int nq_
 
const int ni_
 
const std::vector< Real > U_
 
const std::vector< Real > V_
 
const std::vector< Real > w_
 
std::vector< Real > M_
 

Detailed Description

template<class Real>
class InnerProductMatrix< Real >

Definition at line 11 of file InnerProductMatrix.hpp.

Constructor & Destructor Documentation

◆ InnerProductMatrix() [1/3]

template<class Real >
InnerProductMatrix< Real >::InnerProductMatrix ( const std::vector< Real > & U,
const std::vector< Real > & V,
const std::vector< Real > & w,
const int a = 1 )

◆ InnerProductMatrix() [2/3]

template<class Real >
InnerProductMatrix< Real >::InnerProductMatrix ( const std::vector< Real > & U,
const std::vector< Real > & V,
const std::vector< Real > & w,
const std::vector< Real > & a )

◆ InnerProductMatrix() [3/3]

template<class Real >
InnerProductMatrix< Real >::InnerProductMatrix ( InnerProductMatrix< Real > * ipm)

◆ ~InnerProductMatrix()

template<class Real >
InnerProductMatrix< Real >::~InnerProductMatrix ( )
virtual

Definition at line 98 of file InnerProductMatrix.hpp.

Member Function Documentation

◆ update()

template<class Real >
void InnerProductMatrix< Real >::update ( const std::vector< Real > & a)

Definition at line 133 of file InnerProductMatrix.hpp.

◆ apply()

template<class Real >
void InnerProductMatrix< Real >::apply ( ROL::Ptr< const std::vector< Real > > xp,
ROL::Ptr< std::vector< Real > > bp )

Definition at line 102 of file InnerProductMatrix.hpp.

◆ applyadd()

template<class Real >
void InnerProductMatrix< Real >::applyadd ( ROL::Ptr< const std::vector< Real > > xp,
ROL::Ptr< std::vector< Real > > bp )

Definition at line 113 of file InnerProductMatrix.hpp.

◆ applyaddtimes()

template<class Real >
void InnerProductMatrix< Real >::applyaddtimes ( ROL::Ptr< const std::vector< Real > > xp,
ROL::Ptr< std::vector< Real > > bp,
Real factor )

Definition at line 123 of file InnerProductMatrix.hpp.

◆ inner()

template<class Real >
Real InnerProductMatrix< Real >::inner ( ROL::Ptr< const std::vector< Real > > up,
ROL::Ptr< const std::vector< Real > > vp )

Compute the inner product \(u^\top M v\).

Definition at line 151 of file InnerProductMatrix.hpp.

◆ solve()

template<class Real >
virtual void InnerProductMatrix< Real >::solve ( ROL::Ptr< const std::vector< Real > > bp,
ROL::Ptr< std::vector< Real > > xp )
inlinevirtual

Reimplemented in InnerProductMatrixSolver< Real >.

Definition at line 43 of file InnerProductMatrix.hpp.

◆ inv_inner()

template<class Real >
virtual Real InnerProductMatrix< Real >::inv_inner ( ROL::Ptr< const std::vector< Real > > up,
ROL::Ptr< const std::vector< Real > > vp )
inlinevirtual

Reimplemented in InnerProductMatrixSolver< Real >.

Definition at line 47 of file InnerProductMatrix.hpp.

Member Data Documentation

◆ nq_

template<class Real >
const int InnerProductMatrix< Real >::nq_
protected

◆ ni_

template<class Real >
const int InnerProductMatrix< Real >::ni_
protected

◆ U_

template<class Real >
const std::vector<Real> InnerProductMatrix< Real >::U_
protected

◆ V_

template<class Real >
const std::vector<Real> InnerProductMatrix< Real >::V_
protected

◆ w_

template<class Real >
const std::vector<Real> InnerProductMatrix< Real >::w_
protected

◆ M_

template<class Real >
std::vector<Real> InnerProductMatrix< Real >::M_
protected

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