monom.hh

Go to the documentation of this file.
00001 // -*- tab-width: 4; indent-tabs-mode: nil -*-
00002 #ifndef DUNE_MONOMLOCALFINITEELEMENT_HH
00003 #define DUNE_MONOMLOCALFINITEELEMENT_HH
00004 
00005 #include <dune/common/geometrytype.hh>
00006 
00007 #include "common/localfiniteelementtraits.hh"
00008 #include "monom/monomlocalbasis.hh"
00009 #include "monom/monomlocalcoefficients.hh"
00010 #include "monom/monomlocalinterpolation.hh"
00011 
00012 namespace Dune 
00013 {
00014 
00022   template<class D, class R, int d, int p>
00023   class MonomLocalFiniteElement 
00024   {
00025     enum { static_size = MonomImp::Size<d,p>::val };
00026 
00027   public:
00030         typedef LocalFiniteElementTraits<
00031       MonomLocalBasis<D,R,d,p>,
00032       MonomLocalCoefficients<static_size>,
00033       MonomLocalInterpolation<MonomLocalBasis<D,R,d,p>,static_size>
00034     > Traits;
00035 
00038         MonomLocalFiniteElement (GeometryType::BasicType basicType) 
00039           : basis(), interpolation(basicType, basis), gt(basicType,d)
00040         {}
00041 
00044         const typename Traits::LocalBasisType& localBasis () const
00045         {
00046           return basis;
00047         }
00048         
00051         const typename Traits::LocalCoefficientsType& localCoefficients () const
00052         {
00053           return coefficients;
00054         }
00055         
00058         const typename Traits::LocalInterpolationType& localInterpolation () const
00059         {
00060           return interpolation;
00061         }
00062         
00065         GeometryType type () const
00066         {
00067           return gt;
00068         }
00069 
00070   private:
00071         MonomLocalBasis<D,R,d,p> basis;
00072         MonomLocalCoefficients<static_size> coefficients;
00073         MonomLocalInterpolation<MonomLocalBasis<D,R,d,p>,static_size> interpolation;
00074         GeometryType gt;
00075   };
00076 
00077 }
00078 
00079 #endif // DUNE_MONOMLOCALFINITEELEMENT_HH
Generated on Sat Apr 24 11:15:34 2010 for dune-localfunctions by  doxygen 1.6.3