Skip to content
Related Articles

Related Articles

How to calculate dot product of two vectors in Python?

View Discussion
Improve Article
Save Article
  • Difficulty Level : Basic
  • Last Updated : 25 May, 2021
View Discussion
Improve Article
Save Article

In mathematics, the dot product or also known as the scalar product is an algebraic operation that takes two equal-length sequences of numbers and returns a single number. Let us given two vectors A and B, and we have to find the dot product of two vectors.

Given that, 

A = a_1i + a_2j + a_3k
 

and,

B = b_1i + b_2j + b_3k

Where,

i: the unit vector along the x directions

j: the unit vector along the y directions

k: the unit vector along the z directions

 

Then the dot product is calculated as:

DotProduct = a_1 * b_1 + a_2 * b_2 + a_3 * b_3
 

Example:

 

Given two vectors A and B as,

A = 3i + 5j + 4k \\ B = 2i + 7j + 5k \\ DotProduct = 3 * 2 + 5 * 7 + 4 * 5 = 6 + 35 + 20 = 61

Dot Product of Two Vectors in Python

 

Python provides a very efficient method to calculate the dot product of two vectors. By using numpy.dot() method which is available in the NumPy module one can do so.

 

Syntax:

numpy.dot(vector_a, vector_b, out = None)

Parameters:

vector_a: [array_like] if a is complex its complex conjugate is used for the calculation of the dot product.

vector_b: [array_like] if b is complex its complex conjugate is used for the calculation of the dot product.

out: [array, optional] output argument must be C-contiguous, and its dtype must be the dtype that would be returned for dot(a,b).

 

Return:

Dot Product of vectors a and b. if vector_a and vector_b are 1D, then scalar is returned

Example 1:

 

Python




# Python Program illustrating
# dot product of two vectors
 
# Importing numpy module
import numpy as np
 
# Taking two scalar values
a = 5
b = 7
 
# Calculating dot product using dot()
print(np.dot(a, b))

Output:

35

Example 2:

Python




# Python Program illustrating
# dot product of two vectors
 
# Importing numpy module
import numpy as np
 
# Taking two 1D array
a = 3 + 1j
b = 7 + 6j
 
# Calculating dot product using dot()
print(np.dot(a, b))

Output:

(15+25j)

Example 3:

Python




# Python Program illustrating
# dot product of two vectors
 
# Importing numpy module
import numpy as np
 
# Taking two 2D array
# For 2-D arrays it is the matrix product
a = [[2, 1], [0, 3]]
b = [[1, 1], [3, 2]]
 
# Calculating dot product using dot()
print(np.dot(a, b))

Output:

[[5 4]
 [9 6]]

Example 4:

Python




# Python Program illustrating
# dot product of two vectors
 
# Importing numpy module
import numpy as np
 
# Taking two 2D array
# For 2-D arrays it is the matrix product
a = [[2, 1], [0, 3]]
b = [[1, 1], [3, 2]]
 
# Calculating dot product using dot()
# Note that here I have taken dot(b, a)
# Instead of dot(a, b) and we are going to
# get a different output for the same vector value
print(np.dot(b, a))

Output:

[[2 4]
 [6 9]]

My Personal Notes arrow_drop_up
Recommended Articles
Page :

Start Your Coding Journey Now!