?? uq_dist.m
字號:
function[y,dist]=uq_dist(funfcn,b,c,n,delta,s,tol,p1,p2,p3)
%UQ_DIST 返回均勻量化器的失真,量化點設在質心.
% [Y,DIST]=UQ_DIST(FUNFCN,B,C,N,DELTA,S,TOL,P1,P2,P3)
% funfcn=在m_file中給出的信源密度函數,
%最多有三個參數:p1,p2,p3.
%[b,c]=信源密度函數的定義域.
%n=級數的數目.
%delta=級數的大小
%s=最左邊的量化區域邊界
%p1,p2,p3=輸入函數的參數
%y=量化級數.
%dist=失真.
%tol=相對誤差
if(c-b<delta*(n-2))
error('Too many levels for this range.');return
end
if(s<b)
error('the leftmost bountary too large.');return
end
if(s+(n-2)*delta>c)
error('the leftmost bountary too large.');return
end
args=[];
for j=1:nargin-7
args=[args,',p',int2str(j)];%args=[ ,p1,p2]
end
args=[args,')'];%args=[ ,p1,p2)]
a(1)=b;
for i=2:n
a(i)=s+(i-2)*delta;
end
a(n+1)=c;
% [y,dist]=mse_dist(funfcn,a,tol,p1,p2)
[y,dist]=eval(['mse_dist(funfcn,a,tol',args])
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -