CHROMA
Public Member Functions | Private Attributes | List of all members
Chroma::lopishift< T, C > Class Template Reference

#include <lopishift.h>

Inheritance diagram for Chroma::lopishift< T, C >:
Chroma::LinearOperator< T >

Public Member Functions

 lopishift (LinearOperator< T > *p, const C &s)
 Initialized from pointer. More...
 
 lopishift (Handle< LinearOperator< T > > p, const C &s)
 
 ~lopishift ()
 
const Subset & subset () const
 Subset comes from underlying operator. More...
 
virtual unsigned long nFlops () const
 
void operator() (T &chi, const T &psi, enum PlusMinus isign) const
 Apply the operator onto a source std::vector. More...
 
- Public Member Functions inherited from Chroma::LinearOperator< T >
virtual ~LinearOperator ()
 Virtual destructor to help with cleanup;. More...
 
virtual void operator() (T &chi, const T &psi, enum PlusMinus isign, Real epsilon) const
 Apply the operator onto a source std::vector to some precision. More...
 

Private Attributes

Handle< LinearOperator< T > > M
 
const C & shift_fact
 

Detailed Description

template<typename T, typename C>
class Chroma::lopishift< T, C >

Definition at line 13 of file lopishift.h.

Constructor & Destructor Documentation

◆ lopishift() [1/2]

template<typename T , typename C >
Chroma::lopishift< T, C >::lopishift ( LinearOperator< T > *  p,
const C &  s 
)
inline

Initialized from pointer.

Definition at line 18 of file lopishift.h.

◆ lopishift() [2/2]

template<typename T , typename C >
Chroma::lopishift< T, C >::lopishift ( Handle< LinearOperator< T > >  p,
const C &  s 
)
inline

Definition at line 20 of file lopishift.h.

◆ ~lopishift()

template<typename T , typename C >
Chroma::lopishift< T, C >::~lopishift ( )
inline

Definition at line 22 of file lopishift.h.

Member Function Documentation

◆ nFlops()

template<typename T , typename C >
virtual unsigned long Chroma::lopishift< T, C >::nFlops ( void  ) const
inlinevirtual

Return the number of flops performed by operator() Base linop returns 0 and this can be overridden

Reimplemented from Chroma::LinearOperator< T >.

Definition at line 27 of file lopishift.h.

References Chroma::lopishift< T, C >::M.

◆ operator()()

template<typename T , typename C >
void Chroma::lopishift< T, C >::operator() ( T chi,
const T psi,
enum PlusMinus  isign 
) const
inlinevirtual

Apply the operator onto a source std::vector.

For this operator, the sign is ignored

Implements Chroma::LinearOperator< T >.

Definition at line 33 of file lopishift.h.

References Chroma::chi(), Chroma::isign, Chroma::lopishift< T, C >::M, Chroma::PLUS, Chroma::psi, Chroma::lopishift< T, C >::shift_fact, and Chroma::tmp.

◆ subset()

template<typename T , typename C >
const Subset& Chroma::lopishift< T, C >::subset ( void  ) const
inlinevirtual

Subset comes from underlying operator.

Implements Chroma::LinearOperator< T >.

Definition at line 25 of file lopishift.h.

References Chroma::lopishift< T, C >::M.

Member Data Documentation

◆ M

template<typename T , typename C >
Handle< LinearOperator<T> > Chroma::lopishift< T, C >::M
private

◆ shift_fact

template<typename T , typename C >
const C& Chroma::lopishift< T, C >::shift_fact
private

Definition at line 49 of file lopishift.h.

Referenced by Chroma::lopishift< T, C >::operator()().


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