Finite Element Domain Decomposition Library
FEDDLib
Loading...
Searching...
No Matches
FEDD::BlockMultiVector< SC, LO, GO, NO > Class Template Reference

Public Types

typedef BlockMultiVector< SC, LO, GO, NO > BlockMultiVector_Type
typedef Teuchos::RCP< BlockMultiVector_Type > BlockMultiVectorPtr_Type
typedef Teuchos::RCP< const BlockMultiVector_Type > BlockMultiVectorConstPtr_Type
typedef MultiVector< SC, LO, GO, NO > MultiVector_Type
typedef Teuchos::RCP< MultiVector_Type > MultiVectorPtr_Type
typedef Teuchos::RCP< const MultiVector_Type > MultiVectorConstPtr_Type
typedef MultiVector_Type::Map_Type Map_Type
typedef MultiVector_Type::MapPtr_Type MapPtr_Type
typedef MultiVector_Type::MapConstPtr_Type MapConstPtr_Type
typedef MultiVector_Type::Comm_Type Comm_Type
typedef MultiVector_Type::CommConstPtr_Type CommConstPtr_Type
typedef BlockMap< LO, GO, NO > BlockMap_Type
typedef Teuchos::RCP< BlockMap_Type > BlockMapPtr_Type
typedef Teuchos::RCP< const BlockMap_Type > BlockMapConstPtr_Type

Public Member Functions

 BlockMultiVector (UN size)
 BlockMultiVector (BlockMultiVectorPtr_Type bMVIn)
 BlockMultiVector (std::vector< MapConstPtr_Type > &maps, int numMV=1)
 BlockMultiVector (BlockMapConstPtr_Type blockMap, int numMV=1)
BlockMultiVector_Type & operator= (const BlockMultiVector_Type &rhs)
MultiVectorPtr_Type operator[] (int i) const
void resize (UN size)
void buildFromMaps (std::vector< MapConstPtr_Type > &maps, int numMV)
void buildFromBlockMap (BlockMapConstPtr_Type blockMap, int numMV)
void merge ()
void mergeBlock (UN block)
void split ()
void splitBlock (UN block)
void determineLocalOffsets ()
void determineGlobalOffsets ()
void setMergedVector (MultiVectorPtr_Type &mv)
int size () const
UN getNumVectors () const
void addBlock (const MultiVectorPtr_Type &multiVector, int i)
MultiVectorConstPtr_Type getBlock (int i) const
MultiVectorPtr_Type getBlockNonConst (int i)
Teuchos::RCP< Thyra::MultiVectorBase< SC > > getThyraMultiVector ()
Teuchos::RCP< const Thyra::MultiVectorBase< SC > > getThyraMultiVectorConst ()
Teuchos::RCP< Thyra::ProductMultiVectorBase< SC > > getProdThyraMultiVector ()
Teuchos::RCP< const Thyra::ProductMultiVectorBase< SC > > getThyraProdMultiVectorConst () const
void fromThyraMultiVector (Teuchos::RCP< Thyra::MultiVectorBase< SC > > thyraMV)
void fromThyraProdMultiVector (Teuchos::RCP< Thyra::ProductMultiVectorBase< SC > > thyraMV)
void norm2 (const Teuchos::ArrayView< typename Teuchos::ScalarTraits< SC >::magnitudeType > &norms) const
void normInf (const Teuchos::ArrayView< typename Teuchos::ScalarTraits< SC >::magnitudeType > &norms) const
void dot (BlockMultiVectorConstPtr_Type a, const Teuchos::ArrayView< typename Teuchos::ScalarTraits< SC >::magnitudeType > &dots)
void update (const SC &alpha, const BlockMultiVector_Type &A, const SC &beta)
void update (const SC &alpha, const BlockMultiVector_Type &A, const SC &beta, const BlockMultiVector_Type &B, const SC &gamma)
BlockMultiVectorPtr_Type sumColumns () const
void multiply (Teuchos::ETransp transA, Teuchos::ETransp transB, const SC &alpha, BlockMultiVectorConstPtr_Type &A, BlockMultiVectorConstPtr_Type &B, const SC &beta)
void putScalar (const SC &alpha)
void scale (const SC &alpha)
void writeMM (std::string fN="blockMV") const
void print (Teuchos::EVerbosityLevel verbLevel=Teuchos::VERB_EXTREME)
BlockMapConstPtr_Type getMap () const
MultiVectorConstPtr_Type getMergedVector ()
MultiVectorPtr_Type getMergedVectorNonConst ()
 Return the merged vector as non-const vector. This finds application in pressure projection.

Member Function Documentation

◆ getMergedVectorNonConst()

template<class SC, class LO, class GO, class NO>
BlockMultiVector< SC, LO, GO, NO >::MultiVectorPtr_Type FEDD::BlockMultiVector< SC, LO, GO, NO >::getMergedVectorNonConst ( )

Return the merged vector as non-const vector. This finds application in pressure projection.

Returns
Here is the call graph for this function:
Here is the caller graph for this function:

The documentation for this class was generated from the following files: