matlab求解多元lingo求解非线性方程组组

matlab实现牛顿迭代法求解非线性方程组 - 博客频道 - CSDN.NET
点滴记录 不断进步
为了梦想加油
分类:数学应用
/aillieo/blog/item/ac9a.html
已知非线性方程组如下
3*x1-cos(x2*x3)-1/2=0
x1^2-81*(x2+0.1)^2+sin(x3)+1.06=0
exp(-x1*x2)+20*x3+(10*pi-3)/3=0
求解要求精度达到0.00001
————————————————————————————————
首先建立函数fun
储存方程组编程如下将fun.m保存到工作路径中:
function f=fun(x);
%定义非线性方程组如下
%变量x1 x2 x3
%函数f1 f2 f3
syms x1 x2 x3
f1=3*x1-cos(x2*x3)-1/2;
f2=x1^2-81*(x2+0.1)^2+sin(x3)+1.06;
f3=exp(-x1*x2)+20*x3+(10*pi-3)/3;
f=[f1 f2 f3];
————————————————————————————————
建立函数dfun
用来求方程组的雅克比矩阵将dfun.m保存到工作路径中:
function df=dfun(x);
%用来求解方程组的雅克比矩阵储存在dfun中
df=[diff(f,'x1');diff(f,'x2');diff(f,'x3')];
df=conj(df');
————————————————————————————————
编程牛顿法求解非线性方程组将newton.m保存到工作路径中:
function x=newton(x0,eps,N);
%其中x0为迭代初值eps为精度要求N为最大迭代步数con用来记录结果是否收敛
for i=1:N;
&&&&f=subs(fun(x0),{'x1' 'x2' 'x3'},{x0(1) x0(2) x0(3)});
&&&&df=subs(dfun(x0),{'x1' 'x2' 'x3'},{x0(1) x0(2) x0(3)});
&&&&x=x0-f/
&&&&for j=1:length(x0);
&&&&&&&&il(i,j)=x(j);
&&&&if norm(x-x0)&eps
&&&&&&&&con=1;
%以下是将迭代过程写入txt文档文件名为iteration.txt
fid=fopen('iteration.txt','w');
fprintf(fid,'iteration');
for j=1:length(x0)
&&&&fprintf(fid,'&&&&&&&&&x%d',j);
&&&&fprintf(fid,'\n%6d&&&&&',j);
&&&&for k=1:length(x0)
&&&&&&&&fprintf(fid,' %10.6f',il(j,k));
&&&&fprintf(fid,'\n计算结果收敛!');
&&&&fprintf(fid,'\n迭代步数过多可能不收敛!');
fclose(fid);
————————————————————————————————
在matlab中输入以下内容
newton([0.1 0.1 -0.1],0.00001,20)
————————————————————————————————
&&&&<span style="font-size:18 color:#ff0&&&&<span style="font-size:18 color:#ff0&&&-0.5236
——————————————————————————————————————————————————
在iteration中查看迭代过程
iteration&&&&&&&&&x1&&&&&&&&&x2&&&&&&&&&x3
&&&&&1&&&&&&&&0.490718&&&0.031238&&-0.519661
&&&&&2&&&&&&&&0.509011&&&0.003498&&-0.521634
&&&&&3&&&&&&&&0.500928&&&0.000756&&-0.523391
&&&&&4&&&&&&&&0.500227&&&0.000076&&-0.523550
&&&&&5&&&&&&&&0.500019&&&0.000018&&-0.523594
&&&&&6&&&&&&&&0.500005&&&0.000002&&-0.523598
&&&&&7&&&&&&&&0.500000&&&0.000000&&-0.523599
计算结果收敛!
doupei2006
排名:第2131名
(26)(44)(13)(25)(33)(17)(16)(25)(3)(4)(7)(12)(6)(10)小木虫 --- 500万硕博科研人员喜爱的学术科研平台
&&查看话题
用matlab求解非线性方程组
我有下面的六个方程组求解六个变量,但是不论怎么改程序还是求不出来。求大家帮忙看看/picture/detail/a8ae3bd3fa1186afc9c9a7c2bd75b& & /picture/detail/ca40cdffec@月只蓝
QQ截图18.png
QQ截图27.png
热量衡算方程。
你确定方程中参数数值没问题?比如参数的单位是否正确?
以t1=30,t4=32为例,原方程无解。
此外,t1=30:1:50; t4=32:1:55;
这样理论上有21*24=504组解。
我现在的参数都是假定的,因为先得知道怎么解,我在再去确定准确的参数
我现在的参数都是假定的,因为先得知道怎么解,我在再去确定准确的参数
function jie_fun
u=fsolve(@myfun,u0)
f_val=myfun(u)
function f=myfun(u)
%UNTITLED Summary of this function goes here
%& &Detailed explanation goes here
f(1)=((2*800*))/3600)-q1;
f(2)=((2*800*))/3600)-q0;
f(3)=2*t3-t2;
f(4)=q0+700-q1;
f(5)=(30*6*(40-t3))/(ln((tc-t3)/(tc-40)))-q1;
f(6)=(30*8*(30-t2))/(ln((30-te)/(t2-te)))-q1;
一直出错,不清楚问题在哪里?可否帮我看看?
已经可以运行:
function jie_fun
=fsolve(@myfun,u0)
function f=myfun(u)
%UNTITLED Summary of this function goes here
%& &Detailed explanation goes here
f(1)=((2*800*))/3600)-q1;
f(2)=((2*800*))/3600)-q0;
f(3)=2*t3-t2;
f(4)=q0+700-q1;
f(5)=(30*6*(40-t3))/(log((tc-t3)/(tc-40)))-q1;
f(6)=(30*8*(30-t2))/(log((30-te)/(t2-te)))-q1;
注意,数学中的ln在MATLAB中用 log 表示
您好,我刚刚发给您的代码改好了,知道哪里错了。现在想问下您,我想求t1=,t4=范围内的六个值,怎么改代码呢?我尝试了几次都失败了
恩恩 谢谢您 我已经发现这里出错了,但是还是有个问题想请教您 为什么求出来的u和初始值一样呢? 还有就是最后目标是t1=,t4=是两个范围不是两个值。这个怎么解???
1.求出来的u和初始值一样呢?
答:fsolve函数求解结果和初值关系密切,如果方程本身不好解,求解结果就会停止在初值附近。
2.最后目标是t1=,t4=是两个范围不是两个值。这个怎么解???
答:其中一个可行方法是把t1 t4设置为全局变量: global t1 t4
然后用 for 循环依次求解,可参照我以前的fsolve函数里面包含for循环的回帖。
好的 谢谢。我在网上下载了一个1stOpt,试着弄了下。下面是代码:
VarParameters q1,t3,q0,t2,te,
VarConstant t4=,t1=;
Function q1=((2*800*4200*(t4-t3))/3600);
0=((2*800*4200*(t1-t2))/3600)-q0;
0=2*t3-t2;
0=q0+700-q1;
0=(30*6*(t4-t3))/(log10((tc-t3)/(tc-40)))-q1;
0=(30*8*(t1-t2))/(log10((t1-te)/(t2-te)))-q1;
我想请教下您,t4,t1现在赋给它们很多值,按理来说应该有很多解。怎么运行后结果还是只有一组呢?这是哪里出错了呢?
要实现你的想法,代码肯定是不对的,没这么简单。不过我用过这个软件来做过你要求的类似的计算,没法帮你改代码。
更正回复:
要实现你的想法,代码肯定是不对的,没这么简单。不过我用这个软件没有做过你要求的类似的计算,没法帮你改代码。
大神,我和同学现在遇到一个问题,编了一个函数Estimatee,h的数据在channel_data10里面,现在要求函数Estimatee里面的B(j,k),请问如何调用函数求解?
研究生必备与500万研究生在线互动!
扫描下载送金币
浏览器进程
打开微信扫一扫
随时随地聊科研用Matlab求解非线性方程组--《黑龙江科技信息》2007年02期
用Matlab求解非线性方程组
【摘要】:讨论了利用Madab符号对象求解非线性方程组,进行函数绘图,粗略确定解的存在区间,再利用Madab功能函数求解数值解的方法.并且编写了Broyden法的迭代方法程序求解非线性方程组。
【作者单位】:
【关键词】:
【分类号】:O241.6【正文快照】:
1引言非线性方程组解的几何意义与线性方程组类似,方程组中每个方程定义了一个“曲”超平面,非线性方程组的解为所有超平面的交点,但是这些曲面可能相交,也可能不相交,情况比平面复杂。通常对一个二维或三维没有解析解的非线性方程组,求解此类非线性方程组的数值方法很多,如
欢迎:、、)
支持CAJ、PDF文件格式,仅支持PDF格式
【参考文献】
中国期刊全文数据库
潘壮元;[J];高等学校计算数学学报;1988年02期
王兴华;[J];科学通报;1975年12期
【共引文献】
中国期刊全文数据库
潘状元;[J];工程数学学报;1997年02期
潘壮元;[J];高等学校计算数学学报;1988年02期
黄正达;[J];浙江大学学报(理学版);2002年02期
王兴华,王何宇;[J];中国科学A辑;2005年06期
王兴华,韩丹夫;[J];计算数学;1990年01期
王兴华,韩丹夫;[J];计算数学;1997年01期
王兴华,李冲;[J];计算数学;2001年01期
李冲,王兴华,张文红;[J];计算数学;2002年04期
王兴华;[J];科学通报;1997年02期
王兴华,杨义群;[J];数学进展;1984年02期
中国博士学位论文全文数据库
梁克维;[D];浙江大学;2001年
梁仙红;[D];浙江大学;2002年
中国硕士学位论文全文数据库
马玉秋;[D];哈尔滨理工大学;2005年
初元红;[D];哈尔滨理工大学;2006年
兰莉莉;[D];浙江大学;2007年
任中贵;[D];哈尔滨理工大学;2007年
龙海波;[D];哈尔滨理工大学;2007年
【同被引文献】
中国期刊全文数据库
李琳,李槿年,余为一;[J];安徽农业科学;2004年03期
白亦真;吕宪义;金曾孙;姜志刚;;[J];吉林大学学报(理学版);2006年01期
孙斌;[J];辽阳石油化工高等专科学校学报;2002年03期
王汉斌,许州,卢和平,邓仁培,杨肖,甘孔银,金晓,黎明,刘锡三;[J];强激光与粒子束;2005年06期
吴晖,高孔荣;[J];食品科学;1996年04期
毛根旺,韩先伟,杨涓,何洪庆;[J];推进技术;2000年05期
陈叶福,王正祥,王晨霞,方慧英,诸葛健;[J];微生物学通报;2003年05期
胡立群,王守国;[J];原子能科学技术;1996年06期
黄良甫;[J];真空与低温;2005年01期
戴旭文,谷中丽,刘剑;[J];车辆与动力技术;2002年02期
中国博士学位论文全文数据库
李弘;[D];中国科学技术大学;2002年
王云超;[D];吉林大学;2007年
中国硕士学位论文全文数据库
廖丹;[D];湖南大学;2002年
杨新明;[D];武汉理工大学;2003年
李连成;[D];大连理工大学;2005年
陈丽;[D];华中科技大学;2005年
张鹏;[D];同济大学;2006年
王军;[D];武汉理工大学;2006年
王超;[D];长安大学;2006年
董恩国;[D];天津大学;2006年
周祥基;[D];东南大学;2005年
杨旭;[D];吉林大学;2007年
【二级参考文献】
中国期刊全文数据库
王兴华;[J];科学通报;1975年12期
王兴华;[J];科学通报;1979年04期
孙学思;潘壮元;;[J];电机与控制学报;1986年03期
【相似文献】
中国期刊全文数据库
王玉兰;苏丽娟;朝鲁;;[J];黑龙江大学自然科学学报;2009年02期
邓中兴;崔明根;钟坦宜;;[J];哈尔滨科学技术大学学报;1988年03期
李德志;;[J];陕西科技大学学报;1993年02期
董玲玲;李援朝;王明强;;[J];曲阜师范大学学报(自然科学版);2006年04期
李红;刘同波;;[J];大学数学;2008年02期
李闪;;[J];西南民族大学学报(自然科学版);2009年03期
王玉兰;李子阳;刘薇;;[J];黑龙江大学自然科学学报;2010年05期
刘兴平;[J];数值计算与计算机应用;1992年01期
李树有;蔡敏;;[J];辽宁工学院学报;1996年01期
高新慧,庞进生;[J];河南科学;2005年03期
中国重要会议论文全文数据库
王挺;姚辰;李小凡;;[A];第七届全国信息获取与处理学术会议论文集[C];2009年
袁光伟;;[A];中国工程物理研究院科技年报(2005)[C];2005年
竹生东;谢仲生;;[A];中国工程物理研究院科技年报(2000)[C];2000年
袁光伟;沈隆钧;周毓麟;;[A];中国工程物理研究院科技年报(2002)[C];2002年
陈生昌;;[A];1995年中国地球物理学会第十一届学术年会论文集[C];1995年
余波;董宁;李董辉;;[A];中国运筹学会第九届学术交流会论文集[C];2008年
宋晓秋;朱思义;;[A];管理科学与系统科学进展——全国青年管理科学与系统科学论文集(第4卷)[C];1997年
肖映雄;陈鹏;舒适;;[A];中国计算力学大会'2010(CCCM2010)暨第八届南方计算力学学术会议(SCCM8)论文集[C];2010年
张鹏;;[A];和谐发展与系统工程——中国系统工程学会第十五届年会论文集[C];2008年
蒋长锦;;[A];Structure Preserving Algorithm and Its Applications--Proceedings of CCAST (World Laboratory) Workshop[C];1999年
中国博士学位论文全文数据库
刘天宝;[D];吉林大学;2011年
梁仙红;[D];浙江大学;2002年
段雪峰;[D];湖南大学;2008年
吴东旭;[D];吉林大学;2010年
孙洁;[D];浙江大学;2008年
黄卓红;[D];电子科技大学;2010年
徐云飞;[D];山东大学;2006年
杨爱利;[D];兰州大学;2008年
徐小文;[D];中国工程物理研究院;2007年
郭孔华;[D];湖南大学;2007年
中国硕士学位论文全文数据库
王小瑞;[D];青海民族大学;2012年
余先华;[D];浙江师范大学;2012年
初旭磊;[D];兰州大学;2011年
谈雪媛;[D];南京师范大学;2004年
周光平;[D];广西民族大学;2011年
王莉;[D];辽宁师范大学;2004年
吴智宇;[D];湖北师范学院;2012年
崔晓梅;[D];北华大学;2007年
李磊;[D];山东大学;2006年
黄叶楠;[D];湖南大学;2009年
&快捷付款方式
&订购知网充值卡
400-819-9993
《中国学术期刊(光盘版)》电子杂志社有限公司
同方知网数字出版技术股份有限公司
地址:北京清华大学 84-48信箱 大众知识服务
出版物经营许可证 新出发京批字第直0595号
订购热线:400-819-82499
服务热线:010--
在线咨询:
传真:010-
京公网安备75号&&&&用matlab求解非线性方程组的几种方法之程序
用matlab求解非线性方程组的几种方法之程序
用matlab求解非线性方程组的几种方法之程序,都是一些常用的方法,可作为工具使用
嵌到我的页面
<input type="text" readonly="true" value="">
若举报审核通过,可奖励20下载分
被举报人:
xiashaoyan1
举报的资源分:
请选择类型
资源无法下载
资源无法使用
标题与实际内容不符
含有危害国家安全内容
含有反动色情等内容
含广告内容
版权问题,侵犯个人或公司的版权
*详细原因:
VIP下载&&免积分60元/年(1200次)
您可能还需要
课程资源下载排行matlab代码--非线性方程组求解_百度文库
两大类热门资源免费畅读
续费一年阅读会员,立省24元!
matlab代码--非线性方程组求解
上传于||暂无简介
阅读已结束,如果下载本文需要使用1下载券
想免费下载本文?
定制HR最喜欢的简历
下载文档到电脑,查找使用更方便
还剩15页未读,继续阅读
定制HR最喜欢的简历
你可能喜欢}

我要回帖

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

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信