




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、MATLAB 程序设计实践课程考核 、编程实现以下科学计算算法,并举一例应用之。(参考书籍精 通科学计算,王正林等著,电子工业出版社, 年) “不动点迭代法和牛顿法非线性方程组求解” (1) .不动点迭代法非线性方程组求解(a).算法说明:设含有n个未知数与n个方程的非线性方程组记为:F(x)=0,然后把上述方程组改为便于迭代的等价形式:x=(x),由此就可以构造不动点迭代法的迭代公式:如果得到的序列xk满足,则就是的不动点,这样就可以求出非线性方程组的解。在MATLAB中编程实现的非线性方程组的不动点迭代法的函数为:mulStablePoint。功能:用不动点迭代法求非线性方程组的一个解。调
2、用格式:r,n=mulStablePoint(x0,eps)。其中,x0为初始迭代向量; eps为迭代精度; r为求出的解向量; n为迭代步数。(b).流程图:NYYNNY开始输入初始迭代值nargin=1r=myf(x0)n=1tol=1tolepsx0=r r=myf(x0) tol=norm(r-x0) n=n+1n输出结果eps=1.0e-4迭代步数太多,可能不收敛!结束(c).源程序代码:function r,n=mulStablePoint(x0,eps)%不动点迭代法求非线性方程组的一个解%初始迭代向量:x0%迭代精度:eps%解向量:r%迭代步数:nif nargin=1 ep
3、s=1.0e-4;end r=myf(x0);n=1;tol=1;while toleps x0=r; r=myf(x0); %迭代公式 tol=norm(r-x0); %注意矩阵的误差求法,norm为矩阵的欧几里德范数 n=n+1; if(n) %迭代步数控制 disp(迭代步数太多,可能不收敛!); return; endend举例说明:解:首先建立myf.m函数文件,输入以下内容:function f=myf(x)f(1)=0.5*sin(x(1)+0.1*cos(x(2)*x(1)-x(1);f(2)=0.5*cos(x(1)-0.1*sin(x(2)-x(2);在MATLAB命令窗口
4、中输入:(2).牛顿法非线性方程组求解(a).算法说明:设非线性方程组为,其中, 牛顿迭代法的迭代公式为:求解步骤为:(1) 给出初始值;(2) 对n=1,2,3计算F(xn)和F(xn);(3) 求出xn+1,并进行精度控制。更一般的牛顿法迭代公式为:当 = F(x0)时,就得到简化牛顿法。在MATLAB中编程实现的非线性方程组的牛顿迭代法的函数为:mulNewton。功能:用牛顿迭代法求非线性方程组的一个解。调用格式:r,n=mulNewton(x0,eps)。其中,x0为初始迭代向量; eps为迭代精度; r为求出的解向量; n为迭代步数。(b).流程图:NYYNNY开始输入初始迭代值n
5、argin=1r=x0-myf(x0)/dmyf(x0)n=1tol=1tolepsx0=rr=x0-myf(x0)/dmyf(x0)tol=norm(r-x0) n=n+1n输出结果eps=1.0e-4迭代步数太多,可能不收敛!结束(c).源程序代码:function r,n=mulNewton(x0,eps)%牛顿迭代法求非线性方程组的一个解%初始迭代向量x0%迭代精度eps%解向量r%迭代步数nif nargin=1 eps=1.0e-4;end r=x0-myf(x0)/dmyf(x0);n=1;tol=1;while toleps x0=r; r=x0-myf(x0)/dmyf(x0
6、); %核心迭代公式 tol=norm(r-x0); n=n+1; if(n) %迭代步数控制 disp(迭代步数太多,可能不收敛!); return; endend另一种方法为简化牛顿迭代法,如下:在MATLAB中编程实现的非线性方程组的简化牛顿迭代法的函数为:mulSimNewton。功能:用简化牛顿迭代法求非线性方程组的一个解。调用格式:r,n=mulSimNewton(x0,eps)。其中,x0为初始迭代向量; eps为迭代精度; r为求出的解向量; n为迭代步数。源程序代码:function r,n=mulSimNewton(x0,eps)%简化牛顿迭代法求非线性方程组的一个解%初始
7、迭代向量x0%迭代精度eps%解向量r%迭代步数nif nargin=1 eps=1.0e-4;end r=x0-myf(x0)/dmyf(x0);c=dmyf(x0);n=1;tol=1;while toleps x0=r; r=x0-myf(x0)/c; tol=norm(r-x0); n=n+1; if(n) disp(迭代步数太多,可能不收敛!); return; endend举例说明:解:首先建立myf.m函数文件,输入以下内容:function f=myf(x)f(1)=0.5*sin(x(1)+0.1*cos(x(2)*x(1)-x(1);f(2)=0.5*cos(x(1)-0.
8、1*sin(x(2)-x(2);f=f(1) f(2);再建立dmyf.m导数的雅可比矩阵,输入以下内容:function df=dmyf(x)df=0.5*cos(x(1)-0.1*x(2)*sin(x(2)*x(1)-1-0.1*x(1)*sin(x(2)*x(1)-0.5*sin(x(1)-0.1*cos(x(2)-1;然后在MATLAB命令窗口中输入:2、 编程解决以下科学计算问题1)5有3个多项式试进行下列操作:(1)求(2)求的根(3)当x取矩阵A的每一个元素,求的值。其中:A (4)当以矩阵A为自变量时,求的值。其中A的值与第(3)题相同。流程图结束使用函数polyvalm(p,
9、A)polyval(p,x)roots(p) conv(p2,p3)p1=1 2 4 0 5;p2=1 2;p3=1 2 3;x=-1 1.2 -1.4;0.75 2 3.5;0 5 2.5;A=-1 1.2 -1.4;0.75 2 3.5;0 5 2.5;开始源程序代码:%求积函数 conv(x,y)%求平方根函数 roots(p)%逐一取用矩阵中的数值函数 polyval(p,x)%取用矩阵的函数 polyvalm(p,A)是按照矩阵运算规则计算多项式的值%多项式 p2,p3%矩阵 A p1=1 2 4 0 5;p2=1 2;p3=1 2 3;p0=conv(p2,p3) %对p2和p3求
10、积p=p1+0 p0 %对p1和p0进行求和x=roots(p) %对p进行求根x=-1 1.2 -1.4;0.75 2 3.5;0 5 2.5;x0=polyval(p,x) %将矩阵x中的每一个数值代入p中A=-1 1.2 -1.4;0.75 2 3.5;0 5 2.5;x0=polyvalm(p,A) %将矩阵A代入p中 结果 2)2. 用三次多项式拟合下面数据,做出图形。 x=0 0.2 0.4 0.6 0.8 1 y=0 7.78 10.68 8.37 3.97 0解:【.m文件程序代码】 x= 0:0.2:1; y=0 7.78 10.68 8.37 3.97 0; a= poly
11、fit (x,y,3) a = 41.5625 -101.6071 60.0768 -0.1179 x1=0: 0.05: 1; y1=a(4)+a(3)*x1+a(2)*x1.2+a(1)*x1.3; plot (x, y, *) hold on plot (x1, y1, -r)运行结果:流程图:3. 拟合函数有如下形式: y=exp(x)试确定系数,并分别用线性尺度和对数尺度做出拟合曲线的图形。x=0.0129 0.0247 0.0530 0.1550 0.3010 0.4710 0.8020 1.2700 1.4300 2.4600 y=9.5600 8.1845 5.2612 2.7917 2.2611 1.7340 1.2370 1.0674 1.1171 0.7620解:【.m文件程序代码】function jisuanx=0.0129 0.0247 0.053 0.155 0.301 0.471 0.802 1.27 1.43 2.46;y=9.56 8.1845 5.2616 2.7917 2.2611 1.734 1.237 1.0674 1.1171 0.762;p=
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年部编版二年级上册语文分层教学计划
- 半导体厂重要环境因素控制措施
- 机场跑道施工进度计划和进度保证措施
- 四年级健康与安全教育方案计划
- 2024-2025学年度网络安全保护计划
- 2025年小学五年级科学教学信息化发展计划
- 小学科学教研计划课外拓展
- 口腔诊所前台接待话术及工作流程
- 五年级下册体育课程安全保障计划
- 以建模教学为翼展数学应用之翅:探索数学教育新路径
- 【课件超声】常见的超声效应与图象伪差
- 2023高中学业水平合格性考试历史重点知识点归纳总结(复习必背)
- 外墙保温、真石漆工程施工方案
- 自然指数NatureIndex(NI)收录的68种自然科学类期刊
- 建立良好的同伴关系-课件-高二心理健康
- 老年人健康管理随访表
- 高一物理竞赛试题和答案
- 物理学与现代高科技课件
- 一亩茶园认养合同
- 2022年镇海中学提前招生模拟卷科学试卷
- 变电站新建工程土方开挖专项施工方案
评论
0/150
提交评论