// Tests interface to Ifpack2's ILU(0) preconditioner. TEUCHOS_UNIT_TEST_TEMPLATE_4_DECL(Ifpack2Smoother, HardCodedResult_ILU, Scalar, LocalOrdinal, GlobalOrdinal, Node) { # include <MueLu_UseShortNames.hpp> MUELU_TESTING_SET_OSTREAM; MUELU_TESTING_LIMIT_EPETRA_SCOPE(Scalar,GlobalOrdinal,Node); MUELU_TEST_ONLY_FOR(Xpetra::UseTpetra) { //FIXME this will probably fail in parallel b/c it becomes block Jacobi Teuchos::ParameterList paramList; Ifpack2Smoother smoother("ILUT",paramList); typename Teuchos::ScalarTraits<SC>::magnitudeType residualNorms = testApply_A125_X0_RandomRHS(smoother, out, success); RCP<const Teuchos::Comm<int> > comm = TestHelpers::Parameters::getDefaultComm(); if (comm->getSize() == 1) { TEST_EQUALITY(residualNorms < 1e-10, true); } else { out << "Pass/Fail is only checked in serial." << std::endl; } } } // ILU
void testDirectSolver(SmootherPrototype & smoother, Teuchos::FancyOStream & out, bool & success) { ST::magnitudeType residualNorms = testApply_A125_X0_RandomRHS(smoother, out, success); TEST_EQUALITY(residualNorms < 1e-12, true); }