void kernel(std::vector< Particle * > const &particles)
ParticleCoupling(LBThermostat const &thermostat, LB::Solver &lb, BoxGeometry const &box_geo, LocalBox const &local_box)
Utils::Vector3d get_noise_term(Particle const &p) const
Utils::Vector3d lb_drag_force(LB::Solver const &lb, double lb_gamma, Particle const &p, Utils::Vector3d const &shifted_pos)
Calculate drag force on a single particle.
bool in_local_halo(LocalBox const &local_box, Utils::Vector3d const &pos, double agrid)
Check if a position is within the local LB domain plus halo.
std::vector< Utils::Vector3d > positions_in_halo(Utils::Vector3d const &pos, BoxGeometry const &box_geo, LocalBox const &local_box, double agrid)
Return a vector of positions shifted by +,- box length in each coordinate.
Struct holding all information for one particle.
auto const & propagation() const