yesterdayom 发表于 2006-11-29 11:23

这个问题该怎么解决呢?

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 编辑 ]

xjzuo 发表于 2006-11-29 19:30

回复

很奇怪你的for循环在做什么.---似乎没有意义.
页: [1]
查看完整版本: 这个问题该怎么解决呢?