ESPResSo
Extensible Simulation Package for Research on Soft Matter Systems
|
#include "config/config.hpp"
#include "bonded_interactions/bonded_interaction_data.hpp"
#include "magnetostatics/dipoles.hpp"
#include "nonbonded_interactions/nonbonded_interaction_data.hpp"
#include "BoxGeometry.hpp"
#include "Observable_stat.hpp"
#include "Particle.hpp"
#include "errorhandling.hpp"
#include "exclusions.hpp"
#include "forces_inline.hpp"
#include <utils/Span.hpp>
#include <utils/Vector.hpp>
#include <utils/math/tensor_product.hpp>
#include <boost/optional.hpp>
#include <boost/variant.hpp>
#include <string>
#include <tuple>
Go to the source code of this file.
Functions | |
void | add_non_bonded_pair_virials (Particle const &p1, Particle const &p2, Utils::Vector3d const &d, double dist, IA_parameters const &ia_params, Coulomb::ShortRangeForceKernel::kernel_type const *kernel_forces, Coulomb::ShortRangePressureKernel::kernel_type const *kernel_pressure, Observable_stat &obs_pressure) |
Calculate non-bonded energies between a pair of particles. | |
boost::optional< Utils::Matrix< double, 3, 3 > > | calc_bonded_virial_pressure_tensor (Bonded_IA_Parameters const &iaparams, Particle const &p1, Particle const &p2, BoxGeometry const &box_geo, Coulomb::ShortRangeForceKernel::kernel_type const *kernel) |
boost::optional< Utils::Matrix< double, 3, 3 > > | calc_bonded_three_body_pressure_tensor (Bonded_IA_Parameters const &iaparams, Particle const &p1, Particle const &p2, Particle const &p3, BoxGeometry const &box_geo) |
boost::optional< Utils::Matrix< double, 3, 3 > > | calc_bonded_pressure_tensor (Bonded_IA_Parameters const &iaparams, Particle const &p1, Utils::Span< Particle * > partners, BoxGeometry const &box_geo, Coulomb::ShortRangeForceKernel::kernel_type const *kernel) |
void | add_kinetic_virials (Particle const &p1, Observable_stat &obs_pressure) |
Calculate kinetic pressure (aka energy) for one particle. | |
|
inline |
Calculate kinetic pressure (aka energy) for one particle.
[in] | p1 | particle for which to calculate pressure |
[out] | obs_pressure | pressure observable |
Definition at line 171 of file pressure_inline.hpp.
References Particle::is_virtual(), Observable_stat::kinetic, Particle::mass(), and Particle::v().
Referenced by System::System::calculate_pressure().
|
inline |
Calculate non-bonded energies between a pair of particles.
p1 | pointer to particle 1. | |
p2 | pointer to particle 2. | |
d | vector between p1 and p2. | |
dist | distance between p1 and p2. | |
ia_params | non-bonded interaction kernels. | |
kernel_forces | Coulomb force kernel. | |
kernel_pressure | Coulomb pressure kernel. | |
[in,out] | obs_pressure | pressure observable. |
Definition at line 57 of file pressure_inline.hpp.
References Observable_stat::add_non_bonded_contribution(), calc_central_radial_charge_force(), calc_central_radial_force(), calc_non_central_force(), Observable_stat::coulomb, do_nonbonded(), Utils::Span< T >::empty(), ParticleForce::f, force, Dipoles::get_dipoles(), Particle::mol_id(), Particle::q(), Utils::tensor_product(), and Particle::type().
Referenced by System::System::calculate_pressure().
|
inline |
Definition at line 148 of file pressure_inline.hpp.
References calc_bonded_three_body_pressure_tensor(), calc_bonded_virial_pressure_tensor(), number_of_partners(), and runtimeWarningMsg.
Referenced by System::System::calculate_pressure().
|
inline |
Definition at line 116 of file pressure_inline.hpp.
References calc_bonded_three_body_force(), BoxGeometry::get_mi_vector(), Particle::pos(), runtimeWarningMsg, and Utils::tensor_product().
Referenced by calc_bonded_pressure_tensor().
|
inline |
Definition at line 100 of file pressure_inline.hpp.
References calc_bond_pair_force(), force, BoxGeometry::get_mi_vector(), Particle::pos(), and Utils::tensor_product().
Referenced by calc_bonded_pressure_tensor().