文档库 最新最全的文档下载
当前位置:文档库 › 数值分析作业

数值分析作业

数值分析作业
数值分析作业

分别取步长h=0.1,0.05,0.01,0.0005,用显示欧拉法和隐式

欧拉法

求解y‘ = -5y ,y (0) =1由结果分析算法的稳定性。

解:显式欧拉法函数如下:

fun ctio n [x,y]=Euler(fu n,xO,yO,xN,N)

h为区间步长%fun为一阶微分方程的函数,xO、y0为初始条件,xN为取值范围一个端点,

%N为区间个数,x为Xn构成的向量,y为Yn构成的向量

x=zeros(1,N+1);

y=zeros(1,N+1);

x(1)=x0;

y(1)=y0;

h=(xN-x0)/N;

for n=1:N

x( n+1)=x( n)+h;

y( n+1)=y( n)+h*feval(fu n,x (n ),y( n));

end

h=0.5h=0.1h=0.05h=0.01h=0.005

用显式欧拉法作出图象:

f=@(x,y)-5*y; h=0.1;

[x,y]=Euler(f,0,1,1,1/h); plot(x,y,'.'); hold on; h=0.05;

[x,y]=Euler(f,0,1,1,1/h); plot(x,y,'*'); hold on; h=0.01;

[x,y]=Euler(f,0,1,1,1/h); plot(x,y,'-'); hold on; h=0.005;

[x,y]=Euler(f,0,1,1,1/h); plot(x,y,':'); hold on;

不同步长显示欧拉法所得图象

隐式欧拉法函数如下:

function [x,y]=euler2(fun,x0,y0,xN,N) %欧拉向后公式,fun 为一阶微分方程函数,xO、y0为初始条件%xN为取值范围一端点,h为步长,n为区间个

数x=zeros(1,N+1); y=zeros(1,N+1);

x(1)=xO;y(1)=yO;

h=(xN-xO)/N;

for n=1:N

x(n+1)=x(n)+h;

zO=y(n)+h*feval(fun,x(n),y(n));

for k=1:3

z1=y(n)+h*feval(fun,x(n+1),zO);

if abs(z1-zO)<1e-3

break;

end zO=z1;

end y(n+1)=z1;

end

用隐式欧拉法做出图像:

f=@(x,y)-5*y;

h=O.1;

[x,y]=euler2(f,O,1,1,1/h); plot(x,y,'.');

hold on;

h=O.O5;

[x,y]=euler2(f,O,1,1,1/h);

plot(x,y,'*');

hold on;

h=O.O1;

[x,y]=euler2(f,O,1,1,1/h);

plot(x,y,'-');

hold on;

h=O.OO5;

[x,y]=euler2(f,O,1,1,1/h);

plot(x,y,':');

hold on;

h=O.OO1;

[x,y]=euler2(f,O,1,1,1/h);

plot(x,y,'p');

hold on;

不同步长隐式欧拉法所得图象

Q.

a

0 J

D.3

结论:从图象可以直观看出,显示欧拉法和隐式欧拉法都是比较稳定的。

数值分析试卷及答案

二 1求A的LU分解,并利用分解结果求 解由紧凑格式 故 从而 故 2求证:非奇异矩阵不一定有LU分解 证明设非奇异,要说明A不一定能做LU分解,只需举出一个反例即可。现考虑矩阵,显然A为非奇异矩阵。若A有LU分解,则 故,而,显然不能同时成立。这矛盾说明A不能做LU分解,故只假定A非奇异并不能保证A能做LU分解,只有在A的前阶顺序主子式 时才能保证A一定有LU分解。

3用追赶法求解如下的三对角方程组 解设有分解 由公式 其中分别是系数矩阵的主对角线元素及其下边和上边的次对角线元素,故有 从而有 故,,, 故,,,

4设A是任一阶对称正定矩阵,证明是一种向量范数 证明(1)因A正定对称,故当时,,而当时, (2)对任何实数,有 (3)因A正定,故有分解,则 故对任意向量和,总有 综上可知,是一种向量范数。 5 设,,已知方程组的精确解为 (1)计算条件数; (2)若近似解,计算剩余; (3)利用事后误差估计式计算不等式右端,并与不等式左边比较,此结果说明了什么?解(1) (2) (3)由事后误差估计式,右端为 而左端

这表明当A为病态矩阵时,尽管剩余很小,误差估计仍然较大。因此,当A病态时,用大小作为检验解的准确度是不可靠的。 6矩阵第一行乘以一数成为,证明当时,有最小值 证明设,则 又 故 从而当时,即时,有最小值,且 7讨论用雅可比法和高斯-赛德尔法解方程组时的收敛性。如果收敛,比较哪一种方 法收敛较快,其中 解对雅可比方法,迭代矩阵 , 故雅可比法收敛。 对高斯-赛德尔法,迭代矩阵

