ESPResSo
Extensible Simulation Package for Research on Soft Matter Systems
|
#include "BoxGeometry.hpp"
#include "LocalBox.hpp"
#include "Particle.hpp"
#include "ParticleRange.hpp"
#include "PropagationMode.hpp"
#include "cell_system/CellStructure.hpp"
#include "lb/Solver.hpp"
#include "thermostat.hpp"
#include <utils/Vector.hpp>
#include <utils/math/sqr.hpp>
#include <cmath>
#include <unordered_set>
#include <vector>
Go to the source code of this file.
Classes | |
class | LB::ParticleCoupling |
class | LB::CouplingBookkeeping |
Keep track of ghost particles that have already been coupled once. More... | |
Namespaces | |
namespace | LB |
Functions | |
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. | |
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 | LB::is_tracer (Particle const &p) |
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.
Definition at line 107 of file particle_coupling.cpp.
References in_local_domain().
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.
See section II.C. and eq. 9 in [2].
[in] | lb | The coupled fluid |
[in] | lb_gamma | The friction coefficient |
[in] | p | The coupled particle |
[in] | shifted_pos | The particle position in MD units with optional shift |
Definition at line 76 of file particle_coupling.cpp.
References LB::Solver::get_coupling_interpolated_velocity(), and lb_drag_force().
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.
Definition at line 163 of file particle_coupling.cpp.
References Utils::Vector< T, N >::broadcast(), BoxGeometry::folded_position(), in_box(), LocalBox::my_left(), LocalBox::my_right(), and positions_in_halo_impl().
Referenced by lb_tracers_add_particle_force_to_fluid().