29class StructuredBlockForest;
38 using Lattice_T = walberla::blockforest::StructuredBlockForest;
43 unsigned int m_n_ghost_layers;
46 std::shared_ptr<Lattice_T> m_blocks;
47 using IBlock = walberla::domain_decomposition::IBlock;
48 std::vector<IBlock *> m_cached_blocks;
54 unsigned int n_ghost_layers);
59 return m_grid_dimensions;
62 [[nodiscard]]
auto get_blocks()
const {
return m_blocks; }
64 return m_cached_blocks;
66 [[nodiscard]] std::pair<Utils::Vector3d, Utils::Vector3d>
68 [[nodiscard]] std::pair<Utils::Vector3i, Utils::Vector3i>
Vector implementation and trait types for boost qvm interoperability.
Class that runs and controls the BlockForest in waLBerla.
bool pos_in_local_halo(Utils::Vector3d const &pos) const
std::pair< Utils::Vector3i, Utils::Vector3i > get_local_grid_range() const
static Utils::Vector3i calc_grid_dimensions(Utils::Vector3d const &box_size, double agrid)
auto const & get_grid_dimensions() const
bool node_in_local_halo(Utils::Vector3i const &node) const
std::pair< Utils::Vector3d, Utils::Vector3d > get_local_domain() const
walberla::blockforest::StructuredBlockForest Lattice_T
bool node_in_local_domain(Utils::Vector3i const &node) const
Utils::Vector3i get_block_corner(IBlock const &block, bool lower) const
auto get_ghost_layers() const
auto const & get_cached_blocks() const
auto const & get_node_grid() const
bool pos_in_local_domain(Utils::Vector3d const &pos) const
static double * block(double *p, std::size_t index, std::size_t size)