110 EpetraOpMultiVec(
const Teuchos::RCP<Epetra_Operator> &Op,
const Epetra_BlockMap& Map_in,
const int numvecs);
122 EpetraOpMultiVec(
const Teuchos::RCP<Epetra_Operator> &Op,
const Epetra_BlockMap& Map_in,
double * array,
const int numvecs,
const int stride=0);
131 EpetraOpMultiVec(
const Teuchos::RCP<Epetra_Operator> &Op, Epetra_DataAccess CV,
const Epetra_MultiVector& P_vec,
const std::vector<int>& index);
148 MultiVec<double> * Clone (
const int numvecs )
const;
155 MultiVec<double> * CloneCopy ()
const;
164 MultiVec<double> * CloneCopy (
const std::vector<int>& index )
const;
173 MultiVec<double> * CloneViewNonConst (
const std::vector<int>& index );
182 const MultiVec<double> * CloneView (
const std::vector<int>& index )
const;
187 Teuchos::RCP<Epetra_MultiVector> GetEpetraMultiVector() {
return Epetra_MV; }
195 if ( Epetra_MV->Map().GlobalIndicesLongLong() )
196 return static_cast<ptrdiff_t
>( Epetra_MV->GlobalLength64() );
198 return static_cast<ptrdiff_t
>( Epetra_MV->GlobalLength() );
210 void MvTimesMatAddMv (
double alpha,
const MultiVec<double>& A,
211 const Teuchos::SerialDenseMatrix<int,double>& B,
216 void MvAddMv (
double alpha,
const MultiVec<double>& A,
217 double beta,
const MultiVec<double>& B);
221 void MvTransMv (
double alpha,
const MultiVec<double>& A, Teuchos::SerialDenseMatrix<int,double>& B
222#ifdef HAVE_ANASAZI_EXPERIMENTAL
229 void MvDot (
const MultiVec<double>& A, std::vector<double> &b
230#ifdef HAVE_ANASAZI_EXPERIMENTAL
239 "Anasazi::EpetraOpMultiVec::MvScale call to Epetra_MultiVector::Scale() returned a nonzero value.");
244 void MvScale (
const std::vector<double>& alpha );
253 void MvNorm ( std::vector<double> & normvec )
const;
264 void SetBlock (
const MultiVec<double>& A,
const std::vector<int>& index );
270 "Anasazi::EpetraOpMultiVec::MvRandom call to Epetra_MultiVector::Random() returned a nonzero value.");
277 "Anasazi::EpetraOpMultiVec::MvInit call to Epetra_MultiVector::PutScalar() returned a nonzero value.");
296 void MvPrint( std::ostream& os )
const { Epetra_MV->Print( os ); }
305#pragma warning(disable:4251)
307 Teuchos::RCP<Epetra_Operator> Epetra_OP;
308 Teuchos::RCP<Epetra_MultiVector> Epetra_MV;
309 Teuchos::RCP<Epetra_MultiVector> Epetra_MV_Temp;