lib_ex_pour_HZpp/Partie_2/algebre_lineaire/sparselib++/sp1_5c/include/pre_cond_double.h

1 line
2.9 KiB
C
Raw Normal View History

/************************************************************************ * UNIVERSITE DE BRETAGNE SUD --- I.U.P/I.U.T. DE LORIENT * ************************************************************************ * LABORATOIRE DE GENIE MECANIQUE ET MATERIAUX * * Tel 97.80.80.60 * * Centre de Genie Industriel 56520 GUIDEL-PLAGES * ************************************************************************ * DATE: 03/01/01 * * $ * * AUTEUR: G RIO * * $ * * PROJET: Herezh++ * * $ * ************************************************************************ * BUT: Faire une interface g<>n<EFBFBD>rique pour les pr<70>conditionnements. * * Seule la partie inferieure est stockee. * * $ * * '''''''''''''''''''''''''''''''''''''''''''''''''''''''''''' * * * VERIFICATION: * * * * ! date ! auteur ! but ! * * ------------------------------------------------------------ * * ! ! ! ! * * $ * * '''''''''''''''''''''''''''''''''''''''''''''''''''''''''''' * * MODIFICATIONS: * * ! date ! auteur ! but ! * * ------------------------------------------------------------ * * $ * ************************************************************************/ #ifndef PRE_COND_DOUBLE_H #define PRE_COND_DOUBLE_H //#include "vecdefs.h" #include "vecdefs_GR.h" // modif GR //#include VECTOR_H #include "comprow_double.h" #include "compcol_double.h" class DiagPreconditioner_double { private: VECTOR_double diag_; public: DiagPreconditioner_double (const CompCol_Mat_double &); DiagPreconditioner_double (const CompRow_Mat_double &); ~DiagPreconditioner_double (void) { }; VECTOR_double solve (const VECTOR_double &x) const; VECTOR_double trans_solve (const VECTOR_double &x) const; const double& diag(int i) const { return diag_(i); } double& diag(int i) { return diag_(i); } }; #endif