RealComplexFFTLinearOp< RealScalar > Class Template Reference
[Templated FFT examples]

Simple example concrete subclass for a serial real-to-complex FFT. More...

#include <RealComplexFFTLinearOp.hpp>

Inheritance diagram for RealComplexFFTLinearOp< RealScalar >:

Inheritance graph
[legend]
List of all members.

Overridden from LinearOpBase

Teuchos::RCP< const Thyra::VectorSpaceBase<
RangeScalar > > 
range () const
 
Teuchos::RCP< const Thyra::VectorSpaceBase<
DomainScalar > > 
domain () const
 
bool applySupports (const Thyra::EConj conj) const
 
bool applyTransposeSupports (const Thyra::EConj conj) const
 
void apply (const Thyra::EConj conj, const Thyra::MultiVectorBase< DomainScalar > &X, Thyra::MultiVectorBase< RangeScalar > *Y, const RangeScalar alpha, const RangeScalar beta) const
 
void applyTranspose (const Thyra::EConj conj, const Thyra::MultiVectorBase< RangeScalar > &X, Thyra::MultiVectorBase< DomainScalar > *Y, const DomainScalar alpha, const DomainScalar beta) const
 

Overridden from LinearOpWithSolveBase

bool solveSupportsConj (Thyra::EConj conj) const
 
bool solveTransposeSupportsConj (Thyra::EConj conj) const
 
bool solveSupportsSolveMeasureType (Thyra::EConj conj, const Thyra::SolveMeasureType solveMeasureType) const
 
bool solveTransposeSupportsSolveMeasureType (Thyra::EConj conj, const Thyra::SolveMeasureType solveMeasureType) const
 
void solve (const Thyra::EConj conj, const Thyra::MultiVectorBase< RangeScalar > &B, Thyra::MultiVectorBase< DomainScalar > *X, const int numBlocks, const Thyra::BlockSolveCriteria< Scalar > blockSolveCriteria[], Thyra::SolveStatus< Scalar > blockSolveStatus[]) const
 
void solveTranspose (const Thyra::EConj conj, const Thyra::MultiVectorBase< DomainScalar > &B, Thyra::MultiVectorBase< RangeScalar > *X, const int numBlocks, const Thyra::BlockSolveCriteria< Scalar > blockSolveCriteria[], Thyra::SolveStatus< Scalar > blockSolveStatus[]) const
 

Public Types

typedef std::complex< RealScalar > RangeScalar
 
typedef RealScalar DomainScalar
 
typedef Teuchos::PromotionTraits<
RangeScalar, DomainScalar
>::promote 
Scalar
 

Public Member Functions

 RealComplexFFTLinearOp (const int N)
 

Detailed Description

template<class RealScalar>
class RealComplexFFTLinearOp< RealScalar >

Simple example concrete subclass for a serial real-to-complex FFT.

This is a very bad but straightforward implementation of a real-to-complex FFT operator that simply uses the implemention ComplexFFTLinearOp.

Examples:

RealComplexFFTLinearOp.hpp, and silly1DFFT_serial.cpp.

Definition at line 46 of file RealComplexFFTLinearOp.hpp.


Member Typedef Documentation

template<class RealScalar>
typedef std::complex<RealScalar> RealComplexFFTLinearOp< RealScalar >::RangeScalar

Definition at line 51 of file RealComplexFFTLinearOp.hpp.

template<class RealScalar>
typedef RealScalar RealComplexFFTLinearOp< RealScalar >::DomainScalar

Definition at line 53 of file RealComplexFFTLinearOp.hpp.

template<class RealScalar>
typedef Teuchos::PromotionTraits<RangeScalar,DomainScalar>::promote RealComplexFFTLinearOp< RealScalar >::Scalar

Definition at line 55 of file RealComplexFFTLinearOp.hpp.


Constructor & Destructor Documentation

template<class RealScalar>
RealComplexFFTLinearOp< RealScalar >::RealComplexFFTLinearOp ( const int  N  ) 

Examples:
RealComplexFFTLinearOp.hpp.

Definition at line 141 of file RealComplexFFTLinearOp.hpp.


Member Function Documentation

template<class RealScalar>
Teuchos::RCP< const Thyra::VectorSpaceBase< typename RealComplexFFTLinearOp< RealScalar >::RangeScalar > > RealComplexFFTLinearOp< RealScalar >::range (  )  const [virtual]

Implements Thyra::LinearOpBase< RangeScalar, DomainScalar >.

Examples:
RealComplexFFTLinearOp.hpp.

Definition at line 149 of file RealComplexFFTLinearOp.hpp.

template<class RealScalar>
Teuchos::RCP< const Thyra::VectorSpaceBase< typename RealComplexFFTLinearOp< RealScalar >::DomainScalar > > RealComplexFFTLinearOp< RealScalar >::domain (  )  const [virtual]

