From 4bfcee47b92eec06cf099fd0beaffa72897d104b Mon Sep 17 00:00:00 2001 From: Jens Wehner Date: Sat, 27 Feb 2021 12:09:33 +0000 Subject: Idrs iterative linear solver --- unsupported/test/CMakeLists.txt | 1 + unsupported/test/idrs.cpp | 27 +++++++++++++++++++++++++++ 2 files changed, 28 insertions(+) create mode 100644 unsupported/test/idrs.cpp (limited to 'unsupported/test') diff --git a/unsupported/test/CMakeLists.txt b/unsupported/test/CMakeLists.txt index 15c21098a..181919361 100644 --- a/unsupported/test/CMakeLists.txt +++ b/unsupported/test/CMakeLists.txt @@ -104,6 +104,7 @@ ei_add_test(splines) ei_add_test(gmres) ei_add_test(dgmres) ei_add_test(minres) +ei_add_test(idrs) ei_add_test(levenberg_marquardt) ei_add_test(kronecker_product) ei_add_test(bessel_functions) diff --git a/unsupported/test/idrs.cpp b/unsupported/test/idrs.cpp new file mode 100644 index 000000000..f88c01632 --- /dev/null +++ b/unsupported/test/idrs.cpp @@ -0,0 +1,27 @@ +// This file is part of Eigen, a lightweight C++ template library +// for linear algebra. +// +// Copyright (C) 2011 Gael Guennebaud +// Copyright (C) 2012 Kolja Brix +// +// This Source Code Form is subject to the terms of the Mozilla +// Public License v. 2.0. If a copy of the MPL was not distributed +// with this file, You can obtain one at http://mozilla.org/MPL/2.0/. + +#include "../../test/sparse_solver.h" +#include + +template void test_idrs_T() +{ + IDRS, DiagonalPreconditioner > idrs_colmajor_diag; + IDRS, IncompleteLUT > idrs_colmajor_ilut; + + CALL_SUBTEST( check_sparse_square_solving(idrs_colmajor_diag) ); + CALL_SUBTEST( check_sparse_square_solving(idrs_colmajor_ilut) ); +} + +EIGEN_DECLARE_TEST(idrs) +{ + CALL_SUBTEST_1(test_idrs_T()); + CALL_SUBTEST_2(test_idrs_T >()); +} -- cgit v1.2.3