当前位置:文档之家› 数值分析——编程作业

数值分析——编程作业

数值分析——编程作业
数值分析——编程作业

《数值分析》实验报告

第二章:解线性方程组的直接方法

2、试用MATLAB软件编程实现追赶法求解三对角方程组的算法,并考虑梯形电阻电路问题,电路如下:

其中电路中的各个电流{1i ,2i ,…,8i }须满足下列线性方程组:

R V i i =- 22 21

0 252321=-+-i i i 0 252 432=-+-i i i 0 252 543=-+-i i i 0 252 654=-+-i i i 0 252 765=-+-i i i 0 252 876=-+-i i i 052 87=+-i i

设V 220=V ,Ω=27R ,运用求各段电路的电流量。

解:1481.827

220

≈=

R V 上述方程组可用矩阵表示为:

????

??????

???

?

????????????=

????????????????????????????????????????????????????--------------00

00

00

01481.852

2520000002520000002520000002520000002520000002520000002287654321i i i i i i i i

MatLab 程序: %赋初值;

a=[0 -2 -2 -2 -2 -2 -2 -2]; b=[2 5 5 5 5 5 5 5];

c=[-2 -2 -2 -2 -2 -2 -2]; d=[8.1481 0 0 0 0 0 0 0]; %三对角方程的追赶法

for i=2:8%“追”的过程; a(i)=a(i)/b(i-1);

b(i)=b(i)-c(i-1)*a(i); d(i)=d(i)-a(i)*d(i-1); end;

d(8)=d(8)/b(8);%“赶”的过程; for i=7:-1:1

d(i)=(d(i)-c(i)*d(i+1))/b(i); end;

x=d; x

程序运行结果:

x =

8.1477 4.0737 2.0365 1.0175 0.5073 0.2506 0.1194 0.0477

即(A) 0477.01194.02506.05073.00175.10365.20737.41477.887654321??

??????????????????

??????=?????????????????????????

?=i i i i i i i i I 。

1、试分别用(1)Jacobi 迭代法;(2)Gauss-Seidel 迭代法;(3)共轭梯度法解线性方程组

??

?

??????

???????--=????????????????????????????????--------12171427121515341123235371232191432110

54321x x x x x

