mod_gauss_hermite Module

@brief Gauss-Hermite quadrature used in one-electron integral code @author Vladimir Mironov @date Sep, 2018 Initial release


Uses

  • module~~mod_gauss_hermite~~UsesGraph module~mod_gauss_hermite mod_gauss_hermite module~precision precision module~mod_gauss_hermite->module~precision iso_fortran_env iso_fortran_env module~precision->iso_fortran_env

Used by

  • module~~mod_gauss_hermite~~UsedByGraph module~mod_gauss_hermite mod_gauss_hermite module~mod_1e_primitives mod_1e_primitives module~mod_1e_primitives->module~mod_gauss_hermite module~grd1 grd1 module~grd1->module~mod_1e_primitives module~int1 int1 module~int1->module~mod_1e_primitives proc~electric_moments electric_moments proc~electric_moments->module~int1 proc~get_structures_ao_overlap get_structures_ao_overlap proc~get_structures_ao_overlap->module~int1 proc~get_td_transition_dipole get_td_transition_dipole proc~get_td_transition_dipole->module~int1 proc~get_transition_dipole get_transition_dipole proc~get_transition_dipole->module~int1 proc~hf_gradient hf_gradient proc~hf_gradient->module~grd1 proc~huckel_guess huckel_guess proc~huckel_guess->module~int1 proc~int1e int1e proc~int1e->module~int1 proc~oqp_resp_charges oqp_resp_charges proc~oqp_resp_charges->module~int1 proc~tdhf_1e_grad tdhf_1e_grad proc~tdhf_1e_grad->module~grd1 proc~tdhf_gradient tdhf_gradient proc~tdhf_gradient->module~grd1

Subroutines

public subroutine doQuadGaussHermite(tint, t, rij, ri, rj, ni, nj)

@brief Gauss-Hermite quadrature using minimum point formula @details Compute: xint = sum( w(1:npts,npts) * (h(1:npts,npts)t+dxi)(ni-1) * (h(1:npts,npts)t+dxj)(nj-1) ) yint = sum( w(1:npts,npts) * (h(1:npts,npts)*t+dyi)(ni-1) * (h(1:npts,npts)t+dyj)(nj-1) ) zint = sum( w(1:npts,npts) * (h(1:npts,npts)t+dzi)(ni-1) * (h(1:npts,npts)*t+dzj)(nj-1) )

Read more…

Arguments

Type IntentOptional Attributes Name
real(kind=dp), intent(out) :: tint(3)
real(kind=dp), intent(in) :: t
real(kind=dp), intent(in) :: rij(3)
real(kind=dp), intent(in) :: ri(3)
real(kind=dp), intent(in) :: rj(3)
integer, intent(in) :: ni
integer, intent(in) :: nj

public subroutine mulQuadGaussHermite(tint, t, rij, ri, rj, r, ni, nj, m)

@brief Gauss-Hermite quadrature using minimum point formula @details Compute: xint = sum( w(1:npts,npts) * (h(1:npts,npts)t+dxi)(ni-1) * (h(1:npts,npts)t+dxj)(nj-1) ) yint = sum( w(1:npts,npts) * (h(1:npts,npts)*t+dyi)(ni-1) * (h(1:npts,npts)t+dyj)(nj-1) ) zint = sum( w(1:npts,npts) * (h(1:npts,npts)t+dzi)(ni-1) * (h(1:npts,npts)*t+dzj)(nj-1) )

Read more…

Arguments

Type IntentOptional Attributes Name
real(kind=dp), intent(out) :: tint(3,0:*)
real(kind=dp), intent(in) :: t
real(kind=dp), intent(in) :: rij(3)
real(kind=dp), intent(in) :: ri(3)
real(kind=dp), intent(in) :: rj(3)
real(kind=dp), intent(in) :: r(3)
integer, intent(in) :: ni
integer, intent(in) :: nj
integer, intent(in) :: m