Commit 6cf1994a authored by Praetorius, Simon's avatar Praetorius, Simon
Browse files

mtl4 included in svn tree and patch for umfpack added

parent a28b315c
...@@ -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);
} }
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment