1- add_executable (
2- test_deepks
3- main_deepks.cpp klist_1.cpp LCAO_deepks_test_prep.cpp LCAO_deepks_test.cpp
1+ file (COPY ${CMAKE_CURRENT_SOURCE_DIR } /support DESTINATION ${CMAKE_CURRENT_BINARY_DIR } )
2+ set (DEEPKS_UT_PP_ORB_DIR "${PROJECT_SOURCE_DIR } /tests/PP_ORB" )
3+ configure_file (
4+ ${CMAKE_CURRENT_SOURCE_DIR } /support/NO_GO_deepks_UT/STRU
5+ ${CMAKE_CURRENT_BINARY_DIR } /support/NO_GO_deepks_UT/STRU
6+ @ONLY
7+ )
8+ configure_file (
9+ ${CMAKE_CURRENT_SOURCE_DIR } /support/NO_KP_deepks_UT/STRU
10+ ${CMAKE_CURRENT_BINARY_DIR } /support/NO_KP_deepks_UT/STRU
11+ @ONLY
12+ )
13+
14+ set (DEEPKS_UNIT_COMMON_SOURCES
15+ deepks_test_prep.cpp
16+ deepks_test.cpp
417 ../../../source_cell/unitcell.cpp
518 ../../../source_cell/update_cell.cpp
619 ../../../source_cell/bcast_cell.cpp
@@ -11,6 +24,9 @@ add_executable(
1124 ../../../source_cell/read_stru.cpp
1225 ../../../source_cell/print_cell.cpp
1326 ../../../source_cell/read_atom_species.cpp
27+ ../../../source_cell/klist.cpp
28+ ../../../source_cell/parallel_kpoints.cpp
29+ ../../../source_cell/k_vector_utils.cpp
1430 ../../../source_cell/setup_nonlocal.cpp
1531 ../../../source_cell/pseudo.cpp
1632 ../../../source_cell/read_pp.cpp
@@ -22,14 +38,16 @@ add_executable(
2238 ../../../source_cell/sep.cpp
2339 ../../../source_cell/sep_cell.cpp
2440 ../../../source_pw/module_pwdft/soc.cpp
25-
2641 ../../../source_io/module_output/sparse_matrix.cpp
2742 ../../../source_estate/read_pseudo.cpp
2843 ../../../source_estate/cal_wfc.cpp
2944 ../../../source_estate/read_orb.cpp
3045 ../../../source_estate/cal_nelec_nband.cpp
3146 ../../../source_estate/module_dm/density_matrix.cpp
3247 ../../../source_estate/module_dm/density_matrix_io.cpp
48+ ../../center2_orb.cpp
49+ ../../center2_orb-orb11.cpp
50+ ../../center2_orb-orb21.cpp
3351 ../../module_hcontainer/base_matrix.cpp
3452 ../../module_hcontainer/hcontainer.cpp
3553 ../../module_hcontainer/atom_pair.cpp
@@ -40,24 +58,297 @@ add_executable(
4058 ../../module_operator_lcao/deepks_lcao.cpp
4159 ../../module_operator_lcao/operator_lcao.cpp
4260 ../../../source_hamilt/operator.cpp
61+ ../../../source_io/module_hs/cal_r_overlap_R.cpp
62+ ../../../source_io/module_hs/single_R_io.cpp
63+ ../../../source_io/module_hs/rr_sparse_writer.cpp
4364 ../../module_rt/td_folding.cpp
65+ mock_berryphase.cpp
4466 mock_tdinfo.cpp
4567)
4668
47- target_link_libraries (
48- test_deepks
49- PRIVATE
50- base device parameter deepks psi planewave neighbor container
51- orb gint numerical_atomic_orbitals
52- ${math_libs}
53- )
69+ add_library (deepks_unit_support OBJECT ${DEEPKS_UNIT_COMMON_SOURCES} )
5470
5571if (ENABLE_COVERAGE)
56- add_coverage (test_deepks )
72+ add_coverage (deepks_unit_support )
5773endif ()
5874
75+ set (DEEPKS_UNIT_LIBS
76+ deepks_unit_support
77+ base
78+ device
79+ parameter
80+ deepks
81+ psi
82+ planewave
83+ neighbor
84+ container
85+ orb
86+ gint
87+ numerical_atomic_orbitals
88+ symmetry
89+ ${math_libs}
90+ )
91+
92+ set (DEEPKS_UNIT_PHIALPHA_SOURCES
93+ deepks_test_phialpha.cpp
94+ )
95+ set (DEEPKS_UNIT_PDM_SOURCES
96+ ${DEEPKS_UNIT_PHIALPHA_SOURCES}
97+ deepks_test_pdm.cpp
98+ )
99+ set (DEEPKS_UNIT_DESCRIPTOR_SOURCES
100+ ${DEEPKS_UNIT_PDM_SOURCES}
101+ deepks_test_descriptor.cpp
102+ )
103+ set (DEEPKS_UNIT_GDMX_SOURCES
104+ ${DEEPKS_UNIT_PDM_SOURCES}
105+ deepks_test_gdmx.cpp
106+ )
107+ set (DEEPKS_UNIT_GVX_SOURCES
108+ ${DEEPKS_UNIT_DESCRIPTOR_SOURCES}
109+ deepks_test_gdmx.cpp
110+ deepks_test_gvx.cpp
111+ )
112+ set (DEEPKS_UNIT_GDMEPSL_SOURCES
113+ ${DEEPKS_UNIT_PDM_SOURCES}
114+ deepks_test_gdmepsl.cpp
115+ )
116+ set (DEEPKS_UNIT_GVEPSL_SOURCES
117+ ${DEEPKS_UNIT_DESCRIPTOR_SOURCES}
118+ deepks_test_gdmepsl.cpp
119+ deepks_test_gvepsl.cpp
120+ )
121+ set (DEEPKS_UNIT_ORBPRE_SOURCES
122+ ${DEEPKS_UNIT_DESCRIPTOR_SOURCES}
123+ deepks_test_orbpre.cpp
124+ )
125+ set (DEEPKS_UNIT_VDPRE_SOURCES
126+ ${DEEPKS_UNIT_DESCRIPTOR_SOURCES}
127+ deepks_test_vdpre.cpp
128+ )
129+ set (DEEPKS_UNIT_VDRPRE_SOURCES
130+ ${DEEPKS_UNIT_DESCRIPTOR_SOURCES}
131+ deepks_test_vdrpre.cpp
132+ )
133+ set (DEEPKS_UNIT_EDELTA_SOURCES
134+ ${DEEPKS_UNIT_DESCRIPTOR_SOURCES}
135+ deepks_test_edelta.cpp
136+ )
137+ set (DEEPKS_UNIT_E_DELTABANDS_SOURCES
138+ ${DEEPKS_UNIT_EDELTA_SOURCES}
139+ deepks_test_e_deltabands.cpp
140+ )
141+ set (DEEPKS_UNIT_FORCE_STRESS_DELTA_SOURCES
142+ ${DEEPKS_UNIT_EDELTA_SOURCES}
143+ deepks_test_force_stress_delta.cpp
144+ )
145+ set (DEEPKS_UNIT_O_DELTA_SOURCES
146+ ${DEEPKS_UNIT_E_DELTABANDS_SOURCES}
147+ deepks_test_o_delta.cpp
148+ )
149+
150+ function (configure_deepks_unit_target TARGET_NAME CHECK_NAME CASE_DIR )
151+ target_compile_definitions (
152+ ${TARGET_NAME}
153+ PRIVATE
154+ DEEPKS_UT_CHECK_NAME= "${CHECK_NAME} "
155+ DEEPKS_UT_CASE_DIR= "${CASE_DIR} "
156+ DEEPKS_UT_RUNNER=run_deepks_unit_${CHECK_NAME}
157+ )
158+ endfunction ()
159+
160+ AddTest (
161+ TARGET MODULE_LCAO_DEEPKS_phialpha_gamma
162+ LIBS ${DEEPKS_UNIT_LIBS}
163+ SOURCES main_deepks.cpp ${DEEPKS_UNIT_PHIALPHA_SOURCES}
164+ )
165+ configure_deepks_unit_target (MODULE_LCAO_DEEPKS_phialpha_gamma phialpha NO_GO_deepks_UT )
166+
167+ AddTest (
168+ TARGET MODULE_LCAO_DEEPKS_pdm_gamma
169+ LIBS ${DEEPKS_UNIT_LIBS}
170+ SOURCES main_deepks.cpp ${DEEPKS_UNIT_PDM_SOURCES}
171+ )
172+ configure_deepks_unit_target (MODULE_LCAO_DEEPKS_pdm_gamma pdm NO_GO_deepks_UT )
173+
174+ AddTest (
175+ TARGET MODULE_LCAO_DEEPKS_descriptor_gamma
176+ LIBS ${DEEPKS_UNIT_LIBS}
177+ SOURCES main_deepks.cpp ${DEEPKS_UNIT_DESCRIPTOR_SOURCES}
178+ )
179+ configure_deepks_unit_target (MODULE_LCAO_DEEPKS_descriptor_gamma descriptor NO_GO_deepks_UT )
180+
181+ AddTest (
182+ TARGET MODULE_LCAO_DEEPKS_gdmx_gamma
183+ LIBS ${DEEPKS_UNIT_LIBS}
184+ SOURCES main_deepks.cpp ${DEEPKS_UNIT_GDMX_SOURCES}
185+ )
186+ configure_deepks_unit_target (MODULE_LCAO_DEEPKS_gdmx_gamma gdmx NO_GO_deepks_UT )
187+
188+ AddTest (
189+ TARGET MODULE_LCAO_DEEPKS_gvx_gamma
190+ LIBS ${DEEPKS_UNIT_LIBS}
191+ SOURCES main_deepks.cpp ${DEEPKS_UNIT_GVX_SOURCES}
192+ )
193+ configure_deepks_unit_target (MODULE_LCAO_DEEPKS_gvx_gamma gvx NO_GO_deepks_UT )
194+
195+ AddTest (
196+ TARGET MODULE_LCAO_DEEPKS_gdmepsl_gamma
197+ LIBS ${DEEPKS_UNIT_LIBS}
198+ SOURCES main_deepks.cpp ${DEEPKS_UNIT_GDMEPSL_SOURCES}
199+ )
200+ configure_deepks_unit_target (MODULE_LCAO_DEEPKS_gdmepsl_gamma gdmepsl NO_GO_deepks_UT )
201+
202+ AddTest (
203+ TARGET MODULE_LCAO_DEEPKS_gvepsl_gamma
204+ LIBS ${DEEPKS_UNIT_LIBS}
205+ SOURCES main_deepks.cpp ${DEEPKS_UNIT_GVEPSL_SOURCES}
206+ )
207+ configure_deepks_unit_target (MODULE_LCAO_DEEPKS_gvepsl_gamma gvepsl NO_GO_deepks_UT )
208+
209+ AddTest (
210+ TARGET MODULE_LCAO_DEEPKS_orbpre_gamma
211+ LIBS ${DEEPKS_UNIT_LIBS}
212+ SOURCES main_deepks.cpp ${DEEPKS_UNIT_ORBPRE_SOURCES}
213+ )
214+ configure_deepks_unit_target (MODULE_LCAO_DEEPKS_orbpre_gamma orbpre NO_GO_deepks_UT )
215+
216+ AddTest (
217+ TARGET MODULE_LCAO_DEEPKS_vdpre_gamma
218+ LIBS ${DEEPKS_UNIT_LIBS}
219+ SOURCES main_deepks.cpp ${DEEPKS_UNIT_VDPRE_SOURCES}
220+ )
221+ configure_deepks_unit_target (MODULE_LCAO_DEEPKS_vdpre_gamma vdpre NO_GO_deepks_UT )
222+
223+ AddTest (
224+ TARGET MODULE_LCAO_DEEPKS_vdrpre_gamma
225+ LIBS ${DEEPKS_UNIT_LIBS}
226+ SOURCES main_deepks.cpp ${DEEPKS_UNIT_VDRPRE_SOURCES}
227+ )
228+ configure_deepks_unit_target (MODULE_LCAO_DEEPKS_vdrpre_gamma vdrpre NO_GO_deepks_UT )
229+
230+ AddTest (
231+ TARGET MODULE_LCAO_DEEPKS_edelta_gamma
232+ LIBS ${DEEPKS_UNIT_LIBS}
233+ SOURCES main_deepks.cpp ${DEEPKS_UNIT_EDELTA_SOURCES}
234+ )
235+ configure_deepks_unit_target (MODULE_LCAO_DEEPKS_edelta_gamma edelta NO_GO_deepks_UT )
236+
237+ AddTest (
238+ TARGET MODULE_LCAO_DEEPKS_e_deltabands_gamma
239+ LIBS ${DEEPKS_UNIT_LIBS}
240+ SOURCES main_deepks.cpp ${DEEPKS_UNIT_E_DELTABANDS_SOURCES}
241+ )
242+ configure_deepks_unit_target (MODULE_LCAO_DEEPKS_e_deltabands_gamma e_deltabands NO_GO_deepks_UT )
243+
244+ AddTest (
245+ TARGET MODULE_LCAO_DEEPKS_force_stress_delta_gamma
246+ LIBS ${DEEPKS_UNIT_LIBS}
247+ SOURCES main_deepks.cpp ${DEEPKS_UNIT_FORCE_STRESS_DELTA_SOURCES}
248+ )
249+ configure_deepks_unit_target (MODULE_LCAO_DEEPKS_force_stress_delta_gamma force_stress_delta NO_GO_deepks_UT )
250+
251+ AddTest (
252+ TARGET MODULE_LCAO_DEEPKS_o_delta_gamma
253+ LIBS ${DEEPKS_UNIT_LIBS}
254+ SOURCES main_deepks.cpp ${DEEPKS_UNIT_O_DELTA_SOURCES}
255+ )
256+ configure_deepks_unit_target (MODULE_LCAO_DEEPKS_o_delta_gamma o_delta NO_GO_deepks_UT )
257+
258+ AddTest (
259+ TARGET MODULE_LCAO_DEEPKS_phialpha_multik
260+ LIBS ${DEEPKS_UNIT_LIBS}
261+ SOURCES main_deepks.cpp ${DEEPKS_UNIT_PHIALPHA_SOURCES}
262+ )
263+ configure_deepks_unit_target (MODULE_LCAO_DEEPKS_phialpha_multik phialpha NO_KP_deepks_UT )
264+
265+ AddTest (
266+ TARGET MODULE_LCAO_DEEPKS_pdm_multik
267+ LIBS ${DEEPKS_UNIT_LIBS}
268+ SOURCES main_deepks.cpp ${DEEPKS_UNIT_PDM_SOURCES}
269+ )
270+ configure_deepks_unit_target (MODULE_LCAO_DEEPKS_pdm_multik pdm NO_KP_deepks_UT )
271+
272+ AddTest (
273+ TARGET MODULE_LCAO_DEEPKS_descriptor_multik
274+ LIBS ${DEEPKS_UNIT_LIBS}
275+ SOURCES main_deepks.cpp ${DEEPKS_UNIT_DESCRIPTOR_SOURCES}
276+ )
277+ configure_deepks_unit_target (MODULE_LCAO_DEEPKS_descriptor_multik descriptor NO_KP_deepks_UT )
278+
279+ AddTest (
280+ TARGET MODULE_LCAO_DEEPKS_gdmx_multik
281+ LIBS ${DEEPKS_UNIT_LIBS}
282+ SOURCES main_deepks.cpp ${DEEPKS_UNIT_GDMX_SOURCES}
283+ )
284+ configure_deepks_unit_target (MODULE_LCAO_DEEPKS_gdmx_multik gdmx NO_KP_deepks_UT )
285+
286+ AddTest (
287+ TARGET MODULE_LCAO_DEEPKS_gvx_multik
288+ LIBS ${DEEPKS_UNIT_LIBS}
289+ SOURCES main_deepks.cpp ${DEEPKS_UNIT_GVX_SOURCES}
290+ )
291+ configure_deepks_unit_target (MODULE_LCAO_DEEPKS_gvx_multik gvx NO_KP_deepks_UT )
292+
293+ AddTest (
294+ TARGET MODULE_LCAO_DEEPKS_gdmepsl_multik
295+ LIBS ${DEEPKS_UNIT_LIBS}
296+ SOURCES main_deepks.cpp ${DEEPKS_UNIT_GDMEPSL_SOURCES}
297+ )
298+ configure_deepks_unit_target (MODULE_LCAO_DEEPKS_gdmepsl_multik gdmepsl NO_KP_deepks_UT )
299+
300+ AddTest (
301+ TARGET MODULE_LCAO_DEEPKS_gvepsl_multik
302+ LIBS ${DEEPKS_UNIT_LIBS}
303+ SOURCES main_deepks.cpp ${DEEPKS_UNIT_GVEPSL_SOURCES}
304+ )
305+ configure_deepks_unit_target (MODULE_LCAO_DEEPKS_gvepsl_multik gvepsl NO_KP_deepks_UT )
306+
307+ AddTest (
308+ TARGET MODULE_LCAO_DEEPKS_orbpre_multik
309+ LIBS ${DEEPKS_UNIT_LIBS}
310+ SOURCES main_deepks.cpp ${DEEPKS_UNIT_ORBPRE_SOURCES}
311+ )
312+ configure_deepks_unit_target (MODULE_LCAO_DEEPKS_orbpre_multik orbpre NO_KP_deepks_UT )
313+
314+ AddTest (
315+ TARGET MODULE_LCAO_DEEPKS_vdpre_multik
316+ LIBS ${DEEPKS_UNIT_LIBS}
317+ SOURCES main_deepks.cpp ${DEEPKS_UNIT_VDPRE_SOURCES}
318+ )
319+ configure_deepks_unit_target (MODULE_LCAO_DEEPKS_vdpre_multik vdpre NO_KP_deepks_UT )
320+
321+ AddTest (
322+ TARGET MODULE_LCAO_DEEPKS_vdrpre_multik
323+ LIBS ${DEEPKS_UNIT_LIBS}
324+ SOURCES main_deepks.cpp ${DEEPKS_UNIT_VDRPRE_SOURCES}
325+ )
326+ configure_deepks_unit_target (MODULE_LCAO_DEEPKS_vdrpre_multik vdrpre NO_KP_deepks_UT )
327+
328+ AddTest (
329+ TARGET MODULE_LCAO_DEEPKS_edelta_multik
330+ LIBS ${DEEPKS_UNIT_LIBS}
331+ SOURCES main_deepks.cpp ${DEEPKS_UNIT_EDELTA_SOURCES}
332+ )
333+ configure_deepks_unit_target (MODULE_LCAO_DEEPKS_edelta_multik edelta NO_KP_deepks_UT )
334+
335+ AddTest (
336+ TARGET MODULE_LCAO_DEEPKS_e_deltabands_multik
337+ LIBS ${DEEPKS_UNIT_LIBS}
338+ SOURCES main_deepks.cpp ${DEEPKS_UNIT_E_DELTABANDS_SOURCES}
339+ )
340+ configure_deepks_unit_target (MODULE_LCAO_DEEPKS_e_deltabands_multik e_deltabands NO_KP_deepks_UT )
341+
342+ AddTest (
343+ TARGET MODULE_LCAO_DEEPKS_force_stress_delta_multik
344+ LIBS ${DEEPKS_UNIT_LIBS}
345+ SOURCES main_deepks.cpp ${DEEPKS_UNIT_FORCE_STRESS_DELTA_SOURCES}
346+ )
347+ configure_deepks_unit_target (MODULE_LCAO_DEEPKS_force_stress_delta_multik force_stress_delta NO_KP_deepks_UT )
59348
60- install (
61- TARGETS test_deepks
62- DESTINATION ${CMAKE_CURRENT_BINARY_DIR } /../../../../tests
349+ AddTest (
350+ TARGET MODULE_LCAO_DEEPKS_o_delta_multik
351+ LIBS ${DEEPKS_UNIT_LIBS}
352+ SOURCES main_deepks.cpp ${DEEPKS_UNIT_O_DELTA_SOURCES}
63353)
354+ configure_deepks_unit_target (MODULE_LCAO_DEEPKS_o_delta_multik o_delta NO_KP_deepks_UT )
0 commit comments