xref: /aosp_15_r20/external/eigen/test/pardiso_support.cpp (revision bf2c37156dfe67e5dfebd6d394bad8b2ab5804d4)
1*bf2c3715SXin Li /*
2*bf2c3715SXin Li    Intel Copyright (C) ....
3*bf2c3715SXin Li */
4*bf2c3715SXin Li 
5*bf2c3715SXin Li #include "sparse_solver.h"
6*bf2c3715SXin Li #include <Eigen/PardisoSupport>
7*bf2c3715SXin Li 
test_pardiso_T()8*bf2c3715SXin Li template<typename T> void test_pardiso_T()
9*bf2c3715SXin Li {
10*bf2c3715SXin Li   PardisoLLT < SparseMatrix<T, RowMajor>, Lower> pardiso_llt_lower;
11*bf2c3715SXin Li   PardisoLLT < SparseMatrix<T, RowMajor>, Upper> pardiso_llt_upper;
12*bf2c3715SXin Li   PardisoLDLT < SparseMatrix<T, RowMajor>, Lower> pardiso_ldlt_lower;
13*bf2c3715SXin Li   PardisoLDLT < SparseMatrix<T, RowMajor>, Upper> pardiso_ldlt_upper;
14*bf2c3715SXin Li   PardisoLU  < SparseMatrix<T, RowMajor> > pardiso_lu;
15*bf2c3715SXin Li 
16*bf2c3715SXin Li   check_sparse_spd_solving(pardiso_llt_lower);
17*bf2c3715SXin Li   check_sparse_spd_solving(pardiso_llt_upper);
18*bf2c3715SXin Li   check_sparse_spd_solving(pardiso_ldlt_lower);
19*bf2c3715SXin Li   check_sparse_spd_solving(pardiso_ldlt_upper);
20*bf2c3715SXin Li   check_sparse_square_solving(pardiso_lu);
21*bf2c3715SXin Li }
22*bf2c3715SXin Li 
EIGEN_DECLARE_TEST(pardiso_support)23*bf2c3715SXin Li EIGEN_DECLARE_TEST(pardiso_support)
24*bf2c3715SXin Li {
25*bf2c3715SXin Li   CALL_SUBTEST_1(test_pardiso_T<float>());
26*bf2c3715SXin Li   CALL_SUBTEST_2(test_pardiso_T<double>());
27*bf2c3715SXin Li   CALL_SUBTEST_3(test_pardiso_T< std::complex<float> >());
28*bf2c3715SXin Li   CALL_SUBTEST_4(test_pardiso_T< std::complex<double> >());
29*bf2c3715SXin Li }
30