#include <esolver_nep.h>
◆ ESolver_NEP()
| ModuleESolver::ESolver_NEP::ESolver_NEP |
( |
const std::string & |
pot_file | ) |
|
|
inline |
◆ after_all_runners()
| void ESolver_NEP::after_all_runners |
( |
UnitCell & |
ucell | ) |
|
|
overridevirtual |
Prints the final total energy of the NEP model to the output file.
This function prints the final total energy of the NEP model in eV to the output file along with some formatting.
Implements ModuleESolver::ESolver.
◆ before_all_runners()
Initialize the NEP solver with given input parameters and unit cell.
- Parameters
-
| inp | input parameters |
| cell | unitcell information |
Implements ModuleESolver::ESolver.
◆ cal_energy()
| double ESolver_NEP::cal_energy |
( |
| ) |
|
|
overridevirtual |
get the total energy without ion kinetic energy
- Parameters
-
- Returns
- total energy without ion kinetic energy
Implements ModuleESolver::ESolver.
◆ cal_force()
◆ cal_stress()
get the computed lattice virials
- Parameters
-
| stress | the computed lattice virials |
Implements ModuleESolver::ESolver.
◆ runner()
| void ESolver_NEP::runner |
( |
UnitCell & |
ucell, |
|
|
const int |
istep |
|
) |
| |
|
overridevirtual |
Run the NEP solver for a given ion/md step and unit cell.
- Parameters
-
| istep | the current ion/md step |
| cell | unitcell information |
Implements ModuleESolver::ESolver.
◆ type_map()
| void ModuleESolver::ESolver_NEP::type_map |
( |
const UnitCell & |
ucell | ) |
|
|
private |
determine the type map of NEP model
- Parameters
-
| ucell | unitcell information |
◆ _e
| std::vector<double> ModuleESolver::ESolver_NEP::_e |
|
private |
temporary storage for energy computation
◆ _f
| std::vector<double> ModuleESolver::ESolver_NEP::_f |
|
private |
temporary storage for force computation
◆ _v
| std::vector<double> ModuleESolver::ESolver_NEP::_v |
|
private |
temporary storage for virial computation
◆ atype
| std::vector<int> ModuleESolver::ESolver_NEP::atype = {} |
|
private |
atom type mapping for NEP model
◆ nep_file
| std::string ModuleESolver::ESolver_NEP::nep_file |
|
private |
NEP related variables for ESolver_NEP class.
These variables are related to the NEP method and are used in the ESolver_NEP class to compute the potential energy and forces.
- Note
- These variables are only defined if the __NEP preprocessor macro is defined. directory of NEP model file
◆ nep_force
◆ nep_potential
| double ModuleESolver::ESolver_NEP::nep_potential |
|
private |
computed potential energy
◆ nep_virial
The documentation for this class was generated from the following files:
- /home/runner/work/abacus-develop/abacus-develop/source/source_esolver/esolver_nep.h
- /home/runner/work/abacus-develop/abacus-develop/source/source_esolver/esolver_nep.cpp