实验四 各类方程的求解(matlab实验报告)1.pdfVIP

  • 116
  • 0
  • 约8.49万字
  • 约 36页
  • 2017-05-21 发布于浙江
  • 举报

实验四 各类方程的求解(matlab实验报告)1.pdf

实验四 各类方程的求解(matlab实验报告)1

实验四 各类方程的求解 姓名: 学号: 10000 实验日期:2013.4.17 实验目的:掌握求解各类方程的MATLAB 命令 实验项目:(1)非线性方程求根;非线性方程求极值; 2 ()数值积分; (3)常微分方程求解。 实验背景:客观世界中众多现象可以划归为各类方程,特别是微分方程的求解问题; 因而如何利用MATLAB 求解各类方程的根、极值以及解是一类重要的课题。 实验具体过程: 1、题目: (方程求根) (i)求方程 2 2 的正根; xln( x 1 x) x 1 0.5x 0 (ii)Newton 迭代法是一种速度很快的迭代方法,但是它需要预先求得导函数,若 用差商代替导数,可得下列弦截法 x  x x x  k k1 f (x ) 。 k1 k k f (x ) f (x ) k k1 这一迭代法需要两个初值x ,x ,编写一个通用的弦截法计算机程序并用以解 (i)。 0 1 解题思路:(i) 由于该方程是非线性、非多项式的方程,因而求解只能利用fzero 或 者fsolve命令; (ii) 和 Newton 迭代法不同,弦截法涉及两次递归,求解过程应避免出现 |f (x ) f (x ) |很小的情形。 k k1 对实验题目的解答: i fun inline(x.*log(sqrt(x.^2-1)+x)-sqrt(x.^2-1)-0.5*x); () fplot(fun,[1,10]) 16 14 12 10 8 6 4 2 0 -2 1 2 3 4 5 6 7 8 9 10 由此,可以看到零点大约在x 1附近。下面使用fsolve命令进行计算精确的零点位 置。 [x,f,h] fsolve(fun,1) Optimizer appearstobeconvergingtoapointwhich isnot aroot. Norm ofrelativechangeinX islessthanmax(options.TolX^2,eps)but sum-of-squaresoffunction valuesisgreater than or equalto sqrt(options.TolFun) Try again with anew startingguess. x 0.7500-0.0000i f -0.3750-0.1194i h -2 [x,f,h] fsolve(fun,1.2) Optimizationterminated:first-order optimality islessthan options.TolFun. x 2.1155 f 1.0709e-006 h 1 (ii)%弦截法tps.m functiony tps(fun,x0,x1) e 1e-6; ifabs(x1-x0)2*e,x1 x0+2*e;end y x1; whileabs(x1-x0)e y x1-(x1-x0)/(feval(fun,x1)-feval(fun,x0))*feval(fun,x1); x0 x1; x1 y; end tps(fun,1.1,1.2) ans 2.1155 改进或思考: 由 (i)的运算结果可以看到,对于非线性问题,初始迭代点的选取非常重要。一旦 初始迭代数据过于远离精确值,将导致错误结果。 2、题目:(函数的的极值问题)

文档评论(0)

1亿VIP精品文档

相关文档