首先,我们需要了解高斯函数和高通滤波器的定义。
高斯函数(Gaussian function)是一种常见的概率分布函数,其表达式为:
f(x) = (1 / (σ * sqrt(2 * π))) * exp(-(x - μ)^2 / (2 * σ^2))
其中,μ表示均值,σ表示标准差。
高通滤波器(High-pass filter)是一种允许高频信号通过,而衰减低频信号的滤波器。在时域中,高通滤波器的脉冲响应通常是正负交替的振荡波形。
接下来,我们将使用Python的matplotlib库绘制高斯函数的时域图和频谱图。
```python
import numpy as np
import matplotlib.pyplot as plt
from scipy import signal
# 定义高斯函数参数
mu = 0
sigma = 1
# 生成时间序列
t = np.linspace(-5, 5, 1000)
# 计算高斯函数值
gaussian = (1 / (sigma * np.sqrt(2 * np.pi))) * np.exp(-(t - mu) ** 2 / (2 * sigma ** 2))
# 设计高通滤波器
b, a = signal.butter(4, 1, fs=1000, btype='highpass')
w, h = signal.freqz(b, a)
# 绘制高斯函数时域图
plt.figure()
plt.plot(t, gaussian)
plt.title('高斯函数时域图')
plt.xlabel('时间')
plt.ylabel('幅度')
# 绘制高斯函数频谱图
plt.figure()
plt.plot(w, 20 * np.log10(abs(h)))
plt.title('高斯函数频谱图')
plt.xlabel('频率')
plt.ylabel('幅度 (dB)')
# 显示图像
plt.show()
```
上述代码首先定义了高斯函数的参数(均值μ和标准差σ),然后生成了一个时间序列。接着,计算高斯函数的值,并使用scipy库中的`signal`模块设计一个4阶的高通滤波器。最后,分别绘制高斯函数的时域图和频谱图。
高斯函数(Gaussian function)是一种常见的概率分布函数,其表达式为:
f(x) = (1 / (σ * sqrt(2 * π))) * exp(-(x - μ)^2 / (2 * σ^2))
其中,μ表示均值,σ表示标准差。
高通滤波器(High-pass filter)是一种允许高频信号通过,而衰减低频信号的滤波器。在时域中,高通滤波器的脉冲响应通常是正负交替的振荡波形。
接下来,我们将使用Python的matplotlib库绘制高斯函数的时域图和频谱图。
```python
import numpy as np
import matplotlib.pyplot as plt
from scipy import signal
# 定义高斯函数参数
mu = 0
sigma = 1
# 生成时间序列
t = np.linspace(-5, 5, 1000)
# 计算高斯函数值
gaussian = (1 / (sigma * np.sqrt(2 * np.pi))) * np.exp(-(t - mu) ** 2 / (2 * sigma ** 2))
# 设计高通滤波器
b, a = signal.butter(4, 1, fs=1000, btype='highpass')
w, h = signal.freqz(b, a)
# 绘制高斯函数时域图
plt.figure()
plt.plot(t, gaussian)
plt.title('高斯函数时域图')
plt.xlabel('时间')
plt.ylabel('幅度')
# 绘制高斯函数频谱图
plt.figure()
plt.plot(w, 20 * np.log10(abs(h)))
plt.title('高斯函数频谱图')
plt.xlabel('频率')
plt.ylabel('幅度 (dB)')
# 显示图像
plt.show()
```
上述代码首先定义了高斯函数的参数(均值μ和标准差σ),然后生成了一个时间序列。接着,计算高斯函数的值,并使用scipy库中的`signal`模块设计一个4阶的高通滤波器。最后,分别绘制高斯函数的时域图和频谱图。
下一篇:贵安田径训练基地实训内容