Public Member Functions | Protected Member Functions | Private Attributes
TSFExtended::HomogeneouslyBlockedLinearOp< Scalar > Class Template Reference

HomogeneouslyBlockedLinearOp is a helper class providing a convenient way to build operators having a block structure in which all blocks have the same domain and range. More...

Inheritance diagram for TSFExtended::HomogeneouslyBlockedLinearOp< Scalar >:
LinearOpBase TSFExtended::InverseLTIOp< Scalar >

List of all members.

Public Member Functions

 HomogeneouslyBlockedLinearOp (const VectorSpace< Scalar > &singleBlockDomain, int numDomainBlocks, const VectorSpace< Scalar > &singleBlockRange, int numRangeBlocks)
Teuchos::RCP< const
Thyra::VectorSpaceBase< Scalar > > 
range () const
 Return a smart pointer for the range space for this operator.
Teuchos::RCP< const
Thyra::VectorSpaceBase< Scalar > > 
domain () const
 Return a smart pointer for the domain space for this operator.

Protected Member Functions

int numBlockRows () const
 Return the number of block rows.
int numBlockCols () const
 Return the number of block columns.
const VectorSpace< Scalar > & singleBlockDomain () const
 Return the domain space of a single block.
const VectorSpace< Scalar > & singleBlockRange () const
 Return the range space of a single block.

Private Attributes

VectorSpace< Scalar > singleBlockDomain_
int numDomainBlocks_
VectorSpace< Scalar > singleBlockRange_
int numRangeBlocks_
Teuchos::RCP< const
Thyra::VectorSpaceBase< Scalar > > 
domain_
Teuchos::RCP< const
Thyra::VectorSpaceBase< Scalar > > 
range_

Detailed Description

template<class Scalar>
class TSFExtended::HomogeneouslyBlockedLinearOp< Scalar >

HomogeneouslyBlockedLinearOp is a helper class providing a convenient way to build operators having a block structure in which all blocks have the same domain and range.

Such structures arise in, for example, space-time operators or stochastic projection methods.

Author:
Kevin Long (krlong@sandia.gov)

Definition at line 48 of file TSFHomogeneouslyBlockedLinearOp.hpp.


Constructor & Destructor Documentation

template<class Scalar >
TSFExtended::HomogeneouslyBlockedLinearOp< Scalar >::HomogeneouslyBlockedLinearOp ( const VectorSpace< Scalar > &  singleBlockDomain,
int  numDomainBlocks,
const VectorSpace< Scalar > &  singleBlockRange,
int  numRangeBlocks 
) [inline]

Member Function Documentation

template<class Scalar >
Teuchos::RCP< const Thyra::VectorSpaceBase<Scalar> > TSFExtended::HomogeneouslyBlockedLinearOp< Scalar >::domain ( ) const [inline]

Return a smart pointer for the domain space for this operator.

Definition at line 87 of file TSFHomogeneouslyBlockedLinearOp.hpp.

References TSFExtended::HomogeneouslyBlockedLinearOp< Scalar >::domain_.

template<class Scalar >
int TSFExtended::HomogeneouslyBlockedLinearOp< Scalar >::numBlockCols ( ) const [inline, protected]

Return the number of block columns.

Definition at line 98 of file TSFHomogeneouslyBlockedLinearOp.hpp.

References TSFExtended::HomogeneouslyBlockedLinearOp< Scalar >::numDomainBlocks_.

template<class Scalar >
int TSFExtended::HomogeneouslyBlockedLinearOp< Scalar >::numBlockRows ( ) const [inline, protected]

Return the number of block rows.

Definition at line 95 of file TSFHomogeneouslyBlockedLinearOp.hpp.

References TSFExtended::HomogeneouslyBlockedLinearOp< Scalar >::numRangeBlocks_.

template<class Scalar >
Teuchos::RCP< const Thyra::VectorSpaceBase<Scalar> > TSFExtended::HomogeneouslyBlockedLinearOp< Scalar >::range ( ) const [inline]

Return a smart pointer for the range space for this operator.

Definition at line 80 of file TSFHomogeneouslyBlockedLinearOp.hpp.

References TSFExtended::HomogeneouslyBlockedLinearOp< Scalar >::range_.

template<class Scalar >
const VectorSpace<Scalar>& TSFExtended::HomogeneouslyBlockedLinearOp< Scalar >::singleBlockDomain ( ) const [inline, protected]

Return the domain space of a single block.

By construction this is the same for all blocks.

Definition at line 102 of file TSFHomogeneouslyBlockedLinearOp.hpp.

References TSFExtended::HomogeneouslyBlockedLinearOp< Scalar >::singleBlockDomain_.

template<class Scalar >
const VectorSpace<Scalar>& TSFExtended::HomogeneouslyBlockedLinearOp< Scalar >::singleBlockRange ( ) const [inline, protected]

Return the range space of a single block.

By construction this is the same for all blocks.

Definition at line 109 of file TSFHomogeneouslyBlockedLinearOp.hpp.

References TSFExtended::HomogeneouslyBlockedLinearOp< Scalar >::singleBlockRange_.


Member Data Documentation

template<class Scalar >
Teuchos::RCP< const Thyra::VectorSpaceBase<Scalar> > TSFExtended::HomogeneouslyBlockedLinearOp< Scalar >::domain_ [private]
template<class Scalar >
int TSFExtended::HomogeneouslyBlockedLinearOp< Scalar >::numDomainBlocks_ [private]
template<class Scalar >
int TSFExtended::HomogeneouslyBlockedLinearOp< Scalar >::numRangeBlocks_ [private]
template<class Scalar >
Teuchos::RCP< const Thyra::VectorSpaceBase<Scalar> > TSFExtended::HomogeneouslyBlockedLinearOp< Scalar >::range_ [private]
template<class Scalar >
VectorSpace<Scalar> TSFExtended::HomogeneouslyBlockedLinearOp< Scalar >::singleBlockDomain_ [private]
template<class Scalar >
VectorSpace<Scalar> TSFExtended::HomogeneouslyBlockedLinearOp< Scalar >::singleBlockRange_ [private]

Site Contact