Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
22 commits
Select commit Hold shift + click to select a range
d86f77d
add parameter deepks_out_base, when it is not "none", use a new esolv…
xuan112358 Jul 8, 2025
38df9fd
Modify Esolver_DoubleXC to calculate ebase,hbase,obase of output char…
xuan112358 Aug 1, 2025
73c3d6d
some output info which helps when debuging
xuan112358 Aug 1, 2025
b2fbadd
output files of deepks base; add some annotation for output
xuan112358 Aug 5, 2025
ee89934
fix bug of force output related to gevdm when deepks_scf = false but …
xuan112358 Aug 26, 2025
252b1cc
fix the bug of gamma only related to smatrix_k, add some annotations
xuan112358 Aug 29, 2025
325bd4f
update annotation
xuan112358 Sep 1, 2025
7aeb1fa
add conditions for p_hamit->refresh
xuan112358 Sep 1, 2025
23529a1
output force and stress base also in DeePKS_Labels_Elec
xuan112358 Sep 1, 2025
635f7c4
revert changes to INPUT in test
xuan112358 Sep 1, 2025
c074232
modify test for deepks_out_base
xuan112358 Sep 1, 2025
072ac71
Merge branch 'develop' into deepks_base_sync
xuan112358 Sep 3, 2025
a2a9a2f
Revert "some output info which helps when debuging" to delete output …
xuan112358 Sep 3, 2025
462a052
Merge branch 'develop' into deepks_base_sync
xuan112358 Sep 5, 2025
0322068
remove some output info for debugging in esolver_double_xc
xuan112358 Sep 5, 2025
8f49425
add some anotation for out_mat_hs used along with deepks_out_base
xuan112358 Sep 5, 2025
7cd9a3e
add esolver_double_xc in Makefile.Objects
xuan112358 Sep 5, 2025
4f8c2b9
Merge branch 'develop' into deepks_base_sync
xuan112358 Sep 5, 2025
5b564ca
Add deepks_out_base to input-main.md
xuan112358 Sep 5, 2025
a672a4a
add ifdef for __MLALGO in esolver_double_xc, in case of not compiling…
xuan112358 Sep 5, 2025
76c330f
Merge branch 'deepks_base_sync' of https://github.com/xuan112358/abac…
xuan112358 Sep 5, 2025
193e993
Update doc for deepks_out_base
xuan112358 Sep 6, 2025
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
8 changes: 8 additions & 0 deletions docs/advanced/input_files/input-main.md
Original file line number Diff line number Diff line change
Expand Up @@ -191,6 +191,7 @@
- [DeePKS](#deepks)
- [deepks\_out\_labels](#deepks_out_labels)
- [deepks\_out\_freq\_elec](#deepks_out_freq_elec)
- [deepks\_out\_base](#deepks_out_base)
- [deepks\_scf](#deepks_scf)
- [deepks\_equiv](#deepks_equiv)
- [deepks\_model](#deepks_model)
Expand Down Expand Up @@ -2173,6 +2174,13 @@ Warning: this function is not robust enough for the current version. Please try
- **Description**: When `deepks_out_freq_elec` is greater than 0, print labels and descriptors for DeePKS in OUT.${suffix}/DeePKS_Labels_Elec per `deepks_out_freq_elec` electronic iterations, with suffix `_e*` to distinguish different steps. Often used with `deepks_out_labels` equals 1.
- **Default**: 0

### deepks_out_base

- **Type**: String
- **Availability**: Numerical atomic orbital basis and `deepks_out_freq_elec` is greater than 0
- **Description**: Print labels and descriptors calculated by base functional ( determined by `deepks_out_base` ) and target functional ( determined by `dft_functional` ) for DeePKS in per `deepks_out_freq_elec` electronic iterations. The SCF process, labels and descriptors output of the target functional are all consistent with those when the target functional is used alone. The only additional output under this configuration is the labels of the base functional. Often used with `deepks_out_labels` equals 1.
- **Default**: None

### deepks_scf

- **Type**: Boolean
Expand Down
1 change: 1 addition & 0 deletions source/Makefile.Objects
Original file line number Diff line number Diff line change
Expand Up @@ -275,6 +275,7 @@ OBJS_ESOLVER_LCAO=esolver_ks_lcao.o\
esolver_gets.o\
lcao_others.o\
esolver_dm2rho.o\
esolver_double_xc.o\

OBJS_GINT=gint_old.o\
gint_gamma_env.o\
Expand Down
1 change: 1 addition & 0 deletions source/source_esolver/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -22,6 +22,7 @@ if(ENABLE_LCAO)
esolver_gets.cpp
lcao_others.cpp
esolver_dm2rho.cpp
esolver_double_xc.cpp
)
endif()

Expand Down
18 changes: 17 additions & 1 deletion source/source_esolver/esolver.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,7 @@
#include "source_io/module_parameter/parameter.h"
#ifdef __LCAO
#include "esolver_dm2rho.h"
#include "esolver_double_xc.h"
#include "esolver_gets.h"
#include "esolver_ks_lcao.h"
#include "esolver_ks_lcao_tddft.h"
Expand Down Expand Up @@ -197,14 +198,25 @@ ESolver* init_esolver(const Input_para& inp, UnitCell& ucell)
}
if (PARAM.globalv.gamma_only_local)
{
return new ESolver_KS_LCAO<double, double>();
if (PARAM.inp.deepks_out_base != "none")
{
return new ESolver_DoubleXC<double, double>();
}
else
{
return new ESolver_KS_LCAO<double, double>();
}
}
else if (PARAM.inp.nspin < 4)
{
if (PARAM.inp.dm_to_rho)
{
return new ESolver_DM2rho<std::complex<double>, double>();
}
else if (PARAM.inp.deepks_out_base != "none")
{
return new ESolver_DoubleXC<std::complex<double>, double>();
}
else
{
return new ESolver_KS_LCAO<std::complex<double>, double>();
Expand All @@ -216,6 +228,10 @@ ESolver* init_esolver(const Input_para& inp, UnitCell& ucell)
{
return new ESolver_DM2rho<std::complex<double>, std::complex<double>>();
}
else if (PARAM.inp.deepks_out_base != "none")
{
return new ESolver_DoubleXC<std::complex<double>, std::complex<double>>();
}
else
{
return new ESolver_KS_LCAO<std::complex<double>, std::complex<double>>();
Expand Down
Loading
Loading