ESPResSo
Extensible Simulation Package for Research on Soft Matter Systems
|
Force calculation. More...
#include "config/config.hpp"
#include "forces.hpp"
#include "BoxGeometry.hpp"
#include "actor/visitors.hpp"
#include "bond_breakage/bond_breakage.hpp"
#include "bonded_interactions/bonded_interaction_data.hpp"
#include "bonded_interactions/thermalized_bond_kernel.hpp"
#include "electrostatics/coulomb_inline.hpp"
#include "immersed_boundary/ibm_tribend.hpp"
#include "immersed_boundary/ibm_triel.hpp"
#include "magnetostatics/dipoles_inline.hpp"
#include "nonbonded_interactions/bmhtf-nacl.hpp"
#include "nonbonded_interactions/buckingham.hpp"
#include "nonbonded_interactions/gaussian.hpp"
#include "nonbonded_interactions/gay_berne.hpp"
#include "nonbonded_interactions/hat.hpp"
#include "nonbonded_interactions/hertzian.hpp"
#include "nonbonded_interactions/lj.hpp"
#include "nonbonded_interactions/ljcos.hpp"
#include "nonbonded_interactions/ljcos2.hpp"
#include "nonbonded_interactions/ljgen.hpp"
#include "nonbonded_interactions/morse.hpp"
#include "nonbonded_interactions/nonbonded_interaction_data.hpp"
#include "nonbonded_interactions/nonbonded_tab.hpp"
#include "nonbonded_interactions/smooth_step.hpp"
#include "nonbonded_interactions/soft_sphere.hpp"
#include "nonbonded_interactions/thole.hpp"
#include "nonbonded_interactions/wca.hpp"
#include "object-in-fluid/oif_global_forces.hpp"
#include "object-in-fluid/oif_local_forces.hpp"
#include "dpd.hpp"
#include "Particle.hpp"
#include "bond_error.hpp"
#include "errorhandling.hpp"
#include "exclusions.hpp"
#include "thermostat.hpp"
#include <utils/Vector.hpp>
#include <boost/variant.hpp>
#include <optional>
#include <span>
#include <tuple>
Go to the source code of this file.
Force calculation.
Definition in file forces_inline.hpp.
|
inline |
Definition at line 447 of file forces_inline.hpp.
References BondBreakage::BondBreakage::check_and_handle_breakage(), BoxGeometry::get_mi_vector(), Particle::id(), and Particle::pos().
Referenced by System::System::calculate_forces().
|
inline |
Definition at line 426 of file forces_inline.hpp.
References calc_bonded_four_body_force(), and Particle::force().
|
inline |
Definition at line 378 of file forces_inline.hpp.
References calc_bonded_three_body_force(), and Particle::force().
|
inline |
Definition at line 320 of file forces_inline.hpp.
References calc_bond_pair_force(), Particle::force(), BoxGeometry::get_mi_vector(), npt_add_virial_force_contribution(), and Particle::pos().
|
inline |
Calculate non-bonded forces between a pair of particles and update their forces and torques.
[in,out] | p1 | particle 1. |
[in,out] | p2 | particle 2. |
[in] | d | vector between p1 and p2 . |
[in] | dist | distance between p1 and p2 . |
[in] | dist2 | distance squared between p1 and p2 . |
[in] | ia_params | non-bonded interaction kernels. |
[in] | thermostat | thermostat. |
[in] | box_geo | box geometry. |
[in] | bonded_ias | bonded interaction kernels. |
[in] | coulomb_kernel | Coulomb force kernel. |
[in] | dipoles_kernel | Dipolar force kernel. |
[in] | elc_kernel | ELC force correction kernel. |
Definition at line 188 of file forces_inline.hpp.
References calc_central_radial_force(), calc_non_central_force(), calc_opposing_force(), do_nonbonded(), Thermostat::Thermostat::dpd, dpd_pair_force(), Particle::force(), Particle::force_and_torque(), IA_parameters::max_cut, npt_add_virial_force_contribution(), Particle::q(), THERMO_DPD, Thermostat::Thermostat::thermo_switch, and thole_pair_force().
Referenced by System::System::calculate_forces().
|
inline |
Compute the bonded interaction force between particle pairs.
[in] | p1 | First particle. |
[in] | p2 | Second particle. |
[in] | iaparams | Bonded parameters for the interaction. |
[in] | dx | Vector between p1 and p2 . |
[in] | kernel | Coulomb force kernel. |
Definition at line 283 of file forces_inline.hpp.
References Particle::q().
Referenced by add_bonded_two_body_force(), and calc_bonded_virial_pressure_tensor().
|
inline |
Definition at line 401 of file forces_inline.hpp.
References BoxGeometry::get_mi_vector(), and Particle::pos().
Referenced by add_bonded_four_body_force().
|
inline |
Definition at line 353 of file forces_inline.hpp.
References BoxGeometry::get_mi_vector(), and Particle::pos().
Referenced by add_bonded_three_body_force(), and calc_bonded_three_body_pressure_tensor().
|
inline |
Definition at line 79 of file forces_inline.hpp.
References BMHTF_pair_force_factor(), buck_pair_force_factor(), gaussian_pair_force_factor(), hat_pair_force_factor(), hertzian_pair_force_factor(), lj_pair_force_factor(), ljcos2_pair_force_factor(), ljcos_pair_force_factor(), ljgen_pair_force_factor(), morse_pair_force_factor(), SmSt_pair_force_factor(), soft_pair_force_factor(), tabulated_pair_force_factor(), and wca_pair_force_factor().
Referenced by add_non_bonded_pair_force(), add_non_bonded_pair_virials(), and Constraints::ShapeBasedConstraint::force().
|
inline |
Definition at line 145 of file forces_inline.hpp.
References gb_pair_force(), and Particle::quat().
Referenced by add_non_bonded_pair_force(), add_non_bonded_pair_virials(), and Constraints::ShapeBasedConstraint::force().
|
inline |
Definition at line 159 of file forces_inline.hpp.
References ParticleForce::f, ParticleForce::torque, and vector_product().
Referenced by add_non_bonded_pair_force(), and Constraints::ShapeBasedConstraint::force().