?? d_mix.m
字號:
function [e,state_pul,state_noi,T]=d_mix(fm,T,jt,vp,state_pul,state_noi)
global melp_firs;
%加入jitter計算周期
T=T*(1+jt*0.5*(rand-0.5));
T=round(T);
%限定周期
if T>160
T=160;
elseif T<20
T=20;
end
%計算激勵信號并循環移位
m(1:10)=fm;
m(T-10:T-1)=fliplr(fm);
if T>21
m(11:T-11)=1;
end
m=[0,m];
ep=real(ifft(m));
ep=[ep(T-9:T),ep(1:T-10)];
%Scale
ep=ep*sqrt(T)*1000;
en=(rand(1,T)-0.5)*3464;
%計算噪聲和脈沖系數
efirs(1:31,1)=0;
pfirs=efirs;
for i=1:5
if vp(i)>0.5
pfirs=pfirs+melp_firs(:,i);
else
efirs=efirs+melp_firs(:,i);
end
end
ep=[state_pul,ep];
en=[state_noi,en];
for i=1:T
e(i)=sum(ep(i:30+i)*pfirs+en(i:30+i)*efirs);
end
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -