faunus
Public Member Functions | List of all members
Faunus::Energy::ExternalAkesson Class Reference

Mean field electric potential from outside rectangular simulation box. More...

#include <externalpotential.h>

Inheritance diagram for Faunus::Energy::ExternalAkesson:
Inheritance graph
[legend]
Collaboration diagram for Faunus::Energy::ExternalAkesson:
Collaboration graph
[legend]

Public Member Functions

 ExternalAkesson (const json &j, const Space &spc)
 
double energy (const Change &change) override
 energy due to change
 
- Public Member Functions inherited from Faunus::Energy::ExternalPotential
 ExternalPotential (const json &j, const Space &spc)
 
- Public Member Functions inherited from Faunus::Energy::EnergyTerm
virtual void init ()
 reset and initialize
 
virtual void updateState (const Change &change)
 Update internal state to reflect change in e.g. Space. More...
 
virtual void force (PointVector &forces)
 update forces on all particles
 

Additional Inherited Members

- Public Types inherited from Faunus::Energy::EnergyTerm
enum  MonteCarloState { ACCEPTED, TRIAL, NONE }
 
- Public Attributes inherited from Faunus::Energy::EnergyTerm
MonteCarloState state = MonteCarloState::NONE
 
std::string name
 Meaningful name.
 
std::string citation_information
 Possible reference; may be left empty.
 
TimeRelativeOfTotal< std::chrono::microseconds > timer
 Timer for measuring speed.
 
- Protected Attributes inherited from Faunus::Energy::ExternalPotential
const Spacespace
 reference to simulation space
 
std::function< double(const Particle &)> externalPotentialFunc
 energy of single particle
 

Detailed Description

Mean field electric potential from outside rectangular simulation box.

Calculates the average potential outside a simulation box due to ion densities inside the box, extended to infinity. The update() function calculates the average charge densities in slits in the xy-plane and with a spacing dz. This is used to evaluate the electric potential along the z-axis by using the method by Torbjorn and CO (Mol. Phys. 1996, 87:407). To avoid energy drifts, update() returns the energy change brought about by updating the charge profile.

Date
Asljunga, December 2010.
Todo:
Split this into two classes; one with a static rho, and a derived that updates rho

The documentation for this class was generated from the following files: