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+
3+ set (DEEPKS_UNIT_COMMON_SOURCES
4+ deepks_test_prep.cpp
5+ deepks_test.cpp
46 ../../../source_cell/unitcell.cpp
57 ../../../source_cell/update_cell.cpp
68 ../../../source_cell/bcast_cell.cpp
@@ -11,6 +13,9 @@ add_executable(
1113 ../../../source_cell/read_stru.cpp
1214 ../../../source_cell/print_cell.cpp
1315 ../../../source_cell/read_atom_species.cpp
16+ ../../../source_cell/klist.cpp
17+ ../../../source_cell/parallel_kpoints.cpp
18+ ../../../source_cell/k_vector_utils.cpp
1419 ../../../source_cell/setup_nonlocal.cpp
1520 ../../../source_cell/pseudo.cpp
1621 ../../../source_cell/read_pp.cpp
@@ -22,14 +27,16 @@ add_executable(
2227 ../../../source_cell/sep.cpp
2328 ../../../source_cell/sep_cell.cpp
2429 ../../../source_pw/module_pwdft/soc.cpp
25-
2630 ../../../source_io/module_output/sparse_matrix.cpp
2731 ../../../source_estate/read_pseudo.cpp
2832 ../../../source_estate/cal_wfc.cpp
2933 ../../../source_estate/read_orb.cpp
3034 ../../../source_estate/cal_nelec_nband.cpp
3135 ../../../source_estate/module_dm/density_matrix.cpp
3236 ../../../source_estate/module_dm/density_matrix_io.cpp
37+ ../../center2_orb.cpp
38+ ../../center2_orb-orb11.cpp
39+ ../../center2_orb-orb21.cpp
3340 ../../module_hcontainer/base_matrix.cpp
3441 ../../module_hcontainer/hcontainer.cpp
3542 ../../module_hcontainer/atom_pair.cpp
@@ -40,24 +47,297 @@ add_executable(
4047 ../../module_operator_lcao/deepks_lcao.cpp
4148 ../../module_operator_lcao/operator_lcao.cpp
4249 ../../../source_hamilt/operator.cpp
50+ ../../../source_io/module_hs/cal_r_overlap_R.cpp
51+ ../../../source_io/module_hs/single_R_io.cpp
52+ ../../../source_io/module_hs/rr_sparse_writer.cpp
4353 ../../module_rt/td_folding.cpp
54+ mock_berryphase.cpp
4455 mock_tdinfo.cpp
4556)
4657
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- )
58+ add_library (deepks_unit_support OBJECT ${DEEPKS_UNIT_COMMON_SOURCES} )
5459
5560if (ENABLE_COVERAGE)
56- add_coverage (test_deepks )
61+ add_coverage (deepks_unit_support )
5762endif ()
5863
64+ set (DEEPKS_UNIT_LIBS
65+ deepks_unit_support
66+ base
67+ device
68+ parameter
69+ deepks
70+ psi
71+ planewave
72+ neighbor
73+ container
74+ orb
75+ gint
76+ numerical_atomic_orbitals
77+ symmetry
78+ ${math_libs}
79+ )
80+
81+ set (DEEPKS_UNIT_PHIALPHA_SOURCES
82+ deepks_test_phialpha.cpp
83+ )
84+ set (DEEPKS_UNIT_PDM_SOURCES
85+ ${DEEPKS_UNIT_PHIALPHA_SOURCES}
86+ deepks_test_pdm.cpp
87+ )
88+ set (DEEPKS_UNIT_DESCRIPTOR_SOURCES
89+ ${DEEPKS_UNIT_PDM_SOURCES}
90+ deepks_test_descriptor.cpp
91+ )
92+ set (DEEPKS_UNIT_GDMX_SOURCES
93+ ${DEEPKS_UNIT_PDM_SOURCES}
94+ deepks_test_gdmx.cpp
95+ )
96+ set (DEEPKS_UNIT_GVX_SOURCES
97+ ${DEEPKS_UNIT_DESCRIPTOR_SOURCES}
98+ deepks_test_gdmx.cpp
99+ deepks_test_gvx.cpp
100+ )
101+ set (DEEPKS_UNIT_GDMEPSL_SOURCES
102+ ${DEEPKS_UNIT_PDM_SOURCES}
103+ deepks_test_gdmepsl.cpp
104+ )
105+ set (DEEPKS_UNIT_GVEPSL_SOURCES
106+ ${DEEPKS_UNIT_DESCRIPTOR_SOURCES}
107+ deepks_test_gdmepsl.cpp
108+ deepks_test_gvepsl.cpp
109+ )
110+ set (DEEPKS_UNIT_ORBPRE_SOURCES
111+ ${DEEPKS_UNIT_DESCRIPTOR_SOURCES}
112+ deepks_test_orbpre.cpp
113+ )
114+ set (DEEPKS_UNIT_VDPRE_SOURCES
115+ ${DEEPKS_UNIT_DESCRIPTOR_SOURCES}
116+ deepks_test_vdpre.cpp
117+ )
118+ set (DEEPKS_UNIT_VDRPRE_SOURCES
119+ ${DEEPKS_UNIT_DESCRIPTOR_SOURCES}
120+ deepks_test_vdrpre.cpp
121+ )
122+ set (DEEPKS_UNIT_EDELTA_SOURCES
123+ ${DEEPKS_UNIT_DESCRIPTOR_SOURCES}
124+ deepks_test_edelta.cpp
125+ )
126+ set (DEEPKS_UNIT_E_DELTABANDS_SOURCES
127+ ${DEEPKS_UNIT_EDELTA_SOURCES}
128+ deepks_test_e_deltabands.cpp
129+ )
130+ set (DEEPKS_UNIT_FORCE_STRESS_DELTA_SOURCES
131+ ${DEEPKS_UNIT_EDELTA_SOURCES}
132+ deepks_test_force_stress_delta.cpp
133+ )
134+ set (DEEPKS_UNIT_O_DELTA_SOURCES
135+ ${DEEPKS_UNIT_E_DELTABANDS_SOURCES}
136+ deepks_test_o_delta.cpp
137+ )
138+
139+ function (configure_deepks_unit_target TARGET_NAME CHECK_NAME CASE_DIR )
140+ target_compile_definitions (
141+ ${TARGET_NAME}
142+ PRIVATE
143+ DEEPKS_UT_CHECK_NAME= "${CHECK_NAME} "
144+ DEEPKS_UT_CASE_DIR= "${CASE_DIR} "
145+ DEEPKS_UT_RUNNER=run_deepks_unit_${CHECK_NAME}
146+ )
147+ endfunction ()
148+
149+ AddTest (
150+ TARGET MODULE_LCAO_DEEPKS_phialpha_gamma
151+ LIBS ${DEEPKS_UNIT_LIBS}
152+ SOURCES main_deepks.cpp ${DEEPKS_UNIT_PHIALPHA_SOURCES}
153+ )
154+ configure_deepks_unit_target (MODULE_LCAO_DEEPKS_phialpha_gamma phialpha NO_GO_deepks_UT )
155+
156+ AddTest (
157+ TARGET MODULE_LCAO_DEEPKS_pdm_gamma
158+ LIBS ${DEEPKS_UNIT_LIBS}
159+ SOURCES main_deepks.cpp ${DEEPKS_UNIT_PDM_SOURCES}
160+ )
161+ configure_deepks_unit_target (MODULE_LCAO_DEEPKS_pdm_gamma pdm NO_GO_deepks_UT )
162+
163+ AddTest (
164+ TARGET MODULE_LCAO_DEEPKS_descriptor_gamma
165+ LIBS ${DEEPKS_UNIT_LIBS}
166+ SOURCES main_deepks.cpp ${DEEPKS_UNIT_DESCRIPTOR_SOURCES}
167+ )
168+ configure_deepks_unit_target (MODULE_LCAO_DEEPKS_descriptor_gamma descriptor NO_GO_deepks_UT )
169+
170+ AddTest (
171+ TARGET MODULE_LCAO_DEEPKS_gdmx_gamma
172+ LIBS ${DEEPKS_UNIT_LIBS}
173+ SOURCES main_deepks.cpp ${DEEPKS_UNIT_GDMX_SOURCES}
174+ )
175+ configure_deepks_unit_target (MODULE_LCAO_DEEPKS_gdmx_gamma gdmx NO_GO_deepks_UT )
176+
177+ AddTest (
178+ TARGET MODULE_LCAO_DEEPKS_gvx_gamma
179+ LIBS ${DEEPKS_UNIT_LIBS}
180+ SOURCES main_deepks.cpp ${DEEPKS_UNIT_GVX_SOURCES}
181+ )
182+ configure_deepks_unit_target (MODULE_LCAO_DEEPKS_gvx_gamma gvx NO_GO_deepks_UT )
183+
184+ AddTest (
185+ TARGET MODULE_LCAO_DEEPKS_gdmepsl_gamma
186+ LIBS ${DEEPKS_UNIT_LIBS}
187+ SOURCES main_deepks.cpp ${DEEPKS_UNIT_GDMEPSL_SOURCES}
188+ )
189+ configure_deepks_unit_target (MODULE_LCAO_DEEPKS_gdmepsl_gamma gdmepsl NO_GO_deepks_UT )
190+
191+ AddTest (
192+ TARGET MODULE_LCAO_DEEPKS_gvepsl_gamma
193+ LIBS ${DEEPKS_UNIT_LIBS}
194+ SOURCES main_deepks.cpp ${DEEPKS_UNIT_GVEPSL_SOURCES}
195+ )
196+ configure_deepks_unit_target (MODULE_LCAO_DEEPKS_gvepsl_gamma gvepsl NO_GO_deepks_UT )
197+
198+ AddTest (
199+ TARGET MODULE_LCAO_DEEPKS_orbpre_gamma
200+ LIBS ${DEEPKS_UNIT_LIBS}
201+ SOURCES main_deepks.cpp ${DEEPKS_UNIT_ORBPRE_SOURCES}
202+ )
203+ configure_deepks_unit_target (MODULE_LCAO_DEEPKS_orbpre_gamma orbpre NO_GO_deepks_UT )
204+
205+ AddTest (
206+ TARGET MODULE_LCAO_DEEPKS_vdpre_gamma
207+ LIBS ${DEEPKS_UNIT_LIBS}
208+ SOURCES main_deepks.cpp ${DEEPKS_UNIT_VDPRE_SOURCES}
209+ )
210+ configure_deepks_unit_target (MODULE_LCAO_DEEPKS_vdpre_gamma vdpre NO_GO_deepks_UT )
211+
212+ AddTest (
213+ TARGET MODULE_LCAO_DEEPKS_vdrpre_gamma
214+ LIBS ${DEEPKS_UNIT_LIBS}
215+ SOURCES main_deepks.cpp ${DEEPKS_UNIT_VDRPRE_SOURCES}
216+ )
217+ configure_deepks_unit_target (MODULE_LCAO_DEEPKS_vdrpre_gamma vdrpre NO_GO_deepks_UT )
218+
219+ AddTest (
220+ TARGET MODULE_LCAO_DEEPKS_edelta_gamma
221+ LIBS ${DEEPKS_UNIT_LIBS}
222+ SOURCES main_deepks.cpp ${DEEPKS_UNIT_EDELTA_SOURCES}
223+ )
224+ configure_deepks_unit_target (MODULE_LCAO_DEEPKS_edelta_gamma edelta NO_GO_deepks_UT )
225+
226+ AddTest (
227+ TARGET MODULE_LCAO_DEEPKS_e_deltabands_gamma
228+ LIBS ${DEEPKS_UNIT_LIBS}
229+ SOURCES main_deepks.cpp ${DEEPKS_UNIT_E_DELTABANDS_SOURCES}
230+ )
231+ configure_deepks_unit_target (MODULE_LCAO_DEEPKS_e_deltabands_gamma e_deltabands NO_GO_deepks_UT )
232+
233+ AddTest (
234+ TARGET MODULE_LCAO_DEEPKS_force_stress_delta_gamma
235+ LIBS ${DEEPKS_UNIT_LIBS}
236+ SOURCES main_deepks.cpp ${DEEPKS_UNIT_FORCE_STRESS_DELTA_SOURCES}
237+ )
238+ configure_deepks_unit_target (MODULE_LCAO_DEEPKS_force_stress_delta_gamma force_stress_delta NO_GO_deepks_UT )
239+
240+ AddTest (
241+ TARGET MODULE_LCAO_DEEPKS_o_delta_gamma
242+ LIBS ${DEEPKS_UNIT_LIBS}
243+ SOURCES main_deepks.cpp ${DEEPKS_UNIT_O_DELTA_SOURCES}
244+ )
245+ configure_deepks_unit_target (MODULE_LCAO_DEEPKS_o_delta_gamma o_delta NO_GO_deepks_UT )
246+
247+ AddTest (
248+ TARGET MODULE_LCAO_DEEPKS_phialpha_multik
249+ LIBS ${DEEPKS_UNIT_LIBS}
250+ SOURCES main_deepks.cpp ${DEEPKS_UNIT_PHIALPHA_SOURCES}
251+ )
252+ configure_deepks_unit_target (MODULE_LCAO_DEEPKS_phialpha_multik phialpha NO_KP_deepks_UT )
253+
254+ AddTest (
255+ TARGET MODULE_LCAO_DEEPKS_pdm_multik
256+ LIBS ${DEEPKS_UNIT_LIBS}
257+ SOURCES main_deepks.cpp ${DEEPKS_UNIT_PDM_SOURCES}
258+ )
259+ configure_deepks_unit_target (MODULE_LCAO_DEEPKS_pdm_multik pdm NO_KP_deepks_UT )
260+
261+ AddTest (
262+ TARGET MODULE_LCAO_DEEPKS_descriptor_multik
263+ LIBS ${DEEPKS_UNIT_LIBS}
264+ SOURCES main_deepks.cpp ${DEEPKS_UNIT_DESCRIPTOR_SOURCES}
265+ )
266+ configure_deepks_unit_target (MODULE_LCAO_DEEPKS_descriptor_multik descriptor NO_KP_deepks_UT )
267+
268+ AddTest (
269+ TARGET MODULE_LCAO_DEEPKS_gdmx_multik
270+ LIBS ${DEEPKS_UNIT_LIBS}
271+ SOURCES main_deepks.cpp ${DEEPKS_UNIT_GDMX_SOURCES}
272+ )
273+ configure_deepks_unit_target (MODULE_LCAO_DEEPKS_gdmx_multik gdmx NO_KP_deepks_UT )
274+
275+ AddTest (
276+ TARGET MODULE_LCAO_DEEPKS_gvx_multik
277+ LIBS ${DEEPKS_UNIT_LIBS}
278+ SOURCES main_deepks.cpp ${DEEPKS_UNIT_GVX_SOURCES}
279+ )
280+ configure_deepks_unit_target (MODULE_LCAO_DEEPKS_gvx_multik gvx NO_KP_deepks_UT )
281+
282+ AddTest (
283+ TARGET MODULE_LCAO_DEEPKS_gdmepsl_multik
284+ LIBS ${DEEPKS_UNIT_LIBS}
285+ SOURCES main_deepks.cpp ${DEEPKS_UNIT_GDMEPSL_SOURCES}
286+ )
287+ configure_deepks_unit_target (MODULE_LCAO_DEEPKS_gdmepsl_multik gdmepsl NO_KP_deepks_UT )
288+
289+ AddTest (
290+ TARGET MODULE_LCAO_DEEPKS_gvepsl_multik
291+ LIBS ${DEEPKS_UNIT_LIBS}
292+ SOURCES main_deepks.cpp ${DEEPKS_UNIT_GVEPSL_SOURCES}
293+ )
294+ configure_deepks_unit_target (MODULE_LCAO_DEEPKS_gvepsl_multik gvepsl NO_KP_deepks_UT )
295+
296+ AddTest (
297+ TARGET MODULE_LCAO_DEEPKS_orbpre_multik
298+ LIBS ${DEEPKS_UNIT_LIBS}
299+ SOURCES main_deepks.cpp ${DEEPKS_UNIT_ORBPRE_SOURCES}
300+ )
301+ configure_deepks_unit_target (MODULE_LCAO_DEEPKS_orbpre_multik orbpre NO_KP_deepks_UT )
302+
303+ AddTest (
304+ TARGET MODULE_LCAO_DEEPKS_vdpre_multik
305+ LIBS ${DEEPKS_UNIT_LIBS}
306+ SOURCES main_deepks.cpp ${DEEPKS_UNIT_VDPRE_SOURCES}
307+ )
308+ configure_deepks_unit_target (MODULE_LCAO_DEEPKS_vdpre_multik vdpre NO_KP_deepks_UT )
309+
310+ AddTest (
311+ TARGET MODULE_LCAO_DEEPKS_vdrpre_multik
312+ LIBS ${DEEPKS_UNIT_LIBS}
313+ SOURCES main_deepks.cpp ${DEEPKS_UNIT_VDRPRE_SOURCES}
314+ )
315+ configure_deepks_unit_target (MODULE_LCAO_DEEPKS_vdrpre_multik vdrpre NO_KP_deepks_UT )
316+
317+ AddTest (
318+ TARGET MODULE_LCAO_DEEPKS_edelta_multik
319+ LIBS ${DEEPKS_UNIT_LIBS}
320+ SOURCES main_deepks.cpp ${DEEPKS_UNIT_EDELTA_SOURCES}
321+ )
322+ configure_deepks_unit_target (MODULE_LCAO_DEEPKS_edelta_multik edelta NO_KP_deepks_UT )
323+
324+ AddTest (
325+ TARGET MODULE_LCAO_DEEPKS_e_deltabands_multik
326+ LIBS ${DEEPKS_UNIT_LIBS}
327+ SOURCES main_deepks.cpp ${DEEPKS_UNIT_E_DELTABANDS_SOURCES}
328+ )
329+ configure_deepks_unit_target (MODULE_LCAO_DEEPKS_e_deltabands_multik e_deltabands NO_KP_deepks_UT )
330+
331+ AddTest (
332+ TARGET MODULE_LCAO_DEEPKS_force_stress_delta_multik
333+ LIBS ${DEEPKS_UNIT_LIBS}
334+ SOURCES main_deepks.cpp ${DEEPKS_UNIT_FORCE_STRESS_DELTA_SOURCES}
335+ )
336+ configure_deepks_unit_target (MODULE_LCAO_DEEPKS_force_stress_delta_multik force_stress_delta NO_KP_deepks_UT )
59337
60- install (
61- TARGETS test_deepks
62- DESTINATION ${CMAKE_CURRENT_BINARY_DIR } /../../../../tests
338+ AddTest (
339+ TARGET MODULE_LCAO_DEEPKS_o_delta_multik
340+ LIBS ${DEEPKS_UNIT_LIBS}
341+ SOURCES main_deepks.cpp ${DEEPKS_UNIT_O_DELTA_SOURCES}
63342)
343+ configure_deepks_unit_target (MODULE_LCAO_DEEPKS_o_delta_multik o_delta NO_KP_deepks_UT )
0 commit comments