#include <esolver_dp.h>
◆ ESolver_DP()
ModuleESolver::ESolver_DP::ESolver_DP |
( |
const std::string & |
pot_file | ) |
|
|
inline |
◆ after_all_runners()
void ESolver_DP::after_all_runners |
( |
UnitCell & |
ucell | ) |
|
|
overridevirtual |
Prints the final total energy of the DP model to the output file.
This function prints the final total energy of the DP model in eV to the output file along with some formatting.
Implements ModuleESolver::ESolver.
◆ before_all_runners()
Initialize the DP solver with given input parameters and unit cell.
- Parameters
-
inp | input parameters |
cell | unitcell information |
Implements ModuleESolver::ESolver.
◆ cal_energy()
double ESolver_DP::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_DP::runner |
( |
UnitCell & |
cell, |
|
|
const int |
istep |
|
) |
| |
|
overridevirtual |
Run the DP 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_DP::type_map |
( |
const UnitCell & |
ucell | ) |
|
|
private |
determine the type map of DP model
- Parameters
-
ucell | unitcell information |
◆ aparam
std::vector<double> ModuleESolver::ESolver_DP::aparam = {} |
|
private |
atomic parameter for dp potential: natoms x dim_aparam
◆ atype
std::vector<int> ModuleESolver::ESolver_DP::atype = {} |
|
private |
atom type corresponding to DP model
◆ dp_file
std::string ModuleESolver::ESolver_DP::dp_file |
|
private |
DeePMD related variables for ESolver_DP class.
These variables are related to the DeePMD method and are used in the ESolver_DP class to compute the potential energy and forces.
- Note
- These variables are only defined if the __DPMD preprocessor macro is defined. Variables for storing simulation data in ESolver_DP class
These variables are used in the ESolver_DP class to store simulation data such as atomic positions, types, and the potential energy and forces. directory of DP model file
◆ dp_force
◆ dp_potential
double ModuleESolver::ESolver_DP::dp_potential = 0.0 |
|
private |
computed potential energy
◆ dp_virial
◆ fparam
std::vector<double> ModuleESolver::ESolver_DP::fparam = {} |
|
private |
frame parameter for dp potential: dim_fparam
◆ rescaling
double ModuleESolver::ESolver_DP::rescaling = 1.0 |
|
private |
rescaling factor for DP model
The documentation for this class was generated from the following files:
- /home/runner/work/abacus-develop/abacus-develop/source/source_esolver/esolver_dp.h
- /home/runner/work/abacus-develop/abacus-develop/source/source_esolver/esolver_dp.cpp