En este artículo, discutiremos cómo multiplicar dos arrays que contienen números complejos usando NumPy , pero primero, sepamos qué es un número complejo. Un número complejo es cualquier número que se puede representar como x+yj donde x es la parte real e y es la parte imaginaria. La multiplicación de dos números complejos se puede hacer usando la siguiente fórmula:
NumPy proporciona el método vdot() que devuelve Esta función maneja los números complejos de manera diferente a dot( a , b ).
Sintaxis:
numpy.vdot(vector_a, vector_b)
Ejemplo 1:
Python3
# importing numpy as library import numpy as np # creating matrix of complex number x = np.array([2+3j, 4+5j]) print("Printing First matrix:") print(x) y = np.array([8+7j, 5+6j]) print("Printing Second matrix:") print(y) # vector dot product of two matrices z = np.vdot(x, y) print("Product of first and second matrices are:") print(z)
Producción:
Printing First matrix: [2.+3.j 4.+5.j] Printing Second matrix: [8.+7.j 5.+6.j] Product of first and second matrices are: (87-11j)
Ejemplo 2: ahora supongamos que tenemos una array 2D:
Python3
# importing numpy as library import numpy as np # creating matrix of complex number x = np.array([[2+3j, 4+5j], [4+5j, 6+7j]]) print("Printing First matrix:") print(x) y = np.array([[8+7j, 5+6j], [9+10j, 1+2j]]) print("Printing Second matrix:") print(y) # vector dot product of two matrices z = np.vdot(x, y) print("Product of first and second matrices are:") print(z)
Producción:
Printing First matrix: [[2.+3.j 4.+5.j] [4.+5.j 6.+7.j]] Printing Second matrix: [[8. +7.j 5. +6.j] [9.+10.j 1. +2.j]] Product of first and second matrices are: (193-11j)