pastix_support.cpp File Reference
#include "sparse_solver.h"
#include <Eigen/PaStiXSupport>
#include <unsupported/Eigen/SparseExtra>

Macros

#define EIGEN_NO_DEBUG_SMALL_PRODUCT_BLOCKS
 

Functions

template<typename T >
void test_pastix_T ()
 
template<typename T >
void test_pastix_T_LU ()
 
 EIGEN_DECLARE_TEST (pastix_support)
 

Macro Definition Documentation

◆ EIGEN_NO_DEBUG_SMALL_PRODUCT_BLOCKS

#define EIGEN_NO_DEBUG_SMALL_PRODUCT_BLOCKS

Function Documentation

◆ EIGEN_DECLARE_TEST()

EIGEN_DECLARE_TEST ( pastix_support  )
47  {
48  CALL_SUBTEST_1(test_pastix_T<float>());
49  CALL_SUBTEST_2(test_pastix_T<double>());
50  CALL_SUBTEST_3((test_pastix_T_LU<std::complex<float> >()));
51  CALL_SUBTEST_4(test_pastix_T_LU<std::complex<double> >());
52 }
void test_pastix_T_LU()
Definition: pastix_support.cpp:42
#define CALL_SUBTEST_3(FUNC)
Definition: split_test_helper.h:16
#define CALL_SUBTEST_1(FUNC)
Definition: split_test_helper.h:4
#define CALL_SUBTEST_2(FUNC)
Definition: split_test_helper.h:10
#define CALL_SUBTEST_4(FUNC)
Definition: split_test_helper.h:22

References CALL_SUBTEST_1, CALL_SUBTEST_2, CALL_SUBTEST_3, CALL_SUBTEST_4, and test_pastix_T_LU().

◆ test_pastix_T()

template<typename T >
void test_pastix_T ( )
17  {
23 
24  check_sparse_spd_solving(pastix_llt_lower);
25  check_sparse_spd_solving(pastix_ldlt_lower);
26  check_sparse_spd_solving(pastix_llt_upper);
27  check_sparse_spd_solving(pastix_ldlt_upper);
28  check_sparse_square_solving(pastix_lu);
29 
30  // Some compilation check:
31  pastix_llt_lower.iparm();
32  pastix_llt_lower.dparm();
33  pastix_ldlt_lower.iparm();
34  pastix_ldlt_lower.dparm();
35  pastix_lu.iparm();
36  pastix_lu.dparm();
37 }
Array< StorageIndex, IPARM_SIZE, 1 > & iparm()
Definition: PaStiXSupport.h:188
Array< double, DPARM_SIZE, 1 > & dparm()
Definition: PaStiXSupport.h:200
A sparse direct supernodal Cholesky (LLT) factorization and solver based on the PaStiX library.
Definition: PaStiXSupport.h:572
A sparse direct supernodal Cholesky (LLT) factorization and solver based on the PaStiX library.
Definition: PaStiXSupport.h:497
Interface to the PaStix solver.
Definition: PaStiXSupport.h:398
@ Lower
Definition: Constants.h:211
@ Upper
Definition: Constants.h:213
void check_sparse_square_solving(Solver &solver, int maxSize=300, int maxRealWorldSize=100000, bool checkDeficient=false)
Definition: sparse_solver.h:613
void check_sparse_spd_solving(Solver &solver, int maxSize=(std::min)(300, EIGEN_TEST_MAX_SIZE), int maxRealWorldSize=100000)
Definition: sparse_solver.h:392

References check_sparse_spd_solving(), check_sparse_square_solving(), Eigen::PastixBase< Derived >::dparm(), Eigen::PastixBase< Derived >::iparm(), Eigen::Lower, and Eigen::Upper.

◆ test_pastix_T_LU()

template<typename T >
void test_pastix_T_LU ( )
42  {
44  check_sparse_square_solving(pastix_lu);
45 }

References check_sparse_square_solving().

Referenced by EIGEN_DECLARE_TEST().