Skip to content
Snippets Groups Projects
Commit 6cf1994a authored by Praetorius, Simon's avatar Praetorius, Simon
Browse files

mtl4 included in svn tree and patch for umfpack added

parent a28b315c
No related branches found
No related tags found
No related merge requests found
...@@ -28,7 +28,7 @@ ...@@ -28,7 +28,7 @@
#include <iostream> #include <iostream>
#include <boost/numeric/mtl/operation/two_norm.hpp> #include <boost/numeric/mtl/operation/two_norm.hpp>
#include "solver/itl/umfpack2_solve.hpp" #include <boost/numeric/mtl/interface/umfpack_solve.hpp>
#include "solver/LinearSolver.h" #include "solver/LinearSolver.h"
namespace AMDiS { namespace AMDiS {
...@@ -60,8 +60,8 @@ namespace AMDiS { ...@@ -60,8 +60,8 @@ namespace AMDiS {
} }
try { try {
solver = new mtl::matrix::umfpack2::solver<MatrixType>(fullMatrix, symmetric_strategy, alloc_init); solver = new mtl::matrix::umfpack::solver<MatrixType>(fullMatrix, symmetric_strategy, alloc_init);
} catch (mtl::matrix::umfpack2::error& e) { } catch (mtl::matrix::umfpack::error& e) {
ERROR_EXIT("UMFPACK_ERROR(factorize, %d) = %s\n", e.code, e.what()); ERROR_EXIT("UMFPACK_ERROR(factorize, %d) = %s\n", e.code, e.what());
} }
} }
...@@ -75,7 +75,7 @@ namespace AMDiS { ...@@ -75,7 +75,7 @@ namespace AMDiS {
int code = 0; int code = 0;
try { try {
code = (*solver)(x, b); code = (*solver)(x, b);
} catch (mtl::matrix::umfpack2::error& e) { } catch (mtl::matrix::umfpack::error& e) {
ERROR_EXIT("UMFPACK_ERROR(solve, %d) = %s\n", e.code, e.what()); ERROR_EXIT("UMFPACK_ERROR(solve, %d) = %s\n", e.code, e.what());
} }
...@@ -103,7 +103,7 @@ namespace AMDiS { ...@@ -103,7 +103,7 @@ namespace AMDiS {
LinearSolverInterface& oem; LinearSolverInterface& oem;
private: private:
mtl::matrix::umfpack2::solver<MatrixType> *solver; mtl::matrix::umfpack::solver<MatrixType> *solver;
int store_symbolic; int store_symbolic;
......
...@@ -37,7 +37,7 @@ extern "C" { ...@@ -37,7 +37,7 @@ extern "C" {
namespace mtl { namespace matrix { namespace mtl { namespace matrix {
/// Namespace for Umfpack solver /// Namespace for Umfpack solver
namespace umfpack2 { namespace umfpack {
// conversion for value_type needed if not double or complex<double> (where possible) // conversion for value_type needed if not double or complex<double> (where possible)
template <typename Value> struct value {}; template <typename Value> struct value {};
...@@ -556,7 +556,7 @@ namespace mtl { namespace matrix { ...@@ -556,7 +556,7 @@ namespace mtl { namespace matrix {
template <typename Value, typename Parameters, typename VectorX, typename VectorB> template <typename Value, typename Parameters, typename VectorX, typename VectorB>
int umfpack2_solve(const compressed2D<Value, Parameters>& A, VectorX& x, const VectorB& b) int umfpack2_solve(const compressed2D<Value, Parameters>& A, VectorX& x, const VectorB& b)
{ {
umfpack2::solver<compressed2D<Value, Parameters> > solver(A); umfpack::solver<compressed2D<Value, Parameters> > solver(A);
return solver(x, b); return solver(x, b);
} }
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment