Thyra::ConstLinearOperator< RangeScalar, DomainScalar > Class Template Reference [Development of linear Abstract Numerical Algorithms (ANAs)]

`#include <Thyra_LinearOperatorDecl.hpp>`

Inheritance diagram for Thyra::ConstLinearOperator< RangeScalar, DomainScalar >:

[legend]
List of all members.

Public Member Functions

ConstLinearOperator ()

ConstLinearOperator (Teuchos::ConstHandleable< LinearOpBase< RangeScalar, DomainScalar > > *rawPtr)
Construct from a raw pointer.
ConstLinearOperator (const Teuchos::RefCountPtr< const LinearOpBase< RangeScalar, DomainScalar > > &smartPtr)
Construct from a smart pointer.
const VectorSpace< DomainScalar > domain () const
Return the domain space.
const VectorSpace< RangeScalar > range () const
Return the range space.
void apply (const ConstVector< DomainScalar > &in, Vector< RangeScalar > &out, const RangeScalar &alpha=1.0, const RangeScalar &beta=0.0) const
Apply the linear operator.
void applyTranspose (const ConstVector< RangeScalar > &in, Vector< DomainScalar > &out, const DomainScalar &alpha=1.0, const DomainScalar &beta=0.0) const
Apply the transpose of the linear operator.
int numBlockRows () const
Return the number of block rows.
int numBlockCols () const
Return the number of block columns.
ConstLinearOperator< RangeScalar,
DomainScalar >
getBlock (int blockRow, int blockCol) const
Return the (blockRow, blockCol)-th subblock.

Related Functions

(Note that these are not member functions.)

ConstLinearOperator< Scalar > operator * (const Scalar &a, const ConstLinearOperator< Scalar > &A)
Implicitly scale a linear operator.
ConstLinearOperator< Scalar > operator * (const ConstLinearOperator< Scalar > &A, const Scalar &a)
Implicitly scale a linear operator.
ConstLinearOperator< Scalar > operator * (const ConstLinearOperator< Scalar > &A, const ConstLinearOperator< Scalar > &B)
Implicitly multiply two linear operators.
ConstLinearOperator< Scalar > operator+ (const ConstLinearOperator< Scalar > &A, const ConstLinearOperator< Scalar > &B)
Implicitly add two linear operators.
ConstLinearOperator< Scalar > block2x2 (const ConstLinearOperator< Scalar > &A00, const ConstLinearOperator< Scalar > &A01, const ConstLinearOperator< Scalar > &A10, const ConstLinearOperator< Scalar > &A11)
Form an implicit block 2x2 linear operator `[ A00, A01; A10, A11 ]`.
ConstLinearOperator< Scalar > block2x1 (const ConstLinearOperator< Scalar > &A00, const ConstLinearOperator< Scalar > &A10)
Form an implicit block 2x1 linear operator `[ A00; A10 ]`.
ConstLinearOperator< Scalar > block1x2 (const ConstLinearOperator< Scalar > &A00, const ConstLinearOperator< Scalar > &A01)
Form an implicit block 1x2 linear operator `[ A00, A01 ]`.

Detailed Description

template<class RangeScalar, class DomainScalar = RangeScalar> class Thyra::ConstLinearOperator< RangeScalar, DomainScalar >

Read-only handle class for `Thyra::LinearOpBase` objects which supports operator-overloading implicit linear operator construction.
Examples:

Definition at line 46 of file Thyra_LinearOperatorDecl.hpp.

Constructor & Destructor Documentation

 template Thyra::ConstLinearOperator< RangeScalar, DomainScalar >::ConstLinearOperator ( ) ` [inline]`
 Definition at line 52 of file Thyra_LinearOperatorDecl.hpp.

 template Thyra::ConstLinearOperator< RangeScalar, DomainScalar >::ConstLinearOperator ( Teuchos::ConstHandleable< LinearOpBase< RangeScalar, DomainScalar > > * rawPtr ) ` [inline]`
 Construct from a raw pointer. Definition at line 55 of file Thyra_LinearOperatorDecl.hpp.

 template Thyra::ConstLinearOperator< RangeScalar, DomainScalar >::ConstLinearOperator ( const Teuchos::RefCountPtr< const LinearOpBase< RangeScalar, DomainScalar > > & smartPtr ) ` [inline]`
 Construct from a smart pointer. Definition at line 59 of file Thyra_LinearOperatorDecl.hpp.

