Skip to content

Commit 0733e2d

Browse files
authored
Test: Fix the script for testing deepks_bandgap>1. (#6604)
* Add a value check for deepks_bandgap>0. * Fix the test script for deepks_bandgap>1.
1 parent 1f86285 commit 0733e2d

File tree

6 files changed

+35
-31
lines changed

6 files changed

+35
-31
lines changed

docs/advanced/input_files/input-main.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2310,7 +2310,7 @@ Warning: this function is not robust enough for the current version. Please try
23102310
- 0: Don't include bandgap label
23112311
- 1: Include target bandgap label (see [deepks\_band\_range](#deepks_band_range) for more details)
23122312
- 2: Include multiple bandgap label (see [deepks\_band\_range](#deepks_band_range) for more details)
2313-
- 3: For systems containing H atoms only, HOMO is defined as the max occupation expect H atoms and the bandgap label is the energy between HOMO and (HOMO + 1)
2313+
- 3: Used for systems containing H atoms. Here HOMO is defined as the max occupation except H atoms and the bandgap label is the energy between HOMO and (HOMO + 1)
23142314
- **Default**: 0
23152315

23162316
### deepks_band_range

source/source_lcao/module_deepks/LCAO_deepks_interface.cpp

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -305,6 +305,10 @@ void LCAO_Deepks_Interface<TK, TR>::out_deepks_labels(const double& etot,
305305

306306
// Calculate the bandgap for each k point
307307
ModuleBase::matrix o_tot(nks, range);
308+
if (nocc + PARAM.inp.deepks_band_range[0] < 0 || nocc + PARAM.inp.deepks_band_range[1] >= ekb.nc)
309+
{
310+
ModuleBase::WARNING_QUIT("out_deepks_labels", "DeePKS band index out of range! Please check if `deepks_band_range` is reasonable!");
311+
}
308312
for (int iks = 0; iks < nks; ++iks)
309313
{
310314
int ib = 0;

tests/09_DeePKS/103_NO_GO_deepks_bandgap_3/result.ref

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ deepks_desc 2.297551
44
deepks_dm_eig 10.742704784158393
55
deepks_e_label 17.152853550955058
66
deepks_edelta 0.09792547271228358
7-
deepks_o_label 0.29172556580830844
8-
deepks_odelta 9.932412417318348e-05
9-
deepks_oprec -0.45169372175959677
7+
deepks_o_label 0.08594440507271628
8+
deepks_odelta 0.0013346191380371325
9+
deepks_oprec 0.01788986161267927
1010
totaltimeref 1.22
Lines changed: 14 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -1,32 +1,32 @@
11
ATOMIC_SPECIES
2-
Si 1.00 Si_ONCV_PBE-1.2.upf
3-
O 1.00 O_ONCV_PBE-1.2.upf
2+
H 1.00 H_ONCV_PBE-1.0.upf
3+
O 1.00 O_ONCV_PBE-1.0.upf
44

55

66
LATTICE_CONSTANT
77
1
88

99
LATTICE_VECTORS
10-
15 0 0
11-
0 15 0
12-
0 0 9
10+
15 0 0
11+
0 15 0
12+
0 0 15
1313

1414
ATOMIC_POSITIONS
15-
Direct # Cartesian(Unit is LATTICE_CONSTANT)
15+
Cartesian # Cartesian(Unit is LATTICE_CONSTANT)
1616

17-
Si
17+
H
1818
0.0
19-
1
20-
0.5 0.5 0 0 0 0
19+
2
20+
2.451268787740 18.304568063522 29.094778093001 0 0 0
21+
0.634768813069 17.692018052980 31.090158495369 0 0 0
2122
O
2223
0.0
23-
2
24-
0.5 0.5 0.25 0 0 0
25-
0.5 0.5 0.75 0 0 0
24+
1
25+
0.953925982272 17.270156608314 29.386199785767 0 0 0
2626

2727
NUMERICAL_ORBITAL
28-
Si_gga_8au_60Ry_2s2p1d.orb
29-
O_gga_7au_60Ry_2s2p1d.orb
28+
H_gga_6au_60Ry_1s.orb
29+
O_gga_6au_60Ry_1s1p.orb
3030

3131
NUMERICAL_DESCRIPTOR
3232
../Model_ProjOrb/2au_20Ry_jle.orb
Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,10 @@
1-
etotref -959.2783700856231
2-
etotperatomref -319.7594566952
3-
deepks_desc 2.456992
4-
deepks_dm_eig 15.506898379534249
5-
deepks_e_label 35.25281724192405
6-
deepks_edelta 0.09772974729136052
7-
deepks_o_label 0.3368945080257191
8-
deepks_odelta 0.0014646771995326935
9-
deepks_oprec -1.2637665734018695
10-
totaltimeref 1.53
1+
etotref -463.0496320856034
2+
etotperatomref -154.3498773619
3+
deepks_desc 2.195131
4+
deepks_dm_eig 10.54665348088368
5+
deepks_e_label 17.016754013120217
6+
deepks_edelta 0.09796908127552584
7+
deepks_o_label 0.14114716003295213
8+
deepks_odelta 0.0031174723761221435
9+
deepks_oprec 0.16883858360329146
10+
totaltimeref 2.96

tests/integrate/tools/catch_deepks_properties.sh

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -111,9 +111,9 @@ process_many_npys() {
111111
# energy
112112
process_npy "$mode" "abs" "etot" "" "deepks_e_label$suffix" "$output_file"
113113
process_npy "$mode" "delta" "etot" "ebase" "deepks_edelta$suffix" "$output_file"
114-
115-
# For deepks_bandgap = 1
116-
if ! test -z "$deepks_bandgap" && [ $deepks_bandgap == 1 ]; then
114+
115+
# For deepks_bandgap > 0
116+
if ! test -z "$deepks_bandgap" && [ $deepks_bandgap -gt 0 ]; then
117117
process_npy "$mode" "abs" "otot" "" "deepks_o_label$suffix" "$output_file"
118118
process_npy "$mode" "delta" "otot" "obase" "deepks_odelta$suffix" "$output_file"
119119
process_npy "$mode" "numpy" "orbpre" "" "deepks_oprec$suffix" "$output_file"

0 commit comments

Comments
 (0)