Skip to content

Commit

Permalink
gfn0-xTB and parallel DFT-D4 (cp2k#3765)
Browse files Browse the repository at this point in the history
  • Loading branch information
juerghutter authored Nov 8, 2024
1 parent b5a5e3a commit 8e5fe44
Show file tree
Hide file tree
Showing 129 changed files with 61,338 additions and 3,013 deletions.
1,799 changes: 1,799 additions & 0 deletions data/xTB0_parameters

Large diffs are not rendered by default.

1,180 changes: 1,180 additions & 0 deletions data/xTB1_parameters

Large diffs are not rendered by default.

246 changes: 0 additions & 246 deletions data/xTB_parameters

This file was deleted.

8 changes: 8 additions & 0 deletions src/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -131,6 +131,9 @@ list(
dm_ls_scf_types.F
domain_submatrix_methods.F
domain_submatrix_types.F
eeq_data.F
eeq_input.F
eeq_method.F
ec_efield_local.F
ec_environment.F
ec_env_types.F
Expand Down Expand Up @@ -839,10 +842,15 @@ list(
xas_tp_scf.F
xray_diffraction.F
xtb_coulomb.F
xtb_eeq.F
xtb_ehess.F
xtb_ehess_force.F
xtb_hcore.F
xtb_hab_force.F
xtb_ks_matrix.F
xtb_matrices.F
xtb_parameters.F
xtb_potentials.F
xtb_types.F)

list(
Expand Down
8 changes: 7 additions & 1 deletion src/common/bibliography.F
Original file line number Diff line number Diff line change
Expand Up @@ -86,7 +86,7 @@ MODULE bibliography
Mattiat2022, Belleflamme2023, Knizia2013, Musaelian2023, Eriksen2020, &
Bussy2023, Bussy2024, Wang2018, Zeng2023, Graml2024, Solca2024, &
Caldeweyher2017, Caldeweyher2019, Caldeweyher2020, Freeman1977, Gruneis2009, &
Stein2022, Stein2024, &
Stein2022, Stein2024, Pracht2019, &
Blase2018, Blase2020, Bruneval2015, Golze2019, Gui2018, Jacquemin2017, Liu2020, &
Sander2015, Schreiber2008, vanSetten2015, Setyawan2010, Ahart2024

Expand Down Expand Up @@ -1884,6 +1884,12 @@ SUBROUTINE add_all_references()
source="J. Chem. Theory Comput.", volume="20", pages="6772-6780", &
year=2024, doi="10.1021/acs.jctc.4c00371")

CALL add_reference(key=Pracht2019, &
authors=s2a("P. Pracht", "E. Caldeweyher", "S. Ehlert", "S. Grimme"), &
title="A Robust Non-Self-Consistent Tight-Binding Quantum Chemistry Method for large Molecules", &
source="ChemRxiv", volume="", pages="", &
year=2019, doi="10.26434/chemrxiv.8326202.v1")

END SUBROUTINE add_all_references

END MODULE bibliography
23 changes: 22 additions & 1 deletion src/cp_control_types.F
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,7 @@
MODULE cp_control_types
USE cp_fm_types, ONLY: cp_fm_release,&
cp_fm_type
USE eeq_input, ONLY: eeq_solver_type
USE input_constants, ONLY: do_full_density,&
rtp_bse_ham_G0W0,&
rtp_method_tddft
Expand Down Expand Up @@ -132,12 +133,15 @@ MODULE cp_control_types
! \brief Control parameters for xTB calculations
! **************************************************************************************************
TYPE xtb_control_type
!
INTEGER :: gfn_type = 1
!
LOGICAL :: do_ewald = .FALSE.
!
INTEGER :: sto_ng = 0
INTEGER :: h_sto_ng = 0
!
INTEGER :: vdw_type = -1
CHARACTER(LEN=default_path_length) :: parameter_file_path = ""
CHARACTER(LEN=default_path_length) :: parameter_file_name = ""
!
Expand All @@ -151,15 +155,17 @@ MODULE cp_control_types
REAL(KIND=dp) :: kg = 0.0_dp, kf = 0.0_dp
REAL(KIND=dp) :: kcns = 0.0_dp, kcnp = 0.0_dp, kcnd = 0.0_dp
REAL(KIND=dp) :: ken = 0.0_dp
REAL(KIND=dp) :: ksen = 0.0_dp, kpen = 0.0_dp, kden = 0.0_dp
REAL(KIND=dp) :: ben = 0.0_dp
REAL(KIND=dp) :: kxr = 0.0_dp, kx2 = 0.0_dp
REAL(KIND=dp) :: enscale = 0.0_dp
!
LOGICAL :: xb_interaction = .FALSE.
LOGICAL :: do_nonbonded = .FALSE.
LOGICAL :: coulomb_interaction = .FALSE.
LOGICAL :: coulomb_lr = .FALSE.
LOGICAL :: tb3_interaction = .FALSE.
LOGICAL :: check_atomic_charges = .FALSE.
LOGICAL :: old_coulomb_damping = .FALSE.
!
REAL(KIND=dp) :: xb_radius = 0.0_dp
REAL(KIND=dp) :: coulomb_sr_cut = 0.0_dp
Expand All @@ -172,6 +178,17 @@ MODULE cp_control_types
REAL, DIMENSION(:), POINTER :: kab_vals => NULL()
!
TYPE(pair_potential_p_type), POINTER :: nonbonded => NULL()
REAL(KIND=dp) :: eps_pair = 0.0_dp
REAL(KIND=dp), DIMENSION(:, :), &
POINTER :: rcpair => NULL()
!
! SRB terms
REAL(KIND=dp) :: ksrb = 0.0_dp, esrb = 0.0_dp, gscal = 0.0_dp
REAL(KIND=dp) :: c1srb = 0.0_dp, c2srb = 0.0_dp, shift = 0.0_dp
!
! EN shift in EEQ (molecular=1 or crystaline=2)
INTEGER :: enshift_type = 1
TYPE(eeq_solver_type) :: eeq_sparam ! parameters for EEQ solver
END TYPE xtb_control_type

! **************************************************************************************************
Expand Down Expand Up @@ -1072,6 +1089,7 @@ SUBROUTINE xtb_control_create(xtb_control)
NULLIFY (xtb_control%kab_vals)
NULLIFY (xtb_control%kab_types)
NULLIFY (xtb_control%nonbonded)
NULLIFY (xtb_control%rcpair)

END SUBROUTINE xtb_control_create

Expand All @@ -1092,6 +1110,9 @@ SUBROUTINE xtb_control_release(xtb_control)
IF (ASSOCIATED(xtb_control%kab_types)) THEN
DEALLOCATE (xtb_control%kab_types)
END IF
IF (ASSOCIATED(xtb_control%rcpair)) THEN
DEALLOCATE (xtb_control%rcpair)
END IF
IF (ASSOCIATED(xtb_control%nonbonded)) THEN
CALL pair_potential_p_release(xtb_control%nonbonded)
END IF
Expand Down
Loading

0 comments on commit 8e5fe44

Please sign in to comment.