ESPResSo
Extensible Simulation Package for Research on Soft Matter Systems
Loading...
Searching...
No Matches
LB::LBWalberla Struct Reference

#include <LBWalberla.hpp>

+ Collaboration diagram for LB::LBWalberla:

Public Member Functions

 LBWalberla (std::shared_ptr< LBWalberlaBase > lb_fluid_, std::shared_ptr< LBWalberlaParams > lb_params_)
 
double get_kT () const
 
auto get_tau () const
 
auto get_agrid () const
 
auto get_lattice_speed () const
 
Utils::VectorXd< 9 > get_pressure_tensor () const
 
bool is_gpu () const
 
std::optional< Utils::Vector3dget_velocity_at_pos (Utils::Vector3d const &pos, bool consider_points_in_halo) const
 
std::optional< double > get_density_at_pos (Utils::Vector3d const &pos, bool consider_points_in_halo) const
 
Utils::Vector3d get_momentum () const
 
bool add_force_at_pos (Utils::Vector3d const &pos, Utils::Vector3d const &force)
 
void add_forces_at_pos (std::vector< Utils::Vector3d > const &pos, std::vector< Utils::Vector3d > const &forces)
 
std::vector< Utils::Vector3dget_velocities_at_pos (std::vector< Utils::Vector3d > const &pos)
 
void propagate ()
 
void ghost_communication ()
 
void ghost_communication_pdf ()
 
void ghost_communication_vel ()
 
void veto_time_step (double time_step) const
 
void veto_kT (double kT) const
 
void sanity_checks (System::System const &system) const
 
void lebc_sanity_checks (unsigned int shear_direction, unsigned int shear_plane_normal) const
 
void on_cell_structure_change () const
 
void veto_boxl_change () const
 
void on_boxl_change () const
 
void on_node_grid_change () const
 
void on_timestep_change () const
 
void on_temperature_change () const
 
void on_lees_edwards_change ()
 
void update_collision_model ()
 

Static Public Member Functions

static void update_collision_model (LBWalberlaBase &instance, LBWalberlaParams &params, double kT, unsigned int seed)
 

Public Attributes

std::shared_ptr< LBWalberlaBaselb_fluid
 
std::shared_ptr< LBWalberlaParamslb_params
 

Detailed Description

Definition at line 50 of file LBWalberla.hpp.

Constructor & Destructor Documentation

◆ LBWalberla()

LB::LBWalberla::LBWalberla ( std::shared_ptr< LBWalberlaBase lb_fluid_,
std::shared_ptr< LBWalberlaParams lb_params_ 
)
inline

Definition at line 53 of file LBWalberla.hpp.

Member Function Documentation

◆ add_force_at_pos()

bool LB::LBWalberla::add_force_at_pos ( Utils::Vector3d const &  pos,
Utils::Vector3d const &  force 
)

Definition at line 86 of file LBWalberla.cpp.

References lb_fluid.

◆ add_forces_at_pos()

void LB::LBWalberla::add_forces_at_pos ( std::vector< Utils::Vector3d > const &  pos,
std::vector< Utils::Vector3d > const &  forces 
)

Definition at line 91 of file LBWalberla.cpp.

References lb_fluid.

◆ get_agrid()

auto LB::LBWalberla::get_agrid ( ) const
inline

Definition at line 58 of file LBWalberla.hpp.

References lb_params.

Referenced by get_lattice_speed().

◆ get_density_at_pos()

std::optional< double > LB::LBWalberla::get_density_at_pos ( Utils::Vector3d const &  pos,
bool  consider_points_in_halo 
) const

Definition at line 77 of file LBWalberla.cpp.

References lb_fluid.

◆ get_kT()

double LB::LBWalberla::get_kT ( ) const

Definition at line 47 of file LBWalberla.cpp.

References lb_fluid.

◆ get_lattice_speed()

auto LB::LBWalberla::get_lattice_speed ( ) const
inline

Definition at line 59 of file LBWalberla.hpp.

References get_agrid(), and get_tau().

◆ get_momentum()

Utils::Vector3d LB::LBWalberla::get_momentum ( ) const

Definition at line 82 of file LBWalberla.cpp.

References lb_fluid.

