# Dune-CurvedSurfaceGrid - A Dune module for surface parametrization
# Dune-CurvedGrid - A Dune module for geometry parametrization
This Dune module provides a meta-grid for wrapping other grid implementations and providing
a curved geometry on each element, parametrized by a [Dune-CurvedGeometry](https://gitlab.mn.tu-dresden.de/spraetor/dune-curvedgeometry)
a curved geometry on each element, parametrized by a [Dune-CurvedGeometry](https://gitlab.mn.tu-dresden.de/iwr/dune-curvedgeometry)
class.
For an overview about the CurvedSurfaceGrid and the CurvedGeometry, see also the presentation
[Dune-CurvedSurfaceGrid - A Dune module for surface parametrization](http://www.math.tu-dresden.de/~spraetor/dune-curvedsurfacegrid).
[Dune-CurvedSurfaceGrid - A Dune module for surface parametrization](http://wwwpub.zih.tu-dresden.de/~praetori/presentations/dune-curvedgrid).
## Installation Instructions
`dune-curvedgrid` requires the DUNE core modules, version 2.7 or later.
Please see the [general instructions for building DUNE modules](https://www.dune-project.org/doc/installation) for detailed instructions on how to build the module.
## Initial Example
(See [example1.cc](https://gitlab.mn.tu-dresden.de/iwr/dune-curvedsurfacegrid/-/blob/master/src/example1.cc))
(See [example1.cc](https://gitlab.mn.tu-dresden.de/iwr/dune-curvedgrid/-/blob/master/src/example1.cc))
At first, we have to create a reference grid that acts as a parametrization domain for the
target curved grid. In the example, we use [Dune-FoamGrid](https://gitlab.dune-project.org/extensions/dune-foamgrid)
and read a piece-wise flat grid from a GMsh file [`sphere.msh`](https://gitlab.mn.tu-dresden.de/iwr/dune-curvedsurfacegrid/-/blob/master/doc/grids/sphere.msh).
and read a piece-wise flat grid from a GMsh file [`sphere.msh`](https://gitlab.mn.tu-dresden.de/iwr/dune-curvedgrid/-/blob/master/doc/grids/sphere.msh).
In a second step, we describe the parametrization of the curved surface by a closest-point
projection to the sphere with radius 1. This projection is given by a callable `sphere` and
...
...
@@ -37,7 +41,7 @@ meta-grid `CurvedSurfaceGrid` implements the Dune grid interface and can thus be
replacement for, e.g., the reference grid.
## Two Different Geometry Mappings
The [Dune-CurvedGeometry](https://gitlab.mn.tu-dresden.de/spraetor/dune-curvedgeometry) module
The [Dune-CurvedGeometry](https://gitlab.mn.tu-dresden.de/iwr/dune-curvedgeometry) module
provides two different geometry implementations that differ in the input and in the
representation of the parametrization.
...
...
@@ -51,7 +55,7 @@ The `CurvedSurfaceGrid` constructs on request of the element geometry a LocalFin
of Lagrange basis functions for the internal parametrization of the geometry. The `ParametrizedGeometry`
is constructed, if the grid gets a polynomial order `k > 0`.
(See [example2.cc](https://gitlab.mn.tu-dresden.de/iwr/dune-curvedsurfacegrid/-/blob/master/src/example2.cc))
(See [example2.cc](https://gitlab.mn.tu-dresden.de/iwr/dune-curvedgrid/-/blob/master/src/example2.cc))