迭代初始向量取)0(x=(0,0,0,0,0T)。

解:实验步骤及程序、结果

ε。以下程序中的k均表示迭代次数。

取要求达到的精度8

=

10-

(1)Jacobi迭代法MatLab源程序。

format long

A=[10,1,2,3,4;1,9,-1,2,-3;2,-1,7,3,-5;3,2,3,12,-1;4,-3,-5,-1,15];

b=[12,-27,14,-17,12];

x0=[0,0,0,0,0];x1=x0;

Nmax=1000;

k=0;

for i=1:5

sum=0;

for j=1:5

if j~=i

sum=sum+A(i,j)*x0(j);

end;

end;

x1(i)=(b(i)-sum)/A(i,i);

end;

while abs(norm(x1-x0,inf))>1e-8 & k

x0=x1;

for i=1:5

sum=0;

for j=1:5

if j~=i

sum=sum+A(i,j)*x0(j);

end;

end;

x1(i)=(b(i)-sum)/A(i,i);

end;

k=k+1;

end;

x1

k

输出结果:

x1 =

1.000000024731627 -

2.000000022663167 2.999999958446139 -1.999999993335823 0.999999970325168

k =88

迭代了88次。

(2)Gauss-Seidel迭代法MatLab源程序。

A=[10,1,2,3,4;1,9,-1,2,-3;2,-1,7,3,-5;3,2,3,12,-1;4,-3,-5,-1,15]; b=[12,-27,14,-17,12];

x0=[0,0,0,0,0];x1=x0;

Nmax=1000;

k=1;sum=0;

for j=2:5

sum=sum+A(1,j)*x0(j);

end;

x1(1)=(b(1)-sum)/A(1,1);

for i=2:4

sum=0;

for j=1:(i-1)

sum=sum+A(i,j)*x0(j);

end;

x1(i)=b(i)-sum;

sum=0;

for j=(i+1):5

sum=sum+A(i,j)*x0(j);

end;

x1(i)=(x1(i)-sum)/A(i,i);

end;

sum=0;

for j=1:4

sum=sum+A(5,j)*x0(j);

end;

x1(5)=(b(5)-sum)/A(5,5);

while abs(norm(x1-x0,inf))>1e-8 & k

x0=x1;

sum=0;

for j=2:5

sum=sum+A(1,j)*x0(j);

end;

x1(1)=(b(1)-sum)/A(1,1);

for i=2:4

sum=0;

for j=1:(i-1)

sum=sum+A(i,j)*x0(j);

end;

x1(i)=b(i)-sum;

sum=0;

for j=(i+1):5

sum=sum+A(i,j)*x0(j); end;

x1(i)=(x1(i)-sum)/A(i,i);

end; sum=0;

for j=1:4

sum=sum+A(5,j)*x0(j); end;

x1(5)=(b(5)-sum)/A(5,5); k=k+1;

end; x1 k

输出结果: x1 =

1.000000024731627 -

2.000000022663166 2.999999958446139

-1.999999993335823 0.999999970325168

k =89

迭代了89次。

第四章矩阵特征值与特征向量的计算

1、已知矩阵

??

???

??

??

???-----29128

36

30

112147168336364230366308466190 试用幂法求按模最大的特征值与特征向量; 试用反幂法求按模最小的特征值与特征向量;

解:(1)幂法

程序:

A=[190,66,-84,30;66,303,42,-36;336,-168,147,-112;30,-36,28,291];

x=[0;0;0;1];

deg=1e-5;

N=100;

k=0; eigenvalue0=0;

[xr,r]=max(abs(x));

a=xr;

y=x/a;

x=A*y;

eigenvalue=xr;

while abs(eigenvalue-eigenvalue0)>=deg & k

k=k+1;

eigenvalue0=eigenvalue;

[xr,r]=max(abs(x));

a=xr;

y=x/a;

x=A*y;

eigenvalue=xr;

end;

eigenvalue

x

k

输出结果:

eigenvalue =

3.430000571059348e+02

x =

-1.143330070136651e+02

-3.430000489479517e+02

0.000000000000058e+02

1.715010523810607e+02

k =

87

(2)反幂法

A=[190,66,-84,30;66,303,42,-36;336,-168,147,-112;30,-36,28,291]; B=inv(A);

x=[0;0;0;1];

deg=1e-5;

N=1000;

k=0; eigenvalue0=0;

[xr,r]=max(abs(x));

a=xr;

y=x/a;

x=B*y;

eigenvalue=xr;

while abs(eigenvalue-eigenvalue0)>=deg & k

k=k+1;

eigenvalue0=eigenvalue;

[xr,r]=max(abs(x));

a=xr;

y=x/a;

x=B*y;

eigenvalue=xr;

end;

eigenvalue

x

k

输出结果:

eigenvalue =

0.002637740424370

x =

-0.001704294528000

0.000852172462123

0.008922284278451

0.000568148573659

k =

68

第五章插值法

3、已知直升机旋转机翼外形轮廓线上某些型值点的数据:

的机翼外形曲线图。

解:了解三次样条插值方法的使用。

程序如下:

x=[-520,-280,-156.6,-78,-39.62,-3.1,0,3.1,39.62,78,156.6,280,520]'; y=[0,-30,-36,-35,-28.44,-9.4,0,9.4,28.44,35,36,30,0]';

n=13;

%求解M

for i=1:1:n-1

h(i)=x(i+1)-x(i);

end

for i=2:1:n-1

a(i)=h(i-1)/(h(i-1)+h(i));

b(i)=1-a(i);

c(i)=6*((y(i+1)-y(i))/h(i)-(y(i)-y(i-1))/h(i-1))/(h(i-1)+h(i)); end

a(n)=h(n-1)/(h(1)+h(n-1));

b(n)=h(1)/(h(1)+h(n-1));

c(n)=6/(h(1)+h(n-1))*((y(2)-y(1))/h(1)-(y(n)-y(n-1))/h(n-1));

A(1,1)=2;

A(1,2)=b(2);

A(1,n-1)=a(2);

A(n-1,n-2)=a(n);

A(n-1,n-1)=2;

A(n-1,1)=b(n);

for i=2:1:n-2

A(i,i)=2;

A(i,i+1)=b(i+1);

A(i,i-1)=a(i+1);

end

C=c(2:n);

C=C';

m=A\C;

M(1)=m(n-1);

M(2:n)=m;

xx=-520:10.4:520;

for i=1:51

for j=1:1:n-1

if x(j)<=xx(i) && xx(i)

break;

end

end

yy(i)=M(j+1)*(xx(i)-x(j))^3/(6*h(j))-M(j)*(xx(i)-x(j+1))^3/(6*h(j))+(y(j+1)-M(j+1)* h(j)^2/6)*(xx(i)-x(j))/h(j)-(y(j)-M(j)*h(j)^2/6)*(xx(i)-x(j+1))/h(j);

end;

for i=52:101

yy(i)=-yy(102-i);

end;

for i=1:50

xx(i)=-xx(i);

end;

plot(xx,yy);

hold on;

for i=1:1:n/2

x(i)=-x(i);

end

plot(x,y,'bd');

title('图形');

输出结果:

第六章函数逼近

1、钢包问题。炼钢厂出钢时所用的盛钢水的钢包,在使用过程中由于钢液及炉渣对包衬耐火材料的侵蚀,使其容积不断增大。经试验,钢包的容积与相应的使用次数的数据链表如下:

选用双曲线

x

b a y 1

1+=对数据进行拟合,使用最小二乘法求出拟合函数,作出拟合曲线图。

解:实验步骤及程序 (1)先求数据表。

Matlab 程序:

x=[2,3,5,6,7,9,10,11,12,14,16,17,19,20];

y=[106.42,108.26,109.58,109.50,109.86,110.00,109.93,110.59,110.60,110.72,110.90,110.76,111.10,111.30]; xx=x;yy=y; for i=1:14 xx(i)=1/x(i); yy(i)=1/y(i); end; xx yy

输出结果: xx =

Columns 1 through 5

0.500000000000000 0.333333333333333 0.200000000000000 0.166666666666667 0.142857142857143

Columns 6 through 10

0.111111********* 0.100000000000000 0.090909090909091 0.083333333333333 0.071428571428571

Columns 11 through 14

0.062500000000000 0.058823529411765 0.052631578947368 0.050000000000000

yy =

Columns 1 through 5

0.009396729937982 0.009237021984112 0.009125752874612

0.009132420091324 0.009102494083379

Columns 6 through 10

0.009090909090909 0.009096697898663 0.009042408897730

0.009041591320072 0.009031791907514

Columns 11 through 14

0.009017132551849 0.009028530155291 0.009000900090009

0.008984725965858

(2)解正则方程组。

962126

185********.05217885045902199.079983832.02359435493044

1273291068.079983832.023*******=+=+b a b a

解得

?

???=?=4

--3

1070478168.416900191024461618.97327626b a

(3)作图。

x0=1:20;x0=x0; y0=x0; for i=1:20

y0(i)=1/(8.973276262446161e-003+8.416900197047816e-004*1/x0(i)); end;

plot(x0,y0,x,y); 如下图:

第七章 数值微分与数值积分

1、考纽螺线的形状像钟表的发条,也称回旋曲线,它在直角坐标系中的参数方程为

??

???

==??s s dt

at s y dt at s x 020221

sin )(21cos )( 曲线关于原点对称。取a =1,参数s 的变化范围]5,5[-,容许误差限分别是310-和

710-。选择适当的节点个数,利用数值积分方法计算曲线上点的坐标,并画出曲

线的图形。

解:由于题目中规定了误差限,又要考虑到复杂度及运行时间,故选择误差限为

310-。可以选用梯形公式的逐次分半算法,并且s 的点数不宜取过多,本例中一

共取101个点。 程序如下:

先建两个M 文件,保存函数x 与y 。M 文件如下: 文件xf.m 保存()s x function f1=xf(t)

f1=cos(t^2/2); 文件yf.m 保存()s y

function f2=yf(t) f2=sin(t^2/2);

用复化梯形公式计算积分,程序如下: function [x,y]=fuhuatixing() dx=10^-3;dy=10^-7; i=1;

for s=-5:0.1:5 m=1; b=s; a=0;

h=(b-a)/2;

T=h*(xf(a)+xf(b)); T0=5;

while abs(T-T0)>3*dx

Fx=0;

T0=T;

for k=1:2^(m-1)

Fx=Fx+xf(a+(2*k-1)*h);

end

T=T0/2+h*Fx;

m=m+1;

h=h/2;

end

x(i)=T;

i=i+1;

end

j=1;

for s=-5:0.1:5

n=1;

b=s;

a=0;

h=(b-a)/2;

T=h*(yf(a)+yf(b));

T0=5;

while abs(T-T0)>3*dy

Fy=0;

T0=T;

for k=1:2^(n-1)

Fy=Fy+yf(a+(2*k-1)*h);

end

T=T0/2+h*Fy;

n=n+1;

h=h/2;

end

y(j)=T;

j=j+1;

end

plot(x,y,'o-g');

在命令窗口中输入[x,y]=fuhuatixing()

可得x与y的值,即曲线上点的坐标,在本例中s从-5到5步长为0.1计算了101个点的坐标值,得到曲线图形如下图所示:

第八章非线性方程及非线性方程组的解法

1. 求下列方程的非零根

5130.6651()ln 05130.665114000.0918x x f x x +??

=-= ?

-???

分析:本题拟采用牛顿法对该非线性方程进行求解,而本函数f(x)为奇函数,为了使得牛顿迭代公式初始值比较靠近该方程的非零根,应该确定该方程非零根的大概范围。故首先用Matlab 画图指令画出该函数的曲线图。

因注意到513-0.6651x>0,则可知|x|<771.3126.故有以下绘图代码:

>> x=-770:770;

>> y=log((513+0.6651*x)./(513-0.6651*x))-x/(1400*0.0918); >> plot(x,y) >> grid

函数图如下:

由上图可以很明显看出,原方程有一个零根,两个关于原点对称的非零实根。由图估测原方程的正实根的x 坐标值在770附近。并且经验证f(770)=1.0771>0,而f(760)= -1.0055<0。所以正实根落在区间[760,770]上。

现取初始值0x =765。误差限errorlim=510-,最大迭代次数N=100

M 文件代码如下:

%子函数非线性函数f3

-800

-600-400-2000200400600800

-3-2

-1

1

2

3

function y=f3(x)

y=log((513+0.6651*x)/(513-0.6651*x))-x/(1400*0.0918);

end

%子函数非线性函数一阶导数df3

function y=df3()

syms x1

y=log((513+0.6651*x1)/(513-0.6651*x1))-x1/(1400*0.0918);

y=diff(y);

end

%主程序----牛顿法求解非线性方程

clear

clc

format long

x0=765;

N=100;

errorlim=10^(-5);

x=x0-f3(x0)/subs(df3(),x0);

n=1;

while n

x=x0-f3(x0)/subs(df3(),x0);

if abs(x-x0)>errorlim

n=n+1;

else

break;

end

x0=x;

end

disp('非线性方程求解完毕!')

disp(['迭代次数: n=',num2str(n)])

disp(['所求非零根: 正根x1=',num2str(x),' 负根x2=',num2str(-x)])

运行结果:

非线性方程求解完毕!

迭代次数: n=5

所求非零根: 正根x1=767.3861 负根x2=-767.3861

结果验证:

>> f3(x)

ans =

-4.440892098500626e-015

>> f3(-x)

ans =

4.440892098500626e-015

第九章常微分方程数值解法

1、 设常微分方程初值问题

2cos ,0(0)1y y x x y π

'=-+??

=?

其精确解为cos sin y x x =+。选取步长h 使四阶Adams 预测-校正算法和经典RK 法均稳定,分别用这两种方法求解微分方程,将数值解和精确解进行比

较,输出结果。其中多步法需要的初值由经典RK 法提供。

解:

M 文件代码:

%子函数----四阶RK 算法

function yrk4=rk4(a,b,y0,n) h=(b-a)/n; x=a:h:b;

yrk4=zeros(n+1,1); yrk4(1)=y0;

%round —控制RK-4算法计算步数 if round~=n n=round; end

for i=1:n

k1=fxy(x(i),yrk4(i));

k2=fxy(x(i)+h/2,yrk4(i)+h*k1/2); k3=fxy(x(i)+h/2,yrk4(i)+h*k2/2); k4=fxy(x(i)+h,yrk4(i)+h*k3);

yrk4(i+1)=yrk4(i)+h*(k1+2*k2+2*k3+k4)/6; end

%子函数----fxy 函数 function f=fxy(x,y) f=-y+2*cos(x);

%主程序----经典RK 法求解常微分方程 clear clc a=0; b=pi;

N=50;

n=1;

y0=1;

yrk4=rk4(a,b,y0,N,N);

%绘图---精确解

y=dsolve('Dy=-y+2*cos(x)','y(0)=1','x');

x1=0:(pi/N):pi;

y1=subs(y,x1);

plot(x1,y1,'-b')

hold on

%绘图---数值解

plot(x1,yrk4,'xr')

grid on

legend('精确解','数值解')

title('RK-4数值解与精确解')

运行结果:

RK-4数值解与精确解

00.51 1.52 2.53 3.5 %子函数----Adams预测校正算法·¨

function yadms=adms(a,b,y,n)

h=(b-a)/n;

x=a:h:b;

yadms=[y;zeros(n-3,1)];

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

大作业 三 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、当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:20.给定数据如下表: 试求三次样条插值S(x),并满足条件 (1)S`(0.25)=1.0000,S`(0.53)=0.6868; (2)S ’’(0.25)=S ’’(0.53)=0。 分析:本问题是已知五个点,由这五个点求一三次样条插值函数。边界条件有两种,(1)是 已知一阶倒数,(2)是已知自然边界条件。 对于第一种边界(已知边界的一阶倒数值),可写出下面的矩阵方程。 ????????????????=???????? ?? ??? ???????????????????4321043210343 22 110d M M M M M 2000200 00 02 002 2d d d d λμμλμλμλ 其中μj = j 1-j 1-j h h h +,λi= j 1-j j h h h +,dj=6f[x j-1,x j ,x j+1], μn =1,λ0=1 对于第一种边界条件d 0= 0h 6(f[x 0,x 1]-f 0`),d n =1 -n h 6 (f`n-f `[x n-1,x n ]) 解:由matlab 计算得: 由此得矩阵形式的线性方程组为: ? ? ????????????=???????????????????????? ?????? 2.1150-2.4286-3.2667-4.3143-5.5200-M M M M M 25714.0000 120 4286.0000 04000.02 6000.0006429.023571.00 012 43210 解得 M 0=-2.0286;M 1=-1.4627;M 2= -1.0333; M 3= -0.8058; M 4=-0.6546 S(x)= ??? ????∈-+-+-∈-+-+-∈-+-+-∈-+-+-]53.0,45.0[x 5.40x 9.1087x 35.03956.8.450-x 1.3637-x .5301.67881- ]45.0,39.0[x 9.30x 11.188x 54.010.418793.0-x 2.2384 -x .450(2.87040-]39.0,30.0[x 03.0x 6.9544x 9.30 6.107503.0-x 1.9136-x .3902.708779 -]30.0,25.0[x 5.20x 10.9662x 0.3010.01695.20-x 4.8758-x .3006.76209-333 33 33 3),()()()(),()()()),()()()(),()()()( Matlab 程序代码如下:

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

数值计算方法第一次作业及参考答案 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)

数值分析作业

第二章 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。

数值分析作业答案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 ||

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

数值分析大作业三四五 六七 HEN system office room 【HEN16H-HENS2AHENS8Q8-HENH1688】

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

end m=m+1; x0=x1; end if flag1==1||abs(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+*x)/*x))-x/(1400*; end (3)子函数 非线性函数的一阶导数df function y=df() syms x1 y=log((513+*x1)/*x1))-x1/(1400*; y=diff(y);

数值分析大作业

数值分析报大作业 班级:铁道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、????? ?????----=410141014A ,则A 的LU 分解为 A ??? ?????????=? ?????????? ?。 答案: ?? ????????--??????????--=1556141501 4115401411A 2、已知3.1)3(,2.1)2(,0.1)1(===f f f ,则用辛普生(辛卜生)公式计算求得 ?≈3 1 _________ )(dx x f ,用三点式求得≈')1(f 。 答案:2.367,0.25 3、1)3(,2)2(,1)1(==-=f f f ,则过这三点的二次插值多项式中2 x 的系数为 , 拉格朗日插值多项式为 。 答案:-1, )2)(1(21 )3)(1(2)3)(2(21)(2--------= x x x x x x x L 4、近似值*0.231x =关于真值229.0=x 有( 2 )位有效数字; 5、设)(x f 可微,求方程)(x f x =的牛顿迭代格式是( ); 答案 )(1)(1n n n n n x f x f x x x '--- =+ 6、对1)(3 ++=x x x f ,差商=]3,2,1,0[f ( 1 ),=]4,3,2,1,0[f ( 0 ); 7、计算方法主要研究( 截断 )误差和( 舍入 )误差; 8、用二分法求非线性方程 f (x )=0在区间(a ,b )内的根时,二分n 次后的误差限为 ( 1 2+-n a b );

9、求解一阶常微分方程初值问题y '= f (x ,y ),y (x 0)=y 0的改进的欧拉公式为 ( )] ,(),([2111+++++=n n n n n n y x f y x f h y y ); 10、已知f (1)=2,f (2)=3,f (4)=5.9,则二次Newton 插值多项式中x 2系数为( 0.15 ); 11、 两点式高斯型求积公式?1 d )(x x f ≈( ?++-≈1 )] 321 3()3213([21d )(f f x x f ),代数精 度为( 5 ); 12、 解线性方程组A x =b 的高斯顺序消元法满足的充要条件为(A 的各阶顺序主子式均 不为零)。 13、 为了使计算 32)1(6 )1(41310-- -+-+ =x x x y 的乘除法次数尽量地少,应将该表 达式改写为 11 ,))64(3(10-= -++=x t t t t y ,为了减少舍入误差,应将表达式 19992001-改写为 199920012 + 。 14、 用二分法求方程01)(3 =-+=x x x f 在区间[0,1]内的根,进行一步后根的所在区间 为 0.5,1 ,进行两步后根的所在区间为 0.5,0.75 。 15、 计算积分?1 5 .0d x x ,取4位有效数字。用梯形公式计算求得的近似值为 0.4268 , 用辛卜生公式计算求得的近似值为 0.4309 ,梯形公式的代数精度为 1 ,辛卜生公式的代数精度为 3 。 16、 求解方程组?? ?=+=+042.01532121x x x x 的高斯—塞德尔迭代格式为 ?????-=-=+++20/3/)51()1(1)1(2)(2)1(1 k k k k x x x x ,该迭 代格式的迭代矩阵的谱半径)(M ρ= 121 。 17、 设46)2(,16)1(,0)0(===f f f ,则=)(1x l )2()(1--=x x x l ,)(x f 的二次牛顿

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

《数值分析》计算实习题目 第一题: 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;

研究生《数值分析》课程作业(二) (含答案)

研究生《数值分析》课程作业(二) 姓名: 学号: 专业: 1、据如下函数值表,建立二次的Lagrange 插值多项式及Newton 插值多项式。 20012222()()()()()()() (1)(2)(0)(2)(-0)(1)59 3143 (01)(02)(10)(12(20)(21)22 L x f x l x f x l x f x l x x x x x x x x x =++-----=? +?+?=-+------解: 二次 l agr ange插值 ) Newton 插值多项式: 200100120122()()[,](-)[,,](-)(-) 5559 32(0)(0)(1)32()3 2222 N x f x f x x x x f x x x x x x x x x x x x x x x =++=-?-+--=-+-=-+ ()y f x =2、已知单调连续函数在如下采样点处的函数值 *()0[2,4],f x x =求方程在内根的近似值使误差尽可能小。 解:1 ()()y f x x f y -==解: 对的反函数进行二次插值

1110201122012010210122021(0)(0)(0)(0)(0)(0) (0)() ()() ()()()()()() (0 2.25)(05)(03)(05)(03)(0 2.25) 2 3.54( 3 2.25)(35)(2.253)(2.255)(53)(5 2.25) y y y y y y L f y f y f y y y y y y y y y y y y y ---------=++--------+-+-=? +?+? ----+-+- 2.945 ≈()(1)01(1)1()[,]()(,),()[,],() ()()()() (1)! ,n n n n n n n n f x a b f x a b a x x x b L x x a b f R x f x L x x n a b x ξωξ+++≤<<<≤∈=-=+∈ 3、证明:设在上连续,在内存在,节点是满足拉格朗日插值条件的多项式,则对任何插值余项 这里()且依赖于。 0110101(0,1,,)()()0()()()()()()()()[,]()()()()()()() (),,,(k n n k n n n n n n x k n R x R x R x K x x x x x x x K x x K x x x a b t f t L t K x t x t x t x t x x x x t ωφφφ+===---==----- 证由条件知节点是的零点,即。于是其中是与有关的待定函数。 现把看成上的固定点,作函数 根据插值条件和余项定义,知在点及处均为零。故明:1111)[,]2()[,]1()()[,]()(,)(,),()()(1)!()0 ()()(,),(1)! n n n n a b n t a b n t t a b n t a b a b f n K x f K x a b x n φφφφξφξξξξ++++'+'''+∈=-+==∈+() () ()()在上有个零点,根据罗尔定理,在内至少有个零点。对再应用罗尔定理,可知在内至少 有个零点。依次类推,在上至少有一个零点,记为 使 于是 , 且依赖于于是得到插值余项。 证毕。 44、试用数据表建立不超过次的埃尔米特插值多项式。 解:(用重节点的均差表建立埃尔米特多项式)

数值分析作业答案(第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 正定

数值分析作业题

百度文库-让每个人平等地提升自我 第一章误差与算法 1. 误差分为有模型误差, 观测误差__________ , 方法误差________ , 舍入误差 / , Taylor展开式近似表达函数产生的误差是_ 方法误差. 2. 插值余项是插值多项式的方法误差。 3?作为1/4的近似值,有几位有效数字? 0.2499 0.2499 100,即m 0, 1 |— 0.2499 | 0.0001 0.5 10°30.5 10m n,即n 3 4 22 — 3.1428751...,作为圆周率的近似值,误差和误差限分 别是多少,有几位有效数字? 3.142875 3.1415926 0.0012645 0.5 10 20.5 101 3有3位有效数字. *有效数字与相对误差的关系 4. 利用递推公式计算积分 1 1\ I n x n e x dx,n 1,2,...,9 0,建立稳疋的数值算法。 . 〔nx—〔n^x] n x 1 1〔n 1 x 1 . 彳 . o n I n x e dx x de x e n x e dx 1 nI n 1 ,n 2,...,9 n 0 0 0 0 n

百度文库-让每个人平等地提升自我 该算法是不稳定的。因为: (I n) n (InJ ... ( 1)n n! (IJ 5. 衡量算法优劣的指标有一时间复杂度,__空间复杂度_. 6. 时间复杂度是指:算法需耗费时间的度量.,两个n阶矩阵相乘的乘法次数是nL则 称两个n阶矩阵相乘这一问题的时间复杂度为O(n3). 二代数插值 1. 根据下表数据建立不超过二次的 Lagrange和Newton插值多项 式,并写出误差估计式,以及验证插值多项式的唯一性。 x 0 1 4 f(x) 1 9 3 Lagra nge: 设x0,X1 1,X2 4;则f(x°) 1, f(xj 9, g 3 对应K的标准基函数l i(x)为: l°(x) (0 1))(0 4) 4(x ;)(x 4) h(x) ... J(x) ... 因此,所求插值多项式为:1| 1 io 1 10

数值分析作业答案.doc

第2章 插值法 1、当x=1,-1,2时,f(x)=0,-3,4,求f(x)的二次插值多项式。 (1)用单项式基底。 (2)用Lagrange 插值基底。 (3)用Newton 基底。 证明三种方法得到的多项式是相同的。 解:(1)用单项式基底 设多项式为:2 210)(x a x a a x P ++=, 所以:64 211111 1111122 2 211 200 -=-==x x x x x x A 3 76144 211111114241 13110111)() ()(22 221120 022 2 22 11 120 00-=-= ---==x x x x x x x x x f x x x f x x x f a 2 3694211111114411 31101111)(1)(1 )(122 221120 02 2 22112 001=--= --==x x x x x x x x f x x f x x f a 6 5654 2 1 1111114 2 1 3 11011111) (1)(1)(122 2 21120 022 11 00 2=--= ---==x x x x x x x f x x f x x f x a 所以f(x)的二次插值多项式为:26 52337)(x x x P ++-= (2)用Lagrange 插值基底 )21)(11() 2)(1())(())(()(2010210-+-+=----=x x x x x x x x x x x l )21)(11() 2)(1())(())(()(2101201------=----=x x x x x x x x x x x l ) 12)(12() 1)(1())(())(()(1202102+-+-=----= x x x x x x x x x x x l

数值分析作业答案

第2章 插值法 1、当x=1,-1,2时,f(x)=0,-3,4,求f(x)的二次插值多项式。 (1)用单项式基底。 (2)用Lagrange 插值基底。 (3)用Newton 基底。 证明三种方法得到的多项式是相同的。 解:(1)用单项式基底 设多项式为:2 210)(x a x a a x P ++=, 所以:64 211111 1111122 2 211 200 -=-==x x x x x x A 所以f(x)的二次插值多项式为: 2 6 52337)(x x x P ++-= (2)用Lagrange 插值基底 Lagrange 插值多项式为: 所以f(x)的二次插值多项式为:226 52337)(x x x L ++-= (3) 用Newton 基底: 均差表如下: Newton 所以f(x)的二次插值多项式为:2 2 6 52337)(x x x N ++-= 由以上计算可知,三种方法得到的多项式是相同的。 6、在44≤≤-x 上给出x e x f =)(的等距节点函数表,若用二次插值求e x 的近似 值,要使截断误差不超过10-6,问使用函数表的步长h 应取多少? 解:以x i-1,x i ,x i+1为插值节点多项式的截断误差,则有 式中.,11h x x h x x i i +=-=+- 令 634103 9-≤h e 得00658.0≤h 插值点个数

是奇数,故实际可采用的函数值表步长 8、13)(47+++=x x x x f ,求]2,,2,2[710Λf 及]2,,2,2[810Λf 。 解:由均差的性质可知,均差与导数有如下关系: 所以有:1! 7! 7!7)(]2,,2,2[)7(7 1 === ξf f Λ 15、证明两点三次Hermite 插值余项是 并由此求出分段三次Hermite 插值的误差限。 证明:利用[x k ,x k+1]上两点三次Hermite 插值条件 知)()()(33x H x f x R -=有二重零点x k 和k+1。设 确定函数k(x): 当k x x =或x k+1时k(x)取任何有限值均可; 当1,+≠k k x x x 时,),(1+∈k k x x x ,构造关于变量t 的函数 显然有 在[x k ,x][x,x k+1]上对g(x)使用Rolle 定理,存在),(1x x k ∈η及),(12+∈k x x η使得 在),(1ηk x ,),(21ηη,),(12+k x η上对)(x g '使用Rolle 定理,存在),(11ηηk k x ∈, ),(212ηηη∈k 和),(123+∈k k x ηη使得 再依次对)(t g ''和)(t g '''使用Rolle 定理,知至少存在),(1+∈k k x x ξ使得 而!4)()()()4()4()4(t k t f t g -=,将ξ代入,得到 推导过程表明ξ依赖于1,+k k x x 及x 综合以上过程有:!4/)())(()(212)4(3+--=k k x x x x f x R ξ 确定误差限: 记)(x I h 为f(x)在[a,b]上基于等距节点的分段三次Hermite 插值函数。 n a b h n k kh a x k -==+=),,1,0(,Λ 在区间[x k ,x k+1]上有 而最值)(,16 1)1(max )()(max 4 4221 02121 sh x x h h s s x x x x k s k k x x x l k +== -=--≤≤+≤≤+ 进而得误差估计:)(max 3841)()()4(4 x f h x I x f b x a h ≤≤≤ - 16、求一个次数不高于4次的多项式)(x p ,使它满足0)0()0(='=p p ,

相关主题
文本预览
相关文档 最新文档