peclet-amr 0.2.0
Block-local-Morton AMR octree + collocated cut-cell Navier–Stokes solver (header-only C++20, Kokkos + MPI)
Loading...
Searching...
No Matches
distributed_flow_mg.hpp File Reference
#include <algorithm>
#include <array>
#include <memory>
#include <stdexcept>
#include <string>
#include <vector>
#include "peclet/amr/amg_bottom.hpp"
#include "peclet/amr/common.hpp"
#include "peclet/amr/distributed_octree.hpp"
#include "peclet/amr/fv_op.hpp"
#include "peclet/amr/leaf_halo.hpp"
#include "peclet/amr/mg_predict.hpp"
#include "peclet/amr/mg_stage.hpp"
#include "peclet/amr/multigrid.hpp"
#include "peclet/amr/poisson.hpp"
#include "peclet/core/common/mpi.hpp"
#include "peclet/core/common/view.hpp"
#include "peclet/core/decomp/redistribute_topology.hpp"
#include "peclet/core/decomp/stage_comm.hpp"
#include "peclet/core/decomp/stage_target.hpp"

Go to the source code of this file.

Classes

class  peclet::amr::DistributedFlowMultigrid< Dim, Bits >
 
class  peclet::amr::DistributedStage< Dim, Bits >
 A SIBLING-MERGE or REPARTITION stage (docs/amr_mg_depth.md §5.6, WO4b; docs/amr_mg_core_boundary.md §5): the moved level lands on a decomposition of its own grid on FEWER ranks — agglomerated(d) for a sibling merge, a fresh proportional ORB on the first np_L ranks for a repartition, both chosen by core's chooseStageTarget — and the ladder continues there as a DistributedFlowMultigrid on the stage's sub-communicator, with its own lockstep lifts, its own halos and, where it blocks again, its own stage. More...
 

Namespaces

namespace  peclet
 
namespace  peclet::amr
 

Functions

void peclet::amr::removeMeanFvDist (const FvOp &op, View< double > u, MPI_Comm comm)
 removeMeanFv with the two mean sums folded across ranks (identical kernels; the Allreduce sits between the reduce and the subtract).