!------------------------------ ! dot product of two vectors ! of length 3 !------------------------------ subroutine dp(x,y,d) implicit none !------------------------------- ! set kind !------------------------------- integer, parameter :: rk = selected_real_kind(12) real(rk) :: d real(rk), dimension(3) :: x, y d = sum(x*y) end subroutine dp