dune-localfunctions  2.2.1
localbasis.hh
Go to the documentation of this file.
1 // -*- tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 2 -*-
2 // vi: set et ts=4 sw=2 sts=2:
3 #ifndef DUNE_LOCALBASIS_HH
4 #define DUNE_LOCALBASIS_HH
5 
6 #include <iostream>
7 #include <vector>
8 
9 #include<dune/common/static_assert.hh>
10 #include<dune/common/array.hh>
11 #include<dune/common/fvector.hh>
12 
13 namespace Dune
14 {
15 
38  template<class DF, int n, class D, class RF, int m, class R, class J, int dorder=0>
40  {
42  typedef DF DomainFieldType;
43 
45  enum {
47  dimDomain = n
48  };
49 
51  typedef D DomainType;
52 
54  typedef RF RangeFieldType;
55 
57  enum {
59  dimRange = m
60  };
61 
63  typedef R RangeType;
64 
71  typedef J JacobianType;
72 
74  enum {
76  diffOrder=dorder
77  };
78  };
79 
80 
101  template<class DF, int n, class D, class RF, int m, class R>
103  {
105  typedef DF DomainFieldType;
106 
108  enum {
111  };
112 
114  typedef D DomainType;
115 
117  typedef RF RangeFieldType;
118 
120  enum {
122  dimRange = m
123  };
124 
126  typedef R RangeType;
127 
129  enum {
132  };
133  };
134 
135 
152  template<class DF, int n, class D, class RF, int m, class R, class J>
153  struct C1LocalBasisTraits : public C0LocalBasisTraits<DF,n,D,RF,m,R>
154  {
161  typedef J JacobianType;
162 
164  enum {
167  };
168  };
169 
170  template<class DF, int n, class D, class RF, int m, class R, class J, int dorder>
171  struct CkLocalBasisTraits : public C1LocalBasisTraits<DF,n,D,RF,m,R,J>
172  {
174  enum {
176  diffOrder=dorder
177  };
178  };
179 
180 }
181 #endif