Topology interface base. More...
Public Member Functions | |
template<index_space S, typename T , Privileges P> | |
auto | mdcolex (data::accessor< data::dense, T, P > const &a) const |
Create a Fortran-like view of a field. | |
template<index_space S, typename T , Privileges P> | |
auto | mdspan (data::accessor< data::dense, T, P > const &a) const |
This method provides a mdspan of the field underlying data. | |
Protected Member Functions | |
template<index_space S, Axis A> | |
axis_info | axis () const |
Get axis information. | |
template<index_space S, Axis A> | |
util::gid | global_id (util::id logical_id) const |
Method returning the global id of a logical index of an index space S along axis A. | |
template<index_space S, Axis A> | |
bool | is_degenerate () const |
Method to check if the partition returned by the coloring is degenerate. | |
template<index_space S, Axis A> | |
bool | is_high () const |
Method to check if an axis of the local mesh is incident on the upper bound of the corresponding axis of the global mesh. | |
template<index_space S, Axis A> | |
bool | is_interior () const |
Method to check if axis A of index-space S is in between the lower and upper bound along axis A of the global domain. | |
template<index_space S, Axis A> | |
bool | is_low () const |
Method to check if an axis of the local mesh is incident on the lower bound of the corresponding axis of the global mesh. | |
template<index_space S, Axis A, domain DM> | |
util::gid | offset () const |
Method to return an offset of S along A for DM. | |
auto & | policy_meta () const |
Get the specialization's metadata. | |
template<index_space S, Axis A, domain DM> | |
auto | range () const |
Method to return an iterator over the extents of the index-space S along axis A for domain DM. | |
template<index_space S, Axis A, domain DM> | |
auto | size () const |
Method to return size of S along A for DM. | |
Topology interface base.
This class is supported for GPU execution.
auto mdspan | ( | data::accessor< data::dense, T, P > const & | a | ) | const |
This method provides a mdspan of the field underlying data.
It can be used to create data views with the shape appropriate to S. This function is host-accessible, although the values in a are typically not.
auto mdcolex | ( | data::accessor< data::dense, T, P > const & | a | ) | const |
Create a Fortran-like view of a field.
This function is host-accessible, although the values in a are typically not.
util::mdcolex
|
protected |
Get the specialization's metadata.
This function is host-accessible.
|
protected |
Get axis information.
This function is host-accessible.
|
protected |
Method to check if an axis of the local mesh is incident on the lower bound of the corresponding axis of the global mesh.
This function is host-accessible.
|
protected |
Method to check if an axis of the local mesh is incident on the upper bound of the corresponding axis of the global mesh.
This function is host-accessible.
|
protected |
Method to check if axis A of index-space S is in between the lower and upper bound along axis A of the global domain.
This function is host-accessible.
|
protected |
Method to check if the partition returned by the coloring is degenerate.
This method checks if the axis A is incident on both the lower and upper bound of the global domain. This function is host-accessible.
|
protected |
Method returning the global id of a logical index of an index space S along axis A.
If logical_id refers to a boundary point, it is treated as periodic. This function is host-accessible.
|
protected |
Method to return size of S
along A
for DM.
This function is host-accessible.
axis_layout
.
|
protected |
Method to return an iterator over the extents of the index-space S along axis A for domain DM.
This function is host-accessible.
DM | not domain::global |
axis_layout
.
|
protected |
Method to return an offset of S
along A
for DM.
This function is host-accessible.
axis_layout
.