38 :
public MultiVector<Scalar, LocalOrdinal, GlobalOrdinal, Node> {
46#undef XPETRA_BLOCKEDMULTIVECTOR_SHORT
90 BlockedMultiVector(
Teuchos::RCP<
const Xpetra::MapExtractor<Scalar, LocalOrdinal, GlobalOrdinal, Node>> mapExtractor,
104 virtual ~BlockedMultiVector();
113 BlockedMultiVector<Scalar, LocalOrdinal, GlobalOrdinal, Node>& operator=(
const MultiVector& rhs);
120 virtual void replaceGlobalValue(GlobalOrdinal ,
size_t ,
const Scalar& );
123 virtual void sumIntoGlobalValue(GlobalOrdinal ,
size_t ,
const Scalar& );
126 virtual void replaceLocalValue(LocalOrdinal ,
size_t ,
const Scalar& );
129 virtual void sumIntoLocalValue(LocalOrdinal ,
size_t ,
const Scalar& );
132 virtual void putScalar(
const Scalar& value);
164 virtual void scale(
const Scalar& alpha);
170 virtual void update(
const Scalar& alpha,
const MultiVector& A,
const Scalar& beta);
173 virtual void update(
const Scalar& alpha,
const MultiVector& A,
const Scalar& beta,
const MultiVector& B,
const Scalar& gamma);
198 virtual size_t getNumVectors()
const;
201 virtual size_t getLocalLength()
const;
214 virtual std::string description()
const;
238 virtual void setSeed(
unsigned int seed);
240 virtual void randomize(
bool bUseXpetraImplementation =
false);
242 virtual void randomize(
const Scalar& minVal,
const Scalar& maxVal,
bool bUseXpetraImplementation =
false);
245 virtual void Xpetra_randomize();
248 virtual void Xpetra_randomize(
const Scalar& minVal,
const Scalar& maxVal);
290 void InsertVector(
const MultiVector& partial,
size_t block,
MultiVector& full,
bool bThyraMode =
false)
const;
296 std::vector<Teuchos::RCP<MultiVector>>
vv_;