Labfans是一个针对大学生、工程师和科研工作者的技术社区。 论坛首页 | 联系我们(Contact Us)
MATLAB爱好者论坛-LabFans.com
返回   MATLAB爱好者论坛-LabFans.com > 工程数学软件 > MATLAB论坛
MATLAB论坛 一切MATLAB相关问题在此讨论。
回复
 
主题工具 显示模式
旧 2008-10-16, 10:19   #1
gkyingkyin
普通会员
 
注册日期: 2008-04-27
年龄: 39
帖子: 30
声望力: 18
gkyingkyin 正向着好的方向发展
默认 [求助]求助!解方程结果的问题!

我算的一个方程,想找到所有的实数解:
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:
gkyingkyin 当前离线   回复时引用此帖
旧 2008-10-16, 15:30   #2
linqin09
初级会员
 
注册日期: 2008-09-24
年龄: 37
帖子: 6
声望力: 0
linqin09 正向着好的方向发展
默认 回复: [求助]求助!解方程结果的问题!

运行一次,要想进行下一次的运行,应该把x列向量中的值给释放掉
linqin09 当前离线   回复时引用此帖
旧 2008-10-17, 16:08   #3
gkyingkyin
普通会员
 
注册日期: 2008-04-27
年龄: 39
帖子: 30
声望力: 18
gkyingkyin 正向着好的方向发展
默认 回复: [求助]求助!解方程结果的问题!

我释放了x,
最后输入clear x
可还是不行啊,这是怎么回事啊??
gkyingkyin 当前离线   回复时引用此帖
旧 2008-10-17, 19:03   #4
meteora1005
高级会员
 
注册日期: 2008-05-31
年龄: 38
帖子: 104
声望力: 19
meteora1005 正向着好的方向发展
默认 回复: [求助]求助!解方程结果的问题!

只要你在程序最开始加上clear,你说的那种情况绝对不可能发生。就三个解。
meteora1005 当前离线   回复时引用此帖
回复


发帖规则
不可以发表新主题
不可以发表回复
不可以上传附件
不可以编辑自己的帖子

启用 BB 代码
论坛启用 表情符号
论坛启用 [IMG] 代码
论坛禁用 HTML 代码


相似的主题
主题 主题作者 版面 回复 最后发表
如何使用matlab求解带有离散数据的ODE? linvin MATLAB论坛 0 2008-12-08 23:44
[求助]符号计算功能不能工作 gibbs MATLAB论坛 0 2008-12-08 22:10


所有时间均为北京时间。现在的时间是 05:44


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