Chroma::llincomb< T, C > Class Template Reference
[Fermion linear operators]

Linear combination of a Linear Operator. More...

#include <llincomb.h>

Inheritance diagram for Chroma::llincomb< T, C >:

Chroma::LinearOperator< T > List of all members.

Public Member Functions

 llincomb (const LinearOperator< T > *p, const C &add_const_, const C &scale_fact_)
 Initialize pointer with existing pointer.
 llincomb (Handle< const LinearOperator< T > > p, const C &add_const_, const C &scale_fact_)
 Copy pointer (one more owner).
 ~llincomb ()
 Destructor.
const Subset & subset () const
 Subset comes from underlying operator.
void operator() (T &chi, const T &psi, enum PlusMinus isign) const
 Apply the operator onto a source vector.

Private Attributes

const Handle< const LinearOperator<
T > > 
A
const C add_const
const C scale_fact

Detailed Description

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

Linear combination of a Linear Operator.

This operator does the linear combination (z1 + z2*B)*psi

Definition at line 20 of file llincomb.h.


Constructor & Destructor Documentation

template<typename T, class C>
Chroma::llincomb< T, C >::llincomb ( const LinearOperator< T > *  p,
const C &  add_const_,
const C &  scale_fact_ 
) [inline]

Initialize pointer with existing pointer.

Requires that the pointer p is a return value of new

Definition at line 25 of file llincomb.h.

template<typename T, class C>
Chroma::llincomb< T, C >::llincomb ( Handle< const LinearOperator< T > >  p,
const C &  add_const_,
const C &  scale_fact_ 
) [inline]

Copy pointer (one more owner).

Definition at line 29 of file llincomb.h.

template<typename T, class C>
Chroma::llincomb< T, C >::~llincomb (  )  [inline]

Destructor.

Definition at line 33 of file llincomb.h.


Member Function Documentation

template<typename T, class C>
void Chroma::llincomb< T, C >::operator() ( T chi,
const T psi,
enum PlusMinus  isign 
) const [inline, virtual]

Apply the operator onto a source vector.

For this operator, the sign is ignored

Implements Chroma::LinearOperator< T >.

Definition at line 40 of file llincomb.h.

References Chroma::llincomb< T, C >::A, Chroma::llincomb< T, C >::add_const, and Chroma::llincomb< T, C >::scale_fact.

template<typename T, class C>
const Subset& Chroma::llincomb< T, C >::subset ( void   )  const [inline, virtual]

Subset comes from underlying operator.

Implements Chroma::LinearOperator< T >.

Definition at line 36 of file llincomb.h.

References Chroma::llincomb< T, C >::A.


Member Data Documentation

template<typename T, class C>
const Handle< const LinearOperator<T> > Chroma::llincomb< T, C >::A [private]

Definition at line 49 of file llincomb.h.

Referenced by Chroma::llincomb< T, C >::operator()(), and Chroma::llincomb< T, C >::subset().

template<typename T, class C>
const C Chroma::llincomb< T, C >::add_const [private]

Definition at line 50 of file llincomb.h.

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

template<typename T, class C>
const C Chroma::llincomb< T, C >::scale_fact [private]

Definition at line 51 of file llincomb.h.

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


The documentation for this class was generated from the following file:
Generated on Sun Nov 22 04:40:10 2009 for CHROMA by  doxygen 1.4.7