西交大计算方法上机报告

合集下载

西南交通大学数值分析上机实验报告

西南交通大学数值分析上机实验报告

数值分析上机实习报告学号:姓名:专业:联系电话:任课教师:序 (3)一、必做题 (4)1、问题一 (4)1.1 问题重述 (4)1.2 实验方法介绍 (4)1.3 实验结果 (5)2、问题二 (7)2.1 问题重述 (7)2.2 实验原理 (7)雅各比算法:将系数矩阵A分解为:A=L+U+D,则推到的最后迭代公式为: (8)2.3 实验结果 (8)二、选做题 (10)3、问题三 (10)3.1 问题重述 (10)3.2 实验原理 (10)3.3 实验结果 (11)总结 (11)序伴随着计算机技术的飞速发展,所有的学科都走向定量化和准确化,从而产生了一系列的计算性的学科分支,而数值计算方法就是解决计算问题的桥梁和工具。

数值计算方法,是一种研究并解决数学问题的数值近似解方法,是在计算机上使用的解数学问题的方法。

为了提高计算能力,需要结合计算能力与计算效率,因此,用来解决数值计算的软件因为高效率的计算凸显的十分重要。

数值方法是用来解决数值问题的计算公式,而数值方法的有效性需要根据其方法本身的好坏以及数值本身的好坏来综合判断。

数值计算方法计算的结果大多数都是近似值,但是理论的严密性又要求我们不仅要掌握将基本的算法,还要了解必要的误差分析,以验证计算结果的可靠性。

数值计算一般涉及的计算对象是微积分,线性代数,常微分方程中的数学问题,从而对应解决实际中的工程技术问题。

在借助MA TLAB、JA V A、C++ 和VB软件解决数学模型求解过程中,可以极大的提高计算效率。

本实验采用的是MATLAB软件来解决数值计算问题。

MA TLAB是一种用于算法开发、数据可视化、数据分析以及数值计算的高级技术计算语言和交互式环境,其对解决矩阵运算、绘制函数/数据图像等有非常高的效率。

本文采用MATLAB对多项式拟合、雅雅格比法与高斯-赛德尔迭代法求解方程组迭代求解,对Runge-Kutta 4阶算法进行编程,并通过实例求解验证了其可行性,使用不同方法对计算进行比较,得出不同方法的收敛性与迭代次数的多少,比较各种方法的精确度和解的收敛速度。

计算方法上机报告_董晓壮

计算方法上机报告_董晓壮

计算方法A上机报告学院(系):电气工程学院学生姓名:陶然学号:授课老师:完成日期:2019年12月03日西安交通大学Xi'an Jiaotong University目录1 QR分解法求解线性方程组 (2)1.1 算法原理 (2)1.1.1 基于吉文斯变换的QR分解 (2)1.1.2 基于豪斯霍尔德变换的QR分解 (3)1.2 程序流程图 (4)1.2.1 基于吉文斯变换的QR分解流程图 (4)1.2.2 基于豪斯霍尔德变换的QR分解流程图 (5)1.3 程序使用说明 (5)1.3.1 基于吉文斯变换的QR分解程序说明 (5)1.3.2 基于豪斯霍尔德变换的QR分解程序说明 (7)1.4 算例计算结果 (8)2 共轭梯度法求解线性方程组 (10)2.1 算法原理 (10)2.2 程序流程图 (10)2.3 程序使用说明 (11)2.4 算例计算结果 (12)3 三次样条插值 (14)3.1 算法原理 (14)3.2 程序流程图 (16)3.3 程序使用说明 (17)3.4 算例计算结果 (19)4 龙贝格积分 (21)4.1 算法原理 (21)4.2 程序流程图 (22)4.3 程序使用说明 (23)4.4 算例计算结果 (24)结论 (26)1 QR 分解法求解线性方程组1.1 算法原理矩阵的QR 分解是指,可以将矩阵A 分解为一个正交矩阵Q 和一个上三角矩阵R 的乘积,实际中,QR 分解经常被用来解决线性最小二乘问题,分解情况如图1.1所示。

=⨯图1.1 QR 分解示意图本次上机学习主要进行了两个最基本的正交变换—吉文斯(Givens )变换和豪斯霍尔德(Householder )变换,并由此导出矩阵的QR 分解以及求解线性方程组的的方法。

1.1.1 基于吉文斯变换的QR 分解吉文斯矩阵也称初等旋转阵,如式(1.1)所示,它把n 阶单位矩阵I 的第,i j 行的对角元改为c ,将第i 行第j 列的元素改为s ,第j 行第i 列的元素改为s −后形成的矩阵。

计算方法与实习上机实验报告

计算方法与实习上机实验报告

计算方法与实习上机实验报告一、引言本文旨在介绍和展示我们在“计算方法”课程中的实习上机实验环节所完成的一些关键任务和所取得的成果。

该实验课程的目标是让我们更深入地理解和应用各种计算方法,并在实际操作中提高我们的编程和问题解决能力。

二、实验内容与目标实验的主要内容是利用各种计算方法解决实际数学问题。

我们被要求使用编程语言(如Python或Java)来实现和解决这些问题。

这些问题包括使用牛顿法求解平方根,使用蒙特卡洛方法计算圆周率,以及使用最优化方法求解函数的最小值等。

实验的目标不仅是让我们掌握计算方法的基本理论,更是要让我们能够在实际操作中运用这些方法。

我们需要在实习过程中,通过与同伴们合作,共同解决问题,提高我们的团队合作能力和问题解决能力。

三、实验过程与问题解决策略在实验过程中,我们遇到了许多问题,如编程错误、理解困难和时间压力等。

我们通过相互讨论、查阅资料和寻求教师帮助等方式,成功地解决了这些问题。

例如,在实现牛顿法求解平方根时,我们一开始对导数的计算和理解出现了一些错误。

但我们通过查阅相关资料和讨论,最终理解了导数的正确计算方法,并成功地实现了牛顿法。

四、实验结果与结论通过这次实习上机实验,我们不仅深入理解了计算方法的基本理论,还在实际操作中提高了我们的编程和问题解决能力。

我们的成果包括编写出了能有效求解平方根、计算圆周率和求解函数最小值的程序。

这次实习上机实验非常成功。

我们的团队不仅在理论学习和实践操作上取得了显著的进步,还在团队合作和问题解决方面积累了宝贵的经验。

这次实验使我们对计算方法有了更深的理解和认识,也提高了我们的编程技能和解决问题的能力。

五、反思与展望回顾这次实验,我们意识到在实验过程中,我们需要更好地管理我们的时间和压力。

在解决问题时,我们需要更有效地利用我们的知识和资源。

在未来,我们希望能够更加熟练地运用计算方法,并能够更有效地解决问题。

我们也希望能够将所学的计算方法应用到更广泛的领域中,如数据分析、科学研究和工业生产等。

西安交通大学算法上机实验报告

西安交通大学算法上机实验报告

《计算机算法设计与分析》上机实验报告姓名:班级:学号:日期:2016年12月23日算法实现题3-14 最少费用购物问题★问题描述:商店中每种商品都有标价。

例如,一朵花的价格是2元,一个花瓶的价格是5元。

为了吸引顾客,商店提供了一组优惠商品价。

优惠商品是把一种或多种商品分成一组,并降价销售。

例如,3朵花的价格不是6元而是5元。

2个花瓶加1朵花的优惠价格是10元。

试设计一个算法,计算出某一顾客所购商品应付的最少费用。

★算法设计:对于给定欲购商品的价格和数量,以及优惠价格,计算所购商品应付的最少费用。

★数据输入:由文件input.txt提供欲购商品数据。

文件的第1行中有1个整数B(0≤B≤5),表示所购商品种类数。

在接下来的B行中,每行有3个数C,K和P。

C表示商品的编码(每种商品有唯一编码),1≤C≤999;K表示购买该种商品总数,1≤K≤5;P是该种商品的正常单价(每件商品的价格),1≤P≤999。

请注意,一次最多可购买5*5=25件商品。

由文件offer.txt提供优惠商品价数据。

文件的第1行中有1个整数S(0≤S≤99),表示共有S种优惠商品组合。

接下来的S行,每行的第1个数描述优惠商品组合中商品的种类数j。

接着是j个数字对(C,K),其中C是商品编码,1≤C≤999;K表示该种商品在此组合中的数量,1≤K≤5。

每行最后一个数字P (1≤P≤9999)表示此商品组合的优惠价。

★结果输出:将计算出的所购商品应付的最少费用输出到文件output.txt。

输入文件示例输出文件示例Input.txt offer.txt output.txt2 2 147 3 2 1 7 3 58 2 5 2 7 1 8 2 10解:设cost(a,b,c,d,e)表示购买商品组合(a,b,c,d,e)需要的最少费用。

A[k],B[k],C[k],D[k],E[k]表示第k种优惠方案的商品组合。

offer (m)是第m种优惠方案的价格。

西安交通大学数学建模上机实验报告

西安交通大学数学建模上机实验报告

问题一某大型制药厂销售部门为了找出某种注射药品销量与价钱之间的关系,通过市场调查搜集了过去30个销售周期的销量及销售价钱的数据,如表.按照这些数据至少成立两个数学模型, 作出图形,比较误差。

问题分析:该问题是通过已知的过去30个销售周期的销量及销售价钱的 数据,来寻觅一个最能反映该药销量与价钱之间的函数曲 线。

在数学上归结为最佳曲线拟合问题。

