Main Page | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Class Members | File Members

skeleton.hpp

Go to the documentation of this file.
00001 #ifndef SKELETON_HPP
00002 #define SKELETON_HPP
00003 
00004 #include "matrix.hpp"
00005 #include "indexlist.hpp"
00006 
00016 
00017 
00022 class Skeleton : public Matrix {
00023 protected:
00024     unsigned rank;
00025 public:
00027     Skeleton(unsigned r);
00029     unsigned GetRank() const;
00031     virtual const Matrix& GetM() const = 0;
00033     virtual const Matrix& GetU() const = 0;
00035     virtual const Matrix& GetV() const = 0;
00037     enum mv_mode {normal, transpose};
00039 
00047     void MatvecF(double alpha, const double *vec,
00048         double *res, double *calc, mv_mode mode = normal) const;
00050 
00059     void MatvecUT(double alpha, const double *vec,
00060         double *res, mv_mode mode = normal) const;
00062 
00071     void MatvecLT(double alpha, const double *vec,
00072         double *res, mv_mode mode = normal) const;
00074     ~Skeleton();
00075 };
00076 
00077 #endif /* SKELETON_HPP */

Generated on Sun May 25 01:58:04 2025 for SmoluchowskiSolver by Doxygen