数值计算考题1——用递推算法计算定积分
定积分典型例题20例答案

定积分典型例题20例答案定积分典型例题20例答案例1 求33322321lim(2)n n n n n →∞+++.分析将这类问题转化为定积分主要是确定被积函数和积分上下限.若对题目中被积函数难以想到,可采取如下方法:先对区间[0,1]n 等分写出积分和,再与所求极限相比较来找出被积函数与积分上下限.解将区间[0,1]n 等分,则每个小区间长为1i x n ?=,然后把2111n n n=?的一个因子1n 乘入和式中各项.于是将所求极限转化为求定积分.即33322321lim(2)n n n n n →∞+++=333112lim ()n n n n nn →∞+++=13034xdx =?.例2 2202x x dx -?=_________.解法1 由定积分的几何意义知,2202x x dx -?等于上半圆周22(1)1x y -+= (0y ≥)与x 轴所围成的图形的面积.故2202x x dx -?=2π.解法2 本题也可直接用换元法求解.令1x -=sin t (2 2t ππ-≤≤),则222x x dx -?=2221sin cos t tdt ππ--?=2221sin cos t tdt π-?=2202cos tdt π=2π 例3 (1)若22()x t xf x e dt -=?,则()f x '=___;(2)若0()()xf x xf t dt =?,求()f x '=___.分析这是求变限函数导数的问题,利用下面的公式即可()()()[()]()[()]()v x u x d f t dt f v x v x f u x u x dx ''=-?.解(1)()f x '=422x x xe e ---;(2)由于在被积函数中x 不是积分变量,故可提到积分号外即0()()xf x x f t dt =?,则可得()f x '=0()()xf t dt xf x +?.例4 设()f x 连续,且31()x f t dt x -=?,则(26)f =_________.解对等式310()x f t dt x -=?两边关于x 求导得32(1)31f x x -?=,故321(1)3f x x -=,令3126x -=得3x =,所以1(26)27f =.例5 函数11()(3)(0)x F x dt x t =->?的单调递减开区间为_________.解 1()3F x x'=-,令()0F x '<得13x >,解之得109x <<,即1(0,)9为所求.例6 求0()(1)arctan xf x t tdt =-?的极值点.解由题意先求驻点.于是()f x '=(1)arctan x x -.令()f x '=0,得1x =,0x =.列表如下:故1x =为()f x 的极大值点,0x =为极小值点.例7 已知两曲线()y f x =与()y g x =在点(0,0)处的切线相同,其中2arcsin 0()xt g x e dt -=?,[1,1]x ∈-,试求该切线的方程并求极限3lim ()n nf n→∞.分析两曲线()y f x =与()y g x =在点(0,0)处的切线相同,隐含条件(0)(0)f g =,(0)(0)f g ''=.解由已知条件得2(0)(0)0t f g e dt -===?,且由两曲线在(0,0)处切线斜率相同知2(arcsin )2(0)(0)11x x e f g x -=''===-.故所求切线方程为y x =.而()(0)3lim ()lim33(0)330n n f f n nf f n n→∞→∞-'=?==-.例8 求 22000sin lim(sin )x x xtdtt t t dt→-??;分析该极限属于型未定式,可用洛必达法则.解 22000sin lim (sin )x x xtdtt t t dt→-?=2202(sin )lim (1)(sin )x x x x x x →-??-=220()(2)lim sin x x x x →-?-=304(2)lim 1cos x x x→-?-x(,0)-∞0 (0,1)1 (1,)+∞()f x '+-=2012(2)lim sin x x x→-?=0.注此处利用等价无穷小替换和多次应用洛必达法则.例9 试求正数a 与b ,使等式2201lim1sin x x t dt x b x a t→=-+?成立.分析易见该极限属于型的未定式,可用洛必达法则.解 20201lim sin x x t dt x b x a t →-+?=220lim 1cos x x a x b x →+-=22001lim lim 1cos x x x b x a x →→?-+201lim 11cos x x b x a →==-,由此可知必有0li m(1cos )0x b x →-=,得1b =.又由2012lim 11cos x x x a a→==-,得4a =.即4a =,1b =为所求.例10 设sin 20()sin x f x t dt =?,34()g x x x =+,则当0x →时,()f x 是()g x 的().A .等价无穷小.B .同阶但非等价的无穷小.C .高阶无穷小.D .低阶无穷小.解法1 由于 22300()sin(sin )cos lim lim()34x x f x x xg x x x →→?=+ 2200cos sin(sin )lim lim34x x x x x x →→=?+ 22011lim 33x x x →==.故()f x 是()g x 同阶但非等价的无穷小.选B .解法2 将2sin t 展成t 的幂级数,再逐项积分,得到sin 223370111()[()]sin sin 3!342x f x t t dt x x =-+=-+,则344340001111sin (sin )sin ()1342342lim lim lim ()13x x x x x x f x g x x x x→→→-+-+===++.例11 计算21||x dx -?.分析被积函数含有绝对值符号,应先去掉绝对值符号然后再积分.解 21||x dx -?=0210()x dx xdx --+??=220210[][]22x x --+=52.注在使用牛顿-莱布尼兹公式时,应保证被积函数在积分区间上满足可积条件.如 33222111[]6dx x x --=-=?,则是错误的.错误的原因则是由于被积函数21 x 在0x =处间断且在被积区间内无界.例12 设()f x 是连续函数,且10()3()f x x f t dt =+?,则()________f x =.分析本题只需要注意到定积分()baf x dx ?是常数(,a b 为常数).解因()f x 连续,()f x 必可积,从而10()f t dt ?是常数,记1()f t dt a =?,则()3f x x a =+,且11(3)()x a dx f t dt a +==??.所以2101[3]2x ax a+=,即132a a +=,从而14a =-,所以 3()4f x x =-.例13 计算2112211x x dx x-++-?.分析由于积分区间关于原点对称,因此首先应考虑被积函数的奇偶性.解 2112211x x dx x-++-?=211112221111x x dx dx x x--++-+-?.由于22211x x+-是偶函数,而211x x+-是奇函数,有112011xdx x-=+-?, 于是2112211x x dx x -++-?=2102411x dx x +-?=22120(11)4x x dx x--?=11200441dx x dx --?? 由定积分的几何意义可知12014x dx π-=, 故211122444411x x dx dx xππ-+=-?=-+-?.例14 计算220()xd tf x t dt dx -?,其中()f x 连续.分析要求积分上限函数的导数,但被积函数中含有x ,因此不能直接求导,必须先换元使被积函数中不含x ,然后再求导.解由于220()xtf x t dt -?=2221()2x f x t dt-?.故令22x t u -=,当0t =时2u x =;当t x =时0u =,而2dt du =-,所以220()x tf x t dt -?=201()()2x f u du -?=201()2x f u du ?,故220()x d tf x t dt dx -?=201[()]2x d f u du dx ?=21()22f x x=2()xf x .错误解答220()x d tf x t dt dx -?22()(0)xf x x xf =-=.错解分析这里错误地使用了变限函数的求导公式,公式()()()xad x f t dt f x dx 'Φ==?中要求被积函数()f t 中不含有变限函数的自变量x ,而22()f x t -含有x ,因此不能直接求导,而应先换元.例15 计算30sin x xdx π.分析被积函数中出现幂函数与三角函数乘积的情形,通常采用分部积分法.解30s i n x x d x π30(c o s )x d x π=-?33[(c o s )](c o s )x x x d x ππ=?---? 30cos 6xdx ππ=-+?326π=-.例16 计算120ln(1)(3)x dx x +-?.分析被积函数中出现对数函数的情形,可考虑采用分部积分法.解 120ln(1)(3)x dx x +-?=101ln(1)()3x d x +-?=1100111[ln(1)]3(3)(1)x dx x x x +-?--+? =101111ln 2()2413dx x x-++-?11ln 2ln324=-.例17 计算20sin x e xdx π.分析被积函数中出现指数函数与三角函数乘积的情形通常要多次利用分部积分法.解由于2sin xe xdx π20sin xxde π=?220[sin ]cos xx e x e xdx ππ=-?220cos x e e xdx ππ=-?,(1)而20cos xe xdx π20cos xxde π=?220[cos ](sin )xx e x e x dx ππ20sin 1x e xdx π=-?,(2)将(2)式代入(1)式可得20sin xe xdx π220[sin 1]x e e xdx ππ=--?,故20sin xe xdx π21(1)2e π=+.例18 计算1arcsin x xdx ?.分析被积函数中出现反三角函数与幂函数乘积的情形,通常用分部积分法.解 10arcsin x xdx ?210arcsin ()2x xd =?221100[arcsin ](arcsin )22x x x d x =?-?21021421x dx x π.(1)令sin x t =,则2121x dx x-?222sin sin 1sin td t tπ=-?220sin cos cos ttdt t π=??220sin tdt π=?201cos22t dt π-==?20sin 2[]24t t π-4π=.(2)将(2)式代入(1)式中得1arcsin x xdx =8π.例19设()f x [0,]π上具有二阶连续导数,()3f π'=且0[()()]cos 2f x f x xdx π''+=?,求(0)f '.分析被积函数中含有抽象函数的导数形式,可考虑用分部积分法求解.解由于0[()()]cos f x f x xdx π''+?00()sin cos ()f x d x xdf x ππ'=+??{()sin ()sin }{[()cos ]()sin }f x x f x xdx f x x f x xdx ππππ'''=-++??()(0)2f f π''=--=.故(0)f '=2()235f π'--=--=-.例20 计算243dxx x +∞++?.分析该积分是无穷限的的反常积分,用定义来计算.解2043dx x x +∞++?=20lim 43t t dx x x →+∞++?=0111lim ()213t t dx x x →+∞-++? =011lim [ln ]23t t x x →+∞++=111lim (ln ln )233t t t →+∞+-+ =ln 32.。
积分计算超强总结(循环递推法)

【解】
.
【注】本例中没有出现循环递推的形式,所以放在这里是为了提醒大家当出现 减 的时候,不能将它们完全抵消,而要留下一个任意常数.
上述问题也可以改作为用循环递推法计算定积分的例子,这意义就不大了.下面举几个原函数不是初等函数的定积分计算例子,注意到定积分值与积分变量名称无关,可以考虑使用换元法.为了与原积分 可以做比较,必须保持积分区间 不变,翻折变换 可以达到此目的.所谓翻折变换是以区间 的中点为不动点的翻折.
【例5】求 .
【解】在翻折变换 下,有
,
所以,有 .
【例6】求 .
【解】在翻折变换 下,有
,
所以,有 .
利用循环递推法计算不定积分时,因为不定积分的计算结果与积分变量的名称有关,所以比较适合用分部积分法,而这时换元积分法恐怕是没有用的.
【例1】求 .
【解】
.
所以 ,即 .
【例2】求 .
【解】
,
所以 .
【例3】求 .
【解】
.
所以,有 .
【注】本题用换元 的方法,一样可以得到结果,但还要用到三角倍角公式和回代的过程,略显麻烦.
循环递推法
循环递推法是积分计算的一种重要的辅助方法.对于某些积分问题,在通过换元积分法或分部积了原积分的表达式
.
这样,实际上也就得到了需要的结果了,这种方法称为循环递推法.
这里需要注意的是:若 表示的是不定积分,等式另一边的 虽然表示的是同一个函数的不定积分,但是应该有一个常数的差别.所以在移项合并时,必须留下一个常数.
数值计算大作业

数值计算大作业题目一、非线性方程求根1.题目假设人口随时间和当时人口数目成比例连续增长,在此假设下人口在短期内的增长建立数学模型。
(1)如果令()N t 表示在t 时刻的人口数目,β表示固定的人口出生率,则人口数目满足微分方程()()dN t N t dt β=,此方程的解为0()=tN t N e β; (2)如果允许移民移入且速率为恒定的v ,则微分方程变成()()dN t N t vdt β=+, 此方程的解为0()=+(1)t t vN t N e e βββ-;假设某地区初始有1000000人,在第一年有435000人移入,又假设在第一年年底该地区人口数量1564000人,试通过下面的方程确定人口出生率β,精确到410-;且通过这个数值来预测第二年年末的人口数,假设移民速度v 保持不变。
4350001564000=1000000(1)e e βββ+-2.数学原理采用牛顿迭代法,牛顿迭代法的数学原理是,对于方程0)(=x f ,如果)(x f 是线性函数,则它的求根是很容易的,牛顿迭代法实质上是一种线性化方法,其基本思想是将非线性方程0)(=x f 逐步归结为某种线性方程来求解。
设已知方程0)(=x f 有近似根k x (假定0)(≠'x f ),将函数)(x f 在点k x进行泰勒展开,有.))(()()(⋅⋅⋅+-'+≈k k k x x x f x f x f于是方程0)(=x f 可近似地表示为))(()(=-'+k k x x x f x f这是个线性方程,记其根为1k x +,则1k x +的计算公式为)()(1k k k k x f x f x x '-==+,,,2,1,0⋅⋅⋅=k这就是牛顿迭代法,简称牛顿法。
3.程序设计作出函数的图像,大概估计出根的位置fplot('1000*exp(x)+(435*x)*(exp(x)-1)-1564',[0 3]);grid大概估计出初始值x=0.5function [p1,err,k,y]=newton(f,df,p0,delta,max1) % f 是非线性系数 % df 是f 的微商 % p0是初始值% dalta 是给定允许误差 % max1是迭代的最大次数 % p1是牛顿法求得的方程近似解 % err 是p0误差估计 % k 是迭代次数 p0,feval('f',p0) for k=1:max1p1=p0-feval('f',p0)/feval('df',p0); err=abs(p1-p0); p0=p1;p1,err,k,y=feval('f',p1) if(err<delta)|(y==0), break,endp1,err,k,y=feval('f',p1) endfunction y=f(x)y=1000000*exp(x)+435000*(exp(x)-1)/x-1564000; function y=df(x)y=1000000*exp(x)+435000*(exp(x)/x-(exp(x)-1)/x^2);4.结果分析与讨论newton('f','df',1.2,10^(-4),10) 运行后得出结果 p0 =0.5000p1 =0.1679 err =0.3321 k =1 y =9.2415e+004 p1 =0.1031 err =0.0648 k =2 y =2.7701e+003 p1 =0.1010 err =0.0021 k =3 y =2.6953p1 =0.1010 err =2.0129e-006 k =4 y = 2.5576e-006 ans =0.1010运算后的结果为1010.0=β,通过这个数值来预测第二年年末的人口数,0.10100.1010435000f(t)=1000000(1)0.1010t te e +-t=2时候对于f ()2187945.865x =实践表明,当初始值难以确定时,迭代法就不一定收敛了,因此要根据问题实际背景或者二分法先得一个较好的初始值,然后再进行迭代;再者迭代函数选择不合适的话,采用不动点迭代法也有可能出现不收敛的情况;因此我采用的是牛顿法。
递推算法

For i:=1 to t do //计算加入跑步选择时的每秒最大距离 begin if f[i]< f[i-1]+17 then f[i]:= f[i-1]+17; if f[i]>=s then begin //刚好离岛,输出 writeln('Yes'); writeln(i); halt; end; end; writeln('No');//不能离岛,输出 writeln(f[t]); end. 本题有多种解决问题的方法,然而,在上述分析中很巧妙地运用了分而治之 的思想,把原来跑步、魔法、休息交错在一起的问题条件分离开,考虑在只有魔 法情况下每秒最远距离,此时,很容易用上问题的贪心条件,能用魔法尽量用上 魔法,求只有魔法情况下每秒最远距离的递推式写起来也很简单。接着,考虑跑 步的情况,当前秒的跑步距离由上一秒加17递推得到,每秒最远距离为跑步距离 和魔法距离中的最大值。这是一道很好的题,建议大家用不同方法解决之,然后, 从中体会分解问题的方法和技巧。
【样例输出】 10 【注意】 测试数据规模: 保证100%的数据n<=1000。 问题分析:
求最小路径得分,比较容易想到的是: 1.如果知道从第1行走到第n行各数字上的最小得分, 那么,从中取最小值即可; 2.第n行是从n-1行走下来的,如果知道第n-1层各数字 位置上的最小得分值,那么根据规则每步只能沿左斜线 向下或沿右斜线向下,要使第n层的各数字位上得到最 小得分值,只能从左上和右上两个得分值中取小的一个 与当前位的数字相加; 3.同理,第n-1层各数位上的最小得分可以从第n-2层 推出;
递推算法
递推是计算机数值计算中的一个重要算法。 思想是通过数学推导,将复杂的运算化解为若 干重复的简单运算,以充分发挥计算机善长于 重复处理的特点。
数值计算方法习题.doc

第一章 绪论1.把下列各数按四舍五入规则舍入为有3位小数的近似数,并写出近似数的绝对误差和相对误差,指出近似数有几位有效数字: 93.1822 4.32250 15.9477 17.3675 2.按四舍五入原则,将下列数舍成五位有效数字:816.9567 6.000015 17.32250 1.235651 93.18213 0.015236233.设 **,671.3,6716.3x x x 则==有几位有效数字? 4.若1/4用0.25来表示,问有多少位有效数字? 5.若 1.1062,0.947a b ==是经过舍入后得到的近似值,问:,a b a b +⨯各有几位有效数字?6.设120.9863,0.0062y y ==是经过舍入后作为12,x x 的近似值, 求11y 和21y 的计算值与真值的相对误差限及12y y 和得到真值的相对误差限. 7.设0,x x >的相对误差为δ,求ln x 的绝对误差.8.正方形的边长约为100cm ,应该怎样测量,才能使其面积的误差不超过12cm . 9.设x 的相对误差为a %,求x n 的相对误差.10.计算球的体积,为了使相对误差限为1%,问度量半径R 时允许的相对误差限如何?11.5631.2*=x 是经四舍五入得到的近似值,则其相对误差≤*r e __________ 12. 设 0000073.0,1416.3,1415926.3**=-==x x x x 则称_________误差13.设⎰+=1061dx xx I nn ,设计一个计算10I 的算法,并说明你的算法的合理性。
14.设028Y =,按递推公式1n n Y Y -= (1,2,n = ), 计算到100Y27.982≈(5位有效数字),试问计算100Y 将有多大误差. 15.求方程25610x x -+=的两个根,使它至少具有4位有效数字27.982≈).16.当N 充分大时,怎样求121d 1N N x x ++⎰?17.序列{}n y 满足递推关系101n n y y =- (1,2,n = ),若0 1.41y =≈(三位有效数字),计算到10y 时误差有多大?这个计算过程稳定吗?18.计算61)f =1.41≈,利用下列算式计算,哪一个得到的结果最好?,3(3-,99- 19.()ln(f x x =,求(30)f 的值,若开平方用6位函数表,问求对数时误差有多大?若改用另一等价公式ln(ln(x x =- 计算,求对数时误差有多大?第二章 解线性方程组的直接方法1.用高斯消去法解方程组123234011921261x x x ⎡⎤⎡⎤⎡⎤⎢⎥⎢⎥⎢⎥=⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥-⎣⎦⎣⎦⎣⎦ 2.用LU 分解,将上题系数矩阵分解为L 和U 的乘积,L 是对角线元素为1的下三角矩阵,U 是上三角矩阵。
数值分析方法计算定积分

数值分析⽅法计算定积分⽤C语⾔实现⼏种常⽤的数值分析⽅法计算定积分,代码如下:1 #include <stdio.h>2 #include <string.h>3 #include <stdlib.h>4 #include <math.h>56#define EPS 1.0E-14 //计算精度7#define DIV 1000 //分割区间,值越⼤,精确值越⾼8#define ITERATE 20 //⼆分区间迭代次数,区间分割为2^n,初始化应该⼩⼀点,否则会溢出910#define RECTANGLE 0 //矩形近似11#define TRAPEZOID 1 //梯形近似12#define TRAPEZOID_FORMULA 2 //递推梯形公式13#define SIMPSON_FORMULA 3 //⾟普森公式14#define BOOL_FORMULA 4 //布尔公式1516double function1(double);17double function2(double);18double function3(double);19void Integral(int, double f(double), double, double); //矩形, 梯形逼近求定积分公式20void Trapezoid_Formula(double f(double), double a, double b); //递推梯形公式21void Simpson_Formula(double f(double), double a, double b); //⾟普森公式22void Bool_Formula(double f(double), double a, double b); //布尔公式23void Formula(int, double f(double), double, double);2425double function1(double x)26 {27double y;28 y = cos(x);29return y;30 }3132double function2(double x)33 {34double y;35 y=1/x;36// y = 2+sin(2 * sqrt(x));37return y;38 }3940double function3(double x)41 {42double y;43 y = exp(x);44return y;45 }4647int main()48 {49 printf("y=cos(x) , x=[0, 1]\n");50 printf("Rectangle : "); Integral(RECTANGLE, function1, 0, 1);51 printf("Trapezoid : "); Integral(TRAPEZOID, function1, 0, 1);52 Formula(TRAPEZOID_FORMULA, function1, 0, 1);53 Formula(SIMPSON_FORMULA, function1, 0, 1);54 Formula(BOOL_FORMULA, function1, 0, 1);55 printf("\n");5657 printf("y=1/x , x=[1, 5]\n");58 printf("Rectangle : "); Integral(RECTANGLE, function2, 1, 5);59 printf("Trapezoid : "); Integral(TRAPEZOID, function2, 1, 5);60 Formula(TRAPEZOID_FORMULA, function2, 1, 5);61 Formula(SIMPSON_FORMULA, function2, 1, 5);62 Formula(BOOL_FORMULA, function2, 1, 5);63 printf("\n");6465 printf("y=exp(x) , x=[0, 1]\n");66 printf("Rectangle : "); Integral(RECTANGLE, function3, 0, 1);67 printf("Trapezoid : "); Integral(TRAPEZOID, function3, 0, 1);68 Formula(TRAPEZOID_FORMULA, function3, 0, 1);69 Formula(SIMPSON_FORMULA, function3, 0, 1);70 Formula(BOOL_FORMULA, function3, 0, 1);7172return0;73 }74//积分:分割-近似-求和-取极限75//利⽤黎曼和求解定积分76void Integral(int method, double f(double),double a,double b) //f(double),f(x), double a,float b,区间两点77 {79double x;80double sum = 0; //矩形总⾯积81double h; //矩形宽度82double t = 0; //单个矩形⾯积8384 h = (b-a) / DIV;8586for(i=1; i <= DIV; i++)87 {88 x = a + h * i;89switch(method)90 {91case RECTANGLE :92 t = f(x) * h;93break;94case TRAPEZOID :95 t = (f(x) + f(x - h)) * h / 2;96break;97default:98break;99 }100 sum = sum + t; //各个矩形⾯积相加101 }102103 printf("the value of function is %.10f\n", sum);104 }105106//递推梯形公式107void Trapezoid_Formula(double f(double), double a, double b)//递推梯形公式108 {109 unsigned int i, j, M, J=1;110double h;111double F_2k_1 = 0;112double T[32];113double res = 0;114115 T[0] = (f(a) + f(b)) * (b-a)/2;116for(i=0; i<ITERATE; i++)117 {118 F_2k_1 = 0;119 J = 1;120121for(j=0; j<=i; j++) //区间划分122 J <<= 1; //2^J123 h = (b - a) /J; //步长124//M = J/2; //2M表⽰将积分区域划分的块数125for(j=1; j <= J; j += 2) //126 {127 F_2k_1 += f(a + j*h); //f(2k-1)累加和128 }129 T[i+1] = T[i]/2 + h * F_2k_1; //递推公式130 res = T[i+1];131132if(fabs(T[i+1] - T[i]) < EPS)133if(i < 3) continue;134else break;135 }136137 printf("Trapezoid_Formula : the value of function is %.10f\n", res);138//return res;139 }140//⾟普森公式141void Simpson_Formula(double f(double), double a, double b) //⾟普森公式142 {143 unsigned int i, j, M, J=1;144double h;145double F_2k_1 = 0;146double T[32], S[32];147double res_T = 0, res_S = 0;148149 T[0] = (f(a) + f(b)) * (b-a)/2;150for(i=0; i<ITERATE; i++)151 {152 F_2k_1 = 0;153 J = 1;154155for(j=0; j<=i; j++) //区间划分156 J <<= 1; //2^J157 h = (b - a) /J; //步长158//M = J/2; //2M表⽰将积分区域划分的块数159for(j=1; j <= J; j += 2) //160 {161 F_2k_1 += f(a + j*h); //f(2k-1)累加和163 T[i+1] = T[i]/2 + h * F_2k_1; //递推梯形公式164 res_T = T[i+1];165166if(fabs(T[i+1] - T[i]) < EPS)167if(i < 3) continue;168else break;169 }170171for(i=1; i<ITERATE; i++)172 {173 S[i] = (4 * T[i] - T[i-1]) / 3; //递推⾟普森公式174 res_S = S[i];175if(fabs(S[i] - S[i-1]) < EPS)176if(i < 3) continue;177else break;178 }179180 printf("Simpson_Formula : the value of function is %.10f\n", res_S);181//return res_S;182 }183184//布尔公式185void Bool_Formula(double f(double), double a, double b) //布尔公式186 {187 unsigned int i, j, M, J=1;188double h;189double F_2k_1 = 0;190double T[32], S[32], B[32];191double res_T = 0, res_S = 0, res_B;192193 T[0] = (f(a) + f(b)) * (b-a)/2;194for(i=0; i<ITERATE; i++)195 {196 F_2k_1 = 0;197 J = 1;198199for(j=0; j<=i; j++) //区间划分200 J <<= 1; //2^J201 h = (b - a) /J; //步长202//M = J/2; //2M表⽰将积分区域划分的块数203for(j=1; j <= J; j += 2) //204 {205 F_2k_1 += f(a + j*h); //f(2k-1)累加和206 }207 T[i+1] = T[i]/2 + h * F_2k_1; //递推公式208 res_T = T[i+1];209210if(fabs(T[i+1] - T[i]) < EPS)211if(i < 3) continue;212else break;213 }214215for(i=1; i<ITERATE; i++)216 {217 S[i] = (4 * T[i] - T[i-1]) / 3; //递推⾟普森公式218 res_S = S[i];219if(fabs(S[i] - S[i-1]) < EPS)220if(i < 3) continue;221else break;222 }223224for(i=1; i<ITERATE; i++)225 {226 B[i] = (16 * S[i] - S[i-1]) / 15; //递推布尔公式227 res_B = B[i];228if(fabs(B[i] - B[i-1]) < EPS)229if(i < 3) continue;230else break;231 }232233 printf("Bool_Formula : the value of function is %.10f\n", res_B);234//return res_B;235 }236237//采⽤⼆分区间的⽅法迭代,实际运⾏速度很慢238void Formula(int method, double f(double), double a, double b)//递推梯形公式239 {240 unsigned int i, j, M, J=1;241double h;242double F_2k_1 = 0;243double T[32], S[32], B[32];244double res_B = 0, res_S = 0, res_T = 0;247for(i=0; i<ITERATE; i++)248 {249 F_2k_1 = 0;250 J = 1;251252for(j=0; j<=i; j++) //区间划分253 J <<= 1; //2^J254 h = (b - a) /J; //步长255//M = J/2; //2M表⽰将积分区域划分的块数256for(j=1; j <= J; j += 2) //257 {258 F_2k_1 += f(a + j*h); //f(2k-1)累加和259 }260 T[i+1] = T[i]/2 + h * F_2k_1; //递推公式261 res_T = T[i+1];262263if(fabs(T[i+1] - T[i]) < EPS)264if(i < 3) continue;265else break;266 }267268switch(method)269 {270default :271case TRAPEZOID_FORMULA :272 printf("Trapezoid_Formula : the value of function is %.10f\n", res_T); 273//return res_T;274break;275case SIMPSON_FORMULA :276for(i=1; i<ITERATE; i++)277 {278 S[i] = (4 * T[i] - T[i-1]) / 3;279 res_S = S[i];280if(fabs(S[i] - S[i-1]) < EPS)281if(i < 3) continue;282else break;283 }284 printf("Simpson_Formula : the value of function is %.10f\n", res_S); 285//return res_S;286break;287case BOOL_FORMULA :288for(i=1; i<ITERATE; i++)289 {290 S[i] = (4 * T[i] - T[i-1]) / 3;291 res_S = S[i];292if(fabs(S[i] - S[i-1]) < EPS)293if(i < 3) continue;294else break;295 }296for(i=1; i<ITERATE; i++)297 {298 B[i] = (16 * S[i] - S[i-1]) / 15;299 res_B = B[i];300if(fabs(B[i] - B[i-1]) < EPS)301if(i < 3) continue;302else break;303 }304305 printf("Bool_Formula : the value of function is %.10f\n", res_B); 306//return res_B;307break;308 }309310 }测试结果:。
数值分析期末考试题之经典例题

题型一:有效数字1,确定113的首位数字x 1,要使113的近似值x *的相对误差不超过0.5×10-5,至少要保留几位有效数字.(2010-2011)1*1151211||10100.5102226n n r x n e x n ---=≤⨯=⨯≤⨯⨯≥=解答:设至少要保留位有效数字,则有解得, n 5.7取位有效数字.2,要使112的相对误差不超过0.5×10-4,至少要保留几位有效数字?(2009-2010) 3,已知21.787654为有效数,确定其绝对误差界与相对误差界.(2007-2008)*6*118711||102111||1010102224n r e e x ----=⨯=⨯=⨯=⨯⨯解答:4,已知30.49876为有效数,确定其绝对误差界.(2006-2007B)5,设有效数x=12.4567,确定x 的绝对误差界.(2004-2005)题型二:插值多项式1,已知f(x)的函数值:f(0)=-2, f(1)=1, f(2)=5, 用反插值法求f(x)=0在[0,2]内的近似根x *.(2010-2011)11111202012012010210122021()()()()()()()()()()()()()()()()()(2)(5)(2)(1)012(12)(15)(52)(51)2991422884y y y y y y y y y y y y y L y f y f y f y y y y y y y y y y y y y y y y y y ----------=⋅+⋅+⋅------+-+-=+⨯+⨯+-+-=+-解答:对y=f(x)的反函数x=f 进行二次插值2*229(0)42y x L ≈=故,2,已知f(x)的如下函数值及导数值:f(-1)=1, f(0)=2, f ’(0)=3, f(1)=7; (1),建立不超过3次的埃尔米特插值多项式H 3(x);(2),x ∈[-1,1], 确定用H 3(x)代替f(x)的误差界(已知|f (4)(x)|≤M 4,x ∈[-1,1]).(2010-2011)32001001201232233)),(0,1,2)()()[,]()[,,]()()1(1)2(1)(0)232()()(1)(0)(1)232()'(i i H x f x i N x f x f x x x x f x x x x x x x x x x x x H x N x k x x x x x k x x H ===+-+--=++++-=++=++--=+++-解答:(1),满足插值条件((的二次插值多项式为:也可用拉格朗日插值法满足题设插值条件的插值多项式为:2323(4)23443)43(31)'(0)'(0)3()232()(2),(1)(0)(1),(1,1)4!1||=4!496x x k x H f H x x x f R x x x M M R ζζ=++-===+++--∈-≤⨯由得:k=0故:误差(x)=则误差界(x)3,已知f(x)的函数值:f(0)=2, f(1)=4, f(2)=9, 写出二次拉格朗日插值多项式及余项.(2009-2010) 4,已知f(x)的如下函数值及导数值:f(1)=1, f(2)=2, f ’(1)=3, f(3)=9; (1),建立不超过3次的埃尔米特插值多项式;(2)计算f(1.6)的近似值;若M 4=0.5,估计f(1.6)的误差界.(已知|f (4)(x)|≤M 4).(2009-2010)5,写出满足条件H(0)=1, H(1)=0, H ’(1)=1, H(2)=1的三次插值多项式,并给出误差估计式.(2008-2009B)6,已知一组数据,求函数f(x)=0的根.(2008-2009B)x i -1 0 2 3 f(x i )-7-1177,已知f(x)的如下函数值及导数值:f(0)=1, f(1)=3, f ’(1)=1, f(2)=9, (1),建立不超过3次的埃尔米特插值多项式,写出误差估计式;(2),计算f(1.8)的近似值:若M 4=1,估计f(1.8)的误差界.(已知|f (4)(x)|≤M 4).(2007-2008) 8,已知f(x)的如下函数值及导数值:f(1)=2, f(2)=4, f ’(2)=5, f(3)=8, (1),建立不超过3次的埃尔米特插值多项式;(2),计算f(2.5)的近似值:若M 4=0.5,估计f(2.5)的误差界.(已知|f (4)(x)|≤M 4).(2006-2007) 9,已知f(x)的如下函数值表x i 0.1 0.2 0.3 0.4 f(x i )1.122.652.811.68选取合适的插值节点,用二次插值多项式计算f(0.35)的近似值.(2005-2006) 10,已知f(x)=sinx 的如下函数值表x i 1.0 1.5 2.0 sinx i0.84150.99750.9093用插值多项式计算sin1.8, 并估计误差界.(2004-2005)11,用f(x)的关于互异节点集112{}{}n ni i i i x x -==和的插值多项式g(x)和h(x)构造出关于节点集1{}ni i x =的插值多项式.(2005-2006)(课后习题)-11111121111{}(),()(){}(),()()()()))()())]()n n i i i i n n n n n n n n n n n n n n q x q x g x x x x x x x x x g A x x g x ==------=----=-解答:法一:设关于节点集x 的插值多项式为则与有共同插值节点x ,则设:q(x)=g(x)+Aw w f(x (x )由q(x )=f(x 得,w w 故:q(x)=g(x)+[f(x (x )w 法二:设q(x)=g(x)+1-122311111()()(){}()()()()(),01()=()[()()]()[()()]()()()()()()[()()]=-n n i i n n n n n n n n n n x g x h x B g x h x B x x x x x x B x x x g x h x BAx x g x h x Bq x f x h x Ah x g x x x g x h x BA B -=---=---≠----===+--Aw 由于和有共同插值节点x ,则存在常数,使得则,w 故:q(x)=g(x)+由得得1111()[()()]()n n x x x x h x g x x x ----则:q(x)=g(x)+12,(1),已知f(x)的如下函数值:f(0)=1,f(1)=3,f(3)=5,写出二次拉格朗日插值多项式L 2(x); (2),若同时已知:f ’(1)=1,用待定系数法求埃尔米特插值多项式H 3(x); (3),当(3)(4)1|()|2|()|4,[0,3]fx fx x ≤≤≤≤∈及3时,x 不取节点,[0,3]x ∈,求32()()||()()f x H x f x L x --的上界.(2011-2012)题型三:最佳平方逼近多项式及最小二乘法1,已知函数值表:x -2 -1 0 1 2 y121用二次多项式y=C 0+C 1X+C 2X 2按最小二乘法拟合改组数据,并求平方逼近误差.(2010-2011)(2005-2006)()000102030410111213142021222324012()()()()()11111()()()()()21012()()()()()4101401210,5010010010034T T T T x x x x x A x x x x x x x x x x y A AC A y c c c ϕϕϕϕϕϕϕϕϕϕϕϕϕϕϕ⎛⎫⎛⎫ ⎪ ⎪==-- ⎪ ⎪⎪ ⎪⎝⎭⎝⎭==⎛⎫⎛ ⎪ ⎪ ⎪⎝⎭⎝解答:法一:线性拟合的法方程组为:即()()01222*20000100011402583,0,3575833570581358||||=(y,y)-Y 01210402023531701(,)0,(,)(T c c y x C x xx δϕϕϕαϕαϕϕϕα⎫⎛⎫⎪ ⎪=⎪ ⎪⎪ ⎪⎭⎝⎭===-=-⎛⎫⎛⎫ ⎪ ⎪ ⎪ ⎪ ⎪=-=⎪ ⎪ ⎪ ⎪- ⎪ ⎪⎝⎭⎝⎭====解得:c 则平方逼近误差:法二:构造首项系数为的正交多项式:(x)=1(x)=x-111211021100002*22022220,)0(,)(,)2,()()2(,)(,)46583()()0(2)(,)514357(,)8||||=(y,y)-(,)35i i i i i i i i i x x y x x x x y ϕϕϕϕϕβααϕβϕϕϕϕϕϕϕϕϕδϕϕ======----==++-=-=∑∑(x)(x)=x 则,平方逼近误差:2,求21()1f x x=+在区间[0,1]上的一次最佳平方逼近多项式及平方逼近误差(去权函数ρ(x)=x).(2009-2010) 3,通过实验获得以下数据:x i 0 1 2 3 y i13610请用最小二乘法求形如y=a+bx 2的经验公式.(2008-2009)T T A AC A y =解析:4,利用正交多项式的性质构造首项系数为1的正交多项式1{()}i i g x ∞=,有下列公式:010111()1()()()()(),(1,2,...)k k k k k g x g x x g x x g x g x k ααβ+--==-=--=其中:111(,),(0,1,2...)(,)(,),(1,2...)(,)k k k k k k k k k k xg g k g g g g k g g αβ---====(1),求[0,1]上首项系数为1的正交多项式(权函数ρ(x)=1),g 0(x),g 1(x),g 2(x)(2),以上述正交多项式为基,求sinx 在区间[0,1]上的二次最佳平方逼近多项式,并求平方逼近误差.(2008-2009B)(2004-2005)010000110001201111211021102110000*010001(1),()1(,)11,()(,)221()(,)121(,)2()2(,)11,()()()()(,)126(,)(,)(2),()(,)(g x xdx xg g g x x x g g dx x x dx xg g g g x dx g g g x x g x g x x x g g g f g f x g g g g αααβαβϕ=====-=--===-===--=-+=+⎰⎰⎰⎰解答:21212211120020111222000222*220(,),)(,)11()sin ()sin sin 11621()()1126()()260.00746 1.09130.23546(,)||||(,)0.000623.(,)i i i i g f g g g g g x x xdx x xdx xdx x x x dx x dx x x dx x x f g f f f g g ϕ=+-+-=⋅+⋅-+⋅-+--+=-+--=-=⎰⎰⎰⎰⎰⎰∑平方逼近误差:5,以正交多项式为基,求函数21()1f x x=+在区间[0,1]上的二次最佳平方逼近多项式,并求平方逼近误差.(2007-2008)(权函数ρ(x)=x,(2011-2012))20120122201201()1,(),(),111()2,()1,()2242211112234211113454111112224561.0656,0.503x x x x x f In f f In C F In c c c In ϕϕϕπϕϕϕπ=====-=-=⎛⎫⎛⎫⎪ ⎪⎛⎫ ⎪ ⎪ ⎪ ⎪ ⎪⋅=- ⎪ ⎪ ⎪ ⎪ ⎪ ⎪⎝⎭ ⎪ ⎪- ⎪ ⎪⎝⎭⎝⎭==-解答:法一:取解得,,,正规方程组为:H 即:解得:c c 2*222*00001000111110110002,0.07423() 1.06560.503020.07423=(f,f)-F 0.000029041()11(,)223,()1(,)332(,)8(,)1,(,)15(,)T n p x x x C g x xg g g x x x g g xg g g g g g g g δαααβ=-=--======-=-====c 故二次最佳平方逼近多项式:平方逼近误差:法二:构造首项系数为的正交多项式:221100*201220120011222*1882163()()()()()()15318510(,)(,)(,)()()()() 1.06560.503020.07423(,)(,)(,)=(f,f)-F 0.00002904T n g x x g x g x x x x x f g f g f g p x g x g x g x x x g g g g g g C αβδ=--=---=-+=++=--=则:平方逼近误差:6,通过实验获得以下数据:u i 0 1 9 16 v i11/21/31/4请用最小二乘法求形如011v c c u=+的经验公式,并求平方误差.(2006-2007)011:c c u v=+解答转化题型四:代数精确度1,确定参数α,使求积公式20()[(0)()]['(0)'()]2hhf x dx f f h h f f h α≈++-⎰的代数精确度尽可能高,并求其代数精确度.(2010-2011)23322442320()1,,()1(),=121()()(0)(03)2121()()0+)(04)212()[(0)()]['(0)'()]2h h h f x x f x f x x h f x x f x dx h h h h f x x f x dx h h h hf x dx f f h h f f h αα====++-=≠+-≈++-⎰⎰⎰解答:令显然成立令得又时:时:(故具有三次代数精确度.2,确定参数A 1,A 2,使求积公式12()()(0)()3hhhf x dx A f h A f f h -≈-++⎰的代数精确度尽可能高,并求其代数精确度.(2009-2010) 3,建立高斯型求积公式1211221()()()x f x dx A f x A f x -≈+⎰.(2009-2010)231212113112211224112211335112211212000010001,23025031,53()1(,)0,()(,)x A A x dx A x A x x dx A x A x x dx A x A x x dx x A A g x xg g g x x xg g ααα----+==+==+==+===-=-======-=⎰⎰⎰⎰解答:法一:已知求积公式有3次代数精确度,令f(x)=1,x,x 得解上述方程组得:x 法二:构造二次正交多项式11110110022110021211222112111221121(,)(,)30,(,)(,)53()()()()53()0,511,33133()[()()]355xg g g g g g g g g x x g x g x x g x x x x x x A x dx A x dx x x x x x f x dx f f βαβρ---=====--=-==-=---=⋅==⋅=--≈-+⎰⎰⎰令得高斯点: x 故高斯型求积公式为:方法三:设[-1,1]上权(x)2221221122122121122221122331122212121().223()0,+0,5352()0,0,053().52:3250()()(),(g x x ax b b x g x dx b a x xg x dx a g x x A A A x A x A x A x A x A x x x x x x x c x c x ϕϕ--=++===-⋅====-+=+=+=+==--=++⎰⎰=x ,首项系数为1的二次正交多项式为则有:即即所以剩下步骤同法二.法四显然222221122111122212211221112221222332211122211221112221122112)()0()()()()()()()2230,535()()()()()20,053(),5x A x A x A x c x c A x c x c A x A x c A x A x c A A c c A x x A x x A x A x c A x A x c A x A x c c x x ϕϕϕϕϕϕ==+=+++++=+++++=+==-+=+++++====-剩下步骤同法二.4,确定求积公式()()(0)()hhf x dx Af h Bf Cf h -≈-++⎰中的参数A,B,C ,使其代数精度尽量高,并指出其代数精确度.(2008-2009B) 5,确定求积公式1211123()()()()343234f x dx f f f ≈-+⎰的代数精确度.(2006-2007B) 6,确定下列求积公式中的参数,使求积公式的代数精确度尽可能高,并求出代数精确度10120113()()()()424f x dx A f A f A f ≈++⎰.(2005-2006)7,确定下列求积公式中的参数,使求积公式的代数精确度尽可能高,并求出代数精确度101()()(0)()hhf x dx A f h A f A f h --≈-++⎰.(2004-2005)8,已知h>0,建立高斯型求积公式:21122()()()hhx f x dx A f x A f x -≈+⎰.(2011-2012)题型五:求积公式的最少节点数1,设定积分32x e dx -⎰,问用复化辛普森(Simpson)求积公式进行计算,要求误差小于10-6,所需要的最少节点数为多少?(2010-2011)(4)2244(4)461(),()16301[]||()|101801801696017.0519.x xS f x e fx eb a h f h f h b ahη---==--=-≤⋅=<-=解答:复化辛普森公式截断误差:|R 解得:h<0.176,n>故应取个节点2,设定积分13x edx -⎰,问用复化梯形求积公式进行计算,要求误差小于10-6,所需要的最少节点数为多少?(2009-2010)(2)3322(2)261(),()9101[]||()|10121891622.8.x x T f x e f x e b a h f h f h b ahη---==--=-≤⋅=<-=解答:复化梯形公式截断误差:|R 解得:h<0.357,n>故应取4个节点3,给定积分2cos2xdx ⎰,问用复化梯形求积公式和复化辛普森(Simpson)求积公式进行计算,要求误差小于10-6,所需要的最少节点数各为多少?(注:2(2)4(4)[](),[](),[,]122880T S b a b a R f h f R f h f a b ηηη--=-=-∈)(2008-2009B) 4,给定积分14x edx -⎰,问用复化梯形求积公式和复化辛普森(Simpson)求积公式进行计算,要求误差小于10-6,所需要的最少节点数各为多少?(2007-2008) 5,给定积分21Inxdx ⎰,问用复化梯形求积公式和复化辛普森(Simpson)求积公式进行计算,要求误差小于10-6,所需要的最少节点数各为多少? (已知:2(2)4(4)1212[](),[](),,(,)12180T S b a b a R f h f R f h f a b ηηηη--=-=-∈)(2006-2007) 6,用积分82122dx In x=⎰计算In2,要使所得近似值具有7位有效数字,问用复化辛普森求积公式至少需要取多少个节点?(2005-2006)4(4)8(4)52(4)-744(4)4-7[](),[2,8]18011122,(),()223|()|,[2,8]817[]102631[]||()|101801808802820.04472,S S S b a R f h f In dx f x f x x x xf x x R f b a h R f h f h h n hηηη-=-∈===≤∈≤⨯-=-≤⋅=≤⨯-≤≥=⎰解答:复化辛普森公式截断误差公式:则使所得的近似值具有位有效数字,即令:|134.2137故至少需要取个节点.7,用积分6213dx In x=⎰计算In3,要使所得近似值具有5位有效数字,问用复化梯形求积公式至少需要取多少个节点?(2004-2005) 8,对于定积分1()If x dx =⎰,当M 2=1/8,M 4=1/32,用11点的复化辛普森(Simpson)求积公式求I 的截断误差为R s [f],用n 个节点的复化梯形求积公式求I 的截断误差为R T [f],要使R T [f]≤R s [f],n 至少是多少?(M 2=max|f ”(x)|,M 4=max|f (4)(x)|,[0,1]x ∈).(2011-2012)题型六:Doolittle 分解及方程组求解1,求矩阵212454635⎛⎫ ⎪ ⎪ ⎪-⎝⎭的Doolittle 分解.(2010-2011) 212100212454210030635321001LU ⎛⎫⎛⎫⎛⎫ ⎪ ⎪⎪== ⎪ ⎪⎪ ⎪ ⎪⎪---⎝⎭⎝⎭⎝⎭解答:A=2,求矩阵114103241⎛⎫ ⎪- ⎪ ⎪⎝⎭的Doolittle 分解.(2009-2010) 3,设线性方程组123410135114152410162116x x x x ---⎛⎫⎛⎫⎛⎫ ⎪ ⎪ ⎪- ⎪ ⎪ ⎪⋅= ⎪ ⎪ ⎪- ⎪ ⎪ ⎪-⎝⎭⎝⎭⎝⎭ (1),对方程组的系数矩阵A 作Doolittle 分解;(2),用所得的Doolittle 分解求该线性方程组的解.(2007-2008&2005-2006)1234123410001013101311000132114124100013224101119162116210001313191,,,)(5,0,11,)13,,,)(1,1,1,1).T TT T A LU LY b y y y UX Y x x x --⎛⎫⎛⎫--⎛⎫ ⎪⎪- ⎪ ⎪⎪-⎪=== ⎪⎪--- ⎪ ⎪⎪ ⎪ ⎪⎪-- ⎪⎪⎝⎭⎝⎭⎝⎭==---==--解答:由得:(y 由得:(x4,设线性方程组123411415101312410762118x x x x -⎛⎫⎛⎫⎛⎫ ⎪ ⎪ ⎪-- ⎪⎪ ⎪⋅=⎪ ⎪ ⎪ ⎪ ⎪ ⎪-⎝⎭⎝⎭⎝⎭ (1),对方程组的系数矩阵A 作Doolittle 分解;(2),用所得的Doolittle 分解求该线性方程组的解.(2006-2007)5,设线性方程组:12312312323153478113x x x x x x x x x ++=+-=-++=-(1),对方程组的系数矩阵A 作Doolittle 分解;(2),利用上述分解结果求解该线性方程组.(2004-2005)6,用高斯顺序消去法求解线性方程组:13241234242532431737x x x x x x x x x x +=+=+++=+=.(2010-2011)432110205102051020*******101301013=124317022312002160103701037000242,2,1, 1.x x x ⎛⎫⎛⎫⎛⎫ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪→→⎪ ⎪ ⎪ ⎪ ⎪ ⎪⎝⎭⎝⎭⎝⎭====解答:增广矩阵回代求解:x 7,用高斯顺序消去法求解线性方程组:1231231233472212320x x x x x x x x x -+=-+-=---=.(2009-2010)题型七:条件数及范数1,求线性方程组1212391078981510x x x x x --=+==的系数矩阵A 的条件数cond 1(A),并说明其含义.(2010-2011)1111191008900015910089010015()||||||||19193611A A cond A A A A b ----⎛⎫ ⎪= ⎪⎪⎝⎭⎛⎫ ⎪-- ⎪= ⎪⎪⎪⎝⎭==⨯=解答:系数矩阵条件数远大于,这说明当和有小扰动时会引起解的较大误差,即该方程组是病态的.2,设矩阵15000910089A ⎛⎫ ⎪=-- ⎪ ⎪⎝⎭,求cond ∞(A).(2009-2010) 3,设三阶对称矩阵A 的特征值分别为:-2,1,3,求||A||2及cond 2(A).(2007-2008)222max max max 111-122-12max max max 1222||||()()()3||||(())()=()=1()|||||||| 3.T T A A A A A A A A A A cond A A A λλλλλλ----========解答:()则:4,若n 元线性方程组Ax=b 为病态的,可以得到关于系数矩阵A 的什么性质.(2006-2007)5,若111123124A ⎛⎫⎪= ⎪ ⎪⎝⎭,求cond 1(A).(2005-2006)求cond ∞(A).(2004-2005) 6,设1231032475A -⎛⎫ ⎪=-- ⎪ ⎪-⎝⎭,求1||||||||A A ∞与.(2007-2008)7,若1234A ⎛⎫= ⎪⎝⎭,求谱半径()A ρ.(2005-2006)5332ρ+解答:最大特征值:(A)=题型八:雅可比迭代与高斯-赛德尔迭代1,写出求解方程组1231231237321241021534818x x x x x x x x x -+=--=--=的雅可比迭代公式,并说明其收敛性.(2010-2011)(1)()()123(1)()()213(1)()()312(0)1(3212)71(4215)101(3418)87324102348.k k k k k k k k k J x x x x x x x x +++=-+=--++=--++-⎛⎫ ⎪=-- ⎪ ⎪--⎝⎭解答:雅可比迭代公式为:x 雅可比迭代法迭代矩阵:B 严格对角占优,故求解该方程组的雅可比迭代法关于任意初始向量x 收敛2,设有方程组:132********2112212x x x x x x x -=+=-++=,讨论用雅可比迭代法和高斯-赛德尔迭代法解此方程组的收敛性.(2010-2011)112330200030000202100002000121221000200020031()002110211||0,=0=-=-12J J J L D U B D L U E B B λλλλρ---⎛⎫⎛⎫⎛⎫⎛⎫ ⎪ ⎪ ⎪ ⎪=++=++ ⎪ ⎪ ⎪ ⎪⎪ ⎪ ⎪ ⎪--⎝⎭⎝⎭⎝⎭⎝⎭⎛⎫ ⎪ ⎪⎪=-+=- ⎪ ⎪⎪- ⎪⎝⎭-=解答:A=雅可比迭代矩阵:得,()<1,故用雅可比迭代法解答此方程组对任意(0)1123(0)20031-()00211001211||0,=012-S S S B D L U E B B λλλλρ-⎛⎫ ⎪ ⎪⎪=-+=- ⎪ ⎪⎪ ⎪⎝⎭-===初始向量x 都收敛.高斯赛德尔迭代矩阵:得,()<1,故用高斯赛格尔迭代法解答此方程组对任意初始向量x 都收敛.3,写出求解方程组:123123123532124721535818x x x x x x x x x -+=--=--=的高斯-赛德尔迭代公式,并说明收敛性.(2009-2010)4,用雅可比迭代法求解以313132323A ⎛⎫⎪= ⎪ ⎪-⎝⎭为系数矩阵的线性方程组时,确定其收敛性.(2009-2010)5,设线性方程组123123123221162222x x x x x x x x x -+=-+-=--+=-,讨论分别用雅可比迭代法和高斯-赛德尔迭代法解此线性方程组的收敛性,若收敛,请给出迭代格式.(2008-2009B)6,设线性方程组:1231231232215202225x x x x x x x x x +-=-++=++=-(1),证明求解该方程组的雅可比迭代法关于任意初始向量收敛;相应的高斯-赛德尔迭代法不是关于任意初始向量收敛;(2),取(0)(0,0,0)T x =,用雅可比迭代法进行求解,要求(1)()5||||10k k xx +--<.(2007-2008)11231123022()101220||0,===0)1022()023002||0,0,2,)1-J J J S S S D L U E B D L U E λλλλρλλλλρ---⎛⎫ ⎪=-+=-- ⎪⎪--⎝⎭-=<-⎛⎫⎪=-+=- ⎪⎪⎝⎭-====>解答:(1):B B 解得:,(B B 解得:(B 所以用雅可比迭代法解此方程组对任意初始向量都收敛,而用高斯赛德尔迭代法解此方程组不是对任意初始向量都收敛.(2):(1)()()123(1)()()213(1)()()312(0)(1)(2)(3)(4)2215202225(0,0,0)(15,20,25)(105,60,35)(205,160,65)(205,160,65)k k k k k k k k k T T T TTx x x xx x x x x x x x x +++=-+-=--+=---==--=--=-=-雅可比迭代公式:x 当时,计算得:(精确解).7,设线性方程组:123123123821027325431111x x x x x x x x x ++=--++=-+=-(1),写出求解该方程组的雅可比迭代法的迭代公式和高斯-赛德尔迭代法的迭代公式,并确定其收敛性; (2),取(0)(0,0,0)T x=,用高斯-赛德尔迭代法计算x(3).(2006-2007)8,设线性方程组Ax=b 的系数矩阵232131t A t t ⎛⎫⎪= ⎪ ⎪-⎝⎭,其中t<0,问t 取何值时雅可比迭代法关于任意初始向量都收敛.(2006-2007)12122223021()0310422||()0=0=-,=)12||<1,t<-2,or t>20, 2.J J J t t D L U t t t t E B t t ttt t λλλλλλρ-⎛⎫-- ⎪ ⎪ ⎪=-+=-- ⎪ ⎪ ⎪- ⎪⎝⎭-=-=<<<-解答:雅可比迭代矩阵B 得,,雅可比迭代法对于任意初始向量都收敛,则(B 即:得又故9,1),设线性方程组:121232343243430424x x x x x x x +=+-=-+=-写出求解该方程组的雅可比迭代法的迭代公式,并确定该迭代法的收敛性;2),设线性方程组:123123123104413410811481025x x x x x x x x x ++=++=++=写出求解该方程组的高斯-赛德尔迭代法的迭代公式,并确定该迭代法的收敛性.(2004-2005)10,给定方程组:1231231232251223x x x x x x x x x +-=++=++=(1),用三角分解法解此方程组;(2),写出解此方程组的雅可比迭代公式,说明收敛性;取初始向量x 0=(0,0,0)T,当21||||10k kx x -+-<时,求其解.(2011-2012)11,设()21253sin 3421sincos 4134tan 5k k k k k k k Ak k k kkk⎛⎫- ⎪+ ⎪ ⎪= ⎪+ ⎪ ⎪+ ⎪⎝⎭,求()lim k k A →∞.(2007-2008)()020lim 021205K k A →∞⎛⎫⎪= ⎪ ⎪⎝⎭解答:12,若()()11,lim 1sin sin k k k k k k AA k k k k →∞⎛⎫⎪+=⎪ ⎪⎪⎝⎭求.(2004-2005)()01lim 10K k A→∞⎛⎫= ⎪⎝⎭解答: 题型九:非线性迭代1,设计一个算法求125的值.(2008-2009B)101125(),0.2k k kx x x +=+>解答:牛顿迭代公式:x2,给出用牛顿法求6170的近似值的迭代公式,并确定初值的取值范围.(2010-2011)6661556'5"4"*600066601050517017001701170[5]66()170,()60,()300170()()0,.1170170170(5)17061170()(5)6k k k k k kx x x x x x x x f x x f x x f x x x f x f x x x x x x g x x x +=-=-=-=+=-=>=>>⋅><-=+-=+-解答:转化为方程的正根.由牛顿迭代法得迭代公式:当时,故此时收敛到当0<时,设66'6666611*60170,(0,170)1850()(5)0,(0,170),()(170)0,6:1700,170,(0,170),.0.x g x x g x g xx x x x x ∈=-<∈>=->>∈>故故回到前段.所以当迭代公式也收敛到综上:3,给出用牛顿法求5140近似值的迭代公式,并给出初值的取值范围.(2009-2010)解答:方法同上.4,设φ(x)=x+c(x 2-5),当c 为何值时,x k+1=φ(x k ),(k=0,1,2…)产生的序列{x k }收敛于5;又c 为何值时收敛最快?(2010-2011)2''**1**'*5),||<1,||<1110,=50;51.25k k cx x c ϕϕϕϕϕ+-=-<<-<<解答:(x)=x+c(x (x)=1+2cxx (x )收敛,则有(x )即1+2cx 又,则当(x )=0,即c=-时,收敛最快5,设2()(3)x x c x ϕ=+-,应如何选取常数c 才能使迭代1(),(0,1,2)k k x x k ϕ+==具有局部收敛性?C 取何值时,这个迭代收敛最快?取x 0=2,123c =-计算()x ϕ的不动点,要求当61||10k k x x -+-<时结束迭代.(2004-2005)****21*2'****'**1(),(3)3,()(3)()|133|12|1,11,3,-0,,0.333(2),()0+0,636(3),k k k x x x x c x x x x c x x cx cx x c or c x x ϕϕϕϕ++==+-=±=+-<+<-<<=±<<<<==±±解答:(1),令x 收敛于则故要局部收敛,即|又得根据收敛阶定理,当时,迭代至少二阶收敛,即12cx 得c=故c=时,迭代收敛最快.迭代公式为:2012346*431(3)2321.7113248651.7319268031.7320508041.732050808|10,: 1.732050808.k k x x x x x x x x x x -=--=====-<=又因为|故6,方程x 3-3x-1=0在x=2附近有一根,构造一个局部收敛的不动点迭代法,并说明收敛的理由.(2009-2010)3'3223132(1.5) 1.765174168,(2.5) 2.040827551[1.5,2.5]()[1.5,2.5]11()|||0.33,(13) 5.5xx x x x x ϕϕϕϕϕ+===∈∈=≤<+解答:(x)=取的邻域[1.5,2.5]当时,又因为|故迭代在[1.5,2.5]上整体收敛.7,已知方程42()440f x x x =-+=有一个两重根02x =,请以初值x 0=1.5,用m 重根的牛顿迭代法计算其近似值,要求51||10k k x x -+-<.(2008-2009B)(P204例7.7)8,(1),已知方程240xex +-=在0.6附近有一根x ,迭代法214,0,1,2kx k x ek +=-=是否局部收敛?如果不收敛,试构造一个局部收敛的不动点迭代法,并说明收敛的理由.(2),取x 0=0.6,用你所构造的不动点迭代法求解该方程,迭代至x 5. (3),给出牛顿法求120的近似值的迭代公式,并给出初值的取值范围.(2007-2008)2'2'**1'''1(1):()4,()2|()|1,(0),1(4)211(4),()22(4)1(0)2,(1)3()[0,1]21()||(1)|161(4)2x xk k k k x e x e x x x In x In x x x In In x x x In x ϕϕϕϕϕϕϕϕϕϕ++=-=->>=---=-==∈≤=<=-解答:故该迭代公式不是局部收敛的.构造:理由:取邻域[0,1](x)=故又|故迭代式在[0,1]上整体收敛11021324354101(2),(4),21(4)0.61188771521(4)0.61013645921(4)0.61039483321(4)0.61035672221(4)0.61036234421120(3),(),0.2k k k k kx In x x In x x In x x In x x In x x In x x x x x ++=-=-==-==-==-==-==+>.则9,给定方程x 2+x-2=0,[0,2]x ∈,采用迭代公式xk+1=x k +c(x k 2+x k -2),(k=0,1,2…)求其根,问当c 为何值时,迭代法收敛?又当c 为何值时,迭代法收敛最快?(2011-2012)*2'''1,()(2)()1(21)2(1)||1(21)|1,-0.31(1)=03x x x c x x x c x c c ϕϕϕϕ==++-=++=++<<<解答:当|即时,线性收敛当,即c=-时收敛最快.10,给定方程230x xe -=,[3,4]x ∈(1),构造一种线性收敛的不动点迭代公式求该方程的根(含迭代公式,初值取何值或何区间,迭代法收敛的原因); (2),构造一种二次收敛的不动点迭代公式求该方程的根(含迭代公式,初值取何值或何区间,迭代法收敛的原因).(2011-2012)21111'12102'"0(1),()(3),3.29(3)()(4) 3.8712(),[3,4]23(3),(0,1,2,)[3,4].(2),()3,[3,4](3)0,(4)0()60,()60,[3,4]3k k x x x x In x x x x In x k x f x x e x f f f x x e f x e x x ϕϕϕϕϕ+==≤≤=≤≤∈==∈=-∈><=-<=-<∈=解答:故不动点迭代公式:x 对于任意初值收敛取初值时,牛顿213.6kkx kk k x k x ex x x e+-=--迭代法:收敛,且二次收敛11,方程x 3-x 2-1=0在x=1.5附近有根,建立一个收敛的迭代公式,并证明其收敛性.(2004-2005)122''33312111.51()1(1.3) 1.591715976,(1.6) 1.390625[1.3,1.6]()[1.3,1.6]222(),|()|||0.921.311k k k kx x x x x x x x x x x x x ϕϕϕϕϕϕ++=+==+==∈∈=-=-≤<=+解答:取的邻域[1.3,1.6]故当时,又故迭代公式:在[1.3,1.5]上整体收敛.12,(1),已知方程1020x e x +-=在0.09附近有一根x,迭代法1(210),(0,1,2)k k x In x k +=-=是否局部收敛?如果不收敛,请构造一个局部收敛的不动点迭代法,并说明收敛的理由;(2),取x 0=0.09,用局部收敛的迭代法计算x 5; (3),用牛顿法求3234的近似值,并给出初值的取值.(2006-2007)'''*1''5(1),()(210),()15|()|1,[0,1],|()|>1.11510111(),()51010(0)0.1,(0.12)0.087250323[0,0.12]()[0,0.12]()|kx k x xx In x x xx x x x e x e x e x x x ϕϕϕϕϕϕϕϕϕϕ+-=-=->∈=-=-=-==∈∈≤解答:显然故该迭代公式不是局部收敛的构造:因为取[0,0.12]邻域考察故当时,又|'0.12110.09010.09058257820.09051881530.0905241|(0.12)|||0.1131101151011(2),510110.09,0.090582578510110.090518815510110.09052579651011510k kx k x k e x e x e x x e x e x e x e ϕ++=-<<=-=-==-==-==-==-故迭代公式:在[0,0.12]上整体收敛.57960.09052503151200.090525031110.0905251155102117(3),()30.k k k x e x x x +==-==+>使用迭代公式:进行求解.初值:x13,设方程x 3-3x-1=0在x=2附近有根;1),证明该方程在区间[1.5,2.5]内有唯一根x *;2),确定迭代函数φ(x).当初始值x 0在何区间取值时,迭代公式x k+1=φ(x k ),(k=0,1,2…)收敛到x *,并说明理由. 3),写出求解该方程组的牛顿法迭代公式,当初始值x 0在何区间取值时,牛顿法迭代公式收敛到x,并说明理由.取x 0=1.8,用牛顿法迭代公式计算x,要求(1)()4||||10k k x x +--<.4),写出求解该方程的弦截法迭代公式,当初始值在何区间取值时,弦截法迭代公式收敛到x,并说明理由.(2005-2006)3'2'331223(1),()31,()33(1.5) 2.125,(2.5)7.125(1.5)(2.5)0,()0()0,[1.5,2.5][1.5,2.5].(2),3121(3),,3333()3k k k k k k k f x x x f x x f f f f f x f x x x x x x x x x f x x +=--=-=-=⋅<=>∈--+=-=--=-解答:证明:故在[1.5,2.5]内有根.又故方程在区间内有唯一根牛顿法迭代公式:'2"1,()33,()6x f x x f x x-=-=题型十:稳定算法1,对给定的x ,下列两式能否直接计算,说明理由;如果不能,请给出变换算式:(1)21x x +-,x 很大;(2)311x +-,|x|很小.(2010-2011)223331(1):1111=.1+1x x x x x x x +-=+++-+解答:不能直接计算,因为两个相近的数相减,会产生较大的误差:;2,为了提高计算精度,当正数x 很大时,计算1x x +-时应转化成什么形式.(2005-2006)3,给出计算积分1,(0,1,2,10)10nnx I dx n x ==+⎰的递推稳定算法和初值.(2010-2011) 1111111000-11110002010101101010101=101011111)11101010(1)11121[].2111)101)220(1)n n n n n n n n n n x x dx x dx x dx I I x x nn n x x x dx dx dx n x n n n n ----+-===-=-++-=<<=+++=+=+++⎰⎰⎰⎰⎰⎰解:I 该算法不稳定,变形得:I 因为(取初值I ((4,设计一种求1x n nI e x dx =⎰(n 为非负整数)稳定的递推算法,包括递推公式,初值的确定;当初值201221e I =⋅时,利用上述稳定的递推公式计算三个连续的积分值.(2011-2012)题型十一:部分证明题1,利用差分的性质证明:12+22+…n 2=n(n+1)(2n+1)/6222()12,g n n n =++证明:设函数对任意的建立差分表:g(n)(n+1)22n+3 2 g(n+1) (n+2)2 2n+5 2 g(n+2) (n+3)2 2n+7 g(n+3) (n+4)2 g(n+4)函数g(n)的三阶差分是与n 无关的非零常数,故g(n)是n 的三次多项式:3(1)1,(2)5,(3)14,(4)30111()()14521231(1)(2)(1)(2)(3)(1)(21)14521!2!3!6g g g g n n n g n N n n n n n n n n n n ====---⎛⎫⎛⎫⎛⎫==+++ ⎪ ⎪ ⎪⎝⎭⎝⎭⎝⎭------++=+⋅+⋅+⋅=按等距节点牛顿向前插值公式建立三次插值多项式,则2,证明:n+1个互异节点的插值型求积公式的代数精确度至少为n.(2010-2011)(1)0()(),.(1)!n nbi ai f x x dx n ζ+=-+∏⎰证明:截断误差R[f]=易证 3,若0{()}ni i l x =是关于互异节点0{}ni i x =的拉格朗日插值基函数组,函数0011()()()(),(1)n n f x x l x x l x x l x n =++≥,证明:f(x)≡x.(2009-2010)00110()()()()()()()()n n i i n n i f x L x f x l x x l x x l x x l x f x x=≈==+++≡∑证明:故:4,证明:0101'()[()()]"()2hf x f x f x f h ζ=--,其中h=x 1-x 0,01(,)x x ζ∈.(2009-2010)"'20000"'211001010'"010())()()()2!(),())()()()2!1()[()()]()2f f x x x x x f x x f x f x x x x x hf x f x f x f h ζζζ+-+-==+-+-=--证明:由泰勒公式得f(x)=f(x 令则f(x 整理得: 5,证明:关于互异节点0{}ni i x =的拉格朗日插值基函数0{()}ni i l x =满足恒等式012()()()()1n l x l x l x l x +++≡.(2008-2009B)(2006-2007B)(2004-2005)120(1)(1)1010()1,(),,1=L ()()()()()()()1,()0,()()0(1)!()()()()1n n n n i n i n n n n ni n i f x f x x x x x R x l x f x R x f f x fx R x W x n l x l x l x l x ζ=+++==+=+=≡==+=+++≡∑∑证明:令对在上进行拉格朗日插值,有因故故:6,证明求积公式()[()()]2bab af x dx f a f b -≈+⎰的截断误差:3"()[](),12f R f b a ηη=--∈其中:(a,b).(2007-2008) (1)001(2)(2)(2)33()()(1)!1,,()()()1"()()()()()()()2!2!2!612n nb i ai b b aa f x x dx n n x a xb f f f f x a x b dx x a x b dx a b b a ζζηηη+=-+===--=--=⋅-=--∏⎰⎰⎰证明:插值型求积公式截断误差R[f]=R[f]=7,设矩阵A 为可逆上三角阵,证明A -1仍为上三角阵,并导出求逆算法.(2006-2007B)8,设x k =a+kh(k=0,1,2;h>0),f(x)的三阶导数连续,证明:2(3)102021'()[()()](),(,)26h f x f x f x f x x h ζζ=-+-∈其中为中值.(2011-2012)001122120201201201021012202112020101222,),,),,)()()()()()()()()()()()()()()()()()()()()()()()()(22x y x y x y x x x x x x x x x x x x x f x f x f x x x x x x x x x x x x x x x x x x x x x x x x x f x f x f x h h h ------=++------------=-+证明:过(((的拉格朗日插值多项式为:L 12'2102(3)201202(3)'''1210122'(3)10202)1()[()()]2()()()()()(),(,)3!()()()[()()()]3!1()[()()](),(,)26x x L x f x f x hf f x L x x x x x x x x x f f x L x x x x x x x h f x f x f x f x x h ηηηζζ==-+-=---∈-=---=-+-∈又故:。
定积分练习题

定积分练习题一、基本概念题1. 计算定积分 $\int_{0}^{1} (3x^2 + 4) \, dx$。
2. 计算定积分 $\int_{1}^{2} (x^3 2x) \, dx$。
3. 设函数 $f(x) = x^2 3x + 2$,求 $\int_{1}^{3} f(x) \,dx$。
4. 已知函数 $g(x) = \sqrt{1 x^2}$,求 $\int_{1}^{1} g(x) \, dx$。
5. 计算 $\int_{0}^{\pi} \sin x \, dx$。
二、定积分的性质题6. 利用定积分的性质,计算 $\int_{0}^{2} (3x^2 + 4x) \,dx$。
7. 已知 $\int_{0}^{1} f(x) \, dx = 2$,求 $\int_{1}^{2}f(x) \, dx$。
8. 设 $f(x)$ 是奇函数,证明 $\int_{a}^{a} f(x) \, dx = 0$。
9. 已知 $\int_{0}^{1} (f(x) + g(x)) \, dx = 5$,$\int_{0}^{1} (f(x) g(x)) \, dx = 3$,求 $\int_{0}^{1} f(x) \, dx$ 和 $\int_{0}^{1} g(x) \, dx$。
三、定积分的计算题10. 计算 $\int_{0}^{\pi} x \cos x \, dx$。
11. 计算 $\int_{0}^{\frac{\pi}{2}} \ln(\sin x) \, dx$。
12. 计算 $\int_{1}^{e} \frac{1}{x} \, dx$。
13. 计算 $\int_{0}^{1} \frac{1}{\sqrt{1 x^2}} \, dx$。
14. 计算 $\int_{0}^{2} |x 1| \, dx$。
四、定积分的应用题15. 计算由曲线 $y = x^2$,直线 $x = 2$ 和 $y = 0$ 所围成的图形的面积。
数值分析练习1-3章

