数值计算(或计算方法)试验教学讲义28886_第1页
数值计算(或计算方法)试验教学讲义28886_第2页
数值计算(或计算方法)试验教学讲义28886_第3页
数值计算(或计算方法)试验教学讲义28886_第4页
数值计算(或计算方法)试验教学讲义28886_第5页
已阅读5页,还剩8页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、第一章 实验的目的和要求1.1实验目的为了掌握计算方法的基本思想、原理和方法,要注意计算方法的处理技巧与计算机实现 的结合,需将各种数值方法设计成算法,并编制好程序,拿到计算机上实现,最示得到可行 性的验证。12实验要求(1)用c或c+、java. fortran matlab等计算机程序设计语言编写程序。(2)上机前充分准备,复习相关知识,选用合适的数据结构并详细设计算法,尽量写出 具有通用性的程序,反复检查程序。(3)上机时快速输入程序;首先排除语法错谋;然后采用多组数据,详细测试,排除逻 辑错误;最后将程序调试成功,运行程序得到准确结果。(4)完成计算后,反复体会和分析,试着改善计算复杂

2、性,使程序或算法更加完美。1.3实验环境1. 3. 1硬件环境cpu : pentium 4以上内存:256mb以上1. 3. 2软件环境(1)操作系统:microsoft windows xp 和 2000(2)编译器:c或c+、java、fortran> mat lab1.4本实验课程与其它课程的关系本课程的前导课程冇高等数学、线性代数(或高等代数)、c语言或fortran语言等,最 好事先开设数据结构;后续课程有计算机图形学、图像处理、模式识别等。第二章实验的计划和内容2. 1实验计划计算方法实验课共安排20学时。计算方法实验计划如下(l)lagrango插值多项式newton插值

3、多项式(3) iiennite插值多项式最小二乘法复化求积公式(6) romberg求积公式数值微分的外推算法gauss消元法肓接三角分解法(10)解方程组的迭代法2.2实验内容共十个实验题目,每次课(2学时)一个题目。2. 2. 1实验一实验题冃:lagrange插值多项式相关知识:通过ni 1个节点的次数不超过n的lagrange插值多项式为:厶心)=£儿人(兀)k=()齐 % 兀.其中,lagrange插值基函数lk(x)= ft, k=0, 1, , n0>« 忑-xj沖k另外,补充c语言绘制图形方面的内容如下1. 屏幕坐标系 坐标原点在屏幕的左上介,x轴水平

4、向右,y轴垂直向下。2. 常用的绘图两数(绘图库函数所在的头文件graphics, h)初始化图形系统的函数 void initgraph(int * graphdriver, int graphmode,画点函数 void putpixel (int x, int y, int pixelcolor);移"画笔”函数 void moveto(int x, int y);画直线函数voidline(int xl,int yl, int x2, inty2);voidlineto(int x, int y);设置询景颜色函数void setcolor(int color);设置巧景颜色

5、函数void setbkcolor(int color);设置画线宽度和类型函数void setlinestyle(int 1 inestyle,unsigned upattern, int thickness);关闭图形系统函数void closegraph (void);3. 绘图程序的设计模式include "graphics, h"mai n ()int graphdriver二detect, graphmode;initgraph(&graphdtivcr, &graphniode,"”); 调用绘图两数进行绘图 closegraph (

6、);数据结构:两个一维数组或一个二维数组算法设计:(略)编写代码:(略)实验用例:已知函数y=f(x)的一张表:x0102030405060708090100110120y517. 534.5& 815. 56. 5_5-10-24. 57试验要求:利用lagrange插值多项式厶”(兀)求被插值函数f(x)在点x=65处的近似值。建议:画出lagrange插值多项式厶“(x)的曲线。2. 2.2实验二实验题目:newton插值多项式相关知识:通过n+1个节点的次数不超过n的newton插值多项式为:rt(x) = /(x0) + /x0,x1(x-x0) + yx0,x1,x2(x-

7、x0)(x-x1) + -+ /1兀0,兀1,£(兀一兀0)(兀一兀1)(兀一兀“-1)数据结构:两个一维数组或一个二维数组算法设计:(略)编写代码:(略)实验用例:已知函数y=f(x)的一张表(同上一个试验)试验要求:利用newton插值多项式n” (兀)求被插值函数f(x)在点x=65处的近似值。建议:irlljncwton插值多项式nn (x)的|11|线。2. 2.3实验三实验题目:hcnni tc插值多项式相关知识:通过n+1个节点的次数不超过2n+l的hormitc插值多项式为:h2卄 =工儿勺(x) + mjf3i (x);=o其中,hermite插值基函数a)(x)

8、= 1 - 2(x 一 xj )1 j (勺)(x)0/ (x) = (x-x);(兀)(x-x。) (x-x:i) (x-x打)打1k=0 x i k$j数据结构:三个一维数组或一个二维数组算法设计:(略)编写代码:(略)实验用例:已知函数y=f(x)的一张表(其中m = /'(%):x0. 100. 200. 300. 400. 50y0.9048370.8187310. 7408180. 6703200.606531m-0.904837-0.818731-0.740818-0.670320-0.606531x0. 600. 700. 800. 901.00y0. 5488120.

9、4965850. 4493290. 4065700. 367879m-0.548812-0.496585-0. 449329-0.406570-0.367879实验用例:jwhermite插值多项式比曲求被插值函数f(x)在点x=0.55处的近似值。建议:画出hermite插值多项式w2/t+l (x)的曲线。2. 2. 4实验四实验题目:111!线拟仑的最小二乘法相关知识:已知ca, b中函数f (x)的一组实验数据(x“ y:)(1=0, 1,),其中yk(x)。 设(pj (x)( j = 0,1, , 71; /? < 777)是 ca, b上 线性 无关函 数族。 在 0 =

10、¥期0(),0(兀),,久0)中找函数f(x)曲线拟合的最小二乘解禺,其法方程(组)为:7=0工(洙 ,禺)勺=dk (k =0,1,«)加其中,(禺,久)=工 ®g(pj g(pk a)r=0m(/,%) = s)/a)洙 a)三 dkk=o,l,n?=0特别是,求函数f(x) 111线拟合的线性最小二乘解sx = ax + b的计算公式为:(£ x;)(£ x) -(£ xf)(£ xj x)b i=0心0匸0匸0(加+ i)£f-/=0 /=0曲mm伽+ 1)工i -(工兀)(工x)c _/ = 0/ = 0

11、/=0a _匸(加+1)£彳-(£忑)2i=0i=0数据结构:两个一维数组或一个二维数组算法设计:(略)编写代码:(略)实验用例:已知函数y二f(x)的一张表:x0102030405060708090y6867. 166. 465.664.661.861.060.860.460试验要求:利用曲线拟合的线性最小二乘法求被逼近函数f(x)在点x=55处的近似值,并 曲出实验数据和直线。2. 2. 5实验五实验题目:复化求积公式b cl相关知识:将积分区间a, bn等分,节点xk=a+kh, k=0, 1, , n,步长力=。复化n梯形公式为:hn-l人二亍/(d)+ 2工/a

12、+ 肋)+/(b)2k=再将每个小区间二等分,即整个积分区间a,b2n等分,此时复化梯形公式为“。复化梯形公式的递推关系为乙专+施)u. . tt , a(2/-1)a. b-a具中,h,严迄f(a+'丿),h =oz=i2n数据结构:(略)算法设计:复化梯形公式的算法如卞第一步:n=1, h=b-a;h第二步:tn=-f(a) + f(b);第三步:计算hj第四步:计算卩2“;第五步:n=2n, h=h/2;第六步:若t.-t%(事先给定的误差精度),则转第三步;第七步:输出tn和等分数n/2,结束算法。编写代码:(略)实验用例:/ = t ex cos xdx试验要求:利用复化梯形

13、求积公式求/ = f vcosxjx的近似值(积分的粕确值i=-12. 0703463164, 7t = 3.14159265358979323846.),误差精度£ = 10"。2. 2. 6实验六实验题目:romberg求积公式相关知识:用两个相邻的近似公式(其中后一个公式是由前一个公式的分半得到的)的线性组合而得到更好的近似公式的方法,就是近代电子计算机上常用的romberg求积方法,也叫逐次分半加速(收敛)法。设以加)表示二分k次后求得的梯形值,且以罗t)表示序列/)的j次加速值。romberg求积公式的t表如.卜kh7伙)11t)t/1 0b-ar0<0)

14、1b-a2t(o) 上1 2b-a4a/(i)11吋0) 3b-a8at 上1tf為(0) 4b-a16y(4)1 0y11t2(2)tv町0) romberg求积公式(逐次分半加速公式)女ii卜2k硏=*矿"+穿+-1)#)心1,24)丁伙-j+1)_丁伙一门t严二,j",2,k数据结构:一个二维数组算法设计:romberg求积公式的算法如卜h第一步:取k=0, h=b-a,求70) =-/(a)+ /(/?)2第二步:令1-k (k记区间a,b的二分次数)求梯形值丁(),按梯形的递推公式; 求加速值,按公式逐个求出t表的笫k行其余各元素町s)(j=l,2,k); 若怦&

