PDA

查看完整版本 : [MATLAB数学相关] 关于matlab数值计算里 迭代算法的讨论


aganspring
2009-06-19, 16:24
关于matlab数值计算里 迭代算法的讨论
要实附件中方程(5.4.3)的迭代算法。下面是我写的程序:
[code]lambda=1.04;
c=2;
mu=0.05;
theta=0.01;
%%%%%%%%%% find rk,rkstar 这段程序没有问题%%%%%%%%%%%%%%%
r0=lambda/(lambda+c*theta);
rho=lambda/(c*mu);
for k=1:c;
eval(['r' num2str(k) '=((lambda+k*mu+(c-k)*theta)-sqrt((lambda+k*mu+(c-k)*theta)^2-4*lambda*k*mu))/(2*k*mu)']);
eval(['r' num2str(k) char('star') '=((lambda+k*mu+(c-k)*theta)+sqrt((lambda+k*mu+(c-k)*theta)^2-4*lambda*k*mu))/(2*k*mu)']);
eval(['r' num2str(c) '=rho']);
end;
%%%%%%%% find rij 问题出在下面的程序里%%%%%%%%%%%%%%%%%%%%%%%%%
for k=0:c-1;
for j=k+1:c;
for i=k:j;
r00=r0;
eval(['r' num2str(j) num2str(j) '=' 'r' num2str(j)]);
solve(j*mu*sum(eval(['r' num2str(k) num2str(i)])*eval(['r' num2str(i) num2str(j)]))+(c-j+1)*theta*eval(['r' num2str(k) num2str(j-1)])-(lambda+j*mu+(c-j)*theta)*eval(['r' num2str(k) num2str(j)]),eval(['r' num2str(k) num2str(j)]));
end;
end;
end;
但是运行不出结果,请各位高人帮忙看看,感谢!