44#include "Thyra_MultipliedLinearOpBase.hpp"
45#include "Thyra_DiagonalLinearOpBase.hpp"
46#include "Thyra_ScaledAdjointLinearOpBase.hpp"
50#include "Epetra_Map.h"
51#include "Epetra_LocalMap.h"
52#include "Epetra_SerialComm.h"
53#include "Epetra_CrsMatrix.h"
69 using Teuchos::rcp_dynamic_cast;
85 if(
transp!=NOTRANS)
return false;
90 if(
transp!=NOTRANS)
return false;
98 if(
dA==Teuchos::null &&
dB!=Teuchos::null)
101 if(
dA!=Teuchos::null &&
dB==Teuchos::null)
111 return nonconstEpetraLinearOp();
121 using Teuchos::rcp_dynamic_cast;
161 if(
dA==Teuchos::null) {
168 else if(
dB==Teuchos::null) {
196 if(epetra_op==Teuchos::null)
200 epetra_op->RightScale(*
v);
207 if(epetra_op==Teuchos::null)
211 epetra_op->LeftScale(*
v);
Concrete LinearOpBase adapter subclass for Epetra_Operator object.
RCP< Epetra_Vector > get_Epetra_Vector(const Epetra_Map &map, const RCP< VectorBase< double > > &v)
Get a non-const Epetra_Vector view from a non-const VectorBase object if possible.
#define TEUCHOS_ASSERT(assertion_test)
TEUCHOS_DEPRECATED RCP< T > rcp(T *p, Dealloc_T dealloc, bool owns_mem)
T_To & dyn_cast(T_From &from)
Teuchos::RCP< Epetra_Operator > get_Epetra_Operator(LinearOpBase< double > &op)
Full specialization for Scalar=double.