[Dune] [Dune-Commit] dune-localfunctions r574 - in trunk: . dune/finiteelements dune/finiteelements/generic dune/finiteelements/generic/common dune/finiteelements/generic/lagrangebasis dune/finiteelements/generic/math dune/finiteelements/generic/orthonormalbasis dune/finiteelements/generic/quadrature dune/finiteelements/generic/raviartthomasbasis
Oliver Sander
sander at mi.fu-berlin.de
Thu Oct 29 15:46:16 CET 2009
Hi Andreas!
Sounds great, and thanks for the information. I take it that the
further integration with the existing code will be discussed at the
next meeting.
bist wishes,
Oliver
Andreas Dedner schrieb:
> Hi,
> here a bit more detail:
>
> We have implemented
> 1) Lagrange Finite Elements of arbitrary order
> for simplex, cubes, and prisms (the jacobian for Pyrmids is still
> missing). As interpolation point sets equidistant points and
> (approximate) lobatto points are available (require alglib which
> we will provide with an m4 test later on).
> 2) orthonormal basis functions of arbitrary order for arbitrary
> topologies.
> 3) Raviart-Thomas spaces of higher order for simplicies.
>
> Local basis functions, interpolations, and coefficients are provided for
> a dynamic polynomial order and topology type, i.e., work for hybrid
> meshes. The twist problem is not covered at the moment since different
> strategies have to be discussed here.
>
> To avoid problems with rounding error etc. all parts of the finite
> elements are provided for arbitrary precision field types (alglib an
> mpfr wrapper, or gmp). The required m4 checks are under construction.
>
> At the moment quadratures are also provided (Gauss and Lobatto) but
> should be moved into a future "dune-geometry" module.
>
> Best
> Martin and Andreas
>
>
> Oliver Sander wrote:
>
>> Thanks a lot, guys!
>> What are generic localfunctions?
>>
>> Yours,
>> Oliver
>>
>> dedner at dune-project.org schrieb:
>>
>>> Author: dedner
>>> Date: 2009-10-29 14:11:55 +0100 (Thu, 29 Oct 2009)
>>> New Revision: 574
>>>
>>> Added:
>>> trunk/dune/finiteelements/generic/Makefile.am
>>> trunk/dune/finiteelements/generic/common/
>>> trunk/dune/finiteelements/generic/dglagrangefiniteelement.hh
>>> trunk/dune/finiteelements/generic/lagrangebasis/
>>> trunk/dune/finiteelements/generic/lagrangefiniteelement.hh
>>> trunk/dune/finiteelements/generic/math/
>>> trunk/dune/finiteelements/generic/orthonormalbasis/
>>> trunk/dune/finiteelements/generic/orthonormalfiniteelement.hh
>>> trunk/dune/finiteelements/generic/quadrature/
>>> trunk/dune/finiteelements/generic/raviartthomasbasis/
>>> trunk/dune/finiteelements/generic/raviartthomasfiniteelement.hh
>>> Removed:
>>> trunk/dune/finiteelements/generic/dune/
>>> trunk/dune/finiteelements/generic/orthonormalbasis/example.cc
>>> Modified:
>>> trunk/configure.ac
>>> trunk/dune/finiteelements/Makefile.am
>>> trunk/dune/finiteelements/generic/
>>> trunk/dune/finiteelements/generic/common/Makefile.am
>>> trunk/dune/finiteelements/generic/common/basisevaluator.hh
>>> trunk/dune/finiteelements/generic/common/basismatrix.hh
>>> trunk/dune/finiteelements/generic/common/basisprint.hh
>>> trunk/dune/finiteelements/generic/common/coeffmatrix.hh
>>> trunk/dune/finiteelements/generic/common/defaultbasisfactory.hh
>>> trunk/dune/finiteelements/generic/common/dglocalcoefficients.hh
>>> trunk/dune/finiteelements/generic/common/interpolationhelper.hh
>>> trunk/dune/finiteelements/generic/common/l2interpolation.hh
>>> trunk/dune/finiteelements/generic/common/monomialbasis.hh
>>> trunk/dune/finiteelements/generic/common/multiindex.hh
>>> trunk/dune/finiteelements/generic/common/polynomialbasis.hh
>>> trunk/dune/finiteelements/generic/common/tensor.hh
>>> trunk/dune/finiteelements/generic/lagrangebasis/Makefile.am
>>> trunk/dune/finiteelements/generic/lagrangebasis/equidistantpoints.hh
>>> trunk/dune/finiteelements/generic/lagrangebasis/interpolation.hh
>>> trunk/dune/finiteelements/generic/lagrangebasis/lagrangebasis.hh
>>> trunk/dune/finiteelements/generic/lagrangebasis/lagrangecoefficients.hh
>>> trunk/dune/finiteelements/generic/lagrangebasis/lobattopoints.hh
>>> trunk/dune/finiteelements/generic/lagrangebasis/test.cc
>>> trunk/dune/finiteelements/generic/math/Makefile.am
>>> trunk/dune/finiteelements/generic/math/field.hh
>>> trunk/dune/finiteelements/generic/math/matrix.hh
>>> trunk/dune/finiteelements/generic/orthonormalbasis/Makefile.am
>>> trunk/dune/finiteelements/generic/orthonormalbasis/orthonormalbasis.hh
>>> trunk/dune/finiteelements/generic/orthonormalbasis/orthonormalcompute.hh
>>> trunk/dune/finiteelements/generic/orthonormalbasis/test.cc
>>> trunk/dune/finiteelements/generic/quadrature/Makefile.am
>>> trunk/dune/finiteelements/generic/quadrature/gaussquadrature.hh
>>> trunk/dune/finiteelements/generic/quadrature/genericquadrature.hh
>>> trunk/dune/finiteelements/generic/quadrature/lobattoquadrature.hh
>>> trunk/dune/finiteelements/generic/quadrature/quadrature.hh
>>> trunk/dune/finiteelements/generic/quadrature/subquadrature.hh
>>> trunk/dune/finiteelements/generic/raviartthomasbasis/Makefile.am
>>> trunk/dune/finiteelements/generic/raviartthomasbasis/interpolation.hh
>>> trunk/dune/finiteelements/generic/raviartthomasbasis/raviartthomasbasis.hh
>>> trunk/dune/finiteelements/generic/raviartthomasbasis/raviartthomasprebasis.hh
>>> trunk/dune/finiteelements/generic/raviartthomasbasis/test.cc
>>> Log:
>>> final import of generic localfunctions after load of svn dump
>>> Have fun
>>> Andreas and Martin
>>>
>>>
>>>
>>> Modified: trunk/configure.ac
>>> ===================================================================
>>> --- trunk/configure.ac 2009-10-26 10:27:50 UTC (rev 573)
>>> +++ trunk/configure.ac 2009-10-29 13:11:55 UTC (rev 574)
>>> @@ -48,6 +48,13 @@
>>> dune/finiteelements/rt0q2d/Makefile
>>> dune/finiteelements/rt0q3d/Makefile
>>> dune/finiteelements/test/Makefile
>>> + dune/finiteelements/generic/Makefile
>>> + dune/finiteelements/generic/common/Makefile
>>> + dune/finiteelements/generic/math/Makefile
>>> + dune/finiteelements/generic/quadrature/Makefile
>>> + dune/finiteelements/generic/orthonormalbasis/Makefile
>>> + dune/finiteelements/generic/lagrangebasis/Makefile
>>> + dune/finiteelements/generic/raviartthomasbasis/Makefile
>>> doc/doxygen/Makefile
>>> doc/doxygen/Doxyfile
>>> doc/Makefile
>>>
>>> Modified: trunk/dune/finiteelements/Makefile.am
>>> ===================================================================
>>> --- trunk/dune/finiteelements/Makefile.am 2009-10-26 10:27:50 UTC (rev 573)
>>> +++ trunk/dune/finiteelements/Makefile.am 2009-10-29 13:11:55 UTC (rev 574)
>>> @@ -6,8 +6,9 @@
>>> refinedp1.hh monom.hh p2.hh mimetic.hh rt0q2d.hh rt0q3d.hh rt0q.hh \
>>> pk2d.hh q22d.hh q1.hh
>>>
>>> -SUBDIRS = common test p0 p1 pk2d pk3d q1 q22d rt02d edger02d edges02d \
>>> - edges03d rannacher_turek2d refinedp1 monom mimetic rt0q2d rt0q3d \
>>> - prismp1 prismp2
>>> +SUBDIRS = common generic test \
>>> + p0 p1 pk2d pk3d q1 q22d rt02d edger02d edges02d \
>>> + edges03d rannacher_turek2d refinedp1 monom mimetic rt0q2d rt0q3d \
>>> + prismp1 prismp2
>>>
>>> include $(top_srcdir)/am/global-rules
>>>
>>>
>>> Property changes on: trunk/dune/finiteelements/generic
>>> ___________________________________________________________________
>>> Name: svn:ignore
>>> + Makefile
>>> Makefile.in
>>> .deps
>>> .libs
>>> *.swp
>>>
>>>
>>> Copied: trunk/dune/finiteelements/generic/Makefile.am (from rev 573, trunk/dune/finiteelements/generic/dune/finiteelements/Makefile.am)
>>> ===================================================================
>>> --- trunk/dune/finiteelements/generic/Makefile.am (rev 0)
>>> +++ trunk/dune/finiteelements/generic/Makefile.am 2009-10-29 13:11:55 UTC (rev 574)
>>> @@ -0,0 +1,9 @@
>>> +genericdir = $(includedir)/dune/finiteelements/generic
>>> +generic_HEADERS = lagrangefiniteelement.hh \
>>> + dglagrangefiniteelement.hh \
>>> + orthonormalfiniteelement.hh \
>>> + raviartthomasfiniteelement.hh
>>> +SUBDIRS = common orthonormalbasis lagrangebasis raviartthomasbasis math quadrature
>>> +AM_CPPFLAGS = $(DUNE_CPPFLAGS)
>>> +
>>> +include $(top_srcdir)/am/global-rules
>>>
>>> Copied: trunk/dune/finiteelements/generic/common (from rev 573, trunk/dune/finiteelements/generic/dune/finiteelements/generic)
>>>
>>> Modified: trunk/dune/finiteelements/generic/common/Makefile.am
>>> ===================================================================
>>> --- trunk/dune/finiteelements/generic/dune/finiteelements/generic/Makefile.am 2009-10-26 10:27:50 UTC (rev 573)
>>> +++ trunk/dune/finiteelements/generic/common/Makefile.am 2009-10-29 13:11:55 UTC (rev 574)
>>> @@ -1,13 +1,11 @@
>>> -genericdir = $(includedir)/dune/finiteelements/generic
>>> +commondir = $(includedir)/dune/finiteelements/generic/common
>>>
>>> -generic_HEADERS = basisevaluator.hh localfiniteelement.hh \
>>> - basismatrix.hh monomialbasis.hh \
>>> - basisprint.hh multiindex.hh \
>>> - coeffmatrix.hh polynomialbasis.hh \
>>> - defaultbasisfactory.hh tensor.hh \
>>> - dglocalcoefficients.hh topologyfactory.hh \
>>> - interpolationhelper.hh l2interpolation.hh
>>> +common_HEADERS = basisevaluator.hh localfiniteelement.hh \
>>> + basismatrix.hh monomialbasis.hh \
>>> + basisprint.hh multiindex.hh \
>>> + coeffmatrix.hh polynomialbasis.hh \
>>> + defaultbasisfactory.hh tensor.hh \
>>> + dglocalcoefficients.hh topologyfactory.hh \
>>> + interpolationhelper.hh l2interpolation.hh
>>>
>>> -AM_CPPFLAGS += "-I$(top_srcdir)/alglib"
>>> -
>>> include $(top_srcdir)/am/global-rules
>>>
>>> Modified: trunk/dune/finiteelements/generic/common/basisevaluator.hh
>>> ===================================================================
>>> --- trunk/dune/finiteelements/generic/dune/finiteelements/generic/basisevaluator.hh 2009-10-26 10:27:50 UTC (rev 573)
>>> +++ trunk/dune/finiteelements/generic/common/basisevaluator.hh 2009-10-29 13:11:55 UTC (rev 574)
>>> @@ -8,11 +8,11 @@
>>>
>>> #include <dune/grid/genericgeometry/topologytypes.hh>
>>>
>>> -#include <dune/finiteelements/common/field.hh>
>>> +#include <dune/finiteelements/generic/math/field.hh>
>>>
>>> -#include <dune/finiteelements/generic/multiindex.hh>
>>> +#include <dune/finiteelements/generic/common/multiindex.hh>
>>>
>>> -#include <dune/finiteelements/generic/tensor.hh>
>>> +#include <dune/finiteelements/generic/common/tensor.hh>
>>>
>>> namespace Dune
>>> {
>>>
>>> Modified: trunk/dune/finiteelements/generic/common/basismatrix.hh
>>> ===================================================================
>>> --- trunk/dune/finiteelements/generic/dune/finiteelements/generic/basismatrix.hh 2009-10-26 10:27:50 UTC (rev 573)
>>> +++ trunk/dune/finiteelements/generic/common/basismatrix.hh 2009-10-29 13:11:55 UTC (rev 574)
>>> @@ -4,9 +4,9 @@
>>> #include <fstream>
>>> #include <dune/common/exceptions.hh>
>>>
>>> -#include <dune/finiteelements/common/matrix.hh>
>>> -#include <dune/finiteelements/generic/monomialbasis.hh>
>>> -#include <dune/finiteelements/generic/polynomialbasis.hh>
>>> +#include <dune/finiteelements/generic/math/matrix.hh>
>>> +#include <dune/finiteelements/generic/common/monomialbasis.hh>
>>> +#include <dune/finiteelements/generic/common/polynomialbasis.hh>
>>>
>>> namespace Dune
>>> {
>>>
>>> Modified: trunk/dune/finiteelements/generic/common/basisprint.hh
>>> ===================================================================
>>> --- trunk/dune/finiteelements/generic/dune/finiteelements/generic/basisprint.hh 2009-10-26 10:27:50 UTC (rev 573)
>>> +++ trunk/dune/finiteelements/generic/common/basisprint.hh 2009-10-29 13:11:55 UTC (rev 574)
>>> @@ -1,7 +1,7 @@
>>> #ifndef BASISPRINT
>>> #define BASISPRINT
>>> -#include <dune/finiteelements/generic/multiindex.hh>
>>> -#include <dune/finiteelements/generic/polynomialbasis.hh>
>>> +#include <dune/finiteelements/generic/common/multiindex.hh>
>>> +#include <dune/finiteelements/generic/common/polynomialbasis.hh>
>>> namespace Dune {
>>> template <int deriv,class BasisFactory,class PrintField=typename BasisFactory::StorageField>
>>> void basisPrint(std::ostream &out,
>>>
>>> Modified: trunk/dune/finiteelements/generic/common/coeffmatrix.hh
>>> ===================================================================
>>> --- trunk/dune/finiteelements/generic/dune/finiteelements/generic/coeffmatrix.hh 2009-10-26 10:27:50 UTC (rev 573)
>>> +++ trunk/dune/finiteelements/generic/common/coeffmatrix.hh 2009-10-29 13:11:55 UTC (rev 574)
>>> @@ -4,8 +4,8 @@
>>> #include <iostream>
>>> #include <vector>
>>> #include <dune/common/fvector.hh>
>>> -#include <dune/finiteelements/common/field.hh>
>>> -#include <dune/finiteelements/generic/tensor.hh>
>>> +#include <dune/finiteelements/generic/math/field.hh>
>>> +#include <dune/finiteelements/generic/common/tensor.hh>
>>>
>>> namespace Dune
>>> {
>>>
>>> Modified: trunk/dune/finiteelements/generic/common/defaultbasisfactory.hh
>>> ===================================================================
>>> --- trunk/dune/finiteelements/generic/dune/finiteelements/generic/defaultbasisfactory.hh 2009-10-26 10:27:50 UTC (rev 573)
>>> +++ trunk/dune/finiteelements/generic/common/defaultbasisfactory.hh 2009-10-29 13:11:55 UTC (rev 574)
>>> @@ -4,8 +4,8 @@
>>> #include <fstream>
>>> #include <dune/common/exceptions.hh>
>>>
>>> -#include <dune/finiteelements/generic/basismatrix.hh>
>>> -#include <dune/finiteelements/generic/topologyfactory.hh>
>>> +#include <dune/finiteelements/generic/common/basismatrix.hh>
>>> +#include <dune/finiteelements/generic/common/topologyfactory.hh>
>>>
>>> namespace Dune
>>> {
>>>
>>> Modified: trunk/dune/finiteelements/generic/common/dglocalcoefficients.hh
>>> ===================================================================
>>> --- trunk/dune/finiteelements/generic/dune/finiteelements/generic/dglocalcoefficients.hh 2009-10-26 10:27:50 UTC (rev 573)
>>> +++ trunk/dune/finiteelements/generic/common/dglocalcoefficients.hh 2009-10-29 13:11:55 UTC (rev 574)
>>> @@ -4,7 +4,7 @@
>>> #include <cassert>
>>> #include <vector>
>>>
>>> -#include <dune/finiteelements/generic/topologyfactory.hh>
>>> +#include <dune/finiteelements/generic/common/topologyfactory.hh>
>>> #include <dune/finiteelements/common/localcoefficients.hh>
>>>
>>> namespace Dune
>>>
>>> Modified: trunk/dune/finiteelements/generic/common/interpolationhelper.hh
>>> ===================================================================
>>> --- trunk/dune/finiteelements/generic/dune/finiteelements/generic/interpolationhelper.hh 2009-10-26 10:27:50 UTC (rev 573)
>>> +++ trunk/dune/finiteelements/generic/common/interpolationhelper.hh 2009-10-29 13:11:55 UTC (rev 574)
>>> @@ -2,7 +2,7 @@
>>> #define GENERIC_INTERPOLATIONHELPER_HH
>>>
>>> #include <dune/common/fvector.hh>
>>> -#include <dune/finiteelements/common/field.hh>
>>> +#include <dune/finiteelements/generic/math/field.hh>
>>> #include <dune/finiteelements/common/localinterpolation.hh>
>>>
>>> namespace Dune
>>>
>>> Modified: trunk/dune/finiteelements/generic/common/l2interpolation.hh
>>> ===================================================================
>>> --- trunk/dune/finiteelements/generic/dune/finiteelements/generic/l2interpolation.hh 2009-10-26 10:27:50 UTC (rev 573)
>>> +++ trunk/dune/finiteelements/generic/common/l2interpolation.hh 2009-10-29 13:11:55 UTC (rev 574)
>>> @@ -1,12 +1,13 @@
>>> #ifndef DUNE_L2INTERPOLATION_HH
>>> #define DUNE_L2INTERPOLATION_HH
>>>
>>> -#include <dune/finiteelements/generic/topologyfactory.hh>
>>> -#include <dune/finiteelements/common/matrix.hh>
>>> +#include <dune/finiteelements/generic/common/topologyfactory.hh>
>>> +#include <dune/finiteelements/generic/math/matrix.hh>
>>>
>>> #include <dune/finiteelements/common/localinterpolation.hh>
>>> -#include <dune/finiteelements/quadrature/genericquadrature.hh>
>>>
>>> +#include <dune/finiteelements/generic/quadrature/genericquadrature.hh>
>>> +
>>> namespace Dune
>>> {
>>> template< class B, class Q, bool onb >
>>>
>>> Modified: trunk/dune/finiteelements/generic/common/monomialbasis.hh
>>> ===================================================================
>>> --- trunk/dune/finiteelements/generic/dune/finiteelements/generic/monomialbasis.hh 2009-10-26 10:27:50 UTC (rev 573)
>>> +++ trunk/dune/finiteelements/generic/common/monomialbasis.hh 2009-10-29 13:11:55 UTC (rev 574)
>>> @@ -8,11 +8,11 @@
>>>
>>> #include <dune/grid/genericgeometry/topologytypes.hh>
>>>
>>> -#include <dune/finiteelements/common/field.hh>
>>> +#include <dune/finiteelements/generic/math/field.hh>
>>>
>>> -#include <dune/finiteelements/generic/topologyfactory.hh>
>>> -#include <dune/finiteelements/generic/multiindex.hh>
>>> -#include <dune/finiteelements/generic/tensor.hh>
>>> +#include <dune/finiteelements/generic/common/topologyfactory.hh>
>>> +#include <dune/finiteelements/generic/common/multiindex.hh>
>>> +#include <dune/finiteelements/generic/common/tensor.hh>
>>>
>>> namespace Dune
>>> {
>>>
>>> Modified: trunk/dune/finiteelements/generic/common/multiindex.hh
>>> ===================================================================
>>> --- trunk/dune/finiteelements/generic/dune/finiteelements/generic/multiindex.hh 2009-10-26 10:27:50 UTC (rev 573)
>>> +++ trunk/dune/finiteelements/generic/common/multiindex.hh 2009-10-29 13:11:55 UTC (rev 574)
>>> @@ -6,7 +6,7 @@
>>>
>>> #include <dune/common/fvector.hh>
>>>
>>> -#include <dune/finiteelements/common/field.hh>
>>> +#include <dune/finiteelements/generic/math/field.hh>
>>>
>>> namespace Dune
>>> {
>>>
>>> Modified: trunk/dune/finiteelements/generic/common/polynomialbasis.hh
>>> ===================================================================
>>> --- trunk/dune/finiteelements/generic/dune/finiteelements/generic/polynomialbasis.hh 2009-10-26 10:27:50 UTC (rev 573)
>>> +++ trunk/dune/finiteelements/generic/common/polynomialbasis.hh 2009-10-29 13:11:55 UTC (rev 574)
>>> @@ -7,10 +7,10 @@
>>>
>>> #include <dune/finiteelements/common/localbasis.hh>
>>>
>>> -#include <dune/finiteelements/generic/coeffmatrix.hh>
>>> -#include <dune/finiteelements/generic/monomialbasis.hh>
>>> -#include <dune/finiteelements/generic/multiindex.hh>
>>> -#include <dune/finiteelements/generic/basisevaluator.hh>
>>> +#include <dune/finiteelements/generic/common/coeffmatrix.hh>
>>> +#include <dune/finiteelements/generic/common/monomialbasis.hh>
>>> +#include <dune/finiteelements/generic/common/multiindex.hh>
>>> +#include <dune/finiteelements/generic/common/basisevaluator.hh>
>>>
>>> namespace Dune
>>> {
>>>
>>> Modified: trunk/dune/finiteelements/generic/common/tensor.hh
>>> ===================================================================
>>> --- trunk/dune/finiteelements/generic/dune/finiteelements/generic/tensor.hh 2009-10-26 10:27:50 UTC (rev 573)
>>> +++ trunk/dune/finiteelements/generic/common/tensor.hh 2009-10-29 13:11:55 UTC (rev 574)
>>> @@ -4,7 +4,7 @@
>>> #include <vector>
>>> #include <ostream>
>>>
>>> -#include <dune/finiteelements/common/field.hh>
>>> +#include <dune/finiteelements/generic/math/field.hh>
>>> #include <dune/common/fvector.hh>
>>> #include <dune/common/misc.hh>
>>>
>>>
>>> Copied: trunk/dune/finiteelements/generic/dglagrangefiniteelement.hh (from rev 573, trunk/dune/finiteelements/generic/dune/finiteelements/dglagrangefiniteelement.hh)
>>> ===================================================================
>>> --- trunk/dune/finiteelements/generic/dglagrangefiniteelement.hh (rev 0)
>>> +++ trunk/dune/finiteelements/generic/dglagrangefiniteelement.hh 2009-10-29 13:11:55 UTC (rev 574)
>>> @@ -0,0 +1,37 @@
>>> +#ifndef DUNE_LAGRANGEFINITEELEMENT_HH
>>> +#define DUNE_LAGRANGEFINITEELEMENT_HH
>>> +
>>> +#include <dune/finiteelements/generic/common/localfiniteelement.hh>
>>> +#include <dune/finiteelements/generic/common/dglocalcoefficients.hh>
>>> +#include <dune/finiteelements/generic/lagrangebasis/lagrangecoefficients.hh>
>>> +#include <dune/finiteelements/generic/lagrangebasis/interpolation.hh>
>>> +#include <dune/finiteelements/generic/lagrangebasis/lagrangebasis.hh>
>>> +
>>> +namespace Dune
>>> +{
>>> + template< template <class,unsigned int> class LP,
>>> + unsigned int dimDomain, class D, class R,
>>> + class SF=R, class CF=SF >
>>> + class LagrangeLocalFiniteElement
>>> + : public GenericLocalFiniteElement< LagrangeBasisFactory< LP, dimDomain, SF, CF >,
>>> + DGLocalCoefficientsFactory< LagrangeBasisFactory< LP, dimDomain, SF, CF > >,
>>> + LagrangeInterpolationFactory< LP, dimDomain, SF >,
>>> + dimDomain,D,R>
>>> + {
>>> + typedef GenericLocalFiniteElement< LagrangeBasisFactory< LP, dimDomain, SF, CF >,
>>> + DGLocalCoefficientsFactory< LagrangeBasisFactory< LP, dimDomain, SF, CF > >,
>>> + LagrangeInterpolationFactory< LP, dimDomain, SF >,
>>> + dimDomain,D,R> Base;
>>> + public:
>>> + typedef typename Base::Traits Traits;
>>> +
>>> + /** \todo Please doc me !
>>> + */
>>> + LagrangeLocalFiniteElement ( unsigned int topologyId, unsigned int order )
>>> + : Base( topologyId, order )
>>> + {}
>>> + };
>>> +
>>> +}
>>> +
>>> +#endif // #ifndef DUNE_LAGRANGEFINITEELEMENT_HH
>>>
>>> Copied: trunk/dune/finiteelements/generic/lagrangebasis (from rev 573, trunk/dune/finiteelements/generic/dune/finiteelements/lagrangebasis)
>>>
>>> Modified: trunk/dune/finiteelements/generic/lagrangebasis/Makefile.am
>>> ===================================================================
>>> --- trunk/dune/finiteelements/generic/dune/finiteelements/lagrangebasis/Makefile.am 2009-10-26 10:27:50 UTC (rev 573)
>>> +++ trunk/dune/finiteelements/generic/lagrangebasis/Makefile.am 2009-10-29 13:11:55 UTC (rev 574)
>>> @@ -1,4 +1,4 @@
>>> -lagrangebasisdir = $(includedir)/dune/finiteelements/lagrangebasis
>>> +lagrangebasisdir = $(includedir)/dune/finiteelements/generic/lagrangebasis
>>> lagrangebasis_HEADERS = emptypoints.hh lagrangebasis.hh \
>>> equidistantpoints.hh lagrangecoefficients.hh \
>>> interpolation.hh lobattopoints.hh
>>> @@ -7,15 +7,14 @@
>>>
>>>
>>> TOPOLOGY = Pyramid< Pyramid< Pyramid< Point > > >
>>> -SETTINGS = -DTOPOLOGY="$(TOPOLOGY)" -DHAVE_GMP=0 -DHAVE_ALGLIB=1
>>> +SETTINGS = -DTOPOLOGY="$(TOPOLOGY)"
>>>
>>> -AM_CPPFLAGS = -I$(top_srcdir)/alglib
>>> test_SOURCES = test.cc
>>> test_CPPFLAGS = $(DUNE_CPPFLAGS) $(AM_CPPFLAGS) $(SETTINGS)
>>> test_all_SOURCES = test.cc
>>> test_all_CPPFLAGS = $(DUNE_CPPFLAGS) $(AM_CPPFLAGS)
>>>
>>> -LDADD = $(DUNE_LDFLAGS) $(DUNE_LIBS) -lgmpxx -lgmp -lmpfr
>>> +LDADD = $(DUNE_LDFLAGS) $(DUNE_LIBS)
>>>
>>> include $(top_srcdir)/am/global-rules
>>>
>>>
>>> Modified: trunk/dune/finiteelements/generic/lagrangebasis/equidistantpoints.hh
>>> ===================================================================
>>> --- trunk/dune/finiteelements/generic/dune/finiteelements/lagrangebasis/equidistantpoints.hh 2009-10-26 10:27:50 UTC (rev 573)
>>> +++ trunk/dune/finiteelements/generic/lagrangebasis/equidistantpoints.hh 2009-10-29 13:11:55 UTC (rev 574)
>>> @@ -4,13 +4,13 @@
>>> #include <vector>
>>>
>>> #include <dune/common/fvector.hh>
>>> -#include <dune/finiteelements/common/field.hh>
>>> +#include <dune/finiteelements/generic/math/field.hh>
>>> #include <dune/common/forloop.hh>
>>> -#include <dune/finiteelements/generic/topologyfactory.hh>
>>> +#include <dune/finiteelements/generic/common/topologyfactory.hh>
>>> #include <dune/grid/genericgeometry/topologytypes.hh>
>>> #include <dune/grid/genericgeometry/subtopologies.hh>
>>>
>>> -#include <dune/finiteelements/lagrangebasis/emptypoints.hh>
>>> +#include <dune/finiteelements/generic/lagrangebasis/emptypoints.hh>
>>>
>>> namespace Dune
>>> {
>>>
>>> Modified: trunk/dune/finiteelements/generic/lagrangebasis/interpolation.hh
>>> ===================================================================
>>> --- trunk/dune/finiteelements/generic/dune/finiteelements/lagrangebasis/interpolation.hh 2009-10-26 10:27:50 UTC (rev 573)
>>> +++ trunk/dune/finiteelements/generic/lagrangebasis/interpolation.hh 2009-10-29 13:11:55 UTC (rev 574)
>>> @@ -2,9 +2,9 @@
>>> #define DUNE_LAGRANGEBASIS_INTERPOLATION_HH
>>>
>>> #include <vector>
>>> -#include <dune/finiteelements/generic/topologyfactory.hh>
>>> +#include <dune/finiteelements/generic/common/topologyfactory.hh>
>>> #include <dune/finiteelements/common/localinterpolation.hh>
>>> -#include <dune/finiteelements/lagrangebasis/lagrangecoefficients.hh>
>>> +#include <dune/finiteelements/generic/lagrangebasis/lagrangecoefficients.hh>
>>>
>>> namespace Dune
>>> {
>>>
>>> Modified: trunk/dune/finiteelements/generic/lagrangebasis/lagrangebasis.hh
>>> ===================================================================
>>> --- trunk/dune/finiteelements/generic/dune/finiteelements/lagrangebasis/lagrangebasis.hh 2009-10-26 10:27:50 UTC (rev 573)
>>> +++ trunk/dune/finiteelements/generic/lagrangebasis/lagrangebasis.hh 2009-10-29 13:11:55 UTC (rev 574)
>>> @@ -4,11 +4,11 @@
>>> #include <fstream>
>>> #include <dune/common/exceptions.hh>
>>>
>>> -#include <dune/finiteelements/generic/defaultbasisfactory.hh>
>>> +#include <dune/finiteelements/generic/common/defaultbasisfactory.hh>
>>>
>>> -#include <dune/finiteelements/generic/monomialbasis.hh>
>>> -#include <dune/finiteelements/orthonormalbasis/orthonormalbasis.hh>
>>> -#include <dune/finiteelements/lagrangebasis/interpolation.hh>
>>> +#include <dune/finiteelements/generic/common/monomialbasis.hh>
>>> +#include <dune/finiteelements/generic/orthonormalbasis/orthonormalbasis.hh>
>>> +#include <dune/finiteelements/generic/lagrangebasis/interpolation.hh>
>>>
>>> namespace Dune
>>> {
>>>
>>> Modified: trunk/dune/finiteelements/generic/lagrangebasis/lagrangecoefficients.hh
>>> ===================================================================
>>> --- trunk/dune/finiteelements/generic/dune/finiteelements/lagrangebasis/lagrangecoefficients.hh 2009-10-26 10:27:50 UTC (rev 573)
>>> +++ trunk/dune/finiteelements/generic/lagrangebasis/lagrangecoefficients.hh 2009-10-29 13:11:55 UTC (rev 574)
>>> @@ -4,9 +4,9 @@
>>> #include <vector>
>>>
>>> #include <dune/common/fvector.hh>
>>> -#include <dune/finiteelements/common/field.hh>
>>> +#include <dune/finiteelements/generic/math/field.hh>
>>> #include <dune/common/forloop.hh>
>>> -#include <dune/finiteelements/generic/topologyfactory.hh>
>>> +#include <dune/finiteelements/generic/common/topologyfactory.hh>
>>>
>>> #include <dune/grid/genericgeometry/topologytypes.hh>
>>> #include <dune/grid/genericgeometry/subtopologies.hh>
>>>
>>> Modified: trunk/dune/finiteelements/generic/lagrangebasis/lobattopoints.hh
>>> ===================================================================
>>> --- trunk/dune/finiteelements/generic/dune/finiteelements/lagrangebasis/lobattopoints.hh 2009-10-26 10:27:50 UTC (rev 573)
>>> +++ trunk/dune/finiteelements/generic/lagrangebasis/lobattopoints.hh 2009-10-29 13:11:55 UTC (rev 574)
>>> @@ -3,16 +3,16 @@
>>> #if HAVE_ALGLIB
>>>
>>> #include <fstream>
>>> -#include <dune/finiteelements/common/matrix.hh>
>>> -#include <dune/finiteelements/common/field.hh>
>>> +#include <dune/finiteelements/generic/math/matrix.hh>
>>> +#include <dune/finiteelements/generic/math/field.hh>
>>> #include <dune/common/forloop.hh>
>>> -#include <dune/finiteelements/generic/topologyfactory.hh>
>>> +#include <dune/finiteelements/generic/common/topologyfactory.hh>
>>> #include <dune/grid/genericgeometry/referenceelements.hh>
>>> #include <dune/grid/genericgeometry/referencemappings.hh>
>>>
>>> -#include <dune/finiteelements/quadrature/lobattoquadrature.hh>
>>> -#include <dune/finiteelements/lagrangebasis/lagrangecoefficients.hh>
>>> -#include <dune/finiteelements/lagrangebasis/emptypoints.hh>
>>> +#include <dune/finiteelements/generic/quadrature/lobattoquadrature.hh>
>>> +#include <dune/finiteelements/generic/lagrangebasis/lagrangecoefficients.hh>
>>> +#include <dune/finiteelements/generic/lagrangebasis/emptypoints.hh>
>>>
>>> namespace Dune
>>> {
>>>
>>> Modified: trunk/dune/finiteelements/generic/lagrangebasis/test.cc
>>> ===================================================================
>>> --- trunk/dune/finiteelements/generic/dune/finiteelements/lagrangebasis/test.cc 2009-10-26 10:27:50 UTC (rev 573)
>>> +++ trunk/dune/finiteelements/generic/lagrangebasis/test.cc 2009-10-29 13:11:55 UTC (rev 574)
>>> @@ -1,12 +1,12 @@
>>> -#include <dune/finiteelements/common/field.hh>
>>> +#include <dune/finiteelements/generic/math/field.hh>
>>>
>>> -#include <dune/finiteelements/lagrangebasis/equidistantpoints.hh>
>>> +#include <dune/finiteelements/generic/lagrangebasis/equidistantpoints.hh>
>>> #if HAVE_ALGLIB
>>> -#include <dune/finiteelements/lagrangebasis/lobattopoints.hh>
>>> +#include <dune/finiteelements/generic/lagrangebasis/lobattopoints.hh>
>>> #endif
>>> -#include <dune/finiteelements/lagrangebasis/lagrangebasis.hh>
>>> -#include <dune/finiteelements/quadrature/genericquadrature.hh>
>>> -#include <dune/finiteelements/generic/basisprint.hh>
>>> +#include <dune/finiteelements/generic/lagrangebasis/lagrangebasis.hh>
>>> +#include <dune/finiteelements/generic/quadrature/genericquadrature.hh>
>>> +#include <dune/finiteelements/generic/common/basisprint.hh>
>>>
>>> #if 1
>>> typedef double StorageField;
>>>
>>> Copied: trunk/dune/finiteelements/generic/lagrangefiniteelement.hh (from rev 573, trunk/dune/finiteelements/generic/dune/finiteelements/lagrangefiniteelement.hh)
>>> ===================================================================
>>> --- trunk/dune/finiteelements/generic/lagrangefiniteelement.hh (rev 0)
>>> +++ trunk/dune/finiteelements/generic/lagrangefiniteelement.hh 2009-10-29 13:11:55 UTC (rev 574)
>>> @@ -0,0 +1,36 @@
>>> +#ifndef DUNE_LAGRANGEFINITEELEMENT_HH
>>> +#define DUNE_LAGRANGEFINITEELEMENT_HH
>>> +
>>> +#include <dune/finiteelements/generic/common/localfiniteelement.hh>
>>> +#include <dune/finiteelements/generic/lagrangebasis/lagrangecoefficients.hh>
>>> +#include <dune/finiteelements/generic/lagrangebasis/interpolation.hh>
>>> +#include <dune/finiteelements/generic/lagrangebasis/lagrangebasis.hh>
>>> +
>>> +namespace Dune
>>> +{
>>> + template< template <class,unsigned int> class LP,
>>> + unsigned int dimDomain, class D, class R,
>>> + class SF=R, class CF=SF >
>>> + class LagrangeLocalFiniteElement
>>> + : public GenericLocalFiniteElement< LagrangeBasisFactory< LP, dimDomain, SF, CF >,
>>> + LagrangeCoefficientsFactory<LP, dimDomain, SF >,
>>> + LagrangeInterpolationFactory< LP, dimDomain, SF >,
>>> + dimDomain,D,R>
>>> + {
>>> + typedef GenericLocalFiniteElement< LagrangeBasisFactory< LP, dimDomain, SF, CF >,
>>> + LagrangeCoefficientsFactory<LP, dimDomain, SF >,
>>> + LagrangeInterpolationFactory< LP, dimDomain, SF >,
>>> + dimDomain,D,R> Base;
>>> + public:
>>> + typedef typename Base::Traits Traits;
>>> +
>>> + /** \todo Please doc me !
>>> + */
>>> + LagrangeLocalFiniteElement ( unsigned int topologyId, unsigned int order )
>>> + : Base( topologyId, order )
>>> + {}
>>> + };
>>> +
>>> +}
>>> +
>>> +#endif // #ifndef DUNE_LAGRANGEFINITEELEMENT_HH
>>>
>>> Copied: trunk/dune/finiteelements/generic/math (from rev 573, trunk/dune/finiteelements/generic/dune/finiteelements/common)
>>>
>>> Modified: trunk/dune/finiteelements/generic/math/Makefile.am
>>> ===================================================================
>>> --- trunk/dune/finiteelements/generic/dune/finiteelements/common/Makefile.am 2009-10-26 10:27:50 UTC (rev 573)
>>> +++ trunk/dune/finiteelements/generic/math/Makefile.am 2009-10-29 13:11:55 UTC (rev 574)
>>> @@ -1,4 +1,4 @@
>>> -commondir = $(includedir)/dune/finiteelements/common
>>> -common_HEADERS = field.hh gmpfield.hh vector.hh matrix.hh
>>> +mathdir = $(includedir)/dune/finiteelements/generic/math
>>> +math_HEADERS = field.hh gmpfield.hh vector.hh matrix.hh
>>>
>>> include $(top_srcdir)/am/global-rules
>>>
>>> Modified: trunk/dune/finiteelements/generic/math/field.hh
>>> ===================================================================
>>> --- trunk/dune/finiteelements/generic/dune/finiteelements/common/field.hh 2009-10-26 10:27:50 UTC (rev 573)
>>> +++ trunk/dune/finiteelements/generic/math/field.hh 2009-10-29 13:11:55 UTC (rev 574)
>>> @@ -5,7 +5,7 @@
>>> #include <alglib/amp.h>
>>> #endif
>>> #if HAVE_GMP
>>> -#include <dune/finiteelements/common/gmpfield.hh>
>>> +#include <dune/finiteelements/generic/math/gmpfield.hh>
>>> #endif
>>>
>>> #include <dune/common/fvector.hh>
>>>
>>> Modified: trunk/dune/finiteelements/generic/math/matrix.hh
>>> ===================================================================
>>> --- trunk/dune/finiteelements/generic/dune/finiteelements/common/matrix.hh 2009-10-26 10:27:50 UTC (rev 573)
>>> +++ trunk/dune/finiteelements/generic/math/matrix.hh 2009-10-29 13:11:55 UTC (rev 574)
>>> @@ -4,8 +4,8 @@
>>> #include <cassert>
>>> #include <vector>
>>>
>>> -#include <dune/finiteelements/common/field.hh>
>>> -#include <dune/finiteelements/common/vector.hh>
>>> +#include <dune/finiteelements/generic/math/field.hh>
>>> +#include <dune/finiteelements/generic/math/vector.hh>
>>>
>>> #if HAVE_ALGLIB
>>> #include <alglib/amp.h>
>>>
>>> Copied: trunk/dune/finiteelements/generic/orthonormalbasis (from rev 573, trunk/dune/finiteelements/generic/dune/finiteelements/orthonormalbasis)
>>>
>>> Modified: trunk/dune/finiteelements/generic/orthonormalbasis/Makefile.am
>>> ===================================================================
>>> --- trunk/dune/finiteelements/generic/dune/finiteelements/orthonormalbasis/Makefile.am 2009-10-26 10:27:50 UTC (rev 573)
>>> +++ trunk/dune/finiteelements/generic/orthonormalbasis/Makefile.am 2009-10-29 13:11:55 UTC (rev 574)
>>> @@ -1,15 +1,12 @@
>>> -orthonormalbasisdir = $(includedir)/dune/finiteelements/orthonormalbasis
>>> +orthonormalbasisdir = $(includedir)/dune/finiteelements/generic/orthonormalbasis
>>> orthonormalbasis_HEADERS = orthonormalbasis.hh orthonormalcompute.hh
>>> -check_PROGRAMS = example test test-all
>>> +check_PROGRAMS = test test-all
>>>
>>> -LIBS = $(DUNE_LDFLAGS) $(DUNE_LIBS) -lgmpxx -lgmp -lmpfr
>>> +LIBS = $(DUNE_LDFLAGS) $(DUNE_LIBS)
>>>
>>> TOPOLOGY = Prism< Pyramid< Pyramid< Point > > >
>>> -SETTINGS = -DTOPOLOGY="$(TOPOLOGY)" -DHAVE_GMP=1 -DHAVE_ALGLIB=0
>>> +SETTINGS = -DTOPOLOGY="$(TOPOLOGY)"
>>>
>>> -AM_CPPFLAGS = -I$(top_srcdir)/alglib
>>> -example_SOURCES = example.cc
>>> -example_CPPFLAGS = $(DUNE_CPPFLAGS) $(AM_CPPFLAGS)
>>> test_SOURCES = test.cc
>>> test_CPPFLAGS = $(DUNE_CPPFLAGS) $(AM_CPPFLAGS) $(SETTINGS)
>>> test_all_SOURCES = test.cc
>>>
>>> Deleted: trunk/dune/finiteelements/generic/orthonormalbasis/example.cc
>>> ===================================================================
>>> --- trunk/dune/finiteelements/generic/dune/finiteelements/orthonormalbasis/example.cc 2009-10-26 10:27:50 UTC (rev 573)
>>> +++ trunk/dune/finiteelements/generic/orthonormalbasis/example.cc 2009-10-29 13:11:55 UTC (rev 574)
>>> @@ -1,132 +0,0 @@
>>> -// http://www.alglib.net/eigen/symmetric/symmevd.php
>>> -// Uebersetzen:
>>> -// g++ -O3 -o example example.cc -Ilibs -lgmp -lmpfr -I$HOME/MORGOTH/dune/dune-fem -I$HOME/MORGOTH/dune/dune-common
>>> -// g++ -O3 -o example example.cc -Ilibs libmpfr.a libgmp.a
>>> -const unsigned int Precision = 1024;
>>> -#include "config.h"
>>> -#include "orthonormalcompute.hh"
>>> -using namespace Dune;
>>> -template <int dim,int ord>
>>> -void printCoeff(std::ostream& out,
>>> - mat_t& res) {
>>> - int N = res.gethighbound(1);
>>> - for (int i=1;i<=N;++i) {
>>> - out << "Polynomial : " << i << std::endl;
>>> - for (int j=1;j<=i;j++) {
>>> - if (fabs(res(j,i).toDouble())<1e-20)
>>> - out << 0 << "\t\t" << std::flush;
>>> - else
>>> - out << amp::ampf<128>(res(j,i)).toDec() << "\t\t" << std::flush;
>>> - }
>>> - for (int j=i+1;j<=N;j++) {
>>> - assert(fabs(res(j,i).toDouble())<1e-10);
>>> - }
>>> - out << std::endl;
>>> - }
>>> -}
>>> -/******************************************/
>>> -template <int dim,int ord>
>>> -void cube(CalcCoeffs<dim,ord>& calc) {
>>> - // cube
>>> - MultiIndex<dim> geo;
>>> - std::stringstream name;
>>> - name << "cube" << dim << "d.coef";
>>> - for (int i=0;i<dim;++i)
>>> - geo.set(i,2);
>>> - calc.compute(geo);
>>> - std::ofstream cube(name.str().c_str());
>>> - printCoeff<dim,ord>(cube,calc.res);
>>> -}
>>> -template <int dim,int ord>
>>> -void simplex(CalcCoeffs<dim,ord>& calc) {
>>> - // simplex
>>> - MultiIndex<dim> geo;
>>> - std::stringstream name;
>>> - name << "simplex" << dim << "d.coef";
>>> - for (int i=0;i<dim;++i)
>>> - geo.set(i,1);
>>> - calc.compute(geo);
>>> - std::ofstream cube(name.str().c_str());
>>> - printCoeff<dim,ord>(cube,calc.res);
>>> -}
>>> -template <int dim,int nr,int ord>
>>> -struct AllCubeSimplex {
>>> - static void calc() {
>>> - {
>>> - mat_t res;
>>> - cube<dim,ord>(res);
>>> - simplex<dim,ord>(res);
>>> - }
>>> - AllCubeSimplex<dim+1,nr-1,ord>::calc();
>>> - }
>>> -};
>>> -template <int dim,int ord>
>>> -struct AllCubeSimplex<dim,0,ord> {
>>> - static void calc() {
>>> - {
>>> - mat_t res;
>>> - cube<dim,ord>(res);
>>> - simplex<dim,ord>(res);
>>> - }
>>> - }
>>> -};
>>> -/******************************************/
>>> -/******************************************/
>>> -/******************************************/
>>> -int main(int argc, char ** argv, char ** env) {
>>> - int use_method = atoi(argv[1]);
>>> - const int ord = 10;
>>> - std::stringstream name;
>>> - std::string geotype;
>>> - {
>>> - std::stringstream classname;
>>> - CalcCoeffs<1,ord> calc(use_method);
>>> - cube<1,ord>(calc);
>>> - std::ofstream cub("cube1d.coef");
>>> - printCoeff<1,ord>(cub,calc.res);
>>> - }
>>> - { // 2d:
>>> - CalcCoeffs<2,ord> calc(use_method);
>>> - {
>>> - cube<2,ord>(calc);
>>> - std::ofstream cub("cube2d.coef");
>>> - printCoeff<2,ord>(cub,calc.res);
>>> - }
>>> - {
>>> - simplex<2,ord>(calc);
>>> - std::ofstream sim("simplex2d.coef");
>>> - printCoeff<2,ord>(sim,calc.res);
>>> - }
>>> - }
>>> - { // 3d:
>>> - CalcCoeffs<3,ord> calc(use_method);
>>> - {
>>> - cube<3,ord>(calc);
>>> - std::ofstream cub("cube3d.coef");
>>> - printCoeff<3,ord>(cub,calc.res);
>>> - }
>>> - {
>>> - simplex<3,ord>(calc);
>>> - std::ofstream sim("simplex3d.coef");
>>> - printCoeff<3,ord>(sim,calc.res);
>>> - }
>>> - MultiIndex<3> geo;
>>> - { // prisma
>>> - geo.set(0,1);
>>> - geo.set(1,1);
>>> - geo.set(2,2);
>>> - calc.compute(geo);
>>> - std::ofstream prism("prism3d.coef");
>>> - printCoeff<3,ord>(prism,calc.res);
>>> - }
>>> - { // pyramid
>>> - geo.set(0,2);
>>> - geo.set(1,2);
>>> - geo.set(2,1);
>>> - calc.compute(geo);
>>> - std::ofstream prism("pyramid3d.coef");
>>> - printCoeff<3,ord>(prism,calc.res);
>>> - }
>>> - }
>>> -}
>>> -
>>>
>>> Modified: trunk/dune/finiteelements/generic/orthonormalbasis/orthonormalbasis.hh
>>> ===================================================================
>>> --- trunk/dune/finiteelements/generic/dune/finiteelements/orthonormalbasis/orthonormalbasis.hh 2009-10-26 10:27:50 UTC (rev 573)
>>> +++ trunk/dune/finiteelements/generic/orthonormalbasis/orthonormalbasis.hh 2009-10-29 13:11:55 UTC (rev 574)
>>> @@ -3,11 +3,11 @@
>>>
>>> #include <sstream>
>>>
>>> -#include <dune/finiteelements/generic/topologyfactory.hh>
>>> +#include <dune/finiteelements/generic/common/topologyfactory.hh>
>>>
>>> -#include <dune/finiteelements/generic/polynomialbasis.hh>
>>> -#include <dune/finiteelements/generic/basisprint.hh>
>>> -#include <dune/finiteelements/orthonormalbasis/orthonormalcompute.hh>
>>> +#include <dune/finiteelements/generic/common/polynomialbasis.hh>
>>> +#include <dune/finiteelements/generic/common/basisprint.hh>
>>> +#include <dune/finiteelements/generic/orthonormalbasis/orthonormalcompute.hh>
>>>
>>> namespace Dune
>>> {
>>>
>>> Modified: trunk/dune/finiteelements/generic/orthonormalbasis/orthonormalcompute.hh
>>> ===================================================================
>>> --- trunk/dune/finiteelements/generic/dune/finiteelements/orthonormalbasis/orthonormalcompute.hh 2009-10-26 10:27:50 UTC (rev 573)
>>> +++ trunk/dune/finiteelements/generic/orthonormalbasis/orthonormalcompute.hh 2009-10-29 13:11:55 UTC (rev 574)
>>> @@ -10,13 +10,13 @@
>>> #include <dune/common/fvector.hh>
>>> #include <dune/common/fmatrix.hh>
>>>
>>> -#include <dune/finiteelements/common/vector.hh>
>>> -#include <dune/finiteelements/common/matrix.hh>
>>> +#include <dune/finiteelements/generic/math/vector.hh>
>>> +#include <dune/finiteelements/generic/math/matrix.hh>
>>>
>>> #include <dune/grid/genericgeometry/topologytypes.hh>
>>>
>>> -#include <dune/finiteelements/generic/monomialbasis.hh>
>>> -#include <dune/finiteelements/generic/multiindex.hh>
>>> +#include <dune/finiteelements/generic/common/monomialbasis.hh>
>>> +#include <dune/finiteelements/generic/common/multiindex.hh>
>>>
>>> namespace ONBCompute
>>> {
>>>
>>> Modified: trunk/dune/finiteelements/generic/orthonormalbasis/test.cc
>>> ===================================================================
>>> --- trunk/dune/finiteelements/generic/dune/finiteelements/orthonormalbasis/test.cc 2009-10-26 10:27:50 UTC (rev 573)
>>> +++ trunk/dune/finiteelements/generic/orthonormalbasis/test.cc 2009-10-29 13:11:55 UTC (rev 574)
>>> @@ -1,6 +1,6 @@
>>> -#include <dune/finiteelements/common/field.hh>
>>> -#include <dune/finiteelements/orthonormalbasis/orthonormalbasis.hh>
>>> -#include <dune/finiteelements/quadrature/genericquadrature.hh>
>>> +#include <dune/finiteelements/generic/math/field.hh>
>>> +#include <dune/finiteelements/generic/orthonormalbasis/orthonormalbasis.hh>
>>> +#include <dune/finiteelements/generic/quadrature/genericquadrature.hh>
>>>
>>> #if HAVE_ALGLIB
>>> typedef amp::ampf< 128 > StorageField;
>>>
>>> Copied: trunk/dune/finiteelements/generic/orthonormalfiniteelement.hh (from rev 573, trunk/dune/finiteelements/generic/dune/finiteelements/orthonormalfiniteelement.hh)
>>> ===================================================================
>>> --- trunk/dune/finiteelements/generic/orthonormalfiniteelement.hh (rev 0)
>>> +++ trunk/dune/finiteelements/generic/orthonormalfiniteelement.hh 2009-10-29 13:11:55 UTC (rev 574)
>>> @@ -0,0 +1,38 @@
>>> +#ifndef DUNE_ORTHONORMALFINITEELEMENT_HH
>>> +#define DUNE_ORTHONORMALFINITEELEMENT_HH
>>> +
>>> +#include <dune/finiteelements/generic/common/localfiniteelement.hh>
>>> +#include <dune/finiteelements/generic/common/dglocalcoefficients.hh>
>>> +#include <dune/finiteelements/generic/common/l2interpolation.hh>
>>> +#include <dune/finiteelements/generic/orthonormalbasis/orthonormalbasis.hh>
>>> +
>>> +namespace Dune
>>> +{
>>> +
>>> + template< unsigned int dimDomain, class D, class R,
>>> + class SF=R, class CF=SF >
>>> +
>>> + class OrthonormalLocalFiniteElement
>>> + : public GenericLocalFiniteElement< OrthonormalBasisFactory< dimDomain, SF, CF >,
>>> + DGLocalCoefficientsFactory< OrthonormalBasisFactory< dimDomain, SF, CF > >,
>>> + LocalL2InterpolationFactory< OrthonormalBasisFactory< dimDomain, SF, CF >,true >,
>>> + dimDomain,D,R>
>>> + {
>>> + typedef GenericLocalFiniteElement< OrthonormalBasisFactory< dimDomain, SF, CF >,
>>> + DGLocalCoefficientsFactory< OrthonormalBasisFactory< dimDomain, SF, CF > >,
>>> + LocalL2InterpolationFactory< OrthonormalBasisFactory< dimDomain, SF, CF >,true >,
>>> + dimDomain,D,R> Base;
>>> + public:
>>> + using Base::Traits;
>>> +
>>> + /** \todo Please doc me !
>>> + */
>>> + OrthonormalLocalFiniteElement ( unsigned int topologyId,
>>> + unsigned int order )
>>> + : Base(topologyId,order)
>>> + {}
>>> + };
>>> +
>>> +}
>>> +
>>> +#endif
>>>
>>> Copied: trunk/dune/finiteelements/generic/quadrature (from rev 573, trunk/dune/finiteelements/generic/dune/finiteelements/quadrature)
>>>
>>> Modified: trunk/dune/finiteelements/generic/quadrature/Makefile.am
>>> ===================================================================
>>> --- trunk/dune/finiteelements/generic/dune/finiteelements/quadrature/Makefile.am 2009-10-26 10:27:50 UTC (rev 573)
>>> +++ trunk/dune/finiteelements/generic/quadrature/Makefile.am 2009-10-29 13:11:55 UTC (rev 574)
>>> @@ -1,7 +1,5 @@
>>> -quadraturedir = $(includedir)/dune/finiteelements/quadrature
>>> +quadraturedir = $(includedir)/dune/finiteelements/generic/quadrature
>>> quadrature_HEADERS = gaussquadrature.hh quadrature.hh genericquadrature.hh \
>>> polynomialorder.hh quadratureprovider.hh
>>>
>>> -AM_CPPFLAGS = $(DUNE_CPPFLAGS) -I$(top_srcdir)/alglib
>>> -
>>> include $(top_srcdir)/am/global-rules
>>>
>>> Modified: trunk/dune/finiteelements/generic/quadrature/gaussquadrature.hh
>>> ===================================================================
>>> --- trunk/dune/finiteelements/generic/dune/finiteelements/quadrature/gaussquadrature.hh 2009-10-26 10:27:50 UTC (rev 573)
>>> +++ trunk/dune/finiteelements/generic/quadrature/gaussquadrature.hh 2009-10-29 13:11:55 UTC (rev 574)
>>> @@ -5,13 +5,13 @@
>>> #include <alglib/gqgengauss.h>
>>> #endif
>>>
>>> -#include <dune/finiteelements/common/field.hh>
>>> +#include <dune/finiteelements/generic/math/field.hh>
>>>
>>> #include <dune/grid/common/quadraturerules.hh>
>>>
>>> -#include <dune/finiteelements/common/vector.hh>
>>> +#include <dune/finiteelements/generic/math/vector.hh>
>>>
>>> -#include <dune/finiteelements/quadrature/quadrature.hh>
>>> +#include <dune/finiteelements/generic/quadrature/quadrature.hh>
>>>
>>> namespace Dune
>>> {
>>>
>>> Modified: trunk/dune/finiteelements/generic/quadrature/genericquadrature.hh
>>> ===================================================================
>>> --- trunk/dune/finiteelements/generic/dune/finiteelements/quadrature/genericquadrature.hh 2009-10-26 10:27:50 UTC (rev 573)
>>> +++ trunk/dune/finiteelements/generic/quadrature/genericquadrature.hh 2009-10-29 13:11:55 UTC (rev 574)
>>> @@ -3,9 +3,9 @@
>>>
>>> #include <dune/grid/genericgeometry/conversion.hh>
>>>
>>> -#include <dune/finiteelements/quadrature/quadrature.hh>
>>> -#include <dune/finiteelements/quadrature/gaussquadrature.hh>
>>> -#include <dune/finiteelements/quadrature/quadratureprovider.hh>
>>> +#include <dune/finiteelements/generic/quadrature/quadrature.hh>
>>> +#include <dune/finiteelements/generic/quadrature/gaussquadrature.hh>
>>> +#include <dune/finiteelements/generic/quadrature/quadratureprovider.hh>
>>>
>>> namespace Dune
>>> {
>>>
>>> Modified: trunk/dune/finiteelements/generic/quadrature/lobattoquadrature.hh
>>> ===================================================================
>>> --- trunk/dune/finiteelements/generic/dune/finiteelements/quadrature/lobattoquadrature.hh 2009-10-26 10:27:50 UTC (rev 573)
>>> +++ trunk/dune/finiteelements/generic/quadrature/lobattoquadrature.hh 2009-10-29 13:11:55 UTC (rev 574)
>>> @@ -5,11 +5,11 @@
>>> #include <alglib/gqgenlobatto.h>
>>> #endif
>>>
>>> -#include <dune/finiteelements/common/field.hh>
>>> +#include <dune/finiteelements/generic/math/field.hh>
>>>
>>> -#include <dune/finiteelements/common/vector.hh>
>>> +#include <dune/finiteelements/generic/math/vector.hh>
>>>
>>> -#include <dune/finiteelements/quadrature/quadrature.hh>
>>> +#include <dune/finiteelements/generic/quadrature/quadrature.hh>
>>>
>>> namespace Dune
>>> {
>>>
>>> Modified: trunk/dune/finiteelements/generic/quadrature/quadrature.hh
>>> ===================================================================
>>> --- trunk/dune/finiteelements/generic/dune/finiteelements/quadrature/quadrature.hh 2009-10-26 10:27:50 UTC (rev 573)
>>> +++ trunk/dune/finiteelements/generic/quadrature/quadrature.hh 2009-10-29 13:11:55 UTC (rev 574)
>>> @@ -5,7 +5,7 @@
>>>
>>> #include <dune/common/fvector.hh>
>>> #include <dune/common/geometrytype.hh>
>>> -#include <dune/finiteelements/common/vector.hh>
>>> +#include <dune/finiteelements/generic/math/vector.hh>
>>>
>>> namespace Dune
>>> {
>>>
>>> Modified: trunk/dune/finiteelements/generic/quadrature/subquadrature.hh
>>> ===================================================================
>>> --- trunk/dune/finiteelements/generic/dune/finiteelements/quadrature/subquadrature.hh 2009-10-26 10:27:50 UTC (rev 573)
>>> +++ trunk/dune/finiteelements/generic/quadrature/subquadrature.hh 2009-10-29 13:11:55 UTC (rev 574)
>>> @@ -3,8 +3,8 @@
>>>
>>> #include <dune/grid/genericgeometry/referencemappings.hh>
>>>
>>> -#include <dune/finiteelements/quadrature/quadrature.hh>
>>> -#include <dune/finiteelements/quadrature/genericquadrature.hh>
>>> +#include <dune/finiteelements/generic/quadrature/quadrature.hh>
>>> +#include <dune/finiteelements/generic/quadrature/genericquadrature.hh>
>>>
>>> namespace Dune
>>> {
>>>
>>> Copied: trunk/dune/finiteelements/generic/raviartthomasbasis (from rev 573, trunk/dune/finiteelements/generic/dune/finiteelements/raviartthomasbasis)
>>>
>>> Modified: trunk/dune/finiteelements/generic/raviartthomasbasis/Makefile.am
>>> ===================================================================
>>> --- trunk/dune/finiteelements/generic/dune/finiteelements/raviartthomasbasis/Makefile.am 2009-10-26 10:27:50 UTC (rev 573)
>>> +++ trunk/dune/finiteelements/generic/raviartthomasbasis/Makefile.am 2009-10-29 13:11:55 UTC (rev 574)
>>> @@ -1,17 +1,16 @@
>>> -ravtombasisdir = $(includedir)/dune/finiteelements/vectest
>>> -ravtombasis_HEADERS = interpolation.hh raviartthomasbasis.hh raviartthomasprebasis.hh
>>> +raviartthomasbasisdir = $(includedir)/dune/finiteelements/generic/raviartthomasbasis
>>> +raviartthomasbasis_HEADERS = interpolation.hh raviartthomasbasis.hh raviartthomasprebasis.hh
>>> check_PROGRAMS = test test-all
>>>
>>> TOPOLOGY = Pyramid< Pyramid< Point > >
>>> -SETTINGS = -DTOPOLOGY="$(TOPOLOGY)" -DHAVE_GMP=0 -DHAVE_ALGLIB=1
>>> +SETTINGS = -DTOPOLOGY="$(TOPOLOGY)"
>>>
>>> -AM_CPPFLAGS = -I$(top_srcdir)/alglib
>>> test_SOURCES = test.cc
>>> test_CPPFLAGS = $(DUNE_CPPFLAGS) $(AM_CPPFLAGS) $(SETTINGS)
>>> test_all_SOURCES = test.cc
>>> test_all_CPPFLAGS = $(DUNE_CPPFLAGS) $(AM_CPPFLAGS)
>>>
>>> -LDADD = $(DUNE_LDFLAGS) $(DUNE_LIBS) -lgmpxx -lgmp -lmpfr
>>> +LDADD = $(DUNE_LDFLAGS) $(DUNE_LIBS)
>>>
>>> include $(top_srcdir)/am/global-rules
>>>
>>>
>>> Modified: trunk/dune/finiteelements/generic/raviartthomasbasis/interpolation.hh
>>> ===================================================================
>>> --- trunk/dune/finiteelements/generic/dune/finiteelements/raviartthomasbasis/interpolation.hh 2009-10-26 10:27:50 UTC (rev 573)
>>> +++ trunk/dune/finiteelements/generic/raviartthomasbasis/interpolation.hh 2009-10-29 13:11:55 UTC (rev 574)
>>> @@ -5,19 +5,19 @@
>>>
>>> #include <dune/common/exceptions.hh>
>>> #include <dune/common/forloop.hh>
>>> -#include <dune/finiteelements/generic/topologyfactory.hh>
>>> -#include <dune/finiteelements/generic/interpolationhelper.hh>
>>> -#include <dune/finiteelements/common/matrix.hh>
>>> +#include <dune/finiteelements/generic/common/topologyfactory.hh>
>>> +#include <dune/finiteelements/generic/common/interpolationhelper.hh>
>>> +#include <dune/finiteelements/generic/math/matrix.hh>
>>> #include <dune/finiteelements/common/localinterpolation.hh>
>>> #include <dune/finiteelements/common/localcoefficients.hh>
>>>
>>> #include <dune/grid/genericgeometry/referenceelements.hh>
>>> -#include <dune/finiteelements/quadrature/genericquadrature.hh>
>>> -#include <dune/finiteelements/quadrature/subquadrature.hh>
>>> +#include <dune/finiteelements/generic/quadrature/genericquadrature.hh>
>>> +#include <dune/finiteelements/generic/quadrature/subquadrature.hh>
>>>
>>> -#include <dune/finiteelements/generic/basisprint.hh>
>>> -#include <dune/finiteelements/generic/polynomialbasis.hh>
>>> -#include <dune/finiteelements/orthonormalbasis/orthonormalbasis.hh>
>>> +#include <dune/finiteelements/generic/common/basisprint.hh>
>>> +#include <dune/finiteelements/generic/common/polynomialbasis.hh>
>>> +#include <dune/finiteelements/generic/orthonormalbasis/orthonormalbasis.hh>
>>>
>>>
>>> namespace Dune
>>>
>>> Modified: trunk/dune/finiteelements/generic/raviartthomasbasis/raviartthomasbasis.hh
>>> ===================================================================
>>> --- trunk/dune/finiteelements/generic/dune/finiteelements/raviartthomasbasis/raviartthomasbasis.hh 2009-10-26 10:27:50 UTC (rev 573)
>>> +++ trunk/dune/finiteelements/generic/raviartthomasbasis/raviartthomasbasis.hh 2009-10-29 13:11:55 UTC (rev 574)
>>> @@ -4,9 +4,9 @@
>>> #include <fstream>
>>> #include <dune/common/exceptions.hh>
>>>
>>> -#include <dune/finiteelements/generic/defaultbasisfactory.hh>
>>> -#include <dune/finiteelements/raviartthomasbasis/interpolation.hh>
>>> -#include <dune/finiteelements/raviartthomasbasis/raviartthomasprebasis.hh>
>>> +#include <dune/finiteelements/generic/common/defaultbasisfactory.hh>
>>> +#include <dune/finiteelements/generic/raviartthomasbasis/interpolation.hh>
>>> +#include <dune/finiteelements/generic/raviartthomasbasis/raviartthomasprebasis.hh>
>>>
>>> namespace Dune
>>> {
>>>
>>> Modified: trunk/dune/finiteelements/generic/raviartthomasbasis/raviartthomasprebasis.hh
>>> ===================================================================
>>> --- trunk/dune/finiteelements/generic/dune/finiteelements/raviartthomasbasis/raviartthomasprebasis.hh 2009-10-26 10:27:50 UTC (rev 573)
>>> +++ trunk/dune/finiteelements/generic/raviartthomasbasis/raviartthomasprebasis.hh 2009-10-29 13:11:55 UTC (rev 574)
>>> @@ -3,10 +3,10 @@
>>> #include <fstream>
>>> #include <utility>
>>>
>>> -#include <dune/finiteelements/common/matrix.hh>
>>> +#include <dune/finiteelements/generic/math/matrix.hh>
>>> #include <dune/grid/genericgeometry/topologytypes.hh>
>>>
>>> -#include <dune/finiteelements/generic/polynomialbasis.hh>
>>> +#include <dune/finiteelements/generic/common/polynomialbasis.hh>
>>>
>>> namespace Dune
>>> {
>>>
>>> Modified: trunk/dune/finiteelements/generic/raviartthomasbasis/test.cc
>>> ===================================================================
>>> --- trunk/dune/finiteelements/generic/dune/finiteelements/raviartthomasbasis/test.cc 2009-10-26 10:27:50 UTC (rev 573)
>>> +++ trunk/dune/finiteelements/generic/raviartthomasbasis/test.cc 2009-10-29 13:11:55 UTC (rev 574)
>>> @@ -1,6 +1,6 @@
>>> -#include <dune/finiteelements/common/field.hh>
>>> -#include <dune/finiteelements/raviartthomasbasis/raviartthomasbasis.hh>
>>> -#include <dune/finiteelements/generic/basisprint.hh>
>>> +#include <dune/finiteelements/generic/math/field.hh>
>>> +#include <dune/finiteelements/generic/raviartthomasbasis/raviartthomasbasis.hh>
>>> +#include <dune/finiteelements/generic/common/basisprint.hh>
>>>
>>> #if HAVE_ALGLIB
>>> typedef amp::ampf< 128 > StorageField;
>>>
>>> Copied: trunk/dune/finiteelements/generic/raviartthomasfiniteelement.hh (from rev 573, trunk/dune/finiteelements/generic/dune/finiteelements/raviartthomasfiniteelement.hh)
>>> ===================================================================
>>> --- trunk/dune/finiteelements/generic/raviartthomasfiniteelement.hh (rev 0)
>>> +++ trunk/dune/finiteelements/generic/raviartthomasfiniteelement.hh 2009-10-29 13:11:55 UTC (rev 574)
>>> @@ -0,0 +1,35 @@
>>> +#ifndef DUNE_RAVIARTTHOMASFINITEELEMENT_HH
>>> +#define DUNE_RAVIARTTHOMASFINITEELEMENT_HH
>>> +
>>> +#include <dune/finiteelements/generic/common/localfiniteelement.hh>
>>> +#include <dune/finiteelements/generic/raviartthomasbasis/raviartthomasbasis.hh>
>>> +
>>> +namespace Dune
>>> +{
>>> +
>>> + template< unsigned int dimDomain, class D, class R,
>>> + class SF=R, class CF=SF >
>>> + class RaviartThomasLocalFiniteElement
>>> + : public GenericLocalFiniteElement< RaviartThomasBasisFactory< dimDomain, SF, CF >,
>>> + RaviartThomasCoefficientsFactory< dimDomain >,
>>> + RaviartThomasL2InterpolationFactory< dimDomain, SF >,
>>> + dimDomain,D,R>
>>> + {
>>> + typedef GenericLocalFiniteElement< RaviartThomasBasisFactory< dimDomain, SF, CF >,
>>> + RaviartThomasCoefficientsFactory< dimDomain >,
>>> + RaviartThomasL2InterpolationFactory< dimDomain, SF >,
>>> + dimDomain,D,R> Base;
>>> + public:
>>> + using Base::Traits;
>>> +
>>> + /** \todo Please doc me !
>>> + */
>>> + RaviartThomasLocalFiniteElement ( unsigned int topologyId,
>>> + unsigned int order )
>>> + : Base(topologyId,order)
>>> + {}
>>> + };
>>> +
>>> +}
>>> +
>>> +#endif
>>>
>>>
>>> _______________________________________________
>>> Dune-Commit mailing list
>>> Dune-Commit at dune-project.org
>>> http://lists.dune-project.org/mailman/listinfo/dune-commit
>>>
>>>
>>
>
> _______________________________________________
> Dune mailing list
> Dune at dune-project.org
> http://lists.dune-project.org/mailman/listinfo/dune
>
--
************************************************************************
* Oliver Sander ** email: sander at mi.fu-berlin.de *
* Freie Universität Berlin ** phone: + 49 (30) 838 75348 *
* Institut für Mathematik ** URL : page.mi.fu-berlin.de/~sander *
* Arnimallee 6 ** -------------------------------------*
* 14195 Berlin, Germany ** Member of MATHEON (www.matheon.de) *
************************************************************************
More information about the Dune
mailing list