matlab用fsolve解非线性方程组方程组

[转载]Matlab非线性方程求解器fsolve总结(含实例)
X=FSOLVE(FUN,X0,OPTIONS)
funX0optionsoptimset
fsolve(@myfun,[0.5 2 4],optimset('Display','iter'));
function F
= myfun(x)
[51.6;unifrnd(-1,1);rand];
h.MaxFunEvals=20000;
h.MaxIter=5000;
h.Display='off';
[p,fval] =
fsolve(@f,x0,options);
F=[x(1)+x(2)*(1-exp(-(x(3)*(0)^x(4))))-51.61;
x(1)+x(2)*(1-exp(-(x(3)*(9.78)^x(4))))-51.91;
x(1)+x(2)*(1-exp(-(x(3)*(30.68)^x(4))))-53.27;
相关文章:
以上网友发言只代表其个人观点,不代表新浪网的观点或立场。MATLAB求解非线性方程组 fsolve
Description: &&MATLAB to solve the nonlinear system fsolve source code.
File list:
MATLAB求解非线性方程组 fsolve\equation.m, 1282 ,
MATLAB求解非线性方程组 fsolve, 0 ,
Download users:
Relate files:
Favorite users:24小时热门版块排行榜&&&&
(正式写手)
在线: 56.3小时
虫号: 3163255
注册: 性别: GG专业: 无机纳米化学
想用matlab解一个方程组谁能帮帮我呢。已有3人参与
数学小白,现遇到一个方程组不会解,希望能得到高人指点,必有重谢。
IMG_0607.JPG
& 猜你喜欢
已经有15人回复
已经有0人回复
已经有197人回复
已经有0人回复
已经有1人回复
已经有4人回复
已经有50人回复
已经有0人回复
已经有2人回复
已经有0人回复
已经有0人回复
(职业作家)
散金: 1853沙发: 4
在线: 2808.6小时
虫号: 1122189
注册: 专业: 宇宙学管辖:
引用回帖:: Originally posted by dingd at
版主分析的很好!再提一个方法:
把:“A/(1+B*exp(C/(x*10^(-21))))”改为“A/(1+B*exp(C1/x))”,求出C1后再除以“10^21”就可还原得到C值了,这样可避免数值过小而造成的计算困难。 受教了!
相比于我用的变换方法,您提供的这种更简洁、高效,而且对初值的依赖性大大降低!看来,是我把问题想得复杂了。
根据dind提供的思路,改写了原MATLAB代码,可见代码简化了,而且初值可取得随意得多(用[0 0 0]或者[1 1 1],均可获得良好的解):CODE:function solve_neqs2
format long
x0=[0 0 0];
[x fval]=fsolve(@obj,x0)
C=x(3)/1e21
function f=obj(x)
f(1)=A/ (1+B*exp(C/1.0631))-4.05&&;
f(2)=A/ (1+B*exp(C/1.20116))-3.87& &;
f(3)=A/ (1+B*exp(C/1.3392))-3.77& &;计算结果:
& &3.602&&-0.614& &2.974
残差fval =
&&1.0e-013 *
& &0.019& &0.011& &0.508
& & 2.974e-021
(小有名气)
在线: 49.8小时
虫号: 2217796
注册: 专业: 材料物理化学
消去A,算出B,C
(正式写手)
在线: 56.3小时
虫号: 3163255
注册: 性别: GG专业: 无机纳米化学
引用回帖:: Originally posted by yaohonghao at
消去A,算出B,C 不要开玩笑,哪有那么简单
100(金币-2)
小木虫,学术科研互动社区,为中国学术科研免费提供动力
违规贴举报删除请发送邮件至:
广告投放与宣传请联系 李想 QQ:
QQ:&&邮箱:
Copyright &
MuChong.com, All Rights Reserved. 小木虫 版权所有24小时热门版块排行榜&&&&
【悬赏金币】回答本帖问题,作者zgqghh将赠送您 100 个金币
(小有名气)
在线: 37.4小时
虫号: 2925926
注册: 性别: GG专业: 多相流热物理学
MATLAB中采用同fsolve求解复杂非线性方程组的问题已有1人参与
科研需要求一组比较复杂的非线性方程组,试着编写了一些程序,fun函数代码为:
function F=myfun(q)
delta=0.75;
beta=0.35;
F(1)=w/(1+delta*log(w))+r*(1+gama/beta)/(2*(r+2))-1;
F(2)=w/(1+delta*log(w))+((1+delta*log(A/p))*p)/A-1;
F(3)=w-2*beta*(1+r)*p/r^2;
初始值q0=[1 1.5 2],求解r,p,w。运行程序后发现提示Solver stopped prematurely.& &&&fsolve stopped because it exceeded the function evaluation limit,& && &options.MaxFunEvals = 300 (the default value).由于是第一次求解这么复杂的非线性方程,不知道该怎么处理了。出现这个是因为初始值不合适?或者原方程组的非线性太大?不知道有没有可以优化处理的办法,各位大神,求指导,先行拜谢!
需求解的非线性方程组.jpg
& 猜你喜欢
已经有31人回复
已经有4人回复
已经有11人回复
已经有46人回复
已经有13人回复
已经有109人回复
已经有5人回复
已经有16人回复
已经有8人回复
已经有12人回复
& 本主题相关价值贴推荐,对您同样有帮助:
已经有9人回复
已经有7人回复
已经有9人回复
已经有7人回复
已经有15人回复
已经有26人回复
已经有6人回复
已经有22人回复
已经有24人回复
已经有15人回复
已经有7人回复
已经有11人回复
已经有8人回复
已经有22人回复
已经有3人回复
已经有5人回复
已经有12人回复
已经有6人回复
已经有16人回复
已经有17人回复
已经有9人回复
已经有20人回复
已经有6人回复
已经有13人回复
已经有3人回复
已经有16人回复
已经有11人回复
已经有6人回复
已经有24人回复
相关版块跳转
第一性原理
我要订阅楼主
的主题更新
小木虫,学术科研互动社区,为中国学术科研免费提供动力
违规贴举报删除请发送邮件至:
广告投放与宣传请联系 李想 QQ:
QQ:&&邮箱:
Copyright &
MuChong.com, All Rights Reserved. 小木虫 版权所有感谢评语:
本页链接:
第1个回答:
匿名网友你这格式否看不清,建议拍图片
希望我的回答,能够帮助到你。
最新解决问题列表
猜你感兴趣

我要回帖

更多关于 matlab解非线性方程组 的文章

 

随机推荐