bug #1149: fix Pastix*::*parm()

This commit is contained in:
Gael Guennebaud 2016-01-20 19:01:24 +01:00
parent 4c5e96aab6
commit ed8ade9c65
2 changed files with 11 additions and 3 deletions

View File

@ -184,7 +184,7 @@ class PastixBase : public SparseSolverBase<Derived>
* The statistics related to the different phases of factorization and solve are saved here as well * The statistics related to the different phases of factorization and solve are saved here as well
* \sa analyzePattern() factorize() * \sa analyzePattern() factorize()
*/ */
Array<RealScalar,IPARM_SIZE,1>& dparm() Array<double,DPARM_SIZE,1>& dparm()
{ {
return m_dparm; return m_dparm;
} }
@ -244,8 +244,8 @@ class PastixBase : public SparseSolverBase<Derived>
mutable ComputationInfo m_info; mutable ComputationInfo m_info;
mutable pastix_data_t *m_pastixdata; // Data structure for pastix mutable pastix_data_t *m_pastixdata; // Data structure for pastix
mutable int m_comm; // The MPI communicator identifier mutable int m_comm; // The MPI communicator identifier
mutable Matrix<int,IPARM_SIZE,1> m_iparm; // integer vector for the input parameters mutable Array<int,IPARM_SIZE,1> m_iparm; // integer vector for the input parameters
mutable Matrix<double,DPARM_SIZE,1> m_dparm; // Scalar vector for the input parameters mutable Array<double,DPARM_SIZE,1> m_dparm; // Scalar vector for the input parameters
mutable Matrix<StorageIndex,Dynamic,1> m_perm; // Permutation vector mutable Matrix<StorageIndex,Dynamic,1> m_perm; // Permutation vector
mutable Matrix<StorageIndex,Dynamic,1> m_invp; // Inverse permutation vector mutable Matrix<StorageIndex,Dynamic,1> m_invp; // Inverse permutation vector
mutable int m_size; // Size of the matrix mutable int m_size; // Size of the matrix

View File

@ -27,6 +27,14 @@ template<typename T> void test_pastix_T()
check_sparse_spd_solving(pastix_llt_upper); check_sparse_spd_solving(pastix_llt_upper);
check_sparse_spd_solving(pastix_ldlt_upper); check_sparse_spd_solving(pastix_ldlt_upper);
check_sparse_square_solving(pastix_lu); check_sparse_square_solving(pastix_lu);
// Some compilation check:
pastix_llt_lower.iparm();
pastix_llt_lower.dparm();
pastix_ldlt_lower.iparm();
pastix_ldlt_lower.dparm();
pastix_lu.iparm();
pastix_lu.dparm();
} }
// There is no support for selfadjoint matrices with PaStiX. // There is no support for selfadjoint matrices with PaStiX.