,故高斯-赛德尔法收敛。 因=故高斯-赛德尔法较雅可比法收敛快。 8设,求解方程组,求雅可比迭代法与高斯-赛德尔迭代法收敛的充要条件。 解雅可比法的迭代矩阵 , 故雅可比法收敛的充要条件是。 高斯-赛德尔法的迭代矩阵 ,

数值分析大作业-三、四、五、六、七

大作业 三 1. 给定初值 0x 及容许误差 ,编制牛顿法解方程f (x )=0的通用 程序. 解:Matlab 程序如下: 函数m 文件:fu.m function Fu=fu(x) Fu=x^3/3-x; end 函数m 文件:dfu.m function Fu=dfu(x) Fu=x^2-1; end 用Newton 法求根的通用程序Newton.m clear; x0=input('请输入初值x0:'); ep=input('请输入容许误差:'); flag=1; while flag==1 x1=x0-fu(x0)/dfu(x0); if abs(x1-x0)

while flag1==1 && m<=10^3 x1=x0-fu(x0)/dfu(x0); if abs(x1-x0)=ep flag=0; end end fprintf('最大的sigma 值为:%f\n',sigma); 2.求下列方程的非零根 5130.6651()ln 05130.665114000.0918 x x f x x +??=-= ?-???解:Matlab 程序为: (1)主程序 clear clc format long x0=765; N=100; errorlim=10^(-5); x=x0-f(x0)/subs(df(),x0); n=1; while nerrorlim n=n+1; else break ; end x0=x; end disp(['迭代次数: n=',num2str(n)]) disp(['所求非零根: 正根x1=',num2str(x),' 负根x2=',num2str(-x)]) (2)子函数 非线性函数f function y=f(x) y=log((513+0.6651*x)/(513-0.6651*x))-x/(1400*0.0918); end

数值分析习题集及答案[1].(优选)

数值分析习题集 (适合课程《数值方法A 》和《数值方法B 》) 长沙理工大学 第一章 绪 论 1. 设x >0,x 的相对误差为δ,求ln x 的误差. 2. 设x 的相对误差为2%,求n x 的相对误差. 3. 下列各数都是经过四舍五入得到的近似数,即误差限不超过最后一位的半个单位,试指出 它们是几位有效数字: *****123451.1021,0.031,385.6,56.430,7 1.0.x x x x x =====? 4. 利用公式(3.3)求下列各近似值的误差限: ********12412324(),(),()/,i x x x ii x x x iii x x ++其中**** 1234 ,,,x x x x 均为第3题所给的数. 5. 计算球体积要使相对误差限为1%,问度量半径R 时允许的相对误差限是多少? 6. 设028,Y =按递推公式 1n n Y Y -=( n=1,2,…) 计算到100Y .27.982(五位有效数字),试问计算100Y 将有多大误差? 7. 求方程2 5610x x -+=的两个根,使它至少具有四位有效数字27.982). 8. 当N 充分大时,怎样求2 1 1N dx x +∞+?? 9. 正方形的边长大约为100㎝,应怎样测量才能使其面积误差不超过1㎝2 ? 10. 设 212S gt = 假定g 是准确的,而对t 的测量有±0.1秒的误差,证明当t 增加时S 的绝对 误差增加,而相对误差却减小. 11. 序列 {}n y 满足递推关系1101n n y y -=-(n=1,2,…),若0 1.41y =≈(三位有效数字), 计算到 10y 时误差有多大?这个计算过程稳定吗? 12. 计算6 1)f =, 1.4≈,利用下列等式计算,哪一个得到的结果最好? 3 -- 13. ()ln(f x x =,求f (30)的值.若开平方用六位函数表,问求对数时误差有多大?若

数值分析试卷及其答案

1、(本题5分)试确定7 22 作为π的近似值具有几位有效数字,并确定其相对误差限。 解 因为 7 22 =3.142857…=1103142857 .0-? π=3.141592… 所以 312102 11021005.0001264.0722--?=?=<=- π (2分) 这里,3,21,0=-=+-=n n m m 由有效数字的定义可知7 22 作为π的近似值具有3位有效数字。 (1分) 而相对误差限 3102 1 0005.00004138.0001264.07 22-?= <≈= -= π π πε r (2分) 2、(本题6分)用改进平方根法解方程组:??? ?? ??=????? ??????? ??--654131*********x x x ; 解 设???? ? ??????? ? ?????? ??===????? ??--11111 1 131321112323121 32 132 31 21 l l l d d d l l l LDL A T 由矩阵乘法得: 5 7,21,215 27 ,25,2323121321- ==-== -==l l l d d d (3分) 由y D x L b Ly T 1 ,-==解得 T T x y )9 23 ,97,910(,)563, 7,4(== (3分) 3、(本题6分)给定线性方程组???????=++-=+-+=-+-=-+17 7222382311387 510432143213 21431x x x x x x x x x x x x x x 1)写出Jacoib 迭代格式和Gauss-Seidel 迭代格式; 2)考查Jacoib 迭代格式和Gauss-Seidel 迭代格式的敛散性; 解 1)Jacoib 迭代格式为

