24小时热门版块排行榜    

CyRhmU.jpeg
南方科技大学公共卫生及应急管理学院2026级博士研究生招生报考通知(长期有效)
查看: 1938  |  回复: 12
当前只显示满足指定条件的回帖,点击这里查看本话题的所有回帖

zhs4276689

木虫 (正式写手)

[求助] 求Matlab解非线性方程代码

这是材料凝固中关于凝固系数的求解方程,其中除φ以外都是常数。
教材中说可以用matlab,迭代法求解,但小弟对matlab真心不懂,所以只好再来求助高手了。
代码中希望有解释,可以稍微学一点,谢谢!

1.gif
回复此楼

» 猜你喜欢

» 本主题相关商家推荐: (我也要在这里推广)

» 本主题相关价值贴推荐,对您同样有帮助:

已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

shiana1218

禁虫 (初入文坛)

本帖内容被屏蔽

6楼2013-03-14 08:57:33
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
查看全部 13 个回答

Bruce_lee

铜虫 (著名写手)

【答案】应助回帖

★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★
感谢参与,应助指数 +1
zhs4276689: 金币+20, ★★★★★最佳答案, 试了试,好像没问题,分先给了,有问题再请教哦 2013-03-13 20:51:15
csgt0: 金币+2, 谢谢 2013-03-15 15:10:25
在matlab中新建一个blank M-file,命名为fun122.m
在其中输入:
function fun122
M=2;
Cs=2;
Tf=2;
T0=2;
L=2;
x0=2;
[x,fval,exitflag]=fsolve(@(fi) sqrt(pi)*exp(fi^2)*(M+erf(fi))-(Cs*(Tf-T0)/L),x0)
end
然后保存。
使用时在matlab命令窗口中输入fun122,回车即可。
M、Cs、Tf、T0、L等参数在fun122.m中修改。(x0为迭代初值)
得到的结果中如果exitflag=1并且fval趋近于0,那么结果x就是你所要的结果。

仅供参考!
努力就有收获!
2楼2013-03-13 19:09:38
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

zhs4276689

木虫 (正式写手)

引用回帖:
2楼: Originally posted by Bruce_lee at 2013-03-13 19:09:38
在matlab中新建一个blank M-file,命名为fun122.m
在其中输入:
function fun122
M=2;
Cs=2;
Tf=2;
T0=2;
L=2;
x0=2;
=fsolve(@(fi) sqrt(pi)*exp(fi^2)*(M+erf(fi))-(Cs*(Tf-T0)/L),x0)
end
然后保存。 ...

x =

    2.6502


fval =

  1.8190e-012


exitflag =

     1
这个结果好像就可以,你的初值是随便选的吗?这么准?
3楼2013-03-13 20:47:06
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

Bruce_lee

铜虫 (著名写手)

我那个程序是自己定的各常数的取值,你可以根据自己的具体需要修改,x0是迭代初值,也是我自己定的,你可以多代入几个试试看,别嫌麻烦。如果exitflag=1,并且fval趋近于0,所得x应该就是结果。
努力就有收获!
4楼2013-03-13 23:48:04
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
信息提示
请填处理意见