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

diagop.hpp

Go to the documentation of this file.
00001 //************************************************************************************//
00002 // Module       : diagop.hpp
00003 // Date         : 6/4/02 (DLR)
00004 // Copyright    : 2002-2006 Copyright University Corporation for Atmospheric
00005 //                Research
00006 // Description  : Encapsulates the methods and data associated with
00007 //                the Diag operator
00008 // Derived From : LinOp.
00009 // Modifications:
00010 //************************************************************************************//
00011 #if !defined(DIAGOP_HPP)
00012 #define DIAGOP_HPP 
00013 
00014 #include "linop.hpp"
00015 #include "gtbuffer.hpp"
00016 #include "gtvector.hpp"
00017 #include "elem2d.hpp"
00018 
00019 class DiagOp: public LinOp 
00020 {
00021 public:
00022                            DiagOp();
00023                            DiagOp(GINT  n);
00024                            DiagOp(GDBuffer  *diag);
00025                            DiagOp(GVector *diag);
00026                            DiagOp(GDOUBLE *diag, GINT  n);
00027                            DiagOp(Elem2D *e);
00028                           ~DiagOp();
00029 
00030          GVector           operator*(GVector ) ;                   // Multiply operator on the RHS by vector
00031          GVector          *GetDiag();                               // Get diagonal vector
00032          void              OpVec_prod(GVector &x, GVector &ret);  // \* operator, with no vector copy or = 
00033          void              SetDiag(GDOUBLE *diag_elems, GINT   num ); // Set diagonal elements
00034          void              SetMask(GVector *m);
00035          void              Resize(GINT  NN);
00036          void              Inverse();
00037 
00038 private:
00039 
00040        
00041          GINT      n;
00042          GBOOL     bInverse;
00043          GVector  *diag;
00044          GVector  *diag0;
00045 
00046 };
00047 
00048 #endif

Generated on Wed Dec 21 16:00:48 2005 for Geophysics & Astrophysics Spectral Element Adaptive Refinement (GASpAR) 2D Code by  doxygen 1.4.4