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

#include <FiniteDifference.hpp>

Public Member Functions

 FiniteDifference (int n, double dx)
 
void solve (ROL::Ptr< const std::vector< Real > > fp, ROL::Ptr< std::vector< Real > > up)
 Given f, compute -u''=f. More...
 
void solve (ROL::Ptr< std::vector< Real > > up)
 Same as above but with overwrite in place. More...
 
void apply (ROL::Ptr< const std::vector< Real > > up, ROL::Ptr< std::vector< Real > > fp)
 Given u, compute f = -u''. More...
 
void apply (ROL::Ptr< std::vector< Real > > fp)
 Same as above but with overwrite in place. More...
 

Private Attributes

int n_
 
double dx2_
 
Teuchos::LAPACK< int, Real > lapack_
 
std::vector< Real > dl_
 
std::vector< Real > d_
 
std::vector< Real > du_
 
std::vector< Real > du2_
 
std::vector< int > ipiv_
 
int info_
 

Detailed Description

template<class Real>
class FiniteDifference< Real >

Definition at line 16 of file FiniteDifference.hpp.

Constructor & Destructor Documentation

template<class Real >
FiniteDifference< Real >::FiniteDifference ( int  n,
double  dx 
)
inline

Definition at line 43 of file FiniteDifference.hpp.

Member Function Documentation

template<class Real >
void FiniteDifference< Real >::solve ( ROL::Ptr< const std::vector< Real > >  fp,
ROL::Ptr< std::vector< Real > >  up 
)
inline

Given f, compute -u''=f.

Definition at line 54 of file FiniteDifference.hpp.

template<class Real >
void FiniteDifference< Real >::solve ( ROL::Ptr< std::vector< Real > >  up)
inline

Same as above but with overwrite in place.

Definition at line 62 of file FiniteDifference.hpp.

template<class Real >
void FiniteDifference< Real >::apply ( ROL::Ptr< const std::vector< Real > >  up,
ROL::Ptr< std::vector< Real > >  fp 
)
inline

Given u, compute f = -u''.

Definition at line 67 of file FiniteDifference.hpp.

template<class Real >
void FiniteDifference< Real >::apply ( ROL::Ptr< std::vector< Real > >  fp)
inline

Same as above but with overwrite in place.

Definition at line 77 of file FiniteDifference.hpp.

Member Data Documentation

template<class Real >
int FiniteDifference< Real >::n_
private

Definition at line 19 of file FiniteDifference.hpp.

template<class Real >
double FiniteDifference< Real >::dx2_
private

Definition at line 20 of file FiniteDifference.hpp.

template<class Real >
Teuchos::LAPACK<int,Real> FiniteDifference< Real >::lapack_
private

Definition at line 21 of file FiniteDifference.hpp.

template<class Real >
std::vector<Real> FiniteDifference< Real >::dl_
private

Definition at line 24 of file FiniteDifference.hpp.

template<class Real >
std::vector<Real> FiniteDifference< Real >::d_
private

Definition at line 27 of file FiniteDifference.hpp.

template<class Real >
std::vector<Real> FiniteDifference< Real >::du_
private

Definition at line 30 of file FiniteDifference.hpp.

template<class Real >
std::vector<Real> FiniteDifference< Real >::du2_
private

Definition at line 33 of file FiniteDifference.hpp.

template<class Real >
std::vector<int> FiniteDifference< Real >::ipiv_
private

Definition at line 36 of file FiniteDifference.hpp.

template<class Real >
int FiniteDifference< Real >::info_
private

Definition at line 38 of file FiniteDifference.hpp.


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