grad_en_hellman_feynman Subroutine

public subroutine grad_en_hellman_feynman(basis, coord, zq, denab, de, logtol)

@brief Hellmann-Feynman force @details Compute derivative contributions due to the Hamiltonian operator change w.r.t. shifts of nuclei. The contribution of the form is evaluated by Gauss-Rys quadrature. This version handles spdfg and L shells.

Note

No relativistic methods available @author Vladimir Mironov @date Sep, 2018 Initial release

@param[in,out] denab density matrix in packed format, remains unchanged on return

Arguments

Type IntentOptional Attributes Name
type(basis_set), intent(inout) :: basis
real(kind=dp), intent(in), contiguous :: coord(:,:)
real(kind=dp), intent(in), contiguous :: zq(:)
real(kind=dp), intent(inout) :: denab(:)
real(kind=dp) :: de(:,:)
real(kind=dp), optional :: logtol

Calls

proc~~grad_en_hellman_feynman~~CallsGraph proc~grad_en_hellman_feynman grad_en_hellman_feynman interface~bas_norm_matrix bas_norm_matrix proc~grad_en_hellman_feynman->interface~bas_norm_matrix interface~unpack_matrix unpack_matrix proc~grad_en_hellman_feynman->interface~unpack_matrix none~alloc~2 shpair_t%alloc proc~grad_en_hellman_feynman->none~alloc~2 none~fetch_by_id shell_t%fetch_by_id proc~grad_en_hellman_feynman->none~fetch_by_id none~shell_pair shpair_t%shell_pair proc~grad_en_hellman_feynman->none~shell_pair proc~comp_coulomb_helfeyder1 comp_coulomb_helfeyder1 proc~grad_en_hellman_feynman->proc~comp_coulomb_helfeyder1 proc~unpack_f90 UNPACK_F90 interface~unpack_matrix->proc~unpack_f90 none~evaluate rys_root_t%evaluate proc~comp_coulomb_helfeyder1->none~evaluate interface~show_message show_message proc~unpack_f90->interface~show_message proc~oqp_dtpttr_i64 oqp_dtpttr_i64 proc~unpack_f90->proc~oqp_dtpttr_i64 proc~oqp_dtpttr_i64->interface~show_message dtpttr dtpttr proc~oqp_dtpttr_i64->dtpttr

Called by

proc~~grad_en_hellman_feynman~~CalledByGraph proc~grad_en_hellman_feynman grad_en_hellman_feynman proc~hf_gradient hf_gradient proc~hf_gradient->proc~grad_en_hellman_feynman proc~tdhf_1e_grad tdhf_1e_grad proc~tdhf_1e_grad->proc~grad_en_hellman_feynman proc~tdhf_gradient tdhf_gradient proc~tdhf_gradient->proc~tdhf_1e_grad proc~tdhf_gradient_c tdhf_gradient_C proc~tdhf_gradient_c->proc~tdhf_gradient