第二次大作业 语音合成 (1)对等式两边进行 Z 变换 ᵃ(ᵆ) = ᵄ(ᵆ) − ᵄ1(ᵆ−1ᵄ(ᵆ) + ᵆ(−1)) − ᵄ2 (ᵆ−2 ᵄ(ᵆ) + ᵆ−1ᵆ(−1) + ᵆ(−2 )) 所以传递函数为 ᵃ (ᵆ) =11 − ᵄ1ᵆ−1 − ᵄ2 ᵆ−2 (2)当ᵄ1 = 1
3789 ᵄ2 = −0
9506时,求解的 MATLAB 程序为 clear all, close all, clc; a = [1, -1
3789, 0
9506]; b = [1]; n = [0:100]'; x = [(n)==0]; [y] = filter(b, a, x);%use filter figure; subplot(2,1,1), zplane(b,a); subplot(2,1,2), impz(b,a),hold on;%use impz stem(n,y,'k-'),hold off; figure, freqz(b,a); 图像为 零极点图为 单位样值响应为 黑色为使用filter 方法所得的图像,蓝色为使用impz 方法所得的图像
可见两种方法产生的图像完全相同
系统的频率响应为 由图我们可以读出共振频率为0
25 倍的抽样频率 (3 ) 此问需在原程序中添加如下程序 if n == 27 zplane([1],A); end 所得图像如下 (4 )此问须在原程序中添加如下程序 [w wf] = filter(1, A, s_f, wi); %利用filter和初态计算出响应与末态,最开始假设初态为圈零 exc((n-1)*FL+1:n*FL) =w ; wi=wf; %此时末态为下一时刻初态 (5 )此问须在原程序中添加如下程序 [ss zi_rec]=filter(1,A,exc((n-1)*FL+1:n*FL),z