10 #include "Tpetra_EpetraRowMatrix.hpp"
11 #if defined(HAVE_TPETRA_EPETRA)
13 #ifdef HAVE_TPETRACORE_MPI
14 #include "Epetra_MpiComm.h"
17 #include "Epetra_SerialComm.h"
18 #endif // HAVE_TPETRACORE_MPI
23 #ifdef HAVE_TPETRACORE_MPI
24 std::shared_ptr<Epetra_Comm>
25 makeEpetraCommFromTeuchosComm(
const Teuchos::Comm<int>& teuchosComm) {
26 using Tpetra::Details::extractMpiCommFromTeuchos;
31 MPI_Comm mpiComm = extractMpiCommFromTeuchos(teuchosComm);
32 Epetra_MpiComm* epetraComm =
new Epetra_MpiComm(mpiComm);
33 return std::shared_ptr<Epetra_Comm>(
static_cast<Epetra_Comm*
>(epetraComm));
36 std::shared_ptr<Epetra_Comm>
37 makeEpetraCommFromTeuchosComm(
const Teuchos::Comm<int>&) {
38 return std::shared_ptr<Epetra_Comm>(
static_cast<Epetra_Comm*
>(
new Epetra_SerialComm));
40 #endif // HAVE_TPETRACORE_MPI
45 #endif // defined(HAVE_TPETRA_EPETRA)