ROL
ROL::details::MINRES< Real > Class Template Reference

#include <ROL_MINRES.hpp>

Inheritance diagram for ROL::details::MINRES< Real >:

Public Member Functions

 MINRES (Real absTol=1.e-4, Real relTol=1.e-2, unsigned maxit=100, bool useInexact=false)
virtual Real run (V &x, OP &A, const V &b, OP &M, int &iter, int &flag) override
Public Member Functions inherited from ROL::Krylov< Real >
virtual ~Krylov (void)
 Krylov (Real absTol=1.e-4, Real relTol=1.e-2, unsigned maxit=100)
 Krylov (ROL::ParameterList &parlist)
void resetAbsoluteTolerance (const Real absTol)
void resetRelativeTolerance (const Real relTol)
void resetMaximumIteration (const unsigned maxit)
Real getAbsoluteTolerance (void) const
Real getRelativeTolerance (void) const
unsigned getMaximumIteration (void) const

Private Types

using V = Vector<Real>
using OP = LinearOperator<Real>

Private Member Functions

void givens (Real &c, Real &s, Real &r, Real a, Real b) const

Private Attributes

Real resnorm_
int maxiter_
bool useInexact_
std::array< Real, 4 > H_
std::array< Real, 2 > rhs_
VectorCloneMap< Real > clones_

Detailed Description

template<typename Real>
class ROL::details::MINRES< Real >

Definition at line 29 of file ROL_MINRES.hpp.

Member Typedef Documentation

◆ V

template<typename Real>
using ROL::details::MINRES< Real >::V = Vector<Real>
private

Definition at line 31 of file ROL_MINRES.hpp.

◆ OP

template<typename Real>
using ROL::details::MINRES< Real >::OP = LinearOperator<Real>
private

Definition at line 32 of file ROL_MINRES.hpp.

Constructor & Destructor Documentation

◆ MINRES()

template<typename Real>
ROL::details::MINRES< Real >::MINRES ( Real absTol = 1.e-4,
Real relTol = 1.e-2,
unsigned maxit = 100,
bool useInexact = false )
inline

Definition at line 77 of file ROL_MINRES.hpp.

References clones_, ROL::Krylov< Real >::Krylov(), and useInexact_.

Member Function Documentation

◆ givens()

template<typename Real>
void ROL::details::MINRES< Real >::givens ( Real & c,
Real & s,
Real & r,
Real a,
Real b ) const
inlineprivate

Definition at line 45 of file ROL_MINRES.hpp.

References zero.

Referenced by run().

◆ run()

template<typename Real>
virtual Real ROL::details::MINRES< Real >::run ( V & x,
OP & A,
const V & b,
OP & M,
int & iter,
int & flag )
inlineoverridevirtual

Member Data Documentation

◆ resnorm_

template<typename Real>
Real ROL::details::MINRES< Real >::resnorm_
private

Definition at line 37 of file ROL_MINRES.hpp.

Referenced by run().

◆ maxiter_

template<typename Real>
int ROL::details::MINRES< Real >::maxiter_
private

Definition at line 38 of file ROL_MINRES.hpp.

◆ useInexact_

template<typename Real>
bool ROL::details::MINRES< Real >::useInexact_
private

Definition at line 39 of file ROL_MINRES.hpp.

Referenced by MINRES(), and run().

◆ H_

template<typename Real>
std::array<Real,4> ROL::details::MINRES< Real >::H_
private

Definition at line 40 of file ROL_MINRES.hpp.

Referenced by run().

◆ rhs_

template<typename Real>
std::array<Real,2> ROL::details::MINRES< Real >::rhs_
private

Definition at line 41 of file ROL_MINRES.hpp.

Referenced by run().

◆ clones_

template<typename Real>
VectorCloneMap<Real> ROL::details::MINRES< Real >::clones_
private

Definition at line 43 of file ROL_MINRES.hpp.

Referenced by MINRES(), and run().


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