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

P1TriMap.h

Go to the documentation of this file.
00001 // Copyright (C) 2003 Johan Hoffman and Anders Logg.
00002 // Licensed under the GNU GPL Version 2.
00003 
00004 // Map from the reference cell defined by the nodes
00005 // (0,0) - (1,0) - (0,1) to a given triangle in 2D.
00006 
00007 #ifndef __P1_TRI_MAP_H
00008 #define __P1_TRI_MAP_H
00009 
00010 #include <dolfin/Map.h>
00011 
00012 namespace dolfin {
00013   
00014   class P1TriMap : public Map
00015   {
00016   public:
00017     
00018     P1TriMap();
00019 
00020     Point operator() (const Point& p) const;
00021     Point operator() (const Point& p, unsigned int boundary) const;
00022     
00023     void update(const Cell& cell);
00024     void update(const Edge& edge);
00025 
00026     const FunctionSpace::ElementFunction ddx(const FunctionSpace::ShapeFunction &v) const;
00027     const FunctionSpace::ElementFunction ddy(const FunctionSpace::ShapeFunction &v) const;
00028     const FunctionSpace::ElementFunction ddz(const FunctionSpace::ShapeFunction &v) const;
00029     const FunctionSpace::ElementFunction ddt(const FunctionSpace::ShapeFunction &v) const;
00030 
00031   private:
00032 
00033     // FIXME: Temporary hack until we sort things out with the
00034     // FIXME: local numbering of nodes, cells, edges, and faces.
00035     unsigned int edgeNumber(const Edge& edge, const Cell& cell) const;
00036   
00037   };
00038 
00039 }
00040 
00041 #endif


Documentation automatically generated with Doxygen on 10 Sep 2004.