00001 // Copyright (C) 2006-2009 Kent-Andre Mardal and Simula Research Laboratory. 00002 // Licensed under the GNU GPL Version 2, or (at your option) any later version. 00003 00004 #ifndef P0FE_IS_INCLUDED 00005 #define P0FE_IS_INCLUDED 00006 00007 #include "FE.h" 00008 00009 namespace SyFi 00010 { 00011 00012 class P0 : public StandardFE 00013 { 00014 public: 00015 P0(); 00016 P0(Polygon& p, unsigned int order = 0); 00017 virtual ~P0() {} 00018 00019 virtual void compute_basis_functions(); 00020 }; 00021 00022 class VectorP0 : public StandardFE 00023 { 00024 protected: 00025 unsigned int size; 00026 public: 00027 VectorP0(); 00028 VectorP0(Polygon& p, unsigned int order = 0, unsigned int size = 0 ); 00029 ~VectorP0() {} 00030 00031 virtual void set_size(unsigned int size_); 00032 virtual void compute_basis_functions(); 00033 }; 00034 00035 class TensorP0 : public StandardFE 00036 { 00037 protected: 00038 unsigned int size; 00039 public: 00040 TensorP0(); 00041 TensorP0(Polygon& p, unsigned int order = 0, unsigned int size = 0 ); 00042 ~TensorP0() {} 00043 00044 virtual void set_size(unsigned int size_); 00045 virtual void compute_basis_functions(); 00046 }; 00047 00048 } 00049 #endif