Scalar Product of three vectors: Scalar Product or dot product of three vectors is also known as Scalar Triple product and is defined by:
And = =
To find scalar triple product, first we will find the cross product between two vectors and then do dot product of that result with remaining vector.
Program to calculate triple product of vectors:
program dot implicit none integer :: v1(3), v2(3), v3(3) ! three vectors v1, v2 and v3 with three components integer :: triple_product ! variable to store final ans ! assigning values to vectors v1 = (/ 1, 2, 3 /) v2 = (/ 4, 5, 6 /) v3 = (/ 7, 8, 10 /) call triple(v1, v2, v3, triple_product) print*, triple_product end program ! subroutine to find scalar triple product subroutine triple(a, b, c, dot) implicit none integer :: a(3), b(3),c(3) integer :: cross(3) integer :: dot ! calculating cross first between a and b vectors cross(1) = a(2)*b(3) - b(2)*a(3) cross(2) = b(1)*a(3) - a(1)*b(3) cross(3) = a(1)*b(2) - a(2)*b(1) ! dot = dot_product(c, cross) dot = cross(1)*c(1) + cross(2)*c(2) + cross(3)*c(3) end subroutine