![]() |
00001 // Copyright (C) 2004 Johan Hoffman and Anders Logg. 00002 // Licensed under the GNU GPL Version 2. 00003 00004 #ifndef __FINITE_ELEMENT_METHOD 00005 #define __FINITE_ELEMENT_METHOD 00006 00007 #include <dolfin/Mesh.h> 00008 #include <dolfin/FiniteElement.h> 00009 00010 namespace dolfin 00011 { 00012 00013 class Map; 00014 class Quadrature; 00015 00022 00023 class FiniteElementMethod 00024 { 00025 public: 00026 00028 FiniteElementMethod(Mesh::Type type, unsigned int noeq); 00029 00031 FiniteElementMethod(FiniteElement::Vector& element, 00032 Map& map, 00033 Quadrature& interior_quadrature, 00034 Quadrature& boundary_quadrature); 00035 00037 ~FiniteElementMethod(); 00038 00040 FiniteElement::Vector& element(); 00041 00043 Map& map(); 00044 00046 Quadrature& interiorQuadrature(); 00047 Quadrature& boundaryQuadrature(); 00048 00050 friend class FEM; 00051 00052 private: 00053 00054 // The finite element 00055 FiniteElement::Vector* _element; 00056 00057 // The map from the reference cell 00058 Map* _map; 00059 00060 // The quadrature rule on the reference cell interior 00061 Quadrature* _interior_quadrature; 00062 00063 // The quadrature rule on the reference cell boundary 00064 Quadrature* _boundary_quadrature; 00065 00066 // True if user specifies method 00067 bool user; 00068 00069 }; 00070 00071 } 00072 00073 #endif
Documentation automatically generated with Doxygen on 10 Sep 2004.