15 std::vector<ArrayDof<1, 1>> arrs;
26 template <
class TTrans>
29 for (
auto &arr : arrs)
31 if (&arr == arrs.data())
33 arr.InitPair(
"ArrayDOFPack::BuildResizeFatherSon::arr", mpi);
34 arr.father->Resize(s_father, 1, 1);
35 arr.son->Resize(s_son, 1, 1);
37 arr.trans.BorrowGGIndexing(r_trans);
38 arr.trans.createMPITypes();
Degree-of-freedom array with vector-space operations (MPI-collective).
Core type aliases, constants, and metaprogramming utilities for the DNDS framework.
MPI wrappers: MPIInfo, collective operations, type mapping, CommStrategy.
Helper for constructing a single ArrayDof with father, son, and transformer.
void BuildResizeFatherSon(index s_father, index s_son, const MPIInfo &mpi, TTrans &&r_trans)
the host side operators are provided as implemented
int64_t index
Global row / DOF index type (signed 64-bit; handles multi-billion-cell meshes).
Lightweight bundle of an MPI communicator and the calling rank's coordinates.