grd1 Module


Uses

  • module~~grd1~~UsesGraph module~grd1 grd1 module~atomic_structure_m atomic_structure_m module~grd1->module~atomic_structure_m module~basis_tools basis_tools module~grd1->module~basis_tools module~ecp_tool ecp_tool module~grd1->module~ecp_tool module~io_constants io_constants module~grd1->module~io_constants module~mathlib mathlib module~grd1->module~mathlib module~mod_1e_primitives mod_1e_primitives module~grd1->module~mod_1e_primitives module~mod_shell_tools mod_shell_tools module~grd1->module~mod_shell_tools module~precision precision module~grd1->module~precision module~types types module~grd1->module~types iso_c_binding iso_c_binding module~atomic_structure_m->iso_c_binding module~basis_tools->module~atomic_structure_m module~basis_tools->module~io_constants module~basis_tools->module~precision iso_fortran_env iso_fortran_env module~basis_tools->iso_fortran_env module~constants constants module~basis_tools->module~constants module~parallel parallel module~basis_tools->module~parallel module~ecp_tool->module~basis_tools module~ecp_tool->module~precision module~ecp_tool->iso_c_binding module~ecp_tool->iso_fortran_env module~libecp_result libecp_result module~ecp_tool->module~libecp_result module~libecpint_wrapper libecpint_wrapper module~ecp_tool->module~libecpint_wrapper module~mathlib->module~precision module~oqp_linalg oqp_linalg module~mathlib->module~oqp_linalg module~mod_1e_primitives->module~mod_shell_tools module~mod_1e_primitives->iso_fortran_env module~mod_1e_primitives->module~constants module~mod_gauss_hermite mod_gauss_hermite module~mod_1e_primitives->module~mod_gauss_hermite module~rys rys module~mod_1e_primitives->module~rys module~xyz_order xyz_order module~mod_1e_primitives->module~xyz_order module~mod_shell_tools->module~basis_tools module~mod_shell_tools->module~precision module~precision->iso_fortran_env module~types->module~atomic_structure_m module~types->module~basis_tools module~types->module~precision module~types->iso_c_binding module~functionals functionals module~types->module~functionals module~types->module~parallel tagarray tagarray module~types->tagarray module~constants->module~precision module~functionals->module~precision module~functionals->iso_c_binding xc_f03_lib_m xc_f03_lib_m module~functionals->xc_f03_lib_m module~libecp_result->iso_c_binding module~libecpint_wrapper->iso_c_binding module~mod_gauss_hermite->module~precision module~blas_wrap blas_wrap module~oqp_linalg->module~blas_wrap module~lapack_wrap lapack_wrap module~oqp_linalg->module~lapack_wrap module~parallel->module~precision module~parallel->iso_c_binding module~parallel->iso_fortran_env mpi mpi module~parallel->mpi module~rys->module~precision module~rys->module~constants module~rys_lut rys_lut module~rys->module~rys_lut module~blas_wrap->module~precision module~mathlib_types mathlib_types module~blas_wrap->module~mathlib_types module~messages messages module~blas_wrap->module~messages module~lapack_wrap->module~precision module~lapack_wrap->module~mathlib_types module~lapack_wrap->module~messages module~messages->module~io_constants module~messages->module~precision comm_IOFILE comm_IOFILE module~messages->comm_IOFILE comm_PAR comm_PAR module~messages->comm_PAR

Used by

  • module~~grd1~~UsedByGraph module~grd1 grd1 proc~hf_gradient hf_gradient proc~hf_gradient->module~grd1 proc~tdhf_1e_grad tdhf_1e_grad proc~tdhf_1e_grad->module~grd1 proc~tdhf_gradient tdhf_gradient proc~tdhf_gradient->module~grd1

Variables

Type Visibility Attributes Name Initial
character(len=*), public, parameter :: module_name = "grd1"
real(kind=dp), public, parameter :: tol_default = log(10.0d0)*20

Subroutines

public subroutine eijden(eps, nbf, infos)

@brief Compute "energy weighted density matrix"

Read more…

Arguments

Type IntentOptional Attributes Name
real(kind=dp) :: eps(:)
integer :: nbf
type(information), intent(inout) :: infos

public subroutine print_gradient(infos)

@brief Print energy gradient vector

Arguments

Type IntentOptional Attributes Name
type(information), intent(in) :: infos

public subroutine grad_ee_overlap(basis, denab, de, logtol)

@brief Compute overlap energy derivative contribution to gradient @author Vladimir Mironov @date Sep, 2018 Initial release

Read more…

Arguments

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

public subroutine grad_ee_kinetic(basis, denab, de, logtol)

@brief Basis function derivative contributions to gradient @details Compute derivative integrals of type =

Read more…

Arguments

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

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

@brief Basis function derivative contributions to gradient @details Compute derivative integrals of type =

Read more…

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

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.

Read more…

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

public subroutine grad_nn(atoms, ecp_el)

@brief Gradient of nuclear repulsion energy

Arguments

Type IntentOptional Attributes Name
type(atomic_structure), intent(inout) :: atoms
integer, intent(in) :: ecp_el(:)

public subroutine grad_1e_ecp(infos, basis, coord, denab, de, logtol)

@brief Effective core potential gradient

Arguments

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