数值分析作业答案

数值分析作业答案 插值法 1、当x=1,-1,2时,f(x)=0,-3,4,求f(x)的二次插值多项式。 (1)用单项式基底。 (2)用Lagrange插值基底。 (3)用Newton基底。 证明三种方法得到的多项式是相同的。 解:(1)用单项式基底 设多项式为: , 所以: 所以f(x)的二次插值多项式为: (2)用Lagrange插值基底 Lagrange插值多项式为: 所以f(x)的二次插值多项式为: (3) 用Newton基底: 均差表如下: xk f(xk) 一阶均差二阶均差 1 0 -1 -3 3/2 2 4 7/ 3 5/6 Newton插值多项式为: 所以f(x)的二次插值多项式为: 由以上计算可知,三种方法得到的多项式是相同的。 6、在上给出的等距节点函数表,若用二次插值求ex的近似值,要使截断误差不超过10-6,问使用函数表的步长h应取多少? 解:以xi-1,xi,xi+1为插值节点多项式的截断误差,则有 式中 令得 插值点个数

是奇数,故实际可采用的函数值表步长 8、,求及。 解:由均差的性质可知,均差与导数有如下关系: 所以有: 15、证明两点三次Hermite插值余项是 并由此求出分段三次Hermite插值的误差限。 证明:利用[xk,xk+1]上两点三次Hermite插值条件 知有二重零点xk和k+1。设 确定函数k(x): 当或xk+1时k(x)取任何有限值均可; 当时,,构造关于变量t的函数 显然有 在[xk,x][x,xk+1]上对g(x)使用Rolle定理,存在及使得 在,,上对使用Rolle定理,存在,和使得 再依次对和使用Rolle定理,知至少存在使得 而,将代入,得到 推导过程表明依赖于及x 综合以上过程有: 确定误差限: 记为f(x)在[a,b]上基于等距节点的分段三次Hermite插值函数。在区间[xk,xk+1]上有 而最值 进而得误差估计: 16、求一个次数不高于4次的多项式,使它满足,,。

数值分析大作业三 四 五 六 七

大作业 三 1. 给定初值 0x 及容许误差 ,编制牛顿法解方程f (x )=0的通用程序. 解:Matlab 程序如下: 函数m 文件:fu.m function Fu=fu(x) Fu=x^3/3-x; end 函数m 文件:dfu.m function Fu=dfu(x) Fu=x^2-1; end 用Newton 法求根的通用程序Newton.m clear; x0=input('请输入初值x0:'); ep=input('请输入容许误差:');

flag=1; while flag==1 x1=x0-fu(x0)/dfu(x0); if abs(x1-x0)

while flag==1 sigma=k*eps; x0=sigma; k=k+1; m=0; flag1=1; while flag1==1 && m<=10^3 x1=x0-fu(x0)/dfu(x0); if abs(x1-x0)=ep flag=0;

end end fprintf('最大的sigma 值为:%f\n',sigma); 2.求下列方程的非零根 5130.6651()ln 05130.665114000.0918 x x f x x +?? =-= ?-???解: Matlab 程序为: (1)主程序 clear clc format long x0=765; N=100; errorlim=10^(-5); x=x0-f(x0)/subs(df(),x0); n=1;

数值分析作业思考题汇总

