|
peclet-amr 0.2.0
Block-local-Morton AMR octree + collocated cut-cell Navier–Stokes solver (header-only C++20, Kokkos + MPI)
|
Public Member Functions | |
| DistributedOctree (std::array< long, 3 > global_root, unsigned lmax, std::array< double, 3 > origin, std::array< double, 3 > spacing, std::array< bool, 3 > periodic) | |
| void | release () noexcept override |
| int | rank () const |
| int | size () const |
| Index | num_leaves () const |
| unsigned | lmax () const |
| std::array< double, 3 > | spacing () const |
| std::array< long, 3 > | cells () const |
| The GLOBAL finest grid: global root cells * 2**lmax per axis (what the constructor took). | |
| std::array< double, 3 > | extent () const |
| The global box side lengths, cells * spacing. | |
| std::array< double, 3 > | origin () const |
| The global lower corner. | |
| std::array< long, 3 > | block_origin_root () const |
| std::array< long, 3 > | block_brick () const |
| std::array< long, 3 > | global_root_size () const |
| nb::ndarray< nb::numpy, double > | centers () const |
| nb::ndarray< nb::numpy, double > | sizes (int axis) const |
| nb::ndarray< nb::numpy, std::int32_t > | levels () const |
| nb::ndarray< nb::numpy, std::uint64_t > | codes () const |
| Index | refine_to_sphere (std::array< double, 3 > center, double radius, unsigned target_level, double band, bool balance) |
| Index | refine_to_sdf (std::function< double(double, double, double)> sdf, unsigned target_level, double band, bool balance) |
| Index | balance () |
| nb::ndarray< nb::numpy, double > | rebalance (DArray fields) |
| nb::ndarray< nb::numpy, double > | face_neighbor_gather (DArray field, double sentinel) |
| nb::ndarray< nb::numpy, double > | lohner_indicator (DArray field, double eps) |
| nb::ndarray< nb::numpy, double > | adapt (DArray field, double refine_thresh, double coarsen_thresh, unsigned finest_level, double eps, bool linear) |
| void | write_vtu (const std::string &path, const std::string &name, DArray field) |
| DO & | ref () |
| The wrapped core octree (the distributed Flow constructor hooks into it). | |
Definition at line 631 of file amr_bindings.cpp.
|
inline |
Definition at line 633 of file amr_bindings.cpp.
References peclet::amr::AmrGeometry< Dim >::h0, peclet::amr::DistributedOctree< Dim, Bits >::init(), lmax(), peclet::amr::AmrGeometry< Dim >::origin, origin(), spacing(), and peclet::amr::transferFieldGradients().
|
inlineoverridenoexcept |
Definition at line 641 of file amr_bindings.cpp.
|
inline |
Definition at line 644 of file amr_bindings.cpp.
References peclet::amr::DistributedOctree< Dim, Bits >::rank().
|
inline |
Definition at line 645 of file amr_bindings.cpp.
References peclet::amr::DistributedOctree< Dim, Bits >::size().
|
inline |
Definition at line 646 of file amr_bindings.cpp.
References peclet::amr::DistributedOctree< Dim, Bits >::local(), and peclet::amr::BlockOctree< Dim, Bits >::numLeaves().
|
inline |
Definition at line 647 of file amr_bindings.cpp.
References peclet::amr::DistributedOctree< Dim, Bits >::lmax().
Referenced by DistributedOctree().
|
inline |
Definition at line 648 of file amr_bindings.cpp.
References peclet::amr::DistributedOctree< Dim, Bits >::h0(), and peclet::amr::transferFieldGradients().
Referenced by DistributedOctree().
|
inline |
The GLOBAL finest grid: global root cells * 2**lmax per axis (what the constructor took).
Definition at line 653 of file amr_bindings.cpp.
References peclet::amr::DistributedOctree< Dim, Bits >::globalFineSize(), and peclet::amr::transferFieldGradients().
Referenced by extent().
|
inline |
The global box side lengths, cells * spacing.
Definition at line 658 of file amr_bindings.cpp.
References cells(), peclet::amr::DistributedOctree< Dim, Bits >::h0(), and peclet::amr::transferFieldGradients().
|
inline |
The global lower corner.
Definition at line 664 of file amr_bindings.cpp.
References peclet::amr::DistributedOctree< Dim, Bits >::globalGeometry(), and peclet::amr::transferFieldGradients().
Referenced by DistributedOctree().
|
inline |
Definition at line 668 of file amr_bindings.cpp.
References peclet::amr::DistributedOctree< Dim, Bits >::blockOriginRoot().
|
inline |
Definition at line 672 of file amr_bindings.cpp.
References peclet::amr::DistributedOctree< Dim, Bits >::blockBrick().
|
inline |
Definition at line 676 of file amr_bindings.cpp.
References peclet::amr::DistributedOctree< Dim, Bits >::globalRootSize().
|
inline |
Definition at line 682 of file amr_bindings.cpp.
References peclet::amr::pybind::leafCenters(), peclet::amr::DistributedOctree< Dim, Bits >::local(), and peclet::amr::DistributedOctree< Dim, Bits >::localGeometry().
|
inline |
Definition at line 685 of file amr_bindings.cpp.
References peclet::amr::pybind::leafSizes(), peclet::amr::DistributedOctree< Dim, Bits >::local(), and peclet::amr::DistributedOctree< Dim, Bits >::localGeometry().
|
inline |
Definition at line 688 of file amr_bindings.cpp.
References peclet::amr::pybind::leafLevels(), and peclet::amr::DistributedOctree< Dim, Bits >::local().
|
inline |
Definition at line 689 of file amr_bindings.cpp.
References peclet::amr::pybind::leafCodes(), and peclet::amr::DistributedOctree< Dim, Bits >::local().
|
inline |
Definition at line 694 of file amr_bindings.cpp.
References peclet::amr::DistributedOctree< Dim, Bits >::balance(), balance(), peclet::amr::DistributedOctree< Dim, Bits >::local(), peclet::amr::DistributedOctree< Dim, Bits >::localGeometry(), peclet::amr::refineToSdf(), and peclet::amr::transferFieldGradients().
|
inline |
Definition at line 710 of file amr_bindings.cpp.
References peclet::amr::DistributedOctree< Dim, Bits >::balance(), balance(), peclet::amr::DistributedOctree< Dim, Bits >::local(), peclet::amr::DistributedOctree< Dim, Bits >::localGeometry(), peclet::amr::refineToSdf(), and peclet::amr::transferFieldGradients().
|
inline |
Definition at line 722 of file amr_bindings.cpp.
References peclet::amr::DistributedOctree< Dim, Bits >::balance().
Referenced by refine_to_sdf(), and refine_to_sphere().
|
inline |
Definition at line 755 of file amr_bindings.cpp.
References peclet::amr::pybind::asField(), peclet::amr::DistributedOctree< Dim, Bits >::faceNeighborGather(), peclet::amr::DistributedOctree< Dim, Bits >::local(), and peclet::amr::transferFieldGradients().
|
inline |
Definition at line 765 of file amr_bindings.cpp.
References peclet::amr::pybind::asField(), peclet::amr::DistributedOctree< Dim, Bits >::local(), peclet::amr::lohnerIndicatorDistributed(), peclet::amr::transferFieldGradients(), and peclet::amr::pybind::vecToArray().
|
inline |
Definition at line 774 of file amr_bindings.cpp.
References peclet::amr::pybind::asField(), peclet::amr::distributedAdapt(), peclet::amr::DistributedOctree< Dim, Bits >::local(), peclet::amr::transferFieldGradients(), and peclet::amr::pybind::vecToArray().
|
inline |
The wrapped core octree (the distributed Flow constructor hooks into it).
Definition at line 789 of file amr_bindings.cpp.
Referenced by peclet::amr::pybind::Flow::Flow().