傅里叶变换的基本公式为: 其中:
逆傅里叶变换的公式为:
傅里叶变换在信号分析中的应用非常广泛。例如,它可以用于分析一个衰减的正弦波信号 ,其中 。
案例描述: 假设我们有一个时域信号 ,其中 ,我们希望分析该信号在 秒内的频域特性。
傅里叶变换计算: 由于直接计算傅里叶变换的解析解较为复杂,我们通常使用数值方法来计算。以下是一个使用Python进行数值计算的示例:
import numpy as np
import matplotlib.pyplot as plt
from scipy.integrate import quad
# 定义时域信号
def f(t):
return np.exp(-5*t) * np.sin(2*np.pi*5*t)
# 时间范围
t = np.linspace(0, 1, 1000)
# 计算时域信号
time_signal = f(t)
# 定义傅里叶变换的被积函数
def integrand(omega, t):
return f(t) * np.exp(-1j*omega*t)
# 计算傅里叶变换
omega = np.linspace(-20, 20, 1000) # 频率范围
F_omega = np.zeros_like(omega, dtype=complex)
for idx, w in enumerate(omega):
integral, _ = quad(integrand, 0, np.inf, args=(w,))
F_omega[idx] = integral
# 绘制时域信号
plt.figure(figsize=(12, 6))
plt.subplot(1, 2, 1)
plt.plot(t, time_signal)
plt.title('Time Domain Signal')
plt.xlabel('Time (s)')
plt.ylabel('Amplitude')
plt.grid(True)
# 绘制频域信号
plt.subplot(1, 2, 2)
plt.plot(omega, np.abs(F_omega))
plt.title('Magnitude of Fourier Transform')
plt.xlabel('Frequency (rad/s)')
plt.ylabel('Magnitude')
plt.grid(True)
plt.tight_layout()
plt.show()
转换后,我们可以看到时域信号和其对应的频域信号之间的关系。傅里叶变换将时域信号转换到频域,使我们能够分析信号的频率成分。