4#include "ddc_aliases.hpp"
5#include "ddc_helper.hpp"
6#include "vector_field.hpp"
7#include "vector_field_mem.hpp"
14using Grid1OnPatch =
typename Patch::Grid1;
18using Grid2OnPatch =
typename Patch::Grid2;
26using DFieldMemOnPatch = DFieldMem<typename Patch::IdxRange12>;
30using DFieldMem1OnPatch = DFieldMem<typename Patch::IdxRange1>;
34using DFieldMem2OnPatch = DFieldMem<typename Patch::IdxRange2>;
38using DFieldOnPatch = DField<typename Patch::IdxRange12>;
42using DConstFieldOnPatch = DConstField<typename Patch::IdxRange12>;
46using DFieldOnPatch_host = host_t<DFieldOnPatch<Patch>>;
51using DField1OnPatch = DField<typename Patch::IdxRange1>;
55using DConstField1OnPatch = DConstField<typename Patch::IdxRange1>;
64 typename Patch::IdxRange12,
65 NDTag<typename Patch::Dim1, typename Patch::Dim2>>;
71 typename Patch::IdxRange12,
72 NDTag<typename Patch::Dim1, typename Patch::Dim2>>;
78 typename Patch::IdxRange12,
79 NDTag<typename Patch::Dim1, typename Patch::Dim2>>;
85using IdxRangeOnPatch =
typename Patch::IdxRange12;
90using IdxRange1OnPatch =
typename Patch::IdxRange1;
94using Idx1OnPatch =
typename Patch::Idx1;
101template <
class Patch>
102using CoordFieldMemOnPatch = FieldMem<typename Patch::Coord12, typename Patch::IdxRange12>;
105template <
class Patch>
106using CoordFieldOnPatch = Field<typename Patch::Coord12, typename Patch::IdxRange12>;
109template <
class Patch>
110using CoordConstFieldOnPatch = ConstField<typename Patch::Coord12, typename Patch::IdxRange12>;
115template <
class Patch>
116using Coord1Field1OnPatch_1D = Field<typename Patch::Coord1, typename Patch::IdxRange1>;
123template <
class Patch>
124using BSplines1OnPatch =
typename Patch::BSplines1;
127template <
class Patch>
128using BSplines2OnPatch =
typename Patch::BSplines2;
135template <
class Patch>
136using SplineCoeffOnPatch_2D = DField<typename Patch::IdxRangeBS12>;
142template <
class Patch>
143using ConstSplineCoeffOnPatch_2D = DConstField<typename Patch::IdxRangeBS12>;
149template <
class Patch>
150using ConstSplineCoeffOnPatch_2D_host = host_t<ConstSplineCoeffOnPatch_2D<Patch>>;
156template <
class Patch>
157using SplineCoeff1OnPatch_2D = DField<IdxRange<typename Patch::BSplines1, typename Patch::Grid2>>;
163template <
class Patch>
164using ConstSplineCoeff1OnPatch_2D
165 = DConstField<IdxRange<typename Patch::BSplines1, typename Patch::Grid2>>;
172template <
class Patch>
173using SplineCoeff1OnPatch_1D = DField<typename Patch::IdxRangeBS1>;
179template <
class Patch>
180using ConstSplineCoeff1OnPatch_1D = DConstField<typename Patch::IdxRangeBS1>;
190template <
class Patch>
191using ConstDeriv1_OnPatch_2D
192 = DConstField<IdxRange<ddc::Deriv<typename Patch::Dim1>,
typename Patch::Grid2>>;
198template <
class Patch>
199using ConstDeriv2_OnPatch_2D
200 = DConstField<IdxRange<typename Patch::Grid1, ddc::Deriv<typename Patch::Dim2>>>;
206template <
class Patch>
207using ConstDeriv12_OnPatch_2D
208 = DConstField<IdxRange<ddc::Deriv<typename Patch::Dim1>, ddc::Deriv<typename Patch::Dim2>>>;
Pre-declaration of VectorFieldMem.
Definition vector_field_mem.hpp:54
A class which holds multiple (scalar) fields in order to represent a vector field.
Definition vector_field.hpp:64