首页 > 解决方案 > 用 Numpy 计算复数的绝对值

问题描述

我在 Python 中有以下脚本。我正在计算数组的傅里叶变换。当我想绘制结果(傅立叶变换)时,我使用的是该计算的绝对值。但是,我不知道复数的绝对值是如何产生的。有谁知道它是如何计算的?我需要这个在 Java 中重现。

import numpy as np
import matplotlib.pyplot as plt
from numpy import fft

inp = [1,2,3,4]

res = fft.fft(inp)

print(res[1]) # returns (-2+2j) complex number

print(np.abs(res[1])) # returns 2.8284271247461903

标签: pythonnumpyabsolute-value

解决方案


np.abs 给出复数的大小,即 sqrt(a^2 + b^2) 在你的情况下它是 sqrt(8)。

https://numpy.org/doc/stable/reference/generated/numpy.absolute.html


推荐阅读