17 bool is_multi_vec_transposed) :
20 product_mv_->productComm()),
21 product_mv(product_mv_)
29 if (is_multi_vec_transposed) {
32 range_map = local_map;
35 domain_map = local_map;
42 for (
int i=0; i<this->
size(); i++) {
45 product_mv->getCoeffPtr(i), is_multi_vec_transposed));
55 product_mv(v.product_mv)
void setCoeffPtr(ordinal_type i, const Teuchos::RCP< Epetra_Operator > &c)
Set coefficient i to c.
ProductEpetraMultiVectorOperator(const Teuchos::RCP< ProductEpetraMultiVector > &product_mv, bool is_multi_vec_transposed)
Create ProductEpetraOperator out of ProductEpetraMultiVector.
A container class for products of Epetra_Vector's.
An adaptor that supplies the operator interface to a multi-vector.
TEUCHOS_DEPRECATED RCP< T > rcp(T *p, Dealloc_T dealloc, bool owns_mem)
A container class for products of Epetra_Vector's.
virtual ~ProductEpetraMultiVectorOperator()
Destructor.
A product (in the mathematical sense) container class whose coefficients are vectors, operators, or in general any type that would have an expensive copy constructor.
void setup(const Teuchos::RCP< const Epetra_Map > &domain_base_map, const Teuchos::RCP< const Epetra_Map > &range_base_map)
Second stage of setup.
Teuchos::RCP< ProductEpetraMultiVector > product_mv
The product multi-vector.
Teuchos::RCP< ProductEpetraMultiVector > productMultiVector() const
Get product multi vector.
ProductEpetraOperator & operator=(const ProductEpetraOperator &v)
Assignment.
ordinal_type size() const
Return size.
ProductEpetraMultiVectorOperator & operator=(const ProductEpetraMultiVectorOperator &v)
Assignment.