| n2p2 - A neural network potential package
    | 
A screening functions for use with electrostatics. More...
#include <ScreeningFunction.h>

| Public Member Functions | |
| ScreeningFunction () | |
| Constructor, initializes to CoreFunction::Type::POLY2. | |
| void | setCoreFunction (CoreFunction::Type const type) | 
| Set functional form of transition region. | |
| void | setCoreFunction (std::string const type) | 
| Set functional form of transition region. | |
| void | setInnerOuter (double inner, double outer) | 
| Set inner and outer limit of transition region. | |
| CoreFunction::Type | getCoreFunctionType () const | 
| Getter for #type. | |
| double | getInner () const | 
| Getter for inner. | |
| double | getOuter () const | 
| Getter for outer. | |
| void | changeLengthUnits (double const conv) | 
| Change length units of screening function. | |
| double | f (double r) const | 
| Screening function \(f_\text{screen}\). | |
| double | df (double r) const | 
| Derivative of screening function \(\frac{d f_\text{screen}}{d r}\). | |
| void | fdf (double r, double &fr, double &dfr) const | 
| Calculate screening function and derivative at once. | |
| std::vector< std::string > | info () const | 
| Get string with information of screening function. | |
| Private Attributes | |
| double | inner | 
| Inner radius where transition region starts. | |
| double | outer | 
| Outer radius where transition region ends. | |
| double | scale | 
| Inverse width. | |
| CoreFunction | core | 
| Core function to be used in the transition region. | |
A screening functions for use with electrostatics.
Definition at line 26 of file ScreeningFunction.h.
| ScreeningFunction::ScreeningFunction | ( | ) | 
Constructor, initializes to CoreFunction::Type::POLY2.
Definition at line 24 of file ScreeningFunction.cpp.
References core, inner, outer, nnp::CoreFunction::POLY2, and scale.
| 
 | inline | 
Set functional form of transition region.
| [in] | type | Type of core function to use. | 
Definition at line 113 of file ScreeningFunction.h.
References core.
| 
 | inline | 
Set functional form of transition region.
| [in] | typeString | Type (string version) of core function to use. | 
Definition at line 120 of file ScreeningFunction.h.
References core.
| void ScreeningFunction::setInnerOuter | ( | double | inner, | 
| double | outer ) | 
Set inner and outer limit of transition region.
| [in] | inner | Inner radius where transition region begins. | 
| [in] | outer | Outer radius where transition region ends. | 
Definition at line 31 of file ScreeningFunction.cpp.
| 
 | inline | 
Getter for #type.
Definition at line 127 of file ScreeningFunction.h.
References core.
| 
 | inline | 
Getter for inner.
Definition at line 132 of file ScreeningFunction.h.
References inner.
| 
 | inline | 
Getter for outer.
Definition at line 133 of file ScreeningFunction.h.
References outer.
Referenced by nnp::Structure::calculateElectrostaticEnergyDerivatives(), and nnp::Structure::calculateScreeningEnergy().

| void ScreeningFunction::changeLengthUnits | ( | double const | conv | ) | 
| 
 | inline | 
Screening function \(f_\text{screen}\).
| [in] | r | Radius argument. | 
Definition at line 135 of file ScreeningFunction.h.
References core, inner, outer, and scale.
Referenced by nnp::Structure::calculateElectrostaticEnergyDerivatives(), and nnp::Structure::calculateScreeningEnergy().

| 
 | inline | 
Derivative of screening function \(\frac{d f_\text{screen}}{d r}\).
| [in] | r | Radius argument. | 
Definition at line 142 of file ScreeningFunction.h.
References core, inner, outer, and scale.
Referenced by nnp::Structure::calculateElectrostaticEnergyDerivatives().

| 
 | inline | 
Calculate screening function and derivative at once.
| [in] | r | Radius argument. | 
| [out] | fr | Screening function value. | 
| [out] | dfr | Value of screening function derivative. | 
Definition at line 148 of file ScreeningFunction.h.
| vector< string > ScreeningFunction::info | ( | ) | const | 
Get string with information of screening function.
Definition at line 52 of file ScreeningFunction.cpp.
References core, inner, outer, and nnp::strpr().

| 
 | private | 
Inner radius where transition region starts.
Definition at line 99 of file ScreeningFunction.h.
Referenced by changeLengthUnits(), df(), f(), fdf(), getInner(), info(), ScreeningFunction(), and setInnerOuter().
| 
 | private | 
Outer radius where transition region ends.
Definition at line 101 of file ScreeningFunction.h.
Referenced by changeLengthUnits(), df(), f(), fdf(), getOuter(), info(), ScreeningFunction(), and setInnerOuter().
| 
 | private | 
Inverse width.
Definition at line 103 of file ScreeningFunction.h.
Referenced by changeLengthUnits(), df(), f(), fdf(), ScreeningFunction(), and setInnerOuter().
| 
 | private | 
Core function to be used in the transition region.
Definition at line 105 of file ScreeningFunction.h.
Referenced by df(), f(), fdf(), getCoreFunctionType(), info(), ScreeningFunction(), setCoreFunction(), and setCoreFunction().