22#include "system/Leaf.hpp"
51 template <
typename LB,
class... Args>
void set(Args... args);
57 template <
class Connector>
void connect(Connector &&connector)
const {
58 assert(impl !=
nullptr);
59 connector(*this->impl);
102 std::unique_ptr<Implementation> impl;
Abstract class that represents a component of the system.
void veto_time_step(double time_step) const
Check if a MD time step is compatible with the EK tau.
void on_node_grid_change()
void propagate()
Propagate the EK species.
void sanity_checks() const
Perform EK parameter checks.
void connect(Connector &&connector) const
Connector to the implementation internal state.
void on_cell_structure_change()
void set(Args... args)
Set the EK solver.
void init() const
Perform a full initialization of the lattice-Boltzmann system.
void veto_boxl_change() const
bool is_ready_for_propagation() const
Return true if an EK solver can be propagated.
double get_tau() const
Get the EK time step.
void on_timestep_change()
void on_temperature_change()
void veto_kT(double kT) const
Check if a thermostat is compatible with the EK temperature.
void reset()
Remove the EK solver.
bool is_solver_set() const
Return true if an EK solver is active.