¥ 数值分析思考题1 1、讨论绝对误差(限)、相对误差(限)与有效数字之间的关系。 2、相对误差在什么情况下可以用下式代替 3、查阅何谓问题的“病态性”,并区分与“数值稳定性”的不同点。 4、取 ,计算 ,下列方法中哪种最好为什么(1)(3 3-,(2)(2 7-,(3) ()3 1 3+ ,(4) ()6 1 1 ,(5)99- , 数值实验 数值实验综述:线性代数方程组的解法是一切科学计算的基础与核心问题。求解方法大致可分为直接法和迭代法两大类。直接法——指在没有舍入误差的情况下经过有限次运算可求得方程组的精确解的方法,因此也称为精确法。当系数矩阵是方的、稠密的、无任何特殊结构的中小规模线性方程组时,Gauss消去法是目前最基本和常用的方法。如若系数矩阵具有某种特殊形式,则为了尽可能地减少计算量与存储量,需采用其他专门的方法来求解。 Gauss消去等同于矩阵的三角分解,但它存在潜在的不稳定性,故需要选主元素。对正定对称矩阵,采用平方根方法无需选主元。方程组的性态与方程组的条件数有关,对于病态的方程组必须采用特殊的方法进行求解。 数值计算方法上机题目1 1、实验1. 病态问题 实验目的: 算法有“优”与“劣”之分,问题也有“好”和“坏”之别。所谓坏问题就是问题本身的解对数据变化的比较敏感,反之属于好问题。希望读者通过本实验对此有一个初步的体会。 数值分析的大部分研究课题中,如线性代数方程组、矩阵特征值问题、非线性方程及方程组等都存在病态的问题。病态问题要通过研究和构造特殊的算法来解决,当然一般要付出一些代价(如耗用更多的机器时间、占用更多的存储空间等)。 $ r e x x e x x ** * ** - == 141 . ≈)61

数值分析试卷及其答案2

1、(本题5分)试确定7 22作为π的近似值具有几位有效数字,并确定其相对误差限。 解 因为 7 22=3.142857…=1103142857.0-? π=3.141592… 所以 3 12 10 2 110 21005.0001264.07 22--?= ?= <=- π (2分) 这里,3,21,0=-=+-=n n m m 由有效数字的定义可知7 22作为π的近似值具有3位有效数字。 (1分) 而相对误差限 3 10 2 10005.00004138.0001264.07 22-?= <≈= -= π π πε r (2分) 2、(本题6分)用改进平方根法解方程组:???? ? ??=????? ??????? ??--654131321 112321x x x ; 解 设???? ? ? ?????? ? ?????? ??===????? ? ?--11 1 11113 1321 11232312132 1 32 31 21 l l l d d d l l l LDL A T 由矩阵乘法得: 5 7,21,21527,25,2323121321- == - == -==l l l d d d (3分) 由y D x L b Ly T 1 ,-==解得 T T x y )9 23,97,910( ,)5 63, 7,4(== (3分) 3、(本题6分)给定线性方程组??? ? ? ??=++-=+-+=-+-=-+17722238231138751043214321 321431x x x x x x x x x x x x x x 1)写出Jacoib 迭代格式和Gauss-Seidel 迭代格式; 2)考查Jacoib 迭代格式和Gauss-Seidel 迭代格式的敛散性; 解 1)Jacoib 迭代格式为

数值分析第一次作业及参考答案

数值计算方法第一次作业及参考答案 1. 已测得函数()y f x =的三对数据:(0,1),(-1,5),(2,-1), (1)用Lagrange 插值求二次插值多项式。(2)构造差商表。(3)用Newton 插值求二次插值多项式。 解:(1)Lagrange 插值基函数为 0(1)(2)1 ()(1)(2)(01)(02)2 x x l x x x +-= =-+-+- 同理 1211 ()(2),()(1)36 l x x x l x x x = -=+ 故 2 20 2151 ()()(1)(2)(2)(1) 23631 i i i p x y l x x x x x x x x x =-==-+-+-++=-+∑ (2)令0120,1,2x x x ==-=,则一阶差商、二阶差商为 011215 5(1) [,]4, [,]20(1) 12 f x x f x x ---= =-= =----- 0124(2) [,,]102 f x x x ---= =- 实际演算中可列一张差商表: (3)用对角线上的数据写出插值多项式 2 2()1(4)(0)1*(0)(1)31P x x x x x x =+--+-+=-+ 2. 在44x -≤≤上给出()x f x e =的等距节点函数表,若用二次插值求x e 的近似值,要使 截断误差不超过6 10-,问使用函数表的步长h 应取多少 解: ()40000(), (),[4,4],,,, 1.x k x f x e f x e e x x h x x h x x th t ==≤∈--+=+≤考察点及

