MATLAB爱好者论坛-LabFans.com

MATLAB爱好者论坛-LabFans.com (https://www.labfans.com/bbs/index.php)
-   MATLAB论坛 (https://www.labfans.com/bbs/forumdisplay.php?f=6)
-   -   [求助]求助!解方程结果的问题! (https://www.labfans.com/bbs/showthread.php?t=4877)

gkyingkyin 2008-10-16 10:19

[求助]求助!解方程结果的问题!
 
我算的一个方程,想找到所有的实数解:
x=solve('1.0e+006=0.71e+006*(x/(0.1321^(1/3)))^(-2.09)');
x=eval(x)
n=length(x);
p=[];
for i=1:n
if isreal(x(i))
p(i)=true(1);
end;
end;
p
第一次结果得到:
x =

-0.4284 - 0.0583i
-0.4284 + 0.0583i
0.4323


p =

0 0 1
表示第三个结果是实数

可是再运行一次,运行结果就变成了:
x =

0.4323
-0.6033
-0.2534


p =

1 1 1
两次结果不一样,请问这是怎么回事啊,请大家帮我看看,谢谢了!!:ft:

linqin09 2008-10-16 15:30

回复: [求助]求助!解方程结果的问题!
 
运行一次,要想进行下一次的运行,应该把x列向量中的值给释放掉

gkyingkyin 2008-10-17 16:08

回复: [求助]求助!解方程结果的问题!
 
我释放了x,
最后输入clear x
可还是不行啊,这是怎么回事啊??

meteora1005 2008-10-17 19:03

回复: [求助]求助!解方程结果的问题!
 
只要你在程序最开始加上clear,你说的那种情况绝对不可能发生。就三个解。


所有时间均为北京时间。现在的时间是 02:58

Powered by vBulletin
版权所有 ©2000 - 2025,Jelsoft Enterprises Ltd.