第一章 绪论一、填空题1、 已知 71828.2e =,求x 的近似值a 的有效数位和相对误差:题号精确数xx 的近似数aa 的有效数位a 的相对误差⑴ e 2.7 ⑵ e 2.718 ⑶ e/100 0.027 ⑷e/1000.027182、 设原始数据x 1,x 2,x 3和x 4的近似值(每位均为有效数字)如下:a 1=1.1021,a 2=0.031,a 3=385.6,a 4=56.430则 ⑴ a 1+a 2+a 4= ,相对误差界为 ; ⑵ a 1a 2a 3= ,相对误差界为 ; ⑶ a 2/a 4= ,相对误差界为 。
二、为使20的近似值的相对误差小于0.01%,问应取多少位有效数字?三、当x 接近于0时,怎样计算xxsin cos 1-以及当x 充分大时,怎样计算x x -+1,才会使其结果的有效数字不会严重损失。
四、在数值计算中,为了减小误差,应该尽量避免的问题有哪些?并举出相应的实例.五、对于序列,1,0,9991=+=⎰n dx x x I nn ,试构造两种递推算法计算10I ,在你构造的算法中,那一种是稳定的,说明你的理由;第二章 插值法1、在互异的n+1个点处满足插值条件P(x i )=y i ,(i=0,1,…n)的次数不高于n 的多项式是( )的(A)存在且唯一 (B)存在 (C)不存在 (D)不唯一2、当f(x)是次数不超过n 的多项式时,f(x)的插值多项式是 ( )(A)不确定 (B)次数为n (C)f(x)自身 (D )次数超过n 3、 插值基函数的和∑=nj jx l)(= ( )(A)0 (B)1 (C)2 (D)不确定4、 设f(x)=x 3-x+5,则f[20,21,22,23]= ( ); f[20,21,22,23,24]= ( )(A)0 (B)1 (C)2 (D)不确定5、( )插值方法具有公式整齐、程序容易实现的优点,而( )插值方法计算灵活,如果节点个数变化时,不需要重新构造多项式,它们都是( )的方法(A)构造性 (B)解方程组 (C)拉格朗日 (D)牛顿6、一般地,内插公式比外推公式( ),高次插值比低次插值( ),但当插值多项式的次数高于七、八次时,最好利用( )插值公式 (A)粗糙 (B)精确 (C)分段低次 (D)高次7、整体光滑度高,收敛性良好,且在外型设计、数值计算中应用广泛的分段插值方法为( ).(A)分段线性插值 (B)分段抛物插值 (C)分段三次埃尔米特插值 (D)三次样条插值。
数值计算课后习题答案

习 题 一 解 答1.取3.14,3.15,227,355113作为π的近似值,求各自的绝对误差,相对误差和有效数字的位数。
分析:求绝对误差的方法是按定义直接计算。
求相对误差的一般方法是先求出绝对误差再按定义式计算。
注意,不应先求相对误差再求绝对误差。
有效数字位数可以根据定义来求,即先由绝对误差确定近似数的绝对误差不超过那一位的半个单位,再确定有效数的末位是哪一位,进一步确定有效数字和有效数位。
有了定理2后,可以根据定理2更规范地解答。
根据定理2,首先要将数值转化为科学记数形式,然后解答。
解:(1)绝对误差:e(x)=π-3.14=3.14159265…-3.14=0.00159…≈0.0016。
相对误差:3()0.0016()0.51103.14r e x e x x -==≈⨯有效数字:因为π=3.14159265…=0.314159265…×10,3.14=0.314×10,m=1。
而π-3.14=3.14159265…-3.14=0.00159…所以│π-3.14│=0.00159…≤0.005=0.5×10-2=21311101022--⨯=⨯所以,3.14作为π的近似值有3个有效数字。
(2)绝对误差:e(x)=π-3.15=3.14159265…-3.14=-0.008407…≈-0.0085。
相对误差:2()0.0085()0.27103.15r e x e x x --==≈-⨯有效数字:因为π=3.14159265…=0.314159265…×10,3.15=0.315×10,m=1。
而π-3.15=3.14159265…-3.15=-0.008407…所以│π-3.15│=0.008407……≤0.05=0.5×10-1=11211101022--⨯=⨯所以,3.15作为π的近似值有2个有效数字。
(3)绝对误差:22() 3.141592653.1428571430.0012644930.00137e x π=-=-=-≈-相对误差:3()0.0013()0.4110227r e x e x x--==≈-⨯有效数字:因为π=3.14159265…=0.314159265…×10, 223.1428571430.3142857143107==⨯,m=1。
用递推公式计算定积分(matlab版)上课讲义

0.1823 -0.4116 2.3914 -11.7069 58.7346 -293.5063
仅供学习与交流,如有侵权请联系网站删除 谢谢4
精品资料
%再显示 y(7)—y(11) ans =
1.0e+005 * 0.0147
的公式。
仅供学习与交流,如有侵权请联系网站删除 谢谢8
利用递推公式:y(n-1)= - *y(n),n=20,19,…,1.
而且,由 = *
≤
≤*
=
可取:y(20)≈ *(
)≈0.008730.
仅供学习与交流,如有侵权请联系网站删除 谢谢2
精品资料
实验内容: 对算法一,程序代码如下: function [y,n]=funa() syms k n t; t=0.182322; n=0; y=zeros(1,20); y(1)=t; for k=2:20 y(k)=1/k-5*y(k-1); n=n+1; end y(1:6) y(7:11) 对算法二,程序代码如下: %计算定积分; %n--表示迭代次数; %y 用来存储结果; function [y,n]=f(); syms k y_20; y=zeros(21,1); n=1;
Columns 12 through 20 -0.0000 0.0000 -0.0001 0.0006 -0.0029 0.0143 -0.0717 0.3583 -1.7916
n = 19
算法二结果: >> [y,b]=f
仅供学习与交流,如有侵权请联系网站删除 谢谢6
精品资料
y= 0.1823 0.0884 0.0580 0.0431 0.0343 0.0285 0.0243 0.0212 0.0188 0.0169 0.0154 0.0141 0.0130 0.0120 0.0112 0.0105 0.0099 0.0093 0.0089 0.0083 0.0087
递推算法——精选推荐

递推算法递推法是一种重要的数学方法,它在数学的各个领域中都有着广泛的应用。
同时,它也是计算机用于数值计算中的一种重要算法。
1.认识递推常常遇到这样的问题:在一个序列中,下一项的值对其前一项有着某种依赖关系,求某项的值要从第一项起经过逐次推算而得到。
例如:数列0,3,6,9,12,15,…该数列的后一项的值是前一项的值加3,欲求第十项,必须先用第一项的值加3,求出第二项,然后求出第三项,第四项,第五项,…,直到第十项,当然必须事先给定第一项的值(称为边界条件或初始条件)。
可以看出,第n项的值等于第n-1项的值加3。
即:a n=a n-1+3, (n>1) (递推公式)a1=0, (n=1) (边界条件)这种在规定的初始条件下,找出后项对前项的依敕关系的操作,称为递推。
表示某项和它前面若干项的关系式就叫作递推公式。
在实际问题中类似的很多,处理这类问题的理想方法是用归纳法求出通项公式。
上例中的通项公式为a n=(n-1)*3 (n>=1)。
但是在许多情况下,要得到数列的通项公式是比较困难的,而通过已知条件归纳出一个递推关系则相对容易。
这时我们可以采用递推技术,避开求通项公式的麻烦,把一个复杂问题的求解,分解成为若干步重复的简单运算,由边界条件出发进行递推,最后得到最终结果,充分发挥出计算机擅长于重复处理的特长。
例1.有一组数规律如下:0,5,5,10,15,25,40,…,x n ,…。
求出该数列第n 项数值。
分析:设f(n)表示数列中第n项的数值,则f(1)=0 ,f(2)=5 是初始条件,f(n)=f(n-2)+f(n-1)(n≥3)是递推公式。
在语言实现上,我们取j、k、p三个变量,分别表示前二项、前一项与当前项,j、k分别取初值为0与5。
第一次通过递推公式p=j+k得到第三项,并进行移位,即j取k值、k取p值,为下次递推作准备;……;如此反复,经过n-2次的递推,p就是第n项的值。
用递推公式计算定积分(matlab版)

用递推公式计算定积分实验目的:1.充分理解不稳定的计算方法会造成误差的积累,在计算过程中会导致误差的迅速增加,从而使结果产生较大的误差。
2.在选择数值计算公式来进行近似计算时,应学会选用那些在计算过程中不会导致误差迅速增长的计算公式。
3.理解不稳定的计算公式造成误差积累的来源及具体过程;4.掌握简单的matlab语言进行数值计算的方法。
实验题目:对n=0,1,2,…,20,计算定积分:实验原理:由于y(n)== –在计算时有两种迭代方法,如下:方法一:y(n)=– 5*y(n-1),n=1,2,3, (20)取y(0)== ln6-ln5 ≈0.182322方法二:利用递推公式:y(n-1)=-*y(n),n=20,19, (1)而且,由= * ≤≤*= 可取:y(20)≈*()≈0.008730.实验内容:对算法一,程序代码如下:function [y,n]=funa()syms k n t;t=0.182322;n=0;y=zeros(1,20);y(1)=t;for k=2:20y(k)=1/k-5*y(k-1);n=n+1;endy(1:6)y(7:11)对算法二,程序代码如下:%计算定积分;%n--表示迭代次数;%y用来存储结果;function [y,n]=f();syms k y_20;y=zeros(21,1);n=1;y_20=(1/105+1/126)/2;y(21)=y_20;for k=21:-1:2y(k-1)=1/(5*(k-1))-y(k)/5;n=n+1;end实验结果:由于计算过程中,前11个数字太小,后9个数字比较大,造成前面几个数字只显示0.0000的现象,所以先输出前6个,再输出7—11个,这样就能全部显示出来了。
算法一结果:[y,n]=funa%先显示一y(1)—y(6)ans =0.1823-0.41162.3914-11.706958.7346-293.5063%再显示y(7)—y(11) ans =1.0e+005 *0.0147-0.07340.3669-1.83469.1728y =1.0e+012 * Columns 1 through 110.0000-0.00000.0000-0.00000.0000-0.00000.0000-0.00000.0000-0.00000.0000Columns 12 through 20 -0.00000.0000-0.00010.0006-0.00290.0143-0.07170.3583-1.7916n = 19算法二结果:>> [y,b]=f y =0.18230.08840.05800.04310.03430.02850.02430.02120.01880.01690.01540.01410.01300.01200.01120.01050.00990.00930.00890.00830.0087b =21实验分析:从两题的计算结果可以看出来,算法一是不稳定的,而算法二是稳定的。