这个问题该怎么解决呢?
subs(S,x,a)被替换的S是否只能是单个表达式啊,比如x^2+2*x,假如S是一个1*n的向量,如该怎么处理呢?当n很大时有循环,太费时了。不知可否有比较合适的方法啊?类似的代码:
syms t1 t2;
Fx1=t1/t2;
Q=;
num=length(Q);
Fx2=Fx1*ones(1,num);
Fx=Fx2-Q;
for k=1:num
%%%
xl(k)=400000;
xr(k)=4000000;
fxl(k)=double(subs(Fx(k),x,xl(k)));%>0
fxr(k)=double(subs(Fx(k),x,xr(k)));%<0
fx(k)=fxl(k);
xc(k)=(xl(k)+xr(k))/2;
while (abs(fx(k))>eps)&(fxl(k)>0)&(fxr(k)<0)
xc(k)=(xl(k)+xr(k))/2;
fx(k)=double(subs(Fx(k),x,xc(k)));
if fx(k)>0
xl(k)=xc(k);
else
xr(k)=xc(k);
end
end
end
[ 本帖最后由 yesterdayom 于 2006-11-29 11:25 编辑 ]
回复
很奇怪你的for循环在做什么.---似乎没有意义.
页:
[1]