15、#176;)-础卜£ (预先给定的误差精度),k+17,则转(1);第三步:输出7;和等分数2* (或二分次数k),结束算法。编写代码:(略)实验用例:2试验耍求:利用romberg求积公式求上述定积分(z =-« 0.636619772 ),误差和度71£ = 10"6 o2. 2. 7实验七实验题m数值微分相关知识:数值微分的中点公式为f (%) u g(h)=2h应用理查森(richardson)外推对h逐次分半,计算过程如下农(g()(ho二g(h)g°(/i) 喝)g(h) 时)囲)gm) g*)g哙)g2(f)gw) 计算公式为数据

16、结构:一个二维数组算法设计:(略)编写代码:(略)实验用例:/(x) =试验要求:利用数值微分的外推算法求.厂(1)的近似值2. 2. 8实验八实验题r :用gauss消元法求解线性代数方程组相关知识:在做除法运算吋,分母的绝对值越小,舍入误差就越大。因此,消元的每一 步都先选取绝对值比较大的元素(称作主元),用它作分母再消元。这就是主元素消去法的 基木思想。数据结构:用一个二维数组存储线性代数方程组的增广炬阵;线性代数方程组的解最后 存储在增广矩阵的最后一列上。算法设计:用列主元gauss消元法求解线性代数方程组(同时求出系数行列式的值dot) 的算法为第一步:dett;第二步:对于k二1,

17、2,,nt按列选取主元,找匚w+1,使 = maxlaikk<i<n如果& = 0 (最好是r < £ , £为预先给定的一个非常小的数),则det=o, 计算停止如果l >k (或l ),则换行 o+1,,斤+1det - det(4)消元计算,对于i=k+l, k+2, : n v亠% 对于j=k+l, k+2,,n+1aij aij aik x akj(5) det < detx akk第三步:如果仇“ =0(最好是£为预先给定的一个非常小的数),则det=0,计算停止,否则,回代求解(1)snn对于i=n-l, n-2

18、,,1 对于j=i+l, i+2,,n%+i一切 xd”+第四步:det < detx ann编写代码:(略)实验川例:线性代数方程组为10-701 _ 8-32.09999962兀25.9000015-15-152102_1试验要求:利用列主元的gauss消元法求解上述线性代数方程组(精确解为(o -1 11)丁),并同吋求出系数行列式的值2. 2. 9实验九实验题目:肓接三角分解法相关知识:有矩阵a的三角lu分解,则求解线性代数方程组ax二b的问题就等价于求解两 个三角方程组ly二b和ux二y。而利用矩阵相等则对应元素相等的事实,可逐一求出系数矩阵a 的三角分解屮l和u的各元素。a2

19、 %12a22 an2«】u2%u22u2n 1 11“nn分解过程的计算公式如kr-uri =ciri - 工-mi,i =厂,厂+ 1,;厂= 1,2,hk=lir = (a” 一工/汕好)=r,r + l,-,n;r = 1,2,,/? 一1 k=/数据结构:一个一维数组先后存储b、y和x; 个二维数组先存储儿后被l和u覆盖(二者中的零元素不用存,i的对角元1亦不川存)算法设计:利用肓接三介分解法求解线性代数方程组的算法第一步:分解 对于r=l, 2, , n-1求l的r歹i对于i=t+l, r+2, , nairk=/求u的r+1行 1r+1 对于i=l, 1+1,,n/-iaii j aii -伙 k=第二步:求解ly二b (解存储在b中)对

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论