(3) 2000 4 43 4 3 () ()[(()]()[()] 3! (1)(1) (1)(1) 3!3! .(4,4). 6 f R x x x h x x x x h t t t e t h th t h e h e ξ ξ =----+ -+ ≤+??-= ≤∈- 则 4 36 ((1)(1) 100.006. t t t h - -+± << Q在点 得 3.求2 () f x x =在[a,b]上的分段线性插值函数() h I x,并估计误差。 解: 22 22 11 1 111 22 11 11 1 () () k k k k h k k k k k k k k k k k k k k k k k k x x x x x x I x x x x x x x x x x x x x x x x x x x x x ++ + +++ ++ ++ + --- =+= --- ?-? -=+- - [] 2 11 22 11 ()()()[()] 11 ()() 44 h h k k k k k k k k R x f x I x x x x x x x x x x x x x h ++ ++ =-=-+- =--≤-= 4.已知单调连续函数() y f x =的如下数据 用插值法计算x约为多少时() 1. f x=(小数点后至少保留4位) 解:作辅助函数()()1, g x f x =-则问题转化为x为多少时,()0. g x=此时可作新 的关于() i g x的函数表。由() f x单调连续知() g x也单调连续,因此可对() g x的数值进行反插。的牛顿型插值多项式为 1()0.110.097345( 2.23)0.451565( 2.23)( 1.10) 0.255894( 2.23)( 1.10)(0.17) x g y y y y y y y - ==-+++++ -++-

数值计算方法大作业

目录 第一章非线性方程求根 (3) 1.1迭代法 (3) 1.2牛顿法 (4) 1.3弦截法 (5) 1.4二分法 (6) 第二章插值 (7) 2.1线性插值 (7) 2.2二次插值 (8) 2.3拉格朗日插值 (9) 2.4分段线性插值 (10) 2.5分段二次插值 (11) 第三章数值积分 (13) 3.1复化矩形积分法 (13) 3.2复化梯形积分法 (14) 3.3辛普森积分法 (15) 3.4变步长梯形积分法 (16) 第四章线性方程组数值法 (17) 4.1约当消去法 (17) 4.2高斯消去法 (18) 4.3三角分解法 (20)

4.4雅可比迭代法 (21) 4.5高斯—赛德尔迭代法 (23) 第五章常积分方程数值法 (25) 5.1显示欧拉公式法 (25) 5.2欧拉公式预测校正法 (26) 5.3改进欧拉公式法 (27) 5.4四阶龙格—库塔法 (28)

数值计算方法 第一章非线性方程求根 1.1迭代法 程序代码: Private Sub Command1_Click() x0 = Val(InputBox("请输入初始值x0")) ep = Val(InputBox(请输入误差限ep)) f = 0 While f = 0 X1 = (Exp(2 * x0) - x0) / 5 If Abs(X1 - x0) < ep Then Print X1 f = 1 Else x0 = X1 End If Wend End Sub 例:求f(x)=e2x-6x=0在x=0.5附近的根(ep=10-10)

1.2牛顿法 程序代码: Private Sub Command1_Click() b = Val(InputBox("请输入被开方数x0")) ep = Val(InputBox(请输入误差限ep)) f = 0 While f = 0 X1 = x0 - (x0 ^ 2 - b) / (2 * b) If Abs(X1 - x0) < ep Then Print X1 f = 1 Else x0 = X1 End If Wend End Sub 例:求56的值。(ep=10-10)

数值分析作业答案part

6.4.设??? ? ? ??=5010010a b b a A ,0det ≠A ,用a ,b 表示解线性方程组f Ax =的雅可比迭代与 高斯—塞德尔迭代收敛的充分必要条件。 解 雅可比迭代法的迭代矩阵 ? ??? ??? ? ??----=???? ? ??----????? ??=-050100100100000001010101 a b b a a b b a B J , ?? ? ?? -=-1003||2ab B I J λλλ,10||3)(ab B J = ρ。 雅可比迭代法收敛的充分必要条件是3 100 ||

数值分析习题集及答案Word版

数值分析习题集 (适合课程《数值方法A 》和《数值方法B 》) 长沙理工大学 第一章 绪 论 1. 设x >0,x 的相对误差为δ,求ln x 的误差. 2. 设x 的相对误差为2%,求n x 的相对误差. 3. 下列各数都是经过四舍五入得到的近似数,即误差限不超过最后一位的半个单位,试指 出它们是几位有效数字: *****123451.1021,0.031,385.6,56.430,7 1.0.x x x x x =====? 4. 利用公式(3.3)求下列各近似值的误差限: ********12412324(),(),()/,i x x x ii x x x iii x x ++其中**** 1234 ,,,x x x x 均为第3题所给的数. 5. 计算球体积要使相对误差限为1%,问度量半径R 时允许的相对误差限是多少? 6. 设028,Y =按递推公式 1n n Y Y -=…) 计算到100Y .27.982(五位有效数字),试问计算100Y 将有多大误差? 7. 求方程2 5610x x -+=的两个根,使它至少具有四位有效数字27.982). 8. 当N 充分大时,怎样求2 1 1N dx x +∞+?? 9. 正方形的边长大约为100㎝,应怎样测量才能使其面积误差不超过1㎝2 ? 10. 设 212S gt = 假定g 是准确的,而对t 的测量有±0.1秒的误差,证明当t 增加时S 的绝对 误差增加,而相对误差却减小. 11. 序列 {}n y 满足递推关系1101n n y y -=-(n=1,2,…),若0 1.41y =≈(三位有效数字), 计算到 10y 时误差有多大?这个计算过程稳定吗? 12. 计算6 1)f =, 1.4≈,利用下列等式计算,哪一个得到的结果最好? 3 -- 13. ()ln(f x x =,求f (30)的值.若开平方用六位函数表,问求对数时误差有多大?

数值分析试卷及其答案1

1. 已知325413.0,325413*2*1==X X 都有6位有效数字,求绝对误差限。(4分) 解: 由已知可知6 5.0102 1 ,0,6,10325413.0016*1=?= =-=?=ε绝对误差限n k k X 2分 620*2102 1 ,6,0,10325413.0-?= -=-=?=ε绝对误差限n k k X 2分 2. 已知?? ???=0 01 A 220- ?????440求21,,A A A ∞ (6分) 解: {}, 88,4,1max 1==A 1分 {}, 66,6,1max ==∞A 1分 () A A A T max 2λ= 1分 ?????=0 1 A A T 4 2 ???? ? -420?????0 01 2 20 - ???? ?440= ?????0 01 80 ???? ?3200 2分 {}32 32,8,1max )(max ==A A T λ

1分 24322==A 3. 设32)()(a x x f -= (6分) ① 写出f(x)=0解的迭代格式 ② 当a 为何值时,)(1k k x x ?=+ (0,1……)产生的序列{}k x 收敛于 2 解: ①迭代格式为: x a x x x a x a x x a x x x f x f x x k k k k k k k k k k 665)(665)(6)()(')(2 2 32 1 += +=---=-=+? 3 分 ②时迭代收敛即当222,112 10)2(',665)('2<<-<-=-= a a x a x ?? 3分 4. 给定线性方程组,其中:?? ?=13A ?? ?2 2,?? ? ???-=13b 用迭代公式 )()()()1(k k k Ax b x x -+=+α(0,1……)求解,问取什么实数α ,可使 迭代收敛 (8分) 解: 所给迭代公式的迭代矩阵为?? ? --???--=-=ααααα21231A I B 2分

数值分析大作业

数值分析报大作业 班级:铁道2班 专业:道路与铁道工程 姓名:蔡敦锦 学号:13011260

一、序言 该数值分析大作业是通过C语言程序编程在Microsoft Visual C++ 6.0编程软件上运行实现的。本来是打算用Matlab软间来计算非线性方程的根的。学习Matlab也差不多有一个多月了,感觉自己编程做题应该没什么问题了;但是当自己真心的去编程、运行时才发现有很多错误,花了一天时间修改、调试程序都没能得到自己满意的结果。所以,我选择了自己比较熟悉的C程序语言来编程解决非线性的求值问题,由于本作业是为了比较几种方法求值问题的收敛速度和精度的差异,选择了一个相对常见的非线性函数来反映其差异,程序运行所得结果我个人比较满意。编写C语言,感觉比较上手,程序出现问题也能比较熟练的解决。最终就决定上交一份C程序语言编程的求值程序了!

二、选题 本作业的目的是为了加深对非线性方程求根方法的二分法、简单迭代法、、牛顿迭代法弦截法等的构造过程的理解;能将各种方法的算法描述正确并且能够改编为程序并在计算机上实现程序的正确合理的运行,能得到自己满意的结果,并且能调试修改程序中可能出现的问题和程序功能的增减修改。本次程序是为了比较各种方法在求解同一非线性方程根时,在收敛情况上的差异。 为了达到上面的条件我选择自己比较熟悉的语言—C语言来编程,所选题目为计算方程f(x)=x3-2x-5=0在区间[2,3]内其最后两近似值的差的绝对值小于等于5 ?的根的几种方法的比较。 110- 本文将二分法、牛顿法、简单迭代法、弦截法及加速收敛法这五种方法在同一个程序中以函数调用的方式来实现,比较简洁明了,所得结果能很好的比较,便于分析;发现问题和得出结论。

数值分析模拟试题

1、 方程组中,,则求解方程组的Jacobi 迭代与Gauss-Seidel 迭代均收敛的a 的范围是___________。 2、,则A 的LDL T 分解中,。 3、,则__________,_______________. 4、已 知,则用复合梯形公式计算求 得,用三点式求得____________. 5、,则_________ ,三点高斯求积公式______________. 6设* 2.40315x =是真值 2.40194x =的近似值,则* x 有________位有效数字。 7 3()1,[0,1,2,3]f x x x f =+-=设 则差商(均差)_____________,[0,1,2,3,4]f =________________。 8 求方程()x f x =根的牛顿迭代格式是__________________。 9.梯形求积公式和复化梯形公式都是插值型求积公式_____(对或错)。 10.牛顿—柯特斯求积公式的系数和()0n n k k C ==∑__________________。 11.用二次拉格朗日插值多项式2()sin0.34L x 计算的值。插值节点和相应的函数值是(0,0),(0.30,0.2955),(0.40,0.3894)。 12.用二分法求方程3()10[1.0,1.5]f x x x =--=在 区间内的一个根,误差限 210ε-=。 13.用列主元消去法解线性方程组 1231231 232346,3525,433032.x x x x x x x x x ++=??++=??++=? 14. 确定求积公式

012()()(0)()h h f x dx A f h A f A f h -≈-++? 。 中待定参数i A 的值(0,1,2)i =,使求积公式的代数精度尽量高;并指出此时求积公式的代数精度。 15、 试求使求积公式的代数精度 尽量高,并求其代数精度。 16.证明区间[a,b]上带权()x ρ的正交多项式(),1,2,n P x n = 的n 个根都是单根,且位于区间(a,b)内。 17.设()()[,],max ()n n a x b f x C a b M f x ≤≤∈=,若取 21cos ,1,2,,222k a b a b k x k n n +--=+= 作节点,证明Lagrange 插值余项有估计式21()max ()!2n n n a x b M b a R x n -≤≤-≤ 18用n=10的复化梯形公式计算时, (1)试用余项估计其误差 (2)用n=10的复化梯形公式计算出该积分的近似值。 19已知方程组AX =f,其中 (1)列出Jacobi 迭代法和Gauss-Seidel 迭代法的分量形式。 (2)求出Jacobi 迭代矩阵的谱半径,SOR 迭代法的最佳松弛参数 和SOR 法 的谱半径(可直接用现有结论) 20试确定常数A ,B ,C 和,使得数值积分公式 有尽可能高的代数精度。试问所得的数值积分公式代数精度是多少? 21证明方程=)(x f x 2-x -3=0在区间(2,3)内有且仅有一个根,并用迭代法求方程在区间(2,3)内的根,精确到小数点后4位。 22设f (1)=2,f (3)=4,f (4)=6,用拉格朗日插值法求f (x )的二次插值多项式P 2(x ),并求f (2)的近似值。

数值分析作业

第二章 1. 题目:运用MATLAB编程实现牛顿迭代 2. 实验操作 1、打开MATLAB程序软件。 2、在MATLAB中编辑如下的M程序。 function [p1,err,k,y]=newton(f,df,p0,delta,max) %f 是要求根的方程(f(x)=0); %df 是f(x)的导数; %p0是所给初值,位于x*附近; %delta是给定允许误差; %max是迭代的最大次数; %p1是newton法求得的方程的近似解; %err是p0的误差估计; %k是迭代次数; p0 for k=1:max p1=p0-feval('f',p0)/feval('df',p0); err=abs(p1-p0); p0=p1; k p1 err y=feval('f',p1) if (err> newton('f','df',1.2,10^(-6),20) 3.实验结果

p0 = 1.2000 k =1 p1=1.1030 err=0.0970 y=0.0329 k= 2 p1=1.0524 err=0.0507 y=0.0084 k =3 p1=1.0264 err=0.0260 y=0.0021 k =4 p1=1.0133 err=0.0131 y=5.2963e-004 k =5 p1=1.0066 err=0.0066 y=1.3270e-004 k =6 p1=1.0033 err=0.0033 y=3.3211e-005 k =7 p1=1.0017 err=0.0017 y=8.3074e-006 k =8 p1=1.0008 err=8.3157e-004 y = 2.0774e-006 k =9 p1=1.0004 err=4.1596e-004 y =5.1943e-007 k=10 p1=1.0002 err=2.0802e-004 y= 1.2987e-007 k=11 p1=1.0001 err=1.0402e-004 y =3.2468e-008 k=12 p1=1.0001 err=5.2014e-005 y=8.1170e-009 k=13 p1=1.0000 err=2.6008e-005 y= 2.0293e-009 k=14 p1=1.0000 err=1.3004e-005 y=5.0732e-010 k=15 p1 =1.0000 err=6.5020e-006 y=1.2683e-010 k=16 p1 =1.0000 err=3.2510e-006 y=3.1708e-011 k=17 p1 =1.0000 err=1.6255e-006 y =7.9272e-012 k=18 p1 =1.0000 err =8.1279e-007 y= 1.9820e-012 ans = 1.0000 结果说明:经过18次迭代得到精确解为1,误差为8.1279e-007。

2012数值分析试卷答案

昆明理工大学2012级硕士研究生试卷 科目: 数值分析 考试时间: 出题教师: 集体 考生姓名: 专业: 学号: 考试要求:考试时间150分钟;填空题答案依顺序依次写在答题纸上,填在试卷卷面上的不予计分;可带计算器。 一、 填空题(每空2分,共40分) 1.设*0.231x =是真值0.228x =的近似值,则*x 有 位有效数字,*x 的相对误差限 为 。 2.设 133)(47+++=x x x x f ,则=]2,,2,2[710 f ,=]2,,2,2[810 f 。 3. 过点)0,2(),0,1(-和)3,1(的二次拉格朗日插值函数为 )(2x L = , 并计 算=)0(2L 。 4.设 32()3245f x x x x =+-+在[]1,1-上的最佳二次逼近多项式为 , 最佳二次平方逼近多项式为 。 5.高斯求积公式 )()()(1101 0x f A x f A dx x f x +≈? 的系数0A = , 1A = ,节点0x = , 1x = 。 6.方程组 b Ax =,,U L D A --=建立迭代公式f Bx x k k +=+)()1(,写出雅可比迭代法和 高斯-赛德尔迭代法的迭代矩阵, =Jacobi B ,=-Seidel Gauss B 。 7.0 0100A ??? =? ???,其条件数2()Cond A = 。 8.设?? ? ???=2113A ,计算矩阵A 的范数,1||||A = , 2||||A = 。

9.求方程 ()x f x =根的牛顿迭代格式是 。 10.对矩阵??? ? ? ??=513252321A 作LU 分解,其L=________________, U= __________________。 二、计算题(每题10分,共50分) 1. 求一个次数不高于4次的多项式P (x ), 使它满足:1)1(,0)0(,0)0('===p p p ,1)1(,'=p ,1)2(=p 并写出其余项表达式(要求有推导过程)。 2. 若用复合梯形公式计算积分 dx e x ? 1 ,问区间[0, 1]应分成多少等分才能使截断误差不超过 5102 1 -?? 若改用复合辛普森公式,要达到同样的精度区间[0, 1]应该分成多少等份? 由下表数据,用复合辛普森公式计算该积分的近似值。 3. 线性方程组b Ax =,其中???? ??????=18.04.08.014.04.04.01A ,T b ]3,2,1[=,(1)建立雅可比迭代法和 高斯-赛德尔迭代法的分量形式。(2)问雅可比迭代法和高斯-赛德尔迭代法都收敛吗 ? 4. 已知如下实验数据4,,1,0),,( =i y x i i , 用最小二乘法求形如x a a y 10+=的经验公式,并 计算最小二乘法的误差。 5. 用改进的欧拉公式(预估-校正方法),解初值问题0)0(,10022=+=y y x dx ,取步长,1.0=h 计算到2.0=x (保留到小数点后四位) 。 三、证明题(共10分) 1. 如果 A 是对称正定矩阵,则A 可唯一地写成T LL A =,其中L 是具有正对角元的下三角 阵。

北航数值分析大作业第一题幂法与反幂法

《数值分析》计算实习题目 第一题: 1. 算法设计方案 (1)1λ,501λ和s λ的值。 1)首先通过幂法求出按模最大的特征值λt1,然后根据λt1进行原点平移求出另一特征值λt2,比较两值大小,数值小的为所求最小特征值λ1,数值大的为是所求最大特征值λ501。 2)使用反幂法求λs ,其中需要解线性方程组。因为A 为带状线性方程组,此处采用LU 分解法解带状方程组。 (2)与140k λλμλ-5011=+k 最接近的特征值λik 。 通过带有原点平移的反幂法求出与数k μ最接近的特征值 λik 。 (3)2cond(A)和det A 。 1)1=n λλ2cond(A),其中1λ和n λ分别是按模最大和最小特征值。 2)利用步骤(1)中分解矩阵A 得出的LU 矩阵,L 为单位下三角阵,U 为上三角阵,其中U 矩阵的主对角线元素之积即为det A 。 由于A 的元素零元素较多,为节省储存量,将A 的元素存为6×501的数组中,程序中采用get_an_element()函数来从小数组中取出A 中的元素。 2.全部源程序 #include #include void init_a();//初始化A double get_an_element(int,int);//取A 中的元素函数 double powermethod(double);//原点平移的幂法 double inversepowermethod(double);//原点平移的反幂法 int presolve(double);//三角LU 分解 int solve(double [],double []);//解方程组 int max(int,int); int min(int,int); double (*u)[502]=new double[502][502];//上三角U 数组 double (*l)[502]=new double[502][502];//单位下三角L 数组 double a[6][502];//矩阵A int main() { int i,k; double lambdat1,lambdat2,lambda1,lambda501,lambdas,mu[40],det;