大体思想:曲线拟合问题的提法:已知一组二维数据,即平面上的n 个点),x i i y ( i=1,2,3.....n ,i x 互不相同,寻求一个函数)(f y x =,使)(x f 在某中准则下与所有数据点最为接近,即曲线拟合得最好。

最小二乘法是解决曲线拟合最常常利用的方式.大体思路:1122 ()()()()m m f x a r x a r x a r x =+++令其中rk(x) 是事前选定的一组函数,ak 是待定系数(k=1,2,…,m,m <n), 拟合准则是使n 个点(xi,yi) (i=1,2…,n),与y=f(xi)的距离 的平方和最小,称最小二乘法准则。

一、系数的肯定22111 (,,)[()]n nm ii i i i J a a f x y δ====-∑∑记求m a a ,,1 使得使J 达到最小.0 (1,,)kJ k m a ∂==∂ 取得关于 m a a ,,1 的线性方程组:11111()[()]0 ()[()]0nmi k k i i i k n mm i k k i i i k r x a r x y r x a r x y ====⎧-=⎪⎪⎪⎨⎪⎪-=⎪⎩∑∑∑∑ 1 ,,().m a a f x 解出,即得散点图: 程序: x=[,,,,,,,,,,,,,,,,,,,,,,,,,,,,,]; y=[,,,,,,,,,,,,,,,,,,,,,,,,,,,,,]; plot(x,y,'r.')通过观察,结合实际情形。

西安交大计算方法上机报告

西安交大计算方法上机报告

从而得到计算的公式:
j 1, 2,..., n 1 j 1 j l i1 i 2,3,..., n i1 11 i 1 lik ukj j i , i 1,..., n, i 2,3,.., n ij ij k 1 i 1 1 l ( lkt ti ) k i 1,..., n, i 2,3,.., n ki ki t 1 ii
计算方法 上机实习题目报告
班级:材料 s3076 班 姓名:丁明帅 学号:3113305029
1:计算 S
100000

k 1
1 ,要求误差小于 106 ,给出实现算法。 k2
【实现思路】
设当 k 值为 i 时 S-Si<10-6,则只需要
S Si

100000 1
k i
1
2
1 l32 ln 2 1 ln 3 1
4 / 46
12 22
1n 2 n

nn
因此有
1 j 2 j 0 jj 0 0
ij li1
li 2
li ,i -1
根据定义知道 L 矩阵的斜对角线上的值都为 1,且 L 矩阵的第一行与原矩阵 A 的第一行 相同,因此可以根据公式先计算 U 的第一行,然后计算 L 的第一列;以后的第 i 步先计算 U 的第 i 行, 然后计算 L 的第 i 列 (U 的第 n 行不作计算) 。 然后把最后的 U 的第 n 行计算出来。
【算法依据】
列主元高斯消元法的过程可以将方程组系数简化为系数矩阵与 b 矩阵, 从而利用方程组 对系数扩展矩阵进行消元。 在消元的过程中矩阵的行向量之间可以变换, 但列向量不能变化。 在进行压缩矩阵的求解中还需要人为的将因调整行向量所导致的列向量的变化调整回来。 Matlab 对于矩阵的处理非常容易,结合 for 循环语句可以实验本题大规模方程组的求解。

西安交大 计算方法B上机作业

西安交大 计算方法B上机作业

计算方法(B )上机作业一、三次样条拟合某通信公司在一次施工中,需要在水面宽度为20米的河沟底部沿直线走向铺设一条沟底光缆。

在铺设光缆之前需要对沟底的地形进行初步探测,从而估计所需光缆的长度,为工程预算提供依据。

已探测到一组等分点位置的深度数据(单位:米)如下表所示:(1)(2)估算所需光缆长度的近似值,并作出铺设河底光缆的曲线图; 解:1、算法实现的思想及依据题目(1)为曲线拟合问题多项式插值、分段插值和最小二乘法。

多项式插值,随着插值数据点的数目增多,误差也会随之增大,因此不选用。

最小二乘法适于数据点较多的场合,在此也不适用。

故选用分段插值。

分段插值又分为分段线性插值、分段二次插值、三次样条插值及更高阶的多项式插值。

由本题的物理背景知,光缆正常工作时各点应该是平滑过渡,因此至少选用三次样条插值法。

对于更高阶的多项式插值,由于“龙格现象”而不选用。

题目(2)求光缆长度,即求拟合曲线在0到20的长度,对弧长进行积分即可。

光缆长度的第一型线积分表达式为190k kk l +==∑⎰。

2、算法实现的结构参考教材给出的SPLINEM 算法和TTS 算法,在选定边界条件和选定插值点等距分布后,可以先将数据点的二阶差商求出来并赋值给右端向量d ,再根据TSS 解法求解M 。

光缆长度的第一型线积分表达式为190k kk l +==∑⎰。

3、程序运行结果及分析图1.1三种边界条件下三次样条插值图1.2光缆长度4、MATLAB代码:1)自己编程实现代码clear;clc;I=input('你想使用第几种边界条件?请输入1、2、3之一: ');x=0:20;y=[9.01 8.96 7.96 7.97 8.02 9.05 10.13 11.18 12.26 13.28 13.32 12.61 11.29 10.22 9.15 7.90 7.95 8.86 9.81 10.8 10.93];plot(x,-y,'k.','markersize',15)%y为深度,取负号hold on%% 计算一阶差商y1=ones(1,21);for i=2:1:21y1(i)=(y(i)-y(i-1))/(x(i)-x(i-1));end%% 计算二阶差商y2=ones(1,21);for i=3:1:21y2(i)=(y1(i)-y1(i-1))/(x(i)-x(i-2));end%% 计算三阶差商y3=ones(1,21);for i=4:1:21y3(i)=(y2(i)-y2(i-1))/(x(i)-x(i-3));end%% 选择边界条件(I)if I==1d(1)=0;d(21)=0;a(21)=0;c(1)=0;% 第一个点和最后一个点的二阶差商为0 endif I==2d(1)=6*y1(1);d(21)=-6*y1(21);a(1)=1;c(1)=1;endif I==3d(1)=-12*y3(1);d(21)=-12*y3(21);a(21)=-2;c(1)=-2;%endfor i=2:20d(i)=6*y2(i+1);end%% 构造带状矩阵求解(追赶法)b=2*ones(1,21);a=0.5*ones(1,21);%a(21)=-2;c=0.5*ones(1,21);%c(1)=-2;u(1)=b(1);r(1)=c(1);%% 追yz(1)=d(1);for i=2:21l(i)=a(i)/u(i-1);u(i)=b(i)-l(i)*r(i-1);r(i)=c(i);yz(i)=d(i)-l(i)*yz(i-1);end%% 赶xg(21)=yz(21)/u(21);for i=20:-1:1xg(i)=(yz(i)-r(i)*xg(i+1))/u(i);endM=xg;%%所有点的二阶导数值%% 求函数表达式并积分t=1;h=1;N=1000x1=0:20/(N-1):20;length=0;for i=1:Nfor j=2:20if x1(i)<=x(j)t=j;break;elset=j+1;endendf1=x(t)-x1(i);f2=x1(i)-x(t-1);S(i)=(M(t-1)*f1^3/6/h+M(t)*f2^3/6/h+(y(t-1)-M(t-1)*h^2/6)*f1+(y(t)-M(t)*h^2/6)* f2)/h;Sp(i)=-M(t-1)*f1^2/2/h+M(t)*f2^2/2/h+(y(t)-y(t-1))/h-(M(t)-M(t-1))*h/6;length(i+1)=sqrt(1+Sp(i)^2)*(20/(N-1))+length(i);%第一类线积分endfigure(1);plot(x1,-S,'r-')%深度曲线griddisp(['第',num2str(I),'种边界条件下长度',num2str(length(N+1)),'米'])axis fill;xlabel('测点/米');ylabel('深度/米');title('三次样条曲线拟合');legend('数据点','拟合曲线',3);二、最小二乘近似假定某天的气温变化记录如下表所示,试用数据拟合的方法找出这一天的气温变化的规律;试计算这一天的平均气温,并试估计误差。

西安交通大学第二次汇编上机实验报告

西安交通大学第二次汇编上机实验报告

西安交通大学第二次汇编上机实验报告
实验时间5.31姓名
学号
实验内容概述主要对第五章所学的循环了分支结构进行了实践。

第一题循环结构比大小,把最大值的最大值的相对位置存储在数组之后的两位第二题循环结构找两数组之间的相同数字第三题分支结构对数组里出现的元素进行计数实验步骤
一(1)对数据求源码(负数取反后加一)(2)取每个数的绝对值(3)从前向后两两比较,如果当前数字比max的记录值大,那么更新当前数字的max,并存储当前位置pos二(1)根据数组a的长度设置外循环次数(2)根据数组b 的长度设置外循环次数(3)外循环遍历a的每一个元素,将a中每一个元素与b中元素比较,如果相同,则终止当前内循环,将该值存储在c数组中三(1)定义一个分支结构,先判断当前值,如果相等,则跳转至对应子程序:使存储该数字出现次数的位置上加一(2)程序运行结束时,在dos窗口输出每个元素出现的次数,
实验中遇到的问题及其解决方法1、mov指令用错当时报错后,查找了mov 指令的课本内容,想起来存储单元之间不能直接赋值,已解决2、逻辑正确,数据错误当时确认逻辑无误之后,我的内心非常纠结,甚至出现了想要重装软件的想法,后来利用u和t指令,一步步找错,发现是比例因子出现错误,将inccx 改为addcx,2后解决实验结果
结果均正确
2021

5月
31日
建议无备注无。

数值分析上机实习报告(西南交通大学)

数值分析上机实习报告(西南交通大学)

数值分析上机实习报告姓名:学号:专业:大地测量学与测量工程电话:序言1.所用程序语言:本次数值分析上机实习采用Visual c#作为程序设计语言,利用Visual c#可视化的编程实现方法,采用对话框形式进行设计计算程序界面,并将结果用表格或文档的格式给出。

2.程序概述:(1)第一题是采用牛顿法和steffensen法分别对两个题进行分析,编好程序后分别带入不同的初值,观察与真实值的差别,分析出初值对结果的影响,分析两种方法的收敛速度。

(2)第二题使用Visual c#程序设计语言完成了“松弛因子对SOR法收敛速度的影响”,通过在可视化界面下输入不同的n和w值,点击按钮直接可看到迭代次数及计算结果,观察了不同的松弛因子w对收敛速度的影响。

目录一.用牛顿法,及牛顿-Steffensen法............ 错误!未定义书签。

1. 计算结果.................................... 错误!未定义书签。

2. 结果分析 (5)3. 程序清单 (5)二.松弛因子对SOR法收敛速度的影响 (8)1. 迭代次数计算结果 (8)2. 计算X()结果 (10)3. 对比分析 (12)4. 程序清单: (12)三.实习总结 (14)实验课题(一)用牛顿法,及牛顿-Steffensen法题目:分别用牛顿法,及牛顿-Steffensen法(1)求ln(x+sin x)=0的根。

初值x0分别取0.1, 1,1.5, 2, 4进行计算。

(2)求sin x=0的根。

初值x0分别取1,1.4,1.6, 1.8,3进行计算。

分析其中遇到的现象与问题。

1、计算结果由于比较多每种方法中只选取了其中两个的图片例在下面:2、结果分析通过对以上的牛顿法和steffensen法的练习,我发现在初值的选取很重要,好的初值选出后可以很快的达到预定的精度,要是选的不好就很慢,而且在有的时候得出的还是非数字,所以初始值的选取很重要。

西安交通大学计算方法A上机作业

西安交通大学计算方法A上机作业

计算方法(A)大作业姓名:班级:专业:学号:共轭梯度法一、算法原理共轭梯度法是把求解线性方程组的问题转化为求解一个与之等价的二次函数极小化的问题,因此从任意给定的初始点出发,沿一组关于矩阵A的共轭方向进行线性搜索,在无舍入无差的假定下,最多迭代n(其中n为矩阵A的阶数)次就可求得二次函数的极小点,也就求得了线性方程组Ax=B的解。

下述定理给出了求系数矩阵A是对称正定矩阵的线性方程组Ax=b的解与求二次函数f(x)=12x T Ax−b T x极小点的等价性。

定理3.4.1设A是n阶对称正定矩阵,则x∗是方程组Ax=b的解的充分必要条件是x∗是二次函数f(x)=12x T Ax−b T x的极小点,即Ax∗=b⟺f(x∗)=minx∈R nf(x)证明:充分性.设x∗是f(x)的极小点,则由无约束最优化问题最优解的必要条件知∇f(x∗)=Ax∗−b即x∗是方程组Ax=b的解。

