爱气象,爱气象家园! 

气象家园

 找回密码
 立即注册

QQ登录

只需一步,快速开始

新浪微博登陆

只需一步, 快速开始

搜索
查看: 6825|回复: 6

[源程序] 一个并不复杂的方程,solve为何死循环?

[复制链接]

新浪微博达人勋

发表于 2019-9-3 10:38:43 | 显示全部楼层 |阅读模式

登录后查看更多精彩内容~

您需要 登录 才可以下载或查看,没有帐号?立即注册 新浪微博登陆

x


代码如下:
ta = 4.05756866;
syms x
fc = exp( -( (-log(x))^ta  )^( 1/ta ) ) == 0.999;
sf = solve(fc,x)  

点击运行之后,一直是运行状态,没有结果,死循环,什么原因呢?
密码修改失败请联系微信:mofangbao

新浪微博达人勋

 成长值: 0
发表于 2019-9-3 14:02:25 | 显示全部楼层
你这个函数是不是跟ta没关系啊?
对函数fc两边取自然对数,得到的就是log(x)=log(0.999)?check一下你的函数,手动推导一下看看
密码修改失败请联系微信:mofangbao
回复 支持 反对

使用道具 举报

新浪微博达人勋

 楼主| 发表于 2019-9-3 22:07:03 | 显示全部楼层
言深深 发表于 2019-9-3 14:02
你这个函数是不是跟ta没关系啊?
对函数fc两边取自然对数,得到的就是log(x)=log(0.999)?check一下你的函 ...

您说的对,推倒后就是您给出的那个方程。
这只是原方程参数取极值时的特殊情况,但就是这种最简单的情况,solve 也会陷入死循环
密码修改失败请联系微信:mofangbao
回复 支持 反对

使用道具 举报

新浪微博达人勋

 成长值: 0
发表于 2019-9-4 07:15:36 | 显示全部楼层
翻身仗 发表于 2019-9-3 22:07
您说的对,推倒后就是您给出的那个方程。
这只是原方程参数取极值时的特殊情况,但就是这种最简单的情况 ...

既然与x无关,那么求解的时候是不是自然有点问题?再者你是如何确定解方程陷入的是循环?逐步输出x看看,应该是迭代的。
密码修改失败请联系微信:mofangbao
回复 支持 反对

使用道具 举报

新浪微博达人勋

 楼主| 发表于 2019-9-4 08:18:32 | 显示全部楼层
言深深 发表于 2019-9-4 07:15
既然与x无关,那么求解的时候是不是自然有点问题?再者你是如何确定解方程陷入的是循环?逐步输出x看看, ...

解方程最长运行时间超过半小时,我手动停止了,
确实不能百分百确定是死循环,但是那么久的运行时间,现实中不方便操作
密码修改失败请联系微信:mofangbao
回复 支持 反对

使用道具 举报

新浪微博达人勋

 成长值: 0
发表于 2019-9-4 12:00:10 | 显示全部楼层
翻身仗 发表于 2019-9-4 08:18
解方程最长运行时间超过半小时,我手动停止了,
确实不能百分百确定是死循环,但是那么久的运行时间,现 ...

这种方程,可以手动编写程序去计算
密码修改失败请联系微信:mofangbao
回复 支持 反对

使用道具 举报

新浪微博达人勋

 楼主| 发表于 2019-9-4 21:55:51 | 显示全部楼层
言深深 发表于 2019-9-4 12:00
这种方程,可以手动编写程序去计算

感谢您的指教
密码修改失败请联系微信:mofangbao
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册 新浪微博登陆

本版积分规则

Copyright ©2011-2014 bbs.06climate.com All Rights Reserved.  Powered by Discuz! (京ICP-10201084)

本站信息均由会员发表,不代表气象家园立场,禁止在本站发表与国家法律相抵触言论

快速回复 返回顶部 返回列表