bjb05 发表于 2007-11-25 13:44

利用fzero循环求解出错

不知道为什么,前两天发了帖子按照版主指点试了一下,还有问题啊,

y=tan(y)在整个数轴上有无穷解,我只要求区间上的

下面是我的程序:
>>a=0.01;
>>for i=0:59;
>>X=fzero(@(y) y-tan(y),a);
>>a=X+pi;
>>t(i+1)=X;
>>end

不知道什么原因,只能求出3个解,到7.多时马上回到1.5几,下面是我的结果
-0.000000006571222    4.493409457909064    7.725251836937707
1.570796326794896    4.712388980384688    7.725251836937707
1.570796326794896    4.712388980384688…………

1.5几是pi/2,为啥就算到他了呢?
而且第二个解和后面的4.7几不一样,为什么会这样,tan(4.712388980384688)=5.1019e+014也不等于4.712388980384688啊

请指教,提示一下

donkeyxu 发表于 2007-11-25 16:01

回复 #1 bjb05 的帖子

fh=@(y) y-tan(y);
for m=1:59;
    t(m)=fzero(fh,);
end
t=;

bjb05 发表于 2007-11-25 16:15

谢谢
页: [1]
查看完整版本: 利用fzero循环求解出错