必要性. 若x∗是方程组Ax=b的解,即A x∗=b,注意到A是对称正定矩阵,故∀x∈R n有f(x)−f(x∗)=12x T Ax−b T x−12x T Ax∗+b T x∗=12(x T Ax−2b T x+x∗T Ax∗)−x∗T Ax∗+b T x∗=12(x T Ax−2(Ax∗)T x+x∗T Ax∗)−(Ax∗−b)T x∗=12(x−x∗)T A(x−x∗)≥0即x∗是f(x)的极小点,进而由A是正定矩阵知,x∗是f(x)的最小点。

证毕。

共轭梯度法在形式上具有迭代法的特征,在给定初始值情况下,根据迭代公式:x(k+1)=x(k)+αk d(k)产生的迭代序列x(1),x(2),x(3)…在无舍入误差假定下,最多经过n次迭代,就可求得f(x) 的最小值,也就是方程Ax=b的解。

共轭梯度法中关键的两点是,确定迭代格式中的搜索向量d(k)和最佳步长αk (αk≥0)。

实际上,搜索方向d(k)是关于矩阵A的共轭向量,在迭代中逐步构造之。

西交计算方法A上机大作业

西交计算方法A上机大作业

计算方法A 上机大作业1. 共轭梯度法求解线性方程组算法原理:由定理3.4.1可知系数矩阵A 是对称正定矩阵的线性方程组Ax=b 的解与求解二次函数1()2TT f x x Ax b x =- 极小点具有等价性,所以可以利用共轭梯度法求解1()2TT f x x Ax b x =-的极小点来达到求解Ax=b 的目的。

共轭梯度法在形式上具有迭代法的特征,在给定初始值情况下,根据迭代公式:(1)()()k k k k x x d α+=+产生的迭代序列(1)(2)(3)x x x ,,,... 在无舍入误差假定下,最多经过n 次迭代,就可求得()f x 的最小值,也就是方程Ax=b 的解。

首先导出最佳步长k α的计算式。

假设迭代点()k x 和搜索方向()k d 已经给定,便可以通过()()()()k k f x d φαα=+的极小化()()min ()()k k f x d φαα=+来求得,根据多元复合函数的求导法则得:()()()'()()k k T k f x d d φαα=∇+令'()0φα=,得到:()()()()k T k k k T k r d d Adα= ,其中()()k k r b Ax =-然后确定搜索方向()k d 。

给定初始向量(0)x 后,由于负梯度方向是函数下降最快的方向,故第一次迭代取搜索方向(0)(0)(0)(0)()dr f x b Ax ==-∇=- 。

令(1)(0)00x x d α=+其中(0)(0)0(0)(0)T T r d d Adα=。

第二次迭代时,从(1)x 出发的搜索方向不再取(1)r ,而是选取(1)(1)(0)0dr d β=+,使得(1)d 与(0)d 是关于矩阵A 的共轭向量,由此可求得参数0β:(1)(0)0(0)(0)T T r Ad d Adβ=-然后从(1)x 出发,沿(1)d 进行搜索得到(2)(1)(1)1x x d α=+设已经求出(1)()()k k k k x x d α+=+,计算(1)(1)k k r b Ax ++=-。

西安交通大学 计算方法上机报告

西安交通大学 计算方法上机报告

计算方法上机报告姓名:学号:班级:机械硕4002上课班级:02班说明:本次上机实验使用的编程语言是Matlab 语言,编译环境为MATLAB 7.11.0,运行平台为Windows 7。

1. 对以下和式计算:∑∞⎪⎭⎫ ⎝⎛+-+-+-+=0681581482184161n n n n S n,要求:① 若只需保留11个有效数字,该如何进行计算; ② 若要保留30个有效数字,则又将如何进行计算;(1) 算法思想1、根据精度要求估计所加的项数,可以使用后验误差估计,通项为: 142111416818485861681n n n a n n n n n ε⎛⎫=---<< ⎪+++++⎝⎭; 2、为了保证计算结果的准确性,写程序时,从后向前计算; 3、使用Matlab 时,可以使用以下函数控制位数: digits(位数)或vpa(变量,精度为数)(2)算法结构1. ;0=s⎪⎭⎫⎝⎛+-+-+-+=681581482184161n n n n t n; 2. for 0,1,2,,n i =⋅⋅⋅ if 10m t -≤end;3. for ,1,2,,0n i i i =--⋅⋅⋅;s s t =+(3)Matlab源程序clear; %清除工作空间变量clc; %清除命令窗口命令m=input('请输入有效数字的位数m='); %输入有效数字的位数s=0;for n=0:50t=(1/16^n)*(4/(8*n+1)-2/(8*n+4)-1/(8*n+5)-1/(8*n+6));if t<=10^(-m) %判断通项与精度的关系break;endend;fprintf('需要将n值加到n=%d\n',n-1); %需要将n值加到的数值for i=n-1:-1:0t=(1/16^i)*(4/(8*i+1)-2/(8*i+4)-1/(8*i+5)-1/(8*i+6));s=s+t; %求和运算ends=vpa(s,m) %控制s的精度(4)结果与分析当保留11位有效数字时,需要将n值加到n=7,s =3.1415926536;当保留30位有效数字时,需要将n值加到n=22,s =3.14159265358979323846264338328。

西安交通大学计算方法上机作业

西安交通大学计算方法上机作业

计算方法上机作业1.对以下和式计算:0142118184858616n n S n n n n ∞=⎛⎫=--- ⎪++++⎝⎭∑,要求: (1)若只需保留11个有效数字,该如何进行计算; (2)若要保留30个有效数字,则又将如何进行计算;(1)解题思想和算法实现:根据保留有效位数的要求,可以由公式得出计算精度要求。

只需要很少内存,时间复杂度和d 呈线性,不需要高浮点支持。

先根据while 语句求出符合精度要求的n 值的大小,然后利用for 语句对这n 项进行求和,输出计算结果及n 值大小即可。

(2)matlab 源程序:保留11位有效数字时; clear clcformat long n=0;sum=1/(16^n)*(4/(8*n+1)-2/(8*n+4)-1/(8*n+5)-1/(8*n+6)); while sum>=5*10^(-11); n=n+1;sum=1/(16^n)*(4/(8*n+1)-2/(8*n+4)-1/(8*n+5)-1/(8*n+6)); endfor i=0:n-1;sum=sum+1/(16^i)*(4/(8*i+1)-2/(8*i+4)-1/(8*i+5)-1/(8*i+6)); endvpa(sum,11) n保留30位有效数字时; clear clcformat long n=0;sum=1/(16^n)*(4/(8*n+1)-2/(8*n+4)-1/(8*n+5)-1/(8*n+6)); while sum>=5*10^(-30); n=n+1;sum=1/(16^n)*(4/(8*n+1)-2/(8*n+4)-1/(8*n+5)-1/(8*n+6)); endfor i=0:n-1;sum=sum+1/(16^i)*(4/(8*i+1)-2/(8*i+4)-1/(8*i+5)-1/(8*i+6)); endvpa(sum,30) n(3)实验结果分析图1.1 保留11位有效数字的n值及计算结果图图1.2 保留30位有效数字的n值及计算结果图由计算结果可知,通过合理的误差控制,分别通过7次和22次循环,可以实现题目所要求的精确度。

西安交大计算方法

西安交大计算方法

西安交通大学计算方法上机实验班级:(xxx)姓名:(xxx)学号:21116010041.按两种顺序计算y,哪个接近真值?Y = 1000 + + + … +用java 语言编写:public class Add {public static void main(String[] args){double s=0,y=1000;for(double a=1001.0;a<=2000.0;a++){y+=1.0/a;}for(double a=2000.0;a>=1001.0;a--){s+=1.0/a;}s=s+1000;System.out.println("正序和"+s);System.out.println("逆序和"+y);}}运行结果:结论:显然假设是double类型的数据时,先算大数的过程吃掉了末尾的小数被进位所埋没,导致了大数吃小数的误差,按从小到大(从右向左)的计算顺序所得的结果与真值相近,而按从大到小(从左到右)的计算顺序所得的结果与真值的误差较大。

