From 977e23805e5ef0259be7322f675b5f7fce0c0577 Mon Sep 17 00:00:00 2001
From: Van Dung Nguyen <vandung.nguyen@ulg.ac.be>
Date: Tue, 22 Nov 2011 17:16:41 +0000
Subject: [PATCH] =?UTF-8?q?add=20critical=20point=20test=20function=C2=B2?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

---
 Solver/eigenSolver.cpp | 4 ++--
 Solver/eigenSolver.h   | 9 +++++++++
 2 files changed, 11 insertions(+), 2 deletions(-)

diff --git a/Solver/eigenSolver.cpp b/Solver/eigenSolver.cpp
index 4bc489dde2..8b5cdf1beb 100644
--- a/Solver/eigenSolver.cpp
+++ b/Solver/eigenSolver.cpp
@@ -56,8 +56,8 @@ bool eigenSolver::solve(int numEigenValues, std::string which)
   // set some default options
   _try(EPSSetDimensions(eps, numEigenValues, PETSC_DECIDE, PETSC_DECIDE));
   _try(EPSSetTolerances(eps, 1.e-7, 20));//1.e-7 20
-  //_try(EPSSetType(eps, EPSKRYLOVSCHUR)); //default
-  _try(EPSSetType(eps, EPSARNOLDI));
+  _try(EPSSetType(eps, EPSKRYLOVSCHUR)); //default
+  //_try(EPSSetType(eps, EPSARNOLDI));
   //_try(EPSSetType(eps, EPSARPACK));
   //_try(EPSSetType(eps, EPSPOWER));
 
diff --git a/Solver/eigenSolver.h b/Solver/eigenSolver.h
index 46c3a3f07a..86943741f3 100644
--- a/Solver/eigenSolver.h
+++ b/Solver/eigenSolver.h
@@ -32,6 +32,13 @@ class eigenSolver{
   int getNumEigenValues(){ return _eigenValues.size(); }
   std::complex<double> getEigenValue(int num){ return _eigenValues[num]; }
   std::vector<std::complex<double> > &getEigenVector(int num){ return _eigenVectors[num]; }
+  void clear(){
+		_eigenValues.clear();
+		_eigenVectors.clear();
+	};
+	std::complex<double>& getEigenVectorComp(int num, int com){
+		return _eigenVectors[num][com];
+	};
 };
 
 #else
@@ -51,6 +58,8 @@ class eigenSolver{
   int getNumEigenValues(){ return 0; }
   std::complex<double> getEigenValue(int num){ return 0.; }
   std::vector<std::complex<double> > &getEigenVector(int num){ return _dummy; }
+  void clear(){};
+  std::complex<double>& getEigenVectorComp(int num, int com) return 0;
 };
 
 #endif
-- 
GitLab