mirror of
https://github.com/cp2k/cp2k.git
synced 2026-07-28 22:25:32 -04:00
GAPW increase accuracy for XC integration (#4779)
This commit is contained in:
parent
3375d7e96a
commit
dbde302009
127 changed files with 8139 additions and 1111 deletions
|
|
@ -28,6 +28,7 @@ configure_file(base/base_uses.f90 base/base_uses.f90 @ONLY)
|
|||
list(
|
||||
APPEND
|
||||
CP2K_SRCS_F
|
||||
accint_weights_forces.F
|
||||
ace_nlist.F
|
||||
ace_wrapper.F
|
||||
admm_dm_methods.F
|
||||
|
|
|
|||
415
src/accint_weights_forces.F
Normal file
415
src/accint_weights_forces.F
Normal file
|
|
@ -0,0 +1,415 @@
|
|||
!--------------------------------------------------------------------------------------------------!
|
||||
! CP2K: A general program to perform molecular dynamics simulations !
|
||||
! Copyright 2000-2026 CP2K developers group <https://cp2k.org> !
|
||||
! !
|
||||
! SPDX-License-Identifier: GPL-2.0-or-later !
|
||||
!--------------------------------------------------------------------------------------------------!
|
||||
|
||||
! **************************************************************************************************
|
||||
!> \brief
|
||||
!> \author JGH (01.2026)
|
||||
! **************************************************************************************************
|
||||
MODULE accint_weights_forces
|
||||
USE ao_util, ONLY: exp_radius_very_extended
|
||||
USE atomic_kind_types, ONLY: atomic_kind_type,&
|
||||
get_atomic_kind
|
||||
USE cell_types, ONLY: cell_type,&
|
||||
pbc
|
||||
USE cp_control_types, ONLY: dft_control_type
|
||||
USE grid_api, ONLY: integrate_pgf_product
|
||||
USE input_constants, ONLY: sic_none,&
|
||||
xc_none
|
||||
USE input_section_types, ONLY: section_vals_type,&
|
||||
section_vals_val_get
|
||||
USE kinds, ONLY: dp
|
||||
USE memory_utilities, ONLY: reallocate
|
||||
USE particle_types, ONLY: particle_type
|
||||
USE pw_env_types, ONLY: pw_env_get,&
|
||||
pw_env_type
|
||||
USE pw_grids, ONLY: pw_grid_compare
|
||||
USE pw_methods, ONLY: pw_axpy,&
|
||||
pw_multiply_with,&
|
||||
pw_scale,&
|
||||
pw_zero
|
||||
USE pw_pool_types, ONLY: pw_pool_type
|
||||
USE pw_types, ONLY: pw_c1d_gs_type,&
|
||||
pw_r3d_rs_type
|
||||
USE qs_environment_types, ONLY: get_qs_env,&
|
||||
qs_environment_type
|
||||
USE qs_force_types, ONLY: qs_force_type
|
||||
USE qs_fxc, ONLY: qs_fxc_analytic
|
||||
USE qs_ks_types, ONLY: get_ks_env,&
|
||||
qs_ks_env_type
|
||||
USE qs_rho_types, ONLY: qs_rho_get,&
|
||||
qs_rho_type
|
||||
USE realspace_grid_types, ONLY: realspace_grid_type,&
|
||||
transfer_pw2rs
|
||||
USE virial_types, ONLY: virial_type
|
||||
USE xc, ONLY: xc_exc_pw_create,&
|
||||
xc_vxc_pw_create
|
||||
#include "./base/base_uses.f90"
|
||||
|
||||
IMPLICIT NONE
|
||||
|
||||
PRIVATE
|
||||
|
||||
LOGICAL, PRIVATE, PARAMETER :: debug_this_module = .FALSE.
|
||||
|
||||
CHARACTER(len=*), PARAMETER, PRIVATE :: moduleN = 'accint_weights_forces'
|
||||
|
||||
PUBLIC :: accint_weight_force
|
||||
|
||||
CONTAINS
|
||||
|
||||
! **************************************************************************************************
|
||||
!> \brief ...
|
||||
!> \param qs_env ...
|
||||
!> \param rho ...
|
||||
!> \param rho1 ...
|
||||
!> \param order ...
|
||||
!> \param xc_section ...
|
||||
!> \param triplet ...
|
||||
! **************************************************************************************************
|
||||
SUBROUTINE accint_weight_force(qs_env, rho, rho1, order, xc_section, triplet)
|
||||
TYPE(qs_environment_type), POINTER :: qs_env
|
||||
TYPE(qs_rho_type), POINTER :: rho, rho1
|
||||
INTEGER, INTENT(IN) :: order
|
||||
TYPE(section_vals_type), POINTER :: xc_section
|
||||
LOGICAL, INTENT(IN), OPTIONAL :: triplet
|
||||
|
||||
CHARACTER(len=*), PARAMETER :: routineN = 'accint_weight_force'
|
||||
|
||||
INTEGER :: atom_a, handle, iatom, ikind, natom, &
|
||||
natom_of_kind, nkind
|
||||
INTEGER, DIMENSION(:), POINTER :: atom_list
|
||||
LOGICAL :: lr_triplet, use_virial
|
||||
REAL(KIND=dp), ALLOCATABLE, DIMENSION(:) :: calpha, cvalue
|
||||
REAL(KIND=dp), ALLOCATABLE, DIMENSION(:, :) :: aforce
|
||||
REAL(KIND=dp), DIMENSION(3, 3) :: avirial
|
||||
TYPE(atomic_kind_type), DIMENSION(:), POINTER :: atomic_kind_set
|
||||
TYPE(dft_control_type), POINTER :: dft_control
|
||||
TYPE(pw_env_type), POINTER :: pw_env
|
||||
TYPE(pw_pool_type), POINTER :: auxbas_pw_pool
|
||||
TYPE(pw_r3d_rs_type) :: e_rspace
|
||||
TYPE(qs_force_type), DIMENSION(:), POINTER :: force
|
||||
TYPE(qs_ks_env_type), POINTER :: ks_env
|
||||
TYPE(virial_type), POINTER :: virial
|
||||
|
||||
CALL timeset(routineN, handle)
|
||||
|
||||
CALL get_qs_env(qs_env, dft_control=dft_control)
|
||||
|
||||
IF (dft_control%qs_control%gapw_control%accurate_xcint) THEN
|
||||
|
||||
CALL get_qs_env(qs_env=qs_env, force=force, virial=virial)
|
||||
use_virial = virial%pv_availability .AND. (.NOT. virial%pv_numer)
|
||||
|
||||
CALL get_qs_env(qs_env, natom=natom, nkind=nkind)
|
||||
ALLOCATE (aforce(3, natom))
|
||||
ALLOCATE (calpha(nkind), cvalue(nkind))
|
||||
cvalue = 1.0_dp
|
||||
calpha(1:nkind) = dft_control%qs_control%gapw_control%aw(1:nkind)
|
||||
|
||||
CALL get_qs_env(qs_env, ks_env=ks_env, pw_env=pw_env)
|
||||
CALL pw_env_get(pw_env, auxbas_pw_pool=auxbas_pw_pool)
|
||||
CALL auxbas_pw_pool%create_pw(e_rspace)
|
||||
|
||||
lr_triplet = .FALSE.
|
||||
IF (PRESENT(triplet)) lr_triplet = triplet
|
||||
|
||||
CALL xc_density(ks_env, rho, rho1, order, xc_section, lr_triplet, e_rspace)
|
||||
CALL pw_scale(e_rspace, e_rspace%pw_grid%dvol)
|
||||
|
||||
CALL gauss_grid_force(e_rspace, qs_env, calpha, cvalue, aforce, avirial)
|
||||
|
||||
CALL auxbas_pw_pool%give_back_pw(e_rspace)
|
||||
|
||||
CALL get_qs_env(qs_env, atomic_kind_set=atomic_kind_set)
|
||||
DO ikind = 1, nkind
|
||||
CALL get_atomic_kind(atomic_kind_set(ikind), natom=natom_of_kind, atom_list=atom_list)
|
||||
DO iatom = 1, natom_of_kind
|
||||
atom_a = atom_list(iatom)
|
||||
force(ikind)%rho_elec(1:3, iatom) = &
|
||||
force(ikind)%rho_elec(1:3, iatom) + aforce(1:3, atom_a)
|
||||
END DO
|
||||
END DO
|
||||
IF (use_virial) THEN
|
||||
virial%pv_exc = virial%pv_exc + avirial
|
||||
virial%pv_virial = virial%pv_virial + avirial
|
||||
END IF
|
||||
|
||||
DEALLOCATE (aforce)
|
||||
|
||||
END IF
|
||||
|
||||
CALL timestop(handle)
|
||||
|
||||
END SUBROUTINE accint_weight_force
|
||||
|
||||
! **************************************************************************************************
|
||||
!> \brief computes the forces/virial due to atomic centered Gaussian functions
|
||||
!> \param e_rspace Energy density
|
||||
!> \param qs_env ...
|
||||
!> \param calpha ...
|
||||
!> \param cvalue ...
|
||||
!> \param aforce ...
|
||||
!> \param avirial ...
|
||||
! **************************************************************************************************
|
||||
SUBROUTINE gauss_grid_force(e_rspace, qs_env, calpha, cvalue, aforce, avirial)
|
||||
TYPE(pw_r3d_rs_type), INTENT(IN) :: e_rspace
|
||||
TYPE(qs_environment_type), POINTER :: qs_env
|
||||
REAL(KIND=dp), DIMENSION(:), INTENT(IN) :: calpha, cvalue
|
||||
REAL(KIND=dp), DIMENSION(:, :), INTENT(OUT) :: aforce
|
||||
REAL(KIND=dp), DIMENSION(3, 3), INTENT(OUT) :: avirial
|
||||
|
||||
CHARACTER(len=*), PARAMETER :: routineN = 'gauss_grid_force'
|
||||
|
||||
INTEGER :: atom_a, handle, iatom, ikind, j, &
|
||||
natom_of_kind, npme
|
||||
INTEGER, DIMENSION(:), POINTER :: atom_list, cores
|
||||
LOGICAL :: use_virial
|
||||
REAL(KIND=dp) :: alpha, eps_rho_rspace, radius
|
||||
REAL(KIND=dp), DIMENSION(3) :: force_a, force_b, ra
|
||||
REAL(KIND=dp), DIMENSION(3, 3) :: my_virial_a, my_virial_b
|
||||
REAL(KIND=dp), DIMENSION(:, :), POINTER :: hab, pab
|
||||
TYPE(atomic_kind_type), DIMENSION(:), POINTER :: atomic_kind_set
|
||||
TYPE(cell_type), POINTER :: cell
|
||||
TYPE(dft_control_type), POINTER :: dft_control
|
||||
TYPE(particle_type), DIMENSION(:), POINTER :: particle_set
|
||||
TYPE(pw_env_type), POINTER :: pw_env
|
||||
TYPE(realspace_grid_type), POINTER :: rs_v
|
||||
|
||||
CALL timeset(routineN, handle)
|
||||
|
||||
ALLOCATE (cores(1))
|
||||
ALLOCATE (hab(1, 1))
|
||||
ALLOCATE (pab(1, 1))
|
||||
|
||||
CALL get_qs_env(qs_env, pw_env=pw_env)
|
||||
CALL pw_env_get(pw_env, auxbas_rs_grid=rs_v)
|
||||
|
||||
CALL transfer_pw2rs(rs_v, e_rspace)
|
||||
|
||||
CALL get_qs_env(qs_env, &
|
||||
atomic_kind_set=atomic_kind_set, &
|
||||
cell=cell, &
|
||||
dft_control=dft_control, &
|
||||
particle_set=particle_set)
|
||||
|
||||
use_virial = .TRUE.
|
||||
avirial = 0.0_dp
|
||||
aforce = 0.0_dp
|
||||
|
||||
eps_rho_rspace = dft_control%qs_control%eps_rho_rspace
|
||||
|
||||
DO ikind = 1, SIZE(atomic_kind_set)
|
||||
|
||||
CALL get_atomic_kind(atomic_kind_set(ikind), natom=natom_of_kind, atom_list=atom_list)
|
||||
|
||||
alpha = calpha(ikind)
|
||||
pab(1, 1) = -cvalue(ikind)
|
||||
IF (alpha == 0.0_dp .OR. pab(1, 1) == 0.0_dp) CYCLE
|
||||
|
||||
CALL reallocate(cores, 1, natom_of_kind)
|
||||
npme = 0
|
||||
cores = 0
|
||||
|
||||
DO iatom = 1, natom_of_kind
|
||||
atom_a = atom_list(iatom)
|
||||
ra(:) = pbc(particle_set(atom_a)%r, cell)
|
||||
IF (rs_v%desc%parallel .AND. .NOT. rs_v%desc%distributed) THEN
|
||||
! replicated realspace grid, split the atoms up between procs
|
||||
IF (MODULO(iatom, rs_v%desc%group_size) == rs_v%desc%my_pos) THEN
|
||||
npme = npme + 1
|
||||
cores(npme) = iatom
|
||||
END IF
|
||||
ELSE
|
||||
npme = npme + 1
|
||||
cores(npme) = iatom
|
||||
END IF
|
||||
END DO
|
||||
|
||||
DO j = 1, npme
|
||||
|
||||
iatom = cores(j)
|
||||
atom_a = atom_list(iatom)
|
||||
ra(:) = pbc(particle_set(atom_a)%r, cell)
|
||||
hab(1, 1) = 0.0_dp
|
||||
force_a(:) = 0.0_dp
|
||||
force_b(:) = 0.0_dp
|
||||
my_virial_a = 0.0_dp
|
||||
my_virial_b = 0.0_dp
|
||||
|
||||
radius = exp_radius_very_extended(la_min=0, la_max=0, lb_min=0, lb_max=0, &
|
||||
ra=ra, rb=ra, rp=ra, &
|
||||
zetp=alpha, eps=eps_rho_rspace, &
|
||||
pab=pab, o1=0, o2=0, &
|
||||
prefactor=1.0_dp, cutoff=1.0_dp)
|
||||
|
||||
CALL integrate_pgf_product(0, alpha, 0, &
|
||||
0, 0.0_dp, 0, ra, [0.0_dp, 0.0_dp, 0.0_dp], &
|
||||
rs_v, hab, pab=pab, o1=0, o2=0, &
|
||||
radius=radius, &
|
||||
calculate_forces=.TRUE., force_a=force_a, &
|
||||
force_b=force_b, use_virial=use_virial, my_virial_a=my_virial_a, &
|
||||
my_virial_b=my_virial_b, use_subpatch=.TRUE., subpatch_pattern=0)
|
||||
|
||||
aforce(1:3, atom_a) = aforce(1:3, atom_a) + force_a(1:3)
|
||||
avirial = avirial + my_virial_a
|
||||
|
||||
END DO
|
||||
|
||||
END DO
|
||||
|
||||
DEALLOCATE (hab, pab, cores)
|
||||
|
||||
CALL timestop(handle)
|
||||
|
||||
END SUBROUTINE gauss_grid_force
|
||||
|
||||
! **************************************************************************************************
|
||||
!> \brief calculates the XC density:
|
||||
!> order=0: exc will contain the xc energy density E_xc(r)
|
||||
!> order=1: exc will contain V_xc(r) * rho1(r)
|
||||
!> order=2: exc will contain F_xc(r) * rho1(r) * rho1(r)
|
||||
!> \param ks_env to get all the needed things
|
||||
!> \param rho_struct density
|
||||
!> \param rho1_struct response density
|
||||
!> \param order requested derivative order
|
||||
!> \param xc_section ...
|
||||
!> \param triplet ...
|
||||
!> \param exc ...
|
||||
!> \author JGH
|
||||
! **************************************************************************************************
|
||||
SUBROUTINE xc_density(ks_env, rho_struct, rho1_struct, order, xc_section, triplet, exc)
|
||||
|
||||
TYPE(qs_ks_env_type), POINTER :: ks_env
|
||||
TYPE(qs_rho_type), POINTER :: rho_struct, rho1_struct
|
||||
INTEGER, INTENT(IN) :: order
|
||||
TYPE(section_vals_type), POINTER :: xc_section
|
||||
LOGICAL, INTENT(IN) :: triplet
|
||||
TYPE(pw_r3d_rs_type) :: exc
|
||||
|
||||
CHARACTER(len=*), PARAMETER :: routineN = 'xc_density'
|
||||
|
||||
INTEGER :: handle, ispin, myfun, nspins
|
||||
LOGICAL :: uf_grid
|
||||
REAL(KIND=dp) :: excint, factor
|
||||
REAL(KIND=dp), DIMENSION(3, 3) :: vdum
|
||||
TYPE(cell_type), POINTER :: cell
|
||||
TYPE(dft_control_type), POINTER :: dft_control
|
||||
TYPE(pw_c1d_gs_type), DIMENSION(:), POINTER :: rho_g
|
||||
TYPE(pw_c1d_gs_type), POINTER :: rho_nlcc_g
|
||||
TYPE(pw_env_type), POINTER :: pw_env
|
||||
TYPE(pw_pool_type), POINTER :: auxbas_pw_pool, xc_pw_pool
|
||||
TYPE(pw_r3d_rs_type), DIMENSION(:), POINTER :: rho1_r, rho_r, tau1_r, tau_r, vxc_rho, &
|
||||
vxc_tau
|
||||
TYPE(pw_r3d_rs_type), POINTER :: rho_nlcc, weights
|
||||
|
||||
CALL timeset(routineN, handle)
|
||||
|
||||
! we always get true exc (not integration weighted)
|
||||
NULLIFY (weights)
|
||||
|
||||
CALL get_ks_env(ks_env, &
|
||||
dft_control=dft_control, &
|
||||
pw_env=pw_env, &
|
||||
cell=cell, &
|
||||
rho_nlcc=rho_nlcc, &
|
||||
rho_nlcc_g=rho_nlcc_g)
|
||||
|
||||
CALL qs_rho_get(rho_struct, rho_r=rho_r, rho_g=rho_g, tau_r=tau_r)
|
||||
|
||||
nspins = dft_control%nspins
|
||||
|
||||
CALL section_vals_val_get(xc_section, "XC_FUNCTIONAL%_SECTION_PARAMETERS_", i_val=myfun)
|
||||
|
||||
CALL pw_env_get(pw_env, xc_pw_pool=xc_pw_pool, auxbas_pw_pool=auxbas_pw_pool)
|
||||
uf_grid = .NOT. pw_grid_compare(auxbas_pw_pool%pw_grid, xc_pw_pool%pw_grid)
|
||||
IF (uf_grid) THEN
|
||||
CALL cp_warn(__LOCATION__, "Fine grid option not possible with energy density")
|
||||
CPABORT("Fine Grid in xc_density")
|
||||
END IF
|
||||
|
||||
CALL pw_zero(exc)
|
||||
|
||||
IF (myfun /= xc_none) THEN
|
||||
|
||||
CPASSERT(ASSOCIATED(rho_struct))
|
||||
CPASSERT(dft_control%sic_method_id == sic_none)
|
||||
|
||||
! add the nlcc densities
|
||||
IF (ASSOCIATED(rho_nlcc) .AND. order <= 1) THEN
|
||||
factor = 1.0_dp
|
||||
DO ispin = 1, nspins
|
||||
CALL pw_axpy(rho_nlcc, rho_r(ispin), factor)
|
||||
CALL pw_axpy(rho_nlcc_g, rho_g(ispin), factor)
|
||||
END DO
|
||||
END IF
|
||||
|
||||
NULLIFY (vxc_rho, vxc_tau)
|
||||
SELECT CASE (order)
|
||||
CASE (0)
|
||||
! we could reduce to energy only here
|
||||
CALL xc_exc_pw_create(rho_r, rho_g, tau_r, xc_section, weights, xc_pw_pool, exc)
|
||||
CASE (1)
|
||||
CALL qs_rho_get(rho1_struct, rho_r=rho1_r, tau_r=tau1_r)
|
||||
CALL xc_vxc_pw_create(vxc_rho=vxc_rho, vxc_tau=vxc_tau, rho_r=rho_r, &
|
||||
rho_g=rho_g, tau=tau_r, exc=excint, &
|
||||
xc_section=xc_section, &
|
||||
weights=weights, pw_pool=xc_pw_pool, &
|
||||
compute_virial=.FALSE., &
|
||||
virial_xc=vdum)
|
||||
CASE (2)
|
||||
CALL qs_rho_get(rho1_struct, rho_r=rho1_r, tau_r=tau1_r)
|
||||
CALL qs_fxc_analytic(rho_struct, rho1_r, tau1_r, xc_section, weights, xc_pw_pool, &
|
||||
triplet, vxc_rho, vxc_tau)
|
||||
CASE DEFAULT
|
||||
CPABORT("Derivative order not available in xc_density")
|
||||
END SELECT
|
||||
|
||||
! remove the nlcc densities (keep stuff in original state)
|
||||
IF (ASSOCIATED(rho_nlcc) .AND. order <= 1) THEN
|
||||
factor = -1.0_dp
|
||||
DO ispin = 1, dft_control%nspins
|
||||
CALL pw_axpy(rho_nlcc, rho_r(ispin), factor)
|
||||
CALL pw_axpy(rho_nlcc_g, rho_g(ispin), factor)
|
||||
END DO
|
||||
END IF
|
||||
!
|
||||
SELECT CASE (order)
|
||||
CASE (0)
|
||||
!
|
||||
CASE (1, 2)
|
||||
CALL pw_zero(exc)
|
||||
IF (ASSOCIATED(vxc_rho)) THEN
|
||||
DO ispin = 1, nspins
|
||||
CALL pw_multiply_with(vxc_rho(ispin), rho1_r(ispin))
|
||||
CALL pw_axpy(vxc_rho(ispin), exc, 1.0_dp)
|
||||
CALL vxc_rho(ispin)%release()
|
||||
END DO
|
||||
DEALLOCATE (vxc_rho)
|
||||
END IF
|
||||
IF (ASSOCIATED(vxc_tau)) THEN
|
||||
DO ispin = 1, nspins
|
||||
CALL pw_multiply_with(vxc_tau(ispin), tau1_r(ispin))
|
||||
CALL pw_axpy(vxc_tau(ispin), exc, 1.0_dp)
|
||||
CALL vxc_tau(ispin)%release()
|
||||
END DO
|
||||
DEALLOCATE (vxc_tau)
|
||||
END IF
|
||||
CASE DEFAULT
|
||||
CPABORT("Derivative order not available in xc_density")
|
||||
END SELECT
|
||||
|
||||
IF (order == 2) THEN
|
||||
CALL pw_scale(exc, 0.5_dp)
|
||||
END IF
|
||||
|
||||
END IF
|
||||
|
||||
CALL timestop(handle)
|
||||
|
||||
END SUBROUTINE xc_density
|
||||
|
||||
END MODULE accint_weights_forces
|
||||
|
|
@ -510,7 +510,6 @@ CONTAINS
|
|||
INTEGER, INTENT(IN) :: iw
|
||||
|
||||
CHARACTER(len=160) :: shortform
|
||||
CHARACTER(LEN=20) :: tmpStr
|
||||
CHARACTER(len=:), ALLOCATABLE :: reference
|
||||
INTEGER :: ifun, il, meth, myfun, reltyp
|
||||
LOGICAL :: lsd
|
||||
|
|
@ -600,8 +599,6 @@ CONTAINS
|
|||
lsd = (meth == do_uks_atom)
|
||||
|
||||
IF (myfun /= xc_none) THEN
|
||||
CALL section_vals_val_get(xc_section, "FUNCTIONAL_ROUTINE", c_val=tmpStr)
|
||||
IF (iw > 0) WRITE (iw, fmt="(' FUNCTIONAL| ROUTINE=',a)") TRIM(tmpStr)
|
||||
CALL xc_functionals_expand(xc_fun_section, xc_section)
|
||||
IF (iw > 0) THEN
|
||||
ifun = 0
|
||||
|
|
|
|||
|
|
@ -273,6 +273,9 @@ MODULE cp_control_types
|
|||
lmax_rho0 = 0, &
|
||||
lmax_sphere = 0, &
|
||||
quadrature = 0
|
||||
LOGICAL :: accurate_xcint = .FALSE.
|
||||
REAL(KIND=dp) :: aweights = 0.0_dp
|
||||
REAL(KIND=dp), DIMENSION(:), POINTER :: aw => NULL()
|
||||
LOGICAL :: alpha0_hard_from_input = .FALSE., &
|
||||
force_paw = .FALSE., &
|
||||
non_paw_atoms = .FALSE., &
|
||||
|
|
@ -964,6 +967,9 @@ CONTAINS
|
|||
DEALLOCATE (qs_control%e_cutoff)
|
||||
END IF
|
||||
IF (ASSOCIATED(qs_control%gapw_control)) THEN
|
||||
IF (ASSOCIATED(qs_control%gapw_control%aw)) THEN
|
||||
DEALLOCATE (qs_control%gapw_control%aw)
|
||||
END IF
|
||||
DEALLOCATE (qs_control%gapw_control)
|
||||
END IF
|
||||
IF (ASSOCIATED(qs_control%ddapc_restraint_control)) THEN
|
||||
|
|
|
|||
|
|
@ -986,6 +986,9 @@ CONTAINS
|
|||
IF (qs_control%gapw_control%basis_1c /= gapw_1c_orb) THEN
|
||||
qs_control%gapw_control%eps_svd = MAX(qs_control%gapw_control%eps_svd, 1.E-12_dp)
|
||||
END IF
|
||||
! GAPW accurate integration
|
||||
CALL section_vals_val_get(qs_section, "GAPW_ACCURATE_XCINT", l_val=qs_control%gapw_control%accurate_xcint)
|
||||
CALL section_vals_val_get(qs_section, "ALPHA_WEIGHTS", r_val=qs_control%gapw_control%aweights)
|
||||
|
||||
! Integers grids
|
||||
CALL section_vals_val_get(qs_section, "PW_GRID", i_val=itmp)
|
||||
|
|
@ -2447,6 +2450,12 @@ CONTAINS
|
|||
"QS| eps_ppnl:", &
|
||||
qs_control%eps_ppnl
|
||||
IF (qs_control%gapw) THEN
|
||||
IF (qs_control%gapw_control%accurate_xcint) THEN
|
||||
WRITE (UNIT=output_unit, FMT="(T2,A,T69,F12.6)") &
|
||||
"QS| GAPW| XC integration using accurate scheme: Ref. exponent =", &
|
||||
qs_control%gapw_control%aweights
|
||||
END IF
|
||||
!
|
||||
SELECT CASE (qs_control%gapw_control%basis_1c)
|
||||
CASE (gapw_1c_orb)
|
||||
WRITE (UNIT=output_unit, FMT="(T2,A)") &
|
||||
|
|
|
|||
|
|
@ -106,6 +106,7 @@ CONTAINS
|
|||
TYPE(pw_env_type), POINTER :: pw_env
|
||||
TYPE(pw_pool_type), POINTER :: auxbas_pw_pool
|
||||
TYPE(pw_r3d_rs_type), DIMENSION(:), POINTER :: rho_r, tau_r
|
||||
TYPE(pw_r3d_rs_type), POINTER :: weights
|
||||
TYPE(xc_derivative_set_type) :: deriv_set
|
||||
TYPE(xc_rho_set_type) :: rho_set
|
||||
|
||||
|
|
@ -113,7 +114,7 @@ CONTAINS
|
|||
|
||||
NULLIFY (auxbas_pw_pool, pw_env, rho_r, vxc, vxc_tau)
|
||||
|
||||
CALL get_qs_env(qs_env, pw_env=pw_env)
|
||||
CALL get_qs_env(qs_env, pw_env=pw_env, xcint_weights=weights)
|
||||
CALL pw_env_get(pw_env=pw_env, auxbas_pw_pool=auxbas_pw_pool)
|
||||
! Get density
|
||||
CALL qs_rho_get(rho, rho_r=rho_r, tau_r=tau_r)
|
||||
|
|
@ -123,6 +124,7 @@ CONTAINS
|
|||
rho_r=rho_r, & ! place where derivative is evaluated
|
||||
tau_r=tau_r, &
|
||||
pw_pool=auxbas_pw_pool, & ! pool for grids
|
||||
weights=weights, &
|
||||
xc_section=xc_section)
|
||||
|
||||
! folding of second deriv with density in rho1_set
|
||||
|
|
@ -134,6 +136,7 @@ CONTAINS
|
|||
rho1_g=rho1_g, & ! density with which to fold
|
||||
tau1_r=tau1_r, &
|
||||
pw_pool=auxbas_pw_pool, & ! pool for grids
|
||||
weights=weights, &
|
||||
xc_section=xc_section, &
|
||||
gapw=.FALSE., &
|
||||
compute_virial=compute_virial, &
|
||||
|
|
|
|||
|
|
@ -1153,6 +1153,7 @@ CONTAINS
|
|||
TYPE(pw_pool_type), POINTER :: auxbas_pw_pool
|
||||
TYPE(pw_r3d_rs_type) :: v_hartree_rspace
|
||||
TYPE(pw_r3d_rs_type), DIMENSION(:), POINTER :: rho1_r, rho_r, tau1_r, v_xc, v_xc_tau
|
||||
TYPE(pw_r3d_rs_type), POINTER :: weights
|
||||
TYPE(qs_kpp1_env_type), POINTER :: kpp1_env
|
||||
TYPE(qs_rho_type), POINTER :: rho, rho_aux
|
||||
TYPE(section_vals_type), POINTER :: input, xc_section, xc_section_aux
|
||||
|
|
@ -1183,6 +1184,9 @@ CONTAINS
|
|||
CALL get_qs_env(qs_env, pw_env=pw_env)
|
||||
CPASSERT(ASSOCIATED(pw_env))
|
||||
|
||||
NULLIFY (weights)
|
||||
CALL get_qs_env(qs_env, xcint_weights=weights)
|
||||
|
||||
NULLIFY (auxbas_pw_pool, poisson_env, pw_pools)
|
||||
! gets the tmp grids
|
||||
CALL pw_env_get(pw_env=pw_env, &
|
||||
|
|
@ -1230,7 +1234,7 @@ CONTAINS
|
|||
CALL qs_rho_get(rho_aux, rho_r=rho_r)
|
||||
ALLOCATE (kpp1_env%deriv_set_admm, kpp1_env%rho_set_admm)
|
||||
CALL xc_prep_2nd_deriv(kpp1_env%deriv_set_admm, kpp1_env%rho_set_admm, &
|
||||
rho_r, auxbas_pw_pool, &
|
||||
rho_r, auxbas_pw_pool, weights, &
|
||||
xc_section=xc_section_aux)
|
||||
END IF
|
||||
END IF
|
||||
|
|
|
|||
|
|
@ -16,6 +16,7 @@
|
|||
!> \author JGH
|
||||
! **************************************************************************************************
|
||||
MODULE energy_corrections
|
||||
USE accint_weights_forces, ONLY: accint_weight_force
|
||||
USE admm_dm_methods, ONLY: admm_dm_calc_rho_aux
|
||||
USE admm_methods, ONLY: admm_mo_calc_rho_aux
|
||||
USE admm_types, ONLY: admm_type
|
||||
|
|
@ -875,7 +876,7 @@ CONTAINS
|
|||
TYPE(qs_force_type), DIMENSION(:), POINTER :: force
|
||||
TYPE(qs_kind_type), DIMENSION(:), POINTER :: qs_kind_set
|
||||
TYPE(qs_ks_env_type), POINTER :: ks_env
|
||||
TYPE(qs_rho_type), POINTER :: rho, rho_struct, rho_xc
|
||||
TYPE(qs_rho_type), POINTER :: rho, rho1, rho_struct, rho_xc
|
||||
TYPE(section_vals_type), POINTER :: ec_hfx_sections
|
||||
TYPE(task_list_type), POINTER :: task_list
|
||||
TYPE(virial_type), POINTER :: virial
|
||||
|
|
@ -1035,6 +1036,24 @@ CONTAINS
|
|||
CALL qs_vxc_create(ks_env=ks_env, rho_struct=rho_struct, xc_section=ec_env%xc_section, &
|
||||
vxc_rho=v_rspace, vxc_tau=v_tau_rspace, exc=exc, just_energy=.FALSE.)
|
||||
|
||||
IF (debug_forces) fodeb(1:3) = force(1)%rho_elec(1:3, 1)
|
||||
IF (debug_stress .AND. use_virial) stdeb = virial%pv_virial
|
||||
!
|
||||
NULLIFY (rho1)
|
||||
CALL accint_weight_force(qs_env, rho_struct, rho1, 0, ec_env%xc_section)
|
||||
!
|
||||
IF (debug_forces) THEN
|
||||
fodeb(1:3) = force(1)%rho_elec(1:3, 1) - fodeb(1:3)
|
||||
CALL para_env%sum(fodeb)
|
||||
IF (iounit > 0) WRITE (iounit, "(T3,A,T33,3F16.8)") "DEBUG:: Fxc*dw ", fodeb
|
||||
END IF
|
||||
IF (debug_stress .AND. use_virial) THEN
|
||||
stdeb = fconv*(virial%pv_virial - stdeb)
|
||||
CALL para_env%sum(stdeb)
|
||||
IF (iounit > 0) WRITE (UNIT=iounit, FMT="(T2,A,T41,2(1X,ES19.11))") &
|
||||
'STRESS| INT Fxc*dw ', one_third_sum_diag(stdeb), det_3x3(stdeb)
|
||||
END IF
|
||||
|
||||
IF (.NOT. ASSOCIATED(v_rspace)) THEN
|
||||
ALLOCATE (v_rspace(nspins))
|
||||
DO ispin = 1, nspins
|
||||
|
|
|
|||
|
|
@ -237,6 +237,21 @@ CONTAINS
|
|||
CALL section_add_keyword(section, keyword)
|
||||
CALL keyword_release(keyword)
|
||||
|
||||
CALL keyword_create( &
|
||||
keyword, __LOCATION__, name="GAPW_ACCURATE_XCINT", &
|
||||
description="Use a more accurate integration scheme for the soft XC energy in GAPW.", &
|
||||
usage="GAPW_ACCURATE_XCINT", &
|
||||
default_l_val=.FALSE., lone_keyword_l_val=.TRUE.)
|
||||
CALL section_add_keyword(section, keyword)
|
||||
CALL keyword_release(keyword)
|
||||
|
||||
CALL keyword_create( &
|
||||
keyword, __LOCATION__, name="ALPHA_WEIGHTS", &
|
||||
description="Gaussian exponent reference (rc=1.2 Bohr) for accurate integration in GAPW.", &
|
||||
usage="ALPHA_WEIGHTS 10.0", default_r_val=6.0_dp)
|
||||
CALL section_add_keyword(section, keyword)
|
||||
CALL keyword_release(keyword)
|
||||
|
||||
CALL keyword_create(keyword, __LOCATION__, name="MIN_PAIR_LIST_RADIUS", &
|
||||
description="Set the minimum value [Bohr] for the overlap pair list radius."// &
|
||||
" Default is 0.0 Bohr, negative values are changed to the cell size."// &
|
||||
|
|
|
|||
|
|
@ -46,11 +46,10 @@ MODULE input_cp2k_xc
|
|||
USE xc_input_constants, ONLY: &
|
||||
c_pw92, c_pw92dmc, c_pw92vmc, c_pz, c_pzdmc, c_pzvmc, do_vwn3, do_vwn5, ke_lc, ke_llp, &
|
||||
ke_ol1, ke_ol2, ke_pbe, ke_pw86, ke_pw91, ke_t92, pz_orig, xalpha, xc_b97_3c, &
|
||||
xc_b97_grimme, xc_b97_mardirossian, xc_b97_orig, xc_debug_new_routine, &
|
||||
xc_default_f_routine, xc_deriv_collocate, xc_deriv_nn10_smooth, xc_deriv_nn50_smooth, &
|
||||
xc_deriv_pw, xc_deriv_spline2, xc_deriv_spline2_smooth, xc_deriv_spline3, &
|
||||
xc_deriv_spline3_smooth, xc_pbe_orig, xc_pbe_rev, xc_pbe_sol, xc_rho_nn10, xc_rho_nn50, &
|
||||
xc_rho_no_smooth, xc_rho_spline2_smooth, xc_rho_spline3_smooth, xc_test_lsd_f_routine, &
|
||||
xc_b97_grimme, xc_b97_mardirossian, xc_b97_orig, xc_deriv_collocate, xc_deriv_nn10_smooth, &
|
||||
xc_deriv_nn50_smooth, xc_deriv_pw, xc_deriv_spline2, xc_deriv_spline2_smooth, &
|
||||
xc_deriv_spline3, xc_deriv_spline3_smooth, xc_pbe_orig, xc_pbe_rev, xc_pbe_sol, &
|
||||
xc_rho_nn10, xc_rho_nn50, xc_rho_no_smooth, xc_rho_spline2_smooth, xc_rho_spline3_smooth, &
|
||||
xgga_b88x, xgga_ev93, xgga_opt, xgga_pbex, xgga_pw86, xgga_pw91, xgga_revpbe
|
||||
USE xc_libxc, ONLY: libxc_add_sections
|
||||
#include "./base/base_uses.f90"
|
||||
|
|
@ -1319,19 +1318,6 @@ CONTAINS
|
|||
CALL section_add_keyword(section, keyword)
|
||||
CALL keyword_release(keyword)
|
||||
|
||||
CALL keyword_create( &
|
||||
keyword, __LOCATION__, name="FUNCTIONAL_ROUTINE", &
|
||||
description="Select the code for xc calculation", &
|
||||
usage="FUNCTIONAL_ROUTINE (DEFAULT|TEST_LSD|DEBUG)", &
|
||||
default_i_val=xc_default_f_routine, &
|
||||
enum_c_vals=s2a("DEFAULT", "TEST_LSD", "DEBUG"), &
|
||||
enum_i_vals=[xc_default_f_routine, xc_test_lsd_f_routine, xc_debug_new_routine], &
|
||||
enum_desc=s2a("Carry out exchange-correlation functional calculation", &
|
||||
"Use test local-spin-density approximation code for exchange-correlation functional calculation", &
|
||||
"Use debug new code for exchange-correlation functional calculation"))
|
||||
CALL section_add_keyword(section, keyword)
|
||||
CALL keyword_release(keyword)
|
||||
|
||||
CALL section_create(subsection, __LOCATION__, name="xc_grid", & !FM to do
|
||||
description="The xc parameters used when calculating the xc on the grid", &
|
||||
n_keywords=5, n_subsections=0, repeats=.FALSE.)
|
||||
|
|
|
|||
|
|
@ -285,6 +285,7 @@ CONTAINS
|
|||
TYPE(pw_env_type), POINTER :: pw_env
|
||||
TYPE(pw_pool_type), POINTER :: auxbas_pw_pool
|
||||
TYPE(pw_r3d_rs_type), DIMENSION(:), POINTER :: rho1_aux_r, tau1_aux_r, v_xc, v_xc_tau
|
||||
TYPE(pw_r3d_rs_type), POINTER :: weights
|
||||
TYPE(qs_ks_env_type), POINTER :: ks_env
|
||||
TYPE(qs_rho_type), POINTER :: rho_aux
|
||||
TYPE(section_vals_type), POINTER :: xc_section
|
||||
|
|
@ -315,7 +316,7 @@ CONTAINS
|
|||
NULLIFY (v_xc)
|
||||
! calculate the xc potential
|
||||
lsd = (nspins == 2)
|
||||
CALL get_qs_env(qs_env=qs_env, ks_env=ks_env, admm_env=admm_env)
|
||||
CALL get_qs_env(qs_env=qs_env, ks_env=ks_env, admm_env=admm_env, xcint_weights=weights)
|
||||
CALL get_admm_env(admm_env, task_list_aux_fit=task_list_aux_fit)
|
||||
|
||||
CALL qs_rho_get(p_env%rho1_admm, rho_r=rho1_aux_r, rho_g=rho1_aux_g, tau_r=tau1_aux_r)
|
||||
|
|
@ -323,7 +324,9 @@ CONTAINS
|
|||
|
||||
CALL xc_calc_2nd_deriv(v_xc, v_xc_tau, p_env%kpp1_env%deriv_set_admm, &
|
||||
p_env%kpp1_env%rho_set_admm, &
|
||||
rho1_aux_r, rho1_aux_g, tau1_aux_r, auxbas_pw_pool, xc_section=xc_section, gapw=.FALSE., &
|
||||
rho1_aux_r, rho1_aux_g, tau1_aux_r, auxbas_pw_pool, &
|
||||
weights=weights, &
|
||||
xc_section=xc_section, gapw=.FALSE., &
|
||||
compute_virial=calc_virial, virial_xc=virial)
|
||||
|
||||
NULLIFY (work_hmat%matrix)
|
||||
|
|
|
|||
|
|
@ -126,6 +126,7 @@ CONTAINS
|
|||
TYPE(pw_r3d_rs_type) :: v_hartree_rspace
|
||||
TYPE(pw_r3d_rs_type), DIMENSION(:), POINTER :: rho1_r, rho_r, tau1_r, v_rspace_new, &
|
||||
v_xc, v_xc_tau
|
||||
TYPE(pw_r3d_rs_type), POINTER :: weights
|
||||
TYPE(qs_rho_type), POINTER :: perturbed_density, rho
|
||||
TYPE(section_vals_type), POINTER :: input, xc_section
|
||||
TYPE(xc_derivative_set_type) :: deriv_set
|
||||
|
|
@ -215,6 +216,7 @@ CONTAINS
|
|||
|
||||
CALL get_qs_env(qs_env=qs_env, &
|
||||
pw_env=pw_env, &
|
||||
xcint_weights=weights, &
|
||||
input=input)
|
||||
|
||||
! Create the temporary grids
|
||||
|
|
@ -225,7 +227,7 @@ CONTAINS
|
|||
xc_section => section_vals_get_subs_vals(input, "DFT%XC")
|
||||
|
||||
CALL xc_prep_2nd_deriv(deriv_set, rho_set, &
|
||||
rho_r, auxbas_pw_pool, &
|
||||
rho_r, auxbas_pw_pool, weights, &
|
||||
xc_section=xc_section)
|
||||
|
||||
! Done with deriv_set and rho_set
|
||||
|
|
@ -252,7 +254,8 @@ CONTAINS
|
|||
|
||||
! Calculate the second derivative of the exchange-correlation potential
|
||||
CALL xc_calc_2nd_deriv(v_xc, v_xc_tau, deriv_set, rho_set, &
|
||||
rho1_r, rho1_g_pw, tau1_r, auxbas_pw_pool, xc_section, gapw=.FALSE.)
|
||||
rho1_r, rho1_g_pw, tau1_r, auxbas_pw_pool, &
|
||||
weights, xc_section, gapw=.FALSE.)
|
||||
|
||||
DO ispin = 1, dcdr_env%nspins
|
||||
v_rspace_new(ispin) = v_xc(ispin)
|
||||
|
|
@ -444,6 +447,7 @@ CONTAINS
|
|||
TYPE(pw_pool_type), POINTER :: auxbas_pw_pool
|
||||
TYPE(pw_r3d_rs_type) :: drho_r_total, v_hartree_rspace
|
||||
TYPE(pw_r3d_rs_type), DIMENSION(:), POINTER :: drho_r, dtau_r, rho_r, v_xc, v_xc_tau
|
||||
TYPE(pw_r3d_rs_type), POINTER :: weights
|
||||
TYPE(qs_rho_type), POINTER :: rho
|
||||
TYPE(section_vals_type), POINTER :: input, xc_section
|
||||
TYPE(xc_derivative_set_type) :: my_deriv_set
|
||||
|
|
@ -454,6 +458,7 @@ CONTAINS
|
|||
CALL get_qs_env(qs_env=qs_env, &
|
||||
pw_env=pw_env, &
|
||||
input=input, &
|
||||
xcint_weights=weights, &
|
||||
rho=rho)
|
||||
CALL qs_rho_get(rho, rho_ao=rho_ao, rho_r=rho_r)
|
||||
|
||||
|
|
@ -502,12 +507,13 @@ CONTAINS
|
|||
|
||||
! Get the XC potential corresponding to the perturbed density
|
||||
CALL xc_prep_2nd_deriv(my_deriv_set, my_rho_set, &
|
||||
rho_r, auxbas_pw_pool, &
|
||||
rho_r, auxbas_pw_pool, weights, &
|
||||
xc_section=xc_section)
|
||||
|
||||
NULLIFY (dtau_r)
|
||||
CALL xc_calc_2nd_deriv(v_xc, v_xc_tau, my_deriv_set, my_rho_set, &
|
||||
drho_r, drho_g, dtau_r, auxbas_pw_pool, xc_section, gapw=.FALSE.)
|
||||
drho_r, drho_g, dtau_r, auxbas_pw_pool, &
|
||||
weights, xc_section, gapw=.FALSE.)
|
||||
IF (ASSOCIATED(v_xc_tau)) CPABORT("Meta functionals are not supported!")
|
||||
|
||||
CALL xc_dset_release(my_deriv_set)
|
||||
|
|
|
|||
|
|
@ -605,10 +605,10 @@ CONTAINS
|
|||
INTEGER, DIMENSION(5) :: occ
|
||||
LOGICAL :: all_potential_present, be_silent, cneo_potential_present, do_kpoints, do_ri_hfx, &
|
||||
do_ri_mp2, do_ri_rpa, do_ri_sos_mp2, do_rpa_ri_exx, do_wfc_im_time, e1terms, &
|
||||
has_unit_metric, lribas, mp2_present, orb_gradient
|
||||
has_unit_metric, lribas, mp2_present, orb_gradient, paw_atom
|
||||
REAL(KIND=dp) :: alpha, ccore, ewald_rcut, fxx, maxocc, &
|
||||
rcut, total_zeff_corr, verlet_skin, &
|
||||
zeff_correction
|
||||
rc, rcut, total_zeff_corr, &
|
||||
verlet_skin, zeff_correction
|
||||
TYPE(atomic_kind_type), DIMENSION(:), POINTER :: atomic_kind_set
|
||||
TYPE(cp_logger_type), POINTER :: logger
|
||||
TYPE(dft_control_type), POINTER :: dft_control
|
||||
|
|
@ -1145,6 +1145,7 @@ CONTAINS
|
|||
IF (dft_control%qs_control%method_id == do_method_xtb) THEN
|
||||
IF (.NOT. dft_control%qs_control%xtb_control%do_tblite) THEN
|
||||
! cutoff radius
|
||||
CALL get_qs_env(qs_env, nkind=nkind)
|
||||
DO ikind = 1, nkind
|
||||
qs_kind => qs_kind_set(ikind)
|
||||
IF (qs_kind%xtb_parameter%defined) THEN
|
||||
|
|
@ -1293,6 +1294,22 @@ CONTAINS
|
|||
END IF
|
||||
! NLCC
|
||||
CALL init_gapw_nlcc(qs_kind_set)
|
||||
! Accurate XC integration
|
||||
IF (gapw_control%accurate_xcint) THEN
|
||||
CPASSERT(.NOT. ASSOCIATED(gapw_control%aw))
|
||||
CALL get_qs_env(qs_env, nkind=nkind)
|
||||
ALLOCATE (gapw_control%aw(nkind))
|
||||
alpha = gapw_control%aweights
|
||||
DO ikind = 1, nkind
|
||||
qs_kind => qs_kind_set(ikind)
|
||||
CALL get_qs_kind(qs_kind, hard_radius=rc, paw_atom=paw_atom)
|
||||
IF (paw_atom) THEN
|
||||
gapw_control%aw(ikind) = alpha*(1.2_dp/rc)**2
|
||||
ELSE
|
||||
gapw_control%aw(ikind) = 0.0_dp
|
||||
END IF
|
||||
END DO
|
||||
END IF
|
||||
ELSE IF (dft_control%qs_control%method_id == do_method_lrigpw) THEN
|
||||
! allocate local ri environment
|
||||
! nothing to do here?
|
||||
|
|
|
|||
|
|
@ -205,7 +205,7 @@ CONTAINS
|
|||
TYPE(pw_pool_type), POINTER :: auxbas_pw_pool
|
||||
TYPE(pw_r3d_rs_type), POINTER :: embed_pot, external_vxc, rho_nlcc, &
|
||||
spin_embed_pot, v_hartree_rspace, vee, &
|
||||
vppl
|
||||
vppl, xcint_weights
|
||||
TYPE(qs_kind_type), DIMENSION(:), POINTER :: qs_kind_set
|
||||
TYPE(qs_ks_env_type), POINTER :: ks_env
|
||||
TYPE(rho0_mpole_type), POINTER :: rho0_mpole
|
||||
|
|
@ -215,7 +215,7 @@ CONTAINS
|
|||
NULLIFY (dft_control, cell, ks_env, v_hartree_rspace, auxbas_pw_pool)
|
||||
NULLIFY (rho0_mpole)
|
||||
NULLIFY (ewald_env, ewald_pw, new_pw_env, external_vxc, rho_core, rho_nlcc, rho_nlcc_g, vee, vppl, &
|
||||
embed_pot, spin_embed_pot)
|
||||
embed_pot, spin_embed_pot, xcint_weights)
|
||||
|
||||
CALL get_qs_env(qs_env, ks_env=ks_env, pw_env=new_pw_env)
|
||||
IF (.NOT. ASSOCIATED(new_pw_env)) THEN
|
||||
|
|
@ -320,6 +320,23 @@ CONTAINS
|
|||
CALL set_ks_env(ks_env, rho_nlcc_g=rho_nlcc_g)
|
||||
END IF
|
||||
|
||||
! reallocate xcint_weights
|
||||
IF (dft_control%qs_control%gapw .OR. dft_control%qs_control%gapw_xc) THEN
|
||||
IF (dft_control%qs_control%gapw_control%accurate_xcint) THEN
|
||||
CALL set_ks_env(ks_env, exc_accint=.TRUE.)
|
||||
NULLIFY (xcint_weights)
|
||||
CALL get_qs_env(qs_env, pw_env=new_pw_env, xcint_weights=xcint_weights)
|
||||
IF (ASSOCIATED(xcint_weights)) THEN
|
||||
CALL xcint_weights%release()
|
||||
ELSE
|
||||
ALLOCATE (xcint_weights)
|
||||
END IF
|
||||
CALL pw_env_get(new_pw_env, auxbas_pw_pool=auxbas_pw_pool)
|
||||
CALL auxbas_pw_pool%create_pw(xcint_weights)
|
||||
CALL set_ks_env(ks_env, xcint_weights=xcint_weights)
|
||||
END IF
|
||||
END IF
|
||||
|
||||
! reallocate vee: external electrostatic potential
|
||||
IF (dft_control%apply_external_potential .AND. .NOT. qs_env%mimic) THEN
|
||||
NULLIFY (vee)
|
||||
|
|
|
|||
|
|
@ -401,6 +401,7 @@ CONTAINS
|
|||
!> \param kinetic ...
|
||||
!> \param qs_charges ...
|
||||
!> \param vppl ...
|
||||
!> \param xcint_weights ...
|
||||
!> \param rho_core ...
|
||||
!> \param rho_nlcc ...
|
||||
!> \param rho_nlcc_g ...
|
||||
|
|
@ -508,7 +509,8 @@ CONTAINS
|
|||
matrix_p_mp2, matrix_p_mp2_admm, rho, &
|
||||
rho_xc, pw_env, ewald_env, ewald_pw, active_space, &
|
||||
mpools, input, para_env, blacs_env, scf_control, rel_control, kinetic, qs_charges, &
|
||||
vppl, rho_core, rho_nlcc, rho_nlcc_g, ks_env, ks_qmmm_env, wf_history, scf_env, local_particles, &
|
||||
vppl, xcint_weights, rho_core, rho_nlcc, rho_nlcc_g, &
|
||||
ks_env, ks_qmmm_env, wf_history, scf_env, local_particles, &
|
||||
local_molecules, distribution_2d, dbcsr_dist, molecule_kind_set, &
|
||||
molecule_set, subsys, cp_subsys, oce, local_rho_set, rho_atom_set, &
|
||||
task_list, task_list_soft, &
|
||||
|
|
@ -572,7 +574,7 @@ CONTAINS
|
|||
TYPE(dbcsr_p_type), DIMENSION(:), OPTIONAL, &
|
||||
POINTER :: kinetic
|
||||
TYPE(qs_charges_type), OPTIONAL, POINTER :: qs_charges
|
||||
TYPE(pw_r3d_rs_type), OPTIONAL, POINTER :: vppl
|
||||
TYPE(pw_r3d_rs_type), OPTIONAL, POINTER :: vppl, xcint_weights
|
||||
TYPE(pw_c1d_gs_type), OPTIONAL, POINTER :: rho_core
|
||||
TYPE(pw_r3d_rs_type), OPTIONAL, POINTER :: rho_nlcc
|
||||
TYPE(pw_c1d_gs_type), OPTIONAL, POINTER :: rho_nlcc_g
|
||||
|
|
@ -816,6 +818,7 @@ CONTAINS
|
|||
matrix_s_RI_aux_kp=matrix_s_RI_aux_kp, &
|
||||
rho=rho, &
|
||||
rho_xc=rho_xc, &
|
||||
xcint_weights=xcint_weights, &
|
||||
rho_core=rho_core, &
|
||||
rho_nlcc=rho_nlcc, &
|
||||
rho_nlcc_g=rho_nlcc_g, &
|
||||
|
|
|
|||
35
src/qs_fxc.F
35
src/qs_fxc.F
|
|
@ -84,17 +84,20 @@ CONTAINS
|
|||
!> \param rho1_r ...
|
||||
!> \param tau1_r ...
|
||||
!> \param xc_section ...
|
||||
!> \param weights ...
|
||||
!> \param auxbas_pw_pool ...
|
||||
!> \param is_triplet ...
|
||||
!> \param v_xc ...
|
||||
!> \param v_xc_tau ...
|
||||
!> \param spinflip ...
|
||||
! **************************************************************************************************
|
||||
SUBROUTINE qs_fxc_analytic(rho0, rho1_r, tau1_r, xc_section, auxbas_pw_pool, is_triplet, v_xc, v_xc_tau, spinflip)
|
||||
SUBROUTINE qs_fxc_analytic(rho0, rho1_r, tau1_r, xc_section, weights, auxbas_pw_pool, &
|
||||
is_triplet, v_xc, v_xc_tau, spinflip)
|
||||
|
||||
TYPE(qs_rho_type), POINTER :: rho0
|
||||
TYPE(pw_r3d_rs_type), DIMENSION(:), POINTER :: rho1_r, tau1_r
|
||||
TYPE(section_vals_type), POINTER :: xc_section
|
||||
TYPE(pw_r3d_rs_type), POINTER :: weights
|
||||
TYPE(pw_pool_type), POINTER :: auxbas_pw_pool
|
||||
LOGICAL, INTENT(IN) :: is_triplet
|
||||
TYPE(pw_r3d_rs_type), DIMENSION(:), POINTER :: v_xc, v_xc_tau
|
||||
|
|
@ -133,11 +136,12 @@ CONTAINS
|
|||
xc_fun_section => section_vals_get_subs_vals(xc_section, "XC_FUNCTIONAL")
|
||||
needs = xc_functionals_get_needs(xc_fun_section, lsd, .TRUE.)
|
||||
! calculate the arguments needed by the functionals and the values of the functional on the grid
|
||||
CALL xc_prep_2nd_deriv(deriv_set, rho0_set, rho0_r, auxbas_pw_pool, xc_section=xc_section, tau_r=tau0_r)
|
||||
CALL xc_prep_2nd_deriv(deriv_set, rho0_set, rho0_r, auxbas_pw_pool, weights, &
|
||||
xc_section=xc_section, tau_r=tau0_r)
|
||||
! Folds the density rho1 with the functional
|
||||
CALL xc_calc_2nd_deriv(v_xc, v_xc_tau, deriv_set, rho0_set, rho1_r, rho1_g, tau1_r, &
|
||||
auxbas_pw_pool, xc_section=xc_section, gapw=.FALSE., do_triplet=is_triplet, &
|
||||
do_sf=do_sf)
|
||||
auxbas_pw_pool, weights, xc_section=xc_section, &
|
||||
gapw=.FALSE., do_triplet=is_triplet, do_sf=do_sf)
|
||||
CALL xc_dset_release(deriv_set)
|
||||
CALL xc_rho_set_release(rho0_set)
|
||||
|
||||
|
|
@ -156,8 +160,8 @@ CONTAINS
|
|||
!> \param fxc_rho ...
|
||||
!> \param fxc_tau ...
|
||||
! **************************************************************************************************
|
||||
SUBROUTINE qs_fxc_fdiff(ks_env, rho0_struct, rho1_struct, xc_section, accuracy, is_triplet, &
|
||||
fxc_rho, fxc_tau)
|
||||
SUBROUTINE qs_fxc_fdiff(ks_env, rho0_struct, rho1_struct, xc_section, accuracy, &
|
||||
is_triplet, fxc_rho, fxc_tau)
|
||||
|
||||
TYPE(qs_ks_env_type), POINTER :: ks_env
|
||||
TYPE(qs_rho_type), POINTER :: rho0_struct, rho1_struct
|
||||
|
|
@ -288,6 +292,7 @@ CONTAINS
|
|||
!> \param rho0_struct Ground state density, n(r).
|
||||
!> \param rho1_struct Density used to fold the functional derivatives, n^(1)(r).
|
||||
!> \param xc_section ...
|
||||
!> \param weights ...
|
||||
!> \param pw_pool ...
|
||||
!> \param fxc_rho Second functional derivative with respect to the density, n(r).
|
||||
!> \param fxc_tau mGGA contribution to the second functional derivative with respect to the density.
|
||||
|
|
@ -297,11 +302,12 @@ CONTAINS
|
|||
!> \par History
|
||||
!> * 07.2024 Created [LHS]
|
||||
! **************************************************************************************************
|
||||
SUBROUTINE qs_fgxc_analytic(rho0_struct, rho1_struct, xc_section, pw_pool, &
|
||||
SUBROUTINE qs_fgxc_analytic(rho0_struct, rho1_struct, xc_section, weights, pw_pool, &
|
||||
fxc_rho, fxc_tau, gxc_rho, gxc_tau, spinflip)
|
||||
|
||||
TYPE(qs_rho_type), POINTER :: rho0_struct, rho1_struct
|
||||
TYPE(section_vals_type), POINTER :: xc_section
|
||||
TYPE(pw_r3d_rs_type), POINTER :: weights
|
||||
TYPE(pw_pool_type), POINTER :: pw_pool
|
||||
TYPE(pw_r3d_rs_type), DIMENSION(:), POINTER :: fxc_rho, fxc_tau, gxc_rho, gxc_tau
|
||||
LOGICAL, INTENT(IN), OPTIONAL :: spinflip
|
||||
|
|
@ -387,8 +393,8 @@ CONTAINS
|
|||
! pw_pool given by the calling subroutine
|
||||
! xc_section given by the calling subroutine
|
||||
! tau0_r pw_type calculated by qs_rho_get
|
||||
CALL xc_prep_3rd_deriv(deriv_set, rho0_set, rho0_r, pw_pool, xc_section, tau_r=tau0_r, &
|
||||
do_sf=do_sf)
|
||||
CALL xc_prep_3rd_deriv(deriv_set, rho0_set, rho0_r, pw_pool, weights, &
|
||||
xc_section, tau_r=tau0_r, do_sf=do_sf)
|
||||
|
||||
! Build rho1_set
|
||||
! Get the values on the gridpoints of the rho1 density
|
||||
|
|
@ -444,6 +450,7 @@ CONTAINS
|
|||
!> \param accuracy ...
|
||||
!> \param epsrho ...
|
||||
!> \param is_triplet ...
|
||||
!> \param weights ...
|
||||
!> \param fxc_rho ...
|
||||
!> \param fxc_tau ...
|
||||
!> \param gxc_rho ...
|
||||
|
|
@ -451,7 +458,7 @@ CONTAINS
|
|||
!> \param spinflip ...
|
||||
! **************************************************************************************************
|
||||
SUBROUTINE qs_fgxc_gdiff(ks_env, rho0_struct, rho1_struct, xc_section, accuracy, epsrho, &
|
||||
is_triplet, fxc_rho, fxc_tau, gxc_rho, gxc_tau, spinflip)
|
||||
is_triplet, weights, fxc_rho, fxc_tau, gxc_rho, gxc_tau, spinflip)
|
||||
|
||||
TYPE(qs_ks_env_type), POINTER :: ks_env
|
||||
TYPE(qs_rho_type), POINTER :: rho0_struct, rho1_struct
|
||||
|
|
@ -459,6 +466,7 @@ CONTAINS
|
|||
INTEGER, INTENT(IN) :: accuracy
|
||||
REAL(KIND=dp), INTENT(IN) :: epsrho
|
||||
LOGICAL, INTENT(IN) :: is_triplet
|
||||
TYPE(pw_r3d_rs_type), POINTER :: weights
|
||||
TYPE(pw_r3d_rs_type), DIMENSION(:), POINTER :: fxc_rho, fxc_tau, gxc_rho, gxc_tau
|
||||
LOGICAL, OPTIONAL :: spinflip
|
||||
|
||||
|
|
@ -510,7 +518,8 @@ CONTAINS
|
|||
IF (do_sf) THEN
|
||||
CALL qs_rho_get(rho1_struct, rho_r=rho1_r, tau_r=tau1_r)
|
||||
CALL qs_fxc_analytic(rho0_struct, rho1_r, tau1_r, xc_section, &
|
||||
auxbas_pw_pool, is_triplet, fxc_rho, fxc_tau, spinflip=do_sf)
|
||||
weights, auxbas_pw_pool, is_triplet, &
|
||||
fxc_rho, fxc_tau, spinflip=do_sf)
|
||||
ELSE
|
||||
CALL qs_fxc_fdiff(ks_env, rho0_struct, rho1_struct, xc_section, accuracy, is_triplet, &
|
||||
fxc_rho, fxc_tau)
|
||||
|
|
@ -530,13 +539,13 @@ CONTAINS
|
|||
IF (do_sf) THEN
|
||||
! variation in alpha density
|
||||
CALL qs_fxc_analytic(rhoin, rho1_r, tau1_r, &
|
||||
xc_section, auxbas_pw_pool, is_triplet, &
|
||||
xc_section, weights, auxbas_pw_pool, is_triplet, &
|
||||
vxc00, v_tau_rspace, spinflip=do_sf)
|
||||
! variation in beta density
|
||||
CALL qs_rho_copy(rho0_struct, rhoin, auxbas_pw_pool, nspins)
|
||||
CALL qs_rho_scale_and_add_b(rhoin, rho1_struct, alpha, beta)
|
||||
CALL qs_fxc_analytic(rhoin, rho1_r, tau1_r, &
|
||||
xc_section, auxbas_pw_pool, is_triplet, &
|
||||
xc_section, weights, auxbas_pw_pool, is_triplet, &
|
||||
vxc00b, v_tau_rspace, spinflip=do_sf)
|
||||
ELSE
|
||||
CALL qs_fxc_fdiff(ks_env=ks_env, rho0_struct=rhoin, rho1_struct=rho1_struct, &
|
||||
|
|
|
|||
|
|
@ -92,6 +92,7 @@ CONTAINS
|
|||
TYPE(pw_env_type), POINTER :: pw_env
|
||||
TYPE(pw_pool_type), POINTER :: auxbas_pw_pool
|
||||
TYPE(pw_r3d_rs_type), DIMENSION(:), POINTER :: rho_ij_r, rho_ij_r2, tau_ij_r, tau_ij_r2
|
||||
TYPE(pw_r3d_rs_type), POINTER :: weights
|
||||
TYPE(section_vals_type), POINTER :: xc_fun_section
|
||||
|
||||
CALL timeset(routineN, handle)
|
||||
|
|
@ -102,6 +103,13 @@ CONTAINS
|
|||
sab_orb => sub_env%sab_orb
|
||||
|
||||
nspins = SIZE(sub_env%mos_occ)
|
||||
|
||||
NULLIFY (weights)
|
||||
weights => sub_env%xcint_weights
|
||||
IF (sub_env%is_split .AND. ASSOCIATED(weights)) THEN
|
||||
CPABORT("Split communicators and integration weights")
|
||||
END IF
|
||||
|
||||
ELSE
|
||||
CPASSERT(PRESENT(qs_env))
|
||||
|
||||
|
|
@ -111,6 +119,9 @@ CONTAINS
|
|||
sab_orb=sab_orb, &
|
||||
dft_control=dft_control)
|
||||
|
||||
NULLIFY (weights)
|
||||
CALL get_qs_env(qs_env=qs_env, xcint_weights=weights)
|
||||
|
||||
nspins = dft_control%nspins
|
||||
|
||||
IF (.NOT. ASSOCIATED(rho_struct_sub)) THEN
|
||||
|
|
@ -154,14 +165,14 @@ CONTAINS
|
|||
END IF
|
||||
|
||||
CALL xc_prep_2nd_deriv(kernel_env%xc_deriv_set, kernel_env%xc_rho_set, rho_ij_r2, &
|
||||
auxbas_pw_pool, xc_section=xc_section, tau_r=tau_ij_r2)
|
||||
auxbas_pw_pool, weights, xc_section=xc_section, tau_r=tau_ij_r2)
|
||||
|
||||
IF (ASSOCIATED(tau_ij_r)) DEALLOCATE (tau_ij_r2)
|
||||
|
||||
DEALLOCATE (rho_ij_r2)
|
||||
ELSE
|
||||
CALL xc_prep_2nd_deriv(kernel_env%xc_deriv_set, kernel_env%xc_rho_set, rho_ij_r, &
|
||||
auxbas_pw_pool, xc_section=xc_section, tau_r=tau_ij_r)
|
||||
auxbas_pw_pool, weights, xc_section=xc_section, tau_r=tau_ij_r)
|
||||
END IF
|
||||
|
||||
! ++ allocate structure for response density
|
||||
|
|
|
|||
|
|
@ -148,6 +148,7 @@ CONTAINS
|
|||
TYPE(pw_r3d_rs_type) :: v_hartree_rspace
|
||||
TYPE(pw_r3d_rs_type), DIMENSION(:), POINTER :: rho1_r, rho1_r_pw, tau1_r, tau1_r_pw, &
|
||||
v_rspace_new, v_xc, v_xc_tau
|
||||
TYPE(pw_r3d_rs_type), POINTER :: weights
|
||||
TYPE(qs_rho_type), POINTER :: rho
|
||||
TYPE(rho_atom_type), DIMENSION(:), POINTER :: rho1_atom_set, rho_atom_set
|
||||
TYPE(section_vals_type), POINTER :: input, scf_section
|
||||
|
|
@ -273,9 +274,12 @@ CONTAINS
|
|||
|
||||
END IF
|
||||
|
||||
NULLIFY (weights)
|
||||
CALL get_qs_env(qs_env, xcint_weights=weights)
|
||||
|
||||
CALL xc_calc_2nd_deriv(v_xc, v_xc_tau, p_env%kpp1_env%deriv_set, p_env%kpp1_env%rho_set, &
|
||||
rho1_r_pw, rho1_g_pw, tau1_r_pw, auxbas_pw_pool, xc_section, .FALSE., &
|
||||
do_excitations=.TRUE., do_triplet=do_triplet, &
|
||||
rho1_r_pw, rho1_g_pw, tau1_r_pw, auxbas_pw_pool, weights, &
|
||||
xc_section, .FALSE., do_excitations=.TRUE., do_triplet=do_triplet, &
|
||||
compute_virial=calc_virial, virial_xc=virial)
|
||||
|
||||
DO ispin = 1, nspins
|
||||
|
|
@ -496,6 +500,7 @@ CONTAINS
|
|||
TYPE(pw_env_type), POINTER :: pw_env
|
||||
TYPE(pw_pool_type), POINTER :: auxbas_pw_pool
|
||||
TYPE(pw_r3d_rs_type), DIMENSION(:), POINTER :: my_rho_r, my_tau_r, rho_r, tau_r
|
||||
TYPE(pw_r3d_rs_type), POINTER :: weights
|
||||
TYPE(qs_rho_type), POINTER :: rho
|
||||
TYPE(section_vals_type), POINTER :: admm_xc_section, input, xc_section
|
||||
|
||||
|
|
@ -507,6 +512,9 @@ CONTAINS
|
|||
matrix_s=matrix_s, rho=rho, input=input, &
|
||||
admm_env=admm_env, dft_control=dft_control)
|
||||
|
||||
NULLIFY (weights)
|
||||
CALL get_qs_env(qs_env, xcint_weights=weights)
|
||||
|
||||
CALL qs_rho_get(rho, rho_r=rho_r, tau_r=tau_r)
|
||||
nspins = SIZE(rho_r)
|
||||
|
||||
|
|
@ -551,7 +559,7 @@ CONTAINS
|
|||
|
||||
ALLOCATE (kpp1_env%deriv_set, kpp1_env%rho_set)
|
||||
CALL xc_prep_2nd_deriv(kpp1_env%deriv_set, kpp1_env%rho_set, &
|
||||
my_rho_r, auxbas_pw_pool, &
|
||||
my_rho_r, auxbas_pw_pool, weights, &
|
||||
xc_section=xc_section, tau_r=my_tau_r)
|
||||
|
||||
IF (nspins == 1 .AND. do_triplet) THEN
|
||||
|
|
@ -578,7 +586,7 @@ CONTAINS
|
|||
CALL qs_rho_get(rho, rho_r=rho_r)
|
||||
ALLOCATE (kpp1_env%deriv_set_admm, kpp1_env%rho_set_admm)
|
||||
CALL xc_prep_2nd_deriv(kpp1_env%deriv_set_admm, kpp1_env%rho_set_admm, &
|
||||
rho_r, auxbas_pw_pool, &
|
||||
rho_r, auxbas_pw_pool, weights, &
|
||||
xc_section=admm_xc_section)
|
||||
END IF
|
||||
END IF
|
||||
|
|
|
|||
|
|
@ -20,6 +20,7 @@
|
|||
!> - SCCS implementation (16.10.2013,MK)
|
||||
! **************************************************************************************************
|
||||
MODULE qs_ks_methods
|
||||
USE accint_weights_forces, ONLY: accint_weight_force
|
||||
USE admm_dm_methods, ONLY: admm_dm_calc_rho_aux,&
|
||||
admm_dm_merge_ks_matrix
|
||||
USE admm_methods, ONLY: admm_mo_calc_rho_aux,&
|
||||
|
|
@ -220,7 +221,7 @@ CONTAINS
|
|||
v_sccs_rspace, v_sic_rspace, v_spin_ddapc_rest_r, vee, vppl_rspace
|
||||
TYPE(qs_energy_type), POINTER :: energy
|
||||
TYPE(qs_ks_env_type), POINTER :: ks_env
|
||||
TYPE(qs_rho_type), POINTER :: rho, rho_struct, rho_xc
|
||||
TYPE(qs_rho_type), POINTER :: rho, rho1, rho_struct, rho_xc
|
||||
TYPE(section_vals_type), POINTER :: adiabatic_rescaling_section, &
|
||||
hfx_sections, input, scf_section, &
|
||||
xc_section
|
||||
|
|
@ -716,6 +717,23 @@ CONTAINS
|
|||
v_sic_rspace, v_spin_ddapc_rest_r, v_sccs_rspace, v_rspace_embed, &
|
||||
cdft_control, calculate_forces)
|
||||
|
||||
IF (calculate_forces) THEN
|
||||
IF (gapw_xc) THEN
|
||||
CALL get_qs_env(qs_env=qs_env, rho_xc=rho_struct)
|
||||
ELSE
|
||||
CALL get_qs_env(qs_env=qs_env, rho=rho_struct)
|
||||
END IF
|
||||
NULLIFY (rho1)
|
||||
CALL accint_weight_force(qs_env, rho_struct, rho1, 0, xc_section)
|
||||
!
|
||||
IF (dft_control%do_admm) THEN
|
||||
CALL get_qs_env(qs_env, admm_env=admm_env)
|
||||
xc_section => admm_env%xc_section_aux
|
||||
CALL get_admm_env(admm_env, rho_aux_fit=rho_struct)
|
||||
CALL accint_weight_force(qs_env, rho_struct, rho1, 0, xc_section)
|
||||
END IF
|
||||
END IF
|
||||
|
||||
IF (use_virial .AND. calculate_forces) THEN
|
||||
virial%pv_ehartree = virial%pv_ehartree + (virial%pv_virial - pv_loc)
|
||||
END IF
|
||||
|
|
|
|||
|
|
@ -140,7 +140,8 @@ MODULE qs_ks_types
|
|||
rho_changed = .TRUE., &
|
||||
potential_changed = .TRUE., &
|
||||
forces_up_to_date = .FALSE., &
|
||||
complex_ks = .FALSE.
|
||||
complex_ks = .FALSE., &
|
||||
exc_accint = .FALSE.
|
||||
INTEGER :: n_evals = 0
|
||||
|
||||
! hartree is supposed to contain the hartree potential (for cube output)
|
||||
|
|
@ -167,6 +168,8 @@ MODULE qs_ks_types
|
|||
rho_nlcc => Null()
|
||||
TYPE(pw_c1d_gs_type), POINTER :: rho_nlcc_g => Null()
|
||||
|
||||
TYPE(pw_r3d_rs_type), POINTER :: xcint_weights => Null()
|
||||
|
||||
TYPE(pw_c1d_gs_type), POINTER :: rho_core => NULL()
|
||||
TYPE(pw_r3d_rs_type), POINTER :: vee => NULL()
|
||||
|
||||
|
|
@ -228,6 +231,7 @@ CONTAINS
|
|||
!> \param v_hartree_rspace ...
|
||||
!> \param s_mstruct_changed ...
|
||||
!> \param rho_changed ...
|
||||
!> \param exc_accint ...
|
||||
!> \param potential_changed ...
|
||||
!> \param forces_up_to_date ...
|
||||
!> \param complex_ks ...
|
||||
|
|
@ -254,6 +258,7 @@ CONTAINS
|
|||
!> \param rho ...
|
||||
!> \param rho_xc ...
|
||||
!> \param vppl ...
|
||||
!> \param xcint_weights ...
|
||||
!> \param rho_core ...
|
||||
!> \param rho_nlcc ...
|
||||
!> \param rho_nlcc_g ...
|
||||
|
|
@ -313,7 +318,7 @@ CONTAINS
|
|||
!> \param nelectron_spin ...
|
||||
! **************************************************************************************************
|
||||
SUBROUTINE get_ks_env(ks_env, v_hartree_rspace, &
|
||||
s_mstruct_changed, rho_changed, &
|
||||
s_mstruct_changed, rho_changed, exc_accint, &
|
||||
potential_changed, forces_up_to_date, complex_ks, &
|
||||
matrix_h, matrix_h_im, matrix_ks, matrix_ks_im, matrix_vxc, &
|
||||
kinetic, matrix_s, &
|
||||
|
|
@ -321,7 +326,7 @@ CONTAINS
|
|||
matrix_h_kp, matrix_h_im_kp, matrix_ks_kp, matrix_vxc_kp, kinetic_kp, matrix_s_kp, matrix_w_kp, &
|
||||
matrix_s_RI_aux_kp, matrix_ks_im_kp, &
|
||||
rho, rho_xc, &
|
||||
vppl, rho_core, rho_nlcc, rho_nlcc_g, vee, &
|
||||
vppl, xcint_weights, rho_core, rho_nlcc, rho_nlcc_g, vee, &
|
||||
neighbor_list_id, &
|
||||
sab_orb, sab_all, sac_ae, sac_ppl, sac_lri, sap_ppnl, sap_oce, sab_lrc, &
|
||||
sab_se, sab_xtbe, sab_tbe, sab_core, sab_xb, sab_xtb_pp, sab_xtb_nonbond, &
|
||||
|
|
@ -337,8 +342,8 @@ CONTAINS
|
|||
TYPE(qs_ks_env_type), INTENT(IN) :: ks_env
|
||||
TYPE(pw_r3d_rs_type), OPTIONAL, POINTER :: v_hartree_rspace
|
||||
LOGICAL, OPTIONAL :: s_mstruct_changed, rho_changed, &
|
||||
potential_changed, forces_up_to_date, &
|
||||
complex_ks
|
||||
exc_accint, potential_changed, &
|
||||
forces_up_to_date, complex_ks
|
||||
TYPE(dbcsr_p_type), DIMENSION(:), OPTIONAL, POINTER :: matrix_h, matrix_h_im, matrix_ks, &
|
||||
matrix_ks_im, matrix_vxc, kinetic, matrix_s, matrix_s_RI_aux, matrix_w, matrix_p_mp2, &
|
||||
matrix_p_mp2_admm
|
||||
|
|
@ -346,7 +351,7 @@ CONTAINS
|
|||
matrix_ks_kp, matrix_vxc_kp, kinetic_kp, matrix_s_kp, matrix_w_kp, matrix_s_RI_aux_kp, &
|
||||
matrix_ks_im_kp
|
||||
TYPE(qs_rho_type), OPTIONAL, POINTER :: rho, rho_xc
|
||||
TYPE(pw_r3d_rs_type), OPTIONAL, POINTER :: vppl
|
||||
TYPE(pw_r3d_rs_type), OPTIONAL, POINTER :: vppl, xcint_weights
|
||||
TYPE(pw_c1d_gs_type), OPTIONAL, POINTER :: rho_core
|
||||
TYPE(pw_r3d_rs_type), OPTIONAL, POINTER :: rho_nlcc
|
||||
TYPE(pw_c1d_gs_type), OPTIONAL, POINTER :: rho_nlcc_g
|
||||
|
|
@ -397,6 +402,7 @@ CONTAINS
|
|||
IF (PRESENT(potential_changed)) potential_changed = ks_env%potential_changed
|
||||
IF (PRESENT(forces_up_to_date)) forces_up_to_date = ks_env%forces_up_to_date
|
||||
IF (PRESENT(complex_ks)) complex_ks = ks_env%complex_ks
|
||||
IF (PRESENT(exc_accint)) exc_accint = ks_env%exc_accint
|
||||
IF (PRESENT(v_hartree_rspace)) v_hartree_rspace => ks_env%v_hartree_rspace
|
||||
|
||||
IF (PRESENT(matrix_ks)) matrix_ks => get_1d_pointer(ks_env%matrix_ks)
|
||||
|
|
@ -423,6 +429,7 @@ CONTAINS
|
|||
IF (PRESENT(matrix_p_mp2_admm)) matrix_p_mp2_admm => ks_env%matrix_p_mp2_admm
|
||||
IF (PRESENT(rho)) rho => ks_env%rho
|
||||
IF (PRESENT(rho_xc)) rho_xc => ks_env%rho_xc
|
||||
IF (PRESENT(xcint_weights)) xcint_weights => ks_env%xcint_weights
|
||||
IF (PRESENT(rho_core)) rho_core => ks_env%rho_core
|
||||
IF (PRESENT(rho_nlcc)) rho_nlcc => ks_env%rho_nlcc
|
||||
IF (PRESENT(rho_nlcc_g)) rho_nlcc_g => ks_env%rho_nlcc_g
|
||||
|
|
@ -497,6 +504,7 @@ CONTAINS
|
|||
!> \param v_hartree_rspace ...
|
||||
!> \param s_mstruct_changed ...
|
||||
!> \param rho_changed ...
|
||||
!> \param exc_accint ...
|
||||
!> \param potential_changed ...
|
||||
!> \param forces_up_to_date ...
|
||||
!> \param complex_ks ...
|
||||
|
|
@ -521,6 +529,7 @@ CONTAINS
|
|||
!> \param matrix_s_RI_aux_kp ...
|
||||
!> \param matrix_ks_im_kp ...
|
||||
!> \param vppl ...
|
||||
!> \param xcint_weights ...
|
||||
!> \param rho_core ...
|
||||
!> \param rho_nlcc ...
|
||||
!> \param rho_nlcc_g ...
|
||||
|
|
@ -559,14 +568,14 @@ CONTAINS
|
|||
!> \param blacs_env ...
|
||||
! **************************************************************************************************
|
||||
SUBROUTINE set_ks_env(ks_env, v_hartree_rspace, &
|
||||
s_mstruct_changed, rho_changed, &
|
||||
s_mstruct_changed, rho_changed, exc_accint, &
|
||||
potential_changed, forces_up_to_date, complex_ks, &
|
||||
matrix_h, matrix_h_im, matrix_ks, matrix_ks_im, matrix_vxc, &
|
||||
kinetic, matrix_s, &
|
||||
matrix_s_RI_aux, matrix_w, matrix_p_mp2, matrix_p_mp2_admm, &
|
||||
matrix_h_kp, matrix_h_im_kp, matrix_ks_kp, matrix_vxc_kp, kinetic_kp, matrix_s_kp, matrix_w_kp, &
|
||||
matrix_s_RI_aux_kp, matrix_ks_im_kp, &
|
||||
vppl, rho_core, rho_nlcc, rho_nlcc_g, vee, &
|
||||
vppl, xcint_weights, rho_core, rho_nlcc, rho_nlcc_g, vee, &
|
||||
neighbor_list_id, &
|
||||
kpoints, &
|
||||
sab_orb, sab_all, sac_ae, sac_ppl, sac_lri, sap_ppnl, sap_oce, sab_lrc, &
|
||||
|
|
@ -579,15 +588,15 @@ CONTAINS
|
|||
TYPE(qs_ks_env_type), INTENT(INOUT) :: ks_env
|
||||
TYPE(pw_r3d_rs_type), OPTIONAL, POINTER :: v_hartree_rspace
|
||||
LOGICAL, OPTIONAL :: s_mstruct_changed, rho_changed, &
|
||||
potential_changed, forces_up_to_date, &
|
||||
complex_ks
|
||||
exc_accint, potential_changed, &
|
||||
forces_up_to_date, complex_ks
|
||||
TYPE(dbcsr_p_type), DIMENSION(:), OPTIONAL, POINTER :: matrix_h, matrix_h_im, matrix_ks, &
|
||||
matrix_ks_im, matrix_vxc, kinetic, matrix_s, matrix_s_RI_aux, matrix_w, matrix_p_mp2, &
|
||||
matrix_p_mp2_admm
|
||||
TYPE(dbcsr_p_type), DIMENSION(:, :), OPTIONAL, POINTER :: matrix_h_kp, matrix_h_im_kp, &
|
||||
matrix_ks_kp, matrix_vxc_kp, kinetic_kp, matrix_s_kp, matrix_w_kp, matrix_s_RI_aux_kp, &
|
||||
matrix_ks_im_kp
|
||||
TYPE(pw_r3d_rs_type), OPTIONAL, POINTER :: vppl
|
||||
TYPE(pw_r3d_rs_type), OPTIONAL, POINTER :: vppl, xcint_weights
|
||||
TYPE(pw_c1d_gs_type), OPTIONAL, POINTER :: rho_core
|
||||
TYPE(pw_r3d_rs_type), OPTIONAL, POINTER :: rho_nlcc
|
||||
TYPE(pw_c1d_gs_type), OPTIONAL, POINTER :: rho_nlcc_g
|
||||
|
|
@ -614,6 +623,7 @@ CONTAINS
|
|||
IF (PRESENT(complex_ks)) ks_env%complex_ks = complex_ks
|
||||
IF (ks_env%s_mstruct_changed .OR. ks_env%potential_changed .OR. ks_env%rho_changed) &
|
||||
ks_env%forces_up_to_date = .FALSE.
|
||||
IF (PRESENT(exc_accint)) ks_env%exc_accint = exc_accint
|
||||
IF (PRESENT(v_hartree_rspace)) ks_env%v_hartree_rspace => v_hartree_rspace
|
||||
|
||||
IF (PRESENT(matrix_h)) CALL set_1d_pointer(ks_env%matrix_h, matrix_h)
|
||||
|
|
@ -645,6 +655,7 @@ CONTAINS
|
|||
|
||||
IF (PRESENT(matrix_p_mp2)) ks_env%matrix_p_mp2 => matrix_p_mp2
|
||||
IF (PRESENT(matrix_p_mp2_admm)) ks_env%matrix_p_mp2_admm => matrix_p_mp2_admm
|
||||
IF (PRESENT(xcint_weights)) ks_env%xcint_weights => xcint_weights
|
||||
IF (PRESENT(rho_core)) ks_env%rho_core => rho_core
|
||||
IF (PRESENT(rho_nlcc)) ks_env%rho_nlcc => rho_nlcc
|
||||
IF (PRESENT(rho_nlcc_g)) ks_env%rho_nlcc_g => rho_nlcc_g
|
||||
|
|
@ -771,6 +782,10 @@ CONTAINS
|
|||
IF (ASSOCIATED(ks_env%task_list_soft)) &
|
||||
CALL deallocate_task_list(ks_env%task_list_soft)
|
||||
|
||||
IF (ASSOCIATED(ks_env%xcint_weights)) THEN
|
||||
CALL ks_env%xcint_weights%release()
|
||||
DEALLOCATE (ks_env%xcint_weights)
|
||||
END IF
|
||||
IF (ASSOCIATED(ks_env%rho_nlcc_g)) THEN
|
||||
CALL ks_env%rho_nlcc_g%release()
|
||||
DEALLOCATE (ks_env%rho_nlcc_g)
|
||||
|
|
@ -871,6 +886,10 @@ CONTAINS
|
|||
IF (ASSOCIATED(ks_env%task_list_soft)) &
|
||||
CALL deallocate_task_list(ks_env%task_list_soft)
|
||||
|
||||
IF (ASSOCIATED(ks_env%xcint_weights)) THEN
|
||||
CALL ks_env%xcint_weights%release()
|
||||
DEALLOCATE (ks_env%xcint_weights)
|
||||
END IF
|
||||
IF (ASSOCIATED(ks_env%rho_nlcc_g)) THEN
|
||||
CALL ks_env%rho_nlcc_g%release()
|
||||
DEALLOCATE (ks_env%rho_nlcc_g)
|
||||
|
|
|
|||
|
|
@ -119,7 +119,7 @@ MODULE qs_ks_utils
|
|||
USE task_list_types, ONLY: task_list_type
|
||||
USE virial_types, ONLY: virial_type
|
||||
USE xc, ONLY: xc_exc_calc,&
|
||||
xc_vxc_pw_create1
|
||||
xc_vxc_pw_create
|
||||
#include "./base/base_uses.f90"
|
||||
|
||||
IMPLICIT NONE
|
||||
|
|
@ -179,6 +179,7 @@ CONTAINS
|
|||
TYPE(pw_pool_type), POINTER :: xc_pw_pool
|
||||
TYPE(pw_r3d_rs_type) :: work_v_rspace
|
||||
TYPE(pw_r3d_rs_type), DIMENSION(:), POINTER :: rho_r, tau, vxc, vxc_tau
|
||||
TYPE(pw_r3d_rs_type), POINTER :: weights
|
||||
TYPE(qs_ks_env_type), POINTER :: ks_env
|
||||
TYPE(qs_rho_type), POINTER :: rho
|
||||
TYPE(section_vals_type), POINTER :: hfx_section, input, &
|
||||
|
|
@ -215,6 +216,7 @@ CONTAINS
|
|||
mos=mo_array, &
|
||||
rho=rho, &
|
||||
pw_env=pw_env, &
|
||||
xcint_weights=weights, &
|
||||
input=input, &
|
||||
cell=cell, &
|
||||
virial=virial)
|
||||
|
|
@ -225,6 +227,10 @@ CONTAINS
|
|||
xc_section => section_vals_get_subs_vals(input, "DFT%XC")
|
||||
hfx_section => section_vals_get_subs_vals(input, "DFT%XC%HF")
|
||||
|
||||
! No accurate integration possible (as there is no GAPW)
|
||||
IF (ASSOCIATED(weights)) THEN
|
||||
CALL cp_abort(__LOCATION__, "No accurate xc integration possible.")
|
||||
END IF
|
||||
! some assumptions need to be checked
|
||||
! we have two spins
|
||||
CPASSERT(SIZE(mo_array, 1) == 2)
|
||||
|
|
@ -350,12 +356,13 @@ CONTAINS
|
|||
! compute the exchange energies / potential if needed
|
||||
IF (just_energy) THEN
|
||||
exc = xc_exc_calc(rho_r=rho_r, rho_g=rho_g, tau=tau, xc_section=xc_section, &
|
||||
pw_pool=xc_pw_pool)
|
||||
weights=weights, pw_pool=xc_pw_pool)
|
||||
ELSE
|
||||
CPASSERT(.NOT. compute_virial)
|
||||
CALL xc_vxc_pw_create1(vxc_rho=vxc, rho_r=rho_r, &
|
||||
rho_g=rho_g, tau=tau, vxc_tau=vxc_tau, exc=exc, xc_section=xc_section, &
|
||||
pw_pool=xc_pw_pool, compute_virial=.FALSE., virial_xc=virial_xc_tmp)
|
||||
CALL xc_vxc_pw_create(vxc_rho=vxc, rho_r=rho_r, &
|
||||
rho_g=rho_g, tau=tau, vxc_tau=vxc_tau, exc=exc, xc_section=xc_section, &
|
||||
weights=weights, pw_pool=xc_pw_pool, &
|
||||
compute_virial=.FALSE., virial_xc=virial_xc_tmp)
|
||||
END IF
|
||||
|
||||
energy%exc = energy%exc + energy_scaling(iterm)*exc
|
||||
|
|
@ -494,6 +501,7 @@ CONTAINS
|
|||
TYPE(pw_pool_type), POINTER :: xc_pw_pool
|
||||
TYPE(pw_r3d_rs_type) :: work_v_rspace
|
||||
TYPE(pw_r3d_rs_type), DIMENSION(:), POINTER :: rho_r, tau, vxc, vxc_tau
|
||||
TYPE(pw_r3d_rs_type), POINTER :: weights
|
||||
TYPE(pw_r3d_rs_type), TARGET :: orb_rho_r, tmp_r
|
||||
TYPE(qs_ks_env_type), POINTER :: ks_env
|
||||
TYPE(qs_rho_type), POINTER :: rho
|
||||
|
|
@ -512,6 +520,7 @@ CONTAINS
|
|||
mo_derivs=mo_derivs, &
|
||||
mos=mo_array, &
|
||||
rho=rho, &
|
||||
xcint_weights=weights, &
|
||||
pw_env=pw_env, &
|
||||
input=input, &
|
||||
cell=cell, &
|
||||
|
|
@ -685,12 +694,13 @@ CONTAINS
|
|||
|
||||
IF (just_energy) THEN
|
||||
exc = xc_exc_calc(rho_r=rho_r, rho_g=rho_g, tau=tau, xc_section=xc_section, &
|
||||
pw_pool=xc_pw_pool)
|
||||
weights=weights, pw_pool=xc_pw_pool)
|
||||
ELSE
|
||||
CPASSERT(.NOT. compute_virial)
|
||||
CALL xc_vxc_pw_create1(vxc_rho=vxc, rho_r=rho_r, &
|
||||
rho_g=rho_g, tau=tau, vxc_tau=vxc_tau, exc=exc, xc_section=xc_section, &
|
||||
pw_pool=xc_pw_pool, compute_virial=compute_virial, virial_xc=virial_xc_tmp)
|
||||
CALL xc_vxc_pw_create(vxc_rho=vxc, rho_r=rho_r, &
|
||||
rho_g=rho_g, tau=tau, vxc_tau=vxc_tau, exc=exc, xc_section=xc_section, &
|
||||
weights=weights, pw_pool=xc_pw_pool, &
|
||||
compute_virial=compute_virial, virial_xc=virial_xc_tmp)
|
||||
! add to the existing work_v_rspace
|
||||
CALL pw_axpy(vxc(1), work_v_rspace, -dft_control%sic_scaling_b*vxc(1)%pw_grid%dvol)
|
||||
END IF
|
||||
|
|
|
|||
|
|
@ -199,6 +199,7 @@ CONTAINS
|
|||
TYPE(pw_r3d_rs_type) :: v_hartree_rspace
|
||||
TYPE(pw_r3d_rs_type), DIMENSION(:), POINTER :: rho1_r, rho_r, tau1_r, v_rspace_new, &
|
||||
v_xc, v_xc_tau
|
||||
TYPE(pw_r3d_rs_type), POINTER :: weights
|
||||
TYPE(qs_kpp1_env_type), POINTER :: kpp1_env
|
||||
TYPE(qs_ks_env_type), POINTER :: ks_env
|
||||
TYPE(qs_rho_type), POINTER :: rho, rho0, rho1, rho1_xc, rho1a, &
|
||||
|
|
@ -318,7 +319,9 @@ CONTAINS
|
|||
NULLIFY (v_xc_tau)
|
||||
IF (deriv2_analytic) THEN
|
||||
CALL qs_rho_get(rho1a, rho_r=rho1_r, tau_r=tau1_r)
|
||||
CALL qs_fxc_analytic(rho0, rho1_r, tau1_r, xc_section, auxbas_pw_pool, lr_triplet, v_xc, v_xc_tau)
|
||||
CALL get_qs_env(qs_env, xcint_weights=weights)
|
||||
CALL qs_fxc_analytic(rho0, rho1_r, tau1_r, xc_section, weights, auxbas_pw_pool, &
|
||||
lr_triplet, v_xc, v_xc_tau)
|
||||
IF (gapw .OR. gapw_xc) THEN
|
||||
CALL get_qs_env(qs_env, rho_atom_set=rho_atom_set)
|
||||
rho1_atom_set => p_env%local_rho_set%rho_atom_set
|
||||
|
|
@ -344,12 +347,13 @@ CONTAINS
|
|||
IF (admm_env%aux_exch_func /= do_admm_aux_exch_func_none) THEN
|
||||
IF (.NOT. ASSOCIATED(kpp1_env%deriv_set_admm)) THEN
|
||||
CPASSERT(.NOT. lr_triplet)
|
||||
CALL get_qs_env(qs_env, xcint_weights=weights)
|
||||
xc_section_aux => admm_env%xc_section_aux
|
||||
CALL get_admm_env(qs_env%admm_env, rho_aux_fit=rho_aux)
|
||||
CALL qs_rho_get(rho_aux, rho_r=rho_r)
|
||||
ALLOCATE (kpp1_env%deriv_set_admm, kpp1_env%rho_set_admm)
|
||||
CALL xc_prep_2nd_deriv(kpp1_env%deriv_set_admm, kpp1_env%rho_set_admm, &
|
||||
rho_r, auxbas_pw_pool, &
|
||||
rho_r, auxbas_pw_pool, weights, &
|
||||
xc_section=xc_section_aux)
|
||||
END IF
|
||||
END IF
|
||||
|
|
@ -848,6 +852,7 @@ CONTAINS
|
|||
TYPE(pw_env_type), POINTER :: pw_env
|
||||
TYPE(pw_pool_type), POINTER :: auxbas_pw_pool
|
||||
TYPE(pw_r3d_rs_type), DIMENSION(:), POINTER :: rho1_aux_r, tau_pw, v_xc, v_xc_tau
|
||||
TYPE(pw_r3d_rs_type), POINTER :: weights
|
||||
TYPE(rho_atom_type), DIMENSION(:), POINTER :: rho1_atom_set, rho_atom_set
|
||||
TYPE(section_vals_type), POINTER :: xc_fun_section, xc_section
|
||||
TYPE(task_list_type), POINTER :: task_list
|
||||
|
|
@ -882,6 +887,9 @@ CONTAINS
|
|||
CALL get_qs_env(qs_env, admm_env=admm_env)
|
||||
gapw = admm_env%do_gapw
|
||||
|
||||
NULLIFY (weights)
|
||||
CALL get_qs_env(qs_env=qs_env, xcint_weights=weights)
|
||||
|
||||
CALL qs_rho_get(p_env%rho1_admm, rho_r=rho1_aux_r, rho_g=rho1_aux_g)
|
||||
xc_section => admm_env%xc_section_aux
|
||||
bo = rho1_aux_r(1)%pw_grid%bounds_local
|
||||
|
|
@ -900,7 +908,7 @@ CONTAINS
|
|||
section_get_ival(xc_section, "XC_GRID%XC_SMOOTH_RHO"), &
|
||||
auxbas_pw_pool)
|
||||
CALL xc_calc_2nd_deriv(v_xc, v_xc_tau, p_env%kpp1_env%deriv_set_admm, p_env%kpp1_env%rho_set_admm, &
|
||||
rho1_aux_r, rho1_aux_g, tau_pw, auxbas_pw_pool, gapw=.FALSE., &
|
||||
rho1_aux_r, rho1_aux_g, tau_pw, auxbas_pw_pool, weights, gapw=.FALSE., &
|
||||
xc_section=xc_section)
|
||||
IF (ASSOCIATED(v_xc_tau)) THEN
|
||||
CPABORT("Meta-GGA ADMM functionals not yet supported!")
|
||||
|
|
|
|||
|
|
@ -131,6 +131,7 @@ CONTAINS
|
|||
TYPE(pw_pool_type), POINTER :: auxbas_pw_pool
|
||||
TYPE(pw_r3d_rs_type), ALLOCATABLE, DIMENSION(:) :: V_rspace_sub
|
||||
TYPE(pw_r3d_rs_type), DIMENSION(:), POINTER :: rho_ia_r, rho_ia_r_aux_fit
|
||||
TYPE(pw_r3d_rs_type), POINTER :: weights
|
||||
TYPE(rho_atom_type), DIMENSION(:), POINTER :: rho1_atom_set, rho_atom_set
|
||||
TYPE(task_list_type), POINTER :: task_list
|
||||
|
||||
|
|
@ -164,6 +165,9 @@ CONTAINS
|
|||
rho_r=rho_ia_r_aux_fit)
|
||||
END IF
|
||||
|
||||
NULLIFY (weights)
|
||||
CALL get_qs_env(qs_env, xcint_weights=weights)
|
||||
|
||||
DO ivect = 1, nvects
|
||||
|
||||
! Transform TDDFT vectors to AO space and store them into rho_ia_ao
|
||||
|
|
@ -252,6 +256,7 @@ CONTAINS
|
|||
CALL tddfpt_apply_xc(A_ia_rspace=work_matrices%A_ia_rspace_sub, kernel_env=kernel_env, &
|
||||
rho_ia_struct=work_matrices%rho_xc_struct_sub, &
|
||||
is_rks_triplets=is_rks_triplets, pw_env=sub_env%pw_env, &
|
||||
weights=weights, &
|
||||
work_v_xc=work_matrices%wpw_rspace_sub, &
|
||||
work_v_xc_tau=work_matrices%wpw_tau_rspace_sub, &
|
||||
spinflip=spinflip)
|
||||
|
|
@ -274,6 +279,7 @@ CONTAINS
|
|||
CALL tddfpt_apply_xc(A_ia_rspace=work_matrices%A_ia_rspace_sub, kernel_env=kernel_env, &
|
||||
rho_ia_struct=work_matrices%rho_orb_struct_sub, &
|
||||
is_rks_triplets=is_rks_triplets, pw_env=sub_env%pw_env, &
|
||||
weights=weights, &
|
||||
work_v_xc=work_matrices%wpw_rspace_sub, &
|
||||
work_v_xc_tau=work_matrices%wpw_tau_rspace_sub, &
|
||||
spinflip=spinflip)
|
||||
|
|
@ -332,6 +338,7 @@ CONTAINS
|
|||
kernel_env=kernel_env_admm_aux, &
|
||||
rho_ia_struct=work_matrices%rho_aux_fit_struct_sub, &
|
||||
is_rks_triplets=is_rks_triplets, pw_env=sub_env%pw_env, &
|
||||
weights=weights, &
|
||||
work_v_xc=work_matrices%wpw_rspace_sub, &
|
||||
work_v_xc_tau=work_matrices%wpw_tau_rspace_sub, &
|
||||
spinflip=spinflip)
|
||||
|
|
@ -392,6 +399,7 @@ CONTAINS
|
|||
kernel_env=kernel_env_admm_aux, &
|
||||
rho_ia_struct=work_matrices%rho_aux_fit_struct_sub, &
|
||||
is_rks_triplets=is_rks_triplets, pw_env=sub_env%pw_env, &
|
||||
weights=weights, &
|
||||
work_v_xc=work_matrices%wpw_rspace_sub, &
|
||||
work_v_xc_tau=work_matrices%wpw_tau_rspace_sub, &
|
||||
spinflip=spinflip)
|
||||
|
|
|
|||
|
|
@ -6,6 +6,7 @@
|
|||
!--------------------------------------------------------------------------------------------------!
|
||||
|
||||
MODULE qs_tddfpt2_fhxc_forces
|
||||
USE accint_weights_forces, ONLY: accint_weight_force
|
||||
USE admm_methods, ONLY: admm_projection_derivative
|
||||
USE admm_types, ONLY: admm_type,&
|
||||
get_admm_env
|
||||
|
|
@ -218,6 +219,7 @@ CONTAINS
|
|||
TYPE(pw_r3d_rs_type) :: xv_hartree_rspace
|
||||
TYPE(pw_r3d_rs_type), DIMENSION(:), POINTER :: fxc_rho, fxc_tau, gxc_rho, gxc_tau, &
|
||||
rho_r_aux, rhox_r, rhox_r_aux, rhoxx_r
|
||||
TYPE(pw_r3d_rs_type), POINTER :: weights
|
||||
TYPE(qs_force_type), DIMENSION(:), POINTER :: force
|
||||
TYPE(qs_kind_type), DIMENSION(:), POINTER :: qs_kind_set
|
||||
TYPE(qs_ks_env_type), POINTER :: ks_env
|
||||
|
|
@ -282,6 +284,7 @@ CONTAINS
|
|||
END DO
|
||||
!
|
||||
CALL get_qs_env(qs_env, ks_env=ks_env, pw_env=pw_env, para_env=para_env)
|
||||
CALL get_qs_env(qs_env, xcint_weights=weights)
|
||||
!
|
||||
NULLIFY (hartree_local, local_rho_set, local_rho_set_admm)
|
||||
IF (gapw .OR. gapw_xc) THEN
|
||||
|
|
@ -554,13 +557,14 @@ CONTAINS
|
|||
IF (.NOT. do_sf) THEN
|
||||
CPABORT("Analytic 3rd EXC derivatives not available")
|
||||
ELSE !TODO
|
||||
CALL qs_fgxc_analytic(rho, rhox, xc_section, auxbas_pw_pool, &
|
||||
CALL get_qs_env(qs_env, xcint_weights=weights)
|
||||
CALL qs_fgxc_analytic(rho, rhox, xc_section, weights, auxbas_pw_pool, &
|
||||
fxc_rho, fxc_tau, gxc_rho, gxc_tau, spinflip=do_sf)
|
||||
END IF
|
||||
ELSEIF (do_numeric) THEN
|
||||
IF (do_analytic) THEN
|
||||
CALL qs_fgxc_gdiff(ks_env, rho, rhox, xc_section, order, eps_delta, is_rks_triplets, &
|
||||
fxc_rho, fxc_tau, gxc_rho, gxc_tau, spinflip=do_sf)
|
||||
weights, fxc_rho, fxc_tau, gxc_rho, gxc_tau, spinflip=do_sf)
|
||||
ELSE
|
||||
CALL qs_fgxc_create(ks_env, rho, rhox, xc_section, order, is_rks_triplets, &
|
||||
fxc_rho, fxc_tau, gxc_rho, gxc_tau)
|
||||
|
|
@ -569,12 +573,6 @@ CONTAINS
|
|||
CPABORT("FHXC forces analytic/numeric")
|
||||
END IF
|
||||
|
||||
! Well, this is a hack :-(
|
||||
! When qs_rho_set() was called on rhox it assumed ownership of the passed arrays.
|
||||
! However, these arrays actually belong to ex_env. Hence, we can not call qs_rho_release()
|
||||
! because this would release the arrays. Instead we're simply going to deallocate rhox.
|
||||
DEALLOCATE (rhox)
|
||||
|
||||
IF (nspins == 2) THEN
|
||||
DO ispin = 1, nspins
|
||||
CALL pw_scale(gxc_rho(ispin), 0.5_dp)
|
||||
|
|
@ -644,6 +642,21 @@ CONTAINS
|
|||
END IF
|
||||
CALL qs_fgxc_release(ks_env, fxc_rho, fxc_tau, gxc_rho, gxc_tau)
|
||||
|
||||
! grid weight contribution to forces
|
||||
IF (debug_forces) fodeb(1:3) = force(1)%rho_elec(1:3, 1)
|
||||
CALL accint_weight_force(qs_env, rho, rhox, 2, xc_section, is_rks_triplets)
|
||||
IF (debug_forces) THEN
|
||||
fodeb(1:3) = force(1)%rho_elec(1:3, 1) - fodeb(1:3)
|
||||
CALL para_env%sum(fodeb)
|
||||
IF (iounit > 0) WRITE (iounit, "(T3,A,T33,3F16.8)") "DEBUG:: Dx*fxc[Dx]*dw", fodeb
|
||||
END IF
|
||||
|
||||
! Well, this is a hack :-(
|
||||
! When qs_rho_set() was called on rhox it assumed ownership of the passed arrays.
|
||||
! However, these arrays actually belong to ex_env. Hence, we can not call qs_rho_release()
|
||||
! because this would release the arrays. Instead we're simply going to deallocate rhox.
|
||||
DEALLOCATE (rhox)
|
||||
|
||||
IF (gapw .OR. gapw_xc) THEN
|
||||
IF (debug_forces) fodeb(1:3) = force(1)%Vhxc_atom(1:3, 1)
|
||||
CALL update_ks_atom(qs_env, matrix_fx, matrix_px1, forces=.TRUE., tddft=.TRUE., &
|
||||
|
|
@ -734,7 +747,7 @@ CONTAINS
|
|||
ELSEIF (do_numeric) THEN
|
||||
IF (do_analytic) THEN
|
||||
CALL qs_fgxc_gdiff(ks_env, rho_aux_fit, rhox_aux, xc_section, order, eps_delta, &
|
||||
is_rks_triplets, fxc_rho, fxc_tau, gxc_rho, gxc_tau)
|
||||
is_rks_triplets, weights, fxc_rho, fxc_tau, gxc_rho, gxc_tau)
|
||||
ELSE
|
||||
CALL qs_fgxc_create(ks_env, rho_aux_fit, rhox_aux, xc_section, &
|
||||
order, is_rks_triplets, fxc_rho, fxc_tau, gxc_rho, gxc_tau)
|
||||
|
|
@ -743,6 +756,17 @@ CONTAINS
|
|||
CPABORT("FHXC forces analytic/numeric")
|
||||
END IF
|
||||
|
||||
! grid weight contribution to forces ADMM XC correction term
|
||||
IF (debug_forces) fodeb(1:3) = force(1)%rho_elec(1:3, 1)
|
||||
!
|
||||
CALL accint_weight_force(qs_env, rho_aux_fit, rhox_aux, 2, xc_section, is_rks_triplets)
|
||||
!
|
||||
IF (debug_forces) THEN
|
||||
fodeb(1:3) = force(1)%rho_elec(1:3, 1) - fodeb(1:3)
|
||||
CALL para_env%sum(fodeb)
|
||||
IF (iounit > 0) WRITE (iounit, "(T3,A,T33,3F16.8)") "DEBUG:: Dx_admm*fxc[Dx_admm]*dw", fodeb
|
||||
END IF
|
||||
|
||||
! Well, this is a hack :-(
|
||||
! When qs_rho_set() was called on rhox_aux it assumed ownership of the passed arrays.
|
||||
! However, these arrays actually belong to ex_env. Hence, we can not call qs_rho_release()
|
||||
|
|
|
|||
|
|
@ -816,6 +816,7 @@ CONTAINS
|
|||
TYPE(pw_r3d_rs_type) :: v_hartree_rspace
|
||||
TYPE(pw_r3d_rs_type), DIMENSION(:), POINTER :: rho_r, rho_r_aux, rhoz_r_aux, tau_r, &
|
||||
trho_r, trho_xc_r, v_xc, v_xc_tau
|
||||
TYPE(pw_r3d_rs_type), POINTER :: weights
|
||||
TYPE(qs_kind_type), DIMENSION(:), POINTER :: qs_kind_set
|
||||
TYPE(qs_ks_env_type), POINTER :: ks_env
|
||||
TYPE(qs_rho_type), POINTER :: rho, rho_aux_fit, rho_xc, rhoz_aux, trho
|
||||
|
|
@ -960,11 +961,14 @@ CONTAINS
|
|||
deriv2_analytic = section_get_lval(xc_section, "2ND_DERIV_ANALYTICAL")
|
||||
IF (deriv2_analytic) THEN
|
||||
NULLIFY (v_xc, v_xc_tau, tau_r)
|
||||
CALL get_qs_env(qs_env=qs_env, xcint_weights=weights)
|
||||
IF (gapw_xc) THEN
|
||||
CALL get_qs_env(qs_env=qs_env, rho_xc=rho_xc)
|
||||
CALL qs_fxc_analytic(rho_xc, trho_xc_r, tau_r, xc_section, auxbas_pw_pool, .FALSE., v_xc, v_xc_tau)
|
||||
CALL qs_fxc_analytic(rho_xc, trho_xc_r, tau_r, xc_section, weights, auxbas_pw_pool, &
|
||||
.FALSE., v_xc, v_xc_tau)
|
||||
ELSE
|
||||
CALL qs_fxc_analytic(rho, trho_r, tau_r, xc_section, auxbas_pw_pool, .FALSE., v_xc, v_xc_tau)
|
||||
CALL qs_fxc_analytic(rho, trho_r, tau_r, xc_section, weights, auxbas_pw_pool, &
|
||||
.FALSE., v_xc, v_xc_tau)
|
||||
END IF
|
||||
IF (gapw .OR. gapw_xc) THEN
|
||||
CALL get_qs_env(qs_env, rho_atom_set=rho_atom_set)
|
||||
|
|
@ -1092,8 +1096,10 @@ CONTAINS
|
|||
NULLIFY (v_xc)
|
||||
deriv2_analytic = section_get_lval(xc_section, "2ND_DERIV_ANALYTICAL")
|
||||
IF (deriv2_analytic) THEN
|
||||
CALL get_qs_env(qs_env=qs_env, xcint_weights=weights)
|
||||
NULLIFY (tau_r)
|
||||
CALL qs_fxc_analytic(rho_aux_fit, rhoz_r_aux, tau_r, xc_section, auxbas_pw_pool, .FALSE., v_xc, v_xc_tau)
|
||||
CALL qs_fxc_analytic(rho_aux_fit, rhoz_r_aux, tau_r, xc_section, weights, auxbas_pw_pool, &
|
||||
.FALSE., v_xc, v_xc_tau)
|
||||
ELSE
|
||||
CPABORT("NYA 00007")
|
||||
NULLIFY (rhoz_aux)
|
||||
|
|
|
|||
|
|
@ -82,7 +82,8 @@ MODULE qs_tddfpt2_operators
|
|||
INTEGER, PARAMETER, PRIVATE :: maxspins = 2
|
||||
|
||||
PUBLIC :: tddfpt_apply_energy_diff, tddfpt_apply_coulomb, tddfpt_apply_xc, tddfpt_apply_hfx, &
|
||||
tddfpt_apply_xc_potential, tddfpt_apply_hfxlr_kernel, tddfpt_apply_hfxsr_kernel
|
||||
tddfpt_apply_xc_potential, tddfpt_apply_hfxlr_kernel, tddfpt_apply_hfxsr_kernel, &
|
||||
tddfpt_apply_xc_fd
|
||||
|
||||
! **************************************************************************************************
|
||||
|
||||
|
|
@ -282,19 +283,21 @@ CONTAINS
|
|||
!> \param is_rks_triplets indicates that the triplet excited states calculation using
|
||||
!> spin-unpolarised molecular orbitals has been requested
|
||||
!> \param pw_env plain wave environment
|
||||
!> \param weights ...
|
||||
!> \param work_v_xc work real-space grid to store the gradient of the exchange-correlation
|
||||
!> potential with respect to the response density (modified on exit)
|
||||
!> \param work_v_xc_tau ...
|
||||
!> \param spinflip ...
|
||||
! **************************************************************************************************
|
||||
SUBROUTINE tddfpt_apply_xc(A_ia_rspace, kernel_env, rho_ia_struct, is_rks_triplets, &
|
||||
pw_env, work_v_xc, work_v_xc_tau, spinflip)
|
||||
pw_env, weights, work_v_xc, work_v_xc_tau, spinflip)
|
||||
|
||||
TYPE(pw_r3d_rs_type), DIMENSION(:), INTENT(INOUT) :: A_ia_rspace
|
||||
TYPE(full_kernel_env_type), INTENT(IN) :: kernel_env
|
||||
TYPE(qs_rho_type), POINTER :: rho_ia_struct
|
||||
LOGICAL, INTENT(in) :: is_rks_triplets
|
||||
TYPE(pw_env_type), POINTER :: pw_env
|
||||
TYPE(pw_r3d_rs_type), POINTER :: weights
|
||||
TYPE(pw_r3d_rs_type), DIMENSION(:), POINTER :: work_v_xc, work_v_xc_tau
|
||||
INTEGER, INTENT(in), OPTIONAL :: spinflip
|
||||
|
||||
|
|
@ -308,8 +311,8 @@ CONTAINS
|
|||
CALL tddfpt_apply_xc_analytic(kernel_env, rho_ia_struct, is_rks_triplets, my_spinflip, &
|
||||
nspins, pw_env, work_v_xc, work_v_xc_tau)
|
||||
ELSE
|
||||
CALL tddfpt_apply_xc_fd(kernel_env, rho_ia_struct, is_rks_triplets, nspins, &
|
||||
pw_env, work_v_xc, work_v_xc_tau)
|
||||
CALL tddfpt_apply_xc_fd(kernel_env%xc_rho_set, rho_ia_struct, is_rks_triplets, nspins, &
|
||||
pw_env, kernel_env%xc_section, weights, work_v_xc, work_v_xc_tau)
|
||||
END IF
|
||||
|
||||
DO ispin = 1, nspins
|
||||
|
|
@ -464,65 +467,52 @@ CONTAINS
|
|||
|
||||
! **************************************************************************************************
|
||||
!> \brief Update A_ia_munu by adding exchange-correlation term using finite difference methods.
|
||||
!> \param kernel_env kernel environment
|
||||
!> \param rho_ia_struct response density for the given trial vector
|
||||
!> \param rho_set electron density
|
||||
!> \param rho1_struct response density for the given trial vector
|
||||
!> \param is_rks_triplets indicates that the triplet excited states calculation using
|
||||
!> spin-unpolarised molecular orbitals has been requested
|
||||
!> \param nspins ...
|
||||
!> \param pw_env plain wave environment
|
||||
!> \param work_v_xc work real-space grid to store the gradient of the exchange-correlation
|
||||
!> \param xc_section ...
|
||||
!> \param weights ...
|
||||
!> \param f_xc work real-space grid to store the gradient of the exchange-correlation
|
||||
!> potential with respect to the response density (modified on exit)
|
||||
!> \param work_v_xc_tau ...
|
||||
!> \param f_xc_tau ...
|
||||
! **************************************************************************************************
|
||||
SUBROUTINE tddfpt_apply_xc_fd(kernel_env, rho_ia_struct, is_rks_triplets, nspins, &
|
||||
pw_env, work_v_xc, work_v_xc_tau)
|
||||
TYPE(full_kernel_env_type), INTENT(in) :: kernel_env
|
||||
TYPE(qs_rho_type), POINTER :: rho_ia_struct
|
||||
SUBROUTINE tddfpt_apply_xc_fd(rho_set, rho1_struct, is_rks_triplets, nspins, &
|
||||
pw_env, xc_section, weights, f_xc, f_xc_tau)
|
||||
TYPE(xc_rho_set_type), POINTER :: rho_set
|
||||
TYPE(qs_rho_type), POINTER :: rho1_struct
|
||||
LOGICAL, INTENT(in) :: is_rks_triplets
|
||||
INTEGER, INTENT(in) :: nspins
|
||||
TYPE(pw_env_type), POINTER :: pw_env
|
||||
TYPE(pw_r3d_rs_type), DIMENSION(:), POINTER :: work_v_xc, work_v_xc_tau
|
||||
TYPE(section_vals_type), POINTER :: xc_section
|
||||
TYPE(pw_r3d_rs_type), POINTER :: weights
|
||||
TYPE(pw_r3d_rs_type), DIMENSION(:), POINTER :: f_xc, f_xc_tau
|
||||
|
||||
CHARACTER(LEN=*), PARAMETER :: routineN = 'tddfpt_apply_xc_fd'
|
||||
|
||||
INTEGER :: handle, ispin
|
||||
LOGICAL :: lsd, singlet, triplet
|
||||
TYPE(pw_c1d_gs_type), DIMENSION(:), POINTER :: rho1_g
|
||||
TYPE(pw_pool_type), POINTER :: auxbas_pw_pool
|
||||
TYPE(pw_r3d_rs_type), DIMENSION(:), POINTER :: rho1_r, tau1_r
|
||||
TYPE(xc_rho_set_type), POINTER :: rho_set
|
||||
|
||||
CALL timeset(routineN, handle)
|
||||
|
||||
CALL qs_rho_get(rho_ia_struct, rho_r=rho1_r, rho_g=rho1_g, tau_r=tau1_r)
|
||||
CALL qs_rho_get(rho1_struct, rho_r=rho1_r, rho_g=rho1_g, tau_r=tau1_r)
|
||||
CALL pw_env_get(pw_env, auxbas_pw_pool=auxbas_pw_pool)
|
||||
DO ispin = 1, nspins
|
||||
CALL pw_zero(work_v_xc(ispin))
|
||||
CALL pw_zero(f_xc(ispin))
|
||||
END DO
|
||||
rho_set => kernel_env%xc_rho_set
|
||||
|
||||
singlet = .FALSE.
|
||||
triplet = .FALSE.
|
||||
lsd = .FALSE.
|
||||
IF (nspins == 1 .AND. .NOT. is_rks_triplets) THEN
|
||||
singlet = .TRUE.
|
||||
ELSE IF (nspins == 1 .AND. is_rks_triplets) THEN
|
||||
triplet = .TRUE.
|
||||
ELSE IF (nspins == 2) THEN
|
||||
lsd = .TRUE.
|
||||
ELSE
|
||||
CPABORT("illegal options")
|
||||
END IF
|
||||
|
||||
IF (ASSOCIATED(tau1_r)) THEN
|
||||
DO ispin = 1, nspins
|
||||
CALL pw_zero(work_v_xc_tau(ispin))
|
||||
CALL pw_zero(f_xc_tau(ispin))
|
||||
END DO
|
||||
END IF
|
||||
|
||||
CALL xc_calc_2nd_deriv_numerical(work_v_xc, work_v_xc_tau, rho_set, rho1_r, rho1_g, tau1_r, &
|
||||
auxbas_pw_pool, kernel_env%xc_section, &
|
||||
is_rks_triplets)
|
||||
CALL xc_calc_2nd_deriv_numerical(f_xc, f_xc_tau, rho_set, rho1_r, rho1_g, tau1_r, &
|
||||
auxbas_pw_pool, weights, xc_section, is_rks_triplets)
|
||||
|
||||
CALL timestop(handle)
|
||||
|
||||
|
|
|
|||
|
|
@ -59,6 +59,7 @@ MODULE qs_tddfpt2_subgroups
|
|||
USE pw_env_types, ONLY: pw_env_release,&
|
||||
pw_env_retain,&
|
||||
pw_env_type
|
||||
USE pw_types, ONLY: pw_r3d_rs_type
|
||||
USE qs_environment_types, ONLY: get_qs_env,&
|
||||
qs_environment_type
|
||||
USE qs_kind_types, ONLY: get_qs_kind,&
|
||||
|
|
@ -129,6 +130,8 @@ MODULE qs_tddfpt2_subgroups
|
|||
TYPE(distribution_2d_type), POINTER :: dist_2d => NULL()
|
||||
!> group-specific plane wave environment
|
||||
TYPE(pw_env_type), POINTER :: pw_env => NULL()
|
||||
!> integration weights
|
||||
TYPE(pw_r3d_rs_type), POINTER :: xcint_weights => Null()
|
||||
!> lists of neighbours in auxiliary and primary basis sets
|
||||
TYPE(neighbor_list_set_p_type), &
|
||||
DIMENSION(:), POINTER :: sab_aux_fit => NULL(), sab_orb => NULL()
|
||||
|
|
@ -196,6 +199,7 @@ CONTAINS
|
|||
TYPE(mgrid_saved_parameters) :: mgrid_saved
|
||||
TYPE(mp_para_env_type), POINTER :: para_env_global
|
||||
TYPE(pw_env_type), POINTER :: pw_env_global
|
||||
TYPE(pw_r3d_rs_type), POINTER :: weights
|
||||
TYPE(qs_control_type), POINTER :: qs_control
|
||||
TYPE(qs_kind_type), DIMENSION(:), POINTER :: qs_kind_set
|
||||
TYPE(tddfpt2_control_type), POINTER :: tddfpt_control
|
||||
|
|
@ -220,6 +224,12 @@ CONTAINS
|
|||
ALLOCATE (sub_env%mos_active(nspins))
|
||||
NULLIFY (sub_env%admm_A)
|
||||
|
||||
CALL get_qs_env(qs_env, xcint_weights=weights)
|
||||
sub_env%xcint_weights => weights
|
||||
IF (sub_env%is_split .AND. ASSOCIATED(weights)) THEN
|
||||
CPABORT('subgroups and integration weights not compatible')
|
||||
END IF
|
||||
|
||||
IF (sub_env%is_split) THEN
|
||||
ALLOCATE (sub_env%group_distribution(0:para_env_global%num_pe - 1))
|
||||
|
||||
|
|
@ -295,6 +305,10 @@ CONTAINS
|
|||
IF (tddfpt_control%mgrid_is_explicit) &
|
||||
CALL init_tddfpt_mgrid(qs_control, tddfpt_control, mgrid_saved)
|
||||
|
||||
IF (ASSOCIATED(weights)) THEN
|
||||
CPABORT('Redefining MGRID and integration weights not compatible')
|
||||
END IF
|
||||
|
||||
NULLIFY (sub_env%pw_env)
|
||||
|
||||
CALL pw_env_create(sub_env%pw_env)
|
||||
|
|
|
|||
|
|
@ -20,7 +20,8 @@ MODULE qs_update_s_mstruct
|
|||
do_ppl_grid,&
|
||||
kg_tnadd_embed,&
|
||||
kg_tnadd_embed_ri
|
||||
USE kinds, ONLY: default_string_length
|
||||
USE kinds, ONLY: default_string_length,&
|
||||
dp
|
||||
USE pw_methods, ONLY: pw_transfer
|
||||
USE pw_types, ONLY: pw_c1d_gs_type,&
|
||||
pw_r3d_rs_type
|
||||
|
|
@ -67,11 +68,13 @@ CONTAINS
|
|||
|
||||
CHARACTER(len=*), PARAMETER :: routineN = 'qs_env_update_s_mstruct'
|
||||
|
||||
INTEGER :: handle
|
||||
INTEGER :: handle, nk
|
||||
LOGICAL :: do_ppl
|
||||
REAL(KIND=dp) :: wtot
|
||||
REAL(KIND=dp), ALLOCATABLE, DIMENSION(:) :: cw
|
||||
TYPE(dft_control_type), POINTER :: dft_control
|
||||
TYPE(pw_c1d_gs_type), POINTER :: rho_core, rho_nlcc_g
|
||||
TYPE(pw_r3d_rs_type), POINTER :: rho_nlcc, vppl
|
||||
TYPE(pw_r3d_rs_type), POINTER :: rho_nlcc, vppl, xcint_weights
|
||||
|
||||
CALL timeset(routineN, handle)
|
||||
|
||||
|
|
@ -130,6 +133,19 @@ CONTAINS
|
|||
CALL pw_transfer(rho_nlcc, rho_nlcc_g)
|
||||
END IF
|
||||
|
||||
! compute the xcint_weights
|
||||
IF (dft_control%qs_control%gapw .OR. dft_control%qs_control%gapw_xc) THEN
|
||||
IF (dft_control%qs_control%gapw_control%accurate_xcint) THEN
|
||||
CALL get_qs_env(qs_env, xcint_weights=xcint_weights, nkind=nk)
|
||||
ALLOCATE (cw(nk))
|
||||
cw = 1.0_dp
|
||||
CALL calculate_rho_core(xcint_weights, wtot, qs_env, &
|
||||
dft_control%qs_control%gapw_control%aw, cw)
|
||||
xcint_weights%array = 1.0_dp + xcint_weights%array
|
||||
DEALLOCATE (cw)
|
||||
END IF
|
||||
END IF
|
||||
|
||||
! allocates and creates the task_list
|
||||
CALL qs_create_task_list(qs_env)
|
||||
|
||||
|
|
|
|||
95
src/qs_vxc.F
95
src/qs_vxc.F
|
|
@ -49,7 +49,7 @@ MODULE qs_vxc
|
|||
USE virial_types, ONLY: virial_type
|
||||
USE xc, ONLY: calc_xc_density,&
|
||||
xc_exc_calc,&
|
||||
xc_vxc_pw_create1
|
||||
xc_vxc_pw_create
|
||||
#include "./base/base_uses.f90"
|
||||
|
||||
IMPLICIT NONE
|
||||
|
|
@ -126,7 +126,7 @@ CONTAINS
|
|||
TYPE(pw_pool_type), POINTER :: auxbas_pw_pool, vdw_pw_pool, xc_pw_pool
|
||||
TYPE(pw_r3d_rs_type), DIMENSION(:), POINTER :: my_vxc_rho, my_vxc_tau, rho_m_rspace, &
|
||||
rho_r, rho_struct_r, tau, tau_struct_r
|
||||
TYPE(pw_r3d_rs_type), POINTER :: rho_nlcc, tmp_pw
|
||||
TYPE(pw_r3d_rs_type), POINTER :: rho_nlcc, tmp_pw, weights
|
||||
TYPE(virial_type), POINTER :: virial
|
||||
|
||||
CALL timeset(routineN, handle)
|
||||
|
|
@ -151,6 +151,7 @@ CONTAINS
|
|||
dft_control=dft_control, &
|
||||
pw_env=pw_env, &
|
||||
cell=cell, &
|
||||
xcint_weights=weights, &
|
||||
virial=virial, &
|
||||
rho_nlcc=rho_nlcc, &
|
||||
rho_nlcc_g=rho_nlcc_g)
|
||||
|
|
@ -252,7 +253,10 @@ CONTAINS
|
|||
END DO
|
||||
IF (tau_r_valid) THEN
|
||||
! tau with finer grids is not implemented (at least not correctly), which this asserts
|
||||
CPABORT("tau with finer grids not implemented")
|
||||
CPABORT("Tau (MGGA) with finer grids not implemented")
|
||||
END IF
|
||||
IF (ASSOCIATED(weights)) THEN
|
||||
CPABORT("Accurate integration with finer grids not implemented")
|
||||
END IF
|
||||
END IF
|
||||
|
||||
|
|
@ -272,15 +276,15 @@ CONTAINS
|
|||
IF (my_just_energy) THEN
|
||||
exc = xc_exc_calc(rho_r=rho_r, tau=tau, &
|
||||
rho_g=rho_g, xc_section=xc_section, &
|
||||
pw_pool=xc_pw_pool)
|
||||
weights=weights, pw_pool=xc_pw_pool)
|
||||
|
||||
ELSE
|
||||
CALL xc_vxc_pw_create1(vxc_rho=my_vxc_rho, vxc_tau=my_vxc_tau, rho_r=rho_r, &
|
||||
rho_g=rho_g, tau=tau, exc=exc, &
|
||||
xc_section=xc_section, &
|
||||
pw_pool=xc_pw_pool, &
|
||||
compute_virial=compute_virial, &
|
||||
virial_xc=virial%pv_xc)
|
||||
CALL xc_vxc_pw_create(vxc_rho=my_vxc_rho, vxc_tau=my_vxc_tau, rho_r=rho_r, &
|
||||
rho_g=rho_g, tau=tau, exc=exc, &
|
||||
xc_section=xc_section, &
|
||||
weights=weights, pw_pool=xc_pw_pool, &
|
||||
compute_virial=compute_virial, &
|
||||
virial_xc=virial%pv_xc)
|
||||
END IF
|
||||
|
||||
! remove the nlcc densities (keep stuff in original state)
|
||||
|
|
@ -377,16 +381,16 @@ CONTAINS
|
|||
IF (my_just_energy) THEN
|
||||
exc_m = xc_exc_calc(rho_r=rho_m_rspace, tau=tau, &
|
||||
rho_g=rho_m_gspace, xc_section=xc_section, &
|
||||
pw_pool=xc_pw_pool)
|
||||
weights=weights, pw_pool=xc_pw_pool)
|
||||
ELSE
|
||||
! virial untested
|
||||
CPASSERT(.NOT. compute_virial)
|
||||
CALL xc_vxc_pw_create1(vxc_rho=my_vxc_rho, vxc_tau=my_vxc_tau, rho_r=rho_m_rspace, &
|
||||
rho_g=rho_m_gspace, tau=tau, exc=exc_m, &
|
||||
xc_section=xc_section, &
|
||||
pw_pool=xc_pw_pool, &
|
||||
compute_virial=.FALSE., &
|
||||
virial_xc=virial_xc_tmp)
|
||||
CALL xc_vxc_pw_create(vxc_rho=my_vxc_rho, vxc_tau=my_vxc_tau, rho_r=rho_m_rspace, &
|
||||
rho_g=rho_m_gspace, tau=tau, exc=exc_m, &
|
||||
xc_section=xc_section, &
|
||||
weights=weights, pw_pool=xc_pw_pool, &
|
||||
compute_virial=.FALSE., &
|
||||
virial_xc=virial_xc_tmp)
|
||||
END IF
|
||||
|
||||
exc = exc - dft_control%sic_scaling_b*exc_m
|
||||
|
|
@ -438,16 +442,16 @@ CONTAINS
|
|||
IF (my_just_energy) THEN
|
||||
exc_m = xc_exc_calc(rho_r=rho_m_rspace, tau=tau, &
|
||||
rho_g=rho_m_gspace, xc_section=xc_section, &
|
||||
pw_pool=xc_pw_pool)
|
||||
weights=weights, pw_pool=xc_pw_pool)
|
||||
ELSE
|
||||
! virial untested
|
||||
CPASSERT(.NOT. compute_virial)
|
||||
CALL xc_vxc_pw_create1(vxc_rho=my_vxc_rho, vxc_tau=my_vxc_tau, rho_r=rho_m_rspace, &
|
||||
rho_g=rho_m_gspace, tau=tau, exc=exc_m, &
|
||||
xc_section=xc_section, &
|
||||
pw_pool=xc_pw_pool, &
|
||||
compute_virial=.FALSE., &
|
||||
virial_xc=virial_xc_tmp)
|
||||
CALL xc_vxc_pw_create(vxc_rho=my_vxc_rho, vxc_tau=my_vxc_tau, rho_r=rho_m_rspace, &
|
||||
rho_g=rho_m_gspace, tau=tau, exc=exc_m, &
|
||||
xc_section=xc_section, &
|
||||
weights=weights, pw_pool=xc_pw_pool, &
|
||||
compute_virial=.FALSE., &
|
||||
virial_xc=virial_xc_tmp)
|
||||
END IF
|
||||
|
||||
exc = exc - dft_control%sic_scaling_b*nelec_spin(ispin)*exc_m
|
||||
|
|
@ -484,16 +488,16 @@ CONTAINS
|
|||
IF (my_just_energy) THEN
|
||||
exc_m = xc_exc_calc(rho_r=rho_r, tau=tau, &
|
||||
rho_g=rho_g, xc_section=xc_section, &
|
||||
pw_pool=xc_pw_pool)
|
||||
weights=weights, pw_pool=xc_pw_pool)
|
||||
ELSE
|
||||
! virial untested
|
||||
CPASSERT(.NOT. compute_virial)
|
||||
CALL xc_vxc_pw_create1(vxc_rho=my_vxc_rho, vxc_tau=my_vxc_tau, rho_r=rho_r, &
|
||||
rho_g=rho_g, tau=tau, exc=exc_m, &
|
||||
xc_section=xc_section, &
|
||||
pw_pool=xc_pw_pool, &
|
||||
compute_virial=.FALSE., &
|
||||
virial_xc=virial_xc_tmp)
|
||||
CALL xc_vxc_pw_create(vxc_rho=my_vxc_rho, vxc_tau=my_vxc_tau, rho_r=rho_r, &
|
||||
rho_g=rho_g, tau=tau, exc=exc_m, &
|
||||
xc_section=xc_section, &
|
||||
weights=weights, pw_pool=xc_pw_pool, &
|
||||
compute_virial=.FALSE., &
|
||||
virial_xc=virial_xc_tmp)
|
||||
END IF
|
||||
|
||||
exc = exc + dft_control%sic_scaling_b*exc_m
|
||||
|
|
@ -564,25 +568,27 @@ CONTAINS
|
|||
!> \param dispersion_env ...
|
||||
!> \param xc_ener will contain the xc energy density E_xc(r) - V_xc(r)*rho(r)
|
||||
!> \param xc_den will contain the xc energy density E_xc(r)/rho(r)
|
||||
!> \param exc will contain the xc energy density E_xc(r)
|
||||
!> \param vxc ...
|
||||
!> \param vtau ...
|
||||
!> \author JGH
|
||||
! **************************************************************************************************
|
||||
SUBROUTINE qs_xc_density(ks_env, rho_struct, xc_section, dispersion_env, &
|
||||
xc_ener, xc_den, vxc, vtau)
|
||||
xc_ener, xc_den, exc, vxc, vtau)
|
||||
|
||||
TYPE(qs_ks_env_type), POINTER :: ks_env
|
||||
TYPE(qs_rho_type), POINTER :: rho_struct
|
||||
TYPE(section_vals_type), POINTER :: xc_section
|
||||
TYPE(qs_dispersion_type), OPTIONAL, POINTER :: dispersion_env
|
||||
TYPE(pw_r3d_rs_type), INTENT(INOUT), OPTIONAL :: xc_ener, xc_den
|
||||
TYPE(pw_r3d_rs_type), OPTIONAL :: exc
|
||||
TYPE(pw_r3d_rs_type), DIMENSION(:), OPTIONAL :: vxc, vtau
|
||||
|
||||
CHARACTER(len=*), PARAMETER :: routineN = 'qs_xc_density'
|
||||
|
||||
INTEGER :: handle, ispin, myfun, nspins, vdw
|
||||
LOGICAL :: rho_g_valid, tau_r_valid, uf_grid, vdW_nl
|
||||
REAL(KIND=dp) :: edisp, exc, factor, rho_cutoff
|
||||
REAL(KIND=dp) :: edisp, excint, factor, rho_cutoff
|
||||
REAL(KIND=dp), DIMENSION(3, 3) :: vdum
|
||||
TYPE(cell_type), POINTER :: cell
|
||||
TYPE(dft_control_type), POINTER :: dft_control
|
||||
|
|
@ -593,7 +599,7 @@ CONTAINS
|
|||
TYPE(pw_pool_type), POINTER :: auxbas_pw_pool, vdw_pw_pool, xc_pw_pool
|
||||
TYPE(pw_r3d_rs_type) :: exc_r
|
||||
TYPE(pw_r3d_rs_type), DIMENSION(:), POINTER :: rho_r, tau_r, vxc_rho, vxc_tau
|
||||
TYPE(pw_r3d_rs_type), POINTER :: rho_nlcc
|
||||
TYPE(pw_r3d_rs_type), POINTER :: rho_nlcc, weights
|
||||
|
||||
CALL timeset(routineN, handle)
|
||||
|
||||
|
|
@ -601,6 +607,7 @@ CONTAINS
|
|||
dft_control=dft_control, &
|
||||
pw_env=pw_env, &
|
||||
cell=cell, &
|
||||
xcint_weights=weights, &
|
||||
rho_nlcc=rho_nlcc, &
|
||||
rho_nlcc_g=rho_nlcc_g)
|
||||
|
||||
|
|
@ -637,6 +644,9 @@ CONTAINS
|
|||
IF (PRESENT(xc_den)) THEN
|
||||
CALL pw_zero(xc_den)
|
||||
END IF
|
||||
IF (PRESENT(exc)) THEN
|
||||
CALL pw_zero(exc)
|
||||
END IF
|
||||
IF (PRESENT(vxc)) THEN
|
||||
DO ispin = 1, nspins
|
||||
CALL pw_zero(vxc(ispin))
|
||||
|
|
@ -662,13 +672,13 @@ CONTAINS
|
|||
END DO
|
||||
END IF
|
||||
NULLIFY (vxc_rho, vxc_tau)
|
||||
CALL xc_vxc_pw_create1(vxc_rho=vxc_rho, vxc_tau=vxc_tau, rho_r=rho_r, &
|
||||
rho_g=rho_g, tau=tau_r, exc=exc, &
|
||||
xc_section=xc_section, &
|
||||
pw_pool=xc_pw_pool, &
|
||||
compute_virial=.FALSE., &
|
||||
virial_xc=vdum, &
|
||||
exc_r=exc_r)
|
||||
CALL xc_vxc_pw_create(vxc_rho=vxc_rho, vxc_tau=vxc_tau, rho_r=rho_r, &
|
||||
rho_g=rho_g, tau=tau_r, exc=excint, &
|
||||
xc_section=xc_section, &
|
||||
weights=weights, pw_pool=xc_pw_pool, &
|
||||
compute_virial=.FALSE., &
|
||||
virial_xc=vdum, &
|
||||
exc_r=exc_r)
|
||||
! calclulate non-local vdW functional
|
||||
! only if this XC_SECTION has it
|
||||
! if yes, we use the dispersion_env from ks_env
|
||||
|
|
@ -703,6 +713,9 @@ CONTAINS
|
|||
CALL pw_multiply(xc_ener, vxc_rho(ispin), rho_r(ispin), alpha=-1.0_dp)
|
||||
END DO
|
||||
END IF
|
||||
IF (PRESENT(exc)) THEN
|
||||
CALL pw_copy(exc_r, exc)
|
||||
END IF
|
||||
IF (PRESENT(vxc)) THEN
|
||||
DO ispin = 1, nspins
|
||||
CALL pw_copy(vxc_rho(ispin), vxc(ispin))
|
||||
|
|
|
|||
|
|
@ -100,13 +100,14 @@ CONTAINS
|
|||
myfun, na, natom, nr, nspins, num_pe
|
||||
INTEGER, DIMENSION(2, 3) :: bounds
|
||||
INTEGER, DIMENSION(:), POINTER :: atom_list
|
||||
LOGICAL :: donlcc, gradient_f, lsd, nlcc, paw_atom, &
|
||||
tau_f
|
||||
REAL(dp) :: density_cut, exc_h, exc_s, gradient_cut, &
|
||||
LOGICAL :: accint, donlcc, gradient_f, lsd, nlcc, &
|
||||
paw_atom, tau_f
|
||||
REAL(dp) :: agr, alpha, density_cut, exc_h, exc_s, &
|
||||
gradient_cut, &
|
||||
my_adiabatic_rescale_factor, tau_cut
|
||||
REAL(dp), DIMENSION(1, 1, 1) :: tau_d
|
||||
REAL(dp), DIMENSION(1, 1, 1, 1) :: rho_d
|
||||
REAL(dp), DIMENSION(:, :), POINTER :: rho_nlcc, weight
|
||||
REAL(dp), DIMENSION(:, :), POINTER :: rho_nlcc, weight_h, weight_s
|
||||
REAL(dp), DIMENSION(:, :, :), POINTER :: rho_h, rho_s, tau_h, tau_s, vtau_h, &
|
||||
vtau_s, vxc_h, vxc_s
|
||||
REAL(dp), DIMENSION(:, :, :, :), POINTER :: drho_h, drho_s, vxg_h, vxg_s
|
||||
|
|
@ -159,6 +160,7 @@ CONTAINS
|
|||
IF (PRESENT(rho_atom_set_external)) my_rho_atom_set => rho_atom_set_external
|
||||
|
||||
nlcc = has_nlcc(my_kind_set)
|
||||
accint = dft_control%qs_control%gapw_control%accurate_xcint
|
||||
|
||||
my_xc_section => section_vals_get_subs_vals(input, "DFT%XC")
|
||||
|
||||
|
|
@ -193,7 +195,7 @@ CONTAINS
|
|||
exc1 = 0.0_dp
|
||||
|
||||
! Nullify some pointers for work-arrays
|
||||
NULLIFY (rho_h, drho_h, rho_s, drho_s, weight)
|
||||
NULLIFY (rho_h, drho_h, rho_s, drho_s, weight_h, weight_s)
|
||||
NULLIFY (vxc_h, vxc_s, vxg_h, vxg_s)
|
||||
NULLIFY (tau_h, tau_s)
|
||||
NULLIFY (vtau_h, vtau_s)
|
||||
|
|
@ -220,6 +222,20 @@ CONTAINS
|
|||
bounds(2, 1) = na
|
||||
bounds(2, 2) = nr
|
||||
|
||||
! set integration weights
|
||||
IF (accint) THEN
|
||||
weight_h => grid_atom%weight
|
||||
ALLOCATE (weight_s(na, nr))
|
||||
alpha = dft_control%qs_control%gapw_control%aw(ikind)
|
||||
DO ir = 1, nr
|
||||
agr = 1.0_dp - EXP(-alpha*grid_atom%rad2(ir))
|
||||
weight_s(:, ir) = grid_atom%weight(:, ir)*agr
|
||||
END DO
|
||||
ELSE
|
||||
weight_h => grid_atom%weight
|
||||
weight_s => grid_atom%weight
|
||||
END IF
|
||||
|
||||
! create a place where to put the derivatives
|
||||
CALL xc_dset_create(deriv_set, local_bounds=bounds)
|
||||
! create the place where to store the argument for the functionals
|
||||
|
|
@ -234,7 +250,6 @@ CONTAINS
|
|||
|
||||
CALL reallocate(rho_h, 1, na, 1, nr, 1, nspins)
|
||||
CALL reallocate(rho_s, 1, na, 1, nr, 1, nspins)
|
||||
weight => grid_atom%weight
|
||||
CALL reallocate(vxc_h, 1, na, 1, nr, 1, nspins)
|
||||
CALL reallocate(vxc_s, 1, na, 1, nr, 1, nspins)
|
||||
!
|
||||
|
|
@ -320,7 +335,7 @@ CONTAINS
|
|||
! hard atom density !
|
||||
!-------------------!
|
||||
CALL xc_dset_zero_all(deriv_set)
|
||||
CALL vxc_of_r_new(xc_fun_section, rho_set_h, deriv_set, 1, needs, weight, &
|
||||
CALL vxc_of_r_new(xc_fun_section, rho_set_h, deriv_set, 1, needs, weight_h, &
|
||||
lsd, na, nr, exc_h, vxc_h, vxg_h, vtau_h, energy_only=energy_only, &
|
||||
adiabatic_rescale_factor=my_adiabatic_rescale_factor)
|
||||
rho_atom%exc_h = rho_atom%exc_h + exc_h
|
||||
|
|
@ -329,7 +344,7 @@ CONTAINS
|
|||
! soft atom density !
|
||||
!-------------------!
|
||||
CALL xc_dset_zero_all(deriv_set)
|
||||
CALL vxc_of_r_new(xc_fun_section, rho_set_s, deriv_set, 1, needs, weight, &
|
||||
CALL vxc_of_r_new(xc_fun_section, rho_set_s, deriv_set, 1, needs, weight_s, &
|
||||
lsd, na, nr, exc_s, vxc_s, vxg_s, vtau_s, energy_only=energy_only, &
|
||||
adiabatic_rescale_factor=my_adiabatic_rescale_factor)
|
||||
rho_atom%exc_s = rho_atom%exc_s + exc_s
|
||||
|
|
@ -364,6 +379,9 @@ CONTAINS
|
|||
CALL xc_dset_release(deriv_set)
|
||||
CALL xc_rho_set_release(rho_set_h)
|
||||
CALL xc_rho_set_release(rho_set_s)
|
||||
IF (accint) THEN
|
||||
DEALLOCATE (weight_s)
|
||||
END IF
|
||||
|
||||
END DO ! ikind
|
||||
|
||||
|
|
@ -413,13 +431,13 @@ CONTAINS
|
|||
nr, nspins, num_pe
|
||||
INTEGER, DIMENSION(2, 3) :: bounds
|
||||
INTEGER, DIMENSION(:), POINTER :: atom_list
|
||||
LOGICAL :: donlcc, gradient_f, lsd, nlcc, paw_atom, &
|
||||
tau_f
|
||||
REAL(dp) :: density_cut, exc_h, exc_s, gradient_cut, &
|
||||
tau_cut
|
||||
LOGICAL :: accint, donlcc, gradient_f, lsd, nlcc, &
|
||||
paw_atom, tau_f
|
||||
REAL(dp) :: agr, alpha, density_cut, exc_h, exc_s, &
|
||||
gradient_cut, tau_cut
|
||||
REAL(dp), DIMENSION(1, 1, 1) :: tau_d
|
||||
REAL(dp), DIMENSION(1, 1, 1, 1) :: rho_d
|
||||
REAL(dp), DIMENSION(:, :), POINTER :: rho_nlcc, weight
|
||||
REAL(dp), DIMENSION(:, :), POINTER :: rho_nlcc, weight_h, weight_s
|
||||
REAL(dp), DIMENSION(:, :, :), POINTER :: rho_h, rho_s, tau_h, tau_s, vtau_h, &
|
||||
vtau_s, vxc_h, vxc_s
|
||||
REAL(dp), DIMENSION(:, :, :, :), POINTER :: drho_h, drho_s, vxg_h, vxg_s
|
||||
|
|
@ -463,6 +481,7 @@ CONTAINS
|
|||
rho_atom_set=my_rho_atom_set)
|
||||
|
||||
nlcc = has_nlcc(my_kind_set)
|
||||
accint = dft_control%qs_control%gapw_control%accurate_xcint
|
||||
|
||||
my_xc_section => section_vals_get_subs_vals(input, &
|
||||
"PROPERTIES%LINRES%EPR%PRINT%G_TENSOR%XC")
|
||||
|
|
@ -498,7 +517,7 @@ CONTAINS
|
|||
exc1 = 0.0_dp
|
||||
|
||||
! Nullify some pointers for work-arrays
|
||||
NULLIFY (rho_h, drho_h, rho_s, drho_s, weight)
|
||||
NULLIFY (rho_h, drho_h, rho_s, drho_s, weight_h, weight_s)
|
||||
NULLIFY (vxc_h, vxc_s, vxg_h, vxg_s)
|
||||
NULLIFY (tau_h, tau_s)
|
||||
NULLIFY (vtau_h, vtau_s)
|
||||
|
|
@ -525,6 +544,20 @@ CONTAINS
|
|||
bounds(2, 1) = na
|
||||
bounds(2, 2) = nr
|
||||
|
||||
! set integration weights
|
||||
IF (accint) THEN
|
||||
weight_h => grid_atom%weight
|
||||
ALLOCATE (weight_s(na, nr))
|
||||
alpha = dft_control%qs_control%gapw_control%aw(ikind)
|
||||
DO ir = 1, nr
|
||||
agr = 1.0_dp - EXP(-alpha*grid_atom%rad2(ir))
|
||||
weight_s(:, ir) = grid_atom%weight(:, ir)*agr
|
||||
END DO
|
||||
ELSE
|
||||
weight_h => grid_atom%weight
|
||||
weight_s => grid_atom%weight
|
||||
END IF
|
||||
|
||||
! create a place where to put the derivatives
|
||||
CALL xc_dset_create(deriv_set, local_bounds=bounds)
|
||||
! create the place where to store the argument for the functionals
|
||||
|
|
@ -539,7 +572,6 @@ CONTAINS
|
|||
|
||||
CALL reallocate(rho_h, 1, na, 1, nr, 1, nspins)
|
||||
CALL reallocate(rho_s, 1, na, 1, nr, 1, nspins)
|
||||
weight => grid_atom%weight
|
||||
CALL reallocate(vxc_h, 1, na, 1, nr, 1, nspins)
|
||||
CALL reallocate(vxc_s, 1, na, 1, nr, 1, nspins)
|
||||
!
|
||||
|
|
@ -625,7 +657,7 @@ CONTAINS
|
|||
! hard atom density !
|
||||
!-------------------!
|
||||
CALL xc_dset_zero_all(deriv_set)
|
||||
CALL vxc_of_r_epr(xc_fun_section, rho_set_h, deriv_set, needs, weight, &
|
||||
CALL vxc_of_r_epr(xc_fun_section, rho_set_h, deriv_set, needs, weight_h, &
|
||||
lsd, na, nr, exc_h, vxc_h, vxg_h, vtau_h)
|
||||
rho_atom%exc_h = rho_atom%exc_h + exc_h
|
||||
|
||||
|
|
@ -633,7 +665,7 @@ CONTAINS
|
|||
! soft atom density !
|
||||
!-------------------!
|
||||
CALL xc_dset_zero_all(deriv_set)
|
||||
CALL vxc_of_r_epr(xc_fun_section, rho_set_s, deriv_set, needs, weight, &
|
||||
CALL vxc_of_r_epr(xc_fun_section, rho_set_s, deriv_set, needs, weight_s, &
|
||||
lsd, na, nr, exc_s, vxc_s, vxg_s, vtau_s)
|
||||
rho_atom%exc_s = rho_atom%exc_s + exc_s
|
||||
|
||||
|
|
@ -680,6 +712,9 @@ CONTAINS
|
|||
CALL xc_dset_release(deriv_set)
|
||||
CALL xc_rho_set_release(rho_set_h)
|
||||
CALL xc_rho_set_release(rho_set_s)
|
||||
IF (accint) THEN
|
||||
DEALLOCATE (weight_s)
|
||||
END IF
|
||||
|
||||
END DO ! ikind
|
||||
|
||||
|
|
@ -740,19 +775,21 @@ CONTAINS
|
|||
INTEGER, DIMENSION(2) :: local_loop_limit
|
||||
INTEGER, DIMENSION(2, 3) :: bounds
|
||||
INTEGER, DIMENSION(:), POINTER :: atom_list
|
||||
LOGICAL :: gradient_functional, lsd, my_do_sf, &
|
||||
paw_atom, scale_rho, tau_f
|
||||
REAL(KIND=dp) :: density_cut, gradient_cut, rtot, tau_cut
|
||||
LOGICAL :: accint, gradient_functional, lsd, &
|
||||
my_do_sf, paw_atom, scale_rho, tau_f
|
||||
REAL(KIND=dp) :: agr, alpha, density_cut, gradient_cut, &
|
||||
rtot, tau_cut
|
||||
REAL(KIND=dp), CONTIGUOUS, DIMENSION(:, :, :), &
|
||||
POINTER :: vxc_h, vxc_s
|
||||
REAL(KIND=dp), DIMENSION(1, 1, 1) :: rtau
|
||||
REAL(KIND=dp), DIMENSION(1, 1, 1, 1) :: rrho
|
||||
REAL(KIND=dp), DIMENSION(:, :), POINTER :: weight
|
||||
REAL(KIND=dp), DIMENSION(:, :), POINTER :: weight_h, weight_s
|
||||
REAL(KIND=dp), DIMENSION(:, :, :), POINTER :: rho1_h, rho1_s, rho_h, rho_s, tau1_h, &
|
||||
tau1_s, tau_h, tau_s
|
||||
REAL(KIND=dp), DIMENSION(:, :, :, :), POINTER :: drho1_h, drho1_s, drho_h, drho_s, vxg_h, &
|
||||
vxg_s
|
||||
TYPE(atomic_kind_type), DIMENSION(:), POINTER :: atomic_kind_set
|
||||
TYPE(dft_control_type), POINTER :: dft_control
|
||||
TYPE(grid_atom_type), POINTER :: grid_atom
|
||||
TYPE(gto_basis_set_type), POINTER :: basis_1c
|
||||
TYPE(harmonics_atom_type), POINTER :: harmonics
|
||||
|
|
@ -772,13 +809,14 @@ CONTAINS
|
|||
CALL timeset(routineN, handle)
|
||||
|
||||
NULLIFY (qs_kind_set)
|
||||
NULLIFY (rho_h, rho_s, drho_h, drho_s, weight)
|
||||
NULLIFY (rho_h, rho_s, drho_h, drho_s, weight_h, weight_s)
|
||||
NULLIFY (rho1_h, rho1_s, drho1_h, drho1_s)
|
||||
NULLIFY (vxc_h, vxc_s, vxg_h, vxg_s)
|
||||
NULLIFY (tau_h, tau_s, tau1_h, tau1_s)
|
||||
|
||||
CALL get_qs_env(qs_env=qs_env, &
|
||||
input=input, &
|
||||
dft_control=dft_control, &
|
||||
qs_kind_set=qs_kind_set, &
|
||||
atomic_kind_set=atomic_kind_set)
|
||||
|
||||
|
|
@ -788,6 +826,8 @@ CONTAINS
|
|||
my_kind_set => qs_kind_set
|
||||
END IF
|
||||
|
||||
accint = dft_control%qs_control%gapw_control%accurate_xcint
|
||||
|
||||
CALL section_vals_val_get(input, "DFT%LSD", l_val=lsd)
|
||||
CALL section_vals_val_get(xc_section, "DENSITY_CUTOFF", &
|
||||
r_val=density_cut)
|
||||
|
|
@ -840,6 +880,20 @@ CONTAINS
|
|||
nr = grid_atom%nr
|
||||
na = grid_atom%ng_sphere
|
||||
|
||||
! set integration weights
|
||||
IF (accint) THEN
|
||||
weight_h => grid_atom%weight
|
||||
ALLOCATE (weight_s(na, nr))
|
||||
alpha = dft_control%qs_control%gapw_control%aw(ikind)
|
||||
DO ir = 1, nr
|
||||
agr = 1.0_dp - EXP(-alpha*grid_atom%rad2(ir))
|
||||
weight_s(:, ir) = grid_atom%weight(:, ir)*agr
|
||||
END DO
|
||||
ELSE
|
||||
weight_h => grid_atom%weight
|
||||
weight_s => grid_atom%weight
|
||||
END IF
|
||||
|
||||
! Array dimension: here anly one dimensional arrays are used,
|
||||
! i.e. only the first column of deriv_data is read.
|
||||
! The other to dimensions are set to size equal 1.
|
||||
|
|
@ -877,8 +931,6 @@ CONTAINS
|
|||
vxc_h = 0.0_dp
|
||||
vxc_s = 0.0_dp
|
||||
|
||||
weight => grid_atom%weight
|
||||
|
||||
IF (gradient_functional) THEN
|
||||
ALLOCATE (drho_h(1:4, 1:na, 1:nr, 1:nspins), drho1_h(1:4, 1:na, 1:nr, 1:nspins), &
|
||||
drho_s(1:4, 1:na, 1:nr, 1:nspins), drho1_s(1:4, 1:na, 1:nr, 1:nspins))
|
||||
|
|
@ -970,12 +1022,12 @@ CONTAINS
|
|||
CALL xc_2nd_deriv_of_r(xc_section=xc_section, &
|
||||
rho_set=rho_set_h, rho1_set=rho1_set_h, &
|
||||
deriv_set=deriv_set, &
|
||||
w=weight, vxc=vxc_h, vxg=vxg_h, do_triplet=do_triplet, &
|
||||
w=weight_h, vxc=vxc_h, vxg=vxg_h, do_triplet=do_triplet, &
|
||||
do_sf=my_do_sf)
|
||||
CALL xc_2nd_deriv_of_r(xc_section=xc_section, &
|
||||
rho_set=rho_set_s, rho1_set=rho1_set_s, &
|
||||
deriv_set=deriv_set, &
|
||||
w=weight, vxc=vxc_s, vxg=vxg_s, do_triplet=do_triplet, &
|
||||
w=weight_s, vxc=vxc_s, vxg=vxg_s, do_triplet=do_triplet, &
|
||||
do_sf=my_do_sf)
|
||||
|
||||
CALL get_rho_atom(rho_atom=rho1_atom, ga_Vlocal_gb_h=int_hh, ga_Vlocal_gb_s=int_ss)
|
||||
|
|
@ -992,7 +1044,6 @@ CONTAINS
|
|||
END DO
|
||||
|
||||
! some cleanup
|
||||
NULLIFY (weight)
|
||||
DEALLOCATE (rho_h, rho_s, rho1_h, rho1_s, vxc_h, vxc_s)
|
||||
DEALLOCATE (drho_h, drho_s, vxg_h, vxg_s)
|
||||
DEALLOCATE (drho1_h, drho1_s)
|
||||
|
|
@ -1002,6 +1053,9 @@ CONTAINS
|
|||
CALL xc_rho_set_release(rho1_set_h)
|
||||
CALL xc_rho_set_release(rho_set_s)
|
||||
CALL xc_rho_set_release(rho1_set_s)
|
||||
IF (accint) THEN
|
||||
DEALLOCATE (weight_s)
|
||||
END IF
|
||||
|
||||
END DO
|
||||
|
||||
|
|
@ -1039,13 +1093,14 @@ CONTAINS
|
|||
nr, ns, nspins, nstep, num_pe
|
||||
INTEGER, DIMENSION(2, 3) :: bounds
|
||||
INTEGER, DIMENSION(:), POINTER :: atom_list
|
||||
LOGICAL :: donlcc, gradient_f, lsd, nlcc, paw_atom, &
|
||||
tau_f
|
||||
REAL(dp) :: beta, density_cut, exc_h, exc_s, &
|
||||
gradient_cut, oeps1, oeps2, tau_cut
|
||||
LOGICAL :: accint, donlcc, gradient_f, lsd, nlcc, &
|
||||
paw_atom, tau_f
|
||||
REAL(dp) :: agr, alpha, beta, density_cut, exc_h, &
|
||||
exc_s, gradient_cut, oeps1, oeps2, &
|
||||
tau_cut
|
||||
REAL(dp), DIMENSION(1, 1, 1) :: tau_d
|
||||
REAL(dp), DIMENSION(1, 1, 1, 1) :: rho_d
|
||||
REAL(dp), DIMENSION(:, :), POINTER :: rho_nlcc, weight
|
||||
REAL(dp), DIMENSION(:, :), POINTER :: rho_nlcc, weight_h, weight_s
|
||||
REAL(dp), DIMENSION(:, :, :), POINTER :: rho0_h, rho0_s, rho1_h, rho1_s, rho_h, &
|
||||
rho_s, tau0_h, tau0_s, tau1_h, tau1_s, &
|
||||
tau_h, tau_s, vtau_h, vtau_s, vxc_h, &
|
||||
|
|
@ -1099,6 +1154,8 @@ CONTAINS
|
|||
xc_fun_section => section_vals_get_subs_vals(xc_section, "XC_FUNCTIONAL")
|
||||
CALL section_vals_val_get(xc_fun_section, "_SECTION_PARAMETERS_", i_val=myfun)
|
||||
|
||||
accint = dft_control%qs_control%gapw_control%accurate_xcint
|
||||
|
||||
IF (myfun == xc_none) THEN
|
||||
! no action needed?
|
||||
ELSE
|
||||
|
|
@ -1131,6 +1188,20 @@ CONTAINS
|
|||
nr = grid_atom%nr
|
||||
na = grid_atom%ng_sphere
|
||||
|
||||
! set integration weights
|
||||
IF (accint) THEN
|
||||
weight_h => grid_atom%weight
|
||||
ALLOCATE (weight_s(na, nr))
|
||||
alpha = dft_control%qs_control%gapw_control%aw(ikind)
|
||||
DO ir = 1, nr
|
||||
agr = 1.0_dp - EXP(-alpha*grid_atom%rad2(ikind))
|
||||
weight_s(:, ir) = grid_atom%weight(:, ir)*agr
|
||||
END DO
|
||||
ELSE
|
||||
weight_h => grid_atom%weight
|
||||
weight_s => grid_atom%weight
|
||||
END IF
|
||||
|
||||
! Prepare the structures needed to calculate and store the xc derivatives
|
||||
|
||||
! Array dimension: here anly one dimensional arrays are used,
|
||||
|
|
@ -1152,8 +1223,6 @@ CONTAINS
|
|||
CALL xc_rho_set_atom_update(rho_set_h, needs, mspins, bounds)
|
||||
CALL xc_rho_set_atom_update(rho_set_s, needs, mspins, bounds)
|
||||
|
||||
weight => grid_atom%weight
|
||||
|
||||
ALLOCATE (rho_h(na, nr, mspins), rho_s(na, nr, mspins), &
|
||||
rho0_h(na, nr, nspins), rho0_s(na, nr, nspins), &
|
||||
rho1_h(na, nr, nspins), rho1_s(na, nr, nspins))
|
||||
|
|
@ -1320,7 +1389,7 @@ CONTAINS
|
|||
|
||||
! hard atom density !
|
||||
CALL xc_dset_zero_all(deriv_set)
|
||||
CALL vxc_of_r_new(xc_fun_section, rho_set_h, deriv_set, 1, needs, weight, &
|
||||
CALL vxc_of_r_new(xc_fun_section, rho_set_h, deriv_set, 1, needs, weight_h, &
|
||||
lsd, na, nr, exc_h, vxc_h, vxg_h, vtau_h)
|
||||
IF (is_triplet) THEN
|
||||
vxc_h(:, :, 1) = vxc_h(:, :, 1) - vxc_h(:, :, 2)
|
||||
|
|
@ -1333,7 +1402,7 @@ CONTAINS
|
|||
END IF
|
||||
! soft atom density !
|
||||
CALL xc_dset_zero_all(deriv_set)
|
||||
CALL vxc_of_r_new(xc_fun_section, rho_set_s, deriv_set, 1, needs, weight, &
|
||||
CALL vxc_of_r_new(xc_fun_section, rho_set_s, deriv_set, 1, needs, weight_s, &
|
||||
lsd, na, nr, exc_s, vxc_s, vxg_s, vtau_s)
|
||||
IF (is_triplet) THEN
|
||||
vxc_s(:, :, 1) = vxc_s(:, :, 1) - vxc_s(:, :, 2)
|
||||
|
|
@ -1399,6 +1468,9 @@ CONTAINS
|
|||
DEALLOCATE (tau_h, tau_s, tau0_h, tau0_s, tau1_h, tau1_s)
|
||||
DEALLOCATE (vtau_h, vtau_s)
|
||||
END IF
|
||||
IF (accint) THEN
|
||||
DEALLOCATE (weight_s)
|
||||
END IF
|
||||
|
||||
END DO ! ikind
|
||||
|
||||
|
|
@ -1439,14 +1511,14 @@ CONTAINS
|
|||
nr, ns, nspins, nstep, num_pe
|
||||
INTEGER, DIMENSION(2, 3) :: bounds
|
||||
INTEGER, DIMENSION(:), POINTER :: atom_list
|
||||
LOGICAL :: donlcc, gradient_f, lsd, nlcc, paw_atom, &
|
||||
tau_f
|
||||
REAL(dp) :: beta, density_cut, gradient_cut, oeps1, &
|
||||
tau_cut
|
||||
LOGICAL :: accint, donlcc, gradient_f, lsd, nlcc, &
|
||||
paw_atom, tau_f
|
||||
REAL(dp) :: agr, alpha, beta, density_cut, &
|
||||
gradient_cut, oeps1, tau_cut
|
||||
REAL(dp), CONTIGUOUS, DIMENSION(:, :, :), POINTER :: vxc_h, vxc_s
|
||||
REAL(dp), DIMENSION(1, 1, 1) :: tau_d
|
||||
REAL(dp), DIMENSION(1, 1, 1, 1) :: rho_d
|
||||
REAL(dp), DIMENSION(:, :), POINTER :: rho_nlcc, weight
|
||||
REAL(dp), DIMENSION(:, :), POINTER :: rho_nlcc, weight_h, weight_s
|
||||
REAL(dp), DIMENSION(:, :, :), POINTER :: rho0_h, rho0_s, rho1_h, rho1_s, rho_h, &
|
||||
rho_s, tau0_h, tau0_s, tau1_h, tau1_s, &
|
||||
tau_h, tau_s, vtau_h, vtau_s
|
||||
|
|
@ -1494,6 +1566,8 @@ CONTAINS
|
|||
xc_fun_section => section_vals_get_subs_vals(xc_section, "XC_FUNCTIONAL")
|
||||
CALL section_vals_val_get(xc_fun_section, "_SECTION_PARAMETERS_", i_val=myfun)
|
||||
|
||||
accint = dft_control%qs_control%gapw_control%accurate_xcint
|
||||
|
||||
IF (myfun == xc_none) THEN
|
||||
! no action needed?
|
||||
ELSE
|
||||
|
|
@ -1530,6 +1604,20 @@ CONTAINS
|
|||
nr = grid_atom%nr
|
||||
na = grid_atom%ng_sphere
|
||||
|
||||
! set integration weights
|
||||
IF (accint) THEN
|
||||
weight_h => grid_atom%weight
|
||||
ALLOCATE (weight_s(na, nr))
|
||||
alpha = dft_control%qs_control%gapw_control%aw(ikind)
|
||||
DO ir = 1, nr
|
||||
agr = 1.0_dp - EXP(-alpha*grid_atom%rad2(ir))
|
||||
weight_s(:, ir) = grid_atom%weight(:, ir)*agr
|
||||
END DO
|
||||
ELSE
|
||||
weight_h => grid_atom%weight
|
||||
weight_s => grid_atom%weight
|
||||
END IF
|
||||
|
||||
! Prepare the structures needed to calculate and store the xc derivatives
|
||||
|
||||
! Array dimension: here anly one dimensional arrays are used,
|
||||
|
|
@ -1557,8 +1645,6 @@ CONTAINS
|
|||
CALL xc_rho_set_atom_update(rho1_set_h, needs, mspins, bounds)
|
||||
CALL xc_rho_set_atom_update(rho1_set_s, needs, mspins, bounds)
|
||||
|
||||
weight => grid_atom%weight
|
||||
|
||||
ALLOCATE (rho_h(na, nr, nspins), rho_s(na, nr, nspins), &
|
||||
rho0_h(na, nr, nspins), rho0_s(na, nr, nspins), &
|
||||
rho1_h(na, nr, nspins), rho1_s(na, nr, nspins))
|
||||
|
|
@ -1717,13 +1803,13 @@ CONTAINS
|
|||
CALL xc_2nd_deriv_of_r(xc_section=xc_section, &
|
||||
rho_set=rho_set_h, rho1_set=rho1_set_h, &
|
||||
deriv_set=deriv_set, &
|
||||
w=weight, vxc=vxc_h, vxg=vxg_h, do_triplet=is_triplet)
|
||||
w=weight_h, vxc=vxc_h, vxg=vxg_h, do_triplet=is_triplet)
|
||||
! soft atom density !
|
||||
CALL xc_dset_zero_all(deriv_set)
|
||||
CALL xc_2nd_deriv_of_r(xc_section=xc_section, &
|
||||
rho_set=rho_set_s, rho1_set=rho1_set_s, &
|
||||
deriv_set=deriv_set, &
|
||||
w=weight, vxc=vxc_s, vxg=vxg_s, do_triplet=is_triplet)
|
||||
w=weight_s, vxc=vxc_s, vxg=vxg_s, do_triplet=is_triplet)
|
||||
! potentials
|
||||
DO ns = 1, nspins
|
||||
fint_hh(ns)%r_coef(:, :) = 0.0_dp
|
||||
|
|
@ -1774,6 +1860,9 @@ CONTAINS
|
|||
DEALLOCATE (tau_h, tau_s, tau0_h, tau0_s, tau1_h, tau1_s)
|
||||
DEALLOCATE (vtau_h, vtau_s)
|
||||
END IF
|
||||
IF (accint) THEN
|
||||
DEALLOCATE (weight_s)
|
||||
END IF
|
||||
|
||||
END DO ! ikind
|
||||
|
||||
|
|
|
|||
|
|
@ -15,6 +15,7 @@
|
|||
!> \author JGH
|
||||
! **************************************************************************************************
|
||||
MODULE response_solver
|
||||
USE accint_weights_forces, ONLY: accint_weight_force
|
||||
USE admm_methods, ONLY: admm_projection_derivative
|
||||
USE admm_types, ONLY: admm_type,&
|
||||
get_admm_env
|
||||
|
|
@ -136,7 +137,9 @@ MODULE response_solver
|
|||
USE qs_rho0_methods, ONLY: init_rho0
|
||||
USE qs_rho_atom_methods, ONLY: allocate_rho_atom_internals,&
|
||||
calculate_rho_atom_coeff
|
||||
USE qs_rho_types, ONLY: qs_rho_get,&
|
||||
USE qs_rho_types, ONLY: qs_rho_create,&
|
||||
qs_rho_get,&
|
||||
qs_rho_set,&
|
||||
qs_rho_type
|
||||
USE qs_vxc_atom, ONLY: calculate_vxc_atom,&
|
||||
calculate_xc_2nd_deriv_atom
|
||||
|
|
@ -904,7 +907,7 @@ CONTAINS
|
|||
TYPE(qs_force_type), DIMENSION(:), POINTER :: force
|
||||
TYPE(qs_kind_type), DIMENSION(:), POINTER :: qs_kind_set
|
||||
TYPE(qs_ks_env_type), POINTER :: ks_env
|
||||
TYPE(qs_rho_type), POINTER :: rho, rho_aux_fit, rho_xc
|
||||
TYPE(qs_rho_type), POINTER :: rho, rho0, rho1, rho_aux_fit, rho_xc
|
||||
TYPE(section_vals_type), POINTER :: hfx_section, xc_fun_section, xc_section
|
||||
TYPE(task_list_type), POINTER :: task_list, task_list_aux_fit
|
||||
TYPE(virial_type), POINTER :: virial
|
||||
|
|
@ -1291,16 +1294,16 @@ CONTAINS
|
|||
END IF
|
||||
CALL auxbas_pw_pool%give_back_pw(rho_tot_gspace_gs)
|
||||
IF (ASSOCIATED(rho_r_gs)) THEN
|
||||
DO ispin = 1, nspins
|
||||
CALL auxbas_pw_pool%give_back_pw(rho_r_gs(ispin))
|
||||
END DO
|
||||
DEALLOCATE (rho_r_gs)
|
||||
DO ispin = 1, nspins
|
||||
CALL auxbas_pw_pool%give_back_pw(rho_r_gs(ispin))
|
||||
END DO
|
||||
DEALLOCATE (rho_r_gs)
|
||||
END IF
|
||||
IF (ASSOCIATED(rho_g_gs)) THEN
|
||||
DO ispin = 1, nspins
|
||||
CALL auxbas_pw_pool%give_back_pw(rho_g_gs(ispin))
|
||||
END DO
|
||||
DEALLOCATE (rho_g_gs)
|
||||
DO ispin = 1, nspins
|
||||
CALL auxbas_pw_pool%give_back_pw(rho_g_gs(ispin))
|
||||
END DO
|
||||
DEALLOCATE (rho_g_gs)
|
||||
END IF
|
||||
END IF !gapw
|
||||
|
||||
|
|
@ -1439,6 +1442,40 @@ CONTAINS
|
|||
END DO
|
||||
END IF
|
||||
|
||||
IF (gapw_xc) THEN
|
||||
CALL get_qs_env(qs_env=qs_env, rho_xc=rho_xc)
|
||||
ELSE
|
||||
CALL get_qs_env(qs_env=qs_env, rho=rho)
|
||||
END IF
|
||||
|
||||
IF (dft_control%qs_control%gapw_control%accurate_xcint) THEN
|
||||
! GAPW Accurate integration
|
||||
IF (debug_forces) fodeb(1:3) = force(1)%rho_elec(1:3, 1)
|
||||
IF (debug_stress .AND. use_virial) stdeb = virial%pv_virial
|
||||
ALLOCATE (rho1)
|
||||
CALL qs_rho_create(rho1)
|
||||
IF (gapw_xc) THEN
|
||||
CALL get_qs_env(qs_env=qs_env, rho_xc=rho0)
|
||||
CALL qs_rho_set(rho1, rho_r=rhoz_r_xc, rho_g=rhoz_g_xc)
|
||||
ELSE
|
||||
CALL get_qs_env(qs_env=qs_env, rho=rho0)
|
||||
CALL qs_rho_set(rho1, rho_r=rhoz_r, rho_g=rhoz_g)
|
||||
END IF
|
||||
CALL accint_weight_force(qs_env, rho0, rho1, 1, xc_section)
|
||||
DEALLOCATE (rho1)
|
||||
IF (debug_forces) THEN
|
||||
fodeb(1:3) = force(1)%rho_elec(1:3, 1) - fodeb(1:3)
|
||||
CALL para_env%sum(fodeb)
|
||||
IF (iounit > 0) WRITE (iounit, "(T3,A,T33,3F16.8)") "DEBUG:: Pz*Vxc*dw ", fodeb
|
||||
END IF
|
||||
IF (debug_stress .AND. use_virial) THEN
|
||||
stdeb = fconv*(virial%pv_virial - stdeb)
|
||||
CALL para_env%sum(stdeb)
|
||||
IF (iounit > 0) WRITE (UNIT=iounit, FMT="(T2,A,T41,2(1X,ES19.11))") &
|
||||
'STRESS| INT Pz*dVxc*dw ', one_third_sum_diag(stdeb), det_3x3(stdeb)
|
||||
END IF
|
||||
END IF
|
||||
|
||||
! Stress-tensor contribution second derivative
|
||||
! Volume : int v_H[n^z]*n_in
|
||||
! Volume : int epsilon_xc*n_z
|
||||
|
|
@ -2090,6 +2127,31 @@ CONTAINS
|
|||
IF (use_virial) THEN
|
||||
virial%pv_ehartree = virial%pv_ehartree + (virial%pv_virial - pv_loc)
|
||||
END IF
|
||||
! GAPW ADMM XC correction integrate weight contribution to force
|
||||
IF (admm_env%do_gapw) THEN
|
||||
IF (debug_forces) fodeb(1:3) = force(1)%rho_elec(1:3, 1)
|
||||
IF (debug_stress .AND. use_virial) stdeb = virial%pv_virial
|
||||
|
||||
ALLOCATE (rho1)
|
||||
CALL qs_rho_create(rho1)
|
||||
CALL qs_rho_set(rho1, rho_r=rhoz_r_aux, rho_g=rhoz_g_aux)
|
||||
!
|
||||
CALL accint_weight_force(qs_env, rho_aux_fit, rho1, 1, xc_section)
|
||||
!
|
||||
DEALLOCATE (rho1)
|
||||
IF (debug_forces) THEN
|
||||
fodeb(1:3) = force(1)%rho_elec(1:3, 1) - fodeb(1:3)
|
||||
CALL para_env%sum(fodeb)
|
||||
IF (iounit > 0) WRITE (iounit, "(T3,A,T33,3F16.8)") "DEBUG:: dKxc*rhoz_admm*dw ", fodeb
|
||||
END IF
|
||||
IF (debug_stress .AND. use_virial) THEN
|
||||
stdeb = fconv*(virial%pv_virial - stdeb)
|
||||
CALL para_env%sum(stdeb)
|
||||
IF (iounit > 0) WRITE (UNIT=iounit, FMT="(T2,A,T41,2(1X,ES19.11))") &
|
||||
'STRESS| dKxc*rhoz_admm*dw', one_third_sum_diag(stdeb), det_3x3(stdeb)
|
||||
END IF
|
||||
END IF
|
||||
! return ADMM response densities and potentials
|
||||
DO ispin = 1, nspins
|
||||
CALL auxbas_pw_pool%give_back_pw(v_xc(ispin))
|
||||
CALL auxbas_pw_pool%give_back_pw(rhoz_r_aux(ispin))
|
||||
|
|
|
|||
1064
src/xc/xc.F
1064
src/xc/xc.F
File diff suppressed because it is too large
Load diff
|
|
@ -76,8 +76,8 @@ CONTAINS
|
|||
TYPE(xc_rho_set_type), INTENT(IN) :: rho_set
|
||||
TYPE(xc_derivative_set_type), INTENT(IN) :: deriv_set
|
||||
INTEGER, INTENT(in) :: deriv_order
|
||||
TYPE(xc_rho_cflags_type), INTENT(in) :: needs
|
||||
REAL(dp), DIMENSION(:, :), POINTER :: w
|
||||
TYPE(xc_rho_cflags_type), INTENT(IN) :: needs
|
||||
REAL(dp), DIMENSION(:, :), INTENT(IN) :: w
|
||||
LOGICAL, INTENT(IN) :: lsd
|
||||
INTEGER, INTENT(in) :: na, nr
|
||||
REAL(dp) :: exc
|
||||
|
|
@ -298,8 +298,8 @@ CONTAINS
|
|||
TYPE(section_vals_type), POINTER :: xc_fun_section
|
||||
TYPE(xc_rho_set_type), INTENT(IN) :: rho_set
|
||||
TYPE(xc_derivative_set_type), INTENT(IN) :: deriv_set
|
||||
TYPE(xc_rho_cflags_type), INTENT(in) :: needs
|
||||
REAL(dp), DIMENSION(:, :), POINTER :: w
|
||||
TYPE(xc_rho_cflags_type), INTENT(IN) :: needs
|
||||
REAL(dp), DIMENSION(:, :), INTENT(IN) :: w
|
||||
LOGICAL, INTENT(IN) :: lsd
|
||||
INTEGER, INTENT(in) :: na, nr
|
||||
REAL(dp) :: exc
|
||||
|
|
@ -410,7 +410,7 @@ CONTAINS
|
|||
TYPE(xc_rho_set_type), INTENT(IN) :: rho_set, rho1_set
|
||||
TYPE(section_vals_type), POINTER :: xc_section
|
||||
TYPE(xc_derivative_set_type), INTENT(INOUT) :: deriv_set
|
||||
REAL(dp), DIMENSION(:, :), POINTER :: w
|
||||
REAL(dp), DIMENSION(:, :), INTENT(IN) :: w
|
||||
REAL(dp), CONTIGUOUS, DIMENSION(:, :, :), POINTER :: vxc
|
||||
REAL(dp), DIMENSION(:, :, :, :), POINTER :: vxg
|
||||
LOGICAL, INTENT(IN), OPTIONAL :: do_triplet, do_sf
|
||||
|
|
@ -469,7 +469,8 @@ CONTAINS
|
|||
NULLIFY (vxc_tau_pw)
|
||||
|
||||
CALL xc_calc_2nd_deriv_analytical(vxc_pw, vxc_tau_pw, deriv_set, rho_set, rho1_set, pw_pool, &
|
||||
xc_section, gapw=.TRUE., vxg=vxg, tddfpt_fac=my_fac_triplet, spinflip=do_sf)
|
||||
xc_section, gapw=.TRUE., vxg=vxg, &
|
||||
tddfpt_fac=my_fac_triplet, spinflip=do_sf)
|
||||
|
||||
DEALLOCATE (vxc_pw)
|
||||
|
||||
|
|
|
|||
|
|
@ -34,10 +34,6 @@ MODULE xc_input_constants
|
|||
xc_pbe_rev = 12, &
|
||||
xc_pbe_sol = 13
|
||||
|
||||
INTEGER, PARAMETER, PUBLIC :: xc_default_f_routine = 1, &
|
||||
xc_test_lsd_f_routine = 2, &
|
||||
xc_debug_new_routine = 3
|
||||
|
||||
INTEGER, PARAMETER, PUBLIC :: xgga_b88 = 101, &
|
||||
xgga_b88x = 102, &
|
||||
xgga_pw86 = 103, &
|
||||
|
|
|
|||
|
|
@ -79,7 +79,7 @@ MODULE xc_pot_saop
|
|||
gaVxcgb_noGC
|
||||
USE util, ONLY: get_limit
|
||||
USE virial_types, ONLY: virial_type
|
||||
USE xc, ONLY: xc_vxc_pw_create1
|
||||
USE xc, ONLY: xc_vxc_pw_create
|
||||
USE xc_atom, ONLY: fill_rho_set,&
|
||||
vxc_of_r_new,&
|
||||
xc_rho_set_atom_update
|
||||
|
|
@ -152,6 +152,7 @@ CONTAINS
|
|||
TYPE(pw_r3d_rs_type), ALLOCATABLE, DIMENSION(:) :: vxc_GLLB, vxc_SAOP
|
||||
TYPE(pw_r3d_rs_type), DIMENSION(:), POINTER :: rho_r, rho_struct_r, tau, vxc_LB, &
|
||||
vxc_tau, vxc_tmp
|
||||
TYPE(pw_r3d_rs_type), POINTER :: weights
|
||||
TYPE(qs_ks_env_type), POINTER :: ks_env
|
||||
TYPE(qs_rho_type), POINTER :: rho_struct
|
||||
TYPE(section_vals_type), POINTER :: input, xc_fun_section_orig, &
|
||||
|
|
@ -172,6 +173,7 @@ CONTAINS
|
|||
CALL get_qs_env(qs_env, &
|
||||
ks_env=ks_env, &
|
||||
rho=rho_struct, &
|
||||
xcint_weights=weights, &
|
||||
pw_env=pw_env, &
|
||||
input=input, &
|
||||
virial=virial, &
|
||||
|
|
@ -248,12 +250,9 @@ CONTAINS
|
|||
xc_fun_section_tmp)
|
||||
|
||||
CPASSERT(.NOT. compute_virial)
|
||||
! CALL xc_vxc_pw_create(vxc_tmp, vxc_tau, xc_energy, rho_r, rho_g, tau, &
|
||||
! xc_section_tmp, auxbas_pw_pool, &
|
||||
! compute_virial=.FALSE., virial_xc=virial_xc_tmp)
|
||||
CALL xc_vxc_pw_create1(vxc_tmp, vxc_tau, rho_r, rho_g, tau, xc_energy, &
|
||||
xc_section_tmp, auxbas_pw_pool, &
|
||||
compute_virial=.FALSE., virial_xc=virial_xc_tmp)
|
||||
CALL xc_vxc_pw_create(vxc_tmp, vxc_tau, xc_energy, rho_r, rho_g, tau, &
|
||||
xc_section_tmp, weights, auxbas_pw_pool, &
|
||||
compute_virial=.FALSE., virial_xc=virial_xc_tmp)
|
||||
|
||||
CALL section_vals_val_set(xc_fun_section_tmp, "XALPHA%_SECTION_PARAMETERS_", &
|
||||
l_val=.FALSE.)
|
||||
|
|
@ -261,12 +260,9 @@ CONTAINS
|
|||
l_val=.TRUE.)
|
||||
|
||||
CPASSERT(.NOT. compute_virial)
|
||||
! CALL xc_vxc_pw_create(vxc_LB, vxc_tau, xc_energy, rho_r, rho_g, tau, &
|
||||
! xc_section_tmp, auxbas_pw_pool, &
|
||||
! compute_virial=.FALSE., virial_xc=virial_xc_tmp)
|
||||
CALL xc_vxc_pw_create1(vxc_LB, vxc_tau, rho_r, rho_g, tau, xc_energy, &
|
||||
xc_section_tmp, auxbas_pw_pool, &
|
||||
compute_virial=.FALSE., virial_xc=virial_xc_tmp)
|
||||
CALL xc_vxc_pw_create(vxc_LB, vxc_tau, xc_energy, rho_r, rho_g, tau, &
|
||||
xc_section_tmp, weights, auxbas_pw_pool, &
|
||||
compute_virial=.FALSE., virial_xc=virial_xc_tmp)
|
||||
|
||||
DO ispin = 1, nspins
|
||||
CALL pw_axpy(vxc_tmp(ispin), vxc_LB(ispin), alpha)
|
||||
|
|
@ -494,12 +490,11 @@ CONTAINS
|
|||
INTEGER, DIMENSION(2) :: bo, homo, ncol, nrow
|
||||
INTEGER, DIMENSION(2, 3) :: bounds
|
||||
INTEGER, DIMENSION(:), POINTER :: atom_list
|
||||
LOGICAL :: lsd, paw_atom
|
||||
LOGICAL :: accint, lsd, paw_atom
|
||||
REAL(dp), DIMENSION(:, :, :), POINTER :: tau
|
||||
REAL(KIND=dp) :: density_cut, efac, exc, gradient_cut, &
|
||||
tau_cut, we_GLLB, we_LB
|
||||
REAL(KIND=dp), ALLOCATABLE, DIMENSION(:, :) :: coeff_col
|
||||
REAL(KIND=dp), DIMENSION(:, :), POINTER :: weight
|
||||
REAL(KIND=dp) :: agr, alpha, density_cut, efac, exc, &
|
||||
gradient_cut, tau_cut, we_GLLB, we_LB
|
||||
REAL(KIND=dp), ALLOCATABLE, DIMENSION(:, :) :: coeff_col, weight_h, weight_s
|
||||
REAL(KIND=dp), DIMENSION(:, :, :), POINTER :: dummy, e_uniform, rho_h, rho_s, vtau, &
|
||||
vxc_GLLB_h, vxc_GLLB_s, vxc_LB_h, vxc_LB_s, vxc_SAOP_h, vxc_SAOP_s, vxc_tmp_h, vxc_tmp_s
|
||||
REAL(KIND=dp), DIMENSION(:, :, :, :), POINTER :: drho_h, drho_s, vxg
|
||||
|
|
@ -535,7 +530,7 @@ CONTAINS
|
|||
TYPE(xc_rho_set_type) :: orb_rho_set_h, orb_rho_set_s, rho_set_h, &
|
||||
rho_set_s
|
||||
|
||||
NULLIFY (weight, rho_h, rho_s, vxc_LB_h, vxc_LB_s, vxc_GLLB_h, vxc_GLLB_s, &
|
||||
NULLIFY (rho_h, rho_s, vxc_LB_h, vxc_LB_s, vxc_GLLB_h, vxc_GLLB_s, &
|
||||
vxc_tmp_h, vxc_tmp_s, vtau, dummy, e_uniform, drho_h, drho_s, vxg, atom_list, &
|
||||
atomic_kind_set, qs_kind_set, deriv, atomic_grid, rho_struct_ao, &
|
||||
harmonics, molecular_orbitals, rho_structure, r_h, r_s, dr_h, dr_s, &
|
||||
|
|
@ -564,6 +559,8 @@ CONTAINS
|
|||
CALL section_vals_retain(xc_section_orig)
|
||||
CALL section_vals_duplicate(xc_section_orig, xc_section_tmp)
|
||||
|
||||
accint = dft_control%qs_control%gapw_control%accurate_xcint
|
||||
|
||||
! [SC] the following code can be traced back to SVN rev. 4296 (git:f97138b) that
|
||||
! has removed the component 'nspins' from the derived type 'dft_control_type'.
|
||||
! Is it worth to remove the code below in favour of 'dft_control%nspins'
|
||||
|
|
@ -652,7 +649,7 @@ CONTAINS
|
|||
CALL xc_rho_set_atom_update(orb_rho_set_s, needs, nspins, bounds)
|
||||
|
||||
ALLOCATE (rho_h(1:na, 1:nr, 1:nspins), rho_s(1:na, 1:nr, 1:nspins))
|
||||
ALLOCATE (weight(1:na, 1:nr))
|
||||
ALLOCATE (weight_h(1:na, 1:nr), weight_s(1:na, 1:nr))
|
||||
ALLOCATE (vxc_LB_h(1:na, 1:nr, 1:nspins), vxc_LB_s(1:na, 1:nr, 1:nspins))
|
||||
ALLOCATE (vxc_GLLB_h(1:na, 1:nr, 1:nspins), vxc_GLLB_s(1:na, 1:nr, 1:nspins))
|
||||
ALLOCATE (vxc_tmp_h(1:na, 1:nr, 1:nspins), vxc_tmp_s(1:na, 1:nr, 1:nspins))
|
||||
|
|
@ -662,6 +659,23 @@ CONTAINS
|
|||
! Distribute the atoms of this kind
|
||||
bo = get_limit(natom, para_env%num_pe, para_env%mepos)
|
||||
|
||||
DO ir = 1, nr
|
||||
DO ia = 1, na
|
||||
weight_h(ia, ir) = atomic_grid%wr(ir)*atomic_grid%wa(ia)
|
||||
END DO
|
||||
IF (accint) THEN
|
||||
alpha = dft_control%qs_control%gapw_control%aw(ikind)
|
||||
agr = 1.0_dp - EXP(-alpha*atomic_grid%rad2(ir))
|
||||
DO ia = 1, na
|
||||
weight_s(ia, ir) = atomic_grid%wr(ir)*atomic_grid%wa(ia)*agr
|
||||
END DO
|
||||
ELSE
|
||||
DO ia = 1, na
|
||||
weight_s(ia, ir) = atomic_grid%wr(ir)*atomic_grid%wa(ia)
|
||||
END DO
|
||||
END IF
|
||||
END DO
|
||||
|
||||
DO iat = 1, natom !bo(1),bo(2)
|
||||
iatom = atom_list(iat)
|
||||
|
||||
|
|
@ -684,11 +698,6 @@ CONTAINS
|
|||
CALL fill_rho_set(rho_set_h, lsd, nspins, needs, rho_h, drho_h, tau, na, ir)
|
||||
CALL fill_rho_set(rho_set_s, lsd, nspins, needs, rho_s, drho_s, tau, na, ir)
|
||||
END DO
|
||||
DO ir = 1, nr
|
||||
DO ia = 1, na
|
||||
weight(ia, ir) = atomic_grid%wr(ir)*atomic_grid%wa(ia)
|
||||
END DO
|
||||
END DO
|
||||
|
||||
!-----------------------------!
|
||||
! 1. Slater exchange for LB94 !
|
||||
|
|
@ -708,10 +717,10 @@ CONTAINS
|
|||
!---------------------!
|
||||
CALL xc_dset_zero_all(deriv_set)
|
||||
CALL vxc_of_r_new(xc_fun_section_tmp, rho_set_h, deriv_set, 1, needs, &
|
||||
weight, lsd, na, nr, exc, vxc_tmp_h, vxg, vtau)
|
||||
weight_h, lsd, na, nr, exc, vxc_tmp_h, vxg, vtau)
|
||||
CALL xc_dset_zero_all(deriv_set)
|
||||
CALL vxc_of_r_new(xc_fun_section_tmp, rho_set_s, deriv_set, 1, needs, &
|
||||
weight, lsd, na, nr, exc, vxc_tmp_s, vxg, vtau)
|
||||
weight_s, lsd, na, nr, exc, vxc_tmp_s, vxg, vtau)
|
||||
|
||||
!-------------------------------------------!
|
||||
! 2. PZ correlation for LB94 and ec_uniform !
|
||||
|
|
@ -726,12 +735,12 @@ CONTAINS
|
|||
!------!
|
||||
CALL xc_dset_zero_all(deriv_set)
|
||||
CALL vxc_of_r_new(xc_fun_section_tmp, rho_set_h, deriv_set, 1, needs, &
|
||||
weight, lsd, na, nr, exc, vxc_LB_h, vxg, vtau)
|
||||
weight_h, lsd, na, nr, exc, vxc_LB_h, vxg, vtau)
|
||||
vxc_LB_h = vxc_LB_h + alpha*vxc_tmp_h
|
||||
DO ispin = 1, nspins
|
||||
dummy => vxc_tmp_h(:, :, ispin:ispin)
|
||||
CALL add_lb_pot(dummy, rho_set_h, lsd, ispin)
|
||||
vxc_LB_h(:, :, ispin) = vxc_LB_h(:, :, ispin) - weight(:, :)*vxc_tmp_h(:, :, ispin)
|
||||
vxc_LB_h(:, :, ispin) = vxc_LB_h(:, :, ispin) - weight_h(:, :)*vxc_tmp_h(:, :, ispin)
|
||||
END DO
|
||||
NULLIFY (dummy)
|
||||
|
||||
|
|
@ -742,7 +751,7 @@ CONTAINS
|
|||
DO ispin = 1, nspins
|
||||
dummy => vxc_GLLB_h(:, :, ispin:ispin)
|
||||
CALL calc_2excpbe(dummy, rho_set_h, e_uniform, lsd)
|
||||
vxc_GLLB_h(:, :, ispin) = vxc_GLLB_h(:, :, ispin)*weight(:, :)
|
||||
vxc_GLLB_h(:, :, ispin) = vxc_GLLB_h(:, :, ispin)*weight_h(:, :)
|
||||
END DO
|
||||
NULLIFY (deriv, dummy, e_uniform)
|
||||
|
||||
|
|
@ -751,13 +760,13 @@ CONTAINS
|
|||
!------!
|
||||
CALL xc_dset_zero_all(deriv_set)
|
||||
CALL vxc_of_r_new(xc_fun_section_tmp, rho_set_s, deriv_set, 1, needs, &
|
||||
weight, lsd, na, nr, exc, vxc_LB_s, vxg, vtau)
|
||||
weight_s, lsd, na, nr, exc, vxc_LB_s, vxg, vtau)
|
||||
|
||||
vxc_LB_s = vxc_LB_s + alpha*vxc_tmp_s
|
||||
DO ispin = 1, nspins
|
||||
dummy => vxc_tmp_s(:, :, ispin:ispin)
|
||||
CALL add_lb_pot(dummy, rho_set_s, lsd, ispin)
|
||||
vxc_LB_s(:, :, ispin) = vxc_LB_s(:, :, ispin) - weight(:, :)*vxc_tmp_s(:, :, ispin)
|
||||
vxc_LB_s(:, :, ispin) = vxc_LB_s(:, :, ispin) - weight_s(:, :)*vxc_tmp_s(:, :, ispin)
|
||||
END DO
|
||||
NULLIFY (dummy)
|
||||
|
||||
|
|
@ -768,7 +777,7 @@ CONTAINS
|
|||
DO ispin = 1, nspins
|
||||
dummy => vxc_GLLB_s(:, :, ispin:ispin)
|
||||
CALL calc_2excpbe(dummy, rho_set_s, e_uniform, lsd)
|
||||
vxc_GLLB_s(:, :, ispin) = vxc_GLLB_s(:, :, ispin)*weight(:, :)
|
||||
vxc_GLLB_s(:, :, ispin) = vxc_GLLB_s(:, :, ispin)*weight_s(:, :)
|
||||
END DO
|
||||
NULLIFY (deriv, dummy, e_uniform)
|
||||
|
||||
|
|
@ -848,16 +857,16 @@ CONTAINS
|
|||
DO ia = 1, na
|
||||
IF (rho_set_h%rhoa(ia, ir, 1) > rho_set_h%rho_cutoff) &
|
||||
vxc_GLLB_h(ia, ir, 1) = vxc_GLLB_h(ia, ir, 1) + &
|
||||
weight(ia, ir)*vxc_tmp_h(ia, ir, 1)/rho_set_h%rhoa(ia, ir, 1)
|
||||
weight_h(ia, ir)*vxc_tmp_h(ia, ir, 1)/rho_set_h%rhoa(ia, ir, 1)
|
||||
IF (rho_set_h%rhob(ia, ir, 1) > rho_set_h%rho_cutoff) &
|
||||
vxc_GLLB_h(ia, ir, 2) = vxc_GLLB_h(ia, ir, 2) + &
|
||||
weight(ia, ir)*vxc_tmp_h(ia, ir, 2)/rho_set_h%rhob(ia, ir, 1)
|
||||
weight_h(ia, ir)*vxc_tmp_h(ia, ir, 2)/rho_set_h%rhob(ia, ir, 1)
|
||||
IF (rho_set_s%rhoa(ia, ir, 1) > rho_set_s%rho_cutoff) &
|
||||
vxc_GLLB_s(ia, ir, 1) = vxc_GLLB_s(ia, ir, 1) + &
|
||||
weight(ia, ir)*vxc_tmp_s(ia, ir, 1)/rho_set_s%rhoa(ia, ir, 1)
|
||||
weight_s(ia, ir)*vxc_tmp_s(ia, ir, 1)/rho_set_s%rhoa(ia, ir, 1)
|
||||
IF (rho_set_s%rhob(ia, ir, 1) > rho_set_s%rho_cutoff) &
|
||||
vxc_GLLB_s(ia, ir, 2) = vxc_GLLB_s(ia, ir, 2) + &
|
||||
weight(ia, ir)*vxc_tmp_s(ia, ir, 2)/rho_set_s%rhob(ia, ir, 1)
|
||||
weight_s(ia, ir)*vxc_tmp_s(ia, ir, 2)/rho_set_s%rhob(ia, ir, 1)
|
||||
END DO
|
||||
END DO
|
||||
ELSE
|
||||
|
|
@ -865,10 +874,10 @@ CONTAINS
|
|||
DO ia = 1, na
|
||||
IF (rho_set_h%rho(ia, ir, 1) > rho_set_h%rho_cutoff) &
|
||||
vxc_GLLB_h(ia, ir, 1) = vxc_GLLB_h(ia, ir, 1) + &
|
||||
weight(ia, ir)*vxc_tmp_h(ia, ir, 1)/rho_set_h%rho(ia, ir, 1)
|
||||
weight_h(ia, ir)*vxc_tmp_h(ia, ir, 1)/rho_set_h%rho(ia, ir, 1)
|
||||
IF (rho_set_s%rho(ia, ir, 1) > rho_set_s%rho_cutoff) &
|
||||
vxc_GLLB_s(ia, ir, 1) = vxc_GLLB_s(ia, ir, 1) + &
|
||||
weight(ia, ir)*vxc_tmp_s(ia, ir, 1)/rho_set_s%rho(ia, ir, 1)
|
||||
weight_s(ia, ir)*vxc_tmp_s(ia, ir, 1)/rho_set_s%rho(ia, ir, 1)
|
||||
END DO
|
||||
END DO
|
||||
END IF
|
||||
|
|
@ -1009,7 +1018,7 @@ CONTAINS
|
|||
|
||||
END DO
|
||||
|
||||
DEALLOCATE (rho_h, rho_s, weight)
|
||||
DEALLOCATE (rho_h, rho_s, weight_h, weight_s)
|
||||
DEALLOCATE (vxc_LB_h, vxc_LB_s)
|
||||
DEALLOCATE (vxc_GLLB_h, vxc_GLLB_s)
|
||||
DEALLOCATE (vxc_tmp_h, vxc_tmp_s)
|
||||
|
|
|
|||
|
|
@ -55,8 +55,6 @@ CONTAINS
|
|||
CALL section_vals_val_get(xc_fun_section, "_SECTION_PARAMETERS_", i_val=myfun)
|
||||
IF (myfun /= xc_none) THEN
|
||||
|
||||
!check if FUNCTIONAL_ROUTINE keyword present
|
||||
|
||||
CALL xc_functionals_expand(xc_fun_section, xc_section)
|
||||
ifun = 0
|
||||
DO
|
||||
|
|
|
|||
46
tests/QS/regtest-acc-1/Ar-1.inp
Normal file
46
tests/QS/regtest-acc-1/Ar-1.inp
Normal file
|
|
@ -0,0 +1,46 @@
|
|||
&GLOBAL
|
||||
PRINT_LEVEL MEDIUM
|
||||
PROJECT "Ar"
|
||||
RUN_TYPE ENERGY_FORCE
|
||||
&END GLOBAL
|
||||
|
||||
&FORCE_EVAL
|
||||
METHOD Quickstep
|
||||
&DFT
|
||||
BASIS_SET_FILE_NAME "BASIS_SET"
|
||||
POTENTIAL_FILE_NAME POTENTIAL
|
||||
&MGRID
|
||||
CUTOFF 200
|
||||
REL_CUTOFF 40
|
||||
&END MGRID
|
||||
&PRINT
|
||||
&DERIVATIVES
|
||||
&END DERIVATIVES
|
||||
&END PRINT
|
||||
&QS
|
||||
FORCE_PAW
|
||||
GAPW_ACCURATE_XCINT T
|
||||
METHOD GAPW
|
||||
&END QS
|
||||
&SCF
|
||||
EPS_SCF 1.0E-8
|
||||
SCF_GUESS atomic
|
||||
&END SCF
|
||||
&XC
|
||||
&XC_FUNCTIONAL Pade
|
||||
&END XC_FUNCTIONAL
|
||||
&END XC
|
||||
&END DFT
|
||||
&SUBSYS
|
||||
&CELL
|
||||
ABC 6.0 6.0 6.0
|
||||
&END CELL
|
||||
&COORD
|
||||
Ar 0.100000 0.120000 0.110000
|
||||
&END COORD
|
||||
&KIND Ar
|
||||
BASIS_SET DZVP-GTH-PADE
|
||||
POTENTIAL GTH-PADE-q8
|
||||
&END KIND
|
||||
&END SUBSYS
|
||||
&END FORCE_EVAL
|
||||
46
tests/QS/regtest-acc-1/Ar-2.inp
Normal file
46
tests/QS/regtest-acc-1/Ar-2.inp
Normal file
|
|
@ -0,0 +1,46 @@
|
|||
&GLOBAL
|
||||
PRINT_LEVEL MEDIUM
|
||||
PROJECT "Ar"
|
||||
RUN_TYPE ENERGY_FORCE
|
||||
&END GLOBAL
|
||||
|
||||
&FORCE_EVAL
|
||||
METHOD Quickstep
|
||||
&DFT
|
||||
BASIS_SET_FILE_NAME BASIS_SET
|
||||
POTENTIAL_FILE_NAME POTENTIAL
|
||||
&MGRID
|
||||
CUTOFF 200
|
||||
REL_CUTOFF 40
|
||||
&END MGRID
|
||||
&PRINT
|
||||
&DERIVATIVES
|
||||
&END DERIVATIVES
|
||||
&END PRINT
|
||||
&QS
|
||||
FORCE_PAW
|
||||
GAPW_ACCURATE_XCINT T
|
||||
METHOD GAPW_XC
|
||||
&END QS
|
||||
&SCF
|
||||
EPS_SCF 1.0E-8
|
||||
SCF_GUESS atomic
|
||||
&END SCF
|
||||
&XC
|
||||
&XC_FUNCTIONAL Pade
|
||||
&END XC_FUNCTIONAL
|
||||
&END XC
|
||||
&END DFT
|
||||
&SUBSYS
|
||||
&CELL
|
||||
ABC 6.0 6.0 6.0
|
||||
&END CELL
|
||||
&COORD
|
||||
Ar 0.100000 0.120000 0.110000
|
||||
&END COORD
|
||||
&KIND Ar
|
||||
BASIS_SET DZVP-GTH-PADE
|
||||
POTENTIAL GTH-PADE-q8
|
||||
&END KIND
|
||||
&END SUBSYS
|
||||
&END FORCE_EVAL
|
||||
46
tests/QS/regtest-acc-1/Ar-3.inp
Normal file
46
tests/QS/regtest-acc-1/Ar-3.inp
Normal file
|
|
@ -0,0 +1,46 @@
|
|||
&GLOBAL
|
||||
PRINT_LEVEL MEDIUM
|
||||
PROJECT "Ar"
|
||||
RUN_TYPE ENERGY_FORCE
|
||||
&END GLOBAL
|
||||
|
||||
&FORCE_EVAL
|
||||
METHOD Quickstep
|
||||
&DFT
|
||||
BASIS_SET_FILE_NAME BASIS_SET
|
||||
POTENTIAL_FILE_NAME POTENTIAL
|
||||
&MGRID
|
||||
CUTOFF 200
|
||||
REL_CUTOFF 40
|
||||
&END MGRID
|
||||
&PRINT
|
||||
&DERIVATIVES
|
||||
&END DERIVATIVES
|
||||
&END PRINT
|
||||
&QS
|
||||
FORCE_PAW
|
||||
GAPW_ACCURATE_XCINT T
|
||||
METHOD GAPW
|
||||
&END QS
|
||||
&SCF
|
||||
EPS_SCF 1.0E-8
|
||||
SCF_GUESS atomic
|
||||
&END SCF
|
||||
&XC
|
||||
&XC_FUNCTIONAL PBE
|
||||
&END XC_FUNCTIONAL
|
||||
&END XC
|
||||
&END DFT
|
||||
&SUBSYS
|
||||
&CELL
|
||||
ABC 6.0 6.0 6.0
|
||||
&END CELL
|
||||
&COORD
|
||||
Ar 0.100000 0.120000 0.110000
|
||||
&END COORD
|
||||
&KIND Ar
|
||||
BASIS_SET DZVP-GTH-PADE
|
||||
POTENTIAL GTH-PADE-q8
|
||||
&END KIND
|
||||
&END SUBSYS
|
||||
&END FORCE_EVAL
|
||||
46
tests/QS/regtest-acc-1/Ar-4.inp
Normal file
46
tests/QS/regtest-acc-1/Ar-4.inp
Normal file
|
|
@ -0,0 +1,46 @@
|
|||
&GLOBAL
|
||||
PRINT_LEVEL MEDIUM
|
||||
PROJECT "Ar"
|
||||
RUN_TYPE ENERGY_FORCE
|
||||
&END GLOBAL
|
||||
|
||||
&FORCE_EVAL
|
||||
METHOD Quickstep
|
||||
&DFT
|
||||
BASIS_SET_FILE_NAME BASIS_SET
|
||||
POTENTIAL_FILE_NAME POTENTIAL
|
||||
&MGRID
|
||||
CUTOFF 200
|
||||
REL_CUTOFF 40
|
||||
&END MGRID
|
||||
&PRINT
|
||||
&DERIVATIVES
|
||||
&END DERIVATIVES
|
||||
&END PRINT
|
||||
&QS
|
||||
FORCE_PAW
|
||||
GAPW_ACCURATE_XCINT T
|
||||
METHOD GAPW_XC
|
||||
&END QS
|
||||
&SCF
|
||||
EPS_SCF 1.0E-8
|
||||
SCF_GUESS atomic
|
||||
&END SCF
|
||||
&XC
|
||||
&XC_FUNCTIONAL PBE
|
||||
&END XC_FUNCTIONAL
|
||||
&END XC
|
||||
&END DFT
|
||||
&SUBSYS
|
||||
&CELL
|
||||
ABC 6.0 6.0 6.0
|
||||
&END CELL
|
||||
&COORD
|
||||
Ar 0.100000 0.120000 0.110000
|
||||
&END COORD
|
||||
&KIND Ar
|
||||
BASIS_SET DZVP-GTH-PADE
|
||||
POTENTIAL GTH-PADE-q8
|
||||
&END KIND
|
||||
&END SUBSYS
|
||||
&END FORCE_EVAL
|
||||
61
tests/QS/regtest-acc-1/F2.inp
Normal file
61
tests/QS/regtest-acc-1/F2.inp
Normal file
|
|
@ -0,0 +1,61 @@
|
|||
&GLOBAL
|
||||
PRINT_LEVEL MEDIUM
|
||||
PROJECT F2
|
||||
RUN_TYPE DEBUG
|
||||
&END GLOBAL
|
||||
|
||||
&DEBUG
|
||||
CHECK_ATOM_FORCE 1 z
|
||||
CHECK_ATOM_FORCE 2 z
|
||||
DE 0.0002
|
||||
DEBUG_FORCES .TRUE.
|
||||
DEBUG_STRESS_TENSOR .FALSE.
|
||||
STOP_ON_MISMATCH F
|
||||
&END DEBUG
|
||||
|
||||
&FORCE_EVAL
|
||||
METHOD Quickstep
|
||||
&DFT
|
||||
BASIS_SET_FILE_NAME "BASIS_SET"
|
||||
POTENTIAL_FILE_NAME POTENTIAL
|
||||
&MGRID
|
||||
CUTOFF 240
|
||||
REL_CUTOFF 50
|
||||
&END MGRID
|
||||
&POISSON
|
||||
PERIODIC NONE
|
||||
POISSON_SOLVER MT
|
||||
&END POISSON
|
||||
&QS
|
||||
ALPHA_WEIGHTS 6.0
|
||||
GAPW_ACCURATE_XCINT T
|
||||
METHOD GAPW
|
||||
&END QS
|
||||
&SCF
|
||||
EPS_SCF 1.0E-7
|
||||
SCF_GUESS ATOMIC
|
||||
&OT
|
||||
MINIMIZER DIIS
|
||||
PRECONDITIONER FULL_ALL
|
||||
&END OT
|
||||
&END SCF
|
||||
&XC
|
||||
&XC_FUNCTIONAL PADE
|
||||
&END XC_FUNCTIONAL
|
||||
&END XC
|
||||
&END DFT
|
||||
&SUBSYS
|
||||
&CELL
|
||||
ABC 5.0 5.0 5.0
|
||||
PERIODIC NONE
|
||||
&END CELL
|
||||
&COORD
|
||||
F 0.000000 0.000000 0.530000
|
||||
F 0.000000 0.000000 -0.510000
|
||||
&END COORD
|
||||
&KIND F
|
||||
BASIS_SET DZVP-GTH-PADE
|
||||
POTENTIAL GTH-PADE-q7
|
||||
&END KIND
|
||||
&END SUBSYS
|
||||
&END FORCE_EVAL
|
||||
67
tests/QS/regtest-acc-1/HF-1.inp
Normal file
67
tests/QS/regtest-acc-1/HF-1.inp
Normal file
|
|
@ -0,0 +1,67 @@
|
|||
&GLOBAL
|
||||
PRINT_LEVEL MEDIUM
|
||||
PROJECT HF
|
||||
RUN_TYPE ENERGY_FORCE
|
||||
&END GLOBAL
|
||||
|
||||
&FORCE_EVAL
|
||||
METHOD Quickstep
|
||||
&DFT
|
||||
BASIS_SET_FILE_NAME BASIS_MOLOPT_UZH
|
||||
POTENTIAL_FILE_NAME POTENTIAL_UZH
|
||||
&MGRID
|
||||
CUTOFF 240
|
||||
REL_CUTOFF 40
|
||||
&END MGRID
|
||||
&POISSON
|
||||
PERIODIC NONE
|
||||
POISSON_SOLVER MT
|
||||
&END POISSON
|
||||
&QS
|
||||
ALPHA_WEIGHTS 6.0
|
||||
EPSFIT 1.E-4
|
||||
EPSISO 1.E-12
|
||||
EPSRHO0 1.E-6
|
||||
EPS_DEFAULT 1.E-12
|
||||
FORCE_PAW
|
||||
GAPW_1C_BASIS EXT_SMALL
|
||||
GAPW_ACCURATE_XCINT T
|
||||
LMAXN0 4
|
||||
METHOD GAPW
|
||||
&END QS
|
||||
&SCF
|
||||
EPS_SCF 1.0E-7
|
||||
SCF_GUESS atomic
|
||||
&OT
|
||||
MINIMIZER DIIS
|
||||
PRECONDITIONER FULL_ALL
|
||||
&END OT
|
||||
&END SCF
|
||||
&XC
|
||||
&XC_FUNCTIONAL PBE
|
||||
&END XC_FUNCTIONAL
|
||||
&END XC
|
||||
&END DFT
|
||||
&PRINT
|
||||
&FORCES
|
||||
&END FORCES
|
||||
&END PRINT
|
||||
&SUBSYS
|
||||
&CELL
|
||||
ABC 6.0 6.0 6.0
|
||||
PERIODIC NONE
|
||||
&END CELL
|
||||
&COORD
|
||||
H 0.000000 0.000000 0.470000
|
||||
F 0.000000 0.000000 -0.510000
|
||||
&END COORD
|
||||
&KIND H
|
||||
BASIS_SET TZVPP-MOLOPT-GGA-ae
|
||||
POTENTIAL ALL
|
||||
&END KIND
|
||||
&KIND F
|
||||
BASIS_SET TZVPP-MOLOPT-GGA-ae
|
||||
POTENTIAL ALL
|
||||
&END KIND
|
||||
&END SUBSYS
|
||||
&END FORCE_EVAL
|
||||
67
tests/QS/regtest-acc-1/HF-2.inp
Normal file
67
tests/QS/regtest-acc-1/HF-2.inp
Normal file
|
|
@ -0,0 +1,67 @@
|
|||
&GLOBAL
|
||||
PRINT_LEVEL MEDIUM
|
||||
PROJECT HF
|
||||
RUN_TYPE ENERGY_FORCE
|
||||
&END GLOBAL
|
||||
|
||||
&FORCE_EVAL
|
||||
METHOD Quickstep
|
||||
&DFT
|
||||
BASIS_SET_FILE_NAME BASIS_MOLOPT_UZH
|
||||
POTENTIAL_FILE_NAME POTENTIAL_UZH
|
||||
&MGRID
|
||||
CUTOFF 240
|
||||
REL_CUTOFF 40
|
||||
&END MGRID
|
||||
&POISSON
|
||||
PERIODIC NONE
|
||||
POISSON_SOLVER MT
|
||||
&END POISSON
|
||||
&QS
|
||||
ALPHA_WEIGHTS 6.0
|
||||
EPSFIT 1.E-4
|
||||
EPSISO 1.E-12
|
||||
EPSRHO0 1.E-6
|
||||
EPS_DEFAULT 1.E-12
|
||||
FORCE_PAW
|
||||
GAPW_1C_BASIS EXT_SMALL
|
||||
GAPW_ACCURATE_XCINT T
|
||||
LMAXN0 4
|
||||
METHOD GAPW
|
||||
&END QS
|
||||
&SCF
|
||||
EPS_SCF 1.0E-7
|
||||
SCF_GUESS atomic
|
||||
&OT
|
||||
MINIMIZER DIIS
|
||||
PRECONDITIONER FULL_ALL
|
||||
&END OT
|
||||
&END SCF
|
||||
&XC
|
||||
&XC_FUNCTIONAL PBE0
|
||||
&END XC_FUNCTIONAL
|
||||
&END XC
|
||||
&END DFT
|
||||
&PRINT
|
||||
&FORCES
|
||||
&END FORCES
|
||||
&END PRINT
|
||||
&SUBSYS
|
||||
&CELL
|
||||
ABC 6.0 6.0 6.0
|
||||
PERIODIC NONE
|
||||
&END CELL
|
||||
&COORD
|
||||
H 0.000000 0.000000 0.470000
|
||||
F 0.000000 0.000000 -0.510000
|
||||
&END COORD
|
||||
&KIND H
|
||||
BASIS_SET SVP-MOLOPT-GGA-ae
|
||||
POTENTIAL ALL
|
||||
&END KIND
|
||||
&KIND F
|
||||
BASIS_SET SVP-MOLOPT-GGA-ae
|
||||
POTENTIAL ALL
|
||||
&END KIND
|
||||
&END SUBSYS
|
||||
&END FORCE_EVAL
|
||||
70
tests/QS/regtest-acc-1/HF-3.inp
Normal file
70
tests/QS/regtest-acc-1/HF-3.inp
Normal file
|
|
@ -0,0 +1,70 @@
|
|||
&GLOBAL
|
||||
PRINT_LEVEL MEDIUM
|
||||
PROJECT HF
|
||||
RUN_TYPE ENERGY_FORCE
|
||||
&END GLOBAL
|
||||
|
||||
&FORCE_EVAL
|
||||
METHOD Quickstep
|
||||
&DFT
|
||||
BASIS_SET_FILE_NAME BASIS_MOLOPT_UZH
|
||||
POTENTIAL_FILE_NAME POTENTIAL_UZH
|
||||
&MGRID
|
||||
CUTOFF 240
|
||||
REL_CUTOFF 40
|
||||
&END MGRID
|
||||
&POISSON
|
||||
PERIODIC NONE
|
||||
POISSON_SOLVER MT
|
||||
&END POISSON
|
||||
&QS
|
||||
ALPHA_WEIGHTS 6.0
|
||||
EPSFIT 1.E-4
|
||||
EPSISO 1.E-12
|
||||
EPSRHO0 1.E-6
|
||||
EPS_DEFAULT 1.E-12
|
||||
FORCE_PAW
|
||||
GAPW_1C_BASIS EXT_SMALL
|
||||
GAPW_ACCURATE_XCINT T
|
||||
LMAXN0 4
|
||||
METHOD GAPW
|
||||
&END QS
|
||||
&SCF
|
||||
EPS_SCF 1.0E-7
|
||||
SCF_GUESS atomic
|
||||
&OT
|
||||
MINIMIZER DIIS
|
||||
PRECONDITIONER FULL_ALL
|
||||
&END OT
|
||||
&END SCF
|
||||
&XC
|
||||
&XC_FUNCTIONAL PBE
|
||||
&END XC_FUNCTIONAL
|
||||
&XC_GRID
|
||||
XC_DERIV NN50_SMOOTH
|
||||
&END XC_GRID
|
||||
&END XC
|
||||
&END DFT
|
||||
&PRINT
|
||||
&FORCES
|
||||
&END FORCES
|
||||
&END PRINT
|
||||
&SUBSYS
|
||||
&CELL
|
||||
ABC 6.0 6.0 6.0
|
||||
PERIODIC NONE
|
||||
&END CELL
|
||||
&COORD
|
||||
H 0.000000 0.000000 0.470000
|
||||
F 0.000000 0.000000 -0.510000
|
||||
&END COORD
|
||||
&KIND H
|
||||
BASIS_SET TZVPP-MOLOPT-GGA-ae
|
||||
POTENTIAL ALL
|
||||
&END KIND
|
||||
&KIND F
|
||||
BASIS_SET TZVPP-MOLOPT-GGA-ae
|
||||
POTENTIAL ALL
|
||||
&END KIND
|
||||
&END SUBSYS
|
||||
&END FORCE_EVAL
|
||||
61
tests/QS/regtest-acc-1/HF-4.inp
Normal file
61
tests/QS/regtest-acc-1/HF-4.inp
Normal file
|
|
@ -0,0 +1,61 @@
|
|||
&GLOBAL
|
||||
PRINT_LEVEL MEDIUM
|
||||
PROJECT HF
|
||||
RUN_TYPE ENERGY_FORCE
|
||||
&END GLOBAL
|
||||
|
||||
&FORCE_EVAL
|
||||
METHOD Quickstep
|
||||
&DFT
|
||||
BASIS_SET_FILE_NAME BASIS_MOLOPT_UZH
|
||||
POTENTIAL_FILE_NAME POTENTIAL_UZH
|
||||
&MGRID
|
||||
CUTOFF 240
|
||||
REL_CUTOFF 40
|
||||
&END MGRID
|
||||
&POISSON
|
||||
PERIODIC NONE
|
||||
POISSON_SOLVER MT
|
||||
&END POISSON
|
||||
&QS
|
||||
ALPHA_WEIGHTS 6.0
|
||||
GAPW_1C_BASIS EXT_SMALL
|
||||
GAPW_ACCURATE_XCINT T
|
||||
METHOD GAPW
|
||||
&END QS
|
||||
&SCF
|
||||
EPS_SCF 1.0E-7
|
||||
SCF_GUESS atomic
|
||||
&OT
|
||||
MINIMIZER DIIS
|
||||
PRECONDITIONER FULL_ALL
|
||||
&END OT
|
||||
&END SCF
|
||||
&XC
|
||||
&XC_FUNCTIONAL TPSS
|
||||
&END XC_FUNCTIONAL
|
||||
&END XC
|
||||
&END DFT
|
||||
&PRINT
|
||||
&FORCES
|
||||
&END FORCES
|
||||
&END PRINT
|
||||
&SUBSYS
|
||||
&CELL
|
||||
ABC 4.0 4.0 4.0
|
||||
PERIODIC NONE
|
||||
&END CELL
|
||||
&COORD
|
||||
H 0.000000 0.000000 0.470000
|
||||
F 0.000000 0.000000 -0.510000
|
||||
&END COORD
|
||||
&KIND H
|
||||
BASIS_SET SVP-MOLOPT-GGA-ae
|
||||
POTENTIAL ALL
|
||||
&END KIND
|
||||
&KIND F
|
||||
BASIS_SET SVP-MOLOPT-GGA-ae
|
||||
POTENTIAL ALL
|
||||
&END KIND
|
||||
&END SUBSYS
|
||||
&END FORCE_EVAL
|
||||
70
tests/QS/regtest-acc-1/HF-5.inp
Normal file
70
tests/QS/regtest-acc-1/HF-5.inp
Normal file
|
|
@ -0,0 +1,70 @@
|
|||
&GLOBAL
|
||||
PRINT_LEVEL MEDIUM
|
||||
PROJECT HF
|
||||
RUN_TYPE ENERGY_FORCE
|
||||
&END GLOBAL
|
||||
|
||||
&FORCE_EVAL
|
||||
METHOD Quickstep
|
||||
&DFT
|
||||
BASIS_SET_FILE_NAME BASIS_MOLOPT_UZH
|
||||
BASIS_SET_FILE_NAME BASIS_ADMM_ae
|
||||
POTENTIAL_FILE_NAME POTENTIAL_UZH
|
||||
&AUXILIARY_DENSITY_MATRIX_METHOD
|
||||
ADMM_PURIFICATION_METHOD NONE
|
||||
EXCH_CORRECTION_FUNC PBEX
|
||||
EXCH_SCALING_MODEL NONE
|
||||
METHOD BASIS_PROJECTION
|
||||
&END AUXILIARY_DENSITY_MATRIX_METHOD
|
||||
&MGRID
|
||||
CUTOFF 240
|
||||
REL_CUTOFF 40
|
||||
&END MGRID
|
||||
&POISSON
|
||||
PERIODIC NONE
|
||||
POISSON_SOLVER MT
|
||||
&END POISSON
|
||||
&QS
|
||||
ALPHA_WEIGHTS 6.0
|
||||
GAPW_1C_BASIS EXT_SMALL
|
||||
GAPW_ACCURATE_XCINT T
|
||||
METHOD GAPW
|
||||
&END QS
|
||||
&SCF
|
||||
EPS_SCF 1.0E-7
|
||||
SCF_GUESS atomic
|
||||
&OT
|
||||
MINIMIZER DIIS
|
||||
PRECONDITIONER FULL_ALL
|
||||
&END OT
|
||||
&END SCF
|
||||
&XC
|
||||
&XC_FUNCTIONAL PBE0
|
||||
&END XC_FUNCTIONAL
|
||||
&END XC
|
||||
&END DFT
|
||||
&PRINT
|
||||
&FORCES
|
||||
&END FORCES
|
||||
&END PRINT
|
||||
&SUBSYS
|
||||
&CELL
|
||||
ABC 4.0 4.0 4.0
|
||||
PERIODIC NONE
|
||||
&END CELL
|
||||
&COORD
|
||||
H 0.000000 0.000000 0.470000
|
||||
F 0.000000 0.000000 -0.510000
|
||||
&END COORD
|
||||
&KIND H
|
||||
BASIS_SET ORB SVP-MOLOPT-GGA-ae
|
||||
BASIS_SET AUX_FIT admm-1
|
||||
POTENTIAL ALL
|
||||
&END KIND
|
||||
&KIND F
|
||||
BASIS_SET SVP-MOLOPT-GGA-ae
|
||||
BASIS_SET AUX_FIT admm-1
|
||||
POTENTIAL ALL
|
||||
&END KIND
|
||||
&END SUBSYS
|
||||
&END FORCE_EVAL
|
||||
81
tests/QS/regtest-acc-1/HF-d1.inp
Normal file
81
tests/QS/regtest-acc-1/HF-d1.inp
Normal file
|
|
@ -0,0 +1,81 @@
|
|||
&GLOBAL
|
||||
PRINT_LEVEL MEDIUM
|
||||
PROJECT HF
|
||||
RUN_TYPE DEBUG
|
||||
&END GLOBAL
|
||||
|
||||
&DEBUG
|
||||
CHECK_DIPOLE_DIRS Z
|
||||
DE 0.001
|
||||
DEBUG_DIPOLE .TRUE.
|
||||
DEBUG_FORCES .FALSE.
|
||||
DEBUG_POLARIZABILITY .FALSE.
|
||||
DEBUG_STRESS_TENSOR .FALSE.
|
||||
STOP_ON_MISMATCH T
|
||||
&END DEBUG
|
||||
|
||||
&FORCE_EVAL
|
||||
METHOD Quickstep
|
||||
&DFT
|
||||
BASIS_SET_FILE_NAME BASIS_MOLOPT_UZH
|
||||
POTENTIAL_FILE_NAME POTENTIAL_UZH
|
||||
&EFIELD
|
||||
&END EFIELD
|
||||
&MGRID
|
||||
CUTOFF 240
|
||||
REL_CUTOFF 40
|
||||
&END MGRID
|
||||
&POISSON
|
||||
PERIODIC NONE
|
||||
POISSON_SOLVER MT
|
||||
&END POISSON
|
||||
&PRINT
|
||||
&MOMENTS ON
|
||||
PERIODIC .FALSE.
|
||||
REFERENCE COM
|
||||
&END MOMENTS
|
||||
&END PRINT
|
||||
&QS
|
||||
ALPHA_WEIGHTS 6.0
|
||||
EPSFIT 1.E-4
|
||||
EPSISO 1.E-12
|
||||
EPSRHO0 1.E-6
|
||||
EPS_DEFAULT 1.E-12
|
||||
FORCE_PAW
|
||||
GAPW_1C_BASIS EXT_SMALL
|
||||
GAPW_ACCURATE_XCINT T
|
||||
LMAXN0 4
|
||||
METHOD GAPW
|
||||
&END QS
|
||||
&SCF
|
||||
EPS_SCF 1.0E-7
|
||||
SCF_GUESS atomic
|
||||
&OT
|
||||
MINIMIZER DIIS
|
||||
PRECONDITIONER FULL_ALL
|
||||
&END OT
|
||||
&END SCF
|
||||
&XC
|
||||
&XC_FUNCTIONAL PBE
|
||||
&END XC_FUNCTIONAL
|
||||
&END XC
|
||||
&END DFT
|
||||
&SUBSYS
|
||||
&CELL
|
||||
ABC 4.0 4.0 4.0
|
||||
PERIODIC NONE
|
||||
&END CELL
|
||||
&COORD
|
||||
H 0.000000 0.000000 0.470000
|
||||
F 0.000000 0.000000 -0.510000
|
||||
&END COORD
|
||||
&KIND H
|
||||
BASIS_SET SVP-MOLOPT-GGA-ae
|
||||
POTENTIAL ALL
|
||||
&END KIND
|
||||
&KIND F
|
||||
BASIS_SET SVP-MOLOPT-GGA-ae
|
||||
POTENTIAL ALL
|
||||
&END KIND
|
||||
&END SUBSYS
|
||||
&END FORCE_EVAL
|
||||
74
tests/QS/regtest-acc-1/HF-d2.inp
Normal file
74
tests/QS/regtest-acc-1/HF-d2.inp
Normal file
|
|
@ -0,0 +1,74 @@
|
|||
&GLOBAL
|
||||
PRINT_LEVEL MEDIUM
|
||||
PROJECT HF
|
||||
RUN_TYPE DEBUG
|
||||
&END GLOBAL
|
||||
|
||||
&DEBUG
|
||||
CHECK_ATOM_FORCE 1 z
|
||||
DE 0.0002
|
||||
DEBUG_FORCES .TRUE.
|
||||
DEBUG_STRESS_TENSOR .FALSE.
|
||||
STOP_ON_MISMATCH T
|
||||
&END DEBUG
|
||||
|
||||
&FORCE_EVAL
|
||||
METHOD Quickstep
|
||||
&DFT
|
||||
BASIS_SET_FILE_NAME BASIS_MOLOPT_UZH
|
||||
POTENTIAL_FILE_NAME POTENTIAL_UZH
|
||||
&MGRID
|
||||
CUTOFF 240
|
||||
REL_CUTOFF 40
|
||||
&END MGRID
|
||||
&POISSON
|
||||
PERIODIC NONE
|
||||
POISSON_SOLVER MT
|
||||
&END POISSON
|
||||
&PRINT
|
||||
&MOMENTS ON
|
||||
PERIODIC .FALSE.
|
||||
REFERENCE COM
|
||||
&END MOMENTS
|
||||
&END PRINT
|
||||
&QS
|
||||
ALPHA_WEIGHTS 6.0
|
||||
GAPW_ACCURATE_XCINT T
|
||||
METHOD GAPW
|
||||
&END QS
|
||||
&SCF
|
||||
EPS_SCF 1.0E-7
|
||||
SCF_GUESS atomic
|
||||
&OT
|
||||
MINIMIZER DIIS
|
||||
PRECONDITIONER FULL_ALL
|
||||
&END OT
|
||||
&END SCF
|
||||
&XC
|
||||
&XC_FUNCTIONAL TPSS
|
||||
&END XC_FUNCTIONAL
|
||||
&END XC
|
||||
&END DFT
|
||||
&PRINT
|
||||
&FORCES
|
||||
&END FORCES
|
||||
&END PRINT
|
||||
&SUBSYS
|
||||
&CELL
|
||||
ABC 5.0 5.0 5.0
|
||||
PERIODIC NONE
|
||||
&END CELL
|
||||
&COORD
|
||||
H 0.000000 0.000000 0.470000
|
||||
F 0.000000 0.000000 -0.510000
|
||||
&END COORD
|
||||
&KIND H
|
||||
BASIS_SET SVP-MOLOPT-GGA-ae
|
||||
POTENTIAL ALL
|
||||
&END KIND
|
||||
&KIND F
|
||||
BASIS_SET SVP-MOLOPT-GGA-ae
|
||||
POTENTIAL ALL
|
||||
&END KIND
|
||||
&END SUBSYS
|
||||
&END FORCE_EVAL
|
||||
75
tests/QS/regtest-acc-1/HF-d3.inp
Normal file
75
tests/QS/regtest-acc-1/HF-d3.inp
Normal file
|
|
@ -0,0 +1,75 @@
|
|||
&GLOBAL
|
||||
PRINT_LEVEL LOW
|
||||
PROJECT HF
|
||||
RUN_TYPE DEBUG
|
||||
&END GLOBAL
|
||||
|
||||
&DEBUG
|
||||
CHECK_ATOM_FORCE 2 z
|
||||
DE 0.0002
|
||||
DEBUG_FORCES .TRUE.
|
||||
DEBUG_STRESS_TENSOR .FALSE.
|
||||
STOP_ON_MISMATCH T
|
||||
&END DEBUG
|
||||
|
||||
&FORCE_EVAL
|
||||
METHOD Quickstep
|
||||
&DFT
|
||||
BASIS_SET_FILE_NAME BASIS_MOLOPT_UZH
|
||||
POTENTIAL_FILE_NAME POTENTIAL_UZH
|
||||
&MGRID
|
||||
CUTOFF 240
|
||||
REL_CUTOFF 40
|
||||
&END MGRID
|
||||
&POISSON
|
||||
PERIODIC NONE
|
||||
POISSON_SOLVER MT
|
||||
&END POISSON
|
||||
&QS
|
||||
ALPHA_WEIGHTS 6.0
|
||||
EPSFIT 1.E-4
|
||||
EPSISO 1.E-12
|
||||
EPSRHO0 1.E-6
|
||||
EPS_DEFAULT 1.E-12
|
||||
FORCE_PAW
|
||||
GAPW_1C_BASIS EXT_SMALL
|
||||
GAPW_ACCURATE_XCINT T
|
||||
LMAXN0 4
|
||||
METHOD GAPW
|
||||
&END QS
|
||||
&SCF
|
||||
EPS_SCF 1.0E-6
|
||||
SCF_GUESS atomic
|
||||
&OT
|
||||
MINIMIZER DIIS
|
||||
PRECONDITIONER FULL_ALL
|
||||
&END OT
|
||||
&END SCF
|
||||
&XC
|
||||
&XC_FUNCTIONAL PBE
|
||||
&END XC_FUNCTIONAL
|
||||
&END XC
|
||||
&END DFT
|
||||
&PRINT
|
||||
&FORCES
|
||||
&END FORCES
|
||||
&END PRINT
|
||||
&SUBSYS
|
||||
&CELL
|
||||
ABC 4.0 4.0 4.0
|
||||
PERIODIC NONE
|
||||
&END CELL
|
||||
&COORD
|
||||
H 0.000000 0.000000 0.470000
|
||||
F 0.000000 0.000000 -0.510000
|
||||
&END COORD
|
||||
&KIND H
|
||||
BASIS_SET SVP-MOLOPT-GGA-ae
|
||||
POTENTIAL ALL
|
||||
&END KIND
|
||||
&KIND F
|
||||
BASIS_SET SVP-MOLOPT-GGA-ae
|
||||
POTENTIAL ALL
|
||||
&END KIND
|
||||
&END SUBSYS
|
||||
&END FORCE_EVAL
|
||||
77
tests/QS/regtest-acc-1/HF-d4.inp
Normal file
77
tests/QS/regtest-acc-1/HF-d4.inp
Normal file
|
|
@ -0,0 +1,77 @@
|
|||
&GLOBAL
|
||||
PRINT_LEVEL MEDIUM
|
||||
PROJECT HF
|
||||
RUN_TYPE DEBUG
|
||||
&END GLOBAL
|
||||
|
||||
&DEBUG
|
||||
CHECK_ATOM_FORCE 1 z
|
||||
DE 0.0002
|
||||
DEBUG_FORCES .TRUE.
|
||||
DEBUG_STRESS_TENSOR .FALSE.
|
||||
STOP_ON_MISMATCH T
|
||||
&END DEBUG
|
||||
|
||||
&FORCE_EVAL
|
||||
METHOD Quickstep
|
||||
&DFT
|
||||
BASIS_SET_FILE_NAME BASIS_MOLOPT_UZH
|
||||
BASIS_SET_FILE_NAME BASIS_ADMM_ae
|
||||
POTENTIAL_FILE_NAME POTENTIAL_UZH
|
||||
&AUXILIARY_DENSITY_MATRIX_METHOD
|
||||
ADMM_PURIFICATION_METHOD NONE
|
||||
EXCH_CORRECTION_FUNC NONE
|
||||
EXCH_SCALING_MODEL NONE
|
||||
METHOD BASIS_PROJECTION
|
||||
&END AUXILIARY_DENSITY_MATRIX_METHOD
|
||||
&MGRID
|
||||
CUTOFF 240
|
||||
REL_CUTOFF 40
|
||||
&END MGRID
|
||||
&POISSON
|
||||
PERIODIC NONE
|
||||
POISSON_SOLVER MT
|
||||
&END POISSON
|
||||
&QS
|
||||
ALPHA_WEIGHTS 6.0
|
||||
GAPW_ACCURATE_XCINT T
|
||||
METHOD GAPW
|
||||
&END QS
|
||||
&SCF
|
||||
EPS_SCF 1.0E-7
|
||||
SCF_GUESS atomic
|
||||
&OT
|
||||
MINIMIZER DIIS
|
||||
PRECONDITIONER FULL_ALL
|
||||
&END OT
|
||||
&END SCF
|
||||
&XC
|
||||
&XC_FUNCTIONAL PBE0
|
||||
&END XC_FUNCTIONAL
|
||||
&END XC
|
||||
&END DFT
|
||||
&PRINT
|
||||
&FORCES
|
||||
&END FORCES
|
||||
&END PRINT
|
||||
&SUBSYS
|
||||
&CELL
|
||||
ABC 5.0 5.0 5.0
|
||||
PERIODIC NONE
|
||||
&END CELL
|
||||
&COORD
|
||||
H 0.000000 0.000000 0.470000
|
||||
F 0.000000 0.000000 -0.510000
|
||||
&END COORD
|
||||
&KIND H
|
||||
BASIS_SET ORB SVP-MOLOPT-GGA-ae
|
||||
BASIS_SET AUX_FIT admm-1
|
||||
POTENTIAL ALL
|
||||
&END KIND
|
||||
&KIND F
|
||||
BASIS_SET ORB SVP-MOLOPT-GGA-ae
|
||||
BASIS_SET AUX_FIT admm-1
|
||||
POTENTIAL ALL
|
||||
&END KIND
|
||||
&END SUBSYS
|
||||
&END FORCE_EVAL
|
||||
82
tests/QS/regtest-acc-1/HF-d5.inp
Normal file
82
tests/QS/regtest-acc-1/HF-d5.inp
Normal file
|
|
@ -0,0 +1,82 @@
|
|||
&GLOBAL
|
||||
PRINT_LEVEL MEDIUM
|
||||
PROJECT HF
|
||||
RUN_TYPE DEBUG
|
||||
&END GLOBAL
|
||||
|
||||
&DEBUG
|
||||
CHECK_ATOM_FORCE 1 z
|
||||
DE 0.0002
|
||||
DEBUG_FORCES .TRUE.
|
||||
DEBUG_STRESS_TENSOR .FALSE.
|
||||
STOP_ON_MISMATCH T
|
||||
&END DEBUG
|
||||
|
||||
&FORCE_EVAL
|
||||
METHOD Quickstep
|
||||
&DFT
|
||||
BASIS_SET_FILE_NAME BASIS_MOLOPT_UZH
|
||||
BASIS_SET_FILE_NAME BASIS_ADMM
|
||||
POTENTIAL_FILE_NAME POTENTIAL_UZH
|
||||
&AUXILIARY_DENSITY_MATRIX_METHOD
|
||||
ADMM_PURIFICATION_METHOD NONE
|
||||
EXCH_CORRECTION_FUNC PBEX
|
||||
EXCH_SCALING_MODEL NONE
|
||||
METHOD BASIS_PROJECTION
|
||||
&END AUXILIARY_DENSITY_MATRIX_METHOD
|
||||
&MGRID
|
||||
CUTOFF 240
|
||||
REL_CUTOFF 40
|
||||
&END MGRID
|
||||
&POISSON
|
||||
PERIODIC NONE
|
||||
POISSON_SOLVER MT
|
||||
&END POISSON
|
||||
&QS
|
||||
ALPHA_WEIGHTS 6.0
|
||||
GAPW_ACCURATE_XCINT T
|
||||
METHOD GAPW
|
||||
&END QS
|
||||
&SCF
|
||||
EPS_SCF 1.0E-7
|
||||
MAX_SCF 10
|
||||
SCF_GUESS atomic
|
||||
&OT
|
||||
MINIMIZER DIIS
|
||||
PRECONDITIONER FULL_ALL
|
||||
&END OT
|
||||
&OUTER_SCF
|
||||
EPS_SCF 1.0E-7
|
||||
MAX_SCF 10
|
||||
&END OUTER_SCF
|
||||
&END SCF
|
||||
&XC
|
||||
&XC_FUNCTIONAL PBE0
|
||||
&END XC_FUNCTIONAL
|
||||
&END XC
|
||||
&END DFT
|
||||
&PRINT
|
||||
&FORCES
|
||||
&END FORCES
|
||||
&END PRINT
|
||||
&SUBSYS
|
||||
&CELL
|
||||
ABC 5.0 5.0 5.0
|
||||
PERIODIC NONE
|
||||
&END CELL
|
||||
&COORD
|
||||
H 0.000000 0.000000 0.470000
|
||||
F 0.000000 0.000000 -0.510000
|
||||
&END COORD
|
||||
&KIND H
|
||||
BASIS_SET ORB DZVP-MOLOPT-GGA-GTH-q1
|
||||
BASIS_SET AUX_FIT pfit3
|
||||
POTENTIAL GTH-GGA-q1
|
||||
&END KIND
|
||||
&KIND F
|
||||
BASIS_SET ORB DZVP-MOLOPT-GGA-GTH-q7
|
||||
BASIS_SET AUX_FIT pfit3
|
||||
POTENTIAL GTH-GGA-q7
|
||||
&END KIND
|
||||
&END SUBSYS
|
||||
&END FORCE_EVAL
|
||||
77
tests/QS/regtest-acc-1/HF-d6.inp
Normal file
77
tests/QS/regtest-acc-1/HF-d6.inp
Normal file
|
|
@ -0,0 +1,77 @@
|
|||
&GLOBAL
|
||||
PRINT_LEVEL MEDIUM
|
||||
PROJECT HF
|
||||
RUN_TYPE DEBUG
|
||||
&END GLOBAL
|
||||
|
||||
&DEBUG
|
||||
CHECK_ATOM_FORCE 1 z
|
||||
DE 0.0002
|
||||
DEBUG_FORCES .TRUE.
|
||||
DEBUG_STRESS_TENSOR .FALSE.
|
||||
STOP_ON_MISMATCH T
|
||||
&END DEBUG
|
||||
|
||||
&FORCE_EVAL
|
||||
METHOD Quickstep
|
||||
&DFT
|
||||
BASIS_SET_FILE_NAME BASIS_MOLOPT_UZH
|
||||
BASIS_SET_FILE_NAME BASIS_ADMM_ae
|
||||
POTENTIAL_FILE_NAME POTENTIAL_UZH
|
||||
&AUXILIARY_DENSITY_MATRIX_METHOD
|
||||
ADMM_PURIFICATION_METHOD NONE
|
||||
EXCH_CORRECTION_FUNC PBEX
|
||||
EXCH_SCALING_MODEL NONE
|
||||
METHOD BASIS_PROJECTION
|
||||
&END AUXILIARY_DENSITY_MATRIX_METHOD
|
||||
&MGRID
|
||||
CUTOFF 240
|
||||
REL_CUTOFF 40
|
||||
&END MGRID
|
||||
&POISSON
|
||||
PERIODIC NONE
|
||||
POISSON_SOLVER MT
|
||||
&END POISSON
|
||||
&QS
|
||||
ALPHA_WEIGHTS 6.0
|
||||
GAPW_ACCURATE_XCINT T
|
||||
METHOD GAPW
|
||||
&END QS
|
||||
&SCF
|
||||
EPS_SCF 1.0E-7
|
||||
SCF_GUESS atomic
|
||||
&OT
|
||||
MINIMIZER DIIS
|
||||
PRECONDITIONER FULL_ALL
|
||||
&END OT
|
||||
&END SCF
|
||||
&XC
|
||||
&XC_FUNCTIONAL PBE0
|
||||
&END XC_FUNCTIONAL
|
||||
&END XC
|
||||
&END DFT
|
||||
&PRINT
|
||||
&FORCES
|
||||
&END FORCES
|
||||
&END PRINT
|
||||
&SUBSYS
|
||||
&CELL
|
||||
ABC 5.0 5.0 5.0
|
||||
PERIODIC NONE
|
||||
&END CELL
|
||||
&COORD
|
||||
H 0.000000 0.000000 0.470000
|
||||
F 0.000000 0.000000 -0.510000
|
||||
&END COORD
|
||||
&KIND H
|
||||
BASIS_SET ORB SVP-MOLOPT-GGA-ae
|
||||
BASIS_SET AUX_FIT admm-1
|
||||
POTENTIAL ALL
|
||||
&END KIND
|
||||
&KIND F
|
||||
BASIS_SET ORB SVP-MOLOPT-GGA-ae
|
||||
BASIS_SET AUX_FIT admm-1
|
||||
POTENTIAL ALL
|
||||
&END KIND
|
||||
&END SUBSYS
|
||||
&END FORCE_EVAL
|
||||
22
tests/QS/regtest-acc-1/TEST_FILES.toml
Normal file
22
tests/QS/regtest-acc-1/TEST_FILES.toml
Normal file
|
|
@ -0,0 +1,22 @@
|
|||
#
|
||||
"Ar-1.inp" = [{matcher="E_total", tol=1e-12, ref=-21.04944198733016}]
|
||||
"Ar-2.inp" = [{matcher="E_total", tol=1e-12, ref=-21.04944239056047}]
|
||||
"Ar-3.inp" = [{matcher="E_total", tol=1e-12, ref=-21.13848179618906}]
|
||||
"Ar-4.inp" = [{matcher="E_total", tol=1e-12, ref=-21.13848219953337}]
|
||||
#
|
||||
"HF-1.inp" = [{matcher="E_total", tol=1e-12, ref=-100.3509709548997}]
|
||||
"HF-2.inp" = [{matcher="E_total", tol=1e-12, ref=-100.1363374234943}]
|
||||
"HF-3.inp" = [{matcher="E_total", tol=1e-12, ref=-100.3509805804002}]
|
||||
"HF-4.inp" = [{matcher="E_total", tol=1e-12, ref=-100.2328561104310}]
|
||||
"HF-5.inp" = [{matcher="E_total", tol=1e-12, ref=-100.1323241157565}]
|
||||
#
|
||||
"HF-d1.inp" = []
|
||||
"HF-d2.inp" = []
|
||||
"HF-d3.inp" = []
|
||||
"HF-d4.inp" = []
|
||||
"HF-d5.inp" = []
|
||||
"HF-d6.inp" = []
|
||||
#
|
||||
"F2.inp" = []
|
||||
"h2o.inp" = [{matcher="E_total", tol=1e-12, ref=-17.26044915752584}]
|
||||
#EOF
|
||||
55
tests/QS/regtest-acc-1/h2o.inp
Normal file
55
tests/QS/regtest-acc-1/h2o.inp
Normal file
|
|
@ -0,0 +1,55 @@
|
|||
&GLOBAL
|
||||
PRINT_LEVEL MEDIUM
|
||||
PROJECT h2o
|
||||
RUN_TYPE ENERGY_FORCE
|
||||
&END GLOBAL
|
||||
|
||||
&FORCE_EVAL
|
||||
METHOD Quickstep
|
||||
&DFT
|
||||
BASIS_SET_FILE_NAME "BASIS_SET"
|
||||
POTENTIAL_FILE_NAME POTENTIAL
|
||||
&MGRID
|
||||
CUTOFF 240
|
||||
REL_CUTOFF 40
|
||||
&END MGRID
|
||||
&PRINT
|
||||
&DERIVATIVES
|
||||
&END DERIVATIVES
|
||||
&END PRINT
|
||||
&QS
|
||||
ALPHA_WEIGHTS 6.5
|
||||
EPS_DEFAULT 1.0E-10
|
||||
FORCE_PAW
|
||||
GAPW_1C_BASIS EXT_SMALL
|
||||
GAPW_ACCURATE_XCINT T
|
||||
METHOD GAPW
|
||||
&END QS
|
||||
&SCF
|
||||
EPS_SCF 1.0E-7
|
||||
SCF_GUESS ATOMIC
|
||||
&END SCF
|
||||
&XC
|
||||
&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-PADE
|
||||
POTENTIAL GTH-PADE-q1
|
||||
&END KIND
|
||||
&KIND O
|
||||
BASIS_SET DZVP-GTH-PADE
|
||||
POTENTIAL GTH-PADE-q6
|
||||
&END KIND
|
||||
&END SUBSYS
|
||||
&END FORCE_EVAL
|
||||
77
tests/QS/regtest-acc-2/HF-admm-nlcc.inp
Normal file
77
tests/QS/regtest-acc-2/HF-admm-nlcc.inp
Normal file
|
|
@ -0,0 +1,77 @@
|
|||
&GLOBAL
|
||||
PRINT_LEVEL MEDIUM
|
||||
PROJECT HF
|
||||
RUN_TYPE DEBUG
|
||||
&END GLOBAL
|
||||
|
||||
&DEBUG
|
||||
CHECK_ATOM_FORCE 1 z
|
||||
DE 0.0002
|
||||
DEBUG_FORCES .TRUE.
|
||||
DEBUG_STRESS_TENSOR .FALSE.
|
||||
STOP_ON_MISMATCH T
|
||||
&END DEBUG
|
||||
|
||||
&FORCE_EVAL
|
||||
METHOD Quickstep
|
||||
&DFT
|
||||
BASIS_SET_FILE_NAME BASIS_MOLOPT
|
||||
BASIS_SET_FILE_NAME BASIS_ADMM
|
||||
POTENTIAL_FILE_NAME NLCC_POTENTIALS
|
||||
&AUXILIARY_DENSITY_MATRIX_METHOD
|
||||
ADMM_PURIFICATION_METHOD NONE
|
||||
EXCH_CORRECTION_FUNC PBEX
|
||||
EXCH_SCALING_MODEL NONE
|
||||
METHOD BASIS_PROJECTION
|
||||
&END AUXILIARY_DENSITY_MATRIX_METHOD
|
||||
&MGRID
|
||||
CUTOFF 240
|
||||
REL_CUTOFF 40
|
||||
&END MGRID
|
||||
&POISSON
|
||||
PERIODIC NONE
|
||||
POISSON_SOLVER MT
|
||||
&END POISSON
|
||||
&QS
|
||||
ALPHA_WEIGHTS 6.0
|
||||
GAPW_ACCURATE_XCINT T
|
||||
METHOD GAPW
|
||||
&END QS
|
||||
&SCF
|
||||
EPS_SCF 1.0E-7
|
||||
SCF_GUESS atomic
|
||||
&OT
|
||||
MINIMIZER DIIS
|
||||
PRECONDITIONER FULL_ALL
|
||||
&END OT
|
||||
&END SCF
|
||||
&XC
|
||||
&XC_FUNCTIONAL PBE0
|
||||
&END XC_FUNCTIONAL
|
||||
&END XC
|
||||
&END DFT
|
||||
&PRINT
|
||||
&FORCES
|
||||
&END FORCES
|
||||
&END PRINT
|
||||
&SUBSYS
|
||||
&CELL
|
||||
ABC 5.0 5.0 5.0
|
||||
PERIODIC NONE
|
||||
&END CELL
|
||||
&COORD
|
||||
H 0.000000 0.000000 0.470000
|
||||
F 0.000000 0.000000 -0.510000
|
||||
&END COORD
|
||||
&KIND H
|
||||
BASIS_SET ORB DZVP-MOLOPT-SR-GTH
|
||||
BASIS_SET AUX_FIT pfit3
|
||||
POTENTIAL GTH-NLCC-PBE-q1
|
||||
&END KIND
|
||||
&KIND F
|
||||
BASIS_SET ORB DZVP-MOLOPT-SR-GTH
|
||||
BASIS_SET AUX_FIT pfit3
|
||||
POTENTIAL GTH-NLCC-PBE-q7
|
||||
&END KIND
|
||||
&END SUBSYS
|
||||
&END FORCE_EVAL
|
||||
81
tests/QS/regtest-acc-2/HF-ec1.inp
Normal file
81
tests/QS/regtest-acc-2/HF-ec1.inp
Normal file
|
|
@ -0,0 +1,81 @@
|
|||
&GLOBAL
|
||||
PRINT_LEVEL MEDIUM
|
||||
PROJECT HF
|
||||
RUN_TYPE DEBUG
|
||||
&END GLOBAL
|
||||
|
||||
&DEBUG
|
||||
CHECK_ATOM_FORCE 1 z
|
||||
DE 0.001
|
||||
DEBUG_FORCES .TRUE.
|
||||
DEBUG_STRESS_TENSOR .FALSE.
|
||||
STOP_ON_MISMATCH T
|
||||
&END DEBUG
|
||||
|
||||
&FORCE_EVAL
|
||||
METHOD Quickstep
|
||||
&DFT
|
||||
BASIS_SET_FILE_NAME BASIS_MOLOPT_UZH
|
||||
POTENTIAL_FILE_NAME POTENTIAL_UZH
|
||||
&ENERGY_CORRECTION
|
||||
ENERGY_FUNCTIONAL DCDFT
|
||||
HARRIS_BASIS ORBITAL
|
||||
&RESPONSE_SOLVER
|
||||
EPS 1.E-8
|
||||
METHOD MO_SOLVER
|
||||
PRECONDITIONER FULL_ALL
|
||||
&END RESPONSE_SOLVER
|
||||
&XC
|
||||
&XC_FUNCTIONAL TPSS
|
||||
&END XC_FUNCTIONAL
|
||||
&END XC
|
||||
&END ENERGY_CORRECTION
|
||||
&MGRID
|
||||
CUTOFF 240
|
||||
REL_CUTOFF 40
|
||||
&END MGRID
|
||||
&POISSON
|
||||
PERIODIC NONE
|
||||
POISSON_SOLVER MT
|
||||
&END POISSON
|
||||
&QS
|
||||
GAPW_1C_BASIS EXT_SMALL
|
||||
GAPW_ACCURATE_XCINT T
|
||||
METHOD GAPW
|
||||
&END QS
|
||||
&SCF
|
||||
EPS_SCF 1.0E-7
|
||||
SCF_GUESS atomic
|
||||
&OT
|
||||
MINIMIZER DIIS
|
||||
PRECONDITIONER FULL_ALL
|
||||
&END OT
|
||||
&END SCF
|
||||
&XC
|
||||
&XC_FUNCTIONAL PADE
|
||||
&END XC_FUNCTIONAL
|
||||
&END XC
|
||||
&END DFT
|
||||
&PRINT
|
||||
&FORCES
|
||||
&END FORCES
|
||||
&END PRINT
|
||||
&SUBSYS
|
||||
&CELL
|
||||
ABC 4.0 4.0 4.0
|
||||
PERIODIC NONE
|
||||
&END CELL
|
||||
&COORD
|
||||
H 0.000000 0.000000 0.470000
|
||||
F 0.000000 0.000000 -0.510000
|
||||
&END COORD
|
||||
&KIND H
|
||||
BASIS_SET SVP-MOLOPT-GGA-ae
|
||||
POTENTIAL ALL
|
||||
&END KIND
|
||||
&KIND F
|
||||
BASIS_SET SVP-MOLOPT-GGA-ae
|
||||
POTENTIAL ALL
|
||||
&END KIND
|
||||
&END SUBSYS
|
||||
&END FORCE_EVAL
|
||||
81
tests/QS/regtest-acc-2/HF-ec2.inp
Normal file
81
tests/QS/regtest-acc-2/HF-ec2.inp
Normal file
|
|
@ -0,0 +1,81 @@
|
|||
&GLOBAL
|
||||
PRINT_LEVEL MEDIUM
|
||||
PROJECT HF
|
||||
RUN_TYPE DEBUG
|
||||
&END GLOBAL
|
||||
|
||||
&DEBUG
|
||||
CHECK_ATOM_FORCE 1 z
|
||||
DE 0.0002
|
||||
DEBUG_FORCES .TRUE.
|
||||
DEBUG_STRESS_TENSOR .FALSE.
|
||||
STOP_ON_MISMATCH T
|
||||
&END DEBUG
|
||||
|
||||
&FORCE_EVAL
|
||||
METHOD Quickstep
|
||||
&DFT
|
||||
BASIS_SET_FILE_NAME BASIS_MOLOPT_UZH
|
||||
POTENTIAL_FILE_NAME POTENTIAL_UZH
|
||||
&ENERGY_CORRECTION
|
||||
ENERGY_FUNCTIONAL DCDFT
|
||||
HARRIS_BASIS ORBITAL
|
||||
&RESPONSE_SOLVER
|
||||
EPS 1.E-8
|
||||
METHOD MO_SOLVER
|
||||
PRECONDITIONER FULL_ALL
|
||||
&END RESPONSE_SOLVER
|
||||
&XC
|
||||
&XC_FUNCTIONAL PADE
|
||||
&END XC_FUNCTIONAL
|
||||
&END XC
|
||||
&END ENERGY_CORRECTION
|
||||
&MGRID
|
||||
CUTOFF 240
|
||||
REL_CUTOFF 40
|
||||
&END MGRID
|
||||
&POISSON
|
||||
PERIODIC NONE
|
||||
POISSON_SOLVER MT
|
||||
&END POISSON
|
||||
&QS
|
||||
GAPW_1C_BASIS EXT_SMALL
|
||||
GAPW_ACCURATE_XCINT T
|
||||
METHOD GAPW
|
||||
&END QS
|
||||
&SCF
|
||||
EPS_SCF 1.0E-6
|
||||
SCF_GUESS atomic
|
||||
&OT
|
||||
MINIMIZER DIIS
|
||||
PRECONDITIONER FULL_ALL
|
||||
&END OT
|
||||
&END SCF
|
||||
&XC
|
||||
&XC_FUNCTIONAL PBE
|
||||
&END XC_FUNCTIONAL
|
||||
&END XC
|
||||
&END DFT
|
||||
&PRINT
|
||||
&FORCES
|
||||
&END FORCES
|
||||
&END PRINT
|
||||
&SUBSYS
|
||||
&CELL
|
||||
ABC 4.0 4.0 4.0
|
||||
PERIODIC NONE
|
||||
&END CELL
|
||||
&COORD
|
||||
H 0.000000 0.000000 0.470000
|
||||
F 0.000000 0.000000 -0.510000
|
||||
&END COORD
|
||||
&KIND H
|
||||
BASIS_SET SVP-MOLOPT-GGA-ae
|
||||
POTENTIAL ALL
|
||||
&END KIND
|
||||
&KIND F
|
||||
BASIS_SET SVP-MOLOPT-GGA-ae
|
||||
POTENTIAL ALL
|
||||
&END KIND
|
||||
&END SUBSYS
|
||||
&END FORCE_EVAL
|
||||
77
tests/QS/regtest-acc-2/HF-ec3.inp
Normal file
77
tests/QS/regtest-acc-2/HF-ec3.inp
Normal file
|
|
@ -0,0 +1,77 @@
|
|||
&GLOBAL
|
||||
PRINT_LEVEL MEDIUM
|
||||
PROJECT HF
|
||||
RUN_TYPE DEBUG
|
||||
&END GLOBAL
|
||||
|
||||
&DEBUG
|
||||
CHECK_ATOM_FORCE 1 z
|
||||
DE 0.001
|
||||
DEBUG_FORCES .TRUE.
|
||||
DEBUG_STRESS_TENSOR .FALSE.
|
||||
STOP_ON_MISMATCH T
|
||||
&END DEBUG
|
||||
|
||||
&FORCE_EVAL
|
||||
METHOD Quickstep
|
||||
&DFT
|
||||
BASIS_SET_FILE_NAME BASIS_MOLOPT_UZH
|
||||
POTENTIAL_FILE_NAME POTENTIAL_UZH
|
||||
&ENERGY_CORRECTION
|
||||
DEBUG_EXTERNAL_METHOD T
|
||||
ENERGY_FUNCTIONAL EXTERNAL
|
||||
&RESPONSE_SOLVER
|
||||
EPS 1.E-8
|
||||
METHOD MO_SOLVER
|
||||
PRECONDITIONER FULL_ALL
|
||||
&END RESPONSE_SOLVER
|
||||
&END ENERGY_CORRECTION
|
||||
&MGRID
|
||||
CUTOFF 240
|
||||
REL_CUTOFF 40
|
||||
&END MGRID
|
||||
&POISSON
|
||||
PERIODIC NONE
|
||||
POISSON_SOLVER MT
|
||||
&END POISSON
|
||||
&QS
|
||||
GAPW_1C_BASIS EXT_SMALL
|
||||
GAPW_ACCURATE_XCINT T
|
||||
METHOD GAPW
|
||||
&END QS
|
||||
&SCF
|
||||
EPS_SCF 1.0E-6
|
||||
SCF_GUESS atomic
|
||||
&OT
|
||||
MINIMIZER DIIS
|
||||
PRECONDITIONER FULL_ALL
|
||||
&END OT
|
||||
&END SCF
|
||||
&XC
|
||||
&XC_FUNCTIONAL PADE
|
||||
&END XC_FUNCTIONAL
|
||||
&END XC
|
||||
&END DFT
|
||||
&PRINT
|
||||
&FORCES
|
||||
&END FORCES
|
||||
&END PRINT
|
||||
&SUBSYS
|
||||
&CELL
|
||||
ABC 4.0 4.0 4.0
|
||||
PERIODIC NONE
|
||||
&END CELL
|
||||
&COORD
|
||||
H 0.000000 0.000000 0.470000
|
||||
F 0.000000 0.000000 -0.510000
|
||||
&END COORD
|
||||
&KIND H
|
||||
BASIS_SET SVP-MOLOPT-GGA-ae
|
||||
POTENTIAL ALL
|
||||
&END KIND
|
||||
&KIND F
|
||||
BASIS_SET SVP-MOLOPT-GGA-ae
|
||||
POTENTIAL ALL
|
||||
&END KIND
|
||||
&END SUBSYS
|
||||
&END FORCE_EVAL
|
||||
87
tests/QS/regtest-acc-2/HF-ec4.inp
Normal file
87
tests/QS/regtest-acc-2/HF-ec4.inp
Normal file
|
|
@ -0,0 +1,87 @@
|
|||
&GLOBAL
|
||||
PRINT_LEVEL LOW
|
||||
PROJECT N2
|
||||
RUN_TYPE DEBUG
|
||||
&END GLOBAL
|
||||
|
||||
&DEBUG
|
||||
CHECK_ATOM_FORCE 1 z
|
||||
DEBUG_FORCES T
|
||||
DEBUG_STRESS_TENSOR F
|
||||
DX 0.001
|
||||
STOP_ON_MISMATCH T
|
||||
&END DEBUG
|
||||
|
||||
&FORCE_EVAL
|
||||
METHOD Quickstep
|
||||
&DFT
|
||||
BASIS_SET_FILE_NAME BASIS_MOLOPT_UZH
|
||||
BASIS_SET_FILE_NAME BASIS_ADMM_UZH
|
||||
POTENTIAL_FILE_NAME POTENTIAL_UZH
|
||||
&AUXILIARY_DENSITY_MATRIX_METHOD
|
||||
ADMM_PURIFICATION_METHOD NONE
|
||||
EXCH_CORRECTION_FUNC NONE
|
||||
EXCH_SCALING_MODEL NONE
|
||||
METHOD BASIS_PROJECTION
|
||||
&END AUXILIARY_DENSITY_MATRIX_METHOD
|
||||
&ENERGY_CORRECTION
|
||||
DEBUG_FORCES
|
||||
ENERGY_FUNCTIONAL DCDFT
|
||||
&RESPONSE_SOLVER
|
||||
EPS 1.0E-08
|
||||
METHOD MO_SOLVER
|
||||
PRECONDITIONER FULL_ALL
|
||||
&END RESPONSE_SOLVER
|
||||
&XC
|
||||
&XC_FUNCTIONAL TPSS
|
||||
&END XC_FUNCTIONAL
|
||||
&END XC
|
||||
&END ENERGY_CORRECTION
|
||||
&MGRID
|
||||
CUTOFF 200
|
||||
REL_CUTOFF 50
|
||||
&END MGRID
|
||||
&POISSON
|
||||
PERIODIC NONE
|
||||
POISSON_SOLVER MT
|
||||
&END POISSON
|
||||
&QS
|
||||
METHOD GAPW
|
||||
&END QS
|
||||
&SCF
|
||||
EPS_SCF 1.0E-7
|
||||
MAX_SCF 100
|
||||
SCF_GUESS ATOMIC
|
||||
&OT
|
||||
LINESEARCH ADAPT
|
||||
MINIMIZER DIIS
|
||||
PRECONDITIONER FULL_ALL
|
||||
&END OT
|
||||
&END SCF
|
||||
&XC
|
||||
&HF
|
||||
&END HF
|
||||
&XC_FUNCTIONAL NONE
|
||||
&END XC_FUNCTIONAL
|
||||
&END XC
|
||||
&END DFT
|
||||
&PRINT
|
||||
&FORCES ON
|
||||
&END FORCES
|
||||
&END PRINT
|
||||
&SUBSYS
|
||||
&CELL
|
||||
ABC 5.0 5.0 5.0
|
||||
PERIODIC NONE
|
||||
&END CELL
|
||||
&COORD
|
||||
N 0.000000 0.000000 0.650000
|
||||
N 0.000000 0.000000 -0.650000
|
||||
&END COORD
|
||||
&KIND N
|
||||
BASIS_SET ORB DZVP-MOLOPT-GGA-GTH-q5
|
||||
BASIS_SET AUX_FIT admm-dzp-q5
|
||||
POTENTIAL GTH-GGA-q5
|
||||
&END KIND
|
||||
&END SUBSYS
|
||||
&END FORCE_EVAL
|
||||
88
tests/QS/regtest-acc-2/HF-ec5.inp
Normal file
88
tests/QS/regtest-acc-2/HF-ec5.inp
Normal file
|
|
@ -0,0 +1,88 @@
|
|||
&GLOBAL
|
||||
PRINT_LEVEL LOW
|
||||
PROJECT N2
|
||||
RUN_TYPE DEBUG
|
||||
&END GLOBAL
|
||||
|
||||
&DEBUG
|
||||
CHECK_ATOM_FORCE 1 z
|
||||
DEBUG_FORCES T
|
||||
DEBUG_STRESS_TENSOR F
|
||||
DX 0.001
|
||||
STOP_ON_MISMATCH T
|
||||
&END DEBUG
|
||||
|
||||
&FORCE_EVAL
|
||||
METHOD Quickstep
|
||||
&DFT
|
||||
BASIS_SET_FILE_NAME BASIS_MOLOPT_UZH
|
||||
BASIS_SET_FILE_NAME BASIS_ADMM_UZH
|
||||
POTENTIAL_FILE_NAME POTENTIAL_UZH
|
||||
&AUXILIARY_DENSITY_MATRIX_METHOD
|
||||
ADMM_PURIFICATION_METHOD NONE
|
||||
EXCH_CORRECTION_FUNC NONE
|
||||
EXCH_SCALING_MODEL NONE
|
||||
METHOD BASIS_PROJECTION
|
||||
&END AUXILIARY_DENSITY_MATRIX_METHOD
|
||||
&ENERGY_CORRECTION
|
||||
ADMM
|
||||
DEBUG_FORCES
|
||||
ENERGY_FUNCTIONAL DCDFT
|
||||
&RESPONSE_SOLVER
|
||||
EPS 1.0E-08
|
||||
METHOD MO_SOLVER
|
||||
PRECONDITIONER FULL_SINGLE_INVERSE
|
||||
&END RESPONSE_SOLVER
|
||||
&XC
|
||||
&XC_FUNCTIONAL TPSS
|
||||
&END XC_FUNCTIONAL
|
||||
&END XC
|
||||
&END ENERGY_CORRECTION
|
||||
&MGRID
|
||||
CUTOFF 200
|
||||
REL_CUTOFF 50
|
||||
&END MGRID
|
||||
&POISSON
|
||||
PERIODIC NONE
|
||||
POISSON_SOLVER MT
|
||||
&END POISSON
|
||||
&QS
|
||||
METHOD GAPW
|
||||
&END QS
|
||||
&SCF
|
||||
EPS_SCF 1.0E-7
|
||||
MAX_SCF 100
|
||||
SCF_GUESS ATOMIC
|
||||
&OT
|
||||
LINESEARCH ADAPT
|
||||
MINIMIZER DIIS
|
||||
PRECONDITIONER FULL_ALL
|
||||
&END OT
|
||||
&END SCF
|
||||
&XC
|
||||
&HF
|
||||
&END HF
|
||||
&XC_FUNCTIONAL NONE
|
||||
&END XC_FUNCTIONAL
|
||||
&END XC
|
||||
&END DFT
|
||||
&PRINT
|
||||
&FORCES ON
|
||||
&END FORCES
|
||||
&END PRINT
|
||||
&SUBSYS
|
||||
&CELL
|
||||
ABC 5.0 5.0 5.0
|
||||
PERIODIC NONE
|
||||
&END CELL
|
||||
&COORD
|
||||
N 0.000000 0.000000 0.650000
|
||||
N 0.000000 0.000000 -0.650000
|
||||
&END COORD
|
||||
&KIND N
|
||||
BASIS_SET ORB DZVP-MOLOPT-GGA-GTH-q5
|
||||
BASIS_SET AUX_FIT admm-dzp-q5
|
||||
POTENTIAL GTH-GGA-q5
|
||||
&END KIND
|
||||
&END SUBSYS
|
||||
&END FORCE_EVAL
|
||||
77
tests/QS/regtest-acc-2/HF-ec6.inp
Normal file
77
tests/QS/regtest-acc-2/HF-ec6.inp
Normal file
|
|
@ -0,0 +1,77 @@
|
|||
&GLOBAL
|
||||
PRINT_LEVEL LOW
|
||||
PROJECT N2
|
||||
RUN_TYPE DEBUG
|
||||
&END GLOBAL
|
||||
|
||||
&DEBUG
|
||||
CHECK_ATOM_FORCE 1 z
|
||||
DEBUG_FORCES T
|
||||
DEBUG_STRESS_TENSOR F
|
||||
DX 0.0002
|
||||
STOP_ON_MISMATCH T
|
||||
&END DEBUG
|
||||
|
||||
&FORCE_EVAL
|
||||
METHOD Quickstep
|
||||
&DFT
|
||||
BASIS_SET_FILE_NAME BASIS_ADMM_UZH
|
||||
POTENTIAL_FILE_NAME POTENTIAL_UZH
|
||||
&ENERGY_CORRECTION
|
||||
DEBUG_FORCES
|
||||
ENERGY_FUNCTIONAL DCDFT
|
||||
&RESPONSE_SOLVER
|
||||
EPS 1.0E-08
|
||||
METHOD MO_SOLVER
|
||||
PRECONDITIONER FULL_ALL
|
||||
&END RESPONSE_SOLVER
|
||||
&XC
|
||||
&XC_FUNCTIONAL PBE0
|
||||
&END XC_FUNCTIONAL
|
||||
&END XC
|
||||
&END ENERGY_CORRECTION
|
||||
&MGRID
|
||||
CUTOFF 300
|
||||
REL_CUTOFF 60
|
||||
&END MGRID
|
||||
&POISSON
|
||||
PERIODIC NONE
|
||||
POISSON_SOLVER MT
|
||||
&END POISSON
|
||||
&QS
|
||||
METHOD GAPW
|
||||
&END QS
|
||||
&SCF
|
||||
EPS_SCF 1.0E-7
|
||||
MAX_SCF 100
|
||||
SCF_GUESS ATOMIC
|
||||
&OT
|
||||
LINESEARCH ADAPT
|
||||
MINIMIZER DIIS
|
||||
PRECONDITIONER FULL_ALL
|
||||
&END OT
|
||||
&END SCF
|
||||
&XC
|
||||
&XC_FUNCTIONAL PBE
|
||||
&END XC_FUNCTIONAL
|
||||
&END XC
|
||||
&END DFT
|
||||
&PRINT
|
||||
&FORCES ON
|
||||
&END FORCES
|
||||
&END PRINT
|
||||
&SUBSYS
|
||||
&CELL
|
||||
ABC 5.0 5.0 5.0
|
||||
PERIODIC NONE
|
||||
&END CELL
|
||||
&COORD
|
||||
N 0.000000 0.000000 0.650000
|
||||
N 0.000000 0.000000 -0.650000
|
||||
&END COORD
|
||||
&KIND N
|
||||
BASIS_SET ORB admm-dzp-q5
|
||||
POTENTIAL GTH-GGA-q5
|
||||
&END KIND
|
||||
&END SUBSYS
|
||||
&END FORCE_EVAL
|
||||
79
tests/QS/regtest-acc-2/HF-ec7.inp
Normal file
79
tests/QS/regtest-acc-2/HF-ec7.inp
Normal file
|
|
@ -0,0 +1,79 @@
|
|||
&GLOBAL
|
||||
PRINT_LEVEL LOW
|
||||
PROJECT N2
|
||||
RUN_TYPE DEBUG
|
||||
&END GLOBAL
|
||||
|
||||
&DEBUG
|
||||
CHECK_ATOM_FORCE 1 z
|
||||
DEBUG_FORCES T
|
||||
DEBUG_STRESS_TENSOR F
|
||||
DX 0.001
|
||||
STOP_ON_MISMATCH T
|
||||
&END DEBUG
|
||||
|
||||
&FORCE_EVAL
|
||||
METHOD Quickstep
|
||||
&DFT
|
||||
BASIS_SET_FILE_NAME BASIS_ADMM_UZH
|
||||
POTENTIAL_FILE_NAME POTENTIAL_UZH
|
||||
&ENERGY_CORRECTION
|
||||
DEBUG_FORCES
|
||||
ENERGY_FUNCTIONAL DCDFT
|
||||
&RESPONSE_SOLVER
|
||||
EPS 1.0E-08
|
||||
METHOD MO_SOLVER
|
||||
PRECONDITIONER FULL_ALL
|
||||
&END RESPONSE_SOLVER
|
||||
&XC
|
||||
&XC_FUNCTIONAL PBE0
|
||||
&END XC_FUNCTIONAL
|
||||
&END XC
|
||||
&END ENERGY_CORRECTION
|
||||
&MGRID
|
||||
CUTOFF 200
|
||||
REL_CUTOFF 50
|
||||
&END MGRID
|
||||
&POISSON
|
||||
PERIODIC NONE
|
||||
POISSON_SOLVER MT
|
||||
&END POISSON
|
||||
&QS
|
||||
METHOD GAPW
|
||||
&END QS
|
||||
&SCF
|
||||
EPS_SCF 1.0E-7
|
||||
MAX_SCF 100
|
||||
SCF_GUESS ATOMIC
|
||||
&OT
|
||||
LINESEARCH ADAPT
|
||||
MINIMIZER DIIS
|
||||
PRECONDITIONER FULL_ALL
|
||||
&END OT
|
||||
&END SCF
|
||||
&XC
|
||||
&HF
|
||||
&END HF
|
||||
&XC_FUNCTIONAL NONE
|
||||
&END XC_FUNCTIONAL
|
||||
&END XC
|
||||
&END DFT
|
||||
&PRINT
|
||||
&FORCES ON
|
||||
&END FORCES
|
||||
&END PRINT
|
||||
&SUBSYS
|
||||
&CELL
|
||||
ABC 5.0 5.0 5.0
|
||||
PERIODIC NONE
|
||||
&END CELL
|
||||
&COORD
|
||||
N 0.000000 0.000000 0.650000
|
||||
N 0.000000 0.000000 -0.650000
|
||||
&END COORD
|
||||
&KIND N
|
||||
BASIS_SET ORB admm-dzp-q5
|
||||
POTENTIAL GTH-GGA-q5
|
||||
&END KIND
|
||||
&END SUBSYS
|
||||
&END FORCE_EVAL
|
||||
73
tests/QS/regtest-acc-2/HF-nlcc.inp
Normal file
73
tests/QS/regtest-acc-2/HF-nlcc.inp
Normal file
|
|
@ -0,0 +1,73 @@
|
|||
&GLOBAL
|
||||
PRINT_LEVEL MEDIUM
|
||||
PROJECT HF-nlcc
|
||||
RUN_TYPE DEBUG
|
||||
&END GLOBAL
|
||||
|
||||
&DEBUG
|
||||
CHECK_ATOM_FORCE 1 z
|
||||
DE 0.0002
|
||||
DEBUG_FORCES .TRUE.
|
||||
DEBUG_STRESS_TENSOR .FALSE.
|
||||
STOP_ON_MISMATCH T
|
||||
&END DEBUG
|
||||
|
||||
&FORCE_EVAL
|
||||
METHOD Quickstep
|
||||
&DFT
|
||||
BASIS_SET_FILE_NAME BASIS_MOLOPT
|
||||
POTENTIAL_FILE_NAME NLCC_POTENTIALS
|
||||
&MGRID
|
||||
CUTOFF 240
|
||||
REL_CUTOFF 40
|
||||
&END MGRID
|
||||
&POISSON
|
||||
PERIODIC NONE
|
||||
POISSON_SOLVER MT
|
||||
&END POISSON
|
||||
&QS
|
||||
ALPHA_WEIGHTS 6.0
|
||||
GAPW_ACCURATE_XCINT T
|
||||
METHOD GAPW
|
||||
&END QS
|
||||
&SCF
|
||||
EPS_SCF 1.0E-7
|
||||
MAX_SCF 8
|
||||
SCF_GUESS atomic
|
||||
&OT
|
||||
MINIMIZER DIIS
|
||||
PRECONDITIONER FULL_ALL
|
||||
&END OT
|
||||
&OUTER_SCF
|
||||
EPS_SCF 1.0E-7
|
||||
MAX_SCF 8
|
||||
&END OUTER_SCF
|
||||
&END SCF
|
||||
&XC
|
||||
&XC_FUNCTIONAL PBE
|
||||
&END XC_FUNCTIONAL
|
||||
&END XC
|
||||
&END DFT
|
||||
&PRINT
|
||||
&FORCES
|
||||
&END FORCES
|
||||
&END PRINT
|
||||
&SUBSYS
|
||||
&CELL
|
||||
ABC 5.0 5.0 5.0
|
||||
PERIODIC NONE
|
||||
&END CELL
|
||||
&COORD
|
||||
H 0.000000 0.000000 0.470000
|
||||
F 0.000000 0.000000 -0.510000
|
||||
&END COORD
|
||||
&KIND H
|
||||
BASIS_SET ORB SZV-MOLOPT-SR-GTH
|
||||
POTENTIAL GTH-NLCC-PBE-q1
|
||||
&END KIND
|
||||
&KIND F
|
||||
BASIS_SET ORB SZV-MOLOPT-SR-GTH
|
||||
POTENTIAL GTH-NLCC-PBE-q7
|
||||
&END KIND
|
||||
&END SUBSYS
|
||||
&END FORCE_EVAL
|
||||
92
tests/QS/regtest-acc-2/HF-uf1.inp
Normal file
92
tests/QS/regtest-acc-2/HF-uf1.inp
Normal file
|
|
@ -0,0 +1,92 @@
|
|||
&GLOBAL
|
||||
PRINT_LEVEL LOW
|
||||
PROJECT HF
|
||||
RUN_TYPE DEBUG
|
||||
&END GLOBAL
|
||||
|
||||
&DEBUG
|
||||
CHECK_ATOM_FORCE 1 z
|
||||
DE 0.001
|
||||
DEBUG_FORCES .TRUE.
|
||||
DEBUG_STRESS_TENSOR .FALSE.
|
||||
STOP_ON_MISMATCH T
|
||||
&END DEBUG
|
||||
|
||||
&FORCE_EVAL
|
||||
METHOD Quickstep
|
||||
&DFT
|
||||
BASIS_SET_FILE_NAME BASIS_MOLOPT_UZH
|
||||
LSD
|
||||
POTENTIAL_FILE_NAME POTENTIAL_UZH
|
||||
&ENERGY_CORRECTION
|
||||
ENERGY_FUNCTIONAL DCDFT
|
||||
HARRIS_BASIS ORBITAL
|
||||
&RESPONSE_SOLVER
|
||||
EPS 1.E-8
|
||||
METHOD MO_SOLVER
|
||||
PRECONDITIONER FULL_ALL
|
||||
&END RESPONSE_SOLVER
|
||||
&XC
|
||||
&XC_FUNCTIONAL
|
||||
&MGGA_C_TPSS
|
||||
&END MGGA_C_TPSS
|
||||
&MGGA_X_TPSS
|
||||
&END MGGA_X_TPSS
|
||||
&END XC_FUNCTIONAL
|
||||
&END XC
|
||||
&END ENERGY_CORRECTION
|
||||
&MGRID
|
||||
CUTOFF 240
|
||||
REL_CUTOFF 40
|
||||
&END MGRID
|
||||
&POISSON
|
||||
PERIODIC NONE
|
||||
POISSON_SOLVER MT
|
||||
&END POISSON
|
||||
&QS
|
||||
GAPW_1C_BASIS EXT_SMALL
|
||||
GAPW_ACCURATE_XCINT T
|
||||
METHOD GAPW
|
||||
&END QS
|
||||
&SCF
|
||||
EPS_SCF 1.0E-6
|
||||
MAX_SCF 10
|
||||
SCF_GUESS atomic
|
||||
&OT
|
||||
MINIMIZER DIIS
|
||||
PRECONDITIONER FULL_ALL
|
||||
STEPSIZE 0.05
|
||||
&END OT
|
||||
&OUTER_SCF
|
||||
EPS_SCF 1.0E-6
|
||||
MAX_SCF 10
|
||||
&END OUTER_SCF
|
||||
&END SCF
|
||||
&XC
|
||||
&XC_FUNCTIONAL PADE
|
||||
&END XC_FUNCTIONAL
|
||||
&END XC
|
||||
&END DFT
|
||||
&PRINT
|
||||
&FORCES
|
||||
&END FORCES
|
||||
&END PRINT
|
||||
&SUBSYS
|
||||
&CELL
|
||||
ABC 4.0 4.0 4.0
|
||||
PERIODIC NONE
|
||||
&END CELL
|
||||
&COORD
|
||||
H 0.000000 0.000000 0.470000
|
||||
F 0.000000 0.000000 -0.510000
|
||||
&END COORD
|
||||
&KIND H
|
||||
BASIS_SET SVP-MOLOPT-GGA-ae
|
||||
POTENTIAL ALL
|
||||
&END KIND
|
||||
&KIND F
|
||||
BASIS_SET SVP-MOLOPT-GGA-ae
|
||||
POTENTIAL ALL
|
||||
&END KIND
|
||||
&END SUBSYS
|
||||
&END FORCE_EVAL
|
||||
20
tests/QS/regtest-acc-2/TEST_FILES.toml
Normal file
20
tests/QS/regtest-acc-2/TEST_FILES.toml
Normal file
|
|
@ -0,0 +1,20 @@
|
|||
#
|
||||
"HF-nlcc.inp" = []
|
||||
"HF-admm-nlcc.inp" = []
|
||||
#
|
||||
"h2o_p1.inp" = [{matcher="M087", tol=1e-05, ref=0.161404623690E+02}]
|
||||
"h2o_p2.inp" = [{matcher="M087", tol=1e-05, ref=19.2915637877}]
|
||||
"h2o_p3.inp" = [{matcher="M060", tol=1e-05, ref=0.73496007721}]
|
||||
"h2o_p4.inp" = [{matcher="M060", tol=1e-05, ref=0.713322848135}]
|
||||
"h2o_p5.inp" = [{matcher="M087", tol=1e-05, ref=0.210113376796E+02}]
|
||||
#
|
||||
"HF-ec1.inp" = []
|
||||
"HF-ec2.inp" = []
|
||||
"HF-ec3.inp" = []
|
||||
"HF-ec4.inp" = []
|
||||
"HF-ec5.inp" = []
|
||||
"HF-ec6.inp" = []
|
||||
"HF-ec7.inp" = []
|
||||
#
|
||||
"HF-uf1.inp" = []
|
||||
#EOF
|
||||
88
tests/QS/regtest-acc-2/h2o_p1.inp
Normal file
88
tests/QS/regtest-acc-2/h2o_p1.inp
Normal file
|
|
@ -0,0 +1,88 @@
|
|||
&GLOBAL
|
||||
PRINT_LEVEL LOW
|
||||
PROJECT H2Op
|
||||
RUN_TYPE DEBUG
|
||||
&END GLOBAL
|
||||
|
||||
&DEBUG
|
||||
DE 0.002
|
||||
DEBUG_DIPOLE .FALSE.
|
||||
DEBUG_FORCES .FALSE.
|
||||
DEBUG_POLARIZABILITY .TRUE.
|
||||
DEBUG_STRESS_TENSOR .FALSE.
|
||||
EPS_NO_ERROR_CHECK 5.e-5
|
||||
STOP_ON_MISMATCH T
|
||||
&END DEBUG
|
||||
|
||||
&FORCE_EVAL
|
||||
METHOD Quickstep
|
||||
&DFT
|
||||
&EFIELD
|
||||
&END EFIELD
|
||||
&POISSON
|
||||
PERIODIC NONE
|
||||
POISSON_SOLVER MT
|
||||
&END POISSON
|
||||
&PRINT
|
||||
&MOMENTS ON
|
||||
PERIODIC .FALSE.
|
||||
REFERENCE COM
|
||||
&END MOMENTS
|
||||
&END PRINT
|
||||
&QS
|
||||
EPS_DEFAULT 1.e-10
|
||||
GAPW_ACCURATE_XCINT T
|
||||
METHOD GAPW
|
||||
&END QS
|
||||
&SCF
|
||||
EPS_SCF 1.0E-7
|
||||
MAX_SCF 10
|
||||
SCF_GUESS ATOMIC
|
||||
&OT
|
||||
MINIMIZER DIIS
|
||||
PRECONDITIONER FULL_ALL
|
||||
&END OT
|
||||
&OUTER_SCF
|
||||
EPS_SCF 1.0E-7
|
||||
MAX_SCF 10
|
||||
&END OUTER_SCF
|
||||
&END SCF
|
||||
&XC
|
||||
&XC_FUNCTIONAL Pade
|
||||
&END XC_FUNCTIONAL
|
||||
&END XC
|
||||
&END DFT
|
||||
&PROPERTIES
|
||||
&LINRES
|
||||
EPS 1.e-10
|
||||
PRECONDITIONER FULL_ALL
|
||||
&POLAR
|
||||
DO_RAMAN T
|
||||
PERIODIC_DIPOLE_OPERATOR F
|
||||
&END POLAR
|
||||
&END LINRES
|
||||
&END PROPERTIES
|
||||
&SUBSYS
|
||||
&CELL
|
||||
ABC [angstrom] 5.0 5.0 5.0
|
||||
PERIODIC NONE
|
||||
&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 DZV-GTH-PADE
|
||||
POTENTIAL GTH-PADE-q1
|
||||
&END KIND
|
||||
&KIND O
|
||||
BASIS_SET DZVP-GTH-PADE
|
||||
POTENTIAL GTH-PADE-q6
|
||||
&END KIND
|
||||
&TOPOLOGY
|
||||
&CENTER_COORDINATES
|
||||
&END CENTER_COORDINATES
|
||||
&END TOPOLOGY
|
||||
&END SUBSYS
|
||||
&END FORCE_EVAL
|
||||
90
tests/QS/regtest-acc-2/h2o_p2.inp
Normal file
90
tests/QS/regtest-acc-2/h2o_p2.inp
Normal file
|
|
@ -0,0 +1,90 @@
|
|||
&GLOBAL
|
||||
PRINT_LEVEL LOW
|
||||
PROJECT H2Op
|
||||
RUN_TYPE DEBUG
|
||||
&END GLOBAL
|
||||
|
||||
&DEBUG
|
||||
DE 0.002
|
||||
DEBUG_DIPOLE .FALSE.
|
||||
DEBUG_FORCES .FALSE.
|
||||
DEBUG_POLARIZABILITY .TRUE.
|
||||
DEBUG_STRESS_TENSOR .FALSE.
|
||||
EPS_NO_ERROR_CHECK 5.e-5
|
||||
STOP_ON_MISMATCH T
|
||||
&END DEBUG
|
||||
|
||||
&FORCE_EVAL
|
||||
METHOD Quickstep
|
||||
&DFT
|
||||
BASIS_SET_FILE_NAME BASIS_MOLOPT_UZH
|
||||
POTENTIAL_FILE_NAME POTENTIAL_UZH
|
||||
&EFIELD
|
||||
&END EFIELD
|
||||
&POISSON
|
||||
PERIODIC NONE
|
||||
POISSON_SOLVER MT
|
||||
&END POISSON
|
||||
&PRINT
|
||||
&MOMENTS ON
|
||||
PERIODIC .FALSE.
|
||||
REFERENCE COM
|
||||
&END MOMENTS
|
||||
&END PRINT
|
||||
&QS
|
||||
EPS_DEFAULT 1.e-10
|
||||
GAPW_ACCURATE_XCINT T
|
||||
METHOD GAPW
|
||||
&END QS
|
||||
&SCF
|
||||
EPS_SCF 1.0E-6
|
||||
MAX_SCF 10
|
||||
SCF_GUESS ATOMIC
|
||||
&OT
|
||||
MINIMIZER DIIS
|
||||
PRECONDITIONER FULL_ALL
|
||||
&END OT
|
||||
&OUTER_SCF
|
||||
EPS_SCF 1.0E-6
|
||||
MAX_SCF 10
|
||||
&END OUTER_SCF
|
||||
&END SCF
|
||||
&XC
|
||||
&XC_FUNCTIONAL Pade
|
||||
&END XC_FUNCTIONAL
|
||||
&END XC
|
||||
&END DFT
|
||||
&PROPERTIES
|
||||
&LINRES
|
||||
EPS 1.e-8
|
||||
PRECONDITIONER FULL_ALL
|
||||
&POLAR
|
||||
DO_RAMAN T
|
||||
PERIODIC_DIPOLE_OPERATOR F
|
||||
&END POLAR
|
||||
&END LINRES
|
||||
&END PROPERTIES
|
||||
&SUBSYS
|
||||
&CELL
|
||||
ABC [angstrom] 4.0 4.0 4.0
|
||||
PERIODIC NONE
|
||||
&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 SVP-MOLOPT-GGA-ae
|
||||
POTENTIAL ALL
|
||||
&END KIND
|
||||
&KIND O
|
||||
BASIS_SET SVP-MOLOPT-GGA-ae
|
||||
POTENTIAL ALL
|
||||
&END KIND
|
||||
&TOPOLOGY
|
||||
&CENTER_COORDINATES
|
||||
&END CENTER_COORDINATES
|
||||
&END TOPOLOGY
|
||||
&END SUBSYS
|
||||
&END FORCE_EVAL
|
||||
87
tests/QS/regtest-acc-2/h2o_p3.inp
Normal file
87
tests/QS/regtest-acc-2/h2o_p3.inp
Normal file
|
|
@ -0,0 +1,87 @@
|
|||
&GLOBAL
|
||||
PRINT_LEVEL LOW
|
||||
PROJECT H2Op
|
||||
RUN_TYPE ENERGY
|
||||
&END GLOBAL
|
||||
|
||||
&FORCE_EVAL
|
||||
METHOD Quickstep
|
||||
&DFT
|
||||
BASIS_SET_FILE_NAME BASIS_MOLOPT_UZH
|
||||
BASIS_SET_FILE_NAME ALL_BASIS_SETS
|
||||
POTENTIAL_FILE_NAME POTENTIAL_UZH
|
||||
&POISSON
|
||||
PERIODIC NONE
|
||||
POISSON_SOLVER MT
|
||||
&END POISSON
|
||||
&PRINT
|
||||
&MOMENTS ON
|
||||
PERIODIC .FALSE.
|
||||
REFERENCE COM
|
||||
&END MOMENTS
|
||||
&END PRINT
|
||||
&QS
|
||||
EPS_DEFAULT 1.e-10
|
||||
GAPW_ACCURATE_XCINT T
|
||||
METHOD GAPW
|
||||
&END QS
|
||||
&SCF
|
||||
EPS_SCF 1.0E-7
|
||||
MAX_SCF 10
|
||||
SCF_GUESS ATOMIC
|
||||
&OT
|
||||
MINIMIZER DIIS
|
||||
PRECONDITIONER FULL_ALL
|
||||
&END OT
|
||||
&OUTER_SCF
|
||||
EPS_SCF 1.0E-7
|
||||
MAX_SCF 10
|
||||
&END OUTER_SCF
|
||||
&END SCF
|
||||
&XC
|
||||
&HF
|
||||
&MEMORY
|
||||
MAX_MEMORY 256
|
||||
&END MEMORY
|
||||
&SCREENING
|
||||
EPS_SCHWARZ 1.E-6
|
||||
&END SCREENING
|
||||
&END HF
|
||||
&XC_FUNCTIONAL PBE0
|
||||
&END XC_FUNCTIONAL
|
||||
&END XC
|
||||
&END DFT
|
||||
&PROPERTIES
|
||||
&LINRES
|
||||
EPS 1.e-10
|
||||
PRECONDITIONER FULL_ALL
|
||||
&POLAR
|
||||
DO_RAMAN T
|
||||
PERIODIC_DIPOLE_OPERATOR F
|
||||
&END POLAR
|
||||
&END LINRES
|
||||
&END PROPERTIES
|
||||
&SUBSYS
|
||||
&CELL
|
||||
ABC [angstrom] 5.0 5.0 5.0
|
||||
PERIODIC NONE
|
||||
&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 SVP-MOLOPT-GGA-ae
|
||||
POTENTIAL ALL
|
||||
&END KIND
|
||||
&KIND O
|
||||
BASIS_SET SVP-MOLOPT-GGA-ae
|
||||
POTENTIAL ALL
|
||||
&END KIND
|
||||
&TOPOLOGY
|
||||
&CENTER_COORDINATES
|
||||
&END CENTER_COORDINATES
|
||||
&END TOPOLOGY
|
||||
&END SUBSYS
|
||||
&END FORCE_EVAL
|
||||
89
tests/QS/regtest-acc-2/h2o_p4.inp
Normal file
89
tests/QS/regtest-acc-2/h2o_p4.inp
Normal file
|
|
@ -0,0 +1,89 @@
|
|||
&GLOBAL
|
||||
PRINT_LEVEL LOW
|
||||
PROJECT H2Op
|
||||
RUN_TYPE ENERGY
|
||||
&END GLOBAL
|
||||
|
||||
&FORCE_EVAL
|
||||
METHOD Quickstep
|
||||
&DFT
|
||||
BASIS_SET_FILE_NAME BASIS_MOLOPT_UZH
|
||||
BASIS_SET_FILE_NAME BASIS_ADMM_ae
|
||||
POTENTIAL_FILE_NAME POTENTIAL_UZH
|
||||
&AUXILIARY_DENSITY_MATRIX_METHOD
|
||||
ADMM_PURIFICATION_METHOD NONE
|
||||
EXCH_CORRECTION_FUNC PBEX
|
||||
EXCH_SCALING_MODEL NONE
|
||||
METHOD BASIS_PROJECTION
|
||||
&END AUXILIARY_DENSITY_MATRIX_METHOD
|
||||
&EFIELD
|
||||
&END EFIELD
|
||||
&POISSON
|
||||
PERIODIC NONE
|
||||
POISSON_SOLVER MT
|
||||
&END POISSON
|
||||
&PRINT
|
||||
&MOMENTS ON
|
||||
PERIODIC .FALSE.
|
||||
REFERENCE COM
|
||||
&END MOMENTS
|
||||
&END PRINT
|
||||
&QS
|
||||
EPS_DEFAULT 1.e-10
|
||||
GAPW_ACCURATE_XCINT T
|
||||
METHOD GAPW
|
||||
&END QS
|
||||
&SCF
|
||||
EPS_SCF 1.0E-6
|
||||
MAX_SCF 10
|
||||
SCF_GUESS ATOMIC
|
||||
&OT
|
||||
MINIMIZER DIIS
|
||||
PRECONDITIONER FULL_ALL
|
||||
&END OT
|
||||
&OUTER_SCF
|
||||
EPS_SCF 1.0E-6
|
||||
MAX_SCF 10
|
||||
&END OUTER_SCF
|
||||
&END SCF
|
||||
&XC
|
||||
&XC_FUNCTIONAL PBE0
|
||||
&END XC_FUNCTIONAL
|
||||
&END XC
|
||||
&END DFT
|
||||
&PROPERTIES
|
||||
&LINRES
|
||||
EPS 1.e-10
|
||||
PRECONDITIONER FULL_ALL
|
||||
&POLAR
|
||||
DO_RAMAN T
|
||||
PERIODIC_DIPOLE_OPERATOR F
|
||||
&END POLAR
|
||||
&END LINRES
|
||||
&END PROPERTIES
|
||||
&SUBSYS
|
||||
&CELL
|
||||
ABC [angstrom] 4.5 4.5 4.5
|
||||
PERIODIC NONE
|
||||
&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 SVP-MOLOPT-GGA-ae
|
||||
BASIS_SET AUX_FIT admm-1
|
||||
POTENTIAL ALL
|
||||
&END KIND
|
||||
&KIND O
|
||||
BASIS_SET SVP-MOLOPT-GGA-ae
|
||||
BASIS_SET AUX_FIT admm-1
|
||||
POTENTIAL ALL
|
||||
&END KIND
|
||||
&TOPOLOGY
|
||||
&CENTER_COORDINATES
|
||||
&END CENTER_COORDINATES
|
||||
&END TOPOLOGY
|
||||
&END SUBSYS
|
||||
&END FORCE_EVAL
|
||||
99
tests/QS/regtest-acc-2/h2o_p5.inp
Normal file
99
tests/QS/regtest-acc-2/h2o_p5.inp
Normal file
|
|
@ -0,0 +1,99 @@
|
|||
&GLOBAL
|
||||
PRINT_LEVEL LOW
|
||||
PROJECT H2Op
|
||||
RUN_TYPE DEBUG
|
||||
&END GLOBAL
|
||||
|
||||
&DEBUG
|
||||
DE 0.002
|
||||
DEBUG_DIPOLE .FALSE.
|
||||
DEBUG_FORCES .FALSE.
|
||||
DEBUG_POLARIZABILITY .TRUE.
|
||||
DEBUG_STRESS_TENSOR .FALSE.
|
||||
EPS_NO_ERROR_CHECK 5.e-5
|
||||
STOP_ON_MISMATCH T
|
||||
&END DEBUG
|
||||
|
||||
&FORCE_EVAL
|
||||
METHOD Quickstep
|
||||
&DFT
|
||||
BASIS_SET_FILE_NAME BASIS_MOLOPT_UZH
|
||||
BASIS_SET_FILE_NAME BASIS_ADMM_UZH
|
||||
POTENTIAL_FILE_NAME POTENTIAL_UZH
|
||||
&AUXILIARY_DENSITY_MATRIX_METHOD
|
||||
ADMM_PURIFICATION_METHOD NONE
|
||||
EXCH_CORRECTION_FUNC PBEX
|
||||
EXCH_SCALING_MODEL NONE
|
||||
METHOD BASIS_PROJECTION
|
||||
&END AUXILIARY_DENSITY_MATRIX_METHOD
|
||||
&EFIELD
|
||||
&END EFIELD
|
||||
&POISSON
|
||||
PERIODIC NONE
|
||||
POISSON_SOLVER MT
|
||||
&END POISSON
|
||||
&PRINT
|
||||
&MOMENTS ON
|
||||
PERIODIC .FALSE.
|
||||
REFERENCE COM
|
||||
&END MOMENTS
|
||||
&END PRINT
|
||||
&QS
|
||||
EPS_DEFAULT 1.e-10
|
||||
GAPW_ACCURATE_XCINT T
|
||||
METHOD GAPW
|
||||
&END QS
|
||||
&SCF
|
||||
EPS_SCF 1.0E-7
|
||||
MAX_SCF 10
|
||||
SCF_GUESS ATOMIC
|
||||
&OT
|
||||
MINIMIZER DIIS
|
||||
PRECONDITIONER FULL_ALL
|
||||
&END OT
|
||||
&OUTER_SCF
|
||||
EPS_SCF 1.0E-7
|
||||
MAX_SCF 10
|
||||
&END OUTER_SCF
|
||||
&END SCF
|
||||
&XC
|
||||
&XC_FUNCTIONAL Pade
|
||||
&END XC_FUNCTIONAL
|
||||
&END XC
|
||||
&END DFT
|
||||
&PROPERTIES
|
||||
&LINRES
|
||||
EPS 1.e-10
|
||||
PRECONDITIONER FULL_ALL
|
||||
&POLAR
|
||||
DO_RAMAN T
|
||||
PERIODIC_DIPOLE_OPERATOR F
|
||||
&END POLAR
|
||||
&END LINRES
|
||||
&END PROPERTIES
|
||||
&SUBSYS
|
||||
&CELL
|
||||
ABC [angstrom] 5.0 5.0 5.0
|
||||
PERIODIC NONE
|
||||
&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 TZVP-MOLOPT-GGA-GTH-q1
|
||||
BASIS_SET AUX_FIT admm-dzp-q1
|
||||
POTENTIAL GTH-GGA-q1
|
||||
&END KIND
|
||||
&KIND O
|
||||
BASIS_SET TZVP-MOLOPT-GGA-GTH-q6
|
||||
BASIS_SET AUX_FIT admm-dzp-q6
|
||||
POTENTIAL GTH-GGA-q6
|
||||
&END KIND
|
||||
&TOPOLOGY
|
||||
&CENTER_COORDINATES
|
||||
&END CENTER_COORDINATES
|
||||
&END TOPOLOGY
|
||||
&END SUBSYS
|
||||
&END FORCE_EVAL
|
||||
92
tests/QS/regtest-acc-3/H2O_GAPW_1.inp
Normal file
92
tests/QS/regtest-acc-3/H2O_GAPW_1.inp
Normal file
|
|
@ -0,0 +1,92 @@
|
|||
##REFERENCE##
|
||||
# To get close to the reference you need a larger box, stricter convergence and
|
||||
# better converged integrals
|
||||
#
|
||||
# PBE
|
||||
# HF Energy -76.3600550759
|
||||
#
|
||||
# Excited State 1: Singlet-B1 7.0944 eV 174.76 nm f=0.0271 <S**2>=0.000
|
||||
# 5 -> 6 0.70668
|
||||
# Excited State 2: Singlet-A2 8.9854 eV 137.98 nm f=0.0000 <S**2>=0.000
|
||||
# 5 -> 7 0.70699
|
||||
# Excited State 3: Singlet-A1 9.3872 eV 132.08 nm f=0.0899 <S**2>=0.000
|
||||
# 4 -> 6 0.70208
|
||||
#
|
||||
# PBE0
|
||||
# HF Energy -76.3624232785
|
||||
#
|
||||
# Excited State 1: Singlet-B1 7.7365 eV 160.26 nm f=0.0285 <S**2>=0.000
|
||||
# 5 -> 6 0.70657
|
||||
# Excited State 2: Singlet-A2 9.6344 eV 128.69 nm f=0.0000 <S**2>=0.000
|
||||
# 5 -> 7 0.70484
|
||||
# Excited State 3: Singlet-A1 10.0954 eV 122.81 nm f=0.0955 <S**2>=0.000
|
||||
# 4 -> 6 0.70276
|
||||
#############
|
||||
&GLOBAL
|
||||
PRINT_LEVEL LOW
|
||||
PROJECT H2O_GAPW
|
||||
RUN_TYPE ENERGY
|
||||
&END GLOBAL
|
||||
|
||||
&FORCE_EVAL
|
||||
METHOD Quickstep
|
||||
&DFT
|
||||
BASIS_SET_FILE_NAME EMSL_BASIS_SETS
|
||||
POTENTIAL_FILE_NAME POTENTIAL
|
||||
&MGRID
|
||||
CUTOFF 300
|
||||
&END MGRID
|
||||
&POISSON
|
||||
PERIODIC NONE
|
||||
POISSON_SOLVER MT
|
||||
&END POISSON
|
||||
&QS
|
||||
GAPW_1C_BASIS EXT_SMALL
|
||||
GAPW_ACCURATE_XCINT T
|
||||
METHOD GAPW
|
||||
&END QS
|
||||
&SCF
|
||||
MAX_SCF 40
|
||||
SCF_GUESS ATOMIC
|
||||
&END SCF
|
||||
&XC
|
||||
&XC_FUNCTIONAL PBE
|
||||
&END XC_FUNCTIONAL
|
||||
&END XC
|
||||
&END DFT
|
||||
&PROPERTIES
|
||||
&TDDFPT
|
||||
CONVERGENCE 1.0e-5
|
||||
MAX_ITER 10
|
||||
MAX_KV 10
|
||||
NSTATES 3
|
||||
&XC
|
||||
&XC_FUNCTIONAL PBE
|
||||
&END XC_FUNCTIONAL
|
||||
&END XC
|
||||
&END TDDFPT
|
||||
&END PROPERTIES
|
||||
&SUBSYS
|
||||
&CELL
|
||||
ABC 6.0 6.0 6.0
|
||||
PERIODIC NONE
|
||||
&END CELL
|
||||
&COORD
|
||||
O 0.000000 0.000000 -0.065587 H2O
|
||||
H 0.000000 -0.757136 0.520545 H2O
|
||||
H 0.000000 0.757136 0.520545 H2O
|
||||
&END COORD
|
||||
&KIND H
|
||||
BASIS_SET ORB 6-311Gxx
|
||||
POTENTIAL ALL
|
||||
&END KIND
|
||||
&KIND O
|
||||
BASIS_SET ORB 6-311Gxx
|
||||
POTENTIAL ALL
|
||||
&END KIND
|
||||
&TOPOLOGY
|
||||
&CENTER_COORDINATES
|
||||
&END CENTER_COORDINATES
|
||||
&END TOPOLOGY
|
||||
&END SUBSYS
|
||||
&END FORCE_EVAL
|
||||
78
tests/QS/regtest-acc-3/H2O_GAPW_1_triplet.inp
Normal file
78
tests/QS/regtest-acc-3/H2O_GAPW_1_triplet.inp
Normal file
|
|
@ -0,0 +1,78 @@
|
|||
#
|
||||
# PBE ENERGY : -76.3600550759
|
||||
# TDA Triplets
|
||||
# Excited State 1: Triplet-B1 6.5020 eV 190.69 nm f=0.0000 <S**2>=2.000
|
||||
# 5 -> 6 0.70683
|
||||
# Excited State 2: Triplet-A1 8.5315 eV 145.32 nm f=0.0000 <S**2>=2.000
|
||||
# 4 -> 6 0.70572
|
||||
# Excited State 3: Triplet-A2 8.5956 eV 144.24 nm f=0.0000 <S**2>=2.000
|
||||
# 5 -> 7 0.70664
|
||||
#
|
||||
&GLOBAL
|
||||
PRINT_LEVEL LOW
|
||||
PROJECT H2O_GAPW
|
||||
RUN_TYPE ENERGY
|
||||
&END GLOBAL
|
||||
|
||||
&FORCE_EVAL
|
||||
METHOD Quickstep
|
||||
&DFT
|
||||
BASIS_SET_FILE_NAME EMSL_BASIS_SETS
|
||||
POTENTIAL_FILE_NAME POTENTIAL
|
||||
&MGRID
|
||||
CUTOFF 200
|
||||
&END MGRID
|
||||
&POISSON
|
||||
PERIODIC NONE
|
||||
POISSON_SOLVER MT
|
||||
&END POISSON
|
||||
&QS
|
||||
GAPW_ACCURATE_XCINT T
|
||||
METHOD GAPW
|
||||
&END QS
|
||||
&SCF
|
||||
MAX_SCF 40
|
||||
SCF_GUESS ATOMIC
|
||||
&END SCF
|
||||
&XC
|
||||
&XC_FUNCTIONAL PBE
|
||||
&END XC_FUNCTIONAL
|
||||
&END XC
|
||||
&END DFT
|
||||
&PROPERTIES
|
||||
&TDDFPT
|
||||
CONVERGENCE 1.0e-5
|
||||
MAX_ITER 10
|
||||
MAX_KV 10
|
||||
NSTATES 3
|
||||
RKS_TRIPLETS T
|
||||
&XC
|
||||
&XC_FUNCTIONAL PBE
|
||||
&END XC_FUNCTIONAL
|
||||
&END XC
|
||||
&END TDDFPT
|
||||
&END PROPERTIES
|
||||
&SUBSYS
|
||||
&CELL
|
||||
ABC 6.0 6.0 6.0
|
||||
PERIODIC NONE
|
||||
&END CELL
|
||||
&COORD
|
||||
O 0.000000 0.000000 0.117226 H2O
|
||||
H 0.000000 -0.757136 -0.468906 H2O
|
||||
H 0.000000 0.757136 -0.468906 H2O
|
||||
&END COORD
|
||||
&KIND H
|
||||
BASIS_SET ORB 6-311Gxx
|
||||
POTENTIAL ALL
|
||||
&END KIND
|
||||
&KIND O
|
||||
BASIS_SET ORB 6-311Gxx
|
||||
POTENTIAL ALL
|
||||
&END KIND
|
||||
&TOPOLOGY
|
||||
&CENTER_COORDINATES
|
||||
&END CENTER_COORDINATES
|
||||
&END TOPOLOGY
|
||||
&END SUBSYS
|
||||
&END FORCE_EVAL
|
||||
85
tests/QS/regtest-acc-3/H2O_GAPW_2.inp
Normal file
85
tests/QS/regtest-acc-3/H2O_GAPW_2.inp
Normal file
|
|
@ -0,0 +1,85 @@
|
|||
##REFERENCE##
|
||||
#
|
||||
# PBE
|
||||
# HF Energy -76.3600550759
|
||||
#
|
||||
# Excited State 1: Singlet-B1 7.0944 eV 174.76 nm f=0.0271 <S**2>=0.000
|
||||
# 5 -> 6 0.70668
|
||||
# Excited State 2: Singlet-A2 8.9854 eV 137.98 nm f=0.0000 <S**2>=0.000
|
||||
# 5 -> 7 0.70699
|
||||
# Excited State 3: Singlet-A1 9.3872 eV 132.08 nm f=0.0899 <S**2>=0.000
|
||||
# 4 -> 6 0.70208
|
||||
#
|
||||
# PBE0
|
||||
# HF Energy -76.3624232785
|
||||
#
|
||||
# Excited State 1: Singlet-B1 7.7365 eV 160.26 nm f=0.0285 <S**2>=0.000
|
||||
# 5 -> 6 0.70657
|
||||
# Excited State 2: Singlet-A2 9.6344 eV 128.69 nm f=0.0000 <S**2>=0.000
|
||||
# 5 -> 7 0.70484
|
||||
# Excited State 3: Singlet-A1 10.0954 eV 122.81 nm f=0.0955 <S**2>=0.000
|
||||
# 4 -> 6 0.70276
|
||||
#############
|
||||
&GLOBAL
|
||||
PRINT_LEVEL LOW
|
||||
PROJECT H2O_GAPW
|
||||
RUN_TYPE ENERGY
|
||||
&END GLOBAL
|
||||
|
||||
&FORCE_EVAL
|
||||
METHOD Quickstep
|
||||
&DFT
|
||||
BASIS_SET_FILE_NAME EMSL_BASIS_SETS
|
||||
POTENTIAL_FILE_NAME POTENTIAL
|
||||
&MGRID
|
||||
CUTOFF 200
|
||||
&END MGRID
|
||||
&POISSON
|
||||
PERIODIC NONE
|
||||
POISSON_SOLVER MT
|
||||
&END POISSON
|
||||
&QS
|
||||
GAPW_ACCURATE_XCINT T
|
||||
METHOD GAPW
|
||||
&END QS
|
||||
&SCF
|
||||
MAX_SCF 40
|
||||
SCF_GUESS ATOMIC
|
||||
&END SCF
|
||||
&XC
|
||||
&XC_FUNCTIONAL PBE0
|
||||
&END XC_FUNCTIONAL
|
||||
&END XC
|
||||
&END DFT
|
||||
&PROPERTIES
|
||||
&TDDFPT
|
||||
CONVERGENCE 1.0e-5
|
||||
MAX_ITER 10
|
||||
MAX_KV 10
|
||||
NSTATES 3
|
||||
&END TDDFPT
|
||||
&END PROPERTIES
|
||||
&SUBSYS
|
||||
&CELL
|
||||
ABC 6.0 6.0 6.0
|
||||
PERIODIC NONE
|
||||
&END CELL
|
||||
&COORD
|
||||
O 0.000000 0.000000 -0.065587 H2O
|
||||
H 0.000000 -0.757136 0.520545 H2O
|
||||
H 0.000000 0.757136 0.520545 H2O
|
||||
&END COORD
|
||||
&KIND H
|
||||
BASIS_SET ORB 6-311Gxx
|
||||
POTENTIAL ALL
|
||||
&END KIND
|
||||
&KIND O
|
||||
BASIS_SET ORB 6-311Gxx
|
||||
POTENTIAL ALL
|
||||
&END KIND
|
||||
&TOPOLOGY
|
||||
&CENTER_COORDINATES
|
||||
&END CENTER_COORDINATES
|
||||
&END TOPOLOGY
|
||||
&END SUBSYS
|
||||
&END FORCE_EVAL
|
||||
93
tests/QS/regtest-acc-3/H2O_GAPW_3.inp
Normal file
93
tests/QS/regtest-acc-3/H2O_GAPW_3.inp
Normal file
|
|
@ -0,0 +1,93 @@
|
|||
##REFERENCE##
|
||||
#
|
||||
# PBE
|
||||
# HF Energy -76.3600550759
|
||||
#
|
||||
# Excited State 1: Singlet-B1 7.0944 eV 174.76 nm f=0.0271 <S**2>=0.000
|
||||
# 5 -> 6 0.70668
|
||||
# Excited State 2: Singlet-A2 8.9854 eV 137.98 nm f=0.0000 <S**2>=0.000
|
||||
# 5 -> 7 0.70699
|
||||
# Excited State 3: Singlet-A1 9.3872 eV 132.08 nm f=0.0899 <S**2>=0.000
|
||||
# 4 -> 6 0.70208
|
||||
#
|
||||
# PBE0
|
||||
# HF Energy -76.3624232785
|
||||
#
|
||||
# Excited State 1: Singlet-B1 7.7365 eV 160.26 nm f=0.0285 <S**2>=0.000
|
||||
# 5 -> 6 0.70657
|
||||
# Excited State 2: Singlet-A2 9.6344 eV 128.69 nm f=0.0000 <S**2>=0.000
|
||||
# 5 -> 7 0.70484
|
||||
# Excited State 3: Singlet-A1 10.0954 eV 122.81 nm f=0.0955 <S**2>=0.000
|
||||
# 4 -> 6 0.70276
|
||||
#############
|
||||
&GLOBAL
|
||||
PRINT_LEVEL LOW
|
||||
PROJECT H2O_GAPW
|
||||
RUN_TYPE ENERGY
|
||||
&END GLOBAL
|
||||
|
||||
&FORCE_EVAL
|
||||
METHOD Quickstep
|
||||
&DFT
|
||||
BASIS_SET_FILE_NAME EMSL_BASIS_SETS
|
||||
POTENTIAL_FILE_NAME POTENTIAL
|
||||
&AUXILIARY_DENSITY_MATRIX_METHOD
|
||||
ADMM_PURIFICATION_METHOD NONE
|
||||
EXCH_CORRECTION_FUNC NONE
|
||||
METHOD basis_projection
|
||||
&END AUXILIARY_DENSITY_MATRIX_METHOD
|
||||
&MGRID
|
||||
CUTOFF 200
|
||||
&END MGRID
|
||||
&POISSON
|
||||
PERIODIC NONE
|
||||
POISSON_SOLVER MT
|
||||
&END POISSON
|
||||
&QS
|
||||
GAPW_ACCURATE_XCINT T
|
||||
METHOD GAPW
|
||||
&END QS
|
||||
&SCF
|
||||
MAX_SCF 40
|
||||
SCF_GUESS ATOMIC
|
||||
&END SCF
|
||||
&XC
|
||||
&XC_FUNCTIONAL PBE0
|
||||
&END XC_FUNCTIONAL
|
||||
&END XC
|
||||
&END DFT
|
||||
&PROPERTIES
|
||||
&TDDFPT
|
||||
CONVERGENCE 1.0e-5
|
||||
MAX_ITER 10
|
||||
MAX_KV 10
|
||||
##ADMM_KERNEL_CORRECTION_SYMMETRIC
|
||||
NSTATES 3
|
||||
&END TDDFPT
|
||||
&END PROPERTIES
|
||||
&SUBSYS
|
||||
&CELL
|
||||
ABC 5.0 5.0 5.0
|
||||
PERIODIC NONE
|
||||
&END CELL
|
||||
&COORD
|
||||
O 0.000000 0.000000 -0.065587 H2O
|
||||
H 0.000000 -0.757136 0.520545 H2O
|
||||
H 0.000000 0.757136 0.520545 H2O
|
||||
&END COORD
|
||||
&KIND H
|
||||
BASIS_SET ORB 6-311Gxx
|
||||
BASIS_SET AUX_FIT 3-21Gx
|
||||
POTENTIAL ALL
|
||||
&END KIND
|
||||
&KIND O
|
||||
BASIS_SET ORB 6-311Gxx
|
||||
BASIS_SET AUX_FIT 3-21Gx
|
||||
POTENTIAL ALL
|
||||
&END KIND
|
||||
&TOPOLOGY
|
||||
&CENTER_COORDINATES
|
||||
&END CENTER_COORDINATES
|
||||
&END TOPOLOGY
|
||||
&END SUBSYS
|
||||
&END FORCE_EVAL
|
||||
80
tests/QS/regtest-acc-3/H2O_GAPW_4.inp
Normal file
80
tests/QS/regtest-acc-3/H2O_GAPW_4.inp
Normal file
|
|
@ -0,0 +1,80 @@
|
|||
# References GPW
|
||||
#
|
||||
# 1 8.25275 eV
|
||||
# 2 10.24447 eV
|
||||
# 3 10.44004 eV
|
||||
#
|
||||
# References GAPW
|
||||
# 1 8.27031 eV
|
||||
# 2 10.28919 eV
|
||||
# 3 10.46240 eV
|
||||
#
|
||||
&GLOBAL
|
||||
PRINT_LEVEL LOW
|
||||
PROJECT H2O_GAPW_XC
|
||||
RUN_TYPE ENERGY
|
||||
&END GLOBAL
|
||||
|
||||
&FORCE_EVAL
|
||||
METHOD Quickstep
|
||||
&DFT
|
||||
BASIS_SET_FILE_NAME BASIS_SET
|
||||
POTENTIAL_FILE_NAME POTENTIAL
|
||||
&MGRID
|
||||
CUTOFF 200
|
||||
NGRIDS 4
|
||||
REL_CUTOFF 40
|
||||
&END MGRID
|
||||
&POISSON
|
||||
PERIODIC NONE
|
||||
POISSON_SOLVER MT
|
||||
&END POISSON
|
||||
&QS
|
||||
GAPW_ACCURATE_XCINT T
|
||||
METHOD GAPW_XC
|
||||
&END QS
|
||||
&SCF
|
||||
MAX_SCF 40
|
||||
SCF_GUESS ATOMIC
|
||||
&END SCF
|
||||
&XC
|
||||
&XC_FUNCTIONAL PBE
|
||||
&END XC_FUNCTIONAL
|
||||
&END XC
|
||||
&END DFT
|
||||
&PROPERTIES
|
||||
&TDDFPT
|
||||
CONVERGENCE 1.0e-5
|
||||
MAX_ITER 10
|
||||
MAX_KV 10
|
||||
NSTATES 3
|
||||
&XC
|
||||
&XC_FUNCTIONAL PBE
|
||||
&END XC_FUNCTIONAL
|
||||
&END XC
|
||||
&END TDDFPT
|
||||
&END PROPERTIES
|
||||
&SUBSYS
|
||||
&CELL
|
||||
ABC 6.0 6.0 6.0
|
||||
PERIODIC NONE
|
||||
&END CELL
|
||||
&COORD
|
||||
O 0.000000 0.000000 -0.065587 H2O
|
||||
H 0.000000 -0.757136 0.520545 H2O
|
||||
H 0.000000 0.757136 0.520545 H2O
|
||||
&END COORD
|
||||
&KIND H
|
||||
BASIS_SET DZVP-GTH-PADE
|
||||
POTENTIAL GTH-PADE-q1
|
||||
&END KIND
|
||||
&KIND O
|
||||
BASIS_SET DZVP-GTH-PADE
|
||||
POTENTIAL GTH-PADE-q6
|
||||
&END KIND
|
||||
&TOPOLOGY
|
||||
&CENTER_COORDINATES
|
||||
&END CENTER_COORDINATES
|
||||
&END TOPOLOGY
|
||||
&END SUBSYS
|
||||
&END FORCE_EVAL
|
||||
69
tests/QS/regtest-acc-3/H2O_GAPW_5.inp
Normal file
69
tests/QS/regtest-acc-3/H2O_GAPW_5.inp
Normal file
|
|
@ -0,0 +1,69 @@
|
|||
&GLOBAL
|
||||
PRINT_LEVEL LOW
|
||||
PROJECT H2O_GAPW
|
||||
RUN_TYPE ENERGY
|
||||
&END GLOBAL
|
||||
|
||||
&FORCE_EVAL
|
||||
METHOD Quickstep
|
||||
&DFT
|
||||
BASIS_SET_FILE_NAME EMSL_BASIS_SETS
|
||||
POTENTIAL_FILE_NAME POTENTIAL
|
||||
&MGRID
|
||||
CUTOFF 200
|
||||
NGRIDS 4
|
||||
REL_CUTOFF 40
|
||||
&END MGRID
|
||||
&POISSON
|
||||
PERIODIC NONE
|
||||
POISSON_SOLVER MT
|
||||
&END POISSON
|
||||
&QS
|
||||
GAPW_ACCURATE_XCINT T
|
||||
METHOD GAPW
|
||||
&END QS
|
||||
&SCF
|
||||
MAX_SCF 40
|
||||
SCF_GUESS ATOMIC
|
||||
&END SCF
|
||||
&XC
|
||||
&XC_FUNCTIONAL PBE
|
||||
&END XC_FUNCTIONAL
|
||||
&END XC
|
||||
&END DFT
|
||||
&PROPERTIES
|
||||
&TDDFPT
|
||||
CONVERGENCE 1.0e-5
|
||||
MAX_ITER 10
|
||||
MAX_KV 10
|
||||
NSTATES 3
|
||||
&XC
|
||||
&XC_FUNCTIONAL PBE
|
||||
&END XC_FUNCTIONAL
|
||||
&END XC
|
||||
&END TDDFPT
|
||||
&END PROPERTIES
|
||||
&SUBSYS
|
||||
&CELL
|
||||
ABC 6.0 6.0 6.0
|
||||
PERIODIC NONE
|
||||
&END CELL
|
||||
&COORD
|
||||
O 0.000000 0.000000 -0.065587 H2O
|
||||
H 0.000000 -0.757136 0.520545 H2O
|
||||
H 0.000000 0.757136 0.520545 H2O
|
||||
&END COORD
|
||||
&KIND H
|
||||
BASIS_SET ORB 6-311Gxx
|
||||
POTENTIAL ALL
|
||||
&END KIND
|
||||
&KIND O
|
||||
BASIS_SET ORB 6-311Gxx
|
||||
POTENTIAL ALL
|
||||
&END KIND
|
||||
&TOPOLOGY
|
||||
&CENTER_COORDINATES
|
||||
&END CENTER_COORDINATES
|
||||
&END TOPOLOGY
|
||||
&END SUBSYS
|
||||
&END FORCE_EVAL
|
||||
72
tests/QS/regtest-acc-3/H2O_GAPW_6.inp
Normal file
72
tests/QS/regtest-acc-3/H2O_GAPW_6.inp
Normal file
|
|
@ -0,0 +1,72 @@
|
|||
&GLOBAL
|
||||
PRINT_LEVEL LOW
|
||||
PROJECT H2O_GAPW
|
||||
RUN_TYPE ENERGY
|
||||
&END GLOBAL
|
||||
|
||||
&FORCE_EVAL
|
||||
METHOD Quickstep
|
||||
&DFT
|
||||
BASIS_SET_FILE_NAME EMSL_BASIS_SETS
|
||||
POTENTIAL_FILE_NAME POTENTIAL
|
||||
&AUXILIARY_DENSITY_MATRIX_METHOD
|
||||
ADMM_PURIFICATION_METHOD NONE
|
||||
EXCH_CORRECTION_FUNC NONE
|
||||
METHOD basis_projection
|
||||
&END AUXILIARY_DENSITY_MATRIX_METHOD
|
||||
&MGRID
|
||||
CUTOFF 200
|
||||
NGRIDS 4
|
||||
REL_CUTOFF 40
|
||||
&END MGRID
|
||||
&POISSON
|
||||
PERIODIC NONE
|
||||
POISSON_SOLVER MT
|
||||
&END POISSON
|
||||
&QS
|
||||
GAPW_ACCURATE_XCINT T
|
||||
METHOD GAPW
|
||||
&END QS
|
||||
&SCF
|
||||
MAX_SCF 40
|
||||
SCF_GUESS ATOMIC
|
||||
&END SCF
|
||||
&XC
|
||||
&XC_FUNCTIONAL PBE0
|
||||
&END XC_FUNCTIONAL
|
||||
&END XC
|
||||
&END DFT
|
||||
&PROPERTIES
|
||||
&TDDFPT
|
||||
CONVERGENCE 1.0e-5
|
||||
MAX_ITER 10
|
||||
MAX_KV 10
|
||||
NSTATES 3
|
||||
&END TDDFPT
|
||||
&END PROPERTIES
|
||||
&SUBSYS
|
||||
&CELL
|
||||
ABC 5.0 5.0 5.0
|
||||
PERIODIC NONE
|
||||
&END CELL
|
||||
&COORD
|
||||
O 0.000000 0.000000 -0.065587 H2O
|
||||
H 0.000000 -0.757136 0.520545 H2O
|
||||
H 0.000000 0.757136 0.520545 H2O
|
||||
&END COORD
|
||||
&KIND H
|
||||
BASIS_SET ORB 6-311Gxx
|
||||
BASIS_SET AUX_FIT 3-21Gx
|
||||
POTENTIAL ALL
|
||||
&END KIND
|
||||
&KIND O
|
||||
BASIS_SET ORB 6-311Gxx
|
||||
BASIS_SET AUX_FIT 3-21Gx
|
||||
POTENTIAL ALL
|
||||
&END KIND
|
||||
&TOPOLOGY
|
||||
&CENTER_COORDINATES
|
||||
&END CENTER_COORDINATES
|
||||
&END TOPOLOGY
|
||||
&END SUBSYS
|
||||
&END FORCE_EVAL
|
||||
82
tests/QS/regtest-acc-3/H2O_GAPW_XC_1.inp
Normal file
82
tests/QS/regtest-acc-3/H2O_GAPW_XC_1.inp
Normal file
|
|
@ -0,0 +1,82 @@
|
|||
# References GPW
|
||||
# 1 8.25275 eV
|
||||
# 2 10.24447 eV
|
||||
# 3 10.44004 eV
|
||||
#
|
||||
# References GAPW
|
||||
# 1 8.27031 eV
|
||||
# 2 10.28919 eV
|
||||
# 3 10.46240 eV
|
||||
#
|
||||
# References GAPW
|
||||
# 1 8.27117 eV
|
||||
# 2 10.29085 eV
|
||||
# 3 10.46211 eV
|
||||
#
|
||||
&GLOBAL
|
||||
PRINT_LEVEL LOW
|
||||
PROJECT H2O_GAPW_XC
|
||||
RUN_TYPE ENERGY
|
||||
&END GLOBAL
|
||||
|
||||
&FORCE_EVAL
|
||||
METHOD Quickstep
|
||||
&DFT
|
||||
BASIS_SET_FILE_NAME BASIS_SET
|
||||
POTENTIAL_FILE_NAME POTENTIAL
|
||||
&MGRID
|
||||
CUTOFF 400
|
||||
&END MGRID
|
||||
&POISSON
|
||||
PERIODIC NONE
|
||||
POISSON_SOLVER MT
|
||||
&END POISSON
|
||||
&QS
|
||||
GAPW_ACCURATE_XCINT T
|
||||
METHOD GAPW_XC
|
||||
&END QS
|
||||
&SCF
|
||||
MAX_SCF 40
|
||||
SCF_GUESS ATOMIC
|
||||
&END SCF
|
||||
&XC
|
||||
&XC_FUNCTIONAL PBE
|
||||
&END XC_FUNCTIONAL
|
||||
&END XC
|
||||
&END DFT
|
||||
&PROPERTIES
|
||||
&TDDFPT
|
||||
CONVERGENCE 1.0e-5
|
||||
MAX_ITER 10
|
||||
MAX_KV 10
|
||||
NSTATES 3
|
||||
&XC
|
||||
&XC_FUNCTIONAL PBE
|
||||
&END XC_FUNCTIONAL
|
||||
&END XC
|
||||
&END TDDFPT
|
||||
&END PROPERTIES
|
||||
&SUBSYS
|
||||
&CELL
|
||||
ABC 6.0 6.0 6.0
|
||||
PERIODIC NONE
|
||||
&END CELL
|
||||
&COORD
|
||||
O 0.000000 0.000000 -0.065587 H2O
|
||||
H 0.000000 -0.757136 0.520545 H2O
|
||||
H 0.000000 0.757136 0.520545 H2O
|
||||
&END COORD
|
||||
&KIND H
|
||||
BASIS_SET DZVP-GTH-PADE
|
||||
POTENTIAL GTH-PADE-q1
|
||||
&END KIND
|
||||
&KIND O
|
||||
BASIS_SET DZVP-GTH-PADE
|
||||
POTENTIAL GTH-PADE-q6
|
||||
&END KIND
|
||||
&TOPOLOGY
|
||||
&CENTER_COORDINATES
|
||||
&END CENTER_COORDINATES
|
||||
&END TOPOLOGY
|
||||
&END SUBSYS
|
||||
&END FORCE_EVAL
|
||||
73
tests/QS/regtest-acc-3/H2O_GAPW_XC_2.inp
Normal file
73
tests/QS/regtest-acc-3/H2O_GAPW_XC_2.inp
Normal file
|
|
@ -0,0 +1,73 @@
|
|||
# References GAPW
|
||||
# 1 11.27853 eV
|
||||
# 2 13.39715 eV
|
||||
# 3 13.46784 eV
|
||||
#
|
||||
#
|
||||
&GLOBAL
|
||||
PRINT_LEVEL LOW
|
||||
PROJECT H2O_GAPW_XC
|
||||
RUN_TYPE ENERGY
|
||||
&END GLOBAL
|
||||
|
||||
&FORCE_EVAL
|
||||
METHOD Quickstep
|
||||
&DFT
|
||||
BASIS_SET_FILE_NAME BASIS_SET
|
||||
POTENTIAL_FILE_NAME POTENTIAL
|
||||
&MGRID
|
||||
CUTOFF 400
|
||||
&END MGRID
|
||||
&POISSON
|
||||
PERIODIC NONE
|
||||
POISSON_SOLVER MT
|
||||
&END POISSON
|
||||
&QS
|
||||
GAPW_ACCURATE_XCINT T
|
||||
METHOD GAPW_XC
|
||||
&END QS
|
||||
&SCF
|
||||
MAX_SCF 40
|
||||
SCF_GUESS ATOMIC
|
||||
&END SCF
|
||||
&XC
|
||||
&XC_FUNCTIONAL PBE0
|
||||
&END XC_FUNCTIONAL
|
||||
&END XC
|
||||
&END DFT
|
||||
&PROPERTIES
|
||||
&TDDFPT
|
||||
CONVERGENCE 1.0e-5
|
||||
MAX_ITER 10
|
||||
MAX_KV 10
|
||||
NSTATES 3
|
||||
&XC
|
||||
&XC_FUNCTIONAL PBE
|
||||
&END XC_FUNCTIONAL
|
||||
&END XC
|
||||
&END TDDFPT
|
||||
&END PROPERTIES
|
||||
&SUBSYS
|
||||
&CELL
|
||||
ABC 6.0 6.0 6.0
|
||||
PERIODIC NONE
|
||||
&END CELL
|
||||
&COORD
|
||||
O 0.000000 0.000000 -0.065587 H2O
|
||||
H 0.000000 -0.757136 0.520545 H2O
|
||||
H 0.000000 0.757136 0.520545 H2O
|
||||
&END COORD
|
||||
&KIND H
|
||||
BASIS_SET DZVP-GTH-PADE
|
||||
POTENTIAL GTH-PADE-q1
|
||||
&END KIND
|
||||
&KIND O
|
||||
BASIS_SET DZVP-GTH-PADE
|
||||
POTENTIAL GTH-PADE-q6
|
||||
&END KIND
|
||||
&TOPOLOGY
|
||||
&CENTER_COORDINATES
|
||||
&END CENTER_COORDINATES
|
||||
&END TOPOLOGY
|
||||
&END SUBSYS
|
||||
&END FORCE_EVAL
|
||||
79
tests/QS/regtest-acc-3/H2O_GAPW_XC_3.inp
Normal file
79
tests/QS/regtest-acc-3/H2O_GAPW_XC_3.inp
Normal file
|
|
@ -0,0 +1,79 @@
|
|||
# References GAPW
|
||||
# 1 11.71610 eV
|
||||
# 2 13.74523 eV
|
||||
# 3 13.81581 eV
|
||||
#
|
||||
&GLOBAL
|
||||
PRINT_LEVEL LOW
|
||||
PROJECT H2O_GAPW_XC
|
||||
RUN_TYPE ENERGY
|
||||
&END GLOBAL
|
||||
|
||||
&FORCE_EVAL
|
||||
METHOD Quickstep
|
||||
&DFT
|
||||
BASIS_SET_FILE_NAME BASIS_SET
|
||||
POTENTIAL_FILE_NAME POTENTIAL
|
||||
&AUXILIARY_DENSITY_MATRIX_METHOD
|
||||
ADMM_PURIFICATION_METHOD none
|
||||
EXCH_CORRECTION_FUNC NONE
|
||||
METHOD basis_projection
|
||||
&END AUXILIARY_DENSITY_MATRIX_METHOD
|
||||
&MGRID
|
||||
CUTOFF 320
|
||||
&END MGRID
|
||||
&POISSON
|
||||
PERIODIC NONE
|
||||
POISSON_SOLVER MT
|
||||
&END POISSON
|
||||
&QS
|
||||
GAPW_ACCURATE_XCINT T
|
||||
METHOD GAPW_XC
|
||||
&END QS
|
||||
&SCF
|
||||
MAX_SCF 40
|
||||
SCF_GUESS ATOMIC
|
||||
&END SCF
|
||||
&XC
|
||||
&XC_FUNCTIONAL PBE0
|
||||
&END XC_FUNCTIONAL
|
||||
&END XC
|
||||
&END DFT
|
||||
&PROPERTIES
|
||||
&TDDFPT
|
||||
CONVERGENCE 1.0e-5
|
||||
MAX_ITER 10
|
||||
MAX_KV 10
|
||||
NSTATES 3
|
||||
&XC
|
||||
&XC_FUNCTIONAL PBE
|
||||
&END XC_FUNCTIONAL
|
||||
&END XC
|
||||
&END TDDFPT
|
||||
&END PROPERTIES
|
||||
&SUBSYS
|
||||
&CELL
|
||||
ABC 5.0 5.0 5.0
|
||||
PERIODIC NONE
|
||||
&END CELL
|
||||
&COORD
|
||||
O 0.000000 0.000000 -0.065587 H2O
|
||||
H 0.000000 -0.757136 0.520545 H2O
|
||||
H 0.000000 0.757136 0.520545 H2O
|
||||
&END COORD
|
||||
&KIND H
|
||||
BASIS_SET ORB DZVP-GTH-PADE
|
||||
BASIS_SET AUX_FIT SZV-GTH-PADE
|
||||
POTENTIAL GTH-PADE-q1
|
||||
&END KIND
|
||||
&KIND O
|
||||
BASIS_SET ORB DZVP-GTH-PADE
|
||||
BASIS_SET AUX_FIT SZV-GTH-PADE
|
||||
POTENTIAL GTH-PADE-q6
|
||||
&END KIND
|
||||
&TOPOLOGY
|
||||
&CENTER_COORDINATES
|
||||
&END CENTER_COORDINATES
|
||||
&END TOPOLOGY
|
||||
&END SUBSYS
|
||||
&END FORCE_EVAL
|
||||
81
tests/QS/regtest-acc-3/H2O_GAPW_XC_4.inp
Normal file
81
tests/QS/regtest-acc-3/H2O_GAPW_XC_4.inp
Normal file
|
|
@ -0,0 +1,81 @@
|
|||
# References GAPW
|
||||
# 1 11.71610 eV
|
||||
# 2 13.74523 eV
|
||||
# 3 13.81581 eV
|
||||
#
|
||||
&GLOBAL
|
||||
PRINT_LEVEL LOW
|
||||
PROJECT H2O_GAPW_XC
|
||||
RUN_TYPE ENERGY
|
||||
&END GLOBAL
|
||||
|
||||
&FORCE_EVAL
|
||||
METHOD Quickstep
|
||||
&DFT
|
||||
BASIS_SET_FILE_NAME BASIS_SET
|
||||
POTENTIAL_FILE_NAME POTENTIAL
|
||||
&AUXILIARY_DENSITY_MATRIX_METHOD
|
||||
ADMM_PURIFICATION_METHOD none
|
||||
EXCH_CORRECTION_FUNC NONE
|
||||
METHOD basis_projection
|
||||
&END AUXILIARY_DENSITY_MATRIX_METHOD
|
||||
&MGRID
|
||||
CUTOFF 200
|
||||
NGRIDS 4
|
||||
REL_CUTOFF 40
|
||||
&END MGRID
|
||||
&POISSON
|
||||
PERIODIC NONE
|
||||
POISSON_SOLVER MT
|
||||
&END POISSON
|
||||
&QS
|
||||
GAPW_ACCURATE_XCINT T
|
||||
METHOD GAPW_XC
|
||||
&END QS
|
||||
&SCF
|
||||
MAX_SCF 40
|
||||
SCF_GUESS ATOMIC
|
||||
&END SCF
|
||||
&XC
|
||||
&XC_FUNCTIONAL PBE0
|
||||
&END XC_FUNCTIONAL
|
||||
&END XC
|
||||
&END DFT
|
||||
&PROPERTIES
|
||||
&TDDFPT
|
||||
CONVERGENCE 1.0e-5
|
||||
MAX_ITER 10
|
||||
MAX_KV 10
|
||||
NSTATES 3
|
||||
&XC
|
||||
&XC_FUNCTIONAL PBE
|
||||
&END XC_FUNCTIONAL
|
||||
&END XC
|
||||
&END TDDFPT
|
||||
&END PROPERTIES
|
||||
&SUBSYS
|
||||
&CELL
|
||||
ABC 5.0 5.0 5.0
|
||||
PERIODIC NONE
|
||||
&END CELL
|
||||
&COORD
|
||||
O 0.000000 0.000000 -0.065587 H2O
|
||||
H 0.000000 -0.757136 0.520545 H2O
|
||||
H 0.000000 0.757136 0.520545 H2O
|
||||
&END COORD
|
||||
&KIND H
|
||||
BASIS_SET ORB DZVP-GTH-PADE
|
||||
BASIS_SET AUX_FIT SZV-GTH-PADE
|
||||
POTENTIAL GTH-PADE-q1
|
||||
&END KIND
|
||||
&KIND O
|
||||
BASIS_SET ORB DZVP-GTH-PADE
|
||||
BASIS_SET AUX_FIT SZV-GTH-PADE
|
||||
POTENTIAL GTH-PADE-q6
|
||||
&END KIND
|
||||
&TOPOLOGY
|
||||
&CENTER_COORDINATES
|
||||
&END CENTER_COORDINATES
|
||||
&END TOPOLOGY
|
||||
&END SUBSYS
|
||||
&END FORCE_EVAL
|
||||
77
tests/QS/regtest-acc-3/Ne_GAPW_triplet.inp
Normal file
77
tests/QS/regtest-acc-3/Ne_GAPW_triplet.inp
Normal file
|
|
@ -0,0 +1,77 @@
|
|||
&GLOBAL
|
||||
PRINT_LEVEL LOW
|
||||
PROJECT Ne
|
||||
RUN_TYPE ENERGY
|
||||
&END GLOBAL
|
||||
|
||||
&FORCE_EVAL
|
||||
METHOD Quickstep
|
||||
&DFT
|
||||
BASIS_SET_FILE_NAME EMSL_BASIS_SETS
|
||||
BASIS_SET_FILE_NAME basis
|
||||
POTENTIAL_FILE_NAME POTENTIAL
|
||||
&MGRID
|
||||
CUTOFF 200
|
||||
REL_CUTOFF 80
|
||||
&END MGRID
|
||||
&POISSON
|
||||
PERIODIC NONE
|
||||
PSOLVER MT
|
||||
&END POISSON
|
||||
&QS
|
||||
EPS_DEFAULT 1.0E-17
|
||||
EPS_PGF_ORB 1.0E-20
|
||||
GAPW_ACCURATE_XCINT T
|
||||
METHOD GAPW
|
||||
&END QS
|
||||
&SCF
|
||||
EPS_SCF 1.0E-7
|
||||
MAX_SCF 20
|
||||
SCF_GUESS RESTART
|
||||
&OT
|
||||
MINIMIZER DIIS
|
||||
PRECONDITIONER FULL_SINGLE_INVERSE
|
||||
STEPSIZE 0.1
|
||||
&END OT
|
||||
&OUTER_SCF
|
||||
EPS_SCF 1.0E-7
|
||||
MAX_SCF 20
|
||||
&END OUTER_SCF
|
||||
&END SCF
|
||||
&XC
|
||||
&XC_FUNCTIONAL PBE
|
||||
&END XC_FUNCTIONAL
|
||||
2ND_DERIV_ANALYTICAL T
|
||||
&END XC
|
||||
&END DFT
|
||||
&PROPERTIES
|
||||
&TDDFPT
|
||||
CONVERGENCE 1.0e-5
|
||||
MAX_ITER 10
|
||||
MAX_KV 60
|
||||
NSTATES 1
|
||||
RKS_TRIPLETS T
|
||||
&DIPOLE_MOMENTS
|
||||
DIPOLE_FORM LENGTH
|
||||
&END DIPOLE_MOMENTS
|
||||
&XC
|
||||
&XC_FUNCTIONAL PBE
|
||||
&END XC_FUNCTIONAL
|
||||
2ND_DERIV_ANALYTICAL T
|
||||
&END XC
|
||||
&END TDDFPT
|
||||
&END PROPERTIES
|
||||
&SUBSYS
|
||||
&CELL
|
||||
ABC 6.0 6.0 6.0
|
||||
PERIODIC NONE
|
||||
&END CELL
|
||||
&COORD
|
||||
Ne 2.5 2.5 2.5
|
||||
&END COORD
|
||||
&KIND Ne
|
||||
BASIS_SET Ahlrichs-def2-SVP
|
||||
POTENTIAL ALL
|
||||
&END KIND
|
||||
&END SUBSYS
|
||||
&END FORCE_EVAL
|
||||
19
tests/QS/regtest-acc-3/TEST_FILES.toml
Normal file
19
tests/QS/regtest-acc-3/TEST_FILES.toml
Normal file
|
|
@ -0,0 +1,19 @@
|
|||
# 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
|
||||
#
|
||||
"H2O_GAPW_1.inp" = [{matcher="M037", tol=4.0E-06, ref=0.549263E+00}]
|
||||
"H2O_GAPW_2.inp" = [{matcher="M037", tol=4.0E-06, ref=0.591112E+00}]
|
||||
"H2O_GAPW_3.inp" = [{matcher="M037", tol=4.0E-06, ref=0.609537E+00}]
|
||||
"H2O_GAPW_4.inp" = [{matcher="M037", tol=4.0E-06, ref=0.619726E+00}]
|
||||
"H2O_GAPW_5.inp" = [{matcher="M037", tol=4.0E-06, ref=0.549152E+00}]
|
||||
"H2O_GAPW_6.inp" = [{matcher="M037", tol=4.0E-06, ref=0.609537E+00}]
|
||||
"H2O_GAPW_XC_1.inp" = [{matcher="M037", tol=4.0E-06, ref=0.619753E+00}]
|
||||
"H2O_GAPW_XC_2.inp" = [{matcher="M037", tol=4.0E-06, ref=0.812844E+00}]
|
||||
"H2O_GAPW_XC_3.inp" = [{matcher="M037", tol=4.0E-06, ref=0.845355E+00}]
|
||||
"H2O_GAPW_XC_4.inp" = [{matcher="M037", tol=4.0E-06, ref=0.845366E+00}]
|
||||
"H2O_GAPW_1_triplet.inp" = [{matcher="M037", tol=4.0E-06, ref=0.509938E+00}]
|
||||
"Ne_GAPW_triplet.inp" = [{matcher="M037", tol=4.0E-06, ref=0.166970E+01}]
|
||||
#EOF
|
||||
15
tests/QS/regtest-acc-4/TEST_FILES.toml
Normal file
15
tests/QS/regtest-acc-4/TEST_FILES.toml
Normal file
|
|
@ -0,0 +1,15 @@
|
|||
#
|
||||
"h2o_dip40.inp" = []
|
||||
"h2o_dip41.inp" = []
|
||||
"h2o_dip42.inp" = []
|
||||
"ch2o_dip45.inp" = []
|
||||
"ch2o_dip46.inp" = []
|
||||
"ch2o_dip47.inp" = []
|
||||
"ch2o_dip48.inp" = []
|
||||
"h2o_xc_dip40.inp" = []
|
||||
"h2o_xc_dip41.inp" = []
|
||||
"h2o_xc_dip42.inp" = []
|
||||
"ch2o_xc_dip45.inp" = []
|
||||
"ch2o_xc_dip46.inp" = []
|
||||
"ch2o_xc_dip47.inp" = []
|
||||
#EOF
|
||||
104
tests/QS/regtest-acc-4/ch2o_dip45.inp
Normal file
104
tests/QS/regtest-acc-4/ch2o_dip45.inp
Normal file
|
|
@ -0,0 +1,104 @@
|
|||
&GLOBAL
|
||||
PRINT_LEVEL medium
|
||||
PROJECT td_dipole
|
||||
RUN_TYPE DEBUG
|
||||
&END GLOBAL
|
||||
|
||||
&DEBUG
|
||||
CHECK_DIPOLE_DIRS Z
|
||||
DE 0.001
|
||||
DEBUG_DIPOLE .TRUE.
|
||||
DEBUG_FORCES .FALSE.
|
||||
DEBUG_POLARIZABILITY .FALSE.
|
||||
DEBUG_STRESS_TENSOR .FALSE.
|
||||
&END DEBUG
|
||||
|
||||
&FORCE_EVAL
|
||||
METHOD Quickstep
|
||||
&DFT
|
||||
BASIS_SET_FILE_NAME BASIS_SET
|
||||
POTENTIAL_FILE_NAME GTH_POTENTIALS
|
||||
&EFIELD
|
||||
&END EFIELD
|
||||
&EXCITED_STATES T
|
||||
DEBUG_FORCES T
|
||||
STATE 1
|
||||
&END EXCITED_STATES
|
||||
&MGRID
|
||||
CUTOFF 200
|
||||
&END MGRID
|
||||
&POISSON
|
||||
PERIODIC NONE
|
||||
POISSON_SOLVER MT
|
||||
&END POISSON
|
||||
&PRINT
|
||||
&MOMENTS ON
|
||||
PERIODIC .FALSE.
|
||||
REFERENCE COM
|
||||
&END MOMENTS
|
||||
&END PRINT
|
||||
&QS
|
||||
EPS_DEFAULT 1.0E-10
|
||||
GAPW_ACCURATE_XCINT T
|
||||
METHOD GAPW
|
||||
&END QS
|
||||
&SCF
|
||||
EPS_SCF 1.0E-6
|
||||
MAX_SCF 20
|
||||
SCF_GUESS ATOMIC
|
||||
&OT
|
||||
MINIMIZER DIIS
|
||||
PRECONDITIONER FULL_SINGLE_INVERSE
|
||||
STEPSIZE 0.1
|
||||
&END OT
|
||||
&OUTER_SCF
|
||||
EPS_SCF 1.0E-6
|
||||
MAX_SCF 20
|
||||
&END OUTER_SCF
|
||||
&END SCF
|
||||
&XC
|
||||
&XC_FUNCTIONAL PADE
|
||||
&END XC_FUNCTIONAL
|
||||
&END XC
|
||||
&END DFT
|
||||
&PROPERTIES
|
||||
&TDDFPT
|
||||
CONVERGENCE [eV] 1.0E-6
|
||||
KERNEL FULL
|
||||
MAX_ITER 50
|
||||
NSTATES 1
|
||||
&XC
|
||||
&XC_FUNCTIONAL PADE
|
||||
&END XC_FUNCTIONAL
|
||||
&END XC
|
||||
&END TDDFPT
|
||||
&END PROPERTIES
|
||||
&SUBSYS
|
||||
&CELL
|
||||
ABC [angstrom] 4.0 4.0 4.0
|
||||
PERIODIC NONE
|
||||
&END CELL
|
||||
&COORD
|
||||
O 0.000000 0.000000 0.895642
|
||||
C 0.000000 0.000000 -0.307326
|
||||
H 0.000000 0.947608 -0.895642
|
||||
H 0.000000 -0.947608 -0.895562
|
||||
&END COORD
|
||||
&KIND H
|
||||
BASIS_SET DZVP-GTH-PADE
|
||||
POTENTIAL GTH-PADE-q1
|
||||
&END KIND
|
||||
&KIND C
|
||||
BASIS_SET DZVP-GTH-PADE
|
||||
POTENTIAL GTH-PADE-q4
|
||||
&END KIND
|
||||
&KIND O
|
||||
BASIS_SET DZVP-GTH-PADE
|
||||
POTENTIAL GTH-PADE-q6
|
||||
&END KIND
|
||||
&TOPOLOGY
|
||||
&CENTER_COORDINATES
|
||||
&END CENTER_COORDINATES
|
||||
&END TOPOLOGY
|
||||
&END SUBSYS
|
||||
&END FORCE_EVAL
|
||||
100
tests/QS/regtest-acc-4/ch2o_dip46.inp
Normal file
100
tests/QS/regtest-acc-4/ch2o_dip46.inp
Normal file
|
|
@ -0,0 +1,100 @@
|
|||
&GLOBAL
|
||||
PRINT_LEVEL medium
|
||||
PROJECT td_dipole
|
||||
RUN_TYPE DEBUG
|
||||
&END GLOBAL
|
||||
|
||||
&DEBUG
|
||||
CHECK_DIPOLE_DIRS Z
|
||||
DE 0.001
|
||||
DEBUG_DIPOLE .TRUE.
|
||||
DEBUG_FORCES .FALSE.
|
||||
DEBUG_POLARIZABILITY .FALSE.
|
||||
DEBUG_STRESS_TENSOR .FALSE.
|
||||
&END DEBUG
|
||||
|
||||
&FORCE_EVAL
|
||||
METHOD Quickstep
|
||||
&DFT
|
||||
BASIS_SET_FILE_NAME BASIS_SET
|
||||
POTENTIAL_FILE_NAME GTH_POTENTIALS
|
||||
&EFIELD
|
||||
&END EFIELD
|
||||
&EXCITED_STATES T
|
||||
DEBUG_FORCES T
|
||||
STATE 1
|
||||
&END EXCITED_STATES
|
||||
&MGRID
|
||||
CUTOFF 200
|
||||
&END MGRID
|
||||
&POISSON
|
||||
PERIODIC NONE
|
||||
POISSON_SOLVER MT
|
||||
&END POISSON
|
||||
&PRINT
|
||||
&MOMENTS ON
|
||||
PERIODIC .FALSE.
|
||||
REFERENCE COM
|
||||
&END MOMENTS
|
||||
&END PRINT
|
||||
&QS
|
||||
EPS_DEFAULT 1.0E-10
|
||||
GAPW_ACCURATE_XCINT T
|
||||
METHOD GAPW
|
||||
&END QS
|
||||
&SCF
|
||||
EPS_SCF 1.0E-6
|
||||
MAX_SCF 20
|
||||
SCF_GUESS ATOMIC
|
||||
&OT
|
||||
MINIMIZER DIIS
|
||||
PRECONDITIONER FULL_SINGLE_INVERSE
|
||||
STEPSIZE 0.1
|
||||
&END OT
|
||||
&OUTER_SCF
|
||||
EPS_SCF 1.0E-6
|
||||
MAX_SCF 20
|
||||
&END OUTER_SCF
|
||||
&END SCF
|
||||
&XC
|
||||
&XC_FUNCTIONAL PBE0
|
||||
&END XC_FUNCTIONAL
|
||||
&END XC
|
||||
&END DFT
|
||||
&PROPERTIES
|
||||
&TDDFPT
|
||||
CONVERGENCE [eV] 1.0E-6
|
||||
KERNEL FULL
|
||||
MAX_ITER 50
|
||||
NSTATES 1
|
||||
&END TDDFPT
|
||||
&END PROPERTIES
|
||||
&SUBSYS
|
||||
&CELL
|
||||
ABC [angstrom] 4.0 4.0 4.0
|
||||
PERIODIC NONE
|
||||
&END CELL
|
||||
&COORD
|
||||
O 0.000000 0.000000 0.895642
|
||||
C 0.000000 0.000000 -0.307326
|
||||
H 0.000000 0.947608 -0.895642
|
||||
H 0.000000 -0.947608 -0.895562
|
||||
&END COORD
|
||||
&KIND H
|
||||
BASIS_SET DZVP-GTH-PADE
|
||||
POTENTIAL GTH-PADE-q1
|
||||
&END KIND
|
||||
&KIND C
|
||||
BASIS_SET DZVP-GTH-PADE
|
||||
POTENTIAL GTH-PADE-q4
|
||||
&END KIND
|
||||
&KIND O
|
||||
BASIS_SET DZVP-GTH-PADE
|
||||
POTENTIAL GTH-PADE-q6
|
||||
&END KIND
|
||||
&TOPOLOGY
|
||||
&CENTER_COORDINATES
|
||||
&END CENTER_COORDINATES
|
||||
&END TOPOLOGY
|
||||
&END SUBSYS
|
||||
&END FORCE_EVAL
|
||||
103
tests/QS/regtest-acc-4/ch2o_dip47.inp
Normal file
103
tests/QS/regtest-acc-4/ch2o_dip47.inp
Normal file
|
|
@ -0,0 +1,103 @@
|
|||
&GLOBAL
|
||||
PRINT_LEVEL medium
|
||||
PROJECT td_dipole
|
||||
RUN_TYPE DEBUG
|
||||
&END GLOBAL
|
||||
|
||||
&DEBUG
|
||||
CHECK_DIPOLE_DIRS Z
|
||||
DE 0.001
|
||||
DEBUG_DIPOLE .TRUE.
|
||||
DEBUG_FORCES .FALSE.
|
||||
DEBUG_POLARIZABILITY .FALSE.
|
||||
DEBUG_STRESS_TENSOR .FALSE.
|
||||
&END DEBUG
|
||||
|
||||
&FORCE_EVAL
|
||||
METHOD Quickstep
|
||||
&DFT
|
||||
BASIS_SET_FILE_NAME BASIS_SET
|
||||
BASIS_SET_FILE_NAME BASIS_ADMM
|
||||
POTENTIAL_FILE_NAME GTH_POTENTIALS
|
||||
&AUXILIARY_DENSITY_MATRIX_METHOD
|
||||
ADMM_PURIFICATION_METHOD NONE
|
||||
EXCH_CORRECTION_FUNC NONE
|
||||
EXCH_SCALING_MODEL NONE
|
||||
METHOD BASIS_PROJECTION
|
||||
&END AUXILIARY_DENSITY_MATRIX_METHOD
|
||||
&EFIELD
|
||||
&END EFIELD
|
||||
&EXCITED_STATES T
|
||||
STATE 1
|
||||
&END EXCITED_STATES
|
||||
&MGRID
|
||||
CUTOFF 200
|
||||
&END MGRID
|
||||
&POISSON
|
||||
PERIODIC NONE
|
||||
POISSON_SOLVER MT
|
||||
&END POISSON
|
||||
&PRINT
|
||||
&MOMENTS ON
|
||||
PERIODIC .FALSE.
|
||||
REFERENCE COM
|
||||
&END MOMENTS
|
||||
&END PRINT
|
||||
&QS
|
||||
EPS_DEFAULT 1.0E-10
|
||||
GAPW_ACCURATE_XCINT T
|
||||
METHOD GAPW
|
||||
&END QS
|
||||
&SCF
|
||||
EPS_SCF 1.0E-7
|
||||
MAX_SCF 10
|
||||
SCF_GUESS ATOMIC
|
||||
&OT
|
||||
MINIMIZER DIIS
|
||||
PRECONDITIONER FULL_SINGLE_INVERSE
|
||||
&END OT
|
||||
&OUTER_SCF
|
||||
EPS_SCF 1.0E-7
|
||||
MAX_SCF 10
|
||||
&END OUTER_SCF
|
||||
&END SCF
|
||||
&XC
|
||||
&XC_FUNCTIONAL PBE0
|
||||
&END XC_FUNCTIONAL
|
||||
&END XC
|
||||
&END DFT
|
||||
&PROPERTIES
|
||||
&TDDFPT
|
||||
ADMM_KERNEL_CORRECTION_SYMMETRIC
|
||||
CONVERGENCE [eV] 1.0E-8
|
||||
KERNEL FULL
|
||||
MAX_ITER 50
|
||||
NSTATES 1
|
||||
&END TDDFPT
|
||||
&END PROPERTIES
|
||||
&SUBSYS
|
||||
&CELL
|
||||
ABC [angstrom] 4.0 4.0 4.0
|
||||
PERIODIC NONE
|
||||
&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-PADE
|
||||
BASIS_SET AUX_FIT FIT3
|
||||
POTENTIAL GTH-PADE-q1
|
||||
&END KIND
|
||||
&KIND O
|
||||
BASIS_SET DZVP-GTH-PADE
|
||||
BASIS_SET AUX_FIT FIT3
|
||||
POTENTIAL GTH-PADE-q6
|
||||
&END KIND
|
||||
&TOPOLOGY
|
||||
&CENTER_COORDINATES
|
||||
&END CENTER_COORDINATES
|
||||
&END TOPOLOGY
|
||||
&END SUBSYS
|
||||
&END FORCE_EVAL
|
||||
104
tests/QS/regtest-acc-4/ch2o_dip48.inp
Normal file
104
tests/QS/regtest-acc-4/ch2o_dip48.inp
Normal file
|
|
@ -0,0 +1,104 @@
|
|||
&GLOBAL
|
||||
PRINT_LEVEL low
|
||||
PROJECT td_dipole
|
||||
RUN_TYPE DEBUG
|
||||
&END GLOBAL
|
||||
|
||||
&DEBUG
|
||||
CHECK_DIPOLE_DIRS Z
|
||||
DE 0.001
|
||||
DEBUG_DIPOLE .TRUE.
|
||||
DEBUG_FORCES .FALSE.
|
||||
DEBUG_POLARIZABILITY .FALSE.
|
||||
DEBUG_STRESS_TENSOR .FALSE.
|
||||
&END DEBUG
|
||||
|
||||
&FORCE_EVAL
|
||||
METHOD Quickstep
|
||||
&DFT
|
||||
BASIS_SET_FILE_NAME BASIS_SET
|
||||
BASIS_SET_FILE_NAME BASIS_ADMM
|
||||
POTENTIAL_FILE_NAME GTH_POTENTIALS
|
||||
&AUXILIARY_DENSITY_MATRIX_METHOD
|
||||
ADMM_PURIFICATION_METHOD NONE
|
||||
EXCH_CORRECTION_FUNC DEFAULT_LIBXC
|
||||
EXCH_SCALING_MODEL NONE
|
||||
METHOD BASIS_PROJECTION
|
||||
&END AUXILIARY_DENSITY_MATRIX_METHOD
|
||||
&EFIELD
|
||||
&END EFIELD
|
||||
&EXCITED_STATES T
|
||||
STATE 1
|
||||
&END EXCITED_STATES
|
||||
&MGRID
|
||||
CUTOFF 200
|
||||
&END MGRID
|
||||
&POISSON
|
||||
PERIODIC NONE
|
||||
POISSON_SOLVER MT
|
||||
&END POISSON
|
||||
&PRINT
|
||||
&MOMENTS ON
|
||||
PERIODIC .FALSE.
|
||||
REFERENCE COM
|
||||
&END MOMENTS
|
||||
&END PRINT
|
||||
&QS
|
||||
EPS_DEFAULT 1.0E-10
|
||||
GAPW_ACCURATE_XCINT T
|
||||
METHOD GAPW
|
||||
&END QS
|
||||
&SCF
|
||||
EPS_SCF 1.0E-7
|
||||
MAX_SCF 10
|
||||
SCF_GUESS ATOMIC
|
||||
&OT
|
||||
MINIMIZER DIIS
|
||||
PRECONDITIONER FULL_SINGLE_INVERSE
|
||||
&END OT
|
||||
&OUTER_SCF
|
||||
EPS_SCF 1.0E-7
|
||||
MAX_SCF 10
|
||||
&END OUTER_SCF
|
||||
&END SCF
|
||||
&XC
|
||||
&XC_FUNCTIONAL PBE0
|
||||
&END XC_FUNCTIONAL
|
||||
&END XC
|
||||
&END DFT
|
||||
&PROPERTIES
|
||||
&TDDFPT
|
||||
ADMM_KERNEL_CORRECTION_SYMMETRIC
|
||||
ADMM_KERNEL_XC_CORRECTION F
|
||||
CONVERGENCE [eV] 1.0E-8
|
||||
KERNEL FULL
|
||||
MAX_ITER 50
|
||||
NSTATES 1
|
||||
&END TDDFPT
|
||||
&END PROPERTIES
|
||||
&SUBSYS
|
||||
&CELL
|
||||
ABC [angstrom] 4.0 4.0 4.0
|
||||
PERIODIC NONE
|
||||
&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-PADE
|
||||
BASIS_SET AUX_FIT FIT3
|
||||
POTENTIAL GTH-PADE-q1
|
||||
&END KIND
|
||||
&KIND O
|
||||
BASIS_SET DZVP-GTH-PADE
|
||||
BASIS_SET AUX_FIT FIT3
|
||||
POTENTIAL GTH-PADE-q6
|
||||
&END KIND
|
||||
&TOPOLOGY
|
||||
&CENTER_COORDINATES
|
||||
&END CENTER_COORDINATES
|
||||
&END TOPOLOGY
|
||||
&END SUBSYS
|
||||
&END FORCE_EVAL
|
||||
104
tests/QS/regtest-acc-4/ch2o_xc_dip45.inp
Normal file
104
tests/QS/regtest-acc-4/ch2o_xc_dip45.inp
Normal file
|
|
@ -0,0 +1,104 @@
|
|||
&GLOBAL
|
||||
PRINT_LEVEL medium
|
||||
PROJECT td_dipole
|
||||
RUN_TYPE DEBUG
|
||||
&END GLOBAL
|
||||
|
||||
&DEBUG
|
||||
CHECK_DIPOLE_DIRS Z
|
||||
DE 0.001
|
||||
DEBUG_DIPOLE .TRUE.
|
||||
DEBUG_FORCES .FALSE.
|
||||
DEBUG_POLARIZABILITY .FALSE.
|
||||
DEBUG_STRESS_TENSOR .FALSE.
|
||||
&END DEBUG
|
||||
|
||||
&FORCE_EVAL
|
||||
METHOD Quickstep
|
||||
&DFT
|
||||
BASIS_SET_FILE_NAME BASIS_SET
|
||||
POTENTIAL_FILE_NAME GTH_POTENTIALS
|
||||
&EFIELD
|
||||
&END EFIELD
|
||||
&EXCITED_STATES T
|
||||
DEBUG_FORCES T
|
||||
STATE 1
|
||||
&END EXCITED_STATES
|
||||
&MGRID
|
||||
CUTOFF 200
|
||||
&END MGRID
|
||||
&POISSON
|
||||
PERIODIC NONE
|
||||
POISSON_SOLVER MT
|
||||
&END POISSON
|
||||
&PRINT
|
||||
&MOMENTS ON
|
||||
PERIODIC .FALSE.
|
||||
REFERENCE COM
|
||||
&END MOMENTS
|
||||
&END PRINT
|
||||
&QS
|
||||
EPS_DEFAULT 1.0E-10
|
||||
GAPW_ACCURATE_XCINT T
|
||||
METHOD GAPW_XC
|
||||
&END QS
|
||||
&SCF
|
||||
EPS_SCF 1.0E-6
|
||||
MAX_SCF 20
|
||||
SCF_GUESS ATOMIC
|
||||
&OT
|
||||
MINIMIZER DIIS
|
||||
PRECONDITIONER FULL_SINGLE_INVERSE
|
||||
STEPSIZE 0.1
|
||||
&END OT
|
||||
&OUTER_SCF
|
||||
EPS_SCF 1.0E-6
|
||||
MAX_SCF 20
|
||||
&END OUTER_SCF
|
||||
&END SCF
|
||||
&XC
|
||||
&XC_FUNCTIONAL PBE
|
||||
&END XC_FUNCTIONAL
|
||||
&END XC
|
||||
&END DFT
|
||||
&PROPERTIES
|
||||
&TDDFPT
|
||||
CONVERGENCE [eV] 1.0E-6
|
||||
KERNEL FULL
|
||||
MAX_ITER 50
|
||||
NSTATES 1
|
||||
&XC
|
||||
&XC_FUNCTIONAL PBE
|
||||
&END XC_FUNCTIONAL
|
||||
&END XC
|
||||
&END TDDFPT
|
||||
&END PROPERTIES
|
||||
&SUBSYS
|
||||
&CELL
|
||||
ABC [angstrom] 4.0 4.0 4.0
|
||||
PERIODIC NONE
|
||||
&END CELL
|
||||
&COORD
|
||||
O 0.000000 0.000000 0.895642
|
||||
C 0.000000 0.000000 -0.307326
|
||||
H 0.000000 0.947608 -0.895642
|
||||
H 0.000000 -0.947608 -0.895562
|
||||
&END COORD
|
||||
&KIND H
|
||||
BASIS_SET DZVP-GTH-PADE
|
||||
POTENTIAL GTH-PADE-q1
|
||||
&END KIND
|
||||
&KIND C
|
||||
BASIS_SET DZVP-GTH-PADE
|
||||
POTENTIAL GTH-PADE-q4
|
||||
&END KIND
|
||||
&KIND O
|
||||
BASIS_SET DZVP-GTH-PADE
|
||||
POTENTIAL GTH-PADE-q6
|
||||
&END KIND
|
||||
&TOPOLOGY
|
||||
&CENTER_COORDINATES
|
||||
&END CENTER_COORDINATES
|
||||
&END TOPOLOGY
|
||||
&END SUBSYS
|
||||
&END FORCE_EVAL
|
||||
100
tests/QS/regtest-acc-4/ch2o_xc_dip46.inp
Normal file
100
tests/QS/regtest-acc-4/ch2o_xc_dip46.inp
Normal file
|
|
@ -0,0 +1,100 @@
|
|||
&GLOBAL
|
||||
PRINT_LEVEL medium
|
||||
PROJECT td_dipole
|
||||
RUN_TYPE DEBUG
|
||||
&END GLOBAL
|
||||
|
||||
&DEBUG
|
||||
CHECK_DIPOLE_DIRS Z
|
||||
DE 0.001
|
||||
DEBUG_DIPOLE .TRUE.
|
||||
DEBUG_FORCES .FALSE.
|
||||
DEBUG_POLARIZABILITY .FALSE.
|
||||
DEBUG_STRESS_TENSOR .FALSE.
|
||||
&END DEBUG
|
||||
|
||||
&FORCE_EVAL
|
||||
METHOD Quickstep
|
||||
&DFT
|
||||
BASIS_SET_FILE_NAME BASIS_SET
|
||||
POTENTIAL_FILE_NAME GTH_POTENTIALS
|
||||
&EFIELD
|
||||
&END EFIELD
|
||||
&EXCITED_STATES T
|
||||
DEBUG_FORCES T
|
||||
STATE 1
|
||||
&END EXCITED_STATES
|
||||
&MGRID
|
||||
CUTOFF 200
|
||||
&END MGRID
|
||||
&POISSON
|
||||
PERIODIC NONE
|
||||
POISSON_SOLVER MT
|
||||
&END POISSON
|
||||
&PRINT
|
||||
&MOMENTS ON
|
||||
PERIODIC .FALSE.
|
||||
REFERENCE COM
|
||||
&END MOMENTS
|
||||
&END PRINT
|
||||
&QS
|
||||
EPS_DEFAULT 1.0E-10
|
||||
GAPW_ACCURATE_XCINT T
|
||||
METHOD GAPW_XC
|
||||
&END QS
|
||||
&SCF
|
||||
EPS_SCF 1.0E-6
|
||||
MAX_SCF 20
|
||||
SCF_GUESS ATOMIC
|
||||
&OT
|
||||
MINIMIZER DIIS
|
||||
PRECONDITIONER FULL_SINGLE_INVERSE
|
||||
STEPSIZE 0.1
|
||||
&END OT
|
||||
&OUTER_SCF
|
||||
EPS_SCF 1.0E-6
|
||||
MAX_SCF 20
|
||||
&END OUTER_SCF
|
||||
&END SCF
|
||||
&XC
|
||||
&XC_FUNCTIONAL PBE0
|
||||
&END XC_FUNCTIONAL
|
||||
&END XC
|
||||
&END DFT
|
||||
&PROPERTIES
|
||||
&TDDFPT
|
||||
CONVERGENCE [eV] 1.0E-6
|
||||
KERNEL FULL
|
||||
MAX_ITER 50
|
||||
NSTATES 1
|
||||
&END TDDFPT
|
||||
&END PROPERTIES
|
||||
&SUBSYS
|
||||
&CELL
|
||||
ABC [angstrom] 4.0 4.0 4.0
|
||||
PERIODIC NONE
|
||||
&END CELL
|
||||
&COORD
|
||||
O 0.000000 0.000000 0.895642
|
||||
C 0.000000 0.000000 -0.307326
|
||||
H 0.000000 0.947608 -0.895642
|
||||
H 0.000000 -0.947608 -0.895562
|
||||
&END COORD
|
||||
&KIND H
|
||||
BASIS_SET DZV-GTH-PADE
|
||||
POTENTIAL GTH-PADE-q1
|
||||
&END KIND
|
||||
&KIND C
|
||||
BASIS_SET DZVP-GTH-PADE
|
||||
POTENTIAL GTH-PADE-q4
|
||||
&END KIND
|
||||
&KIND O
|
||||
BASIS_SET DZVP-GTH-PADE
|
||||
POTENTIAL GTH-PADE-q6
|
||||
&END KIND
|
||||
&TOPOLOGY
|
||||
&CENTER_COORDINATES
|
||||
&END CENTER_COORDINATES
|
||||
&END TOPOLOGY
|
||||
&END SUBSYS
|
||||
&END FORCE_EVAL
|
||||
103
tests/QS/regtest-acc-4/ch2o_xc_dip47.inp
Normal file
103
tests/QS/regtest-acc-4/ch2o_xc_dip47.inp
Normal file
|
|
@ -0,0 +1,103 @@
|
|||
&GLOBAL
|
||||
PRINT_LEVEL medium
|
||||
PROJECT td_dipole
|
||||
RUN_TYPE DEBUG
|
||||
&END GLOBAL
|
||||
|
||||
&DEBUG
|
||||
CHECK_DIPOLE_DIRS Z
|
||||
DE 0.0005
|
||||
DEBUG_DIPOLE .TRUE.
|
||||
DEBUG_FORCES .FALSE.
|
||||
DEBUG_POLARIZABILITY .FALSE.
|
||||
DEBUG_STRESS_TENSOR .FALSE.
|
||||
&END DEBUG
|
||||
|
||||
&FORCE_EVAL
|
||||
METHOD Quickstep
|
||||
&DFT
|
||||
BASIS_SET_FILE_NAME BASIS_SET
|
||||
BASIS_SET_FILE_NAME BASIS_ADMM
|
||||
POTENTIAL_FILE_NAME GTH_POTENTIALS
|
||||
&AUXILIARY_DENSITY_MATRIX_METHOD
|
||||
ADMM_PURIFICATION_METHOD NONE
|
||||
EXCH_CORRECTION_FUNC NONE
|
||||
EXCH_SCALING_MODEL NONE
|
||||
METHOD BASIS_PROJECTION
|
||||
&END AUXILIARY_DENSITY_MATRIX_METHOD
|
||||
&EFIELD
|
||||
&END EFIELD
|
||||
&EXCITED_STATES T
|
||||
STATE 1
|
||||
&END EXCITED_STATES
|
||||
&MGRID
|
||||
CUTOFF 200
|
||||
&END MGRID
|
||||
&POISSON
|
||||
PERIODIC NONE
|
||||
POISSON_SOLVER MT
|
||||
&END POISSON
|
||||
&PRINT
|
||||
&MOMENTS ON
|
||||
PERIODIC .FALSE.
|
||||
REFERENCE COM
|
||||
&END MOMENTS
|
||||
&END PRINT
|
||||
&QS
|
||||
EPS_DEFAULT 1.0E-10
|
||||
GAPW_ACCURATE_XCINT T
|
||||
METHOD GAPW_XC
|
||||
&END QS
|
||||
&SCF
|
||||
EPS_SCF 1.0E-7
|
||||
MAX_SCF 10
|
||||
SCF_GUESS ATOMIC
|
||||
&OT
|
||||
MINIMIZER DIIS
|
||||
PRECONDITIONER FULL_SINGLE_INVERSE
|
||||
&END OT
|
||||
&OUTER_SCF
|
||||
EPS_SCF 1.0E-7
|
||||
MAX_SCF 10
|
||||
&END OUTER_SCF
|
||||
&END SCF
|
||||
&XC
|
||||
&XC_FUNCTIONAL PBE0
|
||||
&END XC_FUNCTIONAL
|
||||
&END XC
|
||||
&END DFT
|
||||
&PROPERTIES
|
||||
&TDDFPT
|
||||
ADMM_KERNEL_CORRECTION_SYMMETRIC
|
||||
CONVERGENCE [eV] 1.0E-8
|
||||
KERNEL FULL
|
||||
MAX_ITER 50
|
||||
NSTATES 1
|
||||
&END TDDFPT
|
||||
&END PROPERTIES
|
||||
&SUBSYS
|
||||
&CELL
|
||||
ABC [angstrom] 4.0 4.0 4.0
|
||||
PERIODIC NONE
|
||||
&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-PADE
|
||||
BASIS_SET AUX_FIT FIT3
|
||||
POTENTIAL GTH-PADE-q1
|
||||
&END KIND
|
||||
&KIND O
|
||||
BASIS_SET DZVP-GTH-PADE
|
||||
BASIS_SET AUX_FIT FIT3
|
||||
POTENTIAL GTH-PADE-q6
|
||||
&END KIND
|
||||
&TOPOLOGY
|
||||
&CENTER_COORDINATES
|
||||
&END CENTER_COORDINATES
|
||||
&END TOPOLOGY
|
||||
&END SUBSYS
|
||||
&END FORCE_EVAL
|
||||
94
tests/QS/regtest-acc-4/h2o_dip40.inp
Normal file
94
tests/QS/regtest-acc-4/h2o_dip40.inp
Normal file
|
|
@ -0,0 +1,94 @@
|
|||
&GLOBAL
|
||||
PRINT_LEVEL medium
|
||||
PROJECT td_dipole
|
||||
RUN_TYPE DEBUG
|
||||
&END GLOBAL
|
||||
|
||||
&DEBUG
|
||||
CHECK_DIPOLE_DIRS Z
|
||||
DE 0.001
|
||||
DEBUG_DIPOLE .TRUE.
|
||||
DEBUG_FORCES .FALSE.
|
||||
DEBUG_POLARIZABILITY .FALSE.
|
||||
DEBUG_STRESS_TENSOR .FALSE.
|
||||
&END DEBUG
|
||||
|
||||
&FORCE_EVAL
|
||||
METHOD Quickstep
|
||||
&DFT
|
||||
BASIS_SET_FILE_NAME BASIS_SET
|
||||
POTENTIAL_FILE_NAME GTH_POTENTIALS
|
||||
&EFIELD
|
||||
&END EFIELD
|
||||
&EXCITED_STATES T
|
||||
STATE 1
|
||||
&END EXCITED_STATES
|
||||
&MGRID
|
||||
CUTOFF 200
|
||||
&END MGRID
|
||||
&POISSON
|
||||
PERIODIC NONE
|
||||
POISSON_SOLVER MT
|
||||
&END POISSON
|
||||
&PRINT
|
||||
&MOMENTS ON
|
||||
PERIODIC .FALSE.
|
||||
REFERENCE COM
|
||||
&END MOMENTS
|
||||
&END PRINT
|
||||
&QS
|
||||
EPS_DEFAULT 1.0E-10
|
||||
GAPW_ACCURATE_XCINT T
|
||||
METHOD GAPW
|
||||
&END QS
|
||||
&SCF
|
||||
EPS_SCF 1.0E-7
|
||||
MAX_SCF 20
|
||||
SCF_GUESS ATOMIC
|
||||
&OT
|
||||
MINIMIZER DIIS
|
||||
PRECONDITIONER FULL_SINGLE_INVERSE
|
||||
STEPSIZE 0.1
|
||||
&END OT
|
||||
&OUTER_SCF
|
||||
EPS_SCF 1.0E-7
|
||||
MAX_SCF 20
|
||||
&END OUTER_SCF
|
||||
&END SCF
|
||||
&XC
|
||||
&XC_FUNCTIONAL PBE
|
||||
&END XC_FUNCTIONAL
|
||||
&END XC
|
||||
&END DFT
|
||||
&PROPERTIES
|
||||
&TDDFPT
|
||||
CONVERGENCE [eV] 1.0E-7
|
||||
KERNEL NONE
|
||||
MAX_ITER 50
|
||||
NSTATES 1
|
||||
&END TDDFPT
|
||||
&END PROPERTIES
|
||||
&SUBSYS
|
||||
&CELL
|
||||
ABC [angstrom] 4.0 4.0 4.0
|
||||
PERIODIC NONE
|
||||
&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-PADE
|
||||
POTENTIAL GTH-PADE-q1
|
||||
&END KIND
|
||||
&KIND O
|
||||
BASIS_SET DZVP-GTH-PADE
|
||||
POTENTIAL GTH-PADE-q6
|
||||
&END KIND
|
||||
&TOPOLOGY
|
||||
&CENTER_COORDINATES
|
||||
&END CENTER_COORDINATES
|
||||
&END TOPOLOGY
|
||||
&END SUBSYS
|
||||
&END FORCE_EVAL
|
||||
98
tests/QS/regtest-acc-4/h2o_dip41.inp
Normal file
98
tests/QS/regtest-acc-4/h2o_dip41.inp
Normal file
|
|
@ -0,0 +1,98 @@
|
|||
&GLOBAL
|
||||
PRINT_LEVEL medium
|
||||
PROJECT td_dipole
|
||||
RUN_TYPE DEBUG
|
||||
&END GLOBAL
|
||||
|
||||
&DEBUG
|
||||
CHECK_DIPOLE_DIRS Z
|
||||
DE 0.001
|
||||
DEBUG_DIPOLE .TRUE.
|
||||
DEBUG_FORCES .FALSE.
|
||||
DEBUG_POLARIZABILITY .FALSE.
|
||||
DEBUG_STRESS_TENSOR .FALSE.
|
||||
&END DEBUG
|
||||
|
||||
&FORCE_EVAL
|
||||
METHOD Quickstep
|
||||
&DFT
|
||||
BASIS_SET_FILE_NAME BASIS_SET
|
||||
POTENTIAL_FILE_NAME GTH_POTENTIALS
|
||||
&EFIELD
|
||||
&END EFIELD
|
||||
&EXCITED_STATES T
|
||||
STATE 1
|
||||
&END EXCITED_STATES
|
||||
&MGRID
|
||||
CUTOFF 200
|
||||
&END MGRID
|
||||
&POISSON
|
||||
PERIODIC NONE
|
||||
POISSON_SOLVER MT
|
||||
&END POISSON
|
||||
&PRINT
|
||||
&MOMENTS ON
|
||||
PERIODIC .FALSE.
|
||||
REFERENCE COM
|
||||
&END MOMENTS
|
||||
&END PRINT
|
||||
&QS
|
||||
EPS_DEFAULT 1.0E-10
|
||||
GAPW_ACCURATE_XCINT T
|
||||
METHOD GAPW
|
||||
&END QS
|
||||
&SCF
|
||||
EPS_SCF 1.0E-7
|
||||
MAX_SCF 20
|
||||
SCF_GUESS ATOMIC
|
||||
&OT
|
||||
MINIMIZER DIIS
|
||||
PRECONDITIONER FULL_ALL
|
||||
STEPSIZE 0.1
|
||||
&END OT
|
||||
&OUTER_SCF
|
||||
EPS_SCF 1.0E-7
|
||||
MAX_SCF 20
|
||||
&END OUTER_SCF
|
||||
&END SCF
|
||||
&XC
|
||||
&XC_FUNCTIONAL PBE
|
||||
&END XC_FUNCTIONAL
|
||||
&END XC
|
||||
&END DFT
|
||||
&PROPERTIES
|
||||
&TDDFPT
|
||||
CONVERGENCE [eV] 1.0E-8
|
||||
KERNEL FULL
|
||||
MAX_ITER 50
|
||||
NSTATES 1
|
||||
&XC
|
||||
&XC_FUNCTIONAL PADE
|
||||
&END XC_FUNCTIONAL
|
||||
&END XC
|
||||
&END TDDFPT
|
||||
&END PROPERTIES
|
||||
&SUBSYS
|
||||
&CELL
|
||||
ABC [angstrom] 4.0 4.0 4.0
|
||||
PERIODIC NONE
|
||||
&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-PADE
|
||||
POTENTIAL GTH-PADE-q1
|
||||
&END KIND
|
||||
&KIND O
|
||||
BASIS_SET DZVP-GTH-PADE
|
||||
POTENTIAL GTH-PADE-q6
|
||||
&END KIND
|
||||
&TOPOLOGY
|
||||
&CENTER_COORDINATES
|
||||
&END CENTER_COORDINATES
|
||||
&END TOPOLOGY
|
||||
&END SUBSYS
|
||||
&END FORCE_EVAL
|
||||
99
tests/QS/regtest-acc-4/h2o_dip42.inp
Normal file
99
tests/QS/regtest-acc-4/h2o_dip42.inp
Normal file
|
|
@ -0,0 +1,99 @@
|
|||
&GLOBAL
|
||||
PRINT_LEVEL medium
|
||||
PROJECT td_dipole
|
||||
RUN_TYPE DEBUG
|
||||
&END GLOBAL
|
||||
|
||||
&DEBUG
|
||||
CHECK_DIPOLE_DIRS Z
|
||||
DE 0.001
|
||||
DEBUG_DIPOLE .TRUE.
|
||||
DEBUG_FORCES .FALSE.
|
||||
DEBUG_POLARIZABILITY .FALSE.
|
||||
DEBUG_STRESS_TENSOR .FALSE.
|
||||
&END DEBUG
|
||||
|
||||
&FORCE_EVAL
|
||||
METHOD Quickstep
|
||||
&DFT
|
||||
BASIS_SET_FILE_NAME BASIS_SET
|
||||
POTENTIAL_FILE_NAME GTH_POTENTIALS
|
||||
&EFIELD
|
||||
&END EFIELD
|
||||
&EXCITED_STATES T
|
||||
DEBUG_FORCES T
|
||||
STATE 1
|
||||
&END EXCITED_STATES
|
||||
&MGRID
|
||||
CUTOFF 200
|
||||
&END MGRID
|
||||
&POISSON
|
||||
PERIODIC NONE
|
||||
POISSON_SOLVER MT
|
||||
&END POISSON
|
||||
&PRINT
|
||||
&MOMENTS ON
|
||||
PERIODIC .FALSE.
|
||||
REFERENCE COM
|
||||
&END MOMENTS
|
||||
&END PRINT
|
||||
&QS
|
||||
EPS_DEFAULT 1.0E-10
|
||||
GAPW_ACCURATE_XCINT T
|
||||
METHOD GAPW
|
||||
&END QS
|
||||
&SCF
|
||||
EPS_SCF 1.0E-7
|
||||
MAX_SCF 20
|
||||
SCF_GUESS ATOMIC
|
||||
&OT
|
||||
MINIMIZER DIIS
|
||||
PRECONDITIONER FULL_ALL
|
||||
STEPSIZE 0.1
|
||||
&END OT
|
||||
&OUTER_SCF
|
||||
EPS_SCF 1.0E-7
|
||||
MAX_SCF 20
|
||||
&END OUTER_SCF
|
||||
&END SCF
|
||||
&XC
|
||||
&XC_FUNCTIONAL PBE
|
||||
&END XC_FUNCTIONAL
|
||||
&END XC
|
||||
&END DFT
|
||||
&PROPERTIES
|
||||
&TDDFPT
|
||||
CONVERGENCE [eV] 1.0E-7
|
||||
KERNEL FULL
|
||||
MAX_ITER 50
|
||||
NSTATES 1
|
||||
&XC
|
||||
&XC_FUNCTIONAL PBE
|
||||
&END XC_FUNCTIONAL
|
||||
&END XC
|
||||
&END TDDFPT
|
||||
&END PROPERTIES
|
||||
&SUBSYS
|
||||
&CELL
|
||||
ABC [angstrom] 4.0 4.0 4.0
|
||||
PERIODIC NONE
|
||||
&END CELL
|
||||
&COORD
|
||||
O 0.00000 0.00000 0.11779
|
||||
H 0.00000 0.75545 -0.47116
|
||||
H 0.00000 -0.75545 -0.47116
|
||||
&END COORD
|
||||
&KIND H
|
||||
BASIS_SET DZVP-GTH-PADE
|
||||
POTENTIAL GTH-PADE-q1
|
||||
&END KIND
|
||||
&KIND O
|
||||
BASIS_SET DZVP-GTH-PADE
|
||||
POTENTIAL GTH-PADE-q6
|
||||
&END KIND
|
||||
&TOPOLOGY
|
||||
&CENTER_COORDINATES
|
||||
&END CENTER_COORDINATES
|
||||
&END TOPOLOGY
|
||||
&END SUBSYS
|
||||
&END FORCE_EVAL
|
||||
94
tests/QS/regtest-acc-4/h2o_xc_dip40.inp
Normal file
94
tests/QS/regtest-acc-4/h2o_xc_dip40.inp
Normal file
|
|
@ -0,0 +1,94 @@
|
|||
&GLOBAL
|
||||
PRINT_LEVEL medium
|
||||
PROJECT td_dipole
|
||||
RUN_TYPE DEBUG
|
||||
&END GLOBAL
|
||||
|
||||
&DEBUG
|
||||
CHECK_DIPOLE_DIRS Z
|
||||
DE 0.001
|
||||
DEBUG_DIPOLE .TRUE.
|
||||
DEBUG_FORCES .FALSE.
|
||||
DEBUG_POLARIZABILITY .FALSE.
|
||||
DEBUG_STRESS_TENSOR .FALSE.
|
||||
&END DEBUG
|
||||
|
||||
&FORCE_EVAL
|
||||
METHOD Quickstep
|
||||
&DFT
|
||||
BASIS_SET_FILE_NAME BASIS_SET
|
||||
POTENTIAL_FILE_NAME GTH_POTENTIALS
|
||||
&EFIELD
|
||||
&END EFIELD
|
||||
&EXCITED_STATES T
|
||||
STATE 1
|
||||
&END EXCITED_STATES
|
||||
&MGRID
|
||||
CUTOFF 200
|
||||
&END MGRID
|
||||
&POISSON
|
||||
PERIODIC NONE
|
||||
POISSON_SOLVER MT
|
||||
&END POISSON
|
||||
&PRINT
|
||||
&MOMENTS ON
|
||||
PERIODIC .FALSE.
|
||||
REFERENCE COM
|
||||
&END MOMENTS
|
||||
&END PRINT
|
||||
&QS
|
||||
EPS_DEFAULT 1.0E-10
|
||||
GAPW_ACCURATE_XCINT T
|
||||
METHOD GAPW_XC
|
||||
&END QS
|
||||
&SCF
|
||||
EPS_SCF 1.0E-7
|
||||
MAX_SCF 20
|
||||
SCF_GUESS ATOMIC
|
||||
&OT
|
||||
MINIMIZER DIIS
|
||||
PRECONDITIONER FULL_ALL
|
||||
STEPSIZE 0.1
|
||||
&END OT
|
||||
&OUTER_SCF
|
||||
EPS_SCF 1.0E-7
|
||||
MAX_SCF 20
|
||||
&END OUTER_SCF
|
||||
&END SCF
|
||||
&XC
|
||||
&XC_FUNCTIONAL PBE
|
||||
&END XC_FUNCTIONAL
|
||||
&END XC
|
||||
&END DFT
|
||||
&PROPERTIES
|
||||
&TDDFPT
|
||||
CONVERGENCE [eV] 1.0E-7
|
||||
KERNEL NONE
|
||||
MAX_ITER 50
|
||||
NSTATES 1
|
||||
&END TDDFPT
|
||||
&END PROPERTIES
|
||||
&SUBSYS
|
||||
&CELL
|
||||
ABC [angstrom] 4.0 4.0 4.0
|
||||
PERIODIC NONE
|
||||
&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-PADE
|
||||
POTENTIAL GTH-PADE-q1
|
||||
&END KIND
|
||||
&KIND O
|
||||
BASIS_SET DZVP-GTH-PADE
|
||||
POTENTIAL GTH-PADE-q6
|
||||
&END KIND
|
||||
&TOPOLOGY
|
||||
&CENTER_COORDINATES
|
||||
&END CENTER_COORDINATES
|
||||
&END TOPOLOGY
|
||||
&END SUBSYS
|
||||
&END FORCE_EVAL
|
||||
98
tests/QS/regtest-acc-4/h2o_xc_dip41.inp
Normal file
98
tests/QS/regtest-acc-4/h2o_xc_dip41.inp
Normal file
|
|
@ -0,0 +1,98 @@
|
|||
&GLOBAL
|
||||
PRINT_LEVEL medium
|
||||
PROJECT td_dipole
|
||||
RUN_TYPE DEBUG
|
||||
&END GLOBAL
|
||||
|
||||
&DEBUG
|
||||
CHECK_DIPOLE_DIRS Z
|
||||
DE 0.002
|
||||
DEBUG_DIPOLE .TRUE.
|
||||
DEBUG_FORCES .FALSE.
|
||||
DEBUG_POLARIZABILITY .FALSE.
|
||||
DEBUG_STRESS_TENSOR .FALSE.
|
||||
&END DEBUG
|
||||
|
||||
&FORCE_EVAL
|
||||
METHOD Quickstep
|
||||
&DFT
|
||||
BASIS_SET_FILE_NAME BASIS_SET
|
||||
POTENTIAL_FILE_NAME GTH_POTENTIALS
|
||||
&EFIELD
|
||||
&END EFIELD
|
||||
&EXCITED_STATES T
|
||||
STATE 1
|
||||
&END EXCITED_STATES
|
||||
&MGRID
|
||||
CUTOFF 200
|
||||
&END MGRID
|
||||
&POISSON
|
||||
PERIODIC NONE
|
||||
POISSON_SOLVER MT
|
||||
&END POISSON
|
||||
&PRINT
|
||||
&MOMENTS ON
|
||||
PERIODIC .FALSE.
|
||||
REFERENCE COM
|
||||
&END MOMENTS
|
||||
&END PRINT
|
||||
&QS
|
||||
EPS_DEFAULT 1.0E-10
|
||||
GAPW_ACCURATE_XCINT T
|
||||
METHOD GAPW_XC
|
||||
&END QS
|
||||
&SCF
|
||||
EPS_SCF 1.0E-7
|
||||
MAX_SCF 20
|
||||
SCF_GUESS ATOMIC
|
||||
&OT
|
||||
MINIMIZER DIIS
|
||||
PRECONDITIONER FULL_ALL
|
||||
STEPSIZE 0.1
|
||||
&END OT
|
||||
&OUTER_SCF
|
||||
EPS_SCF 1.0E-7
|
||||
MAX_SCF 20
|
||||
&END OUTER_SCF
|
||||
&END SCF
|
||||
&XC
|
||||
&XC_FUNCTIONAL PBE
|
||||
&END XC_FUNCTIONAL
|
||||
&END XC
|
||||
&END DFT
|
||||
&PROPERTIES
|
||||
&TDDFPT
|
||||
CONVERGENCE [eV] 1.0E-7
|
||||
KERNEL FULL
|
||||
MAX_ITER 50
|
||||
NSTATES 1
|
||||
&XC
|
||||
&XC_FUNCTIONAL PADE
|
||||
&END XC_FUNCTIONAL
|
||||
&END XC
|
||||
&END TDDFPT
|
||||
&END PROPERTIES
|
||||
&SUBSYS
|
||||
&CELL
|
||||
ABC [angstrom] 4.0 4.0 4.0
|
||||
PERIODIC NONE
|
||||
&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-PADE
|
||||
POTENTIAL GTH-PADE-q1
|
||||
&END KIND
|
||||
&KIND O
|
||||
BASIS_SET DZVP-GTH-PADE
|
||||
POTENTIAL GTH-PADE-q6
|
||||
&END KIND
|
||||
&TOPOLOGY
|
||||
&CENTER_COORDINATES
|
||||
&END CENTER_COORDINATES
|
||||
&END TOPOLOGY
|
||||
&END SUBSYS
|
||||
&END FORCE_EVAL
|
||||
99
tests/QS/regtest-acc-4/h2o_xc_dip42.inp
Normal file
99
tests/QS/regtest-acc-4/h2o_xc_dip42.inp
Normal file
|
|
@ -0,0 +1,99 @@
|
|||
&GLOBAL
|
||||
PRINT_LEVEL medium
|
||||
PROJECT td_dipole
|
||||
RUN_TYPE DEBUG
|
||||
&END GLOBAL
|
||||
|
||||
&DEBUG
|
||||
CHECK_DIPOLE_DIRS Z
|
||||
DE 0.001
|
||||
DEBUG_DIPOLE .TRUE.
|
||||
DEBUG_FORCES .FALSE.
|
||||
DEBUG_POLARIZABILITY .FALSE.
|
||||
DEBUG_STRESS_TENSOR .FALSE.
|
||||
&END DEBUG
|
||||
|
||||
&FORCE_EVAL
|
||||
METHOD Quickstep
|
||||
&DFT
|
||||
BASIS_SET_FILE_NAME BASIS_SET
|
||||
POTENTIAL_FILE_NAME GTH_POTENTIALS
|
||||
&EFIELD
|
||||
&END EFIELD
|
||||
&EXCITED_STATES T
|
||||
DEBUG_FORCES T
|
||||
STATE 1
|
||||
&END EXCITED_STATES
|
||||
&MGRID
|
||||
CUTOFF 200
|
||||
&END MGRID
|
||||
&POISSON
|
||||
PERIODIC NONE
|
||||
POISSON_SOLVER MT
|
||||
&END POISSON
|
||||
&PRINT
|
||||
&MOMENTS ON
|
||||
PERIODIC .FALSE.
|
||||
REFERENCE COM
|
||||
&END MOMENTS
|
||||
&END PRINT
|
||||
&QS
|
||||
EPS_DEFAULT 1.0E-10
|
||||
GAPW_ACCURATE_XCINT T
|
||||
METHOD GAPW
|
||||
&END QS
|
||||
&SCF
|
||||
EPS_SCF 1.0E-7
|
||||
MAX_SCF 20
|
||||
SCF_GUESS ATOMIC
|
||||
&OT
|
||||
MINIMIZER DIIS
|
||||
PRECONDITIONER FULL_SINGLE_INVERSE
|
||||
STEPSIZE 0.1
|
||||
&END OT
|
||||
&OUTER_SCF
|
||||
EPS_SCF 1.0E-7
|
||||
MAX_SCF 20
|
||||
&END OUTER_SCF
|
||||
&END SCF
|
||||
&XC
|
||||
&XC_FUNCTIONAL PBE
|
||||
&END XC_FUNCTIONAL
|
||||
&END XC
|
||||
&END DFT
|
||||
&PROPERTIES
|
||||
&TDDFPT
|
||||
CONVERGENCE [eV] 1.0E-7
|
||||
KERNEL FULL
|
||||
MAX_ITER 50
|
||||
NSTATES 1
|
||||
&XC
|
||||
&XC_FUNCTIONAL PBE
|
||||
&END XC_FUNCTIONAL
|
||||
&END XC
|
||||
&END TDDFPT
|
||||
&END PROPERTIES
|
||||
&SUBSYS
|
||||
&CELL
|
||||
ABC [angstrom] 4.0 4.0 4.0
|
||||
PERIODIC NONE
|
||||
&END CELL
|
||||
&COORD
|
||||
O 0.00000 0.00000 0.11779
|
||||
H 0.00000 0.75545 -0.47116
|
||||
H 0.00000 -0.75545 -0.47116
|
||||
&END COORD
|
||||
&KIND H
|
||||
BASIS_SET DZVP-GTH-PADE
|
||||
POTENTIAL GTH-PADE-q1
|
||||
&END KIND
|
||||
&KIND O
|
||||
BASIS_SET DZVP-GTH-PADE
|
||||
POTENTIAL GTH-PADE-q6
|
||||
&END KIND
|
||||
&TOPOLOGY
|
||||
&CENTER_COORDINATES
|
||||
&END CENTER_COORDINATES
|
||||
&END TOPOLOGY
|
||||
&END SUBSYS
|
||||
&END FORCE_EVAL
|
||||
31
tests/QS/regtest-acc-5/TEST_FILES.toml
Normal file
31
tests/QS/regtest-acc-5/TEST_FILES.toml
Normal file
|
|
@ -0,0 +1,31 @@
|
|||
# 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
|
||||
"h2o_f01.inp" = [{matcher="M037", tol=1.0E-4, ref=0.138486E+00}]
|
||||
"h2o_f01_coulomb_only.inp" = [{matcher="M037", tol=1.0E-4, ref=1.012588E+00}]
|
||||
"h2o_f01_pbe_gapwxc.inp" = [{matcher="M037", tol=1.0E-4, ref=0.138495E+00}]
|
||||
"h2o_f01_pbe.inp" = [{matcher="M037", tol=1.0E-4, ref=0.141293E+00}]
|
||||
"h2o_f02_coulomb_only.inp" = [{matcher="M037", tol=1.0E-4, ref=0.202091E+00}]
|
||||
"h2o_t01.inp" = []
|
||||
"h2o_t02.inp" = []
|
||||
"h2o_t03.inp" = []
|
||||
"h2o_t04.inp" = []
|
||||
"h2o_t05.inp" = []
|
||||
"h2o_t06.inp" = []
|
||||
"h2o_t07.inp" = []
|
||||
"h2o_t08.inp" = []
|
||||
"h2o_t09.inp" = []
|
||||
"h2o_t10.inp" = []
|
||||
"h2o_t11.inp" = []
|
||||
"h2o_t12.inp" = []
|
||||
#
|
||||
"bnt1.inp" = []
|
||||
"bnt2.inp" = []
|
||||
"bnt3.inp" = []
|
||||
#
|
||||
"ft1.inp" = []
|
||||
"ft2.inp" = []
|
||||
"ft3.inp" = []
|
||||
#EOF
|
||||
83
tests/QS/regtest-acc-5/bnt1.inp
Normal file
83
tests/QS/regtest-acc-5/bnt1.inp
Normal file
|
|
@ -0,0 +1,83 @@
|
|||
&GLOBAL
|
||||
PRINT_LEVEL LOW
|
||||
PROJECT bn_test
|
||||
RUN_TYPE DEBUG
|
||||
&END GLOBAL
|
||||
|
||||
&DEBUG
|
||||
CHECK_ATOM_FORCE 1 z
|
||||
DE 0.001
|
||||
DEBUG_DIPOLE .FALSE.
|
||||
DEBUG_FORCES .TRUE.
|
||||
DEBUG_POLARIZABILITY .FALSE.
|
||||
DEBUG_STRESS_TENSOR .FALSE.
|
||||
STOP_ON_MISMATCH T
|
||||
&END DEBUG
|
||||
|
||||
&FORCE_EVAL
|
||||
METHOD QS
|
||||
&DFT
|
||||
BASIS_SET_FILE_NAME GTH_BASIS_SETS
|
||||
POTENTIAL_FILE_NAME POTENTIAL_UZH
|
||||
&EXCITED_STATES T
|
||||
DEBUG_FORCES T
|
||||
STATE 1
|
||||
&END EXCITED_STATES
|
||||
&MGRID
|
||||
CUTOFF 240
|
||||
REL_CUTOFF 60
|
||||
&END MGRID
|
||||
&QS
|
||||
EPSFIT 1.E-4
|
||||
EPSISO 1.E-12
|
||||
EPSRHO0 1.E-6
|
||||
EPS_DEFAULT 1.E-10
|
||||
GAPW_1C_BASIS EXT_SMALL
|
||||
GAPW_ACCURATE_XCINT T
|
||||
LMAXN0 4
|
||||
METHOD GAPW
|
||||
&END QS
|
||||
&SCF
|
||||
EPS_SCF 1.E-6
|
||||
MAX_SCF 30
|
||||
SCF_GUESS ATOMIC
|
||||
&END SCF
|
||||
&XC
|
||||
&XC_FUNCTIONAL PADE
|
||||
&END XC_FUNCTIONAL
|
||||
&END XC
|
||||
&END DFT
|
||||
&PROPERTIES
|
||||
&TDDFPT
|
||||
CONVERGENCE [eV] 1.0e-8
|
||||
KERNEL FULL
|
||||
MAX_ITER 50
|
||||
NSTATES 1
|
||||
RKS_TRIPLETS F
|
||||
&END TDDFPT
|
||||
&END PROPERTIES
|
||||
&SUBSYS
|
||||
&CELL
|
||||
ABC 5.00 5.00 5.00
|
||||
PERIODIC NONE
|
||||
&END CELL
|
||||
&COORD
|
||||
N 0.000000 0.000000 0.737566
|
||||
B 0.000000 0.000000 -0.567357
|
||||
H 0.000000 1.056538 -1.163089
|
||||
H -0.000000 -1.056538 -1.163089
|
||||
&END COORD
|
||||
&KIND H
|
||||
BASIS_SET DZV-GTH
|
||||
POTENTIAL GTH-GGA-q1
|
||||
&END KIND
|
||||
&KIND B
|
||||
BASIS_SET DZVP-GTH
|
||||
POTENTIAL GTH-GGA-q3
|
||||
&END KIND
|
||||
&KIND N
|
||||
BASIS_SET DZVP-GTH
|
||||
POTENTIAL GTH-GGA-q5
|
||||
&END KIND
|
||||
&END SUBSYS
|
||||
&END FORCE_EVAL
|
||||
84
tests/QS/regtest-acc-5/bnt2.inp
Normal file
84
tests/QS/regtest-acc-5/bnt2.inp
Normal file
|
|
@ -0,0 +1,84 @@
|
|||
&GLOBAL
|
||||
PRINT_LEVEL LOW
|
||||
PROJECT bn_test
|
||||
RUN_TYPE DEBUG
|
||||
&END GLOBAL
|
||||
|
||||
&DEBUG
|
||||
CHECK_ATOM_FORCE 1 z
|
||||
DE 0.001
|
||||
DEBUG_DIPOLE .FALSE.
|
||||
DEBUG_FORCES .TRUE.
|
||||
DEBUG_POLARIZABILITY .FALSE.
|
||||
DEBUG_STRESS_TENSOR .FALSE.
|
||||
STOP_ON_MISMATCH T
|
||||
&END DEBUG
|
||||
|
||||
&FORCE_EVAL
|
||||
METHOD QS
|
||||
&DFT
|
||||
BASIS_SET_FILE_NAME GTH_BASIS_SETS
|
||||
POTENTIAL_FILE_NAME POTENTIAL_UZH
|
||||
&EXCITED_STATES T
|
||||
DEBUG_FORCES T
|
||||
STATE 1
|
||||
&END EXCITED_STATES
|
||||
&MGRID
|
||||
CUTOFF 240
|
||||
REL_CUTOFF 60
|
||||
&END MGRID
|
||||
&QS
|
||||
EPSFIT 1.E-4
|
||||
EPSISO 1.E-12
|
||||
EPSRHO0 1.E-6
|
||||
EPS_DEFAULT 1.E-10
|
||||
FORCE_PAW
|
||||
GAPW_1C_BASIS EXT_SMALL
|
||||
GAPW_ACCURATE_XCINT T
|
||||
LMAXN0 4
|
||||
METHOD GAPW
|
||||
&END QS
|
||||
&SCF
|
||||
EPS_SCF 1.E-6
|
||||
MAX_SCF 30
|
||||
SCF_GUESS ATOMIC
|
||||
&END SCF
|
||||
&XC
|
||||
&XC_FUNCTIONAL PADE
|
||||
&END XC_FUNCTIONAL
|
||||
&END XC
|
||||
&END DFT
|
||||
&PROPERTIES
|
||||
&TDDFPT
|
||||
CONVERGENCE [eV] 1.0e-8
|
||||
KERNEL FULL
|
||||
MAX_ITER 50
|
||||
NSTATES 1
|
||||
RKS_TRIPLETS F
|
||||
&END TDDFPT
|
||||
&END PROPERTIES
|
||||
&SUBSYS
|
||||
&CELL
|
||||
ABC 5.00 5.00 5.00
|
||||
PERIODIC NONE
|
||||
&END CELL
|
||||
&COORD
|
||||
N 0.000000 0.000000 0.737566
|
||||
B 0.000000 0.000000 -0.567357
|
||||
H 0.000000 1.056538 -1.163089
|
||||
H -0.000000 -1.056538 -1.163089
|
||||
&END COORD
|
||||
&KIND H
|
||||
BASIS_SET DZV-GTH
|
||||
POTENTIAL GTH-GGA-q1
|
||||
&END KIND
|
||||
&KIND B
|
||||
BASIS_SET DZVP-GTH
|
||||
POTENTIAL GTH-GGA-q3
|
||||
&END KIND
|
||||
&KIND N
|
||||
BASIS_SET DZVP-GTH
|
||||
POTENTIAL GTH-GGA-q5
|
||||
&END KIND
|
||||
&END SUBSYS
|
||||
&END FORCE_EVAL
|
||||
Some files were not shown because too many files have changed in this diff Show more
Loading…
Add table
Add a link
Reference in a new issue