ESPResSo
Extensible Simulation Package for Research on Soft Matter Systems
Loading...
Searching...
No Matches
BlockAndCell.hpp File Reference
#include <blockforest/StructuredBlockForest.h>
#include <core/DataTypes.h>
#include <core/cell/Cell.h>
#include <domain_decomposition/IBlock.h>
#include <utils/Vector.hpp>
#include <utils/index.hpp>
#include "../src/utils/types_conversion.hpp"
#include "LatticeWalberla.hpp"
#include <array>
#include <cmath>
#include <concepts>
#include <memory>
#include <optional>
#include <type_traits>
+ Include dependency graph for BlockAndCell.hpp:
+ This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  walberla::BlockAndCell
 

Namespaces

namespace  walberla
 \file PackInfoPdfDoublePrecision.cpp \author pystencils
 

Concepts

concept  real_vector
 
concept  signed_integral_vector
 

Functions

Cell walberla::to_cell (signed_integral_vector auto const &xyz)
 
IBlock * walberla::get_block_extended (LatticeWalberla const &lattice, auto const &pos, unsigned int n_ghost_layers)
 
std::optional< BlockAndCellwalberla::get_block_and_cell (::LatticeWalberla const &lattice, signed_integral_vector auto const &node, bool consider_ghost_layers)
 
IBlock * walberla::get_block (::LatticeWalberla const &lattice, real_vector auto const &pos, bool consider_ghost_layers)
 
auto walberla::convert_cell_corner_to_coord (real_vector auto const &corner)
 Get the block-local coordinates of a block corner.
 
auto walberla::get_min_corner (IBlock const &block)
 Get the block-local coordinates of the lower corner of a block.
 
auto walberla::get_max_corner (IBlock const &block)
 Get the block-local coordinates of the upper corner of a block.
 
std::optional< walberla::cell::CellInterval > walberla::get_interval (::LatticeWalberla const &lattice, Utils::Vector3i const &lower_corner, Utils::Vector3i const &upper_corner)
 
std::optional< walberla::cell::CellInterval > walberla::get_block_interval (::LatticeWalberla const &lattice, Utils::Vector3i const &lower_corner, Utils::Vector3i const &upper_corner, Utils::Vector3i const &block_offset, IBlock const &block)
 
template<typename Kernel >
void walberla::copy_block_buffer (CellInterval const &bci, CellInterval const &ci, Utils::Vector3i const &block_offset, Utils::Vector3i const &lower_corner, Kernel &&kernel)
 Synchronize data between a sliced block and a container.