我有以下代码:
import numpy as np
import matplotlib.pyplot as plt
from scipy.fft import fft, fftfreq
def polarization(t):
f = x*np.cos(2*np.pi*omega*t)/np.sqrt(1+(x*np.cos(2*np.pi*omega*t))**2)
return f
omega = 100
x = 5
N = 10000
t_max = 1
t = np.linspace(0,t_max,N)
yf = fft(polarization(t))
yf = 2.0/N * np.abs(yf[0:N//2])
np.max(yf)
输出 1.21。我不确定我是否理解这个值,因为我的函数获得的最大值是 1,所以任何频率分量的值都应该低于该值。
如何将这个 1.21 值转换为相关频率分量的实际幅度?