From 1119c141a3f939c0cfb3e4c6227b826253f23445 Mon Sep 17 00:00:00 2001
From: Christophe Geuzaine <cgeuzaine@ulg.ac.be>
Date: Thu, 6 Feb 2014 08:58:36 +0000
Subject: [PATCH] use MUMPS if available

---
 Solver/linearSystemGMM.h | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/Solver/linearSystemGMM.h b/Solver/linearSystemGMM.h
index 5f47c596a8..99927fd0cb 100644
--- a/Solver/linearSystemGMM.h
+++ b/Solver/linearSystemGMM.h
@@ -106,12 +106,16 @@ class linearSystemGmm : public linearSystem<scalar> {
   void setGmres(int n){ _gmres = n; }
   virtual int systemSolve()
   {
+#if defined(HAVE_MUMPS)
+    gmm::MUMPS_solve(*_a, *_x, *_b);
+#else
     //gmm::ilutp_precond<gmm::row_matrix<gmm::wsvector<scalar> > > P(*_a, 25, 0.);
     gmm::ildltt_precond<gmm::row_matrix<gmm::wsvector<scalar> > > P(*_a, 30, 1.e-10);
     gmm::iteration iter(_prec);
     iter.set_noisy(_noisy);
     if(_gmres) gmm::gmres(*_a, *_x, *_b, P, 100, iter);
     else gmm::cg(*_a, *_x, *_b, P, iter);
+#endif
     return 1;
   }
 };
-- 
GitLab