ABACUS develop
Atomic-orbital Based Ab-initio Computation at UStc
Loading...
Searching...
No Matches
fp_energy.h
Go to the documentation of this file.
1#ifndef FP_ENERGY_H
2#define FP_ENERGY_H
3
4#include <vector>
5
10namespace elecstate
11{
16struct fenergy
17{
18 double etot = 0.0;
19 double etot_old = 0.0;
20 double etot_delta = 0.0; // the difference of total energy between two steps = etot - etot_old
21
22 double eband = 0.0;
23 double deband = 0.0;
24 double etxc = 0.0;
25 double etxcc = 0.0;
26 double vtxc = 0.0;
27 double ewald_energy = 0.0;
28 double hartree_energy = 0.0;
29 double demet = 0.0;
30 double descf = 0.0;
31 double exx = 0.0;
32
33 double efield = 0.0;
34 double gatefield = 0.0;
35 double evdw = 0.0;
36
37 double etot_harris = 0.0;
38 double deband_harris = 0.0;
39
40 double esol_el = 0.0;
41 double esol_cav = 0.0;
42
43 double edftu = 0.0;
44 double edeepks_scf = 0.0;
45 double edeepks_delta = 0.0;
46
47 double escon = 0.0;
48
49 double ekinetic = 0.0;
50 double e_local_pp = 0.0;
51
52 double calculate_etot();
53 double calculate_harris();
54 void clear_all();
55 void print_all() const;
56};
57
62struct efermi
63{
64 double ef = 0.0;
65 double ef_up = 0.0;
66 double ef_dw = 0.0;
67 bool two_efermi = false;
68 void set_efval(const int& is, const double& ef_in);
69 double get_efval(const int& is) const;
70 std::vector<double> get_all_ef() const;
71};
72
73} // namespace elecstate
74#endif
Definition cal_dm.h:10
Fermi energies.
Definition fp_energy.h:63
bool two_efermi
Definition fp_energy.h:67
double ef_up
spin up Fermi energy
Definition fp_energy.h:65
double ef_dw
spin down Fermi energy
Definition fp_energy.h:66
void set_efval(const int &is, const double &ef_in)
set efermi of a specific spin
Definition fp_energy.cpp:67
double ef
Fermi energy.
Definition fp_energy.h:64
std::vector< double > get_all_ef() const
get all fermi energies for all spins
Definition fp_energy.cpp:114
double get_efval(const int &is) const
get the value of fermi of a specific spin
Definition fp_energy.cpp:91
Definition fp_energy.h:17
double etot_delta
Definition fp_energy.h:20
double escon
DeePKS energy.
Definition fp_energy.h:47
double ewald_energy
Ewald energy (ion-ion)
Definition fp_energy.h:27
double etot
the total free energy
Definition fp_energy.h:18
double etxcc
the nlcc exchange and correlation
Definition fp_energy.h:25
double exx
the exact exchange energy.
Definition fp_energy.h:31
void clear_all()
set all energies to zero
Definition fp_energy.cpp:32
double edeepks_scf
Definition fp_energy.h:44
double ekinetic
Definition fp_energy.h:49
double esol_el
the implicit solvation energy Ael
Definition fp_energy.h:40
double etot_old
old total free energy
Definition fp_energy.h:19
double descf
correction by the difference of rho
Definition fp_energy.h:30
double etot_harris
total energy of harris functional
Definition fp_energy.h:37
void print_all() const
print all energies
Definition fp_energy.cpp:40
double gatefield
correction energy for gatefield
Definition fp_energy.h:34
double edftu
DFT+U energy.
Definition fp_energy.h:43
double vtxc
v_xc(r) = \frac{\delta E_xc}{\delta n} exchange and correlation potential
Definition fp_energy.h:26
double calculate_harris()
calculate etot_harris
Definition fp_energy.cpp:24
double hartree_energy
Hartree energy (electron-electron)
Definition fp_energy.h:28
double demet
correction for metals or entropy (-TS)
Definition fp_energy.h:29
double deband_harris
correction for harris energy
Definition fp_energy.h:38
double deband
correction for variational energy
Definition fp_energy.h:23
double etxc
E_xc[n(r)] exchange and correlation energy.
Definition fp_energy.h:24
double edeepks_delta
DeePKS energy difference.
Definition fp_energy.h:45
double evdw
the vdw energy
Definition fp_energy.h:35
double eband
the band energy
Definition fp_energy.h:22
double calculate_etot()
ion-electron interaction energy contributed by local pp, used in OFDFT
Definition fp_energy.cpp:16
double esol_cav
the implicit solvation energy Acav
Definition fp_energy.h:41
double e_local_pp
kinetic energy, used in OFDFT
Definition fp_energy.h:50
double efield
dipole potential in surface calculations
Definition fp_energy.h:33