关于quad函数问题 (在线等)
初学matlab想编歌公式,运行老是出错,请人帮忙·!目的是编这个:对u.^k.*gamma(-k,u)求和(k=0到L-1),本来是想用gamma(a,b)=gamma(a)*(1-gammainc(b,a)) 这个函数的,不过这里a=-k小于0不能用,只有编积分公式了 gamma(-k,u)=对exp(-t)./*t.^(-k-1)从u到无穷积分,我用了1e+10来近似无穷,u是i一个6×41的矩阵function ff=integral(t,k)
ff=exp(-t).*t.^(-k-1);
L=;
BER_T=1e-3;
SNR_dB=0:40;
SNR=10.^(SNR_dB./10);
gamma_ba=SNR;
for i=1:6
gammac_ba(i,:)=gamma_ba./L(i);
end
u=-(log(5*BER_T))./(1.6.*gammac_ba);
Y=zeros(6,41);
ff=zeros(6,41);
for m=1:6
for n=1:41
for k=0:L(m)-1
ff(m,n)=quad(@integral,u(m,n),1e+10,1e-10);
Y(m,n)=Y(m,n)+u(m,n).^k.*ff(m,n);
end
Y(m,n)=Y(m,n).*exp(u(m,n))./(log(2));
end
end
运行时老是提示quad那一行出错,知道的兄弟朋友说说,急死了`
[ 本帖最后由 eight 于 2007-7-9 21:38 编辑 ] 不太明白。不过觉得symsum好像可以解决的你问题,help一下试试看
[ 本帖最后由 花如月 于 2007-7-8 11:03 编辑 ]
页:
[1]