From 3d644285d2d7dfea503df917db97be5dacf38bc4 Mon Sep 17 00:00:00 2001
From: Stephane Del Pino <stephane.delpino44@gmail.com>
Date: Wed, 3 Nov 2021 17:49:06 +0100
Subject: [PATCH] Take into SLEPc's API change starting from version 3.15.0

---
 src/algebra/EigenvalueSolver.cpp | 5 +++++
 1 file changed, 5 insertions(+)

diff --git a/src/algebra/EigenvalueSolver.cpp b/src/algebra/EigenvalueSolver.cpp
index 6125e67e6..c71be58dd 100644
--- a/src/algebra/EigenvalueSolver.cpp
+++ b/src/algebra/EigenvalueSolver.cpp
@@ -32,6 +32,7 @@ struct EigenvalueSolver::Internals
   computeAllEigenvaluesOfSymmetricMatrixInInterval(EPS& eps, const PetscReal left_bound, const PetscReal right_bound)
   {
     Assert(left_bound < right_bound);
+    EPSSetType(eps, EPSKRYLOVSCHUR);
     EPSSetWhichEigenpairs(eps, EPS_ALL);
     EPSSetInterval(eps, left_bound - 0.01 * std::abs(left_bound), right_bound + 0.01 * std::abs(right_bound));
 
@@ -40,7 +41,11 @@ struct EigenvalueSolver::Internals
     STSetType(st, STSINVERT);
 
     KSP ksp;
+#if (SLEPC_VERSION_MAJOR >= 3) && (SLEPC_VERSION_MINOR >= 15)
+    EPSKrylovSchurGetKSP(eps, &ksp);
+#else
     STGetKSP(st, &ksp);
+#endif
     KSPSetType(ksp, KSPPREONLY);
 
     PC pc;
-- 
GitLab