1-18.设(x) = 1 + x + + + … + , 计算(-5)和1/(5),哪个接近?解法一:用JAVA 语言编写:public class second{ public static void main(String[] args){double s1=1 ,s2=1;double e=1,sum=1; //e的初值为1,sum用来存放n!int a=1;while(sum<Math.pow(10, 1000000)){sum=a*sum;e=1.0/sum+e;a++;}double b=1.0/(e*e*e*e*e);System.out.println("较为精确的值1/e^5="+b);for(int i=1;i<=24;i++){s1+=cimi1(i);s2+=cimi2(i);}s1=1.0/s1;System.out.println("1/S24(5)="+s1);System.out.println("S24(-5)="+s2);}public static double cimi1(int ai){double xi=1;for(int i=ai;i>=1;i--){xi=xi*(5.0/i);}return xi;}public static double cimi2(int ai){double xi=1;for(int i=ai;i>=1;i--){xi=xi*(-5.0/i);}return xi;}}运行结果:解法二:用matlab编程并运行,如下:(1)计算(-5)运行结果如下:(2)计算1/(5)运行结果如下:而的真是结果为0.006737946比较得1/(5)的计算结果与真实值更接近解法三:也可以用C++编写:#include "stdafx.h"#include"stdio.h"#include "iostream"using namespace std;int main(int argc, char* argv[]){ int func1(int );double func2(int);double y=0;int i;for(i=1;i<25;i++){ int z=func1(i);double e=func2(i);y+=z/e;}cout<<"----------------------------------------"<<endl;cout<<"1/S(5)的运算结果是:"<<" "<<1.0/(y+1)<<endl;cout<<"----------------------------------------"<<endl;return 0;}int func1(int x){int y=1;int k;for (k=0;k<x;k++)y*=5;return y;}double func2(int n){double y=1;int j;for (j=1;j<=n;j++)y*=j;return y;}运行结果如下图:结论:通过比较上述的几种编程结果,可以看出1/S(5),更接近真实值,而且用matlab更为简便,可以直接利用函数库,并可以轻松的嵌入秦九韶算法,大大减少运算量和时间。

计算方法实验上机报告(完整版)

计算方法实验上机报告(完整版)

简单迭代法#include<stdio.h>#include<math.h>#define x0 3.0#define MAXREPT 1000#define EPS 1E-6#define G(x) pow(12*x+sin(x)-1,1.0/3)void main(){int i;double x_k=x0,x_k1=x0;printf("k\txk\n");for(i=0;i<MAXREPT;i++){printf("%d\t%g\n",i,x_k1);x_k1=G(x_k);if (fabs(x_k1-x_k)<EPS){printf("THE ROOT IS x=%g,k=%d\n",x_k1,i);return;}x_k=x_k1;}printf("AFTER %d repeate,no solved.\n",MAXREPT);}结果牛顿迭代法一#include<stdio.h>#include<math.h>#define x0 3.0#define MAXREPT 1000#define EPS 1E-6#define G(x) x-(pow(x,3)-sin(x)-12*x+1)/(3*pow(x,2)-cos(x)-12) void main(){int i;double x_k=x0,x_k1=x0;printf("k\txk\n");for(i=0;i<MAXREPT;i++){printf("%d\t%g\n",i,x_k1);x_k1=G(x_k);if (fabs(x_k1-x_k)<EPS){printf("THE ROOT IS x=%g,k=%d\n",x_k1,i);return;}x_k=x_k1;}printf("AFTER %d repeate,no solved.\n",MAXREPT);}结果埃特金加速法#include<stdio.h>#include<math.h>#define x0 3.0#define MAXREPT 1000#define EPS 1E-6#define G(x) (pow(x,3)-sin(x)+1)/12void main(){int i;double x1=x0,x2=x0;double z,y;printf("k\tx1\tx2\txk\n");for(i=0;i<MAXREPT;i++){if(i==0)printf("%d\t\t\t%g\n",i,x2);elseprintf("%d\t%g\t%g\t%g\n",i,y,z,x2);y=G(x1);z=G(y);x2=z-((z-y)*(z-y))/(z-2*y+x1);if (fabs(x2-x1)<EPS){printf("THE ROOT IS x=%g,k=%d\n",x2,i);return;}x1=x2;}printf("AFTER %d repeate,no solved.\n",MAXREPT);} 结果牛顿迭代法二#include<stdio.h>#include<math.h>#define x0 1.5#define MAXREPT 1000#define EPS 1E-6#define G(x) x-(pow(x,3)+pow(x,2)-3*x-3)/(3*pow(x,2)+2*x-3) void main(){int i;double x_k=x0,x_k1=x0;printf("k\txk\n");for(i=0;i<MAXREPT;i++){printf("%d\t%g\n",i,x_k1);x_k1=G(x_k);if (fabs(x_k1-x_k)<EPS){printf("THE ROOT IS x=%g,k=%d\n",x_k1,i);return;}x_k=x_k1;}printf("AFTER %d repeate,no solved.\n",MAXREPT);}结果弦截法#include<stdio.h>#include<math.h>#define x0 0#define x1 1.5#define MAXREPT 1000#define EPS 1E-6#define G(x) pow(x,3)+pow(x,2)-3*x-3void main(){int i;double x_k=x0,x_k1=x1,x_k2=0;double y,z;printf("k\txk\n");for(i=0;i<MAXREPT;i++){printf("%d\t%g\n",i,x_k2);y=G(x_k);z=G(x_k1);x_k2=x_k1-(z*(x_k1-x_k))/(z-y);if (fabs(x_k2-x_k1)<EPS){printf("THE ROOT IS x=%g,k=%d\n",x_k2,i);return;}x_k=x_k1;x_k1=x_k2;}printf("AFTER %d repeate,no solved.\n",MAXREPT); } 结果高斯顺序消元法#include<stdio.h>#include<math.h>#define N 4static double aa[N][N+1]={{2,4,0,1,1},{3,8,2,2,3},{1,3,3,0,6},{2,5,2,2,3}}; int gauss(double a[][N+2],double x[]);void putout(double a[][N+2]);void main(){int i,j,det;double a[N+1][N+2],x[N+1];for(i=1;i<=N;i++)for(j=1;j<=N+1;j++)a[i][j]=aa[i-1][j-1];det=gauss(a,x);if(det!=0)for(i=1;i<=N;i++)printf(" x[%d]=%g",i,x[i]);printf("\n");}int gauss(double a[][N+2],double x[]){int i,j,k;double c;putout(a);for(k=1;k<=N-1;k++){ if(fabs(a[k][k])<1e-17){printf("\n pivot element is 0.fail!\n");return 0;}for(i=k+1;i<=N;i++){c=a[i][k]/a[k][k];for(j=k;j<=N+1;j++){a[i][j]=a[i][j]-c*a[k][j];}}putout(a);}if(fabs(a[N][N])<1e-17){printf("\n pivot element is 0.fail!\n");return 0;}for(k=N;k>=1;k--){x[k]=a[k][N+1];for(j=k+1;j<=N;j++){x[k]=x[k]-a[k][j]*x[j];}x[k]=x[k]/a[k][k];}return(1);}void putout(double a[][N+2]){for(int i=1;i<=N;i++){for(int j=1;j<=N+1;j++)printf("%-15g",a[i][j]);printf("\n");}printf("\n");}结果雅克比迭代法#include<stdio.h>#include<math.h>#define N 5#define EPS 0.5e-4static double aa[N][N]={{4,-1,0,-1,0},{-1,4,-1,0,-1},{0,-1,4,-1,0},{-1,0,-1,4,-1},{0,-1,0,-1,4}}; static double bb[N]={2,1,2,1,2};void main(){int i,j,k,NO;double a[N+1][N+1],b[N+1],x[N+1],y[N+1];double d,sum,max;for(i=1;i<=N;i++){for(j=1;j<=N;j++)a[i][j]=aa[i-1][j-1];b[i]=bb[i-1];}printf("\n 请输入最大迭代次数(尽量取大值!)NO:");scanf("%d",&NO);printf("\n");for(i=1;i<=N;i++)x[i]=0;k=0;printf(" k",' ');for(i=1;i<=N;i++)printf("%8cx[%d]",' ',i);printf("\n 0");for(i=1;i<=N;i++)printf("%12.8g",x[i]);printf("\n");do{for(i=1;i<=N;i++){sum=0.0;for(j=1;j<=N;j++)if(j!=i) sum=sum+a[i][j]*x[j];y[i]=(-sum+b[i])/a[i][i];}max=0.0;for(i=0;i<=N;i++){d=fabs(y[i]-x[i]);if(max<d) max=d;x[i]=y[i];}printf("%6d",k+1);for(i=1;i<=N;i++)printf("%12.8g",x[i]);printf("\n");k++;}while((max>=EPS)&&(k<NO));printf("\nk=%d\n",k);if(k>=NO) printf("\nfail!\n");elsefor(i=1;i<=N;i++)printf("x[%d]=%g\t",i,x[i]);}结果拉格朗日插值多项式#include<stdio.h>#include<math.h>#define N 4doublex[N]={0.56160,0.56280,0.56401,0.56521},y[N]={0.82741,0.82659,0.82577,0.82495}; void main(){double x=0.5635;double L(double xx);double lagBasis(int k,double xx);void output();output();printf("\n近似值L(%g)=%g\n",x,L(x));}double lagBasis(int k,double xx){double lb=1;int i;for(i=0;i<N;i++)if(i!=k) lb*=(xx-x[i])/(x[k]-x[i]);return lb;}double L(double xx){double s=0;int i;for(i=0;i<=N;i++)s+=lagBasis(i,xx)*y[i];return s;}void output(){int i;printf("\n各节点信息:\nxi:");for(i=0;i<N;i++)printf("\t%g",x[i]);printf("\nyi:");for(i=0;i<N;i++)printf("\t%g",y[i]);}结果牛顿插值多项式#include <math.h>#include <stdio.h>int a;#define M 4double x[M+1]={0.4,0.55,0.65,0.8,0.9},y[M+1]={0.41075,0.57815,0.69675,0.88811,1.02652}; void main(){double x;printf("输入x=");scanf("%lf",&x);printf("次数:");scanf("%d",&a);double N(double xx,int a);void output();output();printf("\n%d次牛顿插值多项式N(%g)=%g\n",a,x,N(x,a));}double N(double xx,int a){double s=y[0],d=1;int i,j;double df[M+1][M+1];for(i=0;i<=M;i++)df[i][0]=y[i];for(j=1;j<=a;j++)for(i=j;i<=a;i++)df[i][j]=(df[i][j-1]-df[i-1][j-1])/(x[i]-x[i-j]);printf("\nx\tf(x)\t");for(j=1;j<=a;j++) printf("%5d阶",j);for(i=0;i<=a;i++){printf("\n%g\t%g",x[i],y[i]);for(j=1;j<=i;j++)printf("\t%7.5g",df[i][j]);}for(i=1;i<=a;i++){d*=(xx-x[i-1]);s+=df[i][i]*d;}return s;}void output(){int i;printf("\n各节点信息:\nxi:");for(i=0;i<=M;i++)printf("\t%7g",x[i]);printf("\nyi:");for(i=0;i<=M;i++)printf("\t%7g",y[i]);}结果复合梯形公式#include<stdio.h>#include<math.h>#define f(x) 1/(x*x+1)#define Pi 3.1415926void main(){double a=0,b=1;double T,h,x;int n,i;printf("please input n:");scanf("%d",&n);h=(b-a)/n;x=a;T=0;for(i=1;i<n;i++){x+=h;T+=f(x);}T=(f(a)+2*T+f(b))*h/2;printf("T(%d)=%g\n",n,T);printf("The exact value is %g\n",Pi/4);}复合辛普森公式#include<stdio.h>#include<math.h>#define f(x) 1/(1+x*x)#define Pi 3.1415926void main(){double a=0,b=1;double S,h,x;int n,i;printf("please input Even n:");scanf("%d",&n);h=(b-a)/n;x=a; S=0;for(i=1;i<n;i++){x+=h;if(i%2==0) S+=2*f(x);else S+=4*f(x);}S=(f(a)+S+f(b))*h/3;printf("S(%d)=%g\n",n,S);printf("The exact value is %g\n",Pi/4);}龙贝格公式加速#include<stdio.h>#include<math.h>#define f(x) sin(x)/(1+x)#define M 3void main(){double a=0,b=1;double Long(double a,double b);printf("近似值I=%g\n",Long(a,b));}double Long(double a,double b){int n=1,i=1,j=1;double T[M+1][M+1],h,x,sum;h=b-a;T[0][0]=(f(a)+f(b))/2;for(j=1;j<=3;j++){x=a;h/=2;n*=2;sum=0;for(i=1;i<=n;i+=2){x=a+i*h;sum+=f(x);}T[j][0]=T[j-1][0]/2+h*sum;}for(i=1;i<=M;i++)for(j=1;j<=i;j++){T[i][j]=(pow(4,j)*T[i][j-1]-T[i-1][j-1])/(pow(4,j)-1);}printf("k\tT0\tT1\tT2\tT3\n");for(i=0;i<=M;i++){printf("%d",i);for(j=0;j<=i;j++)printf(" %g",T[i][j]);printf("\n");}return T[M][M];}。

西安交大概率论上机实验报告西安交通大学概率论实验报告

西安交大概率论上机实验报告西安交通大学概率论实验报告

西安交⼤概率论上机实验报告西安交通⼤学概率论实验报告概率论与数理统计上机实验报告⼀、实验内容使⽤MATLAB 软件进⾏验证性实验,掌握⽤MATLAB 实现概率统计中的常见计算。

本次实验包括了对⼆维随机变量,各种分布函数及其图像以及频率直⽅图的考察。

1、列出常见分布的概率密度及分布函数的命令,并操作。

2、掷硬币150次,其中正⾯出现的概率为0.5,这150次中正⾯出现的次数记为X ,(1) 试计算45=X 的概率和45≤X 的概率;(2) 绘制分布函数图形和概率分布律图形。

3、⽤Matlab 软件⽣成服从⼆项分布的随机数,并验证泊松定理。

4、设22221),(y x e y x f +-=π是⼀个⼆维随机变量的联合概率密度函数,画出这⼀函数的联合概率密度图像。

5、来⾃某个总体的样本观察值如下,计算样本的样本均值、样本⽅差、画出频率直⽅图。

A=[16 25 19 20 25 33 24 23 20 24 25 17 15 21 22 26 15 23 2220 14 16 11 14 28 18 13 27 31 25 24 16 19 23 26 17 14 30 21 18 16 18 19 20 22 19 22 18 26 26 13 21 13 11 19 23 18 24 28 13 11 25 15 17 18 22 16 13 12 13 11 09 15 18 21 15 12 17 13 14 12 16 10 08 23 18 11 16 28 13 21 22 12 08 15 21 18 16 16 19 28 19 12 14 19 28 28 28 13 21 28 19 11 15 18 24 18 16 28 19 15 13 22 14 16 24 20 28 18 18 28 14 13 28 29 24 28 14 18 18 18 08 21 16 24 32 16 28 19 15 18 18 10 12 16 26 18 19 33 08 11 18 27 23 11 22 22 13 28 14 22 18 26 18 16 32 27 25 24 17 17 28 33 16 20 28 32 19 23 18 28 15 24 28 29 16 17 19 18]6. 利⽤Matlab 软件模拟⾼尔顿板钉试验。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

计算方法(B)实验报告姓名:学号:学院:专业:实验一 三对角方程组 Tx f 的求解实验目的掌握三对角方程组 Tx f 求解的方法。

实验内容求三对角方程组 Tx f 的解,其中:4 -1 3 -14-12T O O O , f M -1 4 12 -1 43三、算法组织 设系数矩阵为三对角矩阵b i C ia 2b 2c 2 a 3 b 3 C 3TOOOa n ib n i C n ib n则方程组 Tx f 称为三对角方程组。

设矩阵T 非奇异,T 可分解为T=LU,其中L 为下三角矩阵,U 为单位上三角矩 阵,记2. 将Tx f 压缩为四个一维数组 a 、b i 、C 、d i , a i > b 、G 是T 的三对角 线性方程组的三个对角,d i 是右端向量。

将分解矩阵压缩为三个一维数组l i、i、 ri3. 对T 做Crout 分解(也可以用Doolittle 分解)导出追赶法的计算步骤如下:i b i , r i c i1l 2L1l 3 1 ,O O ,l n 1 1L l n 1 可先依次求出 L,U 中的元素后,令 Ux 再求解上三角方程组 Ux y 。

追赶法的算法组织如下:1. 输入三对角矩阵 T 和右端向量 f ;ir ii r2Ui r3OOn ir n iy ,先求解下三角方程组 Ly f 得出 y ,nfor i 2: nl i ai , i 1, i b a i r i 1,r i C i ,y i d i li% 1end4. 回代求解xx n y n / nfor i n 1: 1X i (Y i GX i1)/ iend5•停止,输出结果。

四、 MATLAB 程序 MATLA 程序见附件1.五、结果及分析实验结果为:x (1.0000 1.0000 L 1.0000 1.0000)T实验二Jacobi迭代和Gauss-Seidel迭代解线性方程组实验目的掌握Jacobi迭代和Gauss-Seidel迭代解线性方程组的方法。

实验内容用Jacobi迭代和Gauss-Seidel迭代解电路电流方程组,使各部分电流误差均小于103。

28i13i2 10% 38i210i3 010i2253 15i4 015i3 45i405i230i s 0二、算法组织形如Ax b的方程组,用Jacobi迭代求解x,算法组织如下:1. 将系数矩阵A分解成对角元D、下三角部分元E和上三角部分兀F,于是A D E F .2. 由Ax b (D E F)x b Dx (E F)x b x D 1(E F)x D 1b。

3. 从而构成形如x(k 1)Gx(k)d迭代格式:x(k 1) D 1(E F)x(k) D 1b其中G D 1(E F)d D 1b4. 选取初始向量x(0)进行迭代计算。

5. 当迭代后的解满足题中的约束条件max x(k 1) X(k)时迭代停止1 i n形如Ax b的方程组,用Gauss— Seidel迭代求解x,算法组织如下:1•将系数矩阵A分解成对角元D、下三角部分元E和上三角部分元 F ,于是A D E F .2. 由Ax b (D E F)x b (D E)x Fx b x (D E) 1Fx (D E)1b 3. 从而构成形如x(k1)Gx(k)d迭代格式:x(k1)(D E)1Fx(k) (D E)1b其中G (D E) 1Fd (D E)1b4.选取初始向量x(0)进行迭代计算。

5.当迭代后的解满足题中的约束条件max x(k1) x(k)时迭代停止四、MATLAB程序MATLA程序见附件2,其中1为Jacobi迭代,2为Gauss-Seidel迭代。

五、结果及分析Jacobi迭代结果:方程组的解为x (0.3607 0.0335 0.0163 0.0054 0.0055)T迭代次数i 8Gauss— Seidel 迭代结果:方程组的解为x (0.3607 0.0335 0.0166 0.0055 0.0056)T迭代次数i 4由以上结果可知,达到相同的计算精度,Gauss— Seidel迭代比Jacobi迭代的速度快,Gauss— Seidel迭代比Jacobi迭代次数少。

实验三 多项式插值及误差计算一、 实验目的掌握多项式插值的原理和基本方法。

二、 实验内容1已知 f(x) - 2( 1 x 1),对 n 5 , 10 , 201 25x2a. 计算函数f (x)在点x 1 - i , (i 0,1,2丄,n)处的值f(xj ;nb. 求插值数据点 x i , y i (i 0,1,2丄,n)的Newton 插值多项式N n (x)和 三次样条插值多项式S n (x);2c. 对n 5 , 20,计算x k1 k , (k 1:10,90:99)和相应的函数值100y k f X k , N n (X k ), S n (X k );d. 计算 E N nmax y kN n x k , E S n max y kS n x k ,解释所得到kk结果。

三、算法组织(一) 本题第一冋是简单的用matlab 程序可以计算,算法很简单。

(二)本题在算法上第二问中的Newton 插值多项式 叫仪)和三次样条插值多项 式&(X )。

计算两种插值多项式的算法如下:1. 求Newton 插值多项式N n(x),算法组织如下:Newton 插值多项式的表达式如下:N n (x)C 0 C 1(X X 。

)C n (xX °)(X Xj(X X . 1)其中每一项的系数C i 的表达式如下:根据上述公式,为了得到系数需计算:1一阶差商 f[x °], f [X 』,,f[X n ]2) 二阶差商 f[X °,X 1], f[N,X 2】,f [X n 1,X n ]3) n 阶差商 f[X 0,X 1, ,X n 1], f [X 1, ,X n1,X n ]c f (X 0,X 1, ,X i )f(X 1,X 2, ,X i ) f(X °,X 1, ,X i1)X i X 04) n + 1阶差商f [X0, X1, , X n 1,X n]2. 求三次样条插值多项式,算法组织如下:所谓三次样条插值多项式S n (X )是一种对区间进行分段的分段函数,然后在每一 段上进行分析,即它在节点X j (a x 0 x 1x n 1 x n b)分成的每个小区间[X i i ,X j ]上是3次多项式,其在此区间上的表达式如下:令:hih i h i i」6』i yi % y 「、 一‘、d i() 6f (x iX X i Jh i h i i h i ih i则M i 满足如下n-i 个方程:i M i i 2 M i i M i 1d ,1,2, ,n 1方程中有n+1个未知量,则令M 0和M n 分别为零,则由上面的方程组可得到M i (1 i n 1)的值,可得到整个区间上的三次样条插值多项式 S n (x) o(三) 第三问和第四问的算法与第二问的算法类似,不再赘述。

四、MATLAB g 序MATLA 程序见附件3o五、 结果及分析第一问当n=5时,各节点及f(x)值为:x(0)=-1,y(0)=3.846154e-02x(1)=-6.000000e-01,y(1)=1.000000e-01 x(2)=-2.000000e-01, y(2)=5.000000e-01 x(3)=2.000000e-01,y(3)=5.000000e-01 x ⑷=6.000000e-01, y ⑷=1.000000e-01 x(5)=1, y(5)=3.846154e-02S(x) 1h ?祁 X ix)3M ii (xxjM i ] (yii 刊i 胪x h i.2/ A _、x X i i (y i MJ6 h i[X ii ,xJ,i 1,2,,n.因此, 只要确定了 M i 的值,就确定了整个表达式,M j 的计算方法如下:h i i当n=10寸,各节点及f(x)值为:x(0)=-1,y(0)=3.846154e-02 x(1)=-8.000000e-01,y(1)=5.882353e-02 x(2)=-6.000000e-01,y(2)=1.000000e-01 x(3)=-4.000000e-01,y(3)=2.000000e-01 x(4)=-2.000000e-01,y(4)=5.000000e-01 x(5)=0,y(5)=1x(6)=2.000000e-01,y(6)=5.000000e-01 x(7)=4.000000e-01,y(7)=2.000000e-01 x(8)=6.000000e-01,y(8)=1.000000e-01 x(9)=8.000000e-01,y(9)=5.882353e-02 x(10)=1,y(10)=3.846154e-02 当n=20寸,各节点及f(x)值为:x(0)=-1,y(0)=3.846154e-02 x(1)=-9.000000e-01,y(1)=4.705882e-02 x(2)=-8.000000e-01,y(2)=5.882353e-02 x(3)=-7.000000e-01,y(3)=7.547170e-02 x(4)=-6.000000e-01,y(4)=1.000000e-01 x(5)=-5.000000e-01,y(5)=1.379310e-01 x(6)=-4.000000e-01,y(6)=2.000000e-01 x(7)=-3.000000e-01,y(7)=3.076923e-01 x(8)=-2.000000e-01,y(8)=5.000000e-01 x(9)=-1.000000e-01,y(9)=8.000000e-01 x(10)=0,y(10)=1 x(11)=1.000000e-01,y(11)=8.000000e-01 x(12)=2.000000e-01,y(12)=5.000000e-01 x(13)=3.000000e-01,y(13)=3.076923e-01 x(14)=4.000000e-01,y(14)=2.000000e-01x(15)=5.000000e-01,y(15)=1.379310e-01x(16)=6.000000e-01,y(16)=1.000000e-01x(17)=7.000000e-01,y(17)=7.547170e-02x(18)=8.000000e-01,y(18)=5.882353e-02 x(19)=9.000000e-01,y(19)=4.705882e-02 x(20)=1,y(20)=3.846154e-02第二问牛顿插值算法当n=5时Newton插值多项式的系数分别为:c[0]=3.846154e-02c[1]=1.538462e-01c[2]=1.057692e+00c[3]=-1.923077e+00c[4]=1.201923e+00c[5]=-5.551115e-16当n=10时Newton插值多项式的系数分别为:c[0]=3.846154e-02c[1]=1.018100e-01c[2]=2.601810e-01c[3]=7.918552e-01c[4]=2.686652e+00c[5]=-6.363122e+00c[6]=-1.767534e+01c[7]=8.484163e+01c[8]=-1.679157e+02c[9]=2.209417e+02c[10]=-2.209417e+02当n=20时Newtonf插值多项式的系数分别为:c[0]=3.846154e-02c[1]=8.597285e-02c[2]=1.583710e-01c[3]=2.860070e-01c[4]=5.335952e-01c[5]=1.037751e+00c[6]=2.001902e+00c[7]=2.796775e+00c[8]=-7.543931e+00c[9]=-1.011991e+02c[10]=-6.439941e+01c[11]=2.152780e+03c[12]=-7.267934e+03c[13]=1.139374e+04c[14]=-3.538429e+03c[15]=-2.830744e+04c[16]=8.669152e+04c[17]=-1.592293e+05c[18]=2.237536e+05c[19]=-2.601786e+05c[20]=2.601786e+05三次样条插值算法当n=5时,取边界条件为自然样条的三次样条插值多项式的系数分别为:m =4.1296-3.8259-3.82594.1296当n=10寸,取边界条件为自然样条的三次样条插值多项式的系数分别为: m =0.41011.48202.485618.5755-46.787818.57552.48561.48200.4101当n=20寸,取边界条件为自然样条的三次样条插值多项式的系数分别为: m =0.36150.45430.75141.26812.21774.34387.781015.3016-4.3719-57.8141-4.371915.30167.78104.34382.21771.26810.75140.45430.3615 0第三问当n=5时,给定点xi的f(xi),N(xi),S(xi), 分别为:x(1)=-9.800000e-01, f=3.998401e-02, N=1.369250e-02, S=3.604615e-02f=4.159734e-02, N=-6.920000e-03, x(2)=-9.600000e-01,S=3.371336e-02f=4.330879e-02, N=-2.359981e-02, x(3)=-9.400000e-01,S=3.154575e-02f=4.512635e-02, N=-3.656615e-02, x(4)=-9.200000e-01,S=2.962591e-02f=4.705882e-02, N=-4.603365e-02, x(5)=-9.000000e-01,S=2.803644e-02f=4.911591e-02, N=-5.221231e-02, x(6)=-8.800000e-01,S=2.685992e-02f=5.130836e-02, N=-5.530750e-02, x(7)=-8.600000e-01,S=2.617895e-02f=5.364807e-02, N=-5.552000e-02, x(8)=-8.400000e-01,S=2.607611e-02f=5.614823e-02, N=-5.304596e-02, x(9)=-8.200000e-01,S=2.663401e-02f=5.882353e-02, N=-4.807692e-02, x(10)=-8.000000e-01,S=2.793522e-02f=6.169031e-02, N=-4.079981e-02, x(11)=-7.800000e-01,S=3.006235e-02f=6.476684e-02, N=-3.139692e-02, x(12)=-7.600000e-01,S=3.309798e-02f=6.807352e-02, N=-2.004596e-02, x(13)=-7.400000e-01,S=3.712470e-02f=7.163324e-02, N=-6.920000e-03, x(14)=-7.200000e-01,S=4.222510e-02f=7.547170e-02, N=7.812500e-03, x(15)=-7.000000e-01,S=4.848178e-02f=7.961783e-02, N=2.398769e-02, x(16)=-6.800000e-01,S=5.597733e-02f=8.410429e-02, N=4.144635e-02, x(17)=-6.600000e-01,S=6.479433e-02x(18)=-6.400000e-01,f=8.896797e-02, N=6.003385e-02, S=7.501538e-02f=9.425071e-02, N=7.960019e-02, x(19)=-6.200000e-01,S=8.672308e-02f=1.000000e-01, N=1.000000e-01, x(20)=-6.000000e-01,S=1.000000e-01f=1.062699e-01, N=1.210925e-01, x(21)=-5.800000e-01,S=1.148885e-01f=1.131222e-01, N=1.427415e-01, x(22)=-5.600000e-01,S=1.312696e-01f=1.206273e-01, N=1.648156e-01, x(23)=-5.400000e-01,S=1.489844e-01f=1.288660e-01, N=1.871877e-01, x(24)=-5.200000e-01,S=1.678737e-01f=1.379310e-01, N=2.097356e-01, x(25)=-5.000000e-01,S=1.877783e-01f=1.479290e-01, N=2.323415e-01, x(26)=-4.800000e-01,S=2.085393e-01f=1.589825e-01, N=2.548925e-01, x(27)=-4.600000e-01,S=2.299974e-01f=1.712329e-01, N=2.772800e-01, x(28)=-4.400000e-01,S=2.519935e-01f=1.848429e-01, N=2.994002e-01, x(29)=-4.200000e-01,S=2.743686e-01f=2.000000e-01, N=3.211538e-01, x(30)=-4.000000e-01,S=2.969636e-01f=2.169197e-01, N=3.424463e-01, x(31)=-3.800000e-01,S=3.196192e-01f=2.358491e-01, N=3.631877e-01, x(32)=-3.600000e-01,S=3.421765e-01f=2.570694e-01, N=3.832925e-01, x(33)=-3.400000e-01,S=3.644763e-01f=2.808989e-01, N=4.026800e-01, x(34)=-3.200000e-01,S=3.863595e-01x(35)=-3.000000e-01, f=3.076923e-01, N=4.212740e-01,S=4.076670e-01f=3.378378e-01, N=4.390031e-01, x(36)=-2.800000e-01,S=4.282397e-01f=3.717472e-01, N=4.558002e-01, x(37)=-2.600000e-01,S=4.479184e-01f=4.098361e-01, N=4.716031e-01, x(38)=-2.400000e-01,S=4.665441e-01f=4.524887e-01, N=4.863540e-01, x(39)=-2.200000e-01,S=4.839577e-01f=5.000000e-01, N=5.000000e-01, x(40)=-2.000000e-01,S=5.000000e-01f=5.524862e-01, N=5.124925e-01, x(41)=-1.800000e-01,S=5.145385e-01f=6.097561e-01, N=5.237877e-01, x(42)=-1.600000e-01,S=5.275466e-01f=6.711409e-01, N=5.338463e-01, x(43)=-1.400000e-01,S=5.390243e-01f=7.352941e-01, N=5.426338e-01, x(44)=-1.200000e-01,S=5.489717e-01f=8.000000e-01, N=5.501202e-01, x(45)=-1.000000e-01,S=5.573887e-01f=8.620690e-01, N=5.562800e-01, x(46)=-8.000000e-02,S=5.642753e-01f=9.174312e-01, N=5.610925e-01, x(47)=-6.000000e-02,S=5.696316e-01f=9.615385e-01, N=5.645415e-01, x(48)=-4.000000e-02,S=5.734575e-01x(49)=-2.000000e-02, f=9.900990e-01, N=5.666156e-01, S=5.757530e-01x(50)=0, f=1, N=5.673077e-01, S=5.765182e-01f=9.900990e-01, N=5.666156e-01, x(51)=2.000000e-02,S=5.757530e-01x(52)=4.000000e-02, f=9.615385e-01, N=5.645415e-01,S=5.734575e-01f=9.174312e-01, N=5.610925e-01, x(53)=6.000000e-02,S=5.696316e-01f=8.620690e-01, N=5.562800e-01, x(54)=8.000000e-02,S=5.642753e-01f=8.000000e-01, N=5.501202e-01, x(55)=1.000000e-01,S=5.573887e-01f=7.352941e-01, N=5.426338e-01, x(56)=1.200000e-01,S=5.489717e-01f=6.711409e-01, N=5.338463e-01, x(57)=1.400000e-01,S=5.390243e-01f=6.097561e-01, N=5.237877e-01, x(58)=1.600000e-01,S=5.275466e-01f=5.524862e-01, N=5.124925e-01, x(59)=1.800000e-01,S=5.145385e-01f=5.000000e-01, N=5.000000e-01, x(60)=2.000000e-01,S=5.000000e-01f=4.524887e-01, N=4.863540e-01, x(61)=2.200000e-01,S=4.839577e-01f=4.098361e-01, N=4.716031e-01, x(62)=2.400000e-01,S=4.665441e-01f=3.717472e-01, N=4.558002e-01, x(63)=2.600000e-01,S=4.479184e-01f=3.378378e-01, N=4.390031e-01, x(64)=2.800000e-01,S=4.282397e-01f=3.076923e-01, N=4.212740e-01, x(65)=3.000000e-01,S=4.076670e-01f=2.808989e-01, N=4.026800e-01, x(66)=3.200000e-01,S=3.863595e-01f=2.570694e-01, N=3.832925e-01, x(67)=3.400000e-01,S=3.644763e-01f=2.358491e-01, N=3.631877e-01, x(68)=3.600000e-01,S=3.421765e-01x(69)=3.800000e-01, f=2.169197e-01, N=3.424463e-01,S=3.196192e-01f=2.000000e-01, N=3.211538e-01, x(70)=4.000000e-01,S=2.969636e-01x(71)=4.200000e-01, f=1.848429e-01, N=2.994002e-01, S=2.743686e-01x(72)=4.400000e-01, f=1.712329e-01, N=2.772800e-01, S=2.519935e-01x(73)=4.600000e-01, f=1.589825e-01, N=2.548925e-01, S=2.299974e-01x(74)=4.800000e-01, f=1.479290e-01, N=2.323415e-01, S=2.085393e-01x(75)=5.000000e-01, f=1.379310e-01, N=2.097356e-01, S=1.877783e-01x(76)=5.200000e-01, f=1.288660e-01, N=1.871877e-01, S=1.678737e-01x(77)=5.400000e-01, f=1.206273e-01, N=1.648156e-01, S=1.489844e-01x(78)=5.600000e-01, f=1.131222e-01, N=1.427415e-01, S=1.312696e-01x(79)=5.800000e-01, f=1.062699e-01, N=1.210925e-01, S=1.148885e-01x(80)=6.000000e-01, f=1.000000e-01, N=1.000000e-01, S=1.000000e-01x(81)=6.200000e-01, f=9.425071e-02, N=7.960019e-02, S=8.672308e-02x(82)=6.400000e-01, f=8.896797e-02, N=6.003385e-02, S=7.501538e-02x(83)=6.600000e-01, f=8.410429e-02, N=4.144635e-02, S=6.479433e-02x(84)=6.800000e-01, f=7.961783e-02, N=2.398769e-02, S=5.597733e-02x(85)=7.000000e-01, f=7.547170e-02, N=7.812500e-03, S=4.848178e-02x(86)=7.200000e-01, f=7.163324e-02, N=-6.920000e-03,S=4.222510e-02x(87)=7.400000e-01,S=3.712470e-02f=6.807352e-02, N=-2.004596e-02,x(88)=7.600000e-01,S=3.309798e-02 f=6.476684e-02, N=-3.139692e-02,x(89)=7.800000e-01,S=3.006235e-02 f=6.169031e-02, N=-4.079981e-02,x(90)=8.000000e-01,S=2.793522e-02 f=5.882353e-02, N=-4.807692e-02,x(91)=8.200000e-01,S=2.663401e-02 f=5.614823e-02, N=-5.304596e-02,x(92)=8.400000e-01,S=2.607611e-02 f=5.364807e-02, N=-5.552000e-02,x(93)=8.600000e-01,S=2.617895e-02 f=5.130836e-02, N=-5.530750e-02,x(94)=8.800000e-01,S=2.685992e-02 f=4.911591e-02, N=-5.221231e-02,x(95)=9.000000e-01,S=2.803644e-02 f=4.705882e-02, N=-4.603365e-02,x(96)=9.200000e-01,S=2.962591e-02 f=4.512635e-02, N=-3.656615e-02,x(97)=9.400000e-01,S=3.154575e-02 f=4.330879e-02, N=-2.359981e-02,x(98)=9.600000e-01,S=3.371336e-02 f=4.159734e-02, N=-6.920000e-03,x(99)=9.800000e-01, f=3.998401e-02, N=1.369250e-02, S=3.604615e-02当n=10寸,给定点xi的f(xi),N(xi),S(xi), 分别为:x(1)=-9.800000e-01, f=3.998401e-02, N=1.230317e+00, S=4.022710e-02x(2)=-9.600000e-01, f=4.159734e-02, N=1.804385e+00, S=4.200907e-02f=4.330879e-02, N=1.958952e+00, x(3)=-9.400000e-01,S=4.382384e-02f=4.512635e-02, N=1.845845e+00, x(4)=-9.200000e-01,S=4.568782e-02f=4.705882e-02, N=1.578721e+00, x(5)=-9.000000e-01,S=4.761740e-02f=4.911591e-02, N=1.240213e+00, x(6)=-8.800000e-01,S=4.962900e-02f=5.130836e-02, N=8.880811e-01, x(7)=-8.600000e-01,S=5.173901e-02f=5.364807e-02, N=5.604444e-01, x(8)=-8.400000e-01,S=5.396383e-02f=5.614823e-02, N=2.802176e-01, x(9)=-8.200000e-01,S=5.631987e-02f=5.882353e-02, N=5.882353e-02, x(10)=-8.000000e-01,S=5.882353e-02f=6.169031e-02, N=-1.007243e-01, x(11)=-7.800000e-01,S=6.149562e-02f=6.476684e-02, N=-2.012964e-01, x(12)=-7.600000e-01,S=6.437461e-02f=6.807352e-02, N=-2.496082e-01, x(13)=-7.400000e-01,S=6.750337e-02f=7.163324e-02, N=-2.546027e-01, x(14)=-7.200000e-01,S=7.092479e-02f=7.547170e-02, N=-2.261963e-01, x(15)=-7.000000e-01,S=7.468173e-02f=7.961783e-02, N=-1.743355e-01, x(16)=-6.800000e-01,S=7.881707e-02f=8.410429e-02, N=-1.083152e-01, x(17)=-6.600000e-01,S=8.337369e-02f=8.896797e-02, N=-3.631685e-02, x(18)=-6.400000e-01,S=8.839447e-02x(19)=-6.200000e-01,f=9.425071e-02, N=3.487332e-02, S=9.392228e-02f=1.000000e-01, N=1.000000e-01, x(20)=-6.000000e-01,S=1.000000e-01f=1.062699e-01, N=1.553586e-01, x(21)=-5.800000e-01,S=1.066700e-01f=1.131222e-01, N=1.987262e-01, x(22)=-5.600000e-01,S=1.139730e-01f=1.206273e-01, N=2.292273e-01, x(23)=-5.400000e-01,S=1.219491e-01f=1.288660e-01, N=2.471535e-01, x(24)=-5.200000e-01,S=1.306384e-01f=1.379310e-01, N=2.537555e-01, x(25)=-5.000000e-01,S=1.400810e-01f=1.479290e-01, N=2.510206e-01, x(26)=-4.800000e-01,S=1.503172e-01f=1.589825e-01, N=2.414494e-01, x(27)=-4.600000e-01,S=1.613870e-01f=1.712329e-01, N=2.278397e-01, x(28)=-4.400000e-01,S=1.733307e-01f=1.848429e-01, N=2.130858e-01, x(29)=-4.200000e-01,S=1.861883e-01f=2.000000e-01, N=2.000000e-01, x(30)=-4.000000e-01,S=2.000000e-01f=2.169197e-01, N=1.911589e-01, x(31)=-3.800000e-01,S=2.149065e-01f=2.358491e-01, N=1.887784e-01, x(32)=-3.600000e-01,S=2.314509e-01f=2.570694e-01, N=1.946178e-01, x(33)=-3.400000e-01,S=2.502767e-01f=2.808989e-01, N=2.099145e-01, x(34)=-3.200000e-01,S=2.720276e-01f=3.076923e-01, N=2.353466e-01, x(35)=-3.000000e-01,S=2.973471e-01x(36)=-2.800000e-01, f=3.378378e-01, N=2.710241e-01,S=3.268788e-01f=3.717472e-01, N=3.165048e-01, x(37)=-2.600000e-01,S=3.612664e-01f=4.098361e-01, N=3.708328e-01, x(38)=-2.400000e-01,S=4.011534e-01f=4.524887e-01, N=4.325960e-01, x(39)=-2.200000e-01,S=4.471834e-01f=5.000000e-01, N=5.000000e-01, x(40)=-2.000000e-01,S=5.000000e-01f=5.524862e-01, N=5.709536e-01, x(41)=-1.800000e-01,S=5.597038e-01f=6.097561e-01, N=6.431626e-01, x(42)=-1.600000e-01,S=6.242233e-01f=6.711409e-01, N=7.142283e-01, x(43)=-1.400000e-01,S=6.909440e-01f=7.352941e-01, N=7.817471e-01, x(44)=-1.200000e-01,S=7.572512e-01f=8.000000e-01, N=8.434074e-01, x(45)=-1.000000e-01,S=8.205306e-01f=8.620690e-01, N=8.970803e-01, x(46)=-8.000000e-02,S=8.781675e-01f=9.174312e-01, N=9.409023e-01, x(47)=-6.000000e-02,S=9.275474e-01f=9.615385e-01, N=9.733459e-01, x(48)=-4.000000e-02,S=9.660558e-01x(49)=-2.000000e-02, f=9.900990e-01, N=9.932776e-01, S=9.910782e-01x(50)=0, f=1, N=1.000000e+00, S=1f=9.900990e-01, N=9.932776e-01 x(51)=2.000000e-02,S=9.910782e-01f=9.615385e-01, N=9.733459e-01 x(52)=4.000000e-02,S=9.660558e-01x(53)=6.000000e-02, f=9.174312e-01, N=9.409023e-01S=9.275474e-01f=8.620690e-01, N=8.970803e-01, x(54)=8.000000e-02,S=8.781675e-01f=8.000000e-01, N=8.434074e-01, x(55)=1.000000e-01,S=8.205306e-01f=7.352941e-01, N=7.817471e-01, x(56)=1.200000e-01,S=7.572512e-01f=6.711409e-01, N=7.142283e-01, x(57)=1.400000e-01,S=6.909440e-01f=6.097561e-01, N=6.431626e-01, x(58)=1.600000e-01,S=6.242233e-01f=5.524862e-01, N=5.709536e-01, x(59)=1.800000e-01,S=5.597038e-01f=5.000000e-01, N=5.000000e-01, x(60)=2.000000e-01,S=5.000000e-01f=4.524887e-01, N=4.325960e-01, x(61)=2.200000e-01,S=4.471834e-01f=4.098361e-01, N=3.708328e-01, x(62)=2.400000e-01,S=4.011534e-01f=3.717472e-01, N=3.165048e-01, x(63)=2.600000e-01,S=3.612664e-01f=3.378378e-01, N=2.710241e-01, x(64)=2.800000e-01,S=3.268788e-01f=3.076923e-01, N=2.353466e-01, x(65)=3.000000e-01,S=2.973471e-01f=2.808989e-01, N=2.099145e-01, x(66)=3.200000e-01,S=2.720276e-01f=2.570694e-01, N=1.946178e-01, x(67)=3.400000e-01,S=2.502767e-01f=2.358491e-01, N=1.887784e-01, x(68)=3.600000e-01,S=2.314509e-01f=2.169197e-01, N=1.911589e-01, x(69)=3.800000e-01,S=2.149065e-01x(70)=4.000000e-01, f=2.000000e-01, N=2.000000e-01,S=2.000000e-01f=1.848429e-01, N=2.130858e-01, x(71)=4.200000e-01,S=1.861883e-01x(72)=4.400000e-01, f=1.712329e-01, N=2.278397e-01, S=1.733307e-01x(73)=4.600000e-01, f=1.589825e-01, N=2.414494e-01, S=1.613870e-01x(74)=4.800000e-01, f=1.479290e-01, N=2.510206e-01, S=1.503172e-01x(75)=5.000000e-01, f=1.379310e-01, N=2.537555e-01, S=1.400810e-01x(76)=5.200000e-01, f=1.288660e-01, N=2.471535e-01, S=1.306384e-01x(77)=5.400000e-01, f=1.206273e-01, N=2.292273e-01, S=1.219491e-01x(78)=5.600000e-01, f=1.131222e-01, N=1.987262e-01, S=1.139730e-01x(79)=5.800000e-01, f=1.062699e-01, N=1.553586e-01, S=1.066700e-01x(80)=6.000000e-01, f=1.000000e-01, N=1.000000e-01, S=1.000000e-01x(81)=6.200000e-01, f=9.425071e-02, N=3.487332e-02, S=9.392228e-02x(82)=6.400000e-01, f=8.896797e-02, N=-3.631685e-02, S=8.839447e-02x(83)=6.600000e-01, f=8.410429e-02, N=-1.083152e-01, S=8.337369e-02x(84)=6.800000e-01, f=7.961783e-02, N=-1.743355e-01, S=7.881707e-02x(85)=7.000000e-01, f=7.547170e-02, N=-2.261963e-01, S=7.468173e-02x(86)=7.200000e-01, f=7.163324e-02, N=-2.546027e-01, S=7.092479e-02x(87)=7.400000e-01, f=6.807352e-02, N=-2.496082e-01,S=6.750337e-02x(88)=7.600000e-01,S=6.437461e-02 f=6.476684e-02, N=-2.012964e-01,x(89)=7.800000e-01,S=6.149562e-02 f=6.169031e-02, N=-1.007243e-01,x(90)=8.000000e-01,S=5.882353e-02f=5.882353e-02, N=5.882353e-02,x(91)=8.200000e-01,S=5.631987e-02f=5.614823e-02, N=2.802176e-01,x(92)=8.400000e-01,S=5.396383e-02f=5.364807e-02, N=5.604444e-01,x(93)=8.600000e-01,S=5.173901e-02f=5.130836e-02, N=8.880811e-01,x(94)=8.800000e-01,S=4.962900e-02f=4.911591e-02, N=1.240213e+00,x(95)=9.000000e-01,S=4.761740e-02f=4.705882e-02, N=1.578721e+00,x(96)=9.200000e-01,S=4.568782e-02f=4.512635e-02, N=1.845845e+00,x(97)=9.400000e-01,S=4.382384e-02f=4.330879e-02, N=1.958952e+00,x(98)=9.600000e-01,S=4.200907e-02f=4.159734e-02, N=1.804385e+00,x(99)=9.800000e-01,S=4.022710e-02f=3.998401e-02, N=1.230317e+00, 当n=20寸,给定点xi的f(xi),N(xi),S(xi), 分别为:x(1)=-9.800000e-01,S=4.006530e-02 f=3.998401e-02, N=-5.823814e+01,x(2)=-9.600000e-01,S=4.169799e-02 f=4.159734e-02, N=-5.086442e+01,x(3)=-9.400000e-01,S=4.338852e-02 f=4.330879e-02, N=-2.866257e+01,S=1.000000e-01f=4.512635e-02, N=-1.033451e+01, x(4)=-9.200000e-01,S=4.516583e-02f=4.705882e-02, N=4.705882e-02, x(5)=-9.000000e-01,S=4.705882e-02f=4.911591e-02, N=3.945073e+00, x(6)=-8.800000e-01,S=4.909285e-02f=5.130836e-02, N=4.069132e+00, x(7)=-8.600000e-01,S=5.127892e-02f=5.364807e-02, N=2.674355e+00, x(8)=-8.400000e-01,S=5.362444e-02f=5.614823e-02, N=1.135307e+00, x(9)=-8.200000e-01,S=5.613684e-02f=5.882353e-02, N=5.882353e-02, x(10)=-8.000000e-01,S=5.882353e-02f=6.169031e-02, N=-4.458677e-01, x(11)=-7.800000e-01,S=6.169466e-02f=6.476684e-02, N=-5.135540e-01, x(12)=-7.600000e-01,S=6.477126e-02f=6.807352e-02, N=-3.458790e-01, x(13)=-7.400000e-01,S=6.807713e-02f=7.163324e-02, N=-1.143479e-01, x(14)=-7.200000e-01,S=7.163601e-02f=7.547170e-02, N=7.547170e-02, x(15)=-7.000000e-01,S=7.547170e-02f=7.961783e-02, N=1.822831e-01, x(16)=-6.800000e-01,S=7.961088e-02f=8.410429e-02, N=2.100928e-01, x(17)=-6.600000e-01,S=8.409196e-02f=8.896797e-02, N=1.857752e-01, x(18)=-6.400000e-01,S=8.895628e-02f=9.425071e-02, N=1.408043e-01, x(19)=-6.200000e-01,S=9.424518e-02x(20)=-6.000000e-01, f=1.000000e-01, N=1.000000e-01,S=1.062678e-01x(22)=-5.600000e-01,S=1.131189e-01f=1.131222e-01, N=7.501127e-02,x(23)=-5.400000e-01,S=1.206291e-01f=1.206273e-01, N=8.956400e-02,x(24)=-5.200000e-01,S=1.288745e-01f=1.288660e-01, N=1.130482e-01,x(25)=-5.000000e-01,S=1.379310e-01f=1.379310e-01, N=1.379310e-01,x(26)=-4.800000e-01,S=1.478903e-01f=1.479290e-01, N=1.590076e-01,x(27)=-4.600000e-01,S=1.589067e-01f=1.589825e-01, N=1.742122e-01,x(28)=-4.400000e-01,S=1.711504e-01f=1.712329e-01, N=1.842980e-01,x(29)=-4.200000e-01,S=1.847915e-01f=1.848429e-01, N=1.918355e-01,x(30)=-4.000000e-01,S=2.000000e-01f=2.000000e-01, N=2.000000e-01,x(31)=-3.800000e-01,S=2.169635e-01f=2.169197e-01, N=2.115320e-01,x(32)=-3.600000e-01,S=2.359395e-01f=2.358491e-01, N=2.280983e-01,x(33)=-3.400000e-01,S=2.572030e-01f=2.570694e-01, N=2.501226e-01,x(34)=-3.200000e-01,S=2.810290e-01f=2.808989e-01, N=2.770218e-01,x(35)=-3.000000e-01,S=3.076923e-01f=3.076923e-01, N=3.076923e-01,x(36)=-2.800000e-01,S=3.375225e-01f=3.378378e-01, N=3.410637e-01,x(37)=-2.600000e-01,S=3.710667e-01 f=3.717472e-01, N=3.765481e-01,S=1.000000e-01S=4.089266e-01f=4.524887e-01, N=4.550259e-01, x(39)=-2.200000e-01,S=4.517038e-01f=5.000000e-01, N=5.000000e-01, x(40)=-2.000000e-01,S=5.000000e-01f=5.524862e-01, N=5.503136e-01, x(41)=-1.800000e-01,S=5.540542e-01f=6.097561e-01, N=6.065255e-01, x(42)=-1.600000e-01,S=6.126552e-01f=6.711409e-01, N=6.682034e-01, x(43)=-1.400000e-01,S=6.742291e-01f=7.352941e-01, N=7.336720e-01, x(44)=-1.200000e-01,S=7.372020e-01f=8.000000e-01, N=8.000000e-01, x(45)=-1.000000e-01,S=8.000000e-01f=8.620690e-01, N=8.632436e-01, x(46)=-8.000000e-02,S=8.605990e-01f=9.174312e-01, N=9.189083e-01, x(47)=-6.000000e-02,S=9.151739e-01f=9.615385e-01, N=9.625511e-01, x(48)=-4.000000e-02,S=9.594493e-01f=9.900990e-01, N=9.904176e-01, x(49)=-2.000000e-02,S=9.891498e-01f=1, N=1.000000e+00, x(50)=0,S=1.000000e+00f=9.900990e-01, N=9.904176e-01, x(51)=2.000000e-02,S=9.891498e-01f=9.615385e-01, N=9.625511e-01, x(52)=4.000000e-02,S=9.594493e-01f=9.174312e-01, N=9.189083e-01, x(53)=6.000000e-02,S=9.151739e-01x(54)=8.000000e-02, f=8.620690e-01, N=8.632436e-01,S=8.605990e-01f=8.000000e-01, N=8.000000e-01, x(55)=1.000000e-01,S=8.000000e-01f=7.352941e-01, N=7.336720e-01, x(56)=1.200000e-01,S=7.372020e-01f=6.711409e-01, N=6.682034e-01, x(57)=1.400000e-01,S=6.742291e-01f=6.097561e-01, N=6.065255e-01, x(58)=1.600000e-01,S=6.126552e-01f=5.524862e-01, N=5.503136e-01, x(59)=1.800000e-01,S=5.540542e-01f=5.000000e-01, N=5.000000e-01, x(60)=2.000000e-01,S=5.000000e-01f=4.524887e-01, N=4.550259e-01, x(61)=2.200000e-01,S=4.517038e-01f=4.098361e-01, N=4.142700e-01, x(62)=2.400000e-01,S=4.089266e-01f=3.717472e-01, N=3.765481e-01, x(63)=2.600000e-01,S=3.710667e-01f=3.378378e-01, N=3.410637e-01, x(64)=2.800000e-01,S=3.375225e-01f=3.076923e-01, N=3.076923e-01, x(65)=3.000000e-01,S=3.076923e-01f=2.808989e-01, N=2.770218e-01, x(66)=3.200000e-01,S=2.810290e-01f=2.570694e-01, N=2.501226e-01, x(67)=3.400000e-01,S=2.572030e-01f=2.358491e-01, N=2.280983e-01, x(68)=3.600000e-01,S=2.359395e-01f=2.169197e-01, N=2.115320e-01, x(69)=3.800000e-01,S=2.169635e-01f=2.000000e-01, N=2.000000e-01, x(70)=4.000000e-01,S=2.000000e-01x(71)=4.200000e-01, f=1.848429e-01, N=1.918355e-01,S=1.847915e-01f=1.712329e-01, N=1.842980e-01, x(72)=4.400000e-01,S=1.711504e-01x(73)=4.600000e-01, f=1.589825e-01, N=1.742122e-01, S=1.589067e-01x(74)=4.800000e-01, f=1.479290e-01, N=1.590076e-01, S=1.478903e-01x(75)=5.000000e-01, f=1.379310e-01, N=1.379310e-01, S=1.379310e-01x(76)=5.200000e-01, f=1.288660e-01, N=1.130482e-01, S=1.288745e-01x(77)=5.400000e-01, f=1.206273e-01, N=8.956400e-02, S=1.206291e-01x(78)=5.600000e-01, f=1.131222e-01, N=7.501127e-02, S=1.131189e-01x(79)=5.800000e-01, f=1.062699e-01, N=7.704978e-02, S=1.062678e-01x(80)=6.000000e-01, f=1.000000e-01, N=1.000000e-01, S=1.000000e-01x(81)=6.200000e-01, f=9.425071e-02, N=1.408043e-01, S=9.424518e-02x(82)=6.400000e-01, f=8.896797e-02, N=1.857752e-01, S=8.895628e-02x(83)=6.600000e-01, f=8.410429e-02, N=2.100928e-01, S=8.409196e-02x(84)=6.800000e-01, f=7.961783e-02, N=1.822831e-01, S=7.961088e-02x(85)=7.000000e-01, f=7.547170e-02, N=7.547170e-02, S=7.547170e-02x(86)=7.200000e-01, f=7.163324e-02, N=-1.143479e-01, S=7.163601e-02x(87)=7.400000e-01, f=6.807352e-02, N=-3.458790e-01, S=6.807713e-02x(88)=7.600000e-01, f=6.476684e-02, N=-5.135540e-01, S=6.477126e-02x(89)=7.800000e-01,S=6.169466e-02f=6.169031e-02, N=-4.458677e-01,x(90)=8.000000e-01,S=5.882353e-02f=5.882353e-02, N=5.882353e-02,x(91)=8.200000e-01,S=5.613684e-02f=5.614823e-02, N=1.135307e+00,x(92)=8.400000e-01,S=5.362444e-02f=5.364807e-02, N=2.674355e+00,x(93)=8.600000e-01,S=5.127892e-02f=5.130836e-02, N=4.069132e+00,x(94)=8.800000e-01,S=4.909285e-02f=4.911591e-02, N=3.945073e+00,x(95)=9.000000e-01,S=4.705882e-02f=4.705882e-02, N=4.705882e-02,x(96)=9.200000e-01,S=4.516583e-02 f=4.512635e-02, N=-1.033451e+01,x(97)=9.400000e-01,S=4.338852e-02 f=4.330879e-02, N=-2.866257e+01,x(98)=9.600000e-01,S=4.169799e-02 f=4.159734e-02, N=-5.086442e+01,x(99)=9.800000e-01,S=4.006530e-02 f=3.998401e-02, N=-5.823814e+01,第四问当n=5时,Newton插值的最大误差E(N)和三次样条插值的最大误差E(S)分别为:E(N)=4.326923e-01 E(S)=4.234818e-01当n=10时,Newton插值的最大误差E(N)和三次样条插值的最大误差E(S)分别为:E(N)=1.915643e+00 E(S)=2.195711e-02当n=20时,Newton插值的最大误差E(N)和三次样条插值的最大误差E(S)分别为:E(N)=5.827813e+01 E(S)=3.088180e-03结果分析:。

相关文档
最新文档