ESPResSo
Extensible Simulation Package for Research on Soft Matter Systems
|
#include <LBWalberla.hpp>
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::Vector3d > | get_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::Vector3d > | get_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 ¶ms, double kT, unsigned int seed) |
Public Attributes | |
std::shared_ptr< LBWalberlaBase > | lb_fluid |
std::shared_ptr< LBWalberlaParams > | lb_params |
Definition at line 50 of file LBWalberla.hpp.
|
inline |
Definition at line 53 of file LBWalberla.hpp.
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.
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.
|
inline |
Definition at line 58 of file LBWalberla.hpp.
References lb_params.
Referenced by get_lattice_speed().
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.
double LB::LBWalberla::get_kT | ( | ) | const |
Definition at line 47 of file LBWalberla.cpp.
References lb_fluid.
|
inline |
Definition at line 59 of file LBWalberla.hpp.
References get_agrid(), and get_tau().
Utils::Vector3d LB::LBWalberla::get_momentum | ( | ) | const |
Definition at line 82 of file LBWalberla.cpp.
References lb_fluid.
Utils::VectorXd< 9 > LB::LBWalberla::get_pressure_tensor | ( | ) | const |
Definition at line 49 of file LBWalberla.cpp.
References lb_fluid.
|
inline |
Definition at line 57 of file LBWalberla.hpp.
References lb_params.
Referenced by get_lattice_speed().
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.
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.
void LB::LBWalberla::ghost_communication | ( | ) |
Definition at line 55 of file LBWalberla.cpp.
References lb_fluid.
void LB::LBWalberla::ghost_communication_pdf | ( | ) |
Definition at line 57 of file LBWalberla.cpp.
References lb_fluid.
void LB::LBWalberla::ghost_communication_vel | ( | ) |
Definition at line 61 of file LBWalberla.cpp.
References lb_fluid.
bool LB::LBWalberla::is_gpu | ( | ) | const |
Definition at line 45 of file LBWalberla.cpp.
References lb_fluid.
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.
|
inline |
Definition at line 88 of file LBWalberla.hpp.
References veto_boxl_change().
|
inline |
Definition at line 84 of file LBWalberla.hpp.
void LB::LBWalberla::on_lees_edwards_change | ( | ) |
Definition at line 128 of file LBWalberla.cpp.
References update_collision_model().
|
inline |
Definition at line 89 of file LBWalberla.hpp.
|
inline |
Definition at line 93 of file LBWalberla.hpp.
|
inline |
Definition at line 92 of file LBWalberla.hpp.
void LB::LBWalberla::propagate | ( | ) |
Definition at line 53 of file LBWalberla.cpp.
References lb_fluid.
void LB::LBWalberla::sanity_checks | ( | System::System const & | system | ) | const |
Definition at line 114 of file LBWalberla.cpp.
References System::System::get_time_step(), lb_fluid, lb_params, System::System::local_geo, walberla_agrid_sanity_checks(), and walberla_tau_sanity_checks().
void LB::LBWalberla::update_collision_model | ( | ) |
Definition at line 130 of file LBWalberla.cpp.
References lb_fluid, lb_params, and update_collision_model().
Referenced by ScriptInterface::walberla::LBFluid::do_construct(), on_lees_edwards_change(), and update_collision_model().
|
static |
Definition at line 138 of file LBWalberla.cpp.
References System::get_system(), LBWalberlaBase::ghost_communication(), params, and LBWalberlaBase::set_collision_model().
|
inline |
Definition at line 85 of file LBWalberla.hpp.
Referenced by on_boxl_change().
void LB::LBWalberla::veto_kT | ( | double | kT | ) | const |
Definition at line 105 of file LBWalberla.cpp.
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().
std::shared_ptr<LBWalberlaBase> LB::LBWalberla::lb_fluid |
Definition at line 51 of file LBWalberla.hpp.
Referenced by add_force_at_pos(), add_forces_at_pos(), get_density_at_pos(), get_kT(), get_momentum(), get_pressure_tensor(), get_velocities_at_pos(), get_velocity_at_pos(), ghost_communication(), ghost_communication_pdf(), ghost_communication_vel(), is_gpu(), lebc_sanity_checks(), propagate(), sanity_checks(), update_collision_model(), and veto_kT().
std::shared_ptr<LBWalberlaParams> LB::LBWalberla::lb_params |
Definition at line 52 of file LBWalberla.hpp.
Referenced by get_agrid(), get_tau(), sanity_checks(), update_collision_model(), veto_kT(), and veto_time_step().