Geometry XY
The geometry folder contains a helper file geometry.hpp which provides shortcuts to the types needed to define the specific geometry. In this case the geometry is a simulation with 2 spatial dimensions (denoted X and Y).
In this geometry \(x\) and \(y\) are supposed periodic and the splines are supposed cubic.
The shortcuts defined in the geometry file represent:
- The continuous dimensions
RDimXandRDimY. - The type of coordinates of objects represented on the dimensions (
CoordX,CoordY,CoordXY). - The type of the B-Spline bases used on the spatial dimensions (
BSplinesXandBSplinesY). - The type which will describe the grid points on which the simulation will evolve (
IDimX,IDimY). - The type of the helper class which initialises grid points in space which are compatible with the defined splines (
SplineInterpPointsX,SplineInterpPointsY). - The type of the objects used to build splines (
SplineXBuilder_XY,SplineYBuilder_XY). - The type which describes the index of a grid point (e.g.
IndexX). - The type which describes a distance between grid points (e.g.
IdxStepX). - The type which describes the domain on which the grid points are defined (e.g.
IdxRangeX). - The templated type of a field memory block defined on each of the domains (e.g.
FieldMemX<ElementType>). A field memory block allocates values at each grid point in the provided domain. - The type of a field memory block of doubles defined on each of the domains (e.g.
DFieldMemX). - The templated type of a field defined on each of the domains (e.g.
FieldX<ElementType>). A field is similar to a reference. It provides access to a field memory block or a sub-set of a field memory block, but does not own the data itself. - The type of a field of doubles defined on each of the domains (e.g.
DFieldX). - The templated type of a constant field defined on each of the domains (e.g.
ConstFieldX<ElementType>). - The type of a constant field of doubles defined on each of the domains (e.g.
DConstFieldX). - The type of VectorField defined on the index range
IdxRangeXYon the directionsVectorIndexSet<RDimX, RDimY>(VectorFieldXY_XY).