![]() |
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/Vector.hpp>#include <utils/math/tensor_product.hpp>#include <cstdio>#include <optional>#include <span>#include <string>#include <tuple>#include <variant>
Include dependency graph for pressure_inline.hpp:
This graph shows which files directly or indirectly include this file: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, BondedInteractionsMap const &bonded_ias, 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. | |
| std::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) |
| std::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) |
| std::optional< Utils::Matrix< double, 3, 3 > > | calc_bonded_pressure_tensor (Bonded_IA_Parameters const &iaparams, Particle const &p1, std::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 172 of file pressure_inline.hpp.
References Particle::is_virtual(), Observable_stat::kinetic_lin, 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. | |
| bonded_ias | bonded interaction kernels. | |
| kernel_forces | Coulomb force kernel. | |
| kernel_pressure | Coulomb pressure kernel. | |
| [in,out] | obs_pressure | pressure observable. |
Definition at line 58 of file pressure_inline.hpp.
References Observable_stat::add_non_bonded_contribution(), calc_central_radial_force(), calc_non_central_force(), Observable_stat::coulomb, do_nonbonded(), ParticleForce::f, Dipoles::get_dipoles(), Particle::mol_id(), Particle::q(), Utils::tensor_product(), thole_pair_force(), and Particle::type().
Referenced by System::System::calculate_pressure().
|
inline |
Definition at line 149 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 117 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 103 of file pressure_inline.hpp.
References calc_bond_pair_force(), BoxGeometry::get_mi_vector(), pair_force(), Particle::pos(), and Utils::tensor_product().
Referenced by calc_bonded_pressure_tensor().