![]() |
ESPResSo
Extensible Simulation Package for Research on Soft Matter Systems
|
Class that runs and controls the LB on waLBerla. More...
#include <LBWalberlaImpl.hpp>
Inheritance diagram for walberla::LBWalberlaImpl< FloatType, Architecture >:
Collaboration diagram for walberla::LBWalberlaImpl< FloatType, Architecture >:Classes | |
| struct | GhostComm |
Public Types | |
| using | Stencil = stencil::D3Q19 |
| Stencil for collision and streaming operations. | |
| using | StencilFull = stencil::D3Q27 |
| Stencil for ghost communication (includes domain corners). | |
| using | BlockStorage = LatticeWalberla::Lattice_T |
| Lattice model (e.g. | |
| using | PdfField = FieldTrait< FloatType, Stencil, Architecture >::PdfField |
| using | VectorField = FieldTrait< FloatType, Stencil, Architecture >::VectorField |
| using | FlagField = BoundaryModel::FlagField |
Public Types inherited from LatticeModel | |
| using | units_map = std::unordered_map< std::string, double > |
Public Member Functions | |
| template<typename T > | |
| FloatType | FloatType_c (T t) const |
| std::size_t | stencil_size () const noexcept override |
| bool | is_double_precision () const noexcept override |
| bool | is_gpu () const noexcept override |
| LBWalberlaImpl (std::shared_ptr< LatticeWalberla > lattice, double viscosity, double density) | |
| ~LBWalberlaImpl () override=default | |
| void | integrate () override |
| void | set_collision_model (double kT, unsigned int seed) override |
| Set up the thermalized collision model. | |
| void | set_collision_model (std::unique_ptr< LeesEdwardsPack > &&lees_edwards_pack) override |
| Set up the Lees-Edwards collision model. | |
| void | check_lebc (unsigned int shear_direction, unsigned int shear_plane_normal) const override |
| Verify that MD and LB Lees-Edwards parameters are consistent. | |
| void | ghost_communication () override |
| Perform all pending ghost layer updates. | |
| void | ghost_communication_pdf () override |
| void | ghost_communication_vel () override |
| void | ghost_communication_laf () override |
| void | ghost_communication_boundary () |
| void | ghost_communication_full () |
| Communicate all fields at once using the D3Q27 stencil. | |
| void | apply_lees_edwards_interpolation () |
| std::optional< Utils::Vector3d > | get_node_velocity (Utils::Vector3i const &node, bool consider_ghosts=false) const override |
| bool | set_node_velocity (Utils::Vector3i const &node, Utils::Vector3d const &v) override |
| std::vector< double > | get_slice_velocity (Utils::Vector3i const &lower_corner, Utils::Vector3i const &upper_corner) const override |
| void | set_slice_velocity (Utils::Vector3i const &lower_corner, Utils::Vector3i const &upper_corner, std::vector< double > const &velocity) override |
| std::optional< double > | get_node_density (Utils::Vector3i const &node, bool consider_ghosts=false) const override |
| bool | set_node_density (Utils::Vector3i const &node, double density) override |
| std::vector< double > | get_slice_density (Utils::Vector3i const &lower_corner, Utils::Vector3i const &upper_corner) const override |
| void | set_slice_density (Utils::Vector3i const &lower_corner, Utils::Vector3i const &upper_corner, std::vector< double > const &density) override |
| std::optional< std::vector< double > > | get_node_population (Utils::Vector3i const &node, bool consider_ghosts=false) const override |
| bool | set_node_population (Utils::Vector3i const &node, std::vector< double > const &population) override |
| std::vector< double > | get_slice_population (Utils::Vector3i const &lower_corner, Utils::Vector3i const &upper_corner) const override |
| void | set_slice_population (Utils::Vector3i const &lower_corner, Utils::Vector3i const &upper_corner, std::vector< double > const &population) override |
| std::optional< Utils::Vector3d > | get_node_force_to_be_applied (Utils::Vector3i const &node) const override |
| std::optional< Utils::Vector3d > | get_node_last_applied_force (Utils::Vector3i const &node, bool consider_ghosts=false) const override |
| bool | set_node_last_applied_force (Utils::Vector3i const &node, Utils::Vector3d const &force) override |
| std::vector< double > | get_slice_last_applied_force (Utils::Vector3i const &lower_corner, Utils::Vector3i const &upper_corner) const override |
| void | set_slice_last_applied_force (Utils::Vector3i const &lower_corner, Utils::Vector3i const &upper_corner, std::vector< double > const &force) override |
| std::optional< Utils::VectorXd< 9 > > | get_node_pressure_tensor (Utils::Vector3i const &node) const override |
| std::vector< double > | get_slice_pressure_tensor (Utils::Vector3i const &lower_corner, Utils::Vector3i const &upper_corner) const override |
| std::function< bool(Utils::Vector3d const &)> | make_lattice_position_checker (bool consider_points_in_halo) const override |
| bool | add_force_at_pos (Utils::Vector3d const &pos, Utils::Vector3d const &force) override |
| void | add_forces_at_pos (std::vector< Utils::Vector3d > const &pos, std::vector< Utils::Vector3d > const &forces) override |
| Distribute forces to the lattice at given positions. | |
| std::optional< Utils::Vector3d > | get_velocity_at_pos (Utils::Vector3d const &pos, bool consider_points_in_halo=false) const override |
| std::vector< Utils::Vector3d > | get_velocities_at_pos (std::vector< Utils::Vector3d > const &pos) override |
| Interpolate velocities at given positions (batch version). | |
| std::optional< double > | get_density_at_pos (Utils::Vector3d const &pos, bool consider_points_in_halo=false) const override |
| std::vector< double > | get_densities_at_pos (std::vector< Utils::Vector3d > const &pos) override |
| void | reset_boundary_handling (std::shared_ptr< BlockStorage > const &blocks) |
| void | on_boundary_add () |
| Lazily enable boundary mode on first boundary addition. | |
| void | clear_boundaries () override |
| void | reallocate_ubb_field () override |
| void | update_boundary_from_shape (std::vector< int > const &raster_flat, std::vector< double > const &data_flat) override |
| Set boundary conditions from a rasterized shape. | |
| std::optional< Utils::Vector3d > | get_node_velocity_at_boundary (Utils::Vector3i const &node, bool consider_ghosts=false) const override |
| bool | set_node_velocity_at_boundary (Utils::Vector3i const &node, Utils::Vector3d const &velocity) override |
| std::vector< std::optional< Utils::Vector3d > > | get_slice_velocity_at_boundary (Utils::Vector3i const &lower_corner, Utils::Vector3i const &upper_corner) const override |
| void | set_slice_velocity_at_boundary (Utils::Vector3i const &lower_corner, Utils::Vector3i const &upper_corner, std::vector< std::optional< Utils::Vector3d > > const &velocity) override |
| std::optional< Utils::Vector3d > | get_node_boundary_force (Utils::Vector3i const &node) const override |
| bool | remove_node_from_boundary (Utils::Vector3i const &node) override |
| std::optional< bool > | get_node_is_boundary (Utils::Vector3i const &node, bool consider_ghosts=false) const override |
| std::vector< bool > | get_slice_is_boundary (Utils::Vector3i const &lower_corner, Utils::Vector3i const &upper_corner) const override |
| Utils::Vector3d | get_boundary_force_from_shape (std::vector< int > const &raster_flat) const override |
| Total force exerted by the fluid on a subset of boundary nodes. | |
| Utils::Vector3d | get_boundary_force () const override |
| Utils::VectorXd< 9 > | get_pressure_tensor () const override |
| Utils::Vector3d | get_momentum () const override |
| void | set_external_force (Utils::Vector3d const &ext_force) override |
| Utils::Vector3d | get_external_force () const noexcept override |
| void | set_viscosity (double viscosity) override |
| double | get_viscosity () const noexcept override |
| double | get_density () const noexcept override |
| double | get_kT () const noexcept override |
| unsigned int | get_seed () const noexcept override |
| std::optional< uint64_t > | get_rng_state () const override |
| void | set_rng_state (uint64_t counter) override |
| LatticeWalberla const & | get_lattice () const noexcept override |
| std::size_t | get_velocity_field_id () const noexcept override |
| std::size_t | get_force_field_id () const noexcept override |
| FloatType | pressure_tensor_correction_factor () const |
| Correction factor for off-diagonal pressure tensor elements. | |
| void | pressure_tensor_correction (Matrix3< FloatType > &tensor) const |
| void | pressure_tensor_correction (std::span< FloatType, 9ul > tensor) const |
| void | register_vtk_field_filters (walberla::vtk::VTKOutput &vtk_obj) override |
| void | register_vtk_field_writers (walberla::vtk::VTKOutput &vtk_obj, LatticeModel::units_map const &units, int flag_observables) override |
Public Member Functions inherited from LBWalberlaBase | |
| ~LBWalberlaBase () override=default | |
Public Member Functions inherited from LatticeModel | |
| virtual | ~LatticeModel ()=default |
| std::shared_ptr< VTKHandle > | create_vtk (int delta_N, int initial_count, int flag_observables, units_map const &units_conversion, std::string const &identifier, std::string const &base_folder, std::string const &prefix, bool force_pvtu) |
| Create a VTK observable. | |
| void | write_vtk (std::string const &vtk_uid) |
| Write a VTK observable to disk. | |
| void | switch_vtk (std::string const &vtk_uid, bool status) |
| Toggle a VTK observable on/off. | |
Protected Types | |
| using | Kernels = detail::KernelTrait< FloatType, Architecture > |
| using | BoundaryModel = BoundaryHandling< FloatType, Vector3< FloatType >, typename Kernels::DynamicUBB > |
| using | CollisionModel = std::variant< typename Kernels::StreamCollisionModelThermalized, typename Kernels::StreamCollisionModelLeesEdwards > |
| using | _PdfField = FieldTrait< FloatType, Stencil >::PdfField |
| using | _VectorField = FieldTrait< FloatType, Stencil >::VectorField |
| using | RegularFullCommunicator = FieldTrait< FloatType, Stencil, Architecture >::template RegularCommScheme< stencil::D3Q27 > |
| Full communicator. | |
| using | BoundaryFullCommunicator = FieldTrait< FloatType, Stencil, Architecture >::template BoundaryCommScheme< stencil::D3Q27 > |
| using | PDFStreamingCommunicator = FieldTrait< FloatType, Stencil, Architecture >::template RegularCommScheme< Stencil > |
| Regular communicator. | |
| template<class Field > | |
| using | PackInfo = FieldTrait< FloatType, Stencil, Architecture >::template PackInfo< Field > |
Protected Member Functions | |
| void | integrate_vtk_writers () override |
| template<typename T > | |
| void | zero_centered_transform_impl (T &data, auto const factor) const |
| Scale data by a conversion factor (in-place). | |
| void | zero_centered_to_lb_in_place (auto &data) const |
| void | zero_centered_to_md_in_place (auto &data) const |
| auto | zero_centered_to_lb (auto const &data) const |
| auto | zero_centered_to_md (auto const &data) const |
| template<typename Field > | |
| auto | add_to_storage (std::string const tag) |
| Convenience function to add a field with a custom allocator. | |
| void | setup_full_communicator () |
| Set up D3Q27 communicators for full ghost layer updates. | |
| void | setup_streaming_communicator () |
| Set up the communicator used during integration. | |
Class that runs and controls the LB on waLBerla.
Definition at line 85 of file LBWalberlaImpl.hpp.
|
protected |
Definition at line 110 of file LBWalberlaImpl.hpp.
|
protected |
Definition at line 111 of file LBWalberlaImpl.hpp.
| using walberla::LBWalberlaImpl< FloatType, Architecture >::BlockStorage = LatticeWalberla::Lattice_T |
|
protected |
Definition at line 142 of file LBWalberlaImpl.hpp.
|
protected |
Definition at line 94 of file LBWalberlaImpl.hpp.
|
protected |
Definition at line 96 of file LBWalberlaImpl.hpp.
| using walberla::LBWalberlaImpl< FloatType, Architecture >::FlagField = BoundaryModel::FlagField |
Definition at line 116 of file LBWalberlaImpl.hpp.
|
protected |
Definition at line 93 of file LBWalberlaImpl.hpp.
|
protected |
Definition at line 153 of file LBWalberlaImpl.hpp.
| using walberla::LBWalberlaImpl< FloatType, Architecture >::PdfField = FieldTrait<FloatType, Stencil, Architecture>::PdfField |
Definition at line 114 of file LBWalberlaImpl.hpp.
|
protected |
Regular communicator.
We use the same directions as the stencil during integration.
Definition at line 149 of file LBWalberlaImpl.hpp.
|
protected |
Full communicator.
We use the D3Q27 directions to update cells along the diagonals during a full ghost communication. This is needed to properly update the corners of the ghost layer when setting cell velocities or populations.
Definition at line 139 of file LBWalberlaImpl.hpp.
| using walberla::LBWalberlaImpl< FloatType, Architecture >::Stencil = stencil::D3Q19 |
Stencil for collision and streaming operations.
Definition at line 102 of file LBWalberlaImpl.hpp.
| using walberla::LBWalberlaImpl< FloatType, Architecture >::StencilFull = stencil::D3Q27 |
Stencil for ghost communication (includes domain corners).
Definition at line 104 of file LBWalberlaImpl.hpp.
| using walberla::LBWalberlaImpl< FloatType, Architecture >::VectorField = FieldTrait<FloatType, Stencil, Architecture>::VectorField |
Definition at line 115 of file LBWalberlaImpl.hpp.
|
inline |
Definition at line 241 of file LBWalberlaImpl.hpp.
References block(), walberla::LBWalberlaImpl< FloatType, Architecture >::m_flag_field_id, walberla::LBWalberlaImpl< FloatType, Architecture >::m_force_to_be_applied_id, walberla::LBWalberlaImpl< FloatType, Architecture >::m_last_applied_force_field_id, walberla::LBWalberlaImpl< FloatType, Architecture >::m_lattice, walberla::LBWalberlaImpl< FloatType, Architecture >::m_pdf_field_id, walberla::LBWalberlaImpl< FloatType, Architecture >::m_pdf_tmp_field_id, walberla::LBWalberlaImpl< FloatType, Architecture >::m_pending_ghost_comm, walberla::LBWalberlaImpl< FloatType, Architecture >::m_reset_force, walberla::LBWalberlaImpl< FloatType, Architecture >::m_update_velocities_from_pdf, walberla::LBWalberlaImpl< FloatType, Architecture >::m_vel_tmp_field_id, walberla::LBWalberlaImpl< FloatType, Architecture >::m_velocity_field_id, walberla::LBWalberlaImpl< FloatType, Architecture >::reset_boundary_handling(), walberla::LBWalberlaImpl< FloatType, Architecture >::setup_full_communicator(), and walberla::LBWalberlaImpl< FloatType, Architecture >::setup_streaming_communicator().
|
overridedefault |
|
overridevirtual |
Implements LBWalberlaBase.
Definition at line 345 of file LBInterpolation.impl.hpp.
|
overridevirtual |
Distribute forces to the lattice at given positions.
Uses B-spline interpolation to spread each force over the surrounding lattice nodes. On GPU, positions are transformed to block-local coordinates and the operation is performed in a single kernel launch.
Implements LBWalberlaBase.
Definition at line 85 of file LBInterpolation.impl.hpp.
References walberla::lbm::accessor::Interpolation::add_force(), block(), lbmpy::CPU, and lbmpy::GPU.
|
inlineprotected |
Convenience function to add a field with a custom allocator.
When vectorization is off, let waLBerla decide which memory allocator to use. When vectorization is on, the aligned memory allocator is required, otherwise cpu_vectorize_info["assume_aligned"] will trigger assertions. That is because for single-precision kernels the waLBerla heuristic in src/field/allocation/FieldAllocator.h will fall back to StdFieldAlloc, yet AllocateAligned is needed for intrinsics to work.
Definition at line 860 of file LBWalberlaImpl.hpp.
References block(), lbmpy::CPU, walberla::lbm::accessor::Population::initialize(), walberla::lbm::accessor::Vector::initialize(), and walberla::LBWalberlaImpl< FloatType, Architecture >::m_lattice.
|
inline |
Definition at line 535 of file LBWalberlaImpl.hpp.
References LatticeWalberla::get_blocks(), and walberla::LBWalberlaImpl< FloatType, Architecture >::get_lattice().
Referenced by walberla::LBWalberlaImpl< FloatType, Architecture >::ghost_communication_full().
|
overridevirtual |
Verify that MD and LB Lees-Edwards parameters are consistent.
Implements LBWalberlaBase.
Definition at line 142 of file LBCollisionSetup.impl.hpp.
|
overridevirtual |
Implements LBWalberlaBase.
Definition at line 200 of file LBBoundaryAccess.impl.hpp.
|
inline |
Definition at line 224 of file LBWalberlaImpl.hpp.
Referenced by walberla::LBWalberlaImpl< FloatType, Architecture >::set_viscosity().
|
overridevirtual |
Implements LBWalberlaBase.
Definition at line 297 of file LBBoundaryAccess.impl.hpp.
References block(), and walberla::to_vector3d().
|
overridevirtual |
Total force exerted by the fluid on a subset of boundary nodes.
Only boundary nodes where raster_flat is non-zero are included. The force is accumulated from the UBB index/force vectors by matching each boundary node's stencil neighbors against the index field.
Implements LBWalberlaBase.
Definition at line 264 of file LBBoundaryAccess.impl.hpp.
References block().
|
overridevirtual |
Implements LBWalberlaBase.
Definition at line 276 of file LBInterpolation.impl.hpp.
References block(), lbmpy::CPU, walberla::lbm::accessor::Interpolation::get_rho(), and lbmpy::GPU.
|
inlineoverridevirtualnoexcept |
Implements LBWalberlaBase.
Definition at line 724 of file LBWalberlaImpl.hpp.
References walberla::LBWalberlaImpl< FloatType, Architecture >::m_density.
|
overridevirtual |
Implements LBWalberlaBase.
Definition at line 333 of file LBInterpolation.impl.hpp.
|
inlineoverridevirtualnoexcept |
Implements LBWalberlaBase.
Definition at line 712 of file LBWalberlaImpl.hpp.
References walberla::LBWalberlaImpl< FloatType, Architecture >::m_reset_force, and walberla::LBWalberlaImpl< FloatType, Architecture >::zero_centered_to_md().
|
inlineoverridevirtualnoexcept |
Implements LBWalberlaBase.
Definition at line 766 of file LBWalberlaImpl.hpp.
References walberla::LBWalberlaImpl< FloatType, Architecture >::m_force_to_be_applied_id.
|
inlineoverridevirtualnoexcept |
Implements LBWalberlaBase.
Definition at line 728 of file LBWalberlaImpl.hpp.
References walberla::LBWalberlaImpl< FloatType, Architecture >::m_kT.
|
inlineoverridevirtualnoexcept |
Implements LatticeModel.
Definition at line 758 of file LBWalberlaImpl.hpp.
References walberla::LBWalberlaImpl< FloatType, Architecture >::m_lattice.
Referenced by walberla::LBWalberlaImpl< FloatType, Architecture >::apply_lees_edwards_interpolation(), walberla::LBWalberlaImpl< FloatType, Architecture >::get_momentum(), walberla::LBWalberlaImpl< FloatType, Architecture >::get_pressure_tensor(), walberla::LBWalberlaImpl< FloatType, Architecture >::ghost_communication_laf(), walberla::LBWalberlaImpl< FloatType, Architecture >::ghost_communication_pdf(), and walberla::LBWalberlaImpl< FloatType, Architecture >::ghost_communication_vel().
|
inlineoverridevirtual |
Implements LBWalberlaBase.
Definition at line 695 of file LBWalberlaImpl.hpp.
References block(), LatticeWalberla::get_blocks(), walberla::LBWalberlaImpl< FloatType, Architecture >::get_lattice(), walberla::LBWalberlaImpl< FloatType, Architecture >::m_density, walberla::LBWalberlaImpl< FloatType, Architecture >::m_last_applied_force_field_id, walberla::LBWalberlaImpl< FloatType, Architecture >::m_pdf_field_id, walberla::lbm::accessor::MomentumDensity::reduce(), and walberla::to_vector3d().
|
overridevirtual |
Implements LBWalberlaBase.
Definition at line 123 of file LBBoundaryAccess.impl.hpp.
References walberla::get_block_and_cell().
|
overridevirtual |
Implements LBWalberlaBase.
Definition at line 82 of file LBNodeAccess.impl.hpp.
References density, walberla::lbm::accessor::Density::get(), and walberla::get_block_and_cell().
|
overridevirtual |
Implements LBWalberlaBase.
Definition at line 156 of file LBNodeAccess.impl.hpp.
References walberla::lbm::accessor::Vector::get(), walberla::get_block_and_cell(), and walberla::to_vector3d().
|
overridevirtual |
Implements LBWalberlaBase.
Definition at line 147 of file LBBoundaryAccess.impl.hpp.
References walberla::get_block_and_cell().
|
overridevirtual |
Implements LBWalberlaBase.
Definition at line 170 of file LBNodeAccess.impl.hpp.
References walberla::lbm::accessor::Vector::get(), walberla::get_block_and_cell(), and walberla::to_vector3d().
|
overridevirtual |
Implements LBWalberlaBase.
Definition at line 113 of file LBNodeAccess.impl.hpp.
References walberla::lbm::accessor::Population::get(), and walberla::get_block_and_cell().
|
overridevirtual |
Implements LBWalberlaBase.
Definition at line 206 of file LBNodeAccess.impl.hpp.
References walberla::lbm::accessor::PressureTensor::get(), walberla::get_block_and_cell(), and walberla::to_vector9d().
|
overridevirtual |
Implements LBWalberlaBase.
Definition at line 39 of file LBNodeAccess.impl.hpp.
References walberla::lbm::accessor::Vector::get(), walberla::get_block_and_cell(), and walberla::to_vector3d().
|
overridevirtual |
Implements LBWalberlaBase.
Definition at line 37 of file LBBoundaryAccess.impl.hpp.
References walberla::get_block_and_cell(), and walberla::to_vector3d().
|
inlineoverridevirtual |
Implements LBWalberlaBase.
Definition at line 682 of file LBWalberlaImpl.hpp.
References block(), LatticeWalberla::get_blocks(), LatticeWalberla::get_grid_dimensions(), walberla::LBWalberlaImpl< FloatType, Architecture >::get_lattice(), walberla::LBWalberlaImpl< FloatType, Architecture >::m_density, walberla::LBWalberlaImpl< FloatType, Architecture >::m_pdf_field_id, walberla::LBWalberlaImpl< FloatType, Architecture >::pressure_tensor_correction(), Utils::product(), walberla::lbm::accessor::PressureTensor::reduce(), and walberla::to_vector9d().
|
inlineoverridevirtual |
Implements LBWalberlaBase.
Definition at line 736 of file LBWalberlaImpl.hpp.
References walberla::LBWalberlaImpl< FloatType, Architecture >::m_collision_model, and walberla::LBWalberlaImpl< FloatType, Architecture >::m_kT.
|
inlineoverridevirtualnoexcept |
Implements LBWalberlaBase.
Definition at line 732 of file LBWalberlaImpl.hpp.
References walberla::LBWalberlaImpl< FloatType, Architecture >::m_seed.
|
overridevirtual |
Implements LBWalberlaBase.
Definition at line 228 of file LBSliceAccess.impl.hpp.
References block(), walberla::copy_block_buffer(), walberla::for_each_block_in_slice(), and walberla::lbm::accessor::Density::get().
|
overridevirtual |
Implements LBWalberlaBase.
Definition at line 159 of file LBBoundaryAccess.impl.hpp.
References walberla::copy_block_buffer(), and walberla::for_each_block_in_slice().
|
overridevirtual |
Implements LBWalberlaBase.
Definition at line 106 of file LBSliceAccess.impl.hpp.
References block(), walberla::copy_block_buffer(), walberla::for_each_block_in_slice(), and walberla::lbm::accessor::Vector::get().
|
overridevirtual |
Implements LBWalberlaBase.
Definition at line 169 of file LBSliceAccess.impl.hpp.
References block(), walberla::copy_block_buffer(), walberla::for_each_block_in_slice(), and walberla::lbm::accessor::Population::get().
|
overridevirtual |
Implements LBWalberlaBase.
Definition at line 279 of file LBSliceAccess.impl.hpp.
References block(), walberla::copy_block_buffer(), walberla::for_each_block_in_slice(), and walberla::lbm::accessor::PressureTensor::get().
|
overridevirtual |
Implements LBWalberlaBase.
Definition at line 36 of file LBSliceAccess.impl.hpp.
References block(), walberla::copy_block_buffer(), walberla::for_each_block_in_slice(), and walberla::lbm::accessor::Vector::get().
|
overridevirtual |
Implements LBWalberlaBase.
Definition at line 65 of file LBBoundaryAccess.impl.hpp.
References walberla::copy_block_buffer(), walberla::for_each_block_in_slice(), and walberla::to_vector3d().
|
overridevirtual |
Interpolate velocities at given positions (batch version).
On GPU, boundary slip velocities are written into the velocity field before interpolation, since the field has indeterminate values inside boundary regions.
Implements LBWalberlaBase.
Definition at line 229 of file LBInterpolation.impl.hpp.
References block(), lbmpy::CPU, walberla::lbm::accessor::Interpolation::get_vel(), lbmpy::GPU, and walberla::lbm::accessor::Vector::set_from_list().
|
overridevirtual |
Implements LBWalberlaBase.
Definition at line 319 of file LBInterpolation.impl.hpp.
|
inlineoverridevirtualnoexcept |
Implements LBWalberlaBase.
Definition at line 762 of file LBWalberlaImpl.hpp.
References walberla::LBWalberlaImpl< FloatType, Architecture >::m_velocity_field_id.
|
inlineoverridevirtualnoexcept |
Implements LBWalberlaBase.
Definition at line 720 of file LBWalberlaImpl.hpp.
References walberla::LBWalberlaImpl< FloatType, Architecture >::m_viscosity.
|
inlineoverridevirtual |
Perform all pending ghost layer updates.
Uses a lazy scheme: ghost communications are only executed when they have been marked as pending by a preceding write operation.
Implements LBWalberlaBase.
Definition at line 442 of file LBWalberlaImpl.hpp.
References walberla::LBWalberlaImpl< FloatType, Architecture >::ghost_communication_boundary(), walberla::LBWalberlaImpl< FloatType, Architecture >::ghost_communication_laf(), walberla::LBWalberlaImpl< FloatType, Architecture >::ghost_communication_pdf(), walberla::LBWalberlaImpl< FloatType, Architecture >::ghost_communication_vel(), ResourceObserver::is_valid(), walberla::LBWalberlaImpl< FloatType, Architecture >::m_mpi_cart_comm_observer, and walberla::LBWalberlaImpl< FloatType, Architecture >::m_pending_ghost_comm.
|
inline |
Definition at line 488 of file LBWalberlaImpl.hpp.
References ResourceObserver::is_valid(), walberla::LBWalberlaImpl< FloatType, Architecture >::m_boundary_communicator, walberla::LBWalberlaImpl< FloatType, Architecture >::m_mpi_cart_comm_observer, walberla::LBWalberlaImpl< FloatType, Architecture >::m_pending_ghost_comm, and walberla::LBWalberlaImpl< FloatType, Architecture >::GhostComm::UBB.
Referenced by walberla::LBWalberlaImpl< FloatType, Architecture >::ghost_communication().
|
inline |
Communicate all fields at once using the D3Q27 stencil.
Definition at line 497 of file LBWalberlaImpl.hpp.
References walberla::LBWalberlaImpl< FloatType, Architecture >::apply_lees_edwards_interpolation(), ResourceObserver::is_valid(), walberla::LBWalberlaImpl< FloatType, Architecture >::GhostComm::LAF, walberla::LBWalberlaImpl< FloatType, Architecture >::m_full_communicator, walberla::LBWalberlaImpl< FloatType, Architecture >::m_mpi_cart_comm_observer, walberla::LBWalberlaImpl< FloatType, Architecture >::m_pending_ghost_comm, walberla::LBWalberlaImpl< FloatType, Architecture >::GhostComm::PDF, and walberla::LBWalberlaImpl< FloatType, Architecture >::GhostComm::VEL.
|
inlineoverridevirtual |
Implements LBWalberlaBase.
Definition at line 476 of file LBWalberlaImpl.hpp.
References LatticeWalberla::get_blocks(), walberla::LBWalberlaImpl< FloatType, Architecture >::get_lattice(), ResourceObserver::is_valid(), walberla::LBWalberlaImpl< FloatType, Architecture >::GhostComm::LAF, walberla::LBWalberlaImpl< FloatType, Architecture >::m_laf_communicator, walberla::LBWalberlaImpl< FloatType, Architecture >::m_mpi_cart_comm_observer, and walberla::LBWalberlaImpl< FloatType, Architecture >::m_pending_ghost_comm.
Referenced by walberla::LBWalberlaImpl< FloatType, Architecture >::ghost_communication().
|
inlineoverridevirtual |
Implements LBWalberlaBase.
Definition at line 452 of file LBWalberlaImpl.hpp.
References LatticeWalberla::get_blocks(), walberla::LBWalberlaImpl< FloatType, Architecture >::get_lattice(), ResourceObserver::is_valid(), walberla::LBWalberlaImpl< FloatType, Architecture >::m_mpi_cart_comm_observer, walberla::LBWalberlaImpl< FloatType, Architecture >::m_pdf_communicator, walberla::LBWalberlaImpl< FloatType, Architecture >::m_pending_ghost_comm, and walberla::LBWalberlaImpl< FloatType, Architecture >::GhostComm::PDF.
Referenced by walberla::LBWalberlaImpl< FloatType, Architecture >::ghost_communication().
|
inlineoverridevirtual |
Implements LBWalberlaBase.
Definition at line 464 of file LBWalberlaImpl.hpp.
References LatticeWalberla::get_blocks(), walberla::LBWalberlaImpl< FloatType, Architecture >::get_lattice(), ResourceObserver::is_valid(), walberla::LBWalberlaImpl< FloatType, Architecture >::m_mpi_cart_comm_observer, walberla::LBWalberlaImpl< FloatType, Architecture >::m_pending_ghost_comm, walberla::LBWalberlaImpl< FloatType, Architecture >::m_vel_communicator, and walberla::LBWalberlaImpl< FloatType, Architecture >::GhostComm::VEL.
Referenced by walberla::LBWalberlaImpl< FloatType, Architecture >::ghost_communication().
|
inlineoverridevirtual |
Implements LBWalberlaBase.
Definition at line 295 of file LBWalberlaImpl.hpp.
References walberla::LBWalberlaImpl< FloatType, Architecture >::integrate_vtk_writers().
|
inlineoverrideprotectedvirtual |
Implements LatticeModel.
Definition at line 301 of file LBWalberlaImpl.hpp.
References LatticeModel::m_vtk_auto.
Referenced by walberla::LBWalberlaImpl< FloatType, Architecture >::integrate().
|
inlineoverridevirtualnoexcept |
Implements LBWalberlaBase.
Definition at line 232 of file LBWalberlaImpl.hpp.
|
inlineoverridevirtualnoexcept |
Implements LBWalberlaBase.
Definition at line 236 of file LBWalberlaImpl.hpp.
References lbmpy::GPU.
|
overridevirtual |
Implements LBWalberlaBase.
Definition at line 69 of file LBInterpolation.impl.hpp.
| void walberla::LBWalberlaImpl< FloatType, Architecture >::on_boundary_add | ( | ) |
Lazily enable boundary mode on first boundary addition.
Switches the streaming communicator to the generic pack info, which correctly handles boundary-adjacent cells.
Definition at line 191 of file LBBoundaryAccess.impl.hpp.
|
inline |
Definition at line 779 of file LBWalberlaImpl.hpp.
References walberla::LBWalberlaImpl< FloatType, Architecture >::pressure_tensor_correction_factor().
Referenced by walberla::LBWalberlaImpl< FloatType, Architecture >::get_pressure_tensor().
|
inline |
Definition at line 786 of file LBWalberlaImpl.hpp.
References walberla::LBWalberlaImpl< FloatType, Architecture >::pressure_tensor_correction_factor().
|
inline |
Correction factor for off-diagonal pressure tensor elements.
Compensates for the viscosity-dependent error in the non-equilibrium stress: factor = nu / (nu + 1/6).
Definition at line 775 of file LBWalberlaImpl.hpp.
References walberla::LBWalberlaImpl< FloatType, Architecture >::m_viscosity.
Referenced by walberla::LBWalberlaImpl< FloatType, Architecture >::pressure_tensor_correction(), and walberla::LBWalberlaImpl< FloatType, Architecture >::pressure_tensor_correction().
|
overridevirtual |
Implements LBWalberlaBase.
Definition at line 181 of file LBBoundaryAccess.impl.hpp.
|
inlineoverridevirtual |
Implements LatticeModel.
Definition at line 836 of file LBWalberlaImpl.hpp.
References walberla::LBWalberlaImpl< FloatType, Architecture >::Boundary_flag, and walberla::LBWalberlaImpl< FloatType, Architecture >::m_flag_field_id.
|
overridevirtual |
Implements LatticeModel.
Definition at line 127 of file LBVTK.impl.hpp.
References block(), density, walberla::lbm::accessor::Density::get(), walberla::lbm::accessor::PressureTensor::get(), walberla::lbm::accessor::Vector::get(), pressure_tensor, and velocity_vector.
|
overridevirtual |
Implements LBWalberlaBase.
Definition at line 133 of file LBBoundaryAccess.impl.hpp.
References walberla::get_block_and_cell().
|
inline |
Definition at line 636 of file LBWalberlaImpl.hpp.
References walberla::LBWalberlaImpl< FloatType, Architecture >::m_boundary, walberla::LBWalberlaImpl< FloatType, Architecture >::m_flag_field_id, walberla::LBWalberlaImpl< FloatType, Architecture >::m_lattice, walberla::LBWalberlaImpl< FloatType, Architecture >::m_pdf_field_id, and walberla::to_cell().
Referenced by walberla::LBWalberlaImpl< FloatType, Architecture >::LBWalberlaImpl().
|
overridevirtual |
Set up the thermalized collision model.
Configures MRT relaxation rates from the viscosity and initializes the random number generator for fluctuating LB. When kT is zero, fluctuations are suppressed but the thermalized kernel is still used (required for RNG state tracking).
Implements LBWalberlaBase.
Definition at line 56 of file LBCollisionSetup.impl.hpp.
|
overridevirtual |
Set up the Lees-Edwards collision model.
Configures a modified collision step that applies the shear velocity at the Lees-Edwards boundary planes, and sets up the interpolation sweeps for PDFs, velocities, and forces at those boundaries. Currently restricted to shear_plane_normal="y" and no domain decomposition along the shear direction.
Implements LBWalberlaBase.
Definition at line 80 of file LBCollisionSetup.impl.hpp.
References lbmpy::GPU.
|
inlineoverridevirtual |
Implements LBWalberlaBase.
Definition at line 708 of file LBWalberlaImpl.hpp.
References walberla::LBWalberlaImpl< FloatType, Architecture >::m_reset_force, and walberla::LBWalberlaImpl< FloatType, Architecture >::zero_centered_to_lb().
|
overridevirtual |
Implements LBWalberlaBase.
Definition at line 97 of file LBNodeAccess.impl.hpp.
References density, walberla::get_block_and_cell(), and walberla::lbm::accessor::Density::set().
|
overridevirtual |
Implements LBWalberlaBase.
Definition at line 184 of file LBNodeAccess.impl.hpp.
References walberla::get_block_and_cell(), and walberla::lbm::accessor::Force::set().
|
overridevirtual |
Implements LBWalberlaBase.
Definition at line 131 of file LBNodeAccess.impl.hpp.
References walberla::get_block_and_cell(), and walberla::lbm::accessor::Population::set().
|
overridevirtual |
Implements LBWalberlaBase.
Definition at line 60 of file LBNodeAccess.impl.hpp.
References walberla::get_block_and_cell(), and walberla::lbm::accessor::Velocity::set().
|
overridevirtual |
Implements LBWalberlaBase.
Definition at line 48 of file LBBoundaryAccess.impl.hpp.
References walberla::get_block_and_cell(), and velocity().
|
inlineoverridevirtual |
Implements LBWalberlaBase.
Definition at line 746 of file LBWalberlaImpl.hpp.
References walberla::LBWalberlaImpl< FloatType, Architecture >::m_collision_model, and walberla::LBWalberlaImpl< FloatType, Architecture >::m_kT.
|
overridevirtual |
Implements LBWalberlaBase.
Definition at line 254 of file LBSliceAccess.impl.hpp.
References block(), walberla::copy_block_buffer(), density, walberla::for_each_block_in_slice(), and walberla::lbm::accessor::Density::set().
|
overridevirtual |
Implements LBWalberlaBase.
Definition at line 135 of file LBSliceAccess.impl.hpp.
References block(), walberla::copy_block_buffer(), walberla::for_each_block_in_slice(), and walberla::lbm::accessor::Force::set().
|
overridevirtual |
Implements LBWalberlaBase.
Definition at line 197 of file LBSliceAccess.impl.hpp.
References block(), walberla::copy_block_buffer(), walberla::for_each_block_in_slice(), and walberla::lbm::accessor::Population::set().
|
overridevirtual |
Implements LBWalberlaBase.
Definition at line 72 of file LBSliceAccess.impl.hpp.
References block(), walberla::copy_block_buffer(), walberla::for_each_block_in_slice(), walberla::lbm::accessor::Velocity::set(), Utils::Vector< T, N >::size(), and velocity().
|
overridevirtual |
Implements LBWalberlaBase.
Definition at line 92 of file LBBoundaryAccess.impl.hpp.
References block(), walberla::copy_block_buffer(), walberla::for_each_block_in_slice(), walberla::get_block_and_cell(), Utils::Vector< T, N >::size(), and velocity().
|
inlineoverridevirtual |
Implements LBWalberlaBase.
Definition at line 716 of file LBWalberlaImpl.hpp.
References walberla::LBWalberlaImpl< FloatType, Architecture >::FloatType_c(), and walberla::LBWalberlaImpl< FloatType, Architecture >::m_viscosity.
|
inlineprotected |
Set up D3Q27 communicators for full ghost layer updates.
Creates per-field communicators (PDF, velocity, last-applied force) as well as a combined communicator and the boundary communicator.
Definition at line 904 of file LBWalberlaImpl.hpp.
References walberla::LBWalberlaImpl< FloatType, Architecture >::m_boundary, walberla::LBWalberlaImpl< FloatType, Architecture >::m_boundary_communicator, walberla::LBWalberlaImpl< FloatType, Architecture >::m_flag_field_id, walberla::LBWalberlaImpl< FloatType, Architecture >::m_full_communicator, walberla::LBWalberlaImpl< FloatType, Architecture >::m_laf_communicator, walberla::LBWalberlaImpl< FloatType, Architecture >::m_last_applied_force_field_id, walberla::LBWalberlaImpl< FloatType, Architecture >::m_lattice, walberla::LBWalberlaImpl< FloatType, Architecture >::m_pdf_communicator, walberla::LBWalberlaImpl< FloatType, Architecture >::m_pdf_field_id, walberla::LBWalberlaImpl< FloatType, Architecture >::m_vel_communicator, walberla::LBWalberlaImpl< FloatType, Architecture >::m_velocity_field_id, and walberla::field::communication::BoundaryPackInfo< GhostLayerField_T, Boundary_T >::setup_boundary_handle().
Referenced by walberla::LBWalberlaImpl< FloatType, Architecture >::LBWalberlaImpl().
|
inlineprotected |
Set up the communicator used during integration.
Uses optimized streaming pack info when neither boundaries nor Lees-Edwards boundary conditions are active; falls back to the generic pack info otherwise.
Definition at line 943 of file LBWalberlaImpl.hpp.
References walberla::LBWalberlaImpl< FloatType, Architecture >::m_collision_model, walberla::LBWalberlaImpl< FloatType, Architecture >::m_has_boundaries, walberla::LBWalberlaImpl< FloatType, Architecture >::m_last_applied_force_field_id, walberla::LBWalberlaImpl< FloatType, Architecture >::m_lattice, walberla::LBWalberlaImpl< FloatType, Architecture >::m_pdf_field_id, and walberla::LBWalberlaImpl< FloatType, Architecture >::m_pdf_streaming_communicator.
Referenced by walberla::LBWalberlaImpl< FloatType, Architecture >::LBWalberlaImpl().
|
inlineoverridevirtualnoexcept |
Implements LBWalberlaBase.
Definition at line 228 of file LBWalberlaImpl.hpp.
|
overridevirtual |
Set boundary conditions from a rasterized shape.
| raster_flat | Flattened 3D mask (non-zero = boundary node). |
| data_flat | Flattened 3D array of slip velocities (3 components per node, same ordering as raster_flat). |
Implements LBWalberlaBase.
Definition at line 215 of file LBBoundaryAccess.impl.hpp.
References walberla::fill_3D_vector_array(), and walberla::set_boundary_from_grid().
|
inlineprotected |
Definition at line 821 of file LBWalberlaImpl.hpp.
References walberla::LBWalberlaImpl< FloatType, Architecture >::zero_centered_to_lb_in_place().
Referenced by walberla::LBWalberlaImpl< FloatType, Architecture >::set_external_force().
|
inlineprotected |
Definition at line 813 of file LBWalberlaImpl.hpp.
References walberla::LBWalberlaImpl< FloatType, Architecture >::m_zc_to_lb, and walberla::LBWalberlaImpl< FloatType, Architecture >::zero_centered_transform_impl().
Referenced by walberla::LBWalberlaImpl< FloatType, Architecture >::zero_centered_to_lb().
|
inlineprotected |
Definition at line 827 of file LBWalberlaImpl.hpp.
References walberla::LBWalberlaImpl< FloatType, Architecture >::zero_centered_to_md_in_place().
Referenced by walberla::LBWalberlaImpl< FloatType, Architecture >::get_external_force().
|
inlineprotected |
Definition at line 817 of file LBWalberlaImpl.hpp.
References walberla::LBWalberlaImpl< FloatType, Architecture >::m_zc_to_md, and walberla::LBWalberlaImpl< FloatType, Architecture >::zero_centered_transform_impl().
Referenced by walberla::LBWalberlaImpl< FloatType, Architecture >::zero_centered_to_md().
|
inlineprotected |
Scale data by a conversion factor (in-place).
Used for zero-centered density representation: LB internally stores density fluctuations around zero, while the user interface uses absolute densities. The conversion factors m_zc_to_md and m_zc_to_lb translate between these representations.
Definition at line 802 of file LBWalberlaImpl.hpp.
Referenced by walberla::LBWalberlaImpl< FloatType, Architecture >::zero_centered_to_lb_in_place(), and walberla::LBWalberlaImpl< FloatType, Architecture >::zero_centered_to_md_in_place().
|
protected |
Flag for boundary cells.
Definition at line 188 of file LBWalberlaImpl.hpp.
Referenced by walberla::LBWalberlaImpl< FloatType, Architecture >::register_vtk_field_filters().
|
protected |
Definition at line 192 of file LBWalberlaImpl.hpp.
Referenced by walberla::LBWalberlaImpl< FloatType, Architecture >::reset_boundary_handling(), and walberla::LBWalberlaImpl< FloatType, Architecture >::setup_full_communicator().
|
protected |
Definition at line 195 of file LBWalberlaImpl.hpp.
Referenced by walberla::LBWalberlaImpl< FloatType, Architecture >::ghost_communication_boundary(), and walberla::LBWalberlaImpl< FloatType, Architecture >::setup_full_communicator().
|
protected |
|
protected |
kinematic viscosity
Definition at line 161 of file LBWalberlaImpl.hpp.
Referenced by walberla::LBWalberlaImpl< FloatType, Architecture >::get_density(), walberla::LBWalberlaImpl< FloatType, Architecture >::get_momentum(), and walberla::LBWalberlaImpl< FloatType, Architecture >::get_pressure_tensor().
|
protected |
Definition at line 173 of file LBWalberlaImpl.hpp.
Referenced by walberla::LBWalberlaImpl< FloatType, Architecture >::LBWalberlaImpl(), walberla::LBWalberlaImpl< FloatType, Architecture >::register_vtk_field_filters(), walberla::LBWalberlaImpl< FloatType, Architecture >::reset_boundary_handling(), and walberla::LBWalberlaImpl< FloatType, Architecture >::setup_full_communicator().
|
protected |
Definition at line 176 of file LBWalberlaImpl.hpp.
Referenced by walberla::LBWalberlaImpl< FloatType, Architecture >::get_force_field_id(), and walberla::LBWalberlaImpl< FloatType, Architecture >::LBWalberlaImpl().
|
protected |
Definition at line 196 of file LBWalberlaImpl.hpp.
Referenced by walberla::LBWalberlaImpl< FloatType, Architecture >::ghost_communication_full(), and walberla::LBWalberlaImpl< FloatType, Architecture >::setup_full_communicator().
|
protected |
Definition at line 189 of file LBWalberlaImpl.hpp.
Referenced by walberla::LBWalberlaImpl< FloatType, Architecture >::setup_streaming_communicator().
|
protected |
|
protected |
Definition at line 199 of file LBWalberlaImpl.hpp.
Referenced by walberla::LBWalberlaImpl< FloatType, Architecture >::ghost_communication_laf(), and walberla::LBWalberlaImpl< FloatType, Architecture >::setup_full_communicator().
|
protected |
Definition at line 175 of file LBWalberlaImpl.hpp.
Referenced by walberla::LBWalberlaImpl< FloatType, Architecture >::get_momentum(), walberla::LBWalberlaImpl< FloatType, Architecture >::LBWalberlaImpl(), walberla::LBWalberlaImpl< FloatType, Architecture >::setup_full_communicator(), and walberla::LBWalberlaImpl< FloatType, Architecture >::setup_streaming_communicator().
|
protected |
Definition at line 168 of file LBWalberlaImpl.hpp.
Referenced by walberla::LBWalberlaImpl< FloatType, Architecture >::add_to_storage(), walberla::LBWalberlaImpl< FloatType, Architecture >::get_lattice(), walberla::LBWalberlaImpl< FloatType, Architecture >::LBWalberlaImpl(), walberla::LBWalberlaImpl< FloatType, Architecture >::reset_boundary_handling(), walberla::LBWalberlaImpl< FloatType, Architecture >::setup_full_communicator(), and walberla::LBWalberlaImpl< FloatType, Architecture >::setup_streaming_communicator().
|
protected |
Definition at line 215 of file LBWalberlaImpl.hpp.
|
protected |
Definition at line 221 of file LBWalberlaImpl.hpp.
|
protected |
Definition at line 217 of file LBWalberlaImpl.hpp.
|
protected |
Definition at line 219 of file LBWalberlaImpl.hpp.
|
protected |
Definition at line 202 of file LBWalberlaImpl.hpp.
Referenced by walberla::LBWalberlaImpl< FloatType, Architecture >::ghost_communication(), walberla::LBWalberlaImpl< FloatType, Architecture >::ghost_communication_boundary(), walberla::LBWalberlaImpl< FloatType, Architecture >::ghost_communication_full(), walberla::LBWalberlaImpl< FloatType, Architecture >::ghost_communication_laf(), walberla::LBWalberlaImpl< FloatType, Architecture >::ghost_communication_pdf(), and walberla::LBWalberlaImpl< FloatType, Architecture >::ghost_communication_vel().
|
protected |
Definition at line 197 of file LBWalberlaImpl.hpp.
Referenced by walberla::LBWalberlaImpl< FloatType, Architecture >::ghost_communication_pdf(), and walberla::LBWalberlaImpl< FloatType, Architecture >::setup_full_communicator().
|
protected |
Definition at line 171 of file LBWalberlaImpl.hpp.
Referenced by walberla::LBWalberlaImpl< FloatType, Architecture >::get_momentum(), walberla::LBWalberlaImpl< FloatType, Architecture >::get_pressure_tensor(), walberla::LBWalberlaImpl< FloatType, Architecture >::LBWalberlaImpl(), walberla::LBWalberlaImpl< FloatType, Architecture >::reset_boundary_handling(), walberla::LBWalberlaImpl< FloatType, Architecture >::setup_full_communicator(), and walberla::LBWalberlaImpl< FloatType, Architecture >::setup_streaming_communicator().
|
protected |
Definition at line 200 of file LBWalberlaImpl.hpp.
Referenced by walberla::LBWalberlaImpl< FloatType, Architecture >::setup_streaming_communicator().
|
protected |
Definition at line 172 of file LBWalberlaImpl.hpp.
Referenced by walberla::LBWalberlaImpl< FloatType, Architecture >::LBWalberlaImpl().
|
protected |
Definition at line 201 of file LBWalberlaImpl.hpp.
Referenced by walberla::LBWalberlaImpl< FloatType, Architecture >::ghost_communication(), walberla::LBWalberlaImpl< FloatType, Architecture >::ghost_communication_boundary(), walberla::LBWalberlaImpl< FloatType, Architecture >::ghost_communication_full(), walberla::LBWalberlaImpl< FloatType, Architecture >::ghost_communication_laf(), walberla::LBWalberlaImpl< FloatType, Architecture >::ghost_communication_pdf(), walberla::LBWalberlaImpl< FloatType, Architecture >::ghost_communication_vel(), and walberla::LBWalberlaImpl< FloatType, Architecture >::LBWalberlaImpl().
|
protected |
Definition at line 181 of file LBWalberlaImpl.hpp.
|
protected |
|
protected |
Definition at line 163 of file LBWalberlaImpl.hpp.
Referenced by walberla::LBWalberlaImpl< FloatType, Architecture >::get_seed().
|
protected |
Definition at line 212 of file LBWalberlaImpl.hpp.
Referenced by walberla::LBWalberlaImpl< FloatType, Architecture >::LBWalberlaImpl().
|
protected |
Definition at line 198 of file LBWalberlaImpl.hpp.
Referenced by walberla::LBWalberlaImpl< FloatType, Architecture >::ghost_communication_vel(), and walberla::LBWalberlaImpl< FloatType, Architecture >::setup_full_communicator().
|
protected |
Definition at line 179 of file LBWalberlaImpl.hpp.
Referenced by walberla::LBWalberlaImpl< FloatType, Architecture >::LBWalberlaImpl().
|
protected |
|
protected |
|
protected |
Definition at line 165 of file LBWalberlaImpl.hpp.
Referenced by walberla::LBWalberlaImpl< FloatType, Architecture >::zero_centered_to_lb_in_place().
|
protected |
Definition at line 164 of file LBWalberlaImpl.hpp.
Referenced by walberla::LBWalberlaImpl< FloatType, Architecture >::zero_centered_to_md_in_place().