ROL
Public Member Functions | Private Member Functions | Private Attributes | List of all members
ROL::Sketch< Real > Class Template Reference

Provides an interface for randomized sketching. More...

#include <ROL_Sketch.hpp>

Public Member Functions

virtual ~Sketch (void)
 
 Sketch (const Vector< Real > &x, const int ncol, const int rank, const int solverType=0)
 
void setRank (const int rank)
 
void update (void)
 
void advance (const Real alpha, Vector< Real > &h, const int col, const Real beta=1.0)
 
void reconstruct (Vector< Real > &a, const int col)
 
bool test (const int rank, std::ostream &outStream=std::cout, const int verbosity=0)
 

Private Member Functions

void mgs (std::vector< Ptr< Vector< Real >>> &Y) const
 
void computeQ (void)
 
void computeX (void)
 
bool testQ (std::ostream &outStream=std::cout, const int verbosity=0)
 
void reset (void)
 

Private Attributes

std::vector< Ptr< Vector< Real > > > Psi_
 
std::vector< Ptr< Vector< Real > > > Y_
 
LA::Matrix< Real > Omega_
 
LA::Matrix< Real > W_
 
int ncol_
 
int rank_
 
int k_
 
int l_
 
ROL::LAPACK< int, Real > lapack_
 
int solverType_
 
bool flagQ_
 
bool flagX_
 

Detailed Description

template<class Real>
class ROL::Sketch< Real >

Provides an interface for randomized sketching.


Definition at line 62 of file ROL_Sketch.hpp.

Constructor & Destructor Documentation

template<class Real>
virtual ROL::Sketch< Real >::~Sketch ( void  )
inlinevirtual

Definition at line 192 of file ROL_Sketch.hpp.

template<class Real>
ROL::Sketch< Real >::Sketch ( const Vector< Real > &  x,
const int  ncol,
const int  rank,
const int  solverType = 0 
)
inline

Member Function Documentation

template<class Real>
void ROL::Sketch< Real >::mgs ( std::vector< Ptr< Vector< Real >>> &  Y) const
inlineprivate

Definition at line 75 of file ROL_Sketch.hpp.

References ROL::Sketch< Real >::k_.

Referenced by ROL::Sketch< Real >::computeQ().

template<class Real>
void ROL::Sketch< Real >::computeQ ( void  )
inlineprivate
template<class Real>
void ROL::Sketch< Real >::computeX ( void  )
inlineprivate
template<class Real>
bool ROL::Sketch< Real >::testQ ( std::ostream &  outStream = std::cout,
const int  verbosity = 0 
)
inlineprivate
template<class Real>
void ROL::Sketch< Real >::reset ( void  )
inlineprivate
template<class Real>
void ROL::Sketch< Real >::setRank ( const int  rank)
inline
template<class Real>
void ROL::Sketch< Real >::update ( void  )
inline
template<class Real>
void ROL::Sketch< Real >::advance ( const Real  alpha,
Vector< Real > &  h,
const int  col,
const Real  beta = 1.0 
)
inline
template<class Real>
void ROL::Sketch< Real >::reconstruct ( Vector< Real > &  a,
const int  col 
)
inline
template<class Real>
bool ROL::Sketch< Real >::test ( const int  rank,
std::ostream &  outStream = std::cout,
const int  verbosity = 0 
)
inline

Member Data Documentation

template<class Real>
std::vector<Ptr<Vector<Real> > > ROL::Sketch< Real >::Psi_
private
template<class Real>
std::vector<Ptr<Vector<Real> > > ROL::Sketch< Real >::Y_
private
template<class Real>
LA::Matrix<Real> ROL::Sketch< Real >::Omega_
private
template<class Real>
LA::Matrix<Real> ROL::Sketch< Real >::W_
private
template<class Real>
int ROL::Sketch< Real >::ncol_
private
template<class Real>
int ROL::Sketch< Real >::rank_
private

Definition at line 68 of file ROL_Sketch.hpp.

Referenced by ROL::Sketch< Real >::setRank(), and ROL::Sketch< Real >::Sketch().

template<class Real>
int ROL::Sketch< Real >::k_
private
template<class Real>
int ROL::Sketch< Real >::l_
private
template<class Real>
ROL::LAPACK<int,Real> ROL::Sketch< Real >::lapack_
private

Definition at line 70 of file ROL_Sketch.hpp.

Referenced by ROL::Sketch< Real >::computeX().

template<class Real>
int ROL::Sketch< Real >::solverType_
private

Definition at line 71 of file ROL_Sketch.hpp.

Referenced by ROL::Sketch< Real >::computeX().

template<class Real>
bool ROL::Sketch< Real >::flagQ_
private
template<class Real>
bool ROL::Sketch< Real >::flagX_
private

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