![]() |
ESPResSo
Extensible Simulation Package for Research on Soft Matter Systems
|
Class that runs and controls the BlockForest in waLBerla. More...
#include <LatticeWalberla.hpp>
Public Types | |
| using | Lattice_T = walberla::blockforest::StructuredBlockForest |
Public Member Functions | |
| LatticeWalberla (Utils::Vector3i const &grid_dimensions, Utils::Vector3i const &node_grid, Utils::Vector3i const &block_grid, unsigned int n_ghost_layers) | |
| auto | get_ghost_layers () const |
| auto const & | get_grid_dimensions () const |
| auto const & | get_node_grid () const |
| auto | get_blocks () const |
| auto const & | get_cached_blocks () const |
| std::pair< Utils::Vector3d, Utils::Vector3d > | get_local_domain () const |
| std::pair< Utils::Vector3i, Utils::Vector3i > | get_local_grid_range (bool with_halo=false) const |
| Utils::Vector3i | get_block_corner (IBlock const &block, bool lower) const |
| bool | node_in_local_domain (Utils::Vector3i const &node) const |
| bool | node_in_local_halo (Utils::Vector3i const &node) const |
| bool | pos_in_local_domain (Utils::Vector3d const &pos) const |
| bool | pos_in_local_halo (Utils::Vector3d const &pos) const |
Static Public Member Functions | |
| static Utils::Vector3i | calc_grid_dimensions (Utils::Vector3d const &box_size, double agrid) |
Class that runs and controls the BlockForest in waLBerla.
Definition at line 36 of file walberla_bridge/include/walberla_bridge/LatticeWalberla.hpp.
| using LatticeWalberla::Lattice_T = walberla::blockforest::StructuredBlockForest |
Definition at line 38 of file walberla_bridge/include/walberla_bridge/LatticeWalberla.hpp.
| LatticeWalberla::LatticeWalberla | ( | Utils::Vector3i const & | grid_dimensions, |
| Utils::Vector3i const & | node_grid, | ||
| Utils::Vector3i const & | block_grid, | ||
| unsigned int | n_ghost_layers | ||
| ) |
Definition at line 41 of file LatticeWalberla.cpp.
References block(), and Utils::hadamard_division().
|
static |
Definition at line 136 of file LatticeWalberla.cpp.
Referenced by ScriptInterface::walberla::LatticeWalberla::do_construct().
| Utils::Vector3i LatticeWalberla::get_block_corner | ( | IBlock const & | block, |
| bool | lower | ||
| ) | const |
Definition at line 110 of file LatticeWalberla.cpp.
References block(), walberla::get_max_corner(), and walberla::get_min_corner().
Referenced by walberla::get_block_interval(), walberla::LBWalberlaImpl< FloatType, Architecture >::get_boundary_force_from_shape(), walberla::EKinWalberlaImpl< FluxCount, FloatType, Architecture >::get_slice_density(), walberla::EKinWalberlaImpl< FluxCount, FloatType, Architecture >::get_slice_flux_vector(), walberla::set_boundary_from_grid(), and walberla::EKinWalberlaImpl< FluxCount, FloatType, Architecture >::set_slice_density().
|
inline |
Definition at line 62 of file walberla_bridge/include/walberla_bridge/LatticeWalberla.hpp.
Referenced by walberla::PoissonSolverFFT< FloatType, Architecture >::add_charge_to_field(), walberla::LBWalberlaImpl< FloatType, Architecture >::apply_lees_edwards_interpolation(), LatticeModel::create_vtk(), walberla::get_block(), walberla::get_block_and_cell(), walberla::LBWalberlaImpl< FloatType, Architecture >::get_boundary_force(), walberla::LBWalberlaImpl< FloatType, Architecture >::get_boundary_force_from_shape(), walberla::LBWalberlaImpl< FloatType, Architecture >::get_momentum(), walberla::LBWalberlaImpl< FloatType, Architecture >::get_pressure_tensor(), walberla::EKinWalberlaImpl< FluxCount, FloatType, Architecture >::get_slice_density(), walberla::EKinWalberlaImpl< FluxCount, FloatType, Architecture >::get_slice_flux_vector(), walberla::LBWalberlaImpl< FloatType, Architecture >::ghost_communication_laf(), walberla::LBWalberlaImpl< FloatType, Architecture >::ghost_communication_pdf(), walberla::LBWalberlaImpl< FloatType, Architecture >::ghost_communication_vel(), walberla::PoissonSolverFFT< FloatType, Architecture >::PoissonSolverFFT(), walberla::PoissonSolverFFT< FloatType, Architecture >::register_vtk_field_writers(), walberla::PoissonSolverFFT< FloatType, Architecture >::reset_charge_field(), walberla::set_boundary_from_grid(), walberla::LBWalberlaImpl< FloatType, Architecture >::set_collision_model(), walberla::EKinWalberlaImpl< FluxCount, FloatType, Architecture >::set_slice_density(), and walberla::PoissonSolverFFT< FloatType, Architecture >::solve().
|
inline |
Definition at line 63 of file walberla_bridge/include/walberla_bridge/LatticeWalberla.hpp.
Referenced by walberla::get_block_extended().
|
inline |
Definition at line 57 of file walberla_bridge/include/walberla_bridge/LatticeWalberla.hpp.
Referenced by walberla::get_block(), walberla::get_block_and_cell(), ScriptInterface::walberla::LatticeSlice< FieldSerializer >::get_lattice(), walberla::PoissonSolverFFT< FloatType, Architecture >::register_vtk_field_writers(), and walberla::set_boundary_from_grid().
|
inline |
Definition at line 58 of file walberla_bridge/include/walberla_bridge/LatticeWalberla.hpp.
Referenced by walberla::LBWalberlaImpl< FloatType, Architecture >::flat_index_to_node(), walberla::LBWalberlaImpl< FloatType, Architecture >::get_boundary_force_from_shape(), walberla::LBWalberlaImpl< FloatType, Architecture >::get_neighbor_node(), walberla::LBWalberlaImpl< FloatType, Architecture >::get_pressure_tensor(), walberla::PoissonSolverFFT< FloatType, Architecture >::PoissonSolverFFT(), walberla::set_boundary_from_grid(), walberla::PoissonSolverFFT< FloatType, Architecture >::setup_fft(), walberla::LBWalberlaImpl< FloatType, Architecture >::update_boundary_from_shape(), walberla::EKinWalberlaImpl< FluxCount, FloatType, Architecture >::update_density_boundary_from_shape(), and walberla::EKinWalberlaImpl< FluxCount, FloatType, Architecture >::update_flux_boundary_from_shape().
| std::pair< Utils::Vector3d, Utils::Vector3d > LatticeWalberla::get_local_domain | ( | ) | const |
Definition at line 83 of file LatticeWalberla.cpp.
References block(), and walberla::to_vector3d().
Referenced by get_local_grid_range().
| std::pair< Utils::Vector3i, Utils::Vector3i > LatticeWalberla::get_local_grid_range | ( | bool | with_halo = false | ) | const |
Definition at line 101 of file LatticeWalberla.cpp.
References Utils::Vector< T, N >::broadcast(), walberla::convert_cell_corner_to_coord(), and get_local_domain().
Referenced by walberla::PoissonSolverFFT< FloatType, Architecture >::add_charge_to_field(), walberla::EKinWalberlaImpl< FluxCount, FloatType, Architecture >::get_slice_density_at_boundary(), walberla::EKinWalberlaImpl< FluxCount, FloatType, Architecture >::get_slice_flux_at_boundary(), walberla::EKinWalberlaImpl< FluxCount, FloatType, Architecture >::get_slice_is_boundary(), walberla::PoissonSolverFFT< FloatType, Architecture >::PoissonSolverFFT(), walberla::PoissonSolverFFT< FloatType, Architecture >::reset_charge_field(), walberla::EKinWalberlaImpl< FluxCount, FloatType, Architecture >::set_slice_density_boundary(), walberla::EKinWalberlaImpl< FluxCount, FloatType, Architecture >::set_slice_flux_boundary(), walberla::PoissonSolverFFT< FloatType, Architecture >::setup_fft(), and walberla::PoissonSolverFFT< FloatType, Architecture >::solve().
|
inline |
Definition at line 61 of file walberla_bridge/include/walberla_bridge/LatticeWalberla.hpp.
| bool LatticeWalberla::node_in_local_domain | ( | Utils::Vector3i const & | node | ) | const |
Definition at line 118 of file LatticeWalberla.cpp.
| bool LatticeWalberla::node_in_local_halo | ( | Utils::Vector3i const & | node | ) | const |
Definition at line 123 of file LatticeWalberla.cpp.
| bool LatticeWalberla::pos_in_local_domain | ( | Utils::Vector3d const & | pos | ) | const |
Definition at line 127 of file LatticeWalberla.cpp.
| bool LatticeWalberla::pos_in_local_halo | ( | Utils::Vector3d const & | pos | ) | const |
Definition at line 131 of file LatticeWalberla.cpp.