24#ifdef ESPRESSO_WALBERLA
44#include <unordered_map>
50 static std::unordered_map<std::string, int>
const obs_map;
52 std::unordered_map<std::string, int>
const &
get_obs_map()
const override {
84 [
this]() {
return m_instance->get_lattice().get_grid_dimensions(); }},
88 [
this]() {
return static_cast<int>(
m_instance->get_seed()); }},
94 throw std::domain_error(
"Parameter 'rng_state' must be >= 0");
105 {
"kinematic_viscosity",
111 {
"ext_force_density",
142 void load_checkpoint(std::filesystem::path
const &path,
int mode);
143 void save_checkpoint(std::filesystem::path
const &path,
int mode);
144 std::vector<Variant> get_average_pressure_tensor()
const;
145 Variant get_boundary_force_from_shape(std::vector<int>
const &raster)
const;
146 Variant get_boundary_force()
const;
LBWalberlaBase provides the public interface of the LB waLBerla bridge.
Vector implementation and trait types for boost qvm interoperability.
std::unordered_map< std::string, double > units_map
void add_parameters(std::vector< AutoParameter > &¶ms)
virtual void parallel_try_catch(std::function< void()> const &cb) const =0
Type to indicate no value in Variant.
Context * context() const
Responsible context.
std::string_view name() const
void make_instance(VariantMap const ¶ms) override
void make_instance(VariantMap const ¶ms) override
auto get_lb_params() const
void do_construct(VariantMap const ¶ms) override
auto get_lb_fluid() const
::LatticeModel::units_map get_lattice_to_md_units_conversion() const override
Variant do_call_method(std::string const &name, VariantMap const ¶ms) override
std::shared_ptr<::LB::LBWalberlaParams > m_lb_params
std::unordered_map< std::string, int > const & get_obs_map() const override
std::shared_ptr< ::LBWalberlaBase > m_instance
auto serialize_vtk_writers() const
std::shared_ptr< LatticeWalberla > m_lattice
T get_value(Variant const &v)
Extract value of specific type T from a Variant.
std::unordered_map< std::string, Variant > VariantMap
static SteepestDescentParameters params
Currently active steepest descent instance.
static constexpr const ReadOnly read_only
Recursive variant implementation.