From 424e1d4d46cb75f96da902c4a02a3a0f79da24db Mon Sep 17 00:00:00 2001 From: "Johann Potot." Date: Thu, 11 Jun 2026 16:29:35 +0200 Subject: [PATCH] Jvp d3 library (#5346) Co-authored-by: Johann Pototschnig --- src/CMakeLists.txt | 3 + src/cp2k_info.F | 3 + src/input_cp2k_xc.F | 7 + src/qs_dispersion_d3.F | 3 +- src/qs_dispersion_pairpot.F | 41 ++- src/qs_dispersion_s_dftd3.F | 290 ++++++++++++++++++ src/qs_dispersion_types.F | 2 + src/qs_dispersion_utils.F | 48 ++- .../regtest-dft-d3-auto-ref/TEST_FILES.toml | 14 +- .../b3lyp_dftd3_auto.inp | 24 +- .../blyp_dftd3_auto.inp | 26 +- .../blyp_dftd3_overwrite.inp | 26 +- .../bp86_dftd3_auto.inp | 26 +- .../pbe0_dftd3_auto.inp | 32 +- .../pbe_dftd3_auto.inp | 24 +- .../tpss_dftd3_auto.inp | 27 +- tests/QS/regtest-dft-d3-lib-ref/README.md | 22 ++ .../QS/regtest-dft-d3-lib-ref/TEST_FILES.toml | 7 + .../b3lyp_dftd3_lib.inp | 63 ++++ .../regtest-dft-d3-lib-ref/blyp_dftd3_lib.inp | 71 +++++ .../regtest-dft-d3-lib-ref/bp86_dftd3_lib.inp | 71 +++++ .../regtest-dft-d3-lib-ref/pbe0_dftd3_lib.inp | 73 +++++ .../regtest-dft-d3-lib-ref/pbe_dftd3_lib.inp | 68 ++++ .../regtest-dft-d3-lib-ref/tpss_dftd3_lib.inp | 68 ++++ tests/QS/regtest-dft-d3-s-ref/TEST_FILES.toml | 12 + tests/QS/regtest-dft-d3-s-ref/dftd3_t1.inp | 67 ++++ tests/QS/regtest-dft-d3-s-ref/dftd3_t2.inp | 55 ++++ tests/QS/regtest-dft-d3-s-ref/dftd3_t3.inp | 58 ++++ tests/QS/regtest-dft-d3-s-ref/dftd3src1.inp | 85 +++++ tests/QS/regtest-dft-d3-s-ref/dftd3src2.inp | 83 +++++ tests/QS/regtest-dft-d3-s-ref/scan_d3_s.inp | 76 +++++ tests/QS/regtest-dft-d3bj-lib-ref/README.md | 23 ++ .../regtest-dft-d3bj-lib-ref/TEST_FILES.toml | 8 + .../b3lyp_dftd3bj_lib.inp | 71 +++++ .../blyp_dftd3bj_lib.inp | 71 +++++ .../bp86_dftd3bj_lib.inp | 71 +++++ .../o2_dftd3bj_hf3c.inp | 87 ++++++ .../pbe0_dftd3bj_lib.inp | 71 +++++ .../pbe_dftd3bj_lib.inp | 71 +++++ .../tpss_dftd3bj_lib.inp | 71 +++++ .../QS/regtest-dft-d3bj-s-ref/TEST_FILES.toml | 14 + .../regtest-dft-d3bj-s-ref/b3lyp_d3bj_s.inp | 72 +++++ .../regtest-dft-d3bj-s-ref/dftd3bj_skala.inp | 67 ++++ .../QS/regtest-dft-d3bj-s-ref/dftd3bj_t1.inp | 67 ++++ .../QS/regtest-dft-d3bj-s-ref/dftd3bj_t2.inp | 83 +++++ .../QS/regtest-dft-d3bj-s-ref/dftd3bj_t3.inp | 67 ++++ .../QS/regtest-dft-d3bj-s-ref/dftd3bj_t4.inp | 90 ++++++ .../regtest-dft-d3bj-s-ref/r2scan_d3bj_s.inp | 76 +++++ .../regtest-dft-d3bj-s-ref/revtpss_d3bj_s.inp | 77 +++++ tests/QS/regtest-hf-3c/h2o.inp | 1 + tests/QS/regtest-hf-3c/o2.inp | 1 + tests/TEST_DIRS | 6 +- 52 files changed, 2511 insertions(+), 129 deletions(-) create mode 100644 src/qs_dispersion_s_dftd3.F create mode 100644 tests/QS/regtest-dft-d3-lib-ref/README.md create mode 100644 tests/QS/regtest-dft-d3-lib-ref/TEST_FILES.toml create mode 100644 tests/QS/regtest-dft-d3-lib-ref/b3lyp_dftd3_lib.inp create mode 100644 tests/QS/regtest-dft-d3-lib-ref/blyp_dftd3_lib.inp create mode 100644 tests/QS/regtest-dft-d3-lib-ref/bp86_dftd3_lib.inp create mode 100644 tests/QS/regtest-dft-d3-lib-ref/pbe0_dftd3_lib.inp create mode 100644 tests/QS/regtest-dft-d3-lib-ref/pbe_dftd3_lib.inp create mode 100644 tests/QS/regtest-dft-d3-lib-ref/tpss_dftd3_lib.inp create mode 100644 tests/QS/regtest-dft-d3-s-ref/TEST_FILES.toml create mode 100644 tests/QS/regtest-dft-d3-s-ref/dftd3_t1.inp create mode 100644 tests/QS/regtest-dft-d3-s-ref/dftd3_t2.inp create mode 100644 tests/QS/regtest-dft-d3-s-ref/dftd3_t3.inp create mode 100644 tests/QS/regtest-dft-d3-s-ref/dftd3src1.inp create mode 100644 tests/QS/regtest-dft-d3-s-ref/dftd3src2.inp create mode 100644 tests/QS/regtest-dft-d3-s-ref/scan_d3_s.inp create mode 100644 tests/QS/regtest-dft-d3bj-lib-ref/README.md create mode 100644 tests/QS/regtest-dft-d3bj-lib-ref/TEST_FILES.toml create mode 100644 tests/QS/regtest-dft-d3bj-lib-ref/b3lyp_dftd3bj_lib.inp create mode 100644 tests/QS/regtest-dft-d3bj-lib-ref/blyp_dftd3bj_lib.inp create mode 100644 tests/QS/regtest-dft-d3bj-lib-ref/bp86_dftd3bj_lib.inp create mode 100644 tests/QS/regtest-dft-d3bj-lib-ref/o2_dftd3bj_hf3c.inp create mode 100644 tests/QS/regtest-dft-d3bj-lib-ref/pbe0_dftd3bj_lib.inp create mode 100644 tests/QS/regtest-dft-d3bj-lib-ref/pbe_dftd3bj_lib.inp create mode 100644 tests/QS/regtest-dft-d3bj-lib-ref/tpss_dftd3bj_lib.inp create mode 100644 tests/QS/regtest-dft-d3bj-s-ref/TEST_FILES.toml create mode 100644 tests/QS/regtest-dft-d3bj-s-ref/b3lyp_d3bj_s.inp create mode 100644 tests/QS/regtest-dft-d3bj-s-ref/dftd3bj_skala.inp create mode 100644 tests/QS/regtest-dft-d3bj-s-ref/dftd3bj_t1.inp create mode 100644 tests/QS/regtest-dft-d3bj-s-ref/dftd3bj_t2.inp create mode 100644 tests/QS/regtest-dft-d3bj-s-ref/dftd3bj_t3.inp create mode 100644 tests/QS/regtest-dft-d3bj-s-ref/dftd3bj_t4.inp create mode 100644 tests/QS/regtest-dft-d3bj-s-ref/r2scan_d3bj_s.inp create mode 100644 tests/QS/regtest-dft-d3bj-s-ref/revtpss_d3bj_s.inp diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt index 542ba372bb..64b8e94e40 100644 --- a/src/CMakeLists.txt +++ b/src/CMakeLists.txt @@ -560,6 +560,7 @@ list( qs_dispersion_nonloc.F qs_dispersion_d2.F qs_dispersion_d3.F + qs_dispersion_s_dftd3.F qs_dispersion_d4.F qs_dispersion_pairpot.F qs_dispersion_types.F @@ -1763,6 +1764,7 @@ target_link_libraries( $<$:PEXSI::PEXSI> $<$:pace::pace> $<$:cp2k::tblite> + $<$:s-dftd3::s-dftd3> $<$:sirius::sirius> $<$:cp2k::VORI::vori> $<$:Spglib::symspg> @@ -1816,6 +1818,7 @@ target_compile_definitions( $<$:__SPGLIB> $<$:__SMEAGOL> $<$:__TBLITE> + $<$:__S_DFTD3> # Developer-only manual flag: __TBLITE_DEBUG_DIAGNOSTICS $<$:__DFTD4> $<$:__DFTD4> diff --git a/src/cp2k_info.F b/src/cp2k_info.F index f5896bd414..54898f9463 100644 --- a/src/cp2k_info.F +++ b/src/cp2k_info.F @@ -230,6 +230,9 @@ CONTAINS #if defined(__DFTD4_V4_2) flags = TRIM(flags)//" dftd4_v4_2" #endif +#if defined(__S_DFTD3) + flags = TRIM(flags)//" s_dftd3" +#endif #if defined(__TBLITE) flags = TRIM(flags)//" mctc-lib" flags = TRIM(flags)//" tblite" diff --git a/src/input_cp2k_xc.F b/src/input_cp2k_xc.F index b93f24eadd..e91178176e 100644 --- a/src/input_cp2k_xc.F +++ b/src/input_cp2k_xc.F @@ -1025,6 +1025,13 @@ CONTAINS lone_keyword_l_val=.TRUE.) CALL section_add_keyword(subsection, keyword) CALL keyword_release(keyword) + CALL keyword_create(keyword, __LOCATION__, name="D3_REFERENCE_CODE", & + description="Use D3 damping parameters from s-dftd3 library instead of built-in values. "// & + "Requires s-dftd3 library to be compiled in.", & + usage="D3_REFERENCE_CODE", default_l_val=.FALSE., & + lone_keyword_l_val=.TRUE.) + CALL section_add_keyword(subsection, keyword) + CALL keyword_release(keyword) CALL keyword_create(keyword, __LOCATION__, name="D2_SCALING", & variants=["SCALING"], & description="XC Functional dependent scaling parameter. If omitted, CP2K attempts"// & diff --git a/src/qs_dispersion_d3.F b/src/qs_dispersion_d3.F index 24eab0fb91..83f2a1ed5d 100644 --- a/src/qs_dispersion_d3.F +++ b/src/qs_dispersion_d3.F @@ -260,6 +260,7 @@ CONTAINS calculate_forces, 1) CALL para_env%sum(cnumbers) + ! for parallel runs we have to update dcnum on all processors IF (calculate_forces .OR. debugall) THEN CALL dcnum_distribute(dcnum, para_env) @@ -886,7 +887,7 @@ CONTAINS END IF CALL para_env%bcast(pars) - ! Store C6AB coefficients in an array +! Store C6AB coefficients in an array c6ab = -1._dp maxci = 0 ref_stride = get_ref_stride(pars, nlines) diff --git a/src/qs_dispersion_pairpot.F b/src/qs_dispersion_pairpot.F index 2871e96bee..3f68b76445 100644 --- a/src/qs_dispersion_pairpot.F +++ b/src/qs_dispersion_pairpot.F @@ -56,6 +56,7 @@ MODULE qs_dispersion_pairpot USE qs_dispersion_d3, ONLY: calculate_dispersion_d3_pairpot,& dftd3_c6_param USE qs_dispersion_d4, ONLY: calculate_dispersion_d4_pairpot + USE qs_dispersion_s_dftd3, ONLY: dftd3_param_from_library USE qs_dispersion_types, ONLY: dftd2_pp,& dftd3_pp,& dftd4_pp,& @@ -101,7 +102,7 @@ CONTAINS CHARACTER(LEN=2) :: symbol CHARACTER(LEN=default_path_length) :: filename - CHARACTER(LEN=default_string_length) :: aname + CHARACTER(LEN=default_string_length) :: aname, error_msg CHARACTER(LEN=default_string_length), & DIMENSION(:), POINTER :: tmpstringlist INTEGER :: elem, handle, i, ikind, j, max_elem, & @@ -212,10 +213,24 @@ CONTAINS ALLOCATE (dispersion_env%r2r4(max_elem)) ALLOCATE (dispersion_env%cn(max_elem)) - ! get filename of parameter file - filename = dispersion_env%parameter_file_name - CALL dftd3_c6_param(dispersion_env%c6ab, dispersion_env%maxci, filename, para_env) - CALL setr0ab(dispersion_env%r0ab, dispersion_env%rcov, dispersion_env%r2r4) + IF (dispersion_env%d3_reference_code) THEN + CALL dftd3_param_from_library(dispersion_env%c6ab, dispersion_env%maxci, & + dispersion_env%r0ab, dispersion_env%rcov, & + dispersion_env%r2r4, & + dispersion_env%pp_type, dispersion_env%ref_functional, & + dispersion_env%s6, dispersion_env%s8, & + dispersion_env%a1, dispersion_env%a2, & + dispersion_env%sr6, para_env, error=error_msg, & + calc_scaling=.NOT. dispersion_env%d3_scaling_explicit) + IF (error_msg /= "") THEN + CALL cp_abort(__LOCATION__, error_msg) + END IF + ELSE + filename = dispersion_env%parameter_file_name + CALL dftd3_c6_param(dispersion_env%c6ab, dispersion_env%maxci, filename, para_env) + CALL setrcov(dispersion_env%rcov) + CALL setr0ab(dispersion_env%r0ab, dispersion_env%rcov, dispersion_env%r2r4) + END IF ! Electronegativity CALL seten(dispersion_env%eneg) ! the default coordination numbers @@ -226,11 +241,13 @@ CONTAINS ! c8 for he, ne and ar. for larger Z, C8 becomes too large ! which effectively mimics higher R^n terms neglected due ! to stability reasons - DO i = 1, max_elem - dum = 0.5_dp*dispersion_env%r2r4(i)*REAL(i, dp)**0.5_dp - ! store it as sqrt because the geom. av. is taken - dispersion_env%r2r4(i) = SQRT(dum) - END DO + IF (.NOT. dispersion_env%d3_reference_code) THEN + DO i = 1, max_elem + dum = 0.5_dp*dispersion_env%r2r4(i)*REAL(i, dp)**0.5_dp + ! store it as sqrt because the geom. av. is taken + dispersion_env%r2r4(i) = SQRT(dum) + END DO + END IF ! parameters dispersion_env%k1 = 16.0_dp dispersion_env%k2 = 4._dp/3._dp @@ -242,7 +259,9 @@ CONTAINS ! which is physically not right ! values >5 might lead to bumps in the potential dispersion_env%k3 = -4._dp - dispersion_env%rcov = dispersion_env%k2*dispersion_env%rcov*bohr + IF (.NOT. dispersion_env%d3_reference_code) THEN + dispersion_env%rcov = dispersion_env%k2*dispersion_env%rcov*bohr + END IF ! alpha default parameter dispersion_env%alp = 14._dp ! diff --git a/src/qs_dispersion_s_dftd3.F b/src/qs_dispersion_s_dftd3.F new file mode 100644 index 0000000000..b940f5553e --- /dev/null +++ b/src/qs_dispersion_s_dftd3.F @@ -0,0 +1,290 @@ +!--------------------------------------------------------------------------------------------------! +! CP2K: A general program to perform molecular dynamics simulations ! +! Copyright 2000-2026 CP2K developers group ! +! ! +! SPDX-License-Identifier: GPL-2.0-or-later ! +!--------------------------------------------------------------------------------------------------! + +MODULE qs_dispersion_s_dftd3 + + USE kinds, ONLY: default_string_length, & + dp + USE message_passing, ONLY: mp_para_env_type + USE qs_dispersion_cnum, ONLY: setr0ab + +#if defined(__S_DFTD3) + USE dftd3_data_r4r2, ONLY: get_r4r2_val + USE dftd3_data_vdwrad, ONLY: get_vdw_rad + USE dftd3_param, ONLY: d3_param, & + get_rational_damping, & + get_zero_damping, & + error_type + USE dftd3_reference, ONLY: init_reference_c6, & + get_c6, & + reference_cn, & + number_of_references + USE mctc_data, ONLY: get_covalent_rad +#endif + +#include "./base/base_uses.f90" + + IMPLICIT NONE + + PRIVATE + + CHARACTER(len=*), PARAMETER, PRIVATE :: moduleN = 'qs_dispersion_s_dftd3' + + PUBLIC :: dftd3_param_from_library, dftd3_functional_supported + +CONTAINS + +#if defined(__S_DFTD3) +! ************************************************************************************************** +!> \brief Check if a functional is supported by the s-dftd3 library +!> \param pp_type ... +!> \param ref_functional ... +!> \param found ... +! ************************************************************************************************** + SUBROUTINE dftd3_functional_supported(pp_type, ref_functional, found) + INTEGER, INTENT(IN) :: pp_type + CHARACTER(LEN=*), INTENT(IN) :: ref_functional + LOGICAL, INTENT(OUT) :: found + + CHARACTER(LEN=default_string_length) :: func_name + TYPE(d3_param) :: d3params + TYPE(error_type), ALLOCATABLE :: lib_error + + ALLOCATE (lib_error) + func_name = ref_functional + d3params = d3_param() + found = .TRUE. + + SELECT CASE (pp_type) + CASE (2) + CALL get_zero_damping(d3params, func_name, lib_error) + CASE (3) + CALL get_rational_damping(d3params, func_name, lib_error) + CASE DEFAULT + d3params = d3_param() + END SELECT + + found = .NOT. ALLOCATED(lib_error) + + END SUBROUTINE dftd3_functional_supported + +! ************************************************************************************************** +!> \brief ... +!> \param c6ab ... +!> \param maxci ... +!> \param r0ab ... +!> \param rcov ... +!> \param r2r4 ... +!> \param pp_type ... +!> \param ref_functional ... +!> \param s6 ... +!> \param s8 ... +!> \param a1 ... +!> \param a2 ... +!> \param sr6 ... +!> \param para_env ... +!> \param error ... +!> \param calc_scaling ... +! ************************************************************************************************** + SUBROUTINE dftd3_param_from_library(c6ab, maxci, r0ab, rcov, r2r4, & + pp_type, ref_functional, & + s6, s8, a1, a2, sr6, & + para_env, error, calc_scaling) + + REAL(KIND=dp), DIMENSION(:, :, :, :, :), & + INTENT(INOUT) :: c6ab + INTEGER, DIMENSION(:), INTENT(INOUT) :: maxci + REAL(KIND=dp), DIMENSION(:, :), INTENT(INOUT) :: r0ab + REAL(KIND=dp), DIMENSION(:), INTENT(INOUT) :: rcov, r2r4 + INTEGER, INTENT(IN) :: pp_type + CHARACTER(LEN=*), INTENT(IN) :: ref_functional + REAL(KIND=dp), INTENT(INOUT) :: s6, s8, a1, a2, sr6 + TYPE(mp_para_env_type), INTENT(IN), POINTER :: para_env + CHARACTER(LEN=*), INTENT(OUT), OPTIONAL :: error + LOGICAL, INTENT(IN), OPTIONAL :: calc_scaling + + CHARACTER(LEN=*), PARAMETER :: routineN = 'dftd3_param_from_library' + + CHARACTER(LEN=default_string_length) :: func_name + INTEGER :: handle, i, iz, jref, jz, nelem, nref + LOGICAL :: do_calc_scaling + REAL(KIND=dp) :: c6_val, r4r2, rcov_val + REAL(KIND=dp), DIMENSION(94) :: r2r4_tmp, rcov_tmp + TYPE(d3_param) :: d3params + TYPE(error_type), ALLOCATABLE :: lib_error + + CALL timeset(routineN, handle) + + CALL init_reference_c6() + + nref = 7 + nelem = MIN(94, SIZE(maxci)) + + maxci(:) = 0 + DO iz = 1, nelem + maxci(iz) = number_of_references(iz) + END DO + + IF (para_env%is_source()) THEN + DO iz = 1, nelem + rcov_val = get_covalent_rad(iz) + rcov_tmp(iz) = rcov_val + + r4r2 = get_r4r2_val(iz) + r2r4_tmp(iz) = r4r2 + END DO + + r0ab = 0.0_dp + DO iz = 1, nelem + DO jz = 1, nelem + IF (r2r4_tmp(iz) > 0.0_dp .AND. r2r4_tmp(jz) > 0.0_dp) THEN + r0ab(iz, jz) = get_vdw_rad(iz, jz) + END IF + END DO + END DO + + c6ab = 0.0_dp + DO jref = 1, nref + DO jz = 1, nelem + DO i = 1, nref + DO iz = 1, nelem + c6_val = get_c6(i, jref, iz, jz) + c6ab(iz, jz, i, jref, 1) = c6_val + c6ab(iz, jz, i, jref, 2) = reference_cn(i, iz) + c6ab(iz, jz, i, jref, 3) = reference_cn(jref, jz) + END DO + END DO + END DO + END DO + END IF + + CALL para_env%bcast(r2r4_tmp) + CALL para_env%bcast(r0ab) + CALL para_env%bcast(rcov_tmp) + + IF (.NOT. para_env%is_source()) THEN + c6ab = 0.0_dp + DO jref = 1, nref + DO jz = 1, nelem + DO i = 1, nref + DO iz = 1, nelem + c6_val = get_c6(i, jref, iz, jz) + c6ab(iz, jz, i, jref, 1) = c6_val + c6ab(iz, jz, i, jref, 2) = reference_cn(i, iz) + c6ab(iz, jz, i, jref, 3) = reference_cn(jref, jz) + END DO + END DO + END DO + END DO + END IF + + r2r4(:nelem) = r2r4_tmp(:nelem) + rcov(:nelem) = rcov_tmp(:nelem) + + func_name = ref_functional + d3params = d3_param() + + IF (para_env%is_source()) THEN + SELECT CASE (pp_type) + CASE (2) + CALL get_zero_damping(d3params, func_name, lib_error) + CASE (3) + CALL get_rational_damping(d3params, func_name, lib_error) + CASE DEFAULT + d3params = d3_param() + END SELECT + IF (ALLOCATED(lib_error)) THEN + IF (PRESENT(error)) THEN + error = "Functional '"//TRIM(ref_functional)//"' not found in s-dftd3 library" + END IF + RETURN + END IF + END IF + + CALL para_env%bcast(func_name) + CALL para_env%bcast(d3params%s6) + CALL para_env%bcast(d3params%s8) + CALL para_env%bcast(d3params%a1) + CALL para_env%bcast(d3params%a2) + CALL para_env%bcast(d3params%rs6) + + IF (PRESENT(error)) error = "" + + do_calc_scaling = .TRUE. + IF (PRESENT(calc_scaling)) do_calc_scaling = calc_scaling + + IF (do_calc_scaling) THEN + s6 = d3params%s6 + s8 = d3params%s8 + a1 = d3params%a1 + a2 = d3params%a2 + sr6 = d3params%rs6 + END IF + + CALL timestop(handle) + + END SUBROUTINE dftd3_param_from_library + +#else + +! ************************************************************************************************** +!> \brief Check if a functional is supported by the s-dftd3 library +!> \param pp_type ... +!> \param ref_functional ... +!> \param found ... +! ************************************************************************************************** + SUBROUTINE dftd3_functional_supported(pp_type, ref_functional, found) + INTEGER, INTENT(IN) :: pp_type + CHARACTER(LEN=*), INTENT(IN) :: ref_functional + LOGICAL, INTENT(OUT) :: found + + found = .FALSE. + + END SUBROUTINE dftd3_functional_supported + +! ************************************************************************************************** +!> \brief ... +!> \param c6ab ... +!> \param maxci ... +!> \param r0ab ... +!> \param rcov ... +!> \param r2r4 ... +!> \param pp_type ... +!> \param ref_functional ... +!> \param s6 ... +!> \param s8 ... +!> \param a1 ... +!> \param a2 ... +!> \param sr6 ... +!> \param para_env ... +!> \param error ... +!> \param calc_scaling ... +! ************************************************************************************************** + SUBROUTINE dftd3_param_from_library(c6ab, maxci, r0ab, rcov, r2r4, & + pp_type, ref_functional, & + s6, s8, a1, a2, sr6, & + para_env, error, calc_scaling) + + REAL(KIND=dp), DIMENSION(:, :, :, :, :), & + INTENT(INOUT) :: c6ab + INTEGER, DIMENSION(:), INTENT(INOUT) :: maxci + REAL(KIND=dp), DIMENSION(:, :), INTENT(INOUT) :: r0ab + REAL(KIND=dp), DIMENSION(:), INTENT(INOUT) :: rcov, r2r4 + INTEGER, INTENT(IN) :: pp_type + CHARACTER(LEN=*), INTENT(IN) :: ref_functional + REAL(KIND=dp), INTENT(INOUT) :: s6, s8, a1, a2, sr6 + TYPE(mp_para_env_type), INTENT(IN), POINTER :: para_env + CHARACTER(LEN=*), INTENT(OUT), OPTIONAL :: error + LOGICAL, INTENT(IN), OPTIONAL :: calc_scaling + + CPABORT("s-dftd3 library not compiled in") + + END SUBROUTINE dftd3_param_from_library + +#endif + +END MODULE qs_dispersion_s_dftd3 diff --git a/src/qs_dispersion_types.F b/src/qs_dispersion_types.F index 88d79d31fe..ef623cb95a 100644 --- a/src/qs_dispersion_types.F +++ b/src/qs_dispersion_types.F @@ -60,6 +60,8 @@ MODULE qs_dispersion_types REAL(KIND=dp) :: eps_cn = -1.0_dp LOGICAL :: d4_reference_code = .FALSE. !Use D4 calculation from ext. library LOGICAL :: d4_debug = .FALSE. !Output debug information for D4 + LOGICAL :: d3_reference_code = .FALSE. !Use D3 parameters from s-dftd3 library + LOGICAL :: d3_scaling_explicit = .FALSE. !Scaling parameters were explicitly set LOGICAL :: doabc = .FALSE. !neglect C9 terms LOGICAL :: c9cnst = .FALSE. !use constant c9 terms LOGICAL :: lrc = .FALSE. !calculate a long range correction diff --git a/src/qs_dispersion_utils.F b/src/qs_dispersion_utils.F index 14d8753dd2..37de5f717c 100644 --- a/src/qs_dispersion_utils.F +++ b/src/qs_dispersion_utils.F @@ -45,7 +45,8 @@ MODULE qs_dispersion_utils CHARACTER(len=*), PARAMETER, PRIVATE :: moduleN = 'qs_dispersion_utils' - PUBLIC :: qs_dispersion_env_set, qs_write_dispersion + PUBLIC :: qs_dispersion_env_set, qs_write_dispersion, & + qs_scaling_dftd3, qs_scaling_dftd3bj PUBLIC :: cellhash, xc_functional_to_d_name, xc_functional_to_d4_name_int, xc_functional_detect_expanded ! ************************************************************************************************** @@ -274,16 +275,42 @@ CONTAINS "PAIR_POTENTIAL%REFERENCE_FUNCTIONAL", & c_val=dispersion_env%ref_functional) END IF - IF (dispersion_env%pp_type == vdw_pairpot_dftd3) THEN - CALL qs_scaling_dftd3(dispersion_env%s6, dispersion_env%sr6, & - dispersion_env%s8, dispersion_env%ref_functional) - ELSE IF (dispersion_env%pp_type == vdw_pairpot_dftd3bj) THEN - CALL qs_scaling_dftd3bj(dispersion_env%s6, dispersion_env%a1, dispersion_env%s8, & - dispersion_env%a2, dispersion_env%ref_functional) + CALL section_vals_val_get(pp_section, "D3_REFERENCE_CODE", & + l_val=dispersion_env%d3_reference_code) + IF (.NOT. dispersion_env%d3_reference_code) THEN + IF (dispersion_env%pp_type == vdw_pairpot_dftd3) THEN + CALL qs_scaling_dftd3(dispersion_env%s6, dispersion_env%sr6, dispersion_env%s8, & + dispersion_env%ref_functional) + ELSE IF (dispersion_env%pp_type == vdw_pairpot_dftd3bj) THEN + CALL qs_scaling_dftd3bj(dispersion_env%s6, dispersion_env%a1, dispersion_env%s8, & + dispersion_env%a2, dispersion_env%ref_functional) + END IF END IF ELSE + dispersion_env%d3_scaling_explicit = .TRUE. + CALL section_vals_val_get(pp_section, "REFERENCE_FUNCTIONAL", explicit=exfun) + IF (.NOT. exfun) THEN + CALL xc_functional_to_d_name(xc_functional_name, dispersion_env%ref_functional) + IF (dispersion_env%ref_functional == "none") THEN + dispersion_env%ref_functional = "" + END IF + ELSE + CALL section_vals_val_get(vdw_section, & + "PAIR_POTENTIAL%REFERENCE_FUNCTIONAL", & + c_val=dispersion_env%ref_functional) + END IF + CALL section_vals_val_get(pp_section, "D3_REFERENCE_CODE", & + l_val=dispersion_env%d3_reference_code) + IF (.NOT. dispersion_env%d3_reference_code) THEN + IF (dispersion_env%pp_type == vdw_pairpot_dftd3) THEN + CALL qs_scaling_dftd3(dispersion_env%s6, dispersion_env%sr6, dispersion_env%s8, & + dispersion_env%ref_functional) + ELSE IF (dispersion_env%pp_type == vdw_pairpot_dftd3bj) THEN + CALL qs_scaling_dftd3bj(dispersion_env%s6, dispersion_env%a1, dispersion_env%s8, & + dispersion_env%a2, dispersion_env%ref_functional) + END IF + END IF IF (dispersion_env%pp_type == vdw_pairpot_dftd3) THEN - ! zero damping CALL section_vals_val_get(pp_section, "D3_SCALING", r_vals=scal) dispersion_env%s6 = scal(1) dispersion_env%sr6 = scal(2) @@ -291,7 +318,6 @@ CONTAINS dispersion_env%a1 = 0.0_dp dispersion_env%a2 = 0.0_dp ELSE IF (dispersion_env%pp_type == vdw_pairpot_dftd3bj) THEN - ! BJ damping CALL section_vals_val_get(pp_section, "D3BJ_SCALING", r_vals=scal) dispersion_env%s6 = scal(1) dispersion_env%a1 = scal(2) @@ -336,6 +362,8 @@ CONTAINS CALL section_vals_val_get(pp_section, "D4_REFERENCE_CODE", & l_val=dispersion_env%d4_reference_code) CALL section_vals_val_get(pp_section, "D4_DEBUG", l_val=dispersion_env%d4_debug) + CALL section_vals_val_get(pp_section, "D3_REFERENCE_CODE", & + l_val=dispersion_env%d3_reference_code) CALL section_vals_val_get(pp_section, "D4_CUTOFF", r_val=dispersion_env%rc_d4) CALL section_vals_val_get(pp_section, "D4_CN_CUTOFF", r_val=dispersion_env%rc_cn) CALL section_vals_val_get(pp_section, "FACTOR_S9_TERM", r_val=dispersion_env%s9) @@ -567,7 +595,6 @@ CONTAINS ! https://github.com/dftd3/simple-dftd3/blob/main/assets/parameters.toml SELECT CASE (TRIM(functional)) CASE DEFAULT - ! unknown functional CPABORT("No DFT-D3 values available for this functional:"//TRIM(ref_functional)) CASE ("B1B95") s6 = 1.000_dp @@ -943,7 +970,6 @@ CONTAINS ! https://github.com/dftd3/simple-dftd3/blob/main/assets/parameters.toml SELECT CASE (TRIM(functional)) CASE DEFAULT - ! unknown functional CPABORT("No DFT-D3(BJ) values available for this functional:"//TRIM(functional)) CASE ("B1B95") s6 = 1.0000_dp diff --git a/tests/QS/regtest-dft-d3-auto-ref/TEST_FILES.toml b/tests/QS/regtest-dft-d3-auto-ref/TEST_FILES.toml index e6e61bc62e..d983f24812 100644 --- a/tests/QS/regtest-dft-d3-auto-ref/TEST_FILES.toml +++ b/tests/QS/regtest-dft-d3-auto-ref/TEST_FILES.toml @@ -3,10 +3,10 @@ # e.g. 0 means do not compare anything, running is enough # 1 compares the last total energy in the file # for details see cp2k/tools/do_regtest -"pbe_dftd3_auto.inp" = [{matcher="M011", tol=1.0E-9, ref=-15.79823912329442}] -"blyp_dftd3_overwrite.inp" = [{matcher="M011", tol=1.0E-9, ref=-15.72056128}] -"blyp_dftd3_auto.inp" = [{matcher="M011", tol=1.0E-9, ref=-15.72203183029240}] -"bp86_dftd3_auto.inp" = [{matcher="M011", tol=1.0E-9, ref=-15.86955841580662}] -"b3lyp_dftd3_auto.inp" = [{matcher="M011", tol=1.0E-9, ref=-15.75872597481363}] -"pbe0_dftd3_auto.inp" = [{matcher="M011", tol=1.0E-9, ref=-15.803039411000837}] -"tpss_dftd3_auto.inp" = [{matcher="M011", tol=1.0E-9, ref=-15.81605457676979}] \ No newline at end of file +"pbe_dftd3_auto.inp" = [{matcher="M011", tol=1.0E-9, ref=-17.199459250105793}] +"blyp_dftd3_overwrite.inp" = [{matcher="M011", tol=1.0E-9, ref=-8.036868767366540}] +"blyp_dftd3_auto.inp" = [{matcher="M011", tol=1.0E-9, ref=-8.036979920105619}] +"bp86_dftd3_auto.inp" = [{matcher="M011", tol=1.0E-9, ref=-8.102393104691805}] +"b3lyp_dftd3_auto.inp" = [{matcher="M011", tol=1.0E-9, ref=-48.225031871460232}] +"pbe0_dftd3_auto.inp" = [{matcher="M011", tol=1.0E-9, ref=-11.711537578730349}] +"tpss_dftd3_auto.inp" = [{matcher="M011", tol=1.0E-9, ref=-17.199721812757971}] \ No newline at end of file diff --git a/tests/QS/regtest-dft-d3-auto-ref/b3lyp_dftd3_auto.inp b/tests/QS/regtest-dft-d3-auto-ref/b3lyp_dftd3_auto.inp index dfaf4015e1..c64f8cf13e 100644 --- a/tests/QS/regtest-dft-d3-auto-ref/b3lyp_dftd3_auto.inp +++ b/tests/QS/regtest-dft-d3-auto-ref/b3lyp_dftd3_auto.inp @@ -49,23 +49,15 @@ &END DFT &SUBSYS &CELL - ABC 7.0 7.0 7.0 - PERIODIC NONE + ABC 5.0 5.0 5.0 &END CELL - &KIND H - BASIS_SET ORB SZV-GTH-PADE - POTENTIAL GTH-PBE-q1 + &COORD + F 0.000000 0.000000 -0.700000 + F 0.000000 0.000000 0.700000 + &END COORD + &KIND F + BASIS_SET DZVP-GTH-PADE + POTENTIAL GTH-PBE0-q7 &END KIND - &KIND C - BASIS_SET ORB SZV-GTH-PADE - POTENTIAL GTH-PBE-q4 - &END KIND - &TOPOLOGY - CONNECTIVITY OFF - COORDINATE XYZ - COORD_FILE_NAME ../sample_xyz/ch4-ch4-in.xyz - &CENTER_COORDINATES - &END CENTER_COORDINATES - &END TOPOLOGY &END SUBSYS &END FORCE_EVAL diff --git a/tests/QS/regtest-dft-d3-auto-ref/blyp_dftd3_auto.inp b/tests/QS/regtest-dft-d3-auto-ref/blyp_dftd3_auto.inp index 8c36dbb654..f8a35eedc1 100644 --- a/tests/QS/regtest-dft-d3-auto-ref/blyp_dftd3_auto.inp +++ b/tests/QS/regtest-dft-d3-auto-ref/blyp_dftd3_auto.inp @@ -7,8 +7,8 @@ &FORCE_EVAL METHOD QS &DFT - BASIS_SET_FILE_NAME BASIS_SET - POTENTIAL_FILE_NAME POTENTIAL_UZH + BASIS_SET_FILE_NAME GTH_BASIS_SETS + POTENTIAL_FILE_NAME GTH_POTENTIALS &MGRID CUTOFF 300 REL_CUTOFF 30 @@ -52,20 +52,20 @@ ABC 7.0 7.0 7.0 PERIODIC NONE &END CELL + &COORD + C 0.000000 0.000000 0.000000 + H 0.629118 0.629118 0.629118 + H -0.629118 -0.629118 0.629118 + H -0.629118 0.629118 -0.629118 + H 0.629118 -0.629118 -0.629118 + &END COORD &KIND H - BASIS_SET ORB SZV-GTH-PADE - POTENTIAL GTH-PBE-q1 + BASIS_SET DZVP-GTH-q1 + POTENTIAL GTH-BLYP-q1 &END KIND &KIND C - BASIS_SET ORB SZV-GTH-PADE - POTENTIAL GTH-PBE-q4 + BASIS_SET DZVP-GTH-q4 + POTENTIAL GTH-BLYP-q4 &END KIND - &TOPOLOGY - CONNECTIVITY OFF - COORDINATE XYZ - COORD_FILE_NAME ../sample_xyz/ch4-ch4-in.xyz - &CENTER_COORDINATES - &END CENTER_COORDINATES - &END TOPOLOGY &END SUBSYS &END FORCE_EVAL diff --git a/tests/QS/regtest-dft-d3-auto-ref/blyp_dftd3_overwrite.inp b/tests/QS/regtest-dft-d3-auto-ref/blyp_dftd3_overwrite.inp index e648da44e5..5d734af74d 100644 --- a/tests/QS/regtest-dft-d3-auto-ref/blyp_dftd3_overwrite.inp +++ b/tests/QS/regtest-dft-d3-auto-ref/blyp_dftd3_overwrite.inp @@ -7,8 +7,8 @@ &FORCE_EVAL METHOD QS &DFT - BASIS_SET_FILE_NAME BASIS_SET - POTENTIAL_FILE_NAME POTENTIAL_UZH + BASIS_SET_FILE_NAME GTH_BASIS_SETS + POTENTIAL_FILE_NAME GTH_POTENTIALS &MGRID CUTOFF 300 REL_CUTOFF 30 @@ -53,20 +53,20 @@ ABC 7.0 7.0 7.0 PERIODIC NONE &END CELL + &COORD + C 0.000000 0.000000 0.000000 + H 0.629118 0.629118 0.629118 + H -0.629118 -0.629118 0.629118 + H -0.629118 0.629118 -0.629118 + H 0.629118 -0.629118 -0.629118 + &END COORD &KIND H - BASIS_SET ORB SZV-GTH-PADE - POTENTIAL GTH-PBE-q1 + BASIS_SET DZVP-GTH-q1 + POTENTIAL GTH-BLYP-q1 &END KIND &KIND C - BASIS_SET ORB SZV-GTH-PADE - POTENTIAL GTH-PBE-q4 + BASIS_SET DZVP-GTH-q4 + POTENTIAL GTH-BLYP-q4 &END KIND - &TOPOLOGY - CONNECTIVITY OFF - COORDINATE XYZ - COORD_FILE_NAME ../sample_xyz/ch4-ch4-in.xyz - &CENTER_COORDINATES - &END CENTER_COORDINATES - &END TOPOLOGY &END SUBSYS &END FORCE_EVAL diff --git a/tests/QS/regtest-dft-d3-auto-ref/bp86_dftd3_auto.inp b/tests/QS/regtest-dft-d3-auto-ref/bp86_dftd3_auto.inp index d08e8af3a7..a706482527 100644 --- a/tests/QS/regtest-dft-d3-auto-ref/bp86_dftd3_auto.inp +++ b/tests/QS/regtest-dft-d3-auto-ref/bp86_dftd3_auto.inp @@ -7,8 +7,8 @@ &FORCE_EVAL METHOD QS &DFT - BASIS_SET_FILE_NAME BASIS_SET - POTENTIAL_FILE_NAME POTENTIAL_UZH + BASIS_SET_FILE_NAME GTH_BASIS_SETS + POTENTIAL_FILE_NAME GTH_POTENTIALS &MGRID CUTOFF 300 REL_CUTOFF 30 @@ -52,20 +52,20 @@ ABC 7.0 7.0 7.0 PERIODIC NONE &END CELL + &COORD + C 0.000000 0.000000 0.000000 + H 0.629118 0.629118 0.629118 + H -0.629118 -0.629118 0.629118 + H -0.629118 0.629118 -0.629118 + H 0.629118 -0.629118 -0.629118 + &END COORD &KIND H - BASIS_SET ORB SZV-GTH-PADE - POTENTIAL GTH-PBE-q1 + BASIS_SET DZVP-GTH-q1 + POTENTIAL GTH-BLYP-q1 &END KIND &KIND C - BASIS_SET ORB SZV-GTH-PADE - POTENTIAL GTH-PBE-q4 + BASIS_SET DZVP-GTH-q4 + POTENTIAL GTH-BLYP-q4 &END KIND - &TOPOLOGY - CONNECTIVITY OFF - COORDINATE XYZ - COORD_FILE_NAME ../sample_xyz/ch4-ch4-in.xyz - &CENTER_COORDINATES - &END CENTER_COORDINATES - &END TOPOLOGY &END SUBSYS &END FORCE_EVAL diff --git a/tests/QS/regtest-dft-d3-auto-ref/pbe0_dftd3_auto.inp b/tests/QS/regtest-dft-d3-auto-ref/pbe0_dftd3_auto.inp index 843d74d414..7cfe0096c2 100644 --- a/tests/QS/regtest-dft-d3-auto-ref/pbe0_dftd3_auto.inp +++ b/tests/QS/regtest-dft-d3-auto-ref/pbe0_dftd3_auto.inp @@ -7,7 +7,7 @@ &FORCE_EVAL METHOD QS &DFT - BASIS_SET_FILE_NAME BASIS_SET + BASIS_SET_FILE_NAME BASIS_MOLOPT_UZH POTENTIAL_FILE_NAME POTENTIAL_UZH &MGRID CUTOFF 300 @@ -49,23 +49,25 @@ &END DFT &SUBSYS &CELL - ABC 7.0 7.0 7.0 - PERIODIC NONE + ABC 5.0 5.0 5.0 &END CELL + &COORD + N 0.000000 0.000000 0.000000 + H 0.000000 -0.938000 0.380000 + H 0.000000 0.938000 0.380000 + H 0.000000 0.000000 -0.960000 + &END COORD &KIND H - BASIS_SET ORB SZV-GTH-PADE - POTENTIAL GTH-PBE-q1 + BASIS_SET DZVP-MOLOPT-PBE0-GTH-q1 + POTENTIAL GTH-PBE0-q1 &END KIND - &KIND C - BASIS_SET ORB SZV-GTH-PADE - POTENTIAL GTH-PBE-q4 + &KIND O + BASIS_SET DZVP-MOLOPT-PBE0-GTH-q6 + POTENTIAL GTH-PBE0-q6 + &END KIND + &KIND N + BASIS_SET DZVP-MOLOPT-PBE0-GTH-q5 + POTENTIAL GTH-PBE0-q5 &END KIND - &TOPOLOGY - CONNECTIVITY OFF - COORDINATE XYZ - COORD_FILE_NAME ../sample_xyz/ch4-ch4-in.xyz - &CENTER_COORDINATES - &END CENTER_COORDINATES - &END TOPOLOGY &END SUBSYS &END FORCE_EVAL diff --git a/tests/QS/regtest-dft-d3-auto-ref/pbe_dftd3_auto.inp b/tests/QS/regtest-dft-d3-auto-ref/pbe_dftd3_auto.inp index 232ad5de9d..867f95a956 100644 --- a/tests/QS/regtest-dft-d3-auto-ref/pbe_dftd3_auto.inp +++ b/tests/QS/regtest-dft-d3-auto-ref/pbe_dftd3_auto.inp @@ -39,6 +39,7 @@ &PAIR_POTENTIAL PARAMETER_FILE_NAME dftd3.dat TYPE DFTD3 + VERBOSE_OUTPUT &PRINT_DFTD &END PRINT_DFTD &END PAIR_POTENTIAL @@ -49,23 +50,20 @@ &END DFT &SUBSYS &CELL - ABC 7.0 7.0 7.0 - PERIODIC NONE + ABC 5.0 5.0 5.0 &END CELL + &COORD + O 0.000000 0.000000 -0.065587 + H 0.000000 -0.757136 0.520545 + H 0.000000 0.757136 0.520545 + &END COORD &KIND H - BASIS_SET ORB SZV-GTH-PADE + BASIS_SET DZVP-GTH-PBE POTENTIAL GTH-PBE-q1 &END KIND - &KIND C - BASIS_SET ORB SZV-GTH-PADE - POTENTIAL GTH-PBE-q4 + &KIND O + BASIS_SET DZVP-GTH-PBE + POTENTIAL GTH-PBE-q6 &END KIND - &TOPOLOGY - CONNECTIVITY OFF - COORDINATE XYZ - COORD_FILE_NAME ../sample_xyz/ch4-ch4-in.xyz - &CENTER_COORDINATES - &END CENTER_COORDINATES - &END TOPOLOGY &END SUBSYS &END FORCE_EVAL diff --git a/tests/QS/regtest-dft-d3-auto-ref/tpss_dftd3_auto.inp b/tests/QS/regtest-dft-d3-auto-ref/tpss_dftd3_auto.inp index 27b95da193..566c7f1f75 100644 --- a/tests/QS/regtest-dft-d3-auto-ref/tpss_dftd3_auto.inp +++ b/tests/QS/regtest-dft-d3-auto-ref/tpss_dftd3_auto.inp @@ -7,7 +7,7 @@ &FORCE_EVAL METHOD QS &DFT - BASIS_SET_FILE_NAME BASIS_SET + BASIS_SET_FILE_NAME BASIS_MOLOPT_UZH POTENTIAL_FILE_NAME POTENTIAL_UZH &MGRID CUTOFF 300 @@ -49,23 +49,20 @@ &END DFT &SUBSYS &CELL - ABC 7.0 7.0 7.0 - PERIODIC NONE + ABC 5.0 5.0 5.0 &END CELL + &COORD + O 0.000000 0.000000 -0.065587 + H 0.000000 -0.757136 0.520545 + H 0.000000 0.757136 0.520545 + &END COORD &KIND H - BASIS_SET ORB SZV-GTH-PADE - POTENTIAL GTH-PBE-q1 + BASIS_SET DZVP-MOLOPT-SCAN-GTH-q1 + POTENTIAL GTH-SCAN-q1 &END KIND - &KIND C - BASIS_SET ORB SZV-GTH-PADE - POTENTIAL GTH-PBE-q4 + &KIND O + BASIS_SET DZVP-MOLOPT-SCAN-GTH-q6 + POTENTIAL GTH-SCAN-q6 &END KIND - &TOPOLOGY - CONNECTIVITY OFF - COORDINATE XYZ - COORD_FILE_NAME ../sample_xyz/ch4-ch4-in.xyz - &CENTER_COORDINATES - &END CENTER_COORDINATES - &END TOPOLOGY &END SUBSYS &END FORCE_EVAL diff --git a/tests/QS/regtest-dft-d3-lib-ref/README.md b/tests/QS/regtest-dft-d3-lib-ref/README.md new file mode 100644 index 0000000000..ad988ad7c6 --- /dev/null +++ b/tests/QS/regtest-dft-d3-lib-ref/README.md @@ -0,0 +1,22 @@ +# DFT-D3 LIB Regression Tests + +## Purpose + +Tests for DFT-D3 dispersion correction using the s-dftd3 library (D3_REFERENCE_CODE mode). + +## Description + +Tests DFT-D3 (zero-damping) with s-dftd3 library instead of dftd3.dat file. Compare results with +regtest-dft-d3-auto-ref tests. + +## Requirements + +- s_dftd3 library must be linked + +## Functionals Tested + +- BLYP, B3LYP, BP86, PBE, PBE0, TPSS + +## Reference + +Compare with regtest-dft-d3-auto-ref for validation of LIB vs AUTO mode consistency. diff --git a/tests/QS/regtest-dft-d3-lib-ref/TEST_FILES.toml b/tests/QS/regtest-dft-d3-lib-ref/TEST_FILES.toml new file mode 100644 index 0000000000..b02ab122a4 --- /dev/null +++ b/tests/QS/regtest-dft-d3-lib-ref/TEST_FILES.toml @@ -0,0 +1,7 @@ +# Library-based tests (s-dftd3) for comparison with file-based +"pbe_dftd3_lib.inp" = [{matcher="M011", tol=1.0E-10, ref=-17.19945925011167}] +"blyp_dftd3_lib.inp" = [{matcher="M011", tol=1.0E-10, ref=-8.03697992023628}] +"bp86_dftd3_lib.inp" = [{matcher="M011", tol=1.0E-10, ref=-8.10239310481293}] +"b3lyp_dftd3_lib.inp" = [{matcher="M011", tol=1.0E-10, ref=-48.22503187144780}] +"pbe0_dftd3_lib.inp" = [{matcher="M011", tol=1.0E-10, ref=-11.71153757876755}] +"tpss_dftd3_lib.inp" = [{matcher="M011", tol=1.0E-10, ref=-17.19972181276416}] \ No newline at end of file diff --git a/tests/QS/regtest-dft-d3-lib-ref/b3lyp_dftd3_lib.inp b/tests/QS/regtest-dft-d3-lib-ref/b3lyp_dftd3_lib.inp new file mode 100644 index 0000000000..2ef42e3b00 --- /dev/null +++ b/tests/QS/regtest-dft-d3-lib-ref/b3lyp_dftd3_lib.inp @@ -0,0 +1,63 @@ +&GLOBAL + PRINT_LEVEL MEDIUM + PROJECT dftd3_b3lyp_lib + RUN_TYPE ENERGY +&END GLOBAL + +&FORCE_EVAL + METHOD QS + &DFT + BASIS_SET_FILE_NAME BASIS_SET + POTENTIAL_FILE_NAME POTENTIAL_UZH + &MGRID + CUTOFF 300 + REL_CUTOFF 30 + &END MGRID + &POISSON + PERIODIC none + POISSON_SOLVER MT + &END POISSON + &QS + EPS_DEFAULT 1.0E-12 + &END QS + &SCF + EPS_SCF 1.0E-6 + MAX_SCF 40 + SCF_GUESS ATOMIC + &OT ON + MINIMIZER DIIS + PRECONDITIONER FULL_ALL + &END OT + &OUTER_SCF + EPS_SCF 1.0E-6 + MAX_SCF 10 + &END OUTER_SCF + &END SCF + &XC + &VDW_POTENTIAL + DISPERSION_FUNCTIONAL PAIR_POTENTIAL + &PAIR_POTENTIAL + D3_REFERENCE_CODE + TYPE DFTD3 + &PRINT_DFTD + &END PRINT_DFTD + &END PAIR_POTENTIAL + &END VDW_POTENTIAL + &XC_FUNCTIONAL B3LYP + &END XC_FUNCTIONAL + &END XC + &END DFT + &SUBSYS + &CELL + ABC 5.0 5.0 5.0 + &END CELL + &COORD + F 0.000000 0.000000 -0.700000 + F 0.000000 0.000000 0.700000 + &END COORD + &KIND F + BASIS_SET DZVP-GTH-PADE + POTENTIAL GTH-PBE0-q7 + &END KIND + &END SUBSYS +&END FORCE_EVAL diff --git a/tests/QS/regtest-dft-d3-lib-ref/blyp_dftd3_lib.inp b/tests/QS/regtest-dft-d3-lib-ref/blyp_dftd3_lib.inp new file mode 100644 index 0000000000..fb7730d43d --- /dev/null +++ b/tests/QS/regtest-dft-d3-lib-ref/blyp_dftd3_lib.inp @@ -0,0 +1,71 @@ +&GLOBAL + PRINT_LEVEL MEDIUM + PROJECT dftd3_blyp_lib + RUN_TYPE ENERGY +&END GLOBAL + +&FORCE_EVAL + METHOD QS + &DFT + BASIS_SET_FILE_NAME GTH_BASIS_SETS + POTENTIAL_FILE_NAME GTH_POTENTIALS + &MGRID + CUTOFF 300 + REL_CUTOFF 30 + &END MGRID + &POISSON + PERIODIC none + POISSON_SOLVER MT + &END POISSON + &QS + EPS_DEFAULT 1.0E-12 + &END QS + &SCF + EPS_SCF 1.0E-6 + MAX_SCF 40 + SCF_GUESS ATOMIC + &OT ON + MINIMIZER DIIS + PRECONDITIONER FULL_ALL + &END OT + &OUTER_SCF + EPS_SCF 1.0E-6 + MAX_SCF 10 + &END OUTER_SCF + &END SCF + &XC + &VDW_POTENTIAL + DISPERSION_FUNCTIONAL PAIR_POTENTIAL + &PAIR_POTENTIAL + D3_REFERENCE_CODE + TYPE DFTD3 + &PRINT_DFTD + &END PRINT_DFTD + &END PAIR_POTENTIAL + &END VDW_POTENTIAL + &XC_FUNCTIONAL BLYP + &END XC_FUNCTIONAL + &END XC + &END DFT + &SUBSYS + &CELL + ABC 7.0 7.0 7.0 + PERIODIC NONE + &END CELL + &COORD + C 0.000000 0.000000 0.000000 + H 0.629118 0.629118 0.629118 + H -0.629118 -0.629118 0.629118 + H -0.629118 0.629118 -0.629118 + H 0.629118 -0.629118 -0.629118 + &END COORD + &KIND H + BASIS_SET DZVP-GTH-q1 + POTENTIAL GTH-BLYP-q1 + &END KIND + &KIND C + BASIS_SET DZVP-GTH-q4 + POTENTIAL GTH-BLYP-q4 + &END KIND + &END SUBSYS +&END FORCE_EVAL diff --git a/tests/QS/regtest-dft-d3-lib-ref/bp86_dftd3_lib.inp b/tests/QS/regtest-dft-d3-lib-ref/bp86_dftd3_lib.inp new file mode 100644 index 0000000000..288b595b8f --- /dev/null +++ b/tests/QS/regtest-dft-d3-lib-ref/bp86_dftd3_lib.inp @@ -0,0 +1,71 @@ +&GLOBAL + PRINT_LEVEL MEDIUM + PROJECT dftd3_bp86_lib + RUN_TYPE ENERGY +&END GLOBAL + +&FORCE_EVAL + METHOD QS + &DFT + BASIS_SET_FILE_NAME GTH_BASIS_SETS + POTENTIAL_FILE_NAME GTH_POTENTIALS + &MGRID + CUTOFF 300 + REL_CUTOFF 30 + &END MGRID + &POISSON + PERIODIC none + POISSON_SOLVER MT + &END POISSON + &QS + EPS_DEFAULT 1.0E-12 + &END QS + &SCF + EPS_SCF 1.0E-6 + MAX_SCF 40 + SCF_GUESS ATOMIC + &OT ON + MINIMIZER DIIS + PRECONDITIONER FULL_ALL + &END OT + &OUTER_SCF + EPS_SCF 1.0E-6 + MAX_SCF 10 + &END OUTER_SCF + &END SCF + &XC + &VDW_POTENTIAL + DISPERSION_FUNCTIONAL PAIR_POTENTIAL + &PAIR_POTENTIAL + D3_REFERENCE_CODE + TYPE DFTD3 + &PRINT_DFTD + &END PRINT_DFTD + &END PAIR_POTENTIAL + &END VDW_POTENTIAL + &XC_FUNCTIONAL BP + &END XC_FUNCTIONAL + &END XC + &END DFT + &SUBSYS + &CELL + ABC 7.0 7.0 7.0 + PERIODIC NONE + &END CELL + &COORD + C 0.000000 0.000000 0.000000 + H 0.629118 0.629118 0.629118 + H -0.629118 -0.629118 0.629118 + H -0.629118 0.629118 -0.629118 + H 0.629118 -0.629118 -0.629118 + &END COORD + &KIND H + BASIS_SET DZVP-GTH-q1 + POTENTIAL GTH-BLYP-q1 + &END KIND + &KIND C + BASIS_SET DZVP-GTH-q4 + POTENTIAL GTH-BLYP-q4 + &END KIND + &END SUBSYS +&END FORCE_EVAL diff --git a/tests/QS/regtest-dft-d3-lib-ref/pbe0_dftd3_lib.inp b/tests/QS/regtest-dft-d3-lib-ref/pbe0_dftd3_lib.inp new file mode 100644 index 0000000000..d7f5a85b86 --- /dev/null +++ b/tests/QS/regtest-dft-d3-lib-ref/pbe0_dftd3_lib.inp @@ -0,0 +1,73 @@ +&GLOBAL + PRINT_LEVEL MEDIUM + PROJECT dftd3_pbe0_lib + RUN_TYPE ENERGY +&END GLOBAL + +&FORCE_EVAL + METHOD QS + &DFT + BASIS_SET_FILE_NAME BASIS_MOLOPT_UZH + POTENTIAL_FILE_NAME POTENTIAL_UZH + &MGRID + CUTOFF 300 + REL_CUTOFF 30 + &END MGRID + &POISSON + PERIODIC none + POISSON_SOLVER MT + &END POISSON + &QS + EPS_DEFAULT 1.0E-12 + &END QS + &SCF + EPS_SCF 1.0E-6 + MAX_SCF 40 + SCF_GUESS ATOMIC + &OT ON + MINIMIZER DIIS + PRECONDITIONER FULL_ALL + &END OT + &OUTER_SCF + EPS_SCF 1.0E-6 + MAX_SCF 10 + &END OUTER_SCF + &END SCF + &XC + &VDW_POTENTIAL + DISPERSION_FUNCTIONAL PAIR_POTENTIAL + &PAIR_POTENTIAL + D3_REFERENCE_CODE + TYPE DFTD3 + &PRINT_DFTD + &END PRINT_DFTD + &END PAIR_POTENTIAL + &END VDW_POTENTIAL + &XC_FUNCTIONAL PBE0 + &END XC_FUNCTIONAL + &END XC + &END DFT + &SUBSYS + &CELL + ABC 5.0 5.0 5.0 + &END CELL + &COORD + N 0.000000 0.000000 0.000000 + H 0.000000 -0.938000 0.380000 + H 0.000000 0.938000 0.380000 + H 0.000000 0.000000 -0.960000 + &END COORD + &KIND H + BASIS_SET DZVP-MOLOPT-PBE0-GTH-q1 + POTENTIAL GTH-PBE0-q1 + &END KIND + &KIND O + BASIS_SET DZVP-MOLOPT-PBE0-GTH-q6 + POTENTIAL GTH-PBE0-q6 + &END KIND + &KIND N + BASIS_SET DZVP-MOLOPT-PBE0-GTH-q5 + POTENTIAL GTH-PBE0-q5 + &END KIND + &END SUBSYS +&END FORCE_EVAL diff --git a/tests/QS/regtest-dft-d3-lib-ref/pbe_dftd3_lib.inp b/tests/QS/regtest-dft-d3-lib-ref/pbe_dftd3_lib.inp new file mode 100644 index 0000000000..840dcd4753 --- /dev/null +++ b/tests/QS/regtest-dft-d3-lib-ref/pbe_dftd3_lib.inp @@ -0,0 +1,68 @@ +&GLOBAL + PRINT_LEVEL MEDIUM + PROJECT dftd3_pbe_lib + RUN_TYPE ENERGY +&END GLOBAL + +&FORCE_EVAL + METHOD QS + &DFT + BASIS_SET_FILE_NAME BASIS_SET + POTENTIAL_FILE_NAME POTENTIAL_UZH + &MGRID + CUTOFF 300 + REL_CUTOFF 30 + &END MGRID + &POISSON + PERIODIC none + POISSON_SOLVER MT + &END POISSON + &QS + EPS_DEFAULT 1.0E-12 + &END QS + &SCF + EPS_SCF 1.0E-6 + MAX_SCF 40 + SCF_GUESS ATOMIC + &OT ON + MINIMIZER DIIS + PRECONDITIONER FULL_ALL + &END OT + &OUTER_SCF + EPS_SCF 1.0E-6 + MAX_SCF 10 + &END OUTER_SCF + &END SCF + &XC + &VDW_POTENTIAL + DISPERSION_FUNCTIONAL PAIR_POTENTIAL + &PAIR_POTENTIAL + D3_REFERENCE_CODE + TYPE DFTD3 + &PRINT_DFTD + &END PRINT_DFTD + &END PAIR_POTENTIAL + &END VDW_POTENTIAL + &XC_FUNCTIONAL PBE + &END XC_FUNCTIONAL + &END XC + &END DFT + &SUBSYS + &CELL + ABC 5.0 5.0 5.0 + &END CELL + &COORD + O 0.000000 0.000000 -0.065587 + H 0.000000 -0.757136 0.520545 + H 0.000000 0.757136 0.520545 + &END COORD + &KIND H + BASIS_SET DZVP-GTH-PBE + POTENTIAL GTH-PBE-q1 + &END KIND + &KIND O + BASIS_SET DZVP-GTH-PBE + POTENTIAL GTH-PBE-q6 + &END KIND + &END SUBSYS +&END FORCE_EVAL diff --git a/tests/QS/regtest-dft-d3-lib-ref/tpss_dftd3_lib.inp b/tests/QS/regtest-dft-d3-lib-ref/tpss_dftd3_lib.inp new file mode 100644 index 0000000000..969512e0cf --- /dev/null +++ b/tests/QS/regtest-dft-d3-lib-ref/tpss_dftd3_lib.inp @@ -0,0 +1,68 @@ +&GLOBAL + PRINT_LEVEL MEDIUM + PROJECT dftd3_tpss_lib + RUN_TYPE ENERGY +&END GLOBAL + +&FORCE_EVAL + METHOD QS + &DFT + BASIS_SET_FILE_NAME BASIS_MOLOPT_UZH + POTENTIAL_FILE_NAME POTENTIAL_UZH + &MGRID + CUTOFF 300 + REL_CUTOFF 30 + &END MGRID + &POISSON + PERIODIC none + POISSON_SOLVER MT + &END POISSON + &QS + EPS_DEFAULT 1.0E-12 + &END QS + &SCF + EPS_SCF 1.0E-6 + MAX_SCF 40 + SCF_GUESS ATOMIC + &OT ON + MINIMIZER DIIS + PRECONDITIONER FULL_ALL + &END OT + &OUTER_SCF + EPS_SCF 1.0E-6 + MAX_SCF 10 + &END OUTER_SCF + &END SCF + &XC + &VDW_POTENTIAL + DISPERSION_FUNCTIONAL PAIR_POTENTIAL + &PAIR_POTENTIAL + D3_REFERENCE_CODE + TYPE DFTD3 + &PRINT_DFTD + &END PRINT_DFTD + &END PAIR_POTENTIAL + &END VDW_POTENTIAL + &XC_FUNCTIONAL TPSS + &END XC_FUNCTIONAL + &END XC + &END DFT + &SUBSYS + &CELL + ABC 5.0 5.0 5.0 + &END CELL + &COORD + O 0.000000 0.000000 -0.065587 + H 0.000000 -0.757136 0.520545 + H 0.000000 0.757136 0.520545 + &END COORD + &KIND H + BASIS_SET DZVP-MOLOPT-SCAN-GTH-q1 + POTENTIAL GTH-SCAN-q1 + &END KIND + &KIND O + BASIS_SET DZVP-MOLOPT-SCAN-GTH-q6 + POTENTIAL GTH-SCAN-q6 + &END KIND + &END SUBSYS +&END FORCE_EVAL diff --git a/tests/QS/regtest-dft-d3-s-ref/TEST_FILES.toml b/tests/QS/regtest-dft-d3-s-ref/TEST_FILES.toml new file mode 100644 index 0000000000..7d4ccc2ac6 --- /dev/null +++ b/tests/QS/regtest-dft-d3-s-ref/TEST_FILES.toml @@ -0,0 +1,12 @@ +# runs are executed in the same order as in this file +# the second field tells which test should be run in order to compare with the last available output +# e.g. 0 means do not compare anything, running is enough +# 1 compares the last total energy in the file +# for details see cp2k/tools/do_regtest +"scan_d3_s.inp" = [{matcher="M033", tol=1.0E-10, ref=-0.00043770835513}] +"dftd3src1.inp" = [{matcher="M033", tol=1.0E-10, ref=-0.026101680626}] +"dftd3src2.inp" = [{matcher="M033", tol=1.0E-10, ref=-0.01190472463099}] +"dftd3_t1.inp" = [{matcher="M033", tol=1.0E-10, ref=-0.0014768521278}] +"dftd3_t2.inp" = [{matcher="M033", tol=1.0E-10, ref=-6.284602909e-05}] +"dftd3_t3.inp" = [{matcher="M033", tol=2.0E-10, ref=-0.0002158848508}] +#EOF \ No newline at end of file diff --git a/tests/QS/regtest-dft-d3-s-ref/dftd3_t1.inp b/tests/QS/regtest-dft-d3-s-ref/dftd3_t1.inp new file mode 100644 index 0000000000..bc456959d3 --- /dev/null +++ b/tests/QS/regtest-dft-d3-s-ref/dftd3_t1.inp @@ -0,0 +1,67 @@ +&GLOBAL + PRINT_LEVEL MEDIUM + PROJECT dftd3_t1 + RUN_TYPE ENERGY +&END GLOBAL + +&FORCE_EVAL + METHOD QS + &DFT + BASIS_SET_FILE_NAME GTH_BASIS_SETS + POTENTIAL_FILE_NAME POTENTIAL + &MGRID + CUTOFF 100 + NGRIDS 1 + &END MGRID + &QS + METHOD GPW + &END QS + &SCF + EPS_SCF 1.0e-0 + IGNORE_CONVERGENCE_FAILURE + MAX_SCF 1 + SCF_GUESS ATOMIC + &END SCF + &XC + &VDW_POTENTIAL + DISPERSION_FUNCTIONAL PAIR_POTENTIAL + &PAIR_POTENTIAL + D3_REFERENCE_CODE + PARAMETER_FILE_NAME dftd3.dat + REFERENCE_FUNCTIONAL PBE + TYPE DFTD3 + &PRINT_DFTD + &END PRINT_DFTD + &END PAIR_POTENTIAL + &END VDW_POTENTIAL + &XC_FUNCTIONAL PBE + &END XC_FUNCTIONAL + &END XC + &END DFT + &SUBSYS + &CELL + ABC 6.0 6.0 6.0 + PERIODIC NONE + &END CELL + &COORD + C 7.499969 9.250001 7.500000 + C 7.499969 5.750001 7.500000 + H 8.205969 8.887002 6.753000 + H 6.499969 8.887002 7.262000 + H 7.793968 8.887002 8.485001 + H 7.499969 10.340001 7.500000 + H 7.199968 6.113001 6.517000 + H 8.501968 6.113001 7.731000 + H 6.798969 6.113001 8.252001 + H 7.499969 4.660001 7.500000 + &END COORD + &KIND H + BASIS_SET DZV-GTH + POTENTIAL GTH-PBE-q1 + &END KIND + &KIND C + BASIS_SET DZVP-GTH + POTENTIAL GTH-PBE-q4 + &END KIND + &END SUBSYS +&END FORCE_EVAL diff --git a/tests/QS/regtest-dft-d3-s-ref/dftd3_t2.inp b/tests/QS/regtest-dft-d3-s-ref/dftd3_t2.inp new file mode 100644 index 0000000000..d4f7a44b58 --- /dev/null +++ b/tests/QS/regtest-dft-d3-s-ref/dftd3_t2.inp @@ -0,0 +1,55 @@ +&GLOBAL + PRINT_LEVEL MEDIUM + PROJECT dftd3_t2 + RUN_TYPE ENERGY_FORCE +&END GLOBAL + +&FORCE_EVAL + METHOD QS + &DFT + BASIS_SET_FILE_NAME BASIS_MOLOPT + POTENTIAL_FILE_NAME POTENTIAL + &MGRID + CUTOFF 10 + NGRIDS 1 + &END MGRID + &QS + METHOD GPW + &END QS + &SCF + EPS_SCF 1.0e-0 + MAX_SCF 1 + SCF_GUESS ATOMIC + &END SCF + &XC + &VDW_POTENTIAL + DISPERSION_FUNCTIONAL PAIR_POTENTIAL + &PAIR_POTENTIAL + CALCULATE_C9_TERM T + D3_REFERENCE_CODE + PARAMETER_FILE_NAME dftd3.dat + REFERENCE_FUNCTIONAL PBE + TYPE DFTD3 + &END PAIR_POTENTIAL + &END VDW_POTENTIAL + &XC_FUNCTIONAL PBE + &END XC_FUNCTIONAL + &END XC + &END DFT + &SUBSYS + &CELL + ABC 6.0 6.0 6.0 + PERIODIC NONE + &END CELL + &COORD + UNIT bohr + He 1.501 0.0 0.0 + He -1.500 0.0 0.0 + He 0.000 1.5 0.0 + &END COORD + &KIND He + BASIS_SET SZV-MOLOPT-SR-GTH + POTENTIAL GTH-PBE-q2 + &END KIND + &END SUBSYS +&END FORCE_EVAL diff --git a/tests/QS/regtest-dft-d3-s-ref/dftd3_t3.inp b/tests/QS/regtest-dft-d3-s-ref/dftd3_t3.inp new file mode 100644 index 0000000000..d07b77721d --- /dev/null +++ b/tests/QS/regtest-dft-d3-s-ref/dftd3_t3.inp @@ -0,0 +1,58 @@ +&GLOBAL + PRINT_LEVEL MEDIUM + PROJECT dftd3_t3 + RUN_TYPE ENERGY_FORCE +&END GLOBAL + +&FORCE_EVAL + METHOD QS + STRESS_TENSOR ANALYTICAL + &DFT + BASIS_SET_FILE_NAME BASIS_MOLOPT + POTENTIAL_FILE_NAME POTENTIAL + &MGRID + CUTOFF 10 + NGRIDS 1 + &END MGRID + &QS + METHOD GPW + &END QS + &SCF + EPS_SCF 1.0e-0 + MAX_SCF 1 + SCF_GUESS ATOMIC + &END SCF + &XC + &VDW_POTENTIAL + DISPERSION_FUNCTIONAL PAIR_POTENTIAL + &PAIR_POTENTIAL + CALCULATE_C9_TERM T + D3_REFERENCE_CODE + PARAMETER_FILE_NAME dftd3.dat + REFERENCE_FUNCTIONAL PBE + R_CUTOFF 7. + TYPE DFTD3 + &END PAIR_POTENTIAL + &END VDW_POTENTIAL + &XC_FUNCTIONAL PBE + &END XC_FUNCTIONAL + &END XC + &END DFT + &PRINT + &FORCES + &END FORCES + &END PRINT + &SUBSYS + &CELL + ABC 3.0 3.0 3.0 + &END CELL + &COORD + SCALED + He 0.5 0.5 0.5 + &END COORD + &KIND He + BASIS_SET SZV-MOLOPT-SR-GTH + POTENTIAL GTH-PBE-q2 + &END KIND + &END SUBSYS +&END FORCE_EVAL diff --git a/tests/QS/regtest-dft-d3-s-ref/dftd3src1.inp b/tests/QS/regtest-dft-d3-s-ref/dftd3src1.inp new file mode 100644 index 0000000000..c02895540e --- /dev/null +++ b/tests/QS/regtest-dft-d3-s-ref/dftd3src1.inp @@ -0,0 +1,85 @@ +&GLOBAL + PRINT_LEVEL LOW + PROJECT D3-SRC + RUN_TYPE ENERGY +&END GLOBAL + +&FORCE_EVAL + METHOD QUICKSTEP + &DFT + BASIS_SET_FILE_NAME GTH_BASIS_SETS + POTENTIAL_FILE_NAME GTH_POTENTIALS + &MGRID + CUTOFF 280 + NGRIDS 5 + REL_CUTOFF 40 + &END MGRID + &POISSON + PERIODIC NONE + POISSON_SOLVER MT + &END POISSON + &QS + EPS_DEFAULT 1.0E-12 + EPS_GVG 1.0E-6 + &END QS + &SCF + EPS_SCF 1.0E-6 + IGNORE_CONVERGENCE_FAILURE + MAX_SCF 1 + SCF_GUESS ATOMIC + &OT + &END OT + &END SCF + &XC + &VDW_POTENTIAL + DISPERSION_FUNCTIONAL PAIR_POTENTIAL + &PAIR_POTENTIAL + CALCULATE_C9_TERM + D3_REFERENCE_CODE + PARAMETER_FILE_NAME dftd3.dat + REFERENCE_FUNCTIONAL B97-3c + R_CUTOFF 7.93766 + SHORT_RANGE_CORRECTION + TYPE DFTD3(BJ) + &END PAIR_POTENTIAL + &END VDW_POTENTIAL + &XC_FUNCTIONAL + &BECKE97 + PARAMETRIZATION B97-3c + SCALE_C 1.0 + SCALE_X 1.0 + &END BECKE97 + &END XC_FUNCTIONAL + &XC_GRID + XC_DERIV NN10_SMOOTH + XC_SMOOTH_RHO NN10 + &END XC_GRID + &END XC + &END DFT + &SUBSYS + &CELL + ABC [angstrom] 10. 10. 10. + PERIODIC NONE + &END CELL + &COORD + C 7.499969 9.250001 7.500000 + C 7.499969 5.750001 7.500000 + H 8.205969 8.887002 6.753000 + H 6.499969 8.887002 7.262000 + H 7.793968 8.887002 8.485001 + H 7.499969 10.340001 7.500000 + H 7.199968 6.113001 6.517000 + H 8.501968 6.113001 7.731000 + H 6.798969 6.113001 8.252001 + H 7.499969 4.660001 7.500000 + &END COORD + &KIND H + BASIS_SET DZVP-GTH + POTENTIAL GTH-PBE + &END KIND + &KIND C + BASIS_SET DZVP-GTH + POTENTIAL GTH-PBE + &END KIND + &END SUBSYS +&END FORCE_EVAL diff --git a/tests/QS/regtest-dft-d3-s-ref/dftd3src2.inp b/tests/QS/regtest-dft-d3-s-ref/dftd3src2.inp new file mode 100644 index 0000000000..039250412f --- /dev/null +++ b/tests/QS/regtest-dft-d3-s-ref/dftd3src2.inp @@ -0,0 +1,83 @@ +&GLOBAL + PRINT_LEVEL LOW + PROJECT D3-SRC + RUN_TYPE GEO_OPT +&END GLOBAL + +&MOTION + &GEO_OPT + MAX_ITER 1 + &END GEO_OPT +&END MOTION + +&FORCE_EVAL + METHOD QUICKSTEP + &DFT + BASIS_SET_FILE_NAME GTH_BASIS_SETS + POTENTIAL_FILE_NAME GTH_POTENTIALS + &MGRID + CUTOFF 200 + NGRIDS 5 + REL_CUTOFF 40 + &END MGRID + &QS + EPS_DEFAULT 1.0E-10 + EPS_GVG 1.0E-6 + &END QS + &SCF + EPS_SCF 1.0E-6 + MAX_SCF 50 + SCF_GUESS ATOMIC + &OT + MINIMIZER DIIS + PRECONDITIONER FULL_ALL + &END OT + &END SCF + &XC + &VDW_POTENTIAL + DISPERSION_FUNCTIONAL PAIR_POTENTIAL + &PAIR_POTENTIAL + CALCULATE_C9_TERM + D3_REFERENCE_CODE + PARAMETER_FILE_NAME dftd3.dat + REFERENCE_FUNCTIONAL B97-3c + R_CUTOFF 7.93766 + SHORT_RANGE_CORRECTION + TYPE DFTD3(BJ) + &END PAIR_POTENTIAL + &END VDW_POTENTIAL + &XC_FUNCTIONAL + &BECKE97 + PARAMETRIZATION B97-3c + SCALE_C 1.0 + SCALE_X 1.0 + &END BECKE97 + &END XC_FUNCTIONAL + &XC_GRID + XC_DERIV NN10_SMOOTH + XC_SMOOTH_RHO NN10 + &END XC_GRID + &END XC + &END DFT + &SUBSYS + &CELL + ABC [angstrom] 10. 10. 10. + PERIODIC NONE + &END CELL + &COORD + C 7.499969 9.250001 7.500000 + H 8.205969 8.887002 6.753000 + H 6.499969 8.887002 7.262000 + H 7.793968 8.887002 8.485001 + H 7.499969 10.340001 7.500000 + &END COORD + &KIND H + BASIS_SET DZVP-GTH + POTENTIAL GTH-PBE + &END KIND + &KIND C + BASIS_SET DZVP-GTH + POTENTIAL GTH-PBE + &END KIND + &END SUBSYS +&END FORCE_EVAL diff --git a/tests/QS/regtest-dft-d3-s-ref/scan_d3_s.inp b/tests/QS/regtest-dft-d3-s-ref/scan_d3_s.inp new file mode 100644 index 0000000000..7139e6fa49 --- /dev/null +++ b/tests/QS/regtest-dft-d3-s-ref/scan_d3_s.inp @@ -0,0 +1,76 @@ +&GLOBAL + PRINT_LEVEL MEDIUM + PROJECT scan_d3_s + RUN_TYPE ENERGY +&END GLOBAL + +&FORCE_EVAL + METHOD QS + &DFT + BASIS_SET_FILE_NAME BASIS_SET + POTENTIAL_FILE_NAME POTENTIAL_UZH + &MGRID + CUTOFF 300 + REL_CUTOFF 30 + &END MGRID + &POISSON + PERIODIC none + POISSON_SOLVER MT + &END POISSON + &QS + EPS_DEFAULT 1.0E-12 + &END QS + &SCF + EPS_SCF 1.0E-6 + MAX_SCF 40 + SCF_GUESS ATOMIC + &OT ON + MINIMIZER DIIS + PRECONDITIONER FULL_ALL + &END OT + &OUTER_SCF + EPS_SCF 1.0E-6 + MAX_SCF 10 + &END OUTER_SCF + &END SCF + &XC + &VDW_POTENTIAL + DISPERSION_FUNCTIONAL PAIR_POTENTIAL + &PAIR_POTENTIAL + D3_REFERENCE_CODE + PARAMETER_FILE_NAME dftd3.dat + TYPE DFTD3 + &PRINT_DFTD + &END PRINT_DFTD + &END PAIR_POTENTIAL + &END VDW_POTENTIAL + &XC_FUNCTIONAL + &MGGA_C_SCAN + &END MGGA_C_SCAN + &MGGA_X_SCAN + &END MGGA_X_SCAN + &END XC_FUNCTIONAL + &END XC + &END DFT + &SUBSYS + &CELL + ABC 7.0 7.0 7.0 + PERIODIC NONE + &END CELL + &KIND H + BASIS_SET ORB SZV-GTH-PADE + POTENTIAL GTH-PBE-q1 + &END KIND + &KIND C + BASIS_SET ORB SZV-GTH-PADE + POTENTIAL GTH-PBE-q4 + &END KIND + &TOPOLOGY + CONNECTIVITY OFF + COORDINATE XYZ + COORD_FILE_NAME ../sample_xyz/ch4-ch4-in.xyz + &CENTER_COORDINATES + &END CENTER_COORDINATES + &END TOPOLOGY + &END SUBSYS +&END FORCE_EVAL diff --git a/tests/QS/regtest-dft-d3bj-lib-ref/README.md b/tests/QS/regtest-dft-d3bj-lib-ref/README.md new file mode 100644 index 0000000000..8fb3fe4e28 --- /dev/null +++ b/tests/QS/regtest-dft-d3bj-lib-ref/README.md @@ -0,0 +1,23 @@ +# DFT-D3 BJ LIB Regression Tests + +## Purpose + +Tests for DFT-D3 dispersion correction with Becke-Johnson damping using the s-dftd3 library +(D3_REFERENCE_CODE mode). + +## Description + +Tests DFT-D3 BJ with s-dftd3 library instead of dftd3.dat file. Compare results with +regtest-dft-d3-bj-auto-ref tests. + +## Requirements + +- s_dftd3 library must be linked + +## Functionals Tested + +- BLYP, B3LYP, BP86, PBE, PBE0, TPSS + +## Reference + +Compare with regtest-dft-d3-bj-auto-ref for validation of LIB vs AUTO mode consistency. diff --git a/tests/QS/regtest-dft-d3bj-lib-ref/TEST_FILES.toml b/tests/QS/regtest-dft-d3bj-lib-ref/TEST_FILES.toml new file mode 100644 index 0000000000..4ef645b8c5 --- /dev/null +++ b/tests/QS/regtest-dft-d3bj-lib-ref/TEST_FILES.toml @@ -0,0 +1,8 @@ +# Library-based tests (s-dftd3) for comparison with file-based +"pbe_dftd3bj_lib.inp" = [{matcher="M011", tol=1.0E-10, ref=-15.80031350912787}] +"blyp_dftd3bj_lib.inp" = [{matcher="M011", tol=1.0E-10, ref=-15.72599184966717}] +"bp86_dftd3bj_lib.inp" = [{matcher="M011", tol=1.0E-10, ref=-15.87172922805780}] +"b3lyp_dftd3bj_lib.inp" = [{matcher="M011", tol=1.0E-10, ref=-15.76212963632861}] +"pbe0_dftd3bj_lib.inp" = [{matcher="M011", tol=1.0E-10, ref=-15.80458919491490}] +"tpss_dftd3bj_lib.inp" = [{matcher="M011", tol=1.0E-10, ref=-15.81827490371247}] +"o2_dftd3bj_hf3c.inp" = [{matcher="E_total", tol=1.0E-09, ref=-147.62476019079045}] \ No newline at end of file diff --git a/tests/QS/regtest-dft-d3bj-lib-ref/b3lyp_dftd3bj_lib.inp b/tests/QS/regtest-dft-d3bj-lib-ref/b3lyp_dftd3bj_lib.inp new file mode 100644 index 0000000000..8e72e5f725 --- /dev/null +++ b/tests/QS/regtest-dft-d3bj-lib-ref/b3lyp_dftd3bj_lib.inp @@ -0,0 +1,71 @@ +&GLOBAL + PRINT_LEVEL MEDIUM + PROJECT dftd3bj_b3lyp_lib + RUN_TYPE ENERGY +&END GLOBAL + +&FORCE_EVAL + METHOD QS + &DFT + BASIS_SET_FILE_NAME BASIS_SET + POTENTIAL_FILE_NAME POTENTIAL_UZH + &MGRID + CUTOFF 300 + REL_CUTOFF 30 + &END MGRID + &POISSON + PERIODIC none + POISSON_SOLVER MT + &END POISSON + &QS + EPS_DEFAULT 1.0E-12 + &END QS + &SCF + EPS_SCF 1.0E-6 + MAX_SCF 40 + SCF_GUESS ATOMIC + &OT ON + MINIMIZER DIIS + PRECONDITIONER FULL_ALL + &END OT + &OUTER_SCF + EPS_SCF 1.0E-6 + MAX_SCF 10 + &END OUTER_SCF + &END SCF + &XC + &VDW_POTENTIAL + DISPERSION_FUNCTIONAL PAIR_POTENTIAL + &PAIR_POTENTIAL + D3_REFERENCE_CODE + TYPE DFTD3(BJ) + &PRINT_DFTD + &END PRINT_DFTD + &END PAIR_POTENTIAL + &END VDW_POTENTIAL + &XC_FUNCTIONAL B3LYP + &END XC_FUNCTIONAL + &END XC + &END DFT + &SUBSYS + &CELL + ABC 7.0 7.0 7.0 + PERIODIC NONE + &END CELL + &KIND H + BASIS_SET ORB SZV-GTH-PADE + POTENTIAL GTH-PBE-q1 + &END KIND + &KIND C + BASIS_SET ORB SZV-GTH-PADE + POTENTIAL GTH-PBE-q4 + &END KIND + &TOPOLOGY + CONNECTIVITY OFF + COORDINATE XYZ + COORD_FILE_NAME ../sample_xyz/ch4-ch4-in.xyz + &CENTER_COORDINATES + &END CENTER_COORDINATES + &END TOPOLOGY + &END SUBSYS +&END FORCE_EVAL diff --git a/tests/QS/regtest-dft-d3bj-lib-ref/blyp_dftd3bj_lib.inp b/tests/QS/regtest-dft-d3bj-lib-ref/blyp_dftd3bj_lib.inp new file mode 100644 index 0000000000..a544aed50c --- /dev/null +++ b/tests/QS/regtest-dft-d3bj-lib-ref/blyp_dftd3bj_lib.inp @@ -0,0 +1,71 @@ +&GLOBAL + PRINT_LEVEL MEDIUM + PROJECT dftd3bj_blyp_lib + RUN_TYPE ENERGY +&END GLOBAL + +&FORCE_EVAL + METHOD QS + &DFT + BASIS_SET_FILE_NAME BASIS_SET + POTENTIAL_FILE_NAME POTENTIAL_UZH + &MGRID + CUTOFF 300 + REL_CUTOFF 30 + &END MGRID + &POISSON + PERIODIC none + POISSON_SOLVER MT + &END POISSON + &QS + EPS_DEFAULT 1.0E-12 + &END QS + &SCF + EPS_SCF 1.0E-6 + MAX_SCF 40 + SCF_GUESS ATOMIC + &OT ON + MINIMIZER DIIS + PRECONDITIONER FULL_ALL + &END OT + &OUTER_SCF + EPS_SCF 1.0E-6 + MAX_SCF 10 + &END OUTER_SCF + &END SCF + &XC + &VDW_POTENTIAL + DISPERSION_FUNCTIONAL PAIR_POTENTIAL + &PAIR_POTENTIAL + D3_REFERENCE_CODE + TYPE DFTD3(BJ) + &PRINT_DFTD + &END PRINT_DFTD + &END PAIR_POTENTIAL + &END VDW_POTENTIAL + &XC_FUNCTIONAL BLYP + &END XC_FUNCTIONAL + &END XC + &END DFT + &SUBSYS + &CELL + ABC 7.0 7.0 7.0 + PERIODIC NONE + &END CELL + &KIND H + BASIS_SET ORB SZV-GTH-PADE + POTENTIAL GTH-PBE-q1 + &END KIND + &KIND C + BASIS_SET ORB SZV-GTH-PADE + POTENTIAL GTH-PBE-q4 + &END KIND + &TOPOLOGY + CONNECTIVITY OFF + COORDINATE XYZ + COORD_FILE_NAME ../sample_xyz/ch4-ch4-in.xyz + &CENTER_COORDINATES + &END CENTER_COORDINATES + &END TOPOLOGY + &END SUBSYS +&END FORCE_EVAL diff --git a/tests/QS/regtest-dft-d3bj-lib-ref/bp86_dftd3bj_lib.inp b/tests/QS/regtest-dft-d3bj-lib-ref/bp86_dftd3bj_lib.inp new file mode 100644 index 0000000000..ed5da164a1 --- /dev/null +++ b/tests/QS/regtest-dft-d3bj-lib-ref/bp86_dftd3bj_lib.inp @@ -0,0 +1,71 @@ +&GLOBAL + PRINT_LEVEL MEDIUM + PROJECT dftd3bj_bp86_lib + RUN_TYPE ENERGY +&END GLOBAL + +&FORCE_EVAL + METHOD QS + &DFT + BASIS_SET_FILE_NAME BASIS_SET + POTENTIAL_FILE_NAME POTENTIAL_UZH + &MGRID + CUTOFF 300 + REL_CUTOFF 30 + &END MGRID + &POISSON + PERIODIC none + POISSON_SOLVER MT + &END POISSON + &QS + EPS_DEFAULT 1.0E-12 + &END QS + &SCF + EPS_SCF 1.0E-6 + MAX_SCF 40 + SCF_GUESS ATOMIC + &OT ON + MINIMIZER DIIS + PRECONDITIONER FULL_ALL + &END OT + &OUTER_SCF + EPS_SCF 1.0E-6 + MAX_SCF 10 + &END OUTER_SCF + &END SCF + &XC + &VDW_POTENTIAL + DISPERSION_FUNCTIONAL PAIR_POTENTIAL + &PAIR_POTENTIAL + D3_REFERENCE_CODE + TYPE DFTD3(BJ) + &PRINT_DFTD + &END PRINT_DFTD + &END PAIR_POTENTIAL + &END VDW_POTENTIAL + &XC_FUNCTIONAL BP + &END XC_FUNCTIONAL + &END XC + &END DFT + &SUBSYS + &CELL + ABC 7.0 7.0 7.0 + PERIODIC NONE + &END CELL + &KIND H + BASIS_SET ORB SZV-GTH-PADE + POTENTIAL GTH-PBE-q1 + &END KIND + &KIND C + BASIS_SET ORB SZV-GTH-PADE + POTENTIAL GTH-PBE-q4 + &END KIND + &TOPOLOGY + CONNECTIVITY OFF + COORDINATE XYZ + COORD_FILE_NAME ../sample_xyz/ch4-ch4-in.xyz + &CENTER_COORDINATES + &END CENTER_COORDINATES + &END TOPOLOGY + &END SUBSYS +&END FORCE_EVAL diff --git a/tests/QS/regtest-dft-d3bj-lib-ref/o2_dftd3bj_hf3c.inp b/tests/QS/regtest-dft-d3bj-lib-ref/o2_dftd3bj_hf3c.inp new file mode 100644 index 0000000000..3ec481be8d --- /dev/null +++ b/tests/QS/regtest-dft-d3bj-lib-ref/o2_dftd3bj_hf3c.inp @@ -0,0 +1,87 @@ +&GLOBAL + PRINT_LEVEL LOW + PROJECT o2_hf3c + RUN_TYPE ENERGY +&END GLOBAL + +&FORCE_EVAL + METHOD QS + &DFT + BASIS_SET_FILE_NAME BASIS_MINIX + LSD + POTENTIAL_FILE_NAME POTENTIAL + &MGRID + CUTOFF 200 + REL_CUTOFF 30 + &END MGRID + &POISSON + PERIODIC NONE + PSOLVER MT + &END POISSON + &QS + METHOD GAPW + &END QS + &SCF + EPS_SCF 1.0e-6 + IGNORE_CONVERGENCE_FAILURE + MAX_SCF 1 + SCF_GUESS ATOMIC + &END SCF + &XC + &GCP_POTENTIAL + DELTA_ENERGY H 0.04240 + DELTA_ENERGY O 0.47901 + DELTA_ENERGY C 0.27995 + DELTA_ENERGY N 0.35791 + GLOBAL_PARAMETERS 0.1290 1.1549 1.1763 1.1526 + VERBOSE T + &END GCP_POTENTIAL + &HF + &SCREENING + EPS_SCHWARZ 1.0E-6 + &END SCREENING + &END HF + &VDW_POTENTIAL + DISPERSION_FUNCTIONAL PAIR_POTENTIAL + &PAIR_POTENTIAL + D3_REFERENCE_CODE + REFERENCE_FUNCTIONAL HF3C + SHORT_RANGE_CORRECTION TRUE + SHORT_RANGE_CORRECTION_PARAMETERS 0.03 0.70 1.50 0.75 + TYPE DFTD3(BJ) + &PRINT_DFTD + &END PRINT_DFTD + &END PAIR_POTENTIAL + &END VDW_POTENTIAL + &XC_FUNCTIONAL NONE + &END XC_FUNCTIONAL + &END XC + &END DFT + &SUBSYS + &CELL + ABC 10.0 10.0 10.0 + PERIODIC NONE + &END CELL + &COORD + UNIT bohr + O 0.000000 0.000000 0.000000 + O 4.000000 0.000000 0.000000 + &END COORD + &KIND H + BASIS_SET minix + POTENTIAL ALL + &END KIND + &KIND C + BASIS_SET minix + POTENTIAL ALL + &END KIND + &KIND O + BASIS_SET minix + POTENTIAL ALL + &END KIND + &KIND N + BASIS_SET minix + POTENTIAL ALL + &END KIND + &END SUBSYS +&END FORCE_EVAL diff --git a/tests/QS/regtest-dft-d3bj-lib-ref/pbe0_dftd3bj_lib.inp b/tests/QS/regtest-dft-d3bj-lib-ref/pbe0_dftd3bj_lib.inp new file mode 100644 index 0000000000..16eb4d3f81 --- /dev/null +++ b/tests/QS/regtest-dft-d3bj-lib-ref/pbe0_dftd3bj_lib.inp @@ -0,0 +1,71 @@ +&GLOBAL + PRINT_LEVEL MEDIUM + PROJECT dftd3bj_pbe0_lib + RUN_TYPE ENERGY +&END GLOBAL + +&FORCE_EVAL + METHOD QS + &DFT + BASIS_SET_FILE_NAME BASIS_SET + POTENTIAL_FILE_NAME POTENTIAL_UZH + &MGRID + CUTOFF 300 + REL_CUTOFF 30 + &END MGRID + &POISSON + PERIODIC none + POISSON_SOLVER MT + &END POISSON + &QS + EPS_DEFAULT 1.0E-12 + &END QS + &SCF + EPS_SCF 1.0E-6 + MAX_SCF 40 + SCF_GUESS ATOMIC + &OT ON + MINIMIZER DIIS + PRECONDITIONER FULL_ALL + &END OT + &OUTER_SCF + EPS_SCF 1.0E-6 + MAX_SCF 10 + &END OUTER_SCF + &END SCF + &XC + &VDW_POTENTIAL + DISPERSION_FUNCTIONAL PAIR_POTENTIAL + &PAIR_POTENTIAL + D3_REFERENCE_CODE + TYPE DFTD3(BJ) + &PRINT_DFTD + &END PRINT_DFTD + &END PAIR_POTENTIAL + &END VDW_POTENTIAL + &XC_FUNCTIONAL PBE0 + &END XC_FUNCTIONAL + &END XC + &END DFT + &SUBSYS + &CELL + ABC 7.0 7.0 7.0 + PERIODIC NONE + &END CELL + &KIND H + BASIS_SET ORB SZV-GTH-PADE + POTENTIAL GTH-PBE-q1 + &END KIND + &KIND C + BASIS_SET ORB SZV-GTH-PADE + POTENTIAL GTH-PBE-q4 + &END KIND + &TOPOLOGY + CONNECTIVITY OFF + COORDINATE XYZ + COORD_FILE_NAME ../sample_xyz/ch4-ch4-in.xyz + &CENTER_COORDINATES + &END CENTER_COORDINATES + &END TOPOLOGY + &END SUBSYS +&END FORCE_EVAL diff --git a/tests/QS/regtest-dft-d3bj-lib-ref/pbe_dftd3bj_lib.inp b/tests/QS/regtest-dft-d3bj-lib-ref/pbe_dftd3bj_lib.inp new file mode 100644 index 0000000000..ae0dabe1f0 --- /dev/null +++ b/tests/QS/regtest-dft-d3bj-lib-ref/pbe_dftd3bj_lib.inp @@ -0,0 +1,71 @@ +&GLOBAL + PRINT_LEVEL MEDIUM + PROJECT dftd3bj_pbe_lib + RUN_TYPE ENERGY +&END GLOBAL + +&FORCE_EVAL + METHOD QS + &DFT + BASIS_SET_FILE_NAME BASIS_SET + POTENTIAL_FILE_NAME POTENTIAL_UZH + &MGRID + CUTOFF 300 + REL_CUTOFF 30 + &END MGRID + &POISSON + PERIODIC none + POISSON_SOLVER MT + &END POISSON + &QS + EPS_DEFAULT 1.0E-12 + &END QS + &SCF + EPS_SCF 1.0E-6 + MAX_SCF 40 + SCF_GUESS ATOMIC + &OT ON + MINIMIZER DIIS + PRECONDITIONER FULL_ALL + &END OT + &OUTER_SCF + EPS_SCF 1.0E-6 + MAX_SCF 10 + &END OUTER_SCF + &END SCF + &XC + &VDW_POTENTIAL + DISPERSION_FUNCTIONAL PAIR_POTENTIAL + &PAIR_POTENTIAL + D3_REFERENCE_CODE + TYPE DFTD3(BJ) + &PRINT_DFTD + &END PRINT_DFTD + &END PAIR_POTENTIAL + &END VDW_POTENTIAL + &XC_FUNCTIONAL PBE + &END XC_FUNCTIONAL + &END XC + &END DFT + &SUBSYS + &CELL + ABC 7.0 7.0 7.0 + PERIODIC NONE + &END CELL + &KIND H + BASIS_SET ORB SZV-GTH-PADE + POTENTIAL GTH-PBE-q1 + &END KIND + &KIND C + BASIS_SET ORB SZV-GTH-PADE + POTENTIAL GTH-PBE-q4 + &END KIND + &TOPOLOGY + CONNECTIVITY OFF + COORDINATE XYZ + COORD_FILE_NAME ../sample_xyz/ch4-ch4-in.xyz + &CENTER_COORDINATES + &END CENTER_COORDINATES + &END TOPOLOGY + &END SUBSYS +&END FORCE_EVAL diff --git a/tests/QS/regtest-dft-d3bj-lib-ref/tpss_dftd3bj_lib.inp b/tests/QS/regtest-dft-d3bj-lib-ref/tpss_dftd3bj_lib.inp new file mode 100644 index 0000000000..c46639e3f1 --- /dev/null +++ b/tests/QS/regtest-dft-d3bj-lib-ref/tpss_dftd3bj_lib.inp @@ -0,0 +1,71 @@ +&GLOBAL + PRINT_LEVEL MEDIUM + PROJECT dftd3bj_tpss_lib + RUN_TYPE ENERGY +&END GLOBAL + +&FORCE_EVAL + METHOD QS + &DFT + BASIS_SET_FILE_NAME BASIS_SET + POTENTIAL_FILE_NAME POTENTIAL_UZH + &MGRID + CUTOFF 300 + REL_CUTOFF 30 + &END MGRID + &POISSON + PERIODIC none + POISSON_SOLVER MT + &END POISSON + &QS + EPS_DEFAULT 1.0E-12 + &END QS + &SCF + EPS_SCF 1.0E-6 + MAX_SCF 40 + SCF_GUESS ATOMIC + &OT ON + MINIMIZER DIIS + PRECONDITIONER FULL_ALL + &END OT + &OUTER_SCF + EPS_SCF 1.0E-6 + MAX_SCF 10 + &END OUTER_SCF + &END SCF + &XC + &VDW_POTENTIAL + DISPERSION_FUNCTIONAL PAIR_POTENTIAL + &PAIR_POTENTIAL + D3_REFERENCE_CODE + TYPE DFTD3(BJ) + &PRINT_DFTD + &END PRINT_DFTD + &END PAIR_POTENTIAL + &END VDW_POTENTIAL + &XC_FUNCTIONAL TPSS + &END XC_FUNCTIONAL + &END XC + &END DFT + &SUBSYS + &CELL + ABC 7.0 7.0 7.0 + PERIODIC NONE + &END CELL + &KIND H + BASIS_SET ORB SZV-GTH-PADE + POTENTIAL GTH-PBE-q1 + &END KIND + &KIND C + BASIS_SET ORB SZV-GTH-PADE + POTENTIAL GTH-PBE-q4 + &END KIND + &TOPOLOGY + CONNECTIVITY OFF + COORDINATE XYZ + COORD_FILE_NAME ../sample_xyz/ch4-ch4-in.xyz + &CENTER_COORDINATES + &END CENTER_COORDINATES + &END TOPOLOGY + &END SUBSYS +&END FORCE_EVAL diff --git a/tests/QS/regtest-dft-d3bj-s-ref/TEST_FILES.toml b/tests/QS/regtest-dft-d3bj-s-ref/TEST_FILES.toml new file mode 100644 index 0000000000..8d6d349fa5 --- /dev/null +++ b/tests/QS/regtest-dft-d3bj-s-ref/TEST_FILES.toml @@ -0,0 +1,14 @@ +# runs are executed in the same order as in this file +# the second field tells which test should be run in order to compare with the last available output +# e.g. 0 means do not compare anything, running is enough +# 1 compares the last total energy in the file +# for details see cp2k/tools/do_regtest +"b3lyp_d3bj_s.inp" = [{matcher="M033", tol=1.0E-10, ref=-0.00559494623132}] +"r2scan_d3bj_s.inp" = [{matcher="M033", tol=1.0E-10, ref=-0.0010384675835}] +"revtpss_d3bj_s.inp" = [{matcher="M033", tol=1.0E-10, ref=-0.00392245917649}] +"dftd3bj_t1.inp" = [{matcher="M033", tol=1.0E-10, ref=-0.00355123782127}] + +"dftd3bj_t2.inp" = [{matcher="M033", tol=1.0E-10, ref=-0.05897356225482}] +"dftd3bj_t3.inp" = [{matcher="M033", tol=3.0E-10, ref=-0.00112424003881}] +"dftd3bj_t4.inp" = [{matcher="M007", tol=1.0E-09, ref=-84.298339035}] +#EOF \ No newline at end of file diff --git a/tests/QS/regtest-dft-d3bj-s-ref/b3lyp_d3bj_s.inp b/tests/QS/regtest-dft-d3bj-s-ref/b3lyp_d3bj_s.inp new file mode 100644 index 0000000000..a6d065f38d --- /dev/null +++ b/tests/QS/regtest-dft-d3bj-s-ref/b3lyp_d3bj_s.inp @@ -0,0 +1,72 @@ +&GLOBAL + PRINT_LEVEL MEDIUM + PROJECT b3lyp_d3bj_s + RUN_TYPE ENERGY +&END GLOBAL + +&FORCE_EVAL + METHOD QS + &DFT + BASIS_SET_FILE_NAME BASIS_SET + POTENTIAL_FILE_NAME POTENTIAL_UZH + &MGRID + CUTOFF 300 + REL_CUTOFF 30 + &END MGRID + &POISSON + PERIODIC none + POISSON_SOLVER MT + &END POISSON + &QS + EPS_DEFAULT 1.0E-12 + &END QS + &SCF + EPS_SCF 1.0E-6 + MAX_SCF 40 + SCF_GUESS ATOMIC + &OT ON + MINIMIZER DIIS + PRECONDITIONER FULL_ALL + &END OT + &OUTER_SCF + EPS_SCF 1.0E-6 + MAX_SCF 10 + &END OUTER_SCF + &END SCF + &XC + &VDW_POTENTIAL + DISPERSION_FUNCTIONAL PAIR_POTENTIAL + &PAIR_POTENTIAL + D3_REFERENCE_CODE + PARAMETER_FILE_NAME dftd3.dat + TYPE DFTD3(BJ) + &PRINT_DFTD + &END PRINT_DFTD + &END PAIR_POTENTIAL + &END VDW_POTENTIAL + &XC_FUNCTIONAL B3LYP + &END XC_FUNCTIONAL + &END XC + &END DFT + &SUBSYS + &CELL + ABC 7.0 7.0 7.0 + PERIODIC NONE + &END CELL + &KIND H + BASIS_SET ORB SZV-GTH-PADE + POTENTIAL GTH-PBE-q1 + &END KIND + &KIND C + BASIS_SET ORB SZV-GTH-PADE + POTENTIAL GTH-PBE-q4 + &END KIND + &TOPOLOGY + CONNECTIVITY OFF + COORDINATE XYZ + COORD_FILE_NAME ../sample_xyz/ch4-ch4-in.xyz + &CENTER_COORDINATES + &END CENTER_COORDINATES + &END TOPOLOGY + &END SUBSYS +&END FORCE_EVAL diff --git a/tests/QS/regtest-dft-d3bj-s-ref/dftd3bj_skala.inp b/tests/QS/regtest-dft-d3bj-s-ref/dftd3bj_skala.inp new file mode 100644 index 0000000000..af930df961 --- /dev/null +++ b/tests/QS/regtest-dft-d3bj-s-ref/dftd3bj_skala.inp @@ -0,0 +1,67 @@ +&GLOBAL + PRINT_LEVEL MEDIUM + PROJECT dftd3bj_skala + RUN_TYPE ENERGY +&END GLOBAL + +&FORCE_EVAL + METHOD QS + &DFT + BASIS_SET_FILE_NAME GTH_BASIS_SETS + POTENTIAL_FILE_NAME POTENTIAL + &MGRID + CUTOFF 100 + NGRIDS 1 + &END MGRID + &QS + METHOD GPW + &END QS + &SCF + EPS_SCF 1.0e-0 + IGNORE_CONVERGENCE_FAILURE + MAX_SCF 1 + SCF_GUESS ATOMIC + &END SCF + &XC + &VDW_POTENTIAL + DISPERSION_FUNCTIONAL PAIR_POTENTIAL + &PAIR_POTENTIAL + D3_REFERENCE_CODE + PARAMETER_FILE_NAME dftd3.dat + REFERENCE_FUNCTIONAL SKALA + TYPE DFTD3(BJ) + &PRINT_DFTD + &END PRINT_DFTD + &END PAIR_POTENTIAL + &END VDW_POTENTIAL + &XC_FUNCTIONAL PBE + &END XC_FUNCTIONAL + &END XC + &END DFT + &SUBSYS + &CELL + ABC 6.0 6.0 6.0 + PERIODIC NONE + &END CELL + &COORD + C 7.499969 9.250001 7.500000 + C 7.499969 5.750001 7.500000 + H 8.205969 8.887002 6.753000 + H 6.499969 8.887002 7.262000 + H 7.793968 8.887002 8.485001 + H 7.499969 10.340001 7.500000 + H 7.199968 6.113001 6.517000 + H 8.501968 6.113001 7.731000 + H 6.798969 6.113001 8.252001 + H 7.499969 4.660001 7.500000 + &END COORD + &KIND H + BASIS_SET DZV-GTH + POTENTIAL GTH-PBE-q1 + &END KIND + &KIND C + BASIS_SET DZVP-GTH + POTENTIAL GTH-PBE-q4 + &END KIND + &END SUBSYS +&END FORCE_EVAL diff --git a/tests/QS/regtest-dft-d3bj-s-ref/dftd3bj_t1.inp b/tests/QS/regtest-dft-d3bj-s-ref/dftd3bj_t1.inp new file mode 100644 index 0000000000..567b0907c7 --- /dev/null +++ b/tests/QS/regtest-dft-d3bj-s-ref/dftd3bj_t1.inp @@ -0,0 +1,67 @@ +&GLOBAL + PRINT_LEVEL MEDIUM + PROJECT dftd3_t1 + RUN_TYPE ENERGY +&END GLOBAL + +&FORCE_EVAL + METHOD QS + &DFT + BASIS_SET_FILE_NAME GTH_BASIS_SETS + POTENTIAL_FILE_NAME POTENTIAL + &MGRID + CUTOFF 100 + NGRIDS 1 + &END MGRID + &QS + METHOD GPW + &END QS + &SCF + EPS_SCF 1.0e-0 + IGNORE_CONVERGENCE_FAILURE + MAX_SCF 1 + SCF_GUESS ATOMIC + &END SCF + &XC + &VDW_POTENTIAL + DISPERSION_FUNCTIONAL PAIR_POTENTIAL + &PAIR_POTENTIAL + D3_REFERENCE_CODE + PARAMETER_FILE_NAME dftd3.dat + REFERENCE_FUNCTIONAL PBE + TYPE DFTD3(BJ) + &PRINT_DFTD + &END PRINT_DFTD + &END PAIR_POTENTIAL + &END VDW_POTENTIAL + &XC_FUNCTIONAL PBE + &END XC_FUNCTIONAL + &END XC + &END DFT + &SUBSYS + &CELL + ABC 6.0 6.0 6.0 + PERIODIC NONE + &END CELL + &COORD + C 7.499969 9.250001 7.500000 + C 7.499969 5.750001 7.500000 + H 8.205969 8.887002 6.753000 + H 6.499969 8.887002 7.262000 + H 7.793968 8.887002 8.485001 + H 7.499969 10.340001 7.500000 + H 7.199968 6.113001 6.517000 + H 8.501968 6.113001 7.731000 + H 6.798969 6.113001 8.252001 + H 7.499969 4.660001 7.500000 + &END COORD + &KIND H + BASIS_SET DZV-GTH + POTENTIAL GTH-PBE-q1 + &END KIND + &KIND C + BASIS_SET DZVP-GTH + POTENTIAL GTH-PBE-q4 + &END KIND + &END SUBSYS +&END FORCE_EVAL diff --git a/tests/QS/regtest-dft-d3bj-s-ref/dftd3bj_t2.inp b/tests/QS/regtest-dft-d3bj-s-ref/dftd3bj_t2.inp new file mode 100644 index 0000000000..309de5fa94 --- /dev/null +++ b/tests/QS/regtest-dft-d3bj-s-ref/dftd3bj_t2.inp @@ -0,0 +1,83 @@ +&GLOBAL + PRINT_LEVEL MEDIUM + PROJECT dftd3_t4 + RUN_TYPE ENERGY +&END GLOBAL + +&FORCE_EVAL + METHOD QS + &DFT + BASIS_SET_FILE_NAME GTH_BASIS_SETS + POTENTIAL_FILE_NAME POTENTIAL + &MGRID + CUTOFF 100 + NGRIDS 1 + &END MGRID + &QS + METHOD GPW + &END QS + &SCF + EPS_SCF 1.0e-0 + MAX_SCF 1 + SCF_GUESS ATOMIC + &END SCF + &XC + &VDW_POTENTIAL + DISPERSION_FUNCTIONAL PAIR_POTENTIAL + &PAIR_POTENTIAL + CALCULATE_C9_TERM T + D3BJ_SCALING 1.0e0 0.4298e0 2.6996e0 4.2359e0 + D3_REFERENCE_CODE + PARAMETER_FILE_NAME dftd3.dat + R_CUTOFF 20.e0 + TYPE DFTD3(BJ) + &PRINT_DFTD + &END PRINT_DFTD + &END PAIR_POTENTIAL + &END VDW_POTENTIAL + &XC_FUNCTIONAL BLYP + &END XC_FUNCTIONAL + &END XC + &END DFT + &SUBSYS + &CELL + ABC 15.0 15.0 15.0 + PERIODIC NONE + &END CELL + &COORD + UNIT bohr + C -1.98010325431824 -2.68657445907593 0.00000000000000 + C -2.74861383438110 -1.61655890941620 2.27939748764038 + C -2.74861383438110 -1.61655890941620 -2.27939748764038 + C -4.28362655639648 0.52375853061676 2.28081297874451 + C -5.04836320877075 1.59685885906219 0.00000000000000 + C -4.28362655639648 0.52375853061676 -2.28081297874451 + C 1.98010325431824 2.68657445907593 0.00000000000000 + C 2.74861383438110 1.61655890941620 -2.27939748764038 + C 2.74861383438110 1.61655890941620 2.27939748764038 + C 4.28362655639648 -0.52375853061676 -2.28081297874451 + C 5.04836320877075 -1.59685885906219 0.00000000000000 + C 4.28362655639648 -0.52375853061676 2.28081297874451 + H -2.14267301559448 -2.44163894653320 -4.04838991165161 + H -4.88020849227905 1.35362362861633 -4.05119180679321 + H -6.24184703826904 3.25650930404663 0.00000000000000 + H -4.88020849227905 1.35362362861633 4.05119180679321 + H -2.14267301559448 -2.44163894653320 4.04838991165161 + H -0.76727682352066 -4.33107376098633 0.00000000000000 + H 0.76727682352066 4.33107376098633 0.00000000000000 + H 2.14267301559448 2.44163894653320 4.04838991165161 + H 4.88020849227905 -1.35362362861633 4.05119180679321 + H 6.24184703826904 -3.25650930404663 0.00000000000000 + H 4.88020849227905 -1.35362362861633 -4.05119180679321 + H 2.14267301559448 2.44163894653320 -4.04838991165161 + &END COORD + &KIND H + BASIS_SET DZV-GTH + POTENTIAL GTH-PBE-q1 + &END KIND + &KIND C + BASIS_SET DZVP-GTH + POTENTIAL GTH-PBE-q4 + &END KIND + &END SUBSYS +&END FORCE_EVAL diff --git a/tests/QS/regtest-dft-d3bj-s-ref/dftd3bj_t3.inp b/tests/QS/regtest-dft-d3bj-s-ref/dftd3bj_t3.inp new file mode 100644 index 0000000000..53aa57c8eb --- /dev/null +++ b/tests/QS/regtest-dft-d3bj-s-ref/dftd3bj_t3.inp @@ -0,0 +1,67 @@ +&GLOBAL + PRINT_LEVEL LOW + PROJECT dftd3_t9 + RUN_TYPE MD +&END GLOBAL + +&MOTION + &MD + ENSEMBLE NVE + STEPS 5 + TEMPERATURE 300.0 + TIMESTEP 1.0 + &END MD +&END MOTION + +&FORCE_EVAL + METHOD QS + &DFT + BASIS_SET_FILE_NAME BASIS_MOLOPT + POTENTIAL_FILE_NAME POTENTIAL + &MGRID + CUTOFF 200 + &END MGRID + &QS + METHOD GPW + &END QS + &SCF + EPS_SCF 1.0e-5 + MAX_SCF 10 + SCF_GUESS ATOMIC + &END SCF + &XC + &VDW_POTENTIAL + DISPERSION_FUNCTIONAL PAIR_POTENTIAL + &PAIR_POTENTIAL + CALCULATE_C9_TERM .TRUE. + D3_REFERENCE_CODE + EPS_CN 0.01 + PARAMETER_FILE_NAME dftd3.dat + REFERENCE_C9_TERM .TRUE. + REFERENCE_FUNCTIONAL PBE + R_CUTOFF 8. + TYPE DFTD3(BJ) + VERBOSE_OUTPUT + &END PAIR_POTENTIAL + &END VDW_POTENTIAL + &XC_FUNCTIONAL PBE + &END XC_FUNCTIONAL + &END XC + &END DFT + &SUBSYS + &CELL + ABC 8.30 8.30 8.30 + &END CELL + &COORD + SCALED + Ar 0.0 0.0 0.0 + Ar 0.5 0.5 0.0 + Ar 0.5 0.0 0.5 + Ar 0.0 0.5 0.5 + &END COORD + &KIND Ar + BASIS_SET SZV-MOLOPT-SR-GTH + POTENTIAL GTH-PBE-q8 + &END KIND + &END SUBSYS +&END FORCE_EVAL diff --git a/tests/QS/regtest-dft-d3bj-s-ref/dftd3bj_t4.inp b/tests/QS/regtest-dft-d3bj-s-ref/dftd3bj_t4.inp new file mode 100644 index 0000000000..21cc807130 --- /dev/null +++ b/tests/QS/regtest-dft-d3bj-s-ref/dftd3bj_t4.inp @@ -0,0 +1,90 @@ +&GLOBAL + PRINT_LEVEL LOW + PROJECT dftd3_t11 + RUN_TYPE CELL_OPT +&END GLOBAL + +&MOTION + &CELL_OPT + EXTERNAL_PRESSURE [bar] 1.0 + KEEP_ANGLES + MAX_DR 0.02 + MAX_FORCE 0.0002 + MAX_ITER 2 + OPTIMIZER CG + RMS_DR 0.01 + RMS_FORCE 0.0001 + &CG + &LINE_SEARCH + TYPE 2PNT + &2PNT + &END 2PNT + &END LINE_SEARCH + &END CG + &END CELL_OPT + &GEO_OPT + MAX_ITER 3 + MINIMIZER BFGS + &END GEO_OPT + &PRINT + &RESTART + &EACH + CELL_OPT 1 + &END EACH + &END RESTART + &END PRINT +&END MOTION + +&FORCE_EVAL + METHOD QS + STRESS_TENSOR ANALYTICAL + &DFT + BASIS_SET_FILE_NAME BASIS_MOLOPT + POTENTIAL_FILE_NAME POTENTIAL + &MGRID + CUTOFF 100 + &END MGRID + &QS + METHOD GPW + &END QS + &SCF + EPS_SCF 1.0e-5 + MAX_SCF 100 + SCF_GUESS ATOMIC + &END SCF + &XC + &VDW_POTENTIAL + DISPERSION_FUNCTIONAL PAIR_POTENTIAL + &PAIR_POTENTIAL + CALCULATE_C9_TERM .TRUE. + D3_REFERENCE_CODE + EPS_CN 0.01 + LONG_RANGE_CORRECTION .TRUE. + PARAMETER_FILE_NAME dftd3.dat + REFERENCE_C9_TERM .TRUE. + REFERENCE_FUNCTIONAL PBE + R_CUTOFF 8. + TYPE DFTD3(BJ) + &END PAIR_POTENTIAL + &END VDW_POTENTIAL + &XC_FUNCTIONAL PBE + &END XC_FUNCTIONAL + &END XC + &END DFT + &SUBSYS + &CELL + ABC 8.30 8.30 8.30 + &END CELL + &COORD + SCALED + Ar 0.0 0.0 0.0 + Ar 0.5 0.5 0.0 + Ar 0.5 0.0 0.5 + Ar 0.0 0.5 0.5 + &END COORD + &KIND Ar + BASIS_SET SZV-MOLOPT-SR-GTH + POTENTIAL GTH-PBE-q8 + &END KIND + &END SUBSYS +&END FORCE_EVAL diff --git a/tests/QS/regtest-dft-d3bj-s-ref/r2scan_d3bj_s.inp b/tests/QS/regtest-dft-d3bj-s-ref/r2scan_d3bj_s.inp new file mode 100644 index 0000000000..0775bb1c0e --- /dev/null +++ b/tests/QS/regtest-dft-d3bj-s-ref/r2scan_d3bj_s.inp @@ -0,0 +1,76 @@ +&GLOBAL + PRINT_LEVEL MEDIUM + PROJECT r2scan_d3bj_s + RUN_TYPE ENERGY +&END GLOBAL + +&FORCE_EVAL + METHOD QS + &DFT + BASIS_SET_FILE_NAME BASIS_SET + POTENTIAL_FILE_NAME POTENTIAL_UZH + &MGRID + CUTOFF 300 + REL_CUTOFF 30 + &END MGRID + &POISSON + PERIODIC none + POISSON_SOLVER MT + &END POISSON + &QS + EPS_DEFAULT 1.0E-12 + &END QS + &SCF + EPS_SCF 1.0E-6 + MAX_SCF 40 + SCF_GUESS ATOMIC + &OT ON + MINIMIZER DIIS + PRECONDITIONER FULL_ALL + &END OT + &OUTER_SCF + EPS_SCF 1.0E-6 + MAX_SCF 10 + &END OUTER_SCF + &END SCF + &XC + &VDW_POTENTIAL + DISPERSION_FUNCTIONAL PAIR_POTENTIAL + &PAIR_POTENTIAL + D3_REFERENCE_CODE + PARAMETER_FILE_NAME dftd3.dat + TYPE DFTD3(BJ) + &PRINT_DFTD + &END PRINT_DFTD + &END PAIR_POTENTIAL + &END VDW_POTENTIAL + &XC_FUNCTIONAL + &MGGA_C_R2SCAN + &END MGGA_C_R2SCAN + &MGGA_X_R2SCAN + &END MGGA_X_R2SCAN + &END XC_FUNCTIONAL + &END XC + &END DFT + &SUBSYS + &CELL + ABC 7.0 7.0 7.0 + PERIODIC NONE + &END CELL + &KIND H + BASIS_SET ORB SZV-GTH-PADE + POTENTIAL GTH-PBE-q1 + &END KIND + &KIND C + BASIS_SET ORB SZV-GTH-PADE + POTENTIAL GTH-PBE-q4 + &END KIND + &TOPOLOGY + CONNECTIVITY OFF + COORDINATE XYZ + COORD_FILE_NAME ../sample_xyz/ch4-ch4-in.xyz + &CENTER_COORDINATES + &END CENTER_COORDINATES + &END TOPOLOGY + &END SUBSYS +&END FORCE_EVAL diff --git a/tests/QS/regtest-dft-d3bj-s-ref/revtpss_d3bj_s.inp b/tests/QS/regtest-dft-d3bj-s-ref/revtpss_d3bj_s.inp new file mode 100644 index 0000000000..b6b25b20f6 --- /dev/null +++ b/tests/QS/regtest-dft-d3bj-s-ref/revtpss_d3bj_s.inp @@ -0,0 +1,77 @@ +&GLOBAL + PRINT_LEVEL MEDIUM + PROJECT revtpss_d3bj_s + RUN_TYPE ENERGY +&END GLOBAL + +&FORCE_EVAL + METHOD QS + &DFT + BASIS_SET_FILE_NAME BASIS_SET + POTENTIAL_FILE_NAME POTENTIAL_UZH + &MGRID + CUTOFF 300 + REL_CUTOFF 30 + &END MGRID + &POISSON + PERIODIC none + POISSON_SOLVER MT + &END POISSON + &QS + EPS_DEFAULT 1.0E-12 + &END QS + &SCF + EPS_SCF 1.0E-6 + MAX_SCF 40 + SCF_GUESS ATOMIC + &OT ON + MINIMIZER DIIS + PRECONDITIONER FULL_ALL + &END OT + &OUTER_SCF + EPS_SCF 1.0E-6 + MAX_SCF 10 + &END OUTER_SCF + &END SCF + &XC + &VDW_POTENTIAL + DISPERSION_FUNCTIONAL PAIR_POTENTIAL + &PAIR_POTENTIAL + D3_REFERENCE_CODE + PARAMETER_FILE_NAME dftd3.dat + REFERENCE_FUNCTIONAL revTPSS + TYPE DFTD3(BJ) + &PRINT_DFTD + &END PRINT_DFTD + &END PAIR_POTENTIAL + &END VDW_POTENTIAL + &XC_FUNCTIONAL + &MGGA_C_REVTPSS + &END MGGA_C_REVTPSS + &MGGA_X_REVTPSS + &END MGGA_X_REVTPSS + &END XC_FUNCTIONAL + &END XC + &END DFT + &SUBSYS + &CELL + ABC 7.0 7.0 7.0 + PERIODIC NONE + &END CELL + &KIND H + BASIS_SET ORB SZV-GTH-PADE + POTENTIAL GTH-PBE-q1 + &END KIND + &KIND C + BASIS_SET ORB SZV-GTH-PADE + POTENTIAL GTH-PBE-q4 + &END KIND + &TOPOLOGY + CONNECTIVITY OFF + COORDINATE XYZ + COORD_FILE_NAME ../sample_xyz/ch4-ch4-in.xyz + &CENTER_COORDINATES + &END CENTER_COORDINATES + &END TOPOLOGY + &END SUBSYS +&END FORCE_EVAL diff --git a/tests/QS/regtest-hf-3c/h2o.inp b/tests/QS/regtest-hf-3c/h2o.inp index c09673ab5e..fd38049ee1 100644 --- a/tests/QS/regtest-hf-3c/h2o.inp +++ b/tests/QS/regtest-hf-3c/h2o.inp @@ -56,6 +56,7 @@ &PAIR_POTENTIAL D3BJ_SCALING 1.0000 0.4171 0.8777 2.9149 PARAMETER_FILE_NAME dftd3.dat + REFERENCE_FUNCTIONAL PBE ! will be ignored since parameters are set explicitly SHORT_RANGE_CORRECTION TRUE SHORT_RANGE_CORRECTION_PARAMETERS 0.03 0.70 1.50 0.75 TYPE DFTD3(BJ) diff --git a/tests/QS/regtest-hf-3c/o2.inp b/tests/QS/regtest-hf-3c/o2.inp index 86e045dfbb..a04706797e 100644 --- a/tests/QS/regtest-hf-3c/o2.inp +++ b/tests/QS/regtest-hf-3c/o2.inp @@ -59,6 +59,7 @@ &PAIR_POTENTIAL D3BJ_SCALING 1.0000 0.4171 0.8777 2.9149 PARAMETER_FILE_NAME dftd3.dat + REFERENCE_FUNCTIONAL PBE ! will be ignored since parameters are set explicitly SHORT_RANGE_CORRECTION TRUE SHORT_RANGE_CORRECTION_PARAMETERS 0.03 0.70 1.50 0.75 TYPE DFTD3(BJ) diff --git a/tests/TEST_DIRS b/tests/TEST_DIRS index d0d9d292aa..416ab19558 100644 --- a/tests/TEST_DIRS +++ b/tests/TEST_DIRS @@ -4,9 +4,11 @@ # in case a new directory is added just add it at the top of the list.. # the order will be regularly checked and modified... QS/regtest-dft-d4-auto-ref libdftd4 -QS/regtest-dft-d2-auto-ref libint +QS/regtest-dft-d2-auto-ref QS/regtest-dft-d3-auto-ref libint QS/regtest-dft-d3-bj-auto-ref libint +QS/regtest-dft-d3-lib-ref libint s_dftd3 +QS/regtest-dft-d3bj-lib-ref libint s_dftd3 QS/regtest-pcc QS/regtest-kubo-transport QS/regtest-gw-realspace libint !ifx @@ -295,6 +297,8 @@ QS/regtest-cdft-4-3 QS/regtest-gpw-6-4 QS/regtest-tddfpt-soc libint !ifx QS/regtest-dft-vdw-corr-1 +QS/regtest-dft-d3-s-ref s_dftd3 +QS/regtest-dft-d3bj-s-ref s_dftd3 QS/regtest-cdft-4-2 QS/regtest-hybrid-2 libint !ifx QS/regtest-admm-qps libint !ifx