数值分析作业答案(第5章)

5.1.设A 是对称矩阵且011≠a ,经过一步高斯消去法后,A 约化为 ?? ????21 110 A a a T 证明2A 是对称矩阵。 证明 由消元公式及A 的对称性,有 ,,,3,2,,)2(111 11111 )2(n j i a a a a a a a a a a ji i j ji j i ij ij ==-=- = 故2A 对称。 5.2.设n ij a A )(=是对称正定矩阵,经过高斯消去法一步后,A 约化为 ?? ????21 110 A a a T 其中1)2(2)(-=n ij a A 。证明: (1).A 的对角元素;,,2,1,0n i a ii => (2).2A 是对称正定矩阵。 证明 (1).因为A 对称正定,所以 n i e Ae a i i ii ,,2,1,0),( =>=, 其中T i e )0,,0,1,0,,0( =为第i 个单位向量。 (2).由A 的对称性及消元公式,有 ,,,3,2,,)2(111 11111 )2(n j i a a a a a a a a a a ji i j ji j i ij ij ==-=- = 故2A 也对称。 又由A L A a a T 121110=????? ?,其中

??? ?????- =? ????? ? ?????????--=-111 1 11111 21101 1011n n I a a a a a a L , 可见1L 非奇异,因而对任意0≠x ,由A 的正定性,有 ,0),(),(,011111>=≠x AL x L x AL L x x L T T T T 故T AL L 11正定。 由,000110211 111121111 1?? ? ?? ?=????????-??????=-A a I a a A a a AL L n T T T 而011>a ,故知2A 正定

相关文档
相关文档 最新文档