Interprets a matrix as an operator that acts on a vector of nonzeros via SpGEMM.
More...
|
| virtual const Teuchos::RCP< const Xpetra::Map< LocalOrdinal, GlobalOrdinal, Node > > | getDomainMap () const |
| | The Map associated with the domain of this operator, which must be compatible with X.getMap().
|
| |
| virtual const Teuchos::RCP< const Xpetra::Map< LocalOrdinal, GlobalOrdinal, Node > > | getRangeMap () const |
| | The Map associated with the range of this operator, which must be compatible with Y.getMap().
|
| |
| virtual void | apply (const Xpetra::MultiVector< Scalar, LocalOrdinal, GlobalOrdinal, Node > &X, Xpetra::MultiVector< Scalar, LocalOrdinal, GlobalOrdinal, Node > &Y, Teuchos::ETransp mode=Teuchos::NO_TRANS, Scalar alpha=Teuchos::ScalarTraits< Scalar >::one(), Scalar beta=Teuchos::ScalarTraits< Scalar >::zero()) const |
| | Computes the operator-multivector application.
|
| |
| virtual bool | hasTransposeApply () const |
| | Whether this operator supports applying the transpose or conjugate transpose.
|
| |
| | VerboseObject () |
| |
| virtual | ~VerboseObject () |
| | Destructor.
|
| |
| VerbLevel | GetVerbLevel () const |
| | Get the verbosity level.
|
| |
| void | SetVerbLevel (const VerbLevel verbLevel) |
| | Set the verbosity level of this object.
|
| |
| int | GetProcRankVerbose () const |
| | Get proc rank used for printing. Do not use this information for any other purpose.
|
| |
| int | SetProcRankVerbose (int procRank) const |
| | Set proc rank used for printing.
|
| |
| bool | IsPrint (MsgType type, int thisProcRankOnly=-1) const |
| | Find out whether we need to print out information for a specific message type.
|
| |
| Teuchos::FancyOStream & | GetOStream (MsgType type, int thisProcRankOnly=0) const |
| | Get an output stream for outputting the input message type.
|
| |
| Teuchos::FancyOStream & | GetBlackHole () const |
| |
|
| RCP< Xpetra::Matrix< Scalar, LocalOrdinal, GlobalOrdinal, Node > > | mat_ |
| |
| RCP< MueLu::Constraint< Scalar, LocalOrdinal, GlobalOrdinal, Node > > | constraint_ |
| |
| RCP< Xpetra::Map< LocalOrdinal, GlobalOrdinal, Node > > | map_ |
| |
| RCP< Xpetra::Matrix< Scalar, LocalOrdinal, GlobalOrdinal, Node > > | tempMat_ |
| |
| | FlatOperator ()=default |
| |
| | FlatOperator (const Teuchos::RCP< Xpetra::Matrix< Scalar, LocalOrdinal, GlobalOrdinal, Node > > mat, const Teuchos::RCP< MueLu::Constraint< Scalar, LocalOrdinal, GlobalOrdinal, Node > > constraint) |
| | TpetraOperator constructor to wrap a Tpetra::Operator object.
|
| |
| void | CheckMaps () |
| |
| void | AllocateTemporaryMatrix () const |
| |
| void | residual (const Xpetra::MultiVector< Scalar, LocalOrdinal, GlobalOrdinal, Node > &X, const Xpetra::MultiVector< Scalar, LocalOrdinal, GlobalOrdinal, Node > &B, Xpetra::MultiVector< Scalar, LocalOrdinal, GlobalOrdinal, Node > &R) const |
| | Compute a residual R = B - (*this) * X.
|
| |
template<class
Scalar, class
LocalOrdinal, class
GlobalOrdinal, class
Node = Tpetra::KokkosClassic::DefaultNode::DefaultNodeType>
class MueLu::FlatOperator< Scalar, LocalOrdinal, GlobalOrdinal, Node >
Interprets a matrix as an operator that acts on a vector of nonzeros via SpGEMM.
This class takes a matrix A and a constraint object. The constraint specifies a sparsity pattern. The FlatOperator applies A via
Y = flat(A*operator(X))
Here, operator(X) takes a vector X and interpretes it as a matrix with given sparsity pattern. Then a SpGEMM is performed. The entries corresponding to the sparsity pattern are extracted and returned in the vector Y.
Definition at line 41 of file MueLu_FlatOperator_decl.hpp.