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

`#include <Thyra_LinearOperatorDecl.hpp>`

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

[legend]
List of all members.

## Public Member Functions

LinearOperator ()

LinearOperator (Teuchos::Handleable< LinearOpBase< RangeScalar, DomainScalar > > *rawPtr)
Construct from a raw pointer.
LinearOperator (const Teuchos::RefCountPtr< LinearOpBase< RangeScalar, DomainScalar > > &smartPtr)
Construct from a smart pointer.
LinearOperator< RangeScalar,
DomainScalar >
getBlock (int blockRow, int blockCol)
Return the (blockRow, blockCol)-th subblock.

## Related Functions

(Note that these are not member functions.)

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

## Detailed Description

### template<class RangeScalar, class DomainScalar = RangeScalar> class Thyra::LinearOperator< RangeScalar, DomainScalar >

Handle class for `Thyra::LinearOpBase` objects which supports operator-overloading implicit linear operator construction.

Definition at line 110 of file Thyra_LinearOperatorDecl.hpp.

## Constructor & Destructor Documentation

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

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

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

## Member Function Documentation

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

## Friends And Related Function Documentation

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

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

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

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

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

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

 template LinearOperator< Scalar > block1x2 ( const LinearOperator< Scalar > & A00, const LinearOperator< Scalar > & A01 ) ` [related]`
 Form an implicit block 1x2 linear operator `[ A00, A01 ]`. Definition at line 240 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