ESPResSo
Extensible Simulation Package for Research on Soft Matter Systems
Loading...
Searching...
No Matches
Coulomb Namespace Reference

Namespaces

namespace  traits
 

Classes

class  Actor
 
struct  EventOnObservableCalc
 
struct  LongRangeEnergy
 
struct  LongRangeForce
 
struct  LongRangePressure
 
struct  ShortRangeCutoff
 
struct  ShortRangeEnergyKernel
 
struct  ShortRangeForceCorrectionsKernel
 
struct  ShortRangeForceKernel
 
struct  ShortRangePressureKernel
 
struct  Solver
 

Typedefs

using ElectrostaticsActor = std::variant< std::shared_ptr< DebyeHueckel >, std::shared_ptr< CoulombP3M >, std::shared_ptr< ElectrostaticLayerCorrection >, std::shared_ptr< CoulombMMM1D >, std::shared_ptr< CoulombScafacos >, std::shared_ptr< ReactionField > >
 
using ElectrostaticsExtension = std::variant< std::shared_ptr< ICCStar > >
 

Functions

void check_charge_neutrality (System::System const &system, double relative_tolerance)
 Check if the system is charge-neutral.
 
Solver const & get_coulomb ()
 
static auto calc_charge_excess_ratio (std::vector< double > const &charges)
 Compute the net charge rescaled by the smallest non-zero charge.
 

Typedef Documentation

◆ ElectrostaticsActor

using Coulomb::ElectrostaticsActor = typedef std::variant<std::shared_ptr<DebyeHueckel>, std::shared_ptr<CoulombP3M>, std::shared_ptr<ElectrostaticLayerCorrection>, std::shared_ptr<CoulombMMM1D>, std::shared_ptr<CoulombScafacos>, std::shared_ptr<ReactionField> >

Definition at line 47 of file coulomb.hpp.

◆ ElectrostaticsExtension

using Coulomb::ElectrostaticsExtension = typedef std::variant<std::shared_ptr<ICCStar> >

Definition at line 59 of file coulomb.hpp.

Function Documentation

◆ calc_charge_excess_ratio()

static auto Coulomb::calc_charge_excess_ratio ( std::vector< double > const &  charges)
static

Compute the net charge rescaled by the smallest non-zero charge.

Definition at line 270 of file coulomb.cpp.

Referenced by check_charge_neutrality().

◆ check_charge_neutrality()

void Coulomb::check_charge_neutrality ( System::System const &  system,
double  relative_tolerance 
)

Check if the system is charge-neutral.

Definition at line 287 of file coulomb.cpp.

References calc_charge_excess_ratio(), System::System::cell_structure, comm_cart, and this_node.

Referenced by Coulomb::Actor< Class >::sanity_checks_charge_neutrality().

◆ get_coulomb()

Solver const & Coulomb::get_coulomb ( )