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

ilaplacianop.hpp

Go to the documentation of this file.
00001 //************************************************************************************//
00002 // Module       : ilaplacian.hpp
00003 // Date         : 2/26/03 (DLR)
00004 // Copyright    : 2003-2006 Copyright University Corporation for Atmospheric
00005 //                Research
00006 // Description  : Encapsulates the methods and data associated with
00007 //                the inverse of the weak Laplacian operator.
00008 // Derived From : LinOp.
00009 // Modifications:
00010 //************************************************************************************//
00011 #if !defined(ILAPLACIANOP_HPP)
00012 #define ILAPLACIANOP_HPP
00013 #include "linop.hpp"
00014 #include "helmholtzop.hpp"
00015 #include "defquad2d.hpp"
00016 #include "rectquad2d.hpp"
00017 #include "diagop.hpp"
00018 
00019 class iLaplacianOp: public LinOp
00020 {
00021 public:
00022                            iLaplacianOp();
00023                            iLaplacianOp(LinOp *A);
00024                            iLaplacianOp(Elem2D *e);
00025 //                         iLaplacianOp(const iLaplacianOp &);
00026                           ~iLaplacianOp();
00027 
00028          GVector           operator*(GVector) ; // Multiply precond by right-vector
00029          void              OpVec_prod(GVector &q, GVector &ret);
00030          void              SetConst(GDOUBLE clc);
00031          void              SetConst(GDOUBLE clc1, GDOUBLE clc2);
00032          void              SetElem(Elem2D *e);
00033 
00034 
00035 private:
00036          GBOOL             DefmQuadH();
00037          GBOOL             RectQuadH();
00038          GBOOL             TriangleH();
00039          GBOOL             ComputeOp();
00040 
00041          GINT              N1;     // 1-size 
00042          GINT              N2;     // 2-size 
00043          GINT              NN;     // 1 X 2 - size 
00044          GDOUBLE           lc1;    // Laplacian-multiplicative constant
00045          GDOUBLE           lc2;    // Laplacian-multiplicative constant
00046          Elem2D           *elem;
00047          GMatrix          *L;
00048          GMatrix          *iL;
00049 
00050 
00051 };
00052 
00053 #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