数值分析设计课程作业论文内容摘要:

项式展开 f = vpa(f, 6)。 end end end (三) 程序运行操作过程与输出结果 在命令窗口输入 x=[ 1 ]。 y=[ ]。 x0=。 Lagrange(x,y,x0) 回车 ans = 在命令窗口输入 x=[ 1 ]。 y=[ ]。 x0=。 Newton(x,y,x0) 回车 ans = 以下是截图和在 MATLAB 中的解法答案 (四) 对计算过程与结果的分析 运算拉格朗日插值时,有部分函数和用法需要熟练掌握和运用,同时详细分析题目,合理的分析,将自己的写成的程序输入到 MATLAB 中进行运行。 在 MATLAB 中,当没有你需要的函数或者程序时,需要构造 M 文件,重新确定自己需要的函数和程序, 在进行下面的计算。 若 MATLAB 中没有你需要的函数和自己构造的 M 文件,那么将无法进行题目的解答。 同时拉格朗日插值和牛顿插值的原理需要牢记并且能熟练运用。 拉格朗日 插值法在求每个基本多项式的时候要用到所有那些结点,因此如果需要再多加进去一个结点的话,需要重新求出基本多项式才可,而这需要大 量的工程, 而 拉格朗日 法插值是通过求各阶差商,递推得到的一个 二、 高斯( Gauss)消去法 . 用列主元 Gauss 消去法解方程组754217743322321321321xxxxxxxxx (一)理论知识 定理:当一个方阵 A 的 1( n1)阶顺序主子式都不为 0 时, A 存在唯一的 doolittle(杜利特尔 )分解。 对于满足条件的这个方阵,采用直接三角分解法可以得到这个唯一的 L、 U 矩阵。 但事实上, matlab 的 lu 函数并不是采用直接三角分解法,因为直接三角分解法存在着引入很大舍入误差的可能(直接分解法过程中,当对角元 为零或很小时)。 matlab 的 lu 函数采用的是列主元三角分解法,又称为 PLU 分解,实现 LU=PA。 该分解法要求的前提条件是 A 为非奇异矩阵。 (二)程序清单 列主元 Gauss 消去法 MATLAB 程序如下: % function x=magauss2(A,b,flag) %用途:列主元 Gauss 消去法解线性方程组 Ax=b %格式: x=magauss(A,b,flag),A 为系数矩阵, b 为右端项,若 flag=0,则不显示中间过程,否则显示中间过程,默认为 0, x 为解向量 if nargin3,flag=0。 end n=length(b)。 for k=1:(n1) % 选主元 [ap,p]=max(abs(A(k:n,k)))。 p=p+k1。 if pk t=A(k,:)。 A(k,:)=A(p,:)。 A(p,:)=t。 t=b(k)。 b(k)=b(p)。 b(p)=t。 end %消元 m=A(k+1:n,k)/A(k,k)。 A(k+1:n,k+1:n)=A(k+1:n,k+1:n)m*A(k,k+1:n)。 b(k+1:n)=b(k+1:n)m*b(k)。 A(k+1:n,k)=zeros(nk,1)。 if flag~=0, Ab=[A,b],end end %回代 x=zeros(n,1)。 x(n)=b(n)/A(n,n)。 for k=n1:1:1 x(k)=(b(k)A(k,k+1:n)*x(k+1:n))/A(k,k)。 end (三)操作过程及运行结果 在 MATLAB 命令窗口执行 b=[3 1 7]。 A=[2 2 3。 4 7 7。 2 4 5]。 [n,n] = size(A)。 x = zeros(n,1)。 Aug = [A,b39。 ]。 %增广矩阵 for k = 1:n1 [piv,r] = max(abs(Aug(k:n,k)))。 %找列主元所在子矩阵的行 r r = r + k 1。 % 列主元所在大矩阵的行 if rk temp=Aug(k,:)。 Aug(k,:)=Aug(r,:)。 Aug(r,:)=temp。 end if Aug(k,k)==0, error(39。 对角元出现 039。 ), end % 把增广矩阵消元成为上三角 for p = k。
阅读剩余 0%
本站所有文章资讯、展示的图片素材等内容均为注册用户上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考。 用户通过本站上传、发布的任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请联系我们反馈本站将在三个工作日内改正。