Cho hai vectơ, a =[a0, a1, ..., aM] và b =[b0, b1, ..., bN], tích ngoài [1] là -
[[a0*b0 a0*b1 ... a0*bN ] [a1*b0 . [ ... . [aM*b0 aM*bN ]]
Để lấy sản phẩm Outer của hai mảng, hãy sử dụng phương thức numpy.outer () trong Python. Numpy.ones () trả về một mảng mới có hình dạng và kiểu đã cho, chứa đầy những cái. Numpy.linspace () trả về các số có khoảng cách đều nhau trong một khoảng thời gian được chỉ định.
Các bước
Đầu tiên, hãy nhập các thư viện được yêu cầu -
import numpy as np
Phần thực -
rl = np.outer(np.ones((5,)), np.linspace(-2, 2, 5)) print("The real part of the complex number...\n",rl)
Phần tưởng tượng -
im = np.outer(1j*np.linspace(2, -2, 5), np.ones((5,))) print("\nThe imaginary part of the complex numbers...\n",rl)
Tạo lưới -
grid = rl + im
Ví dụ
import numpy as np # To get the Outer product of two arrays, use the numpy.outer() method in Python # The numpy.ones() return a new array of given shape and type, filled with ones. # The numpy.linspace() returns evenly spaced numbers over a specified interval. # The real part rl = np.outer(np.ones((5,)), np.linspace(-2, 2, 5)) print("The real part of the complex number...\n",rl) # The imaginary part im = np.outer(1j*np.linspace(2, -2, 5), np.ones((5,))) print("\nThe imaginary part of the complex numbers...\n",rl) # Forming a grid grid = rl + im print("\nDisplaying the grid...\n",grid)
Đầu ra
The real part of the complex number... [[-2. -1. 0. 1. 2.] [-2. -1. 0. 1. 2.] [-2. -1. 0. 1. 2.] [-2. -1. 0. 1. 2.] [-2. -1. 0. 1. 2.]] The imaginary part of the complex numbers... [[-2. -1. 0. 1. 2.] [-2. -1. 0. 1. 2.] [-2. -1. 0. 1. 2.] [-2. -1. 0. 1. 2.] [-2. -1. 0. 1. 2.]] Displaying the grid... [[-2.+2.j -1.+2.j 0.+2.j 1.+2.j 2.+2.j] [-2.+1.j -1.+1.j 0.+1.j 1.+1.j 2.+1.j] [-2.+0.j -1.+0.j 0.+0.j 1.+0.j 2.+0.j] [-2.-1.j -1.-1.j 0.-1.j 1.-1.j 2.-1.j] [-2.-2.j -1.-2.j 0.-2.j 1.-2.j 2.-2.j]]