Implements Thyra::LinearOpBase< RangeScalar, DomainScalar >.

Examples:
RealComplexFFTLinearOp.hpp.

Definition at line 156 of file RealComplexFFTLinearOp.hpp.

template<class RealScalar>
bool RealComplexFFTLinearOp< RealScalar >::applySupports ( const Thyra::EConj  conj  )  const [virtual]

Reimplemented from Thyra::LinearOpBase< RangeScalar, DomainScalar >.

Examples:
RealComplexFFTLinearOp.hpp.

Definition at line 162 of file RealComplexFFTLinearOp.hpp.

template<class RealScalar>
bool RealComplexFFTLinearOp< RealScalar >::applyTransposeSupports ( const Thyra::EConj  conj  )  const [virtual]

Reimplemented from Thyra::LinearOpBase< RangeScalar, DomainScalar >.

Examples:
RealComplexFFTLinearOp.hpp.

Definition at line 168 of file RealComplexFFTLinearOp.hpp.

template<class RealScalar>
void RealComplexFFTLinearOp< RealScalar >::apply ( const Thyra::EConj  conj,
const Thyra::MultiVectorBase< DomainScalar > &  X,
Thyra::MultiVectorBase< RangeScalar > *  Y,
const RangeScalar  alpha,
const RangeScalar  beta 
) const

Examples:
RealComplexFFTLinearOp.hpp.

Definition at line 174 of file RealComplexFFTLinearOp.hpp.

template<class RealScalar>
void RealComplexFFTLinearOp< RealScalar >::applyTranspose ( const Thyra::EConj  conj,
const Thyra::MultiVectorBase< RangeScalar > &  X,
Thyra::MultiVectorBase< DomainScalar > *  Y,
const DomainScalar  alpha,
const DomainScalar  beta 
) const

Examples:
RealComplexFFTLinearOp.hpp.

Definition at line 189 of file RealComplexFFTLinearOp.hpp.

template<class RealScalar>
bool RealComplexFFTLinearOp< RealScalar >::solveSupportsConj ( Thyra::EConj  conj  )  const [virtual]

Reimplemented from Thyra::LinearOpWithSolveBase< std::complex< RealScalar >, RealScalar >.

Examples:
RealComplexFFTLinearOp.hpp.

Definition at line 206 of file RealComplexFFTLinearOp.hpp.

template<class RealScalar>
bool RealComplexFFTLinearOp< RealScalar >::solveTransposeSupportsConj ( Thyra::EConj  conj  )  const [virtual]

Reimplemented from Thyra::LinearOpWithSolveBase< std::complex< RealScalar >, RealScalar >.

Examples:
RealComplexFFTLinearOp.hpp.

Definition at line 212 of file RealComplexFFTLinearOp.hpp.

template<class RealScalar>
bool RealComplexFFTLinearOp< RealScalar >::solveSupportsSolveMeasureType ( Thyra::EConj  conj,
const Thyra::SolveMeasureType  solveMeasureType 
) const

Examples:
RealComplexFFTLinearOp.hpp.

Definition at line 218 of file RealComplexFFTLinearOp.hpp.

template<class RealScalar>
bool RealComplexFFTLinearOp< RealScalar >::solveTransposeSupportsSolveMeasureType ( Thyra::EConj  conj,
const Thyra::SolveMeasureType  solveMeasureType 
) const

Examples:
RealComplexFFTLinearOp.hpp.

Definition at line 224 of file RealComplexFFTLinearOp.hpp.

template<class RealScalar>
void RealComplexFFTLinearOp< RealScalar >::solve ( const Thyra::EConj  conj,
const Thyra::MultiVectorBase< RangeScalar > &  B,
Thyra::MultiVectorBase< DomainScalar > *  X,
const int  numBlocks,
const Thyra::BlockSolveCriteria< Scalar blockSolveCriteria[],
Thyra::SolveStatus< Scalar blockSolveStatus[] 
) const

Examples:
RealComplexFFTLinearOp.hpp.

Definition at line 230 of file RealComplexFFTLinearOp.hpp.

template<class RealScalar>
void RealComplexFFTLinearOp< RealScalar >::solveTranspose ( const Thyra::EConj  conj,
const Thyra::MultiVectorBase< DomainScalar > &  B,
Thyra::MultiVectorBase< RangeScalar > *  X,
const int  numBlocks,
const Thyra::BlockSolveCriteria< Scalar blockSolveCriteria[],
Thyra::SolveStatus< Scalar blockSolveStatus[] 
) const

Examples:
RealComplexFFTLinearOp.hpp.

Definition at line 246 of file RealComplexFFTLinearOp.hpp.


The documentation for this class was generated from the following file:
Generated on Wed May 12 21:42:47 2010 for Thyra Operator Solve Support by  doxygen 1.4.7