◆ get_pressure_tensor()

Utils::VectorXd< 9 > LB::LBWalberla::get_pressure_tensor ( ) const

Definition at line 49 of file LBWalberla.cpp.

References lb_fluid.

◆ get_tau()

auto LB::LBWalberla::get_tau ( ) const
inline

Definition at line 57 of file LBWalberla.hpp.

References lb_params.

Referenced by get_lattice_speed().

◆ get_velocities_at_pos()

std::vector< Utils::Vector3d > LB::LBWalberla::get_velocities_at_pos ( std::vector< Utils::Vector3d > const &  pos)

Definition at line 97 of file LBWalberla.cpp.

References lb_fluid.

◆ get_velocity_at_pos()

std::optional< Utils::Vector3d > LB::LBWalberla::get_velocity_at_pos ( Utils::Vector3d const &  pos,
bool  consider_points_in_halo 
) const

Definition at line 71 of file LBWalberla.cpp.

References lb_fluid.

◆ ghost_communication()

void LB::LBWalberla::ghost_communication ( )

Definition at line 55 of file LBWalberla.cpp.

References lb_fluid.

◆ ghost_communication_pdf()

void LB::LBWalberla::ghost_communication_pdf ( )

Definition at line 57 of file LBWalberla.cpp.

References lb_fluid.

◆ ghost_communication_vel()

void LB::LBWalberla::ghost_communication_vel ( )

Definition at line 61 of file LBWalberla.cpp.

References lb_fluid.

◆ is_gpu()

bool LB::LBWalberla::is_gpu ( ) const

Definition at line 45 of file LBWalberla.cpp.

References lb_fluid.

◆ lebc_sanity_checks()

void LB::LBWalberla::lebc_sanity_checks ( unsigned int  shear_direction,
unsigned int  shear_plane_normal 
) const

Definition at line 65 of file LBWalberla.cpp.

References lb_fluid.

◆ on_boxl_change()

void LB::LBWalberla::on_boxl_change ( ) const
inline

Definition at line 88 of file LBWalberla.hpp.

References veto_boxl_change().

◆ on_cell_structure_change()

void LB::LBWalberla::on_cell_structure_change ( ) const
inline

Definition at line 84 of file LBWalberla.hpp.

◆ on_lees_edwards_change()

void LB::LBWalberla::on_lees_edwards_change ( )

Definition at line 128 of file LBWalberla.cpp.

References update_collision_model().

◆ on_node_grid_change()

void LB::LBWalberla::on_node_grid_change ( ) const
inline

Definition at line 89 of file LBWalberla.hpp.

◆ on_temperature_change()

void LB::LBWalberla::on_temperature_change ( ) const
inline

Definition at line 93 of file LBWalberla.hpp.

◆ on_timestep_change()

void LB::LBWalberla::on_timestep_change ( ) const
inline

Definition at line 92 of file LBWalberla.hpp.

◆ propagate()

void LB::LBWalberla::propagate ( )

Definition at line 53 of file LBWalberla.cpp.

References lb_fluid.

◆ sanity_checks()

void LB::LBWalberla::sanity_checks ( System::System const &  system) const

◆ update_collision_model() [1/2]

void LB::LBWalberla::update_collision_model ( )

◆ update_collision_model() [2/2]

void LB::LBWalberla::update_collision_model ( LBWalberlaBase instance,
LBWalberlaParams params,
double  kT,
unsigned int  seed 
)
static

◆ veto_boxl_change()

void LB::LBWalberla::veto_boxl_change ( ) const
inline

Definition at line 85 of file LBWalberla.hpp.

Referenced by on_boxl_change().

◆ veto_kT()

void LB::LBWalberla::veto_kT ( double  kT) const

Definition at line 105 of file LBWalberla.cpp.

References lb_fluid, and lb_params.

◆ veto_time_step()

void LB::LBWalberla::veto_time_step ( double  time_step) const

Definition at line 101 of file LBWalberla.cpp.

References lb_params, and walberla_tau_sanity_checks().

Member Data Documentation

◆ lb_fluid

◆ lb_params

std::shared_ptr<LBWalberlaParams> LB::LBWalberla::lb_params

The documentation for this struct was generated from the following files: