|
Mallard 0.8.0
Unstructured, GPU accelerated, high-order finite volume CFD solver
Mallard website |
Per-cell stencils of different sizes, stored without padding to the largest one in the mesh. Slot s of a cell's stencil holds the stencil cell, its mirror boundary face (or -1) and width pseudo-inverse entries. Consecutive cells form slices of 2^shift cells; a slice is padded to its largest stencil and interleaves its cells' slots. With single, pinv holds the pseudo-inverse entries as floats, two to an element, at the same indices.
More...
#include <teno.h>
Classes | |
| struct | RowT |
| One cell's stencil, resolved once per cell, for pseudo-inverse entries of type T. More... | |
Public Types | |
| using | Row = RowT< rtype > |
Public Member Functions | |
| template<typename T = rtype> | |
| KOKKOS_INLINE_FUNCTION RowT< T > | row (const uint32_t c) const |
Static Public Member Functions | |
| static KOKKOS_INLINE_FUNCTION size_t | pinv_elements (const size_t n, const bool single) |
| Elements of pinv that hold n entries. | |
Public Attributes | |
| Kokkos::View< uint64_t * > | slice_start |
| Kokkos::View< int32_t * > | cells |
| Kokkos::View< int32_t * > | faces |
| Kokkos::View< rtype * > | pinv |
| uint8_t | shift = SLICE_SHIFT |
| uint8_t | width = 0 |
| bool | single = false |
Per-cell stencils of different sizes, stored without padding to the largest one in the mesh. Slot s of a cell's stencil holds the stencil cell, its mirror boundary face (or -1) and width pseudo-inverse entries. Consecutive cells form slices of 2^shift cells; a slice is padded to its largest stencil and interleaves its cells' slots. With single, pinv holds the pseudo-inverse entries as floats, two to an element, at the same indices.
|
inlinestatic |
Elements of pinv that hold n entries.
|
inline |
| Kokkos::View<int32_t *> teno::PackedStencils::cells |
| Kokkos::View<int32_t *> teno::PackedStencils::faces |
| Kokkos::View<rtype *> teno::PackedStencils::pinv |
| uint8_t teno::PackedStencils::shift = SLICE_SHIFT |
| Kokkos::View<uint64_t *> teno::PackedStencils::slice_start |
| uint8_t teno::PackedStencils::width = 0 |