I'm trying to use the PardisoSupport module for LU factorisation. I encountered a couple of problems.
1) When I try to compile my code a get the following error:
Eigen/src/PardisoSupport/PardisoSupport.h(222): error: no instance of function template "Eigen::abs" matches the argument list
argument types are: (int) bool symmetric = abs(m_type) < 10; ^ detected during: instantiation of "void Eigen::PardisoImpl<Derived>::pardisoInit(int) [with Derived=Eigen::PardisoLU<GeoMHDiSCC::SparseMatrix>]" at line 423
instantiation of "Eigen::PardisoLU<MatrixType>::PardisoLU() [with MatrixType=GeoMHDiSCC::SparseMatrix]" at line 64 of "git/GeoMHDiSCC/src/SparseSolvers/SparseDLinearSolver.cpp"
2) I tried to run the pardiso_support test but a) PARDISO_FOUND is never set and the test is not created b) Removing the condition and compiling the test fails with the same error as above. c) Additional warnings about signatures:
Eigen/src/PardisoSupport/PardisoSupport.h(281): warning #2289: proper signature for "PardisoImpl" is "Type(const Type&)" PardisoImpl(PardisoImpl &) {} ^
Eigen/src/PardisoSupport/PardisoSupport.h(439): warning #2289: proper signature for "PardisoLU" is "Type(const Type&)"
PardisoLU(PardisoLU& ) {} ^
Eigen/src/PardisoSupport/PardisoSupport.h(498): warning #2289: proper signature for "PardisoLLT" is "Type(const Type&)" PardisoLLT(PardisoLLT& ) {}
^
Eigen/src/PardisoSupport/PardisoSupport.h(557): warning #2289: proper signature for "PardisoLDLT" is "Type(const Type&)" PardisoLDLT(PardisoLDLT& ) {}
I was trying with Eigen 3.2 with intel compilers 13.0. Let me know if you need more information.