Member Function Documentation

 template const VectorSpace< DomainScalar > Thyra::ConstLinearOperator< RangeScalar, DomainScalar >::domain ( ) const` [inline]`
 Return the domain space. Definition at line 46 of file Thyra_LinearOperatorImpl.hpp.

 template const VectorSpace< RangeScalar > Thyra::ConstLinearOperator< RangeScalar, DomainScalar >::range ( ) const` [inline]`
 Return the range space. Definition at line 51 of file Thyra_LinearOperatorImpl.hpp.

 template void Thyra::ConstLinearOperator< RangeScalar, DomainScalar >::apply ( const ConstVector< DomainScalar > & in, Vector< RangeScalar > & out, const RangeScalar & alpha = `1.0`, const RangeScalar & beta = `0.0` ) const` [inline]`
 Apply the linear operator. Compute ``` out = beta*out + alpha*op*in; ``` Definition at line 56 of file Thyra_LinearOperatorImpl.hpp.

 template void Thyra::ConstLinearOperator< RangeScalar, DomainScalar >::applyTranspose ( const ConstVector< RangeScalar > & in, Vector< DomainScalar > & out, const DomainScalar & alpha = `1.0`, const DomainScalar & beta = `0.0` ) const` [inline]`
 Apply the transpose of the linear operator. Compute ``` out = beta*out + alpha*op^T*in; ``` Definition at line 73 of file Thyra_LinearOperatorImpl.hpp.

 template int Thyra::ConstLinearOperator< RangeScalar, DomainScalar >::numBlockRows ( ) const` [inline]`
 Return the number of block rows. Definition at line 91 of file Thyra_LinearOperatorImpl.hpp.

 template int Thyra::ConstLinearOperator< RangeScalar, DomainScalar >::numBlockCols ( ) const` [inline]`
 Return the number of block columns. Definition at line 97 of file Thyra_LinearOperatorImpl.hpp.

 template ConstLinearOperator< RangeScalar, DomainScalar > Thyra::ConstLinearOperator< RangeScalar, DomainScalar >::getBlock ( int blockRow, int blockCol ) const` [inline]`
 Return the (blockRow, blockCol)-th subblock. Definition at line 104 of file Thyra_LinearOperatorImpl.hpp.

Friends And Related Function Documentation

 template ConstLinearOperator< Scalar > operator * ( const Scalar & a, const ConstLinearOperator< Scalar > & A ) ` [related]`
 Implicitly scale a linear operator. Definition at line 148 of file Thyra_LinearOperatorImpl.hpp.

 template ConstLinearOperator< Scalar > operator * ( const ConstLinearOperator< Scalar > & A, const Scalar & a ) ` [related]`
 Implicitly scale a linear operator.

 template ConstLinearOperator< Scalar > operator * ( const ConstLinearOperator< Scalar > & A, const ConstLinearOperator< Scalar > & B ) ` [related]`
 Implicitly multiply two linear operators. Definition at line 164 of file Thyra_LinearOperatorImpl.hpp.

 template ConstLinearOperator< Scalar > operator+ ( const ConstLinearOperator< Scalar > & A, const ConstLinearOperator< Scalar > & B ) ` [related]`
 Implicitly add two linear operators. Definition at line 180 of file Thyra_LinearOperatorImpl.hpp.

 template ConstLinearOperator< Scalar > block2x2 ( const ConstLinearOperator< Scalar > & A00, const ConstLinearOperator< Scalar > & A01, const ConstLinearOperator< Scalar > & A10, const ConstLinearOperator< Scalar > & A11 ) ` [related]`
 Form an implicit block 2x2 linear operator `[ A00, A01; A10, A11 ]`. Definition at line 196 of file Thyra_LinearOperatorImpl.hpp.

 template ConstLinearOperator< Scalar > block2x1 ( const ConstLinearOperator< Scalar > & A00, const ConstLinearOperator< Scalar > & A10 ) ` [related]`
 Form an implicit block 2x1 linear operator `[ A00; A10 ]`. Definition at line 206 of file Thyra_LinearOperatorImpl.hpp.

 template ConstLinearOperator< Scalar > block1x2 ( const ConstLinearOperator< Scalar > & A00, const ConstLinearOperator< Scalar > & A01 ) ` [related]`
 Form an implicit block 1x2 linear operator `[ A00, A01 ]`. Definition at line 214 of file Thyra_LinearOperatorImpl.hpp.

The documentation for this class was generated from the following files:
Generated on Thu Sep 18 12:32:33 2008 for Thyra Operator/Vector Support by  1.3.9.1