cart-elc

Source code for CART-ELC
git clone git://git.laack.co/cart-elc.git
Log | Files | Refs | README | LICENSE

dgmres.cpp (1279B)


      1 // This file is part of Eigen, a lightweight C++ template library
      2 // for linear algebra.
      3 //
      4 // Copyright (C) 2011 Gael Guennebaud <g.gael@free.fr>
      5 // Copyright (C) 2012 desire Nuentsa <desire.nuentsa_wakam@inria.fr
      6 //
      7 // This Source Code Form is subject to the terms of the Mozilla
      8 // Public License v. 2.0. If a copy of the MPL was not distributed
      9 // with this file, You can obtain one at http://mozilla.org/MPL/2.0/.
     10 
     11 #include "../../test/sparse_solver.h"
     12 #include <unsupported/Eigen/IterativeSolvers>
     13 
     14 template<typename T> void test_dgmres_T()
     15 {
     16   DGMRES<SparseMatrix<T>, DiagonalPreconditioner<T> > dgmres_colmajor_diag;
     17   DGMRES<SparseMatrix<T>, IdentityPreconditioner    > dgmres_colmajor_I;
     18   DGMRES<SparseMatrix<T>, IncompleteLUT<T> >           dgmres_colmajor_ilut;
     19   //GMRES<SparseMatrix<T>, SSORPreconditioner<T> >     dgmres_colmajor_ssor;
     20 
     21   CALL_SUBTEST( check_sparse_square_solving(dgmres_colmajor_diag)  );
     22 //   CALL_SUBTEST( check_sparse_square_solving(dgmres_colmajor_I)     );
     23   CALL_SUBTEST( check_sparse_square_solving(dgmres_colmajor_ilut)     );
     24   //CALL_SUBTEST( check_sparse_square_solving(dgmres_colmajor_ssor)     );
     25 }
     26 
     27 EIGEN_DECLARE_TEST(dgmres)
     28 {
     29   CALL_SUBTEST_1(test_dgmres_T<double>());
     30   CALL_SUBTEST_2(test_dgmres_T<std::complex<double> >());
     31 }