• 大小: 2KB
    文件类型: .py
    金币: 2
    下载: 1 次
    发布日期: 2021-06-17
  • 语言: Python
  • 标签: 数字信号  python  

资源简介

数字信号实验综合设计题目,部分代码可参考博客,有对应说明

资源截图

代码片段和文件信息

#-*-coding:utf-8-*-
import numpy as np
import matplotlib.pyplot as plt
import scipy.signal as signal
from pylab import mpl


fs=1500
ysc=0.2
x=np.arange(0yscysc/(ysc*fs))


def py_init(jidai_1sin1_hzzxb1_hz):
y_sin1=10*np.sin(2*sin1_hz*np.pi*x)
a=0.5*np.sin(2*zxb1_hz*np.pi*x)
y_zxb1=[]
for i in a:
if i>0:
y_zxb1.append(0.5+jidai_1)
else:
y_zxb1.append(-0.5+jidai_1)
x_1=np.multiply(y_sin1y_zxb1)
return y_zxb1x_1
def py2_init(sin_hzsin_vFstop1Fstop2):
a=sin_v*np.sin(2*sin_hz*np.pi*x)
a_1=fda(aFstop1Fstop2)
return a_1

def fda(x_1Fstop1Fstop2):
b a = signal.butter(8 [2.0*Fstop1/fs2.0*Fstop2/fs] ‘bandpass‘)
filtedData = signal.filtfilt(bax_1)
return filtedData

def fda2(x_1Fc):
b a = signal.butter(8Fc/fs ‘lowpass‘)  
filtedData = signal.filtfilt(b ax_1) 
return filtedData

def hz_clip(xs):
fft_size=ysc*fs
xf = np.fft.rfft(xs)/fft_size
freqs = np.linspace(0 fs/2 fft_size/2+1)
xfp = 20*np.log10(np.clip(np.abs(xf) 1e-20 1e100))
return freqs xfp

#plt.xlim(-1 2)


y_10y_1=py_init(1.110010)
y_20y_2=py_init(1.130010)

y_3=py2_init(1001050150)
y_4=py2_init(30010200490)

y_add=y_1+y_2

y_add_1=fda(y_add50250)
y_add_2=fda(y_add200490)

y_mul_1=np.

评论

共有 条评论