![]() |
ESPResSo
Extensible Simulation Package for Research on Soft Matter Systems
|
#include <elc.hpp>
Inheritance diagram for ElectrostaticLayerCorrection:
Collaboration diagram for ElectrostaticLayerCorrection:Public Types | |
| using | BaseSolver = std::variant< std::shared_ptr< CoulombP3M > > |
Public Attributes | |
| elc_data | elc |
| BoxGeometry * | m_box_geo |
| BaseSolver | base_solver |
| Electrostatics solver that is adapted. | |
Public Attributes inherited from Coulomb::Actor< ElectrostaticLayerCorrection > | |
| double | prefactor |
| Electrostatics prefactor. | |
| double | charge_neutrality_tolerance |
| Relative tolerance for the charge excess during neutrality checks. | |
Additional Inherited Members | |
Static Public Attributes inherited from Coulomb::Actor< ElectrostaticLayerCorrection > | |
| static auto constexpr | charge_neutrality_tolerance_default |
Protected Member Functions inherited from System::Leaf< Class > | |
| auto & | get_system () |
| auto & | get_system () const |
Protected Attributes inherited from System::Leaf< Class > | |
| std::weak_ptr< System > | m_system |
| using ElectrostaticLayerCorrection::BaseSolver = std::variant<std::shared_ptr<CoulombP3M> > |
| ElectrostaticLayerCorrection::ElectrostaticLayerCorrection | ( | elc_data && | parameters, |
| BaseSolver && | solver | ||
| ) |
| void ElectrostaticLayerCorrection::add_long_range_forces | ( | ParticleRange const & | particles | ) | const |
Definition at line 1245 of file elc.cpp.
References base_solver, ParticlePropertyRange::charge_range(), elc_data::dielectric_contrast_on, elc_data::dielectric_layers_self_forces(), elc, System::Leaf< Class >::get_system(), ParticlePropertyRange::pos_range(), and stream.
|
inline |
Add short-range pair force corrections.
Definition at line 332 of file elc.hpp.
References base_solver, elc_data::dielectric_contrast_on, elc_data::dielectric_layers_contribution(), elc, m_box_geo, Utils::Vector< T, N >::norm(), and stream.
|
inline |
| double ElectrostaticLayerCorrection::long_range_energy | ( | ParticleRange const & | particles | ) | const |
Definition at line 1203 of file elc.cpp.
References base_solver, ParticlePropertyRange::charge_range(), elc_data::dielectric_contrast_on, elc_data::dielectric_layers_self_energy(), elc, System::Leaf< Class >::get_system(), ParticlePropertyRange::pos_range(), and stream.
|
inline |
Definition at line 203 of file elc.hpp.
References elc_data::dielectric_contrast_on, elc, System::Leaf< Class >::m_system, and Coulomb::Actor< ElectrostaticLayerCorrection >::sanity_checks_charge_neutrality().
|
inline |
|
inline |
Definition at line 238 of file elc.hpp.
References elc_data::dielectric_contrast_on, and elc.
|
inline |
|
inline |
|
inline |
Calculate short-range pair energy correction.
Definition at line 278 of file elc.hpp.
References base_solver, elc_data::dielectric_contrast_on, elc_data::dielectric_layers_contribution(), elc, m_box_geo, Utils::Vector< T, N >::norm(), and stream.
|
inline |
Calculate short-range pair energy correction.
Definition at line 305 of file elc.hpp.
References base_solver, elc_data::dielectric_contrast_on, elc_data::dielectric_layers_contribution(), elc, m_box_geo, Utils::Vector< T, N >::norm(), and stream.
|
inline |
Definition at line 256 of file elc.hpp.
References Coulomb::Actor< ElectrostaticLayerCorrection >::sanity_checks_charge_neutrality().
|
inline |
Veto real-space cutoff values that are incompatible with ELC.
When ELC is used with dielectric contrasts, the short-range cutoff needs to be smaller than the gap size to allow placement of the image charges.
Definition at line 269 of file elc.hpp.
References elc_data::dielectric_contrast_on, elc, elc_data::gap_size, and stream.
| BaseSolver ElectrostaticLayerCorrection::base_solver |
Electrostatics solver that is adapted.
Definition at line 199 of file elc.hpp.
Referenced by add_long_range_forces(), add_pair_force_corrections(), long_range_energy(), pair_energy_correction(), and pair_energy_correction().
| elc_data ElectrostaticLayerCorrection::elc |
Definition at line 195 of file elc.hpp.
Referenced by add_long_range_forces(), add_pair_force_corrections(), long_range_energy(), on_activation(), on_cell_structure_change(), pair_energy_correction(), pair_energy_correction(), and veto_r_cut().
| BoxGeometry* ElectrostaticLayerCorrection::m_box_geo |
Definition at line 196 of file elc.hpp.
Referenced by add_pair_force_corrections(), pair_energy_correction(), and pair_energy_correction().