compute interaction energy between quantum fragment and long-range atoms
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(quantum_fragment_type), | intent(in) | :: | quantum_fragment | quantum fragment |
||
real(kind=dp), | intent(out) | :: | energy | interaction energy |
||
real(kind=dp), | intent(in), | dimension(:) | :: | tensor_sums | Array stroing tensor sums |
subroutine compute_lr_energy(quantum_fragment, &
energy, tensor_sums)
!> quantum fragment
type(quantum_fragment_type), intent(in) :: quantum_fragment
!> interaction energy
real(dp), intent(out) :: energy
!> Array stroing tensor sums
real(dp), dimension(:), intent(in) :: tensor_sums
call timer_start("compute_lr_energy")
energy = 0.0_dp
energy = dot_product(quantum_fragment%nuclear_multipoles%values, tensor_sums)
call timer_stop
end subroutine compute_lr_energy