42#ifndef STOKHOS_PRODUCT_EPETRA_VECTOR_HPP
43#define STOKHOS_PRODUCT_EPETRA_VECTOR_HPP
48#include "EpetraExt_MultiComm.h"
49#include "EpetraExt_BlockMultiVector.h"
83 const Teuchos::RCP<const Epetra_BlockMap>& block_map,
84 const Teuchos::RCP<const Epetra_BlockMap>&
coeff_map,
85 const Teuchos::RCP<const EpetraExt::MultiComm>&
product_comm);
95 const Teuchos::RCP<const Epetra_BlockMap>& block_map,
96 const Teuchos::RCP<const Epetra_BlockMap>&
coeff_map,
97 const Teuchos::RCP<const Epetra_BlockMap>&
product_map,
98 const Teuchos::RCP<const EpetraExt::MultiComm>&
product_comm);
105 const Teuchos::RCP<const Epetra_BlockMap>& block_map,
106 const Teuchos::RCP<const Epetra_BlockMap>&
coeff_map,
107 const Teuchos::RCP<const Epetra_BlockMap>&
product_map,
108 const Teuchos::RCP<const EpetraExt::MultiComm>&
product_comm,
140 Teuchos::RCP<const Epetra_BlockMap>
productMap()
const;
143 Teuchos::RCP<const EpetraExt::MultiComm>
productComm()
const;
150 const Teuchos::RCP<const Epetra_BlockMap>& block_map,
151 const Teuchos::RCP<const Epetra_BlockMap>&
coeff_map,
152 const Teuchos::RCP<const EpetraExt::MultiComm>&
product_comm);
159 const Teuchos::RCP<const Epetra_BlockMap>& block_map,
160 const Teuchos::RCP<const Epetra_BlockMap>&
coeff_map,
161 const Teuchos::RCP<const Epetra_BlockMap>&
product_map,
162 const Teuchos::RCP<const EpetraExt::MultiComm>&
product_comm);
172 Teuchos::RCP<const EpetraExt::BlockVector>
getBlockVector()
const;
175 void setBlockVector(
const Teuchos::RCP<EpetraExt::BlockVector>& block_vec);
195 Teuchos::RCP<EpetraExt::BlockVector>
bv;
A product (in the mathematical sense) container class whose coefficients are vectors,...
A container class for products of Epetra_Vector's.
Teuchos::RCP< const EpetraExt::MultiComm > product_comm
Product multi-level communicator.
void assignFromBlockVector(const Epetra_Vector &v)
Assignment.
Teuchos::RCP< const Epetra_BlockMap > productMap() const
Get product map.
void assignToBlockVector(Epetra_Vector &v) const
Assignment.
Teuchos::RCP< const Epetra_BlockMap > coefficientMap() const
Get coefficient map.
Teuchos::RCP< const Epetra_BlockMap > product_map
Product map of block vector.
Teuchos::RCP< const EpetraExt::MultiComm > productComm() const
Get product comm.
int ordinal_type
Typename of ordinals.
ProductEpetraVector()
Default constructor.
Teuchos::RCP< const Epetra_BlockMap > coeff_map
Product map of block vector.
void sumAll()
Sum coefficients across processors, storing result in this.
void resetCoefficients(Epetra_DataAccess CV, const Epetra_Vector &block_vector)
Reset vector cofficients.
void reset(const Teuchos::RCP< const Epetra_BlockMap > &block_map, const Teuchos::RCP< const Epetra_BlockMap > &coeff_map, const Teuchos::RCP< const EpetraExt::MultiComm > &product_comm)
Reset to a new size.
Teuchos::RCP< EpetraExt::BlockVector > bv
Block vector storing coefficients.
ProductEpetraVector & operator=(const ProductEpetraVector &v)
Assignment.
virtual ~ProductEpetraVector()
Destructor.
Teuchos::RCP< EpetraExt::BlockVector > getBlockVector()
Get block vector.
double value_type
Typename of values.
void setBlockVector(const Teuchos::RCP< EpetraExt::BlockVector > &block_vec)
Set block vector.
Top-level namespace for Stokhos classes and functions.