数值分析实验报告

时间:2024.3.31

第一次作业

题目

[作业1]. 试使用subplot 命令,生成[-1,1]上的第二个至第五个Chebyshev 多项

式,并按照2*2 方式多窗口显示.

 [选做题1-2] 应用秦九韶算法计算多项式

1

0 1 1 0 ( ) n n ( 0)

n n p x a x a x + a x a a

- = + +L+ + ¹

在x = x*处的函数值和导数值。试编程实现,并举例运行给出计算结果。

程序 以及结果

第一题

x=-1:0.05:1;

 t0=1.0+0*x;

 t1=x;

 t2=2*x.*t1-t0;

t3=2*x.*t2-t1;

t3=2*x.*t3-t2;

t3=2*x.*t2-t1;

t4=2*x.*t3-t2;

subplot(2,2,1)

plot(x,t1,'-k')

xlabel('x');ylabel('y')

title('t1')

subplot(2,2,2)

plot(x,t2,'-k')

xlabel('x');ylabel('y')

title('t2')

subplot(2,2,3)

plot(x,t3,'-k')

xlabel('x');ylabel('y')

title('t3')

subplot(2,2,4)

plot(x,t4,'-k')

xlabel('x');ylabel('y')

title('t4') 

  

第二题

秦九韶函数、

做题1-2]

   应用秦九韶算法计算多项式

在x = x*处的函数值和导数值。试编程实现,并举例运行给出计算结果。

function jieguo=qinjiushao(A,x)

n=length(A);

B=zeros(n);

B(1)=A(1);

for k=1:n-1

    B(k+1)=B(k)*x+A(k+1)

end

例子

A=[2,0,-3,3,-4];

x=-2;

qinjiushao(A,x) 

jieguo =

    10

ans =

    10  

单个例子A=[2,0,-3,3,-4]

B=zeros(1,5)

B(1)=A(1)

L=length(A)

x=-2

for k=2:L

B(k)=B(k-1)*x+A(k)

end

C=zeros(1,3)

C(1)=B(1)

for k=2:L-1

C(k)=C(k-1)*x+B(k)

end 

A =

     2     0    -3     3    -4

B =

     0     0     0     0     0

B =

     2     0     0     0     0

L =

     5

x =

    -2

B =

     2    -4     0     0     0

B =

     2    -4     5     0     0

B =

     2    -4     5    -7     0

B =

     2    -4     5    -7    10

C =

     0     0     0

C =

     2     0     0

C =

     2    -8     0

C =

     2    -8    21

C =

     2    -8    21   -49  

第二次作业

作业2

题目  自己编程用基于Newton形式插值多项式求近似解

程序以及结果

牛顿函数

function W=newton(X,Y)

m=length(X);

M=zeros(m-1,1);

for i=1:m-1

    M(i)=(Y(i)-Y(i+1))/(X(i)-X(i+1));

end

W=zeros(m,1);

W(1)=Y(1);

W(2)=M(1);

l=3;

for  k=2:m-1

    N=zeros(m-k,1);

     for j=1:m-k

         N(j)=(M(j)-M(j+1))/(X(j)-X(j+k));

     end

     W(l)=N(1);

     l=l+1;

    M=N;

end

例子

X=[0.4,0.5,0.6,0.7,0.8,0.9]

Y=[-0.916291, -0.693147, -0.510826, -0.357765, -0.223144, -0.105361] 

X =

    0.4000    0.5000    0.6000    0.7000    0.8000    0.9000

Y =

   -0.9163   -0.6931   -0.5108   -0.3578   -0.2231   -0.1054 

newton(X,Y)  

ans =

   -0.9163

    2.2314

   -2.0412

    1.9272

   -0.3096

  -7.0625  

x=log(0.78)

y=ans(1)+ans(2)*(x-0.4)+ans(3)*(x-0.4)*(x-0.5)+ans(4)*(x-0.4)*(x-0.5)*(x-0.6)+ans(5)*(x-0.4)*(x-0.5)*(x-0.6)*(x-0.7)+ans(6)*(x-0.4)*(x-0.5)*(x-0.6)*(x-0.7)*(x-0.8) 

x =

   -0.2485

这是ln0.78的近似值

y =

   -0.6158  

作业2

    给定函数f x= 1+1/(1+ x2), x Î [ 5,5] ,节点 x = ?5 + k (k = 0,1,?,10) ,请同时显示三次样条插值与Lagrange插值,要求分别给出图例。

拉格朗日函数/

function v = polyinterp(x,y,u)

%POLYINTERP Polynomial interpolation.

% v = POLYINTERP(x,y,u) computes v(j) = P(u(j)) where P is the

% polynomial of degree d = length(x)-1 with P(x(i)) = y(i).

% Use Lagrangian representation.

% Evaluate at all elements of u simultaneously.

n = length(x);

v = zeros(size(u));

for k = 1:n

w = ones(size(u));

for j = [1:k-1 k+1:n]

w = (u-x(j))./(x(k)-x(j)).*w;

end

v = v + w*y(k);

end

例子

x=zeros(1,11);

x=zeros(1,11);

for    k=0:10

x(k+1)=-5+k;

y(k+1)=1/(1+x(k+1)^2);

end 

  u=-5:0.1:5;

polyinterp(x,y,u)

hold on

plot(u,ans,'-r') 

axis([-5,5,-0.5,2])

w=spline(x,y,u)

plot(u,w,'-b') 

legend('拉格朗日','三次')

hold off 

拉格朗日插值结果

ans =

  Columns 1 through 10

    0.0385    1.2303    1.8044    1.9590    1.8458    1.5787    1.2402    0.8881    0.5604    0.2802

  Columns 11 through 20

    0.0588   -0.1007   -0.2013   -0.2496   -0.2546   -0.2262   -0.1743   -0.1083   -0.0363    0.0349

  Columns 21 through 30

    0.1000    0.1554    0.1987    0.2292    0.2472    0.2538    0.2510    0.2414    0.2278    0.2131

  Columns 31 through 40

    0.2000    0.1912    0.1888    0.1946    0.2099    0.2353    0.2710    0.3165    0.3708    0.4326

  Columns 41 through 50

    0.5000    0.5710    0.6432    0.7142    0.7817    0.8434    0.8971    0.9409    0.9733    0.9933

  Columns 51 through 60

    1.0000    0.9933    0.9733    0.9409    0.8971    0.8434    0.7817    0.7142    0.6432    0.5710

  Columns 61 through 70

    0.5000    0.4326    0.3708    0.3165    0.2710    0.2353    0.2099    0.1946    0.1888    0.1912

  Columns 71 through 80

    0.2000    0.2131    0.2278    0.2414    0.2510    0.2538    0.2472    0.2292    0.1987    0.1554

  Columns 81 through 90

    0.1000    0.0349   -0.0363   -0.1083   -0.1743   -0.2262   -0.2546   -0.2496   -0.2013   -0.1007

  Columns 91 through 100

    0.0588    0.2802    0.5604    0.8881    1.2402    1.5787    1.8458    1.9590    1.8044    1.2303

  Column 101

0.0385

三次样条插值结果

w =

  Columns 1 through 10

    0.0385    0.0406    0.0427    0.0446    0.0465    0.0484    0.0503    0.0522    0.0543    0.0565

  Columns 11 through 20

    0.0588    0.0614    0.0642    0.0673    0.0707    0.0745    0.0786    0.0832    0.0883    0.0939

  Columns 21 through 30

    0.1000    0.1067    0.1140    0.1220    0.1307    0.1401    0.1504    0.1614    0.1734    0.1862

  Columns 31 through 40

    0.2000    0.2149    0.2314    0.2503    0.2720    0.2973    0.3269    0.3613    0.4011    0.4472

  Columns 41 through 50

    0.5000    0.5597    0.6242    0.6909    0.7573    0.8205    0.8782    0.9275    0.9661    0.9911

  Columns 51 through 60

    1.0000    0.9911    0.9661    0.9275    0.8782    0.8205    0.7573    0.6909    0.6242    0.5597

  Columns 61 through 70

    0.5000    0.4472    0.4011    0.3613    0.3269    0.2973    0.2720    0.2503    0.2314    0.2149

  Columns 71 through 80

    0.2000    0.1862    0.1734    0.1614    0.1504    0.1401    0.1307    0.1220    0.1140    0.1067

  Columns 81 through 90

    0.1000    0.0939    0.0883    0.0832    0.0786    0.0745    0.0707    0.0673    0.0642    0.0614

  Columns 91 through 100

    0.0588    0.0565    0.0543    0.0522    0.0503    0.0484    0.0465    0.0446    0.0427    0.0406

  Column 101

    0.0385

第三次作业

题目

程序以及结果

作业 3第二题

    用Romberg积分法求积分10sin ydyy∫ ,要求T T (0) 61(0) 10??? <k k .结果要求显出中间步骤的结果。

clc;

clear;

a=0;b=1;

fa=a;

fb=1/b;

Err=10e-5;

N=6;

T=zeros(N+1);

T(1,1)=(b-a)*(fb+fa)/2;

j=1;

for i=j+1:N

n=2^(i-2);

h=(b-a)*2^(2-i);

 for k=1:n

    x(k)=a+(2*k-1)*h/2;

end

y=sin(x)/x;

H=h*sum(y);

T(i,j)=(T(i-1,j)+H)/2;

end

for n=j:N

  for m=n:N-1

     T(m+1,n+1)=(4^n*T(m+1,n)-T(m,n))/(4^n-1)

end

if  abs(T(n+1,n+1)-T(n,n))<Err

break;

end

end

format long

n

disp(T(n,n)) 

T =

  Columns 1 through 5

   0.500000000000000                   0                   0                   0                   0

   0.729425538604203   0.805900718138937                   0                   0                   0

   0.593944793234554                   0                   0                   0                   0

   0.410326958533918                   0                   0                   0                   0

   0.261684547893063                   0                   0                   0                   0

   0.159083327234799                   0                   0                   0                   0

                   0                   0                   0                   0                   0

  Columns 6 through 7

                   0                   0

                   0                   0

                   0                   0

                   0                   0

                   0                   0

                   0                   0

                   0                   0

T =

  Columns 1 through 5

   0.500000000000000                   0                   0                   0                   0

   0.729425538604203   0.805900718138937                   0                   0                   0

   0.593944793234554   0.548784544778004                   0                   0                   0

   0.410326958533918                   0                   0                   0                   0

   0.261684547893063                   0                   0                   0                   0

   0.159083327234799                   0                   0                   0                   0

                   0                   0                   0                   0                   0

  Columns 6 through 7

                   0                   0

                   0                   0

                   0                   0

                   0                   0

                   0                   0

                   0                   0

                   0                   0

T =

  Columns 1 through 5

   0.500000000000000                   0                   0                   0                   0

   0.729425538604203   0.805900718138937                   0                   0                   0

   0.593944793234554   0.548784544778004                   0                   0                   0

   0.410326958533918   0.349121013633706                   0                   0                   0

   0.261684547893063                   0                   0                   0                   0

   0.159083327234799                   0                   0                   0                   0

                   0                   0                   0                   0                   0

  Columns 6 through 7

                   0                   0

                   0                   0

                   0                   0

                   0                   0

                   0                   0

                   0                   0

                   0                   0

T =

  Columns 1 through 5

   0.500000000000000                   0                   0                   0                   0

   0.729425538604203   0.805900718138937                   0                   0                   0

   0.593944793234554   0.548784544778004                   0                   0                   0

   0.410326958533918   0.349121013633706                   0                   0                   0

   0.261684547893063   0.212137077679444                   0                   0                   0

   0.159083327234799                   0                   0                   0                   0

                   0                   0                   0                   0                   0

  Columns 6 through 7

                   0                   0

                   0                   0

                   0                   0

                   0                   0

                   0                   0

                   0                   0

                   0                   0

T =

  Columns 1 through 5

   0.500000000000000                   0                   0                   0                   0

   0.729425538604203   0.805900718138937                   0                   0                   0

   0.593944793234554   0.548784544778004                   0                   0                   0

   0.410326958533918   0.349121013633706                   0                   0                   0

   0.261684547893063   0.212137077679444                   0                   0                   0

   0.159083327234799   0.124882920348711                   0                   0                   0

                   0                   0                   0                   0                   0

  Columns 6 through 7

                   0                   0

                   0                   0

                   0                   0

                   0                   0

                   0                   0

                   0                   0

                   0                   0

T =

  Columns 1 through 5

   0.500000000000000                   0                   0                   0                   0

   0.729425538604203   0.805900718138937                   0                   0                   0

   0.593944793234554   0.548784544778004   0.531643466553942                   0                   0

   0.410326958533918   0.349121013633706                   0                   0                   0

   0.261684547893063   0.212137077679444                   0                   0                   0

   0.159083327234799   0.124882920348711                   0                   0                   0

                   0                   0                   0                   0                   0

  Columns 6 through 7

                   0                   0

                   0                   0

                   0                   0

                   0                   0

                   0                   0

                   0                   0

                   0                   0

T =

  Columns 1 through 5

   0.500000000000000                   0                   0                   0                   0

   0.729425538604203   0.805900718138937                   0                   0                   0

   0.593944793234554   0.548784544778004   0.531643466553942                   0                   0

   0.410326958533918   0.349121013633706   0.335810111557420                   0                   0

   0.261684547893063   0.212137077679444                   0                   0                   0

   0.159083327234799   0.124882920348711                   0                   0                   0

                   0                   0                   0                   0                   0

  Columns 6 through 7

                   0                   0

                   0                   0

                   0                   0

                   0                   0

                   0                   0

                   0                   0

                   0                   0

T =

  Columns 1 through 5

   0.500000000000000                   0                   0                   0                   0

   0.729425538604203   0.805900718138937                   0                   0                   0

   0.593944793234554   0.548784544778004   0.531643466553942                   0                   0

   0.410326958533918   0.349121013633706   0.335810111557420                   0                   0

   0.261684547893063   0.212137077679444   0.203004815282493                   0                   0

   0.159083327234799   0.124882920348711                   0                   0                   0

                   0                   0                   0                   0                   0

  Columns 6 through 7

                   0                   0

                   0                   0

                   0                   0

                   0                   0

                   0                   0

                   0                   0

                   0                   0

T =

  Columns 1 through 5

   0.500000000000000                   0                   0                   0                   0

   0.729425538604203   0.805900718138937                   0                   0                   0

   0.593944793234554   0.548784544778004   0.531643466553942                   0                   0

   0.410326958533918   0.349121013633706   0.335810111557420                   0                   0

   0.261684547893063   0.212137077679444   0.203004815282493                   0                   0

   0.159083327234799   0.124882920348711   0.119065976526662                   0                   0

                   0                   0                   0                   0                   0

  Columns 6 through 7

                   0                   0

                   0                   0

                   0                   0

                   0                   0

                   0                   0

                   0                   0

                   0                   0

T =

  Columns 1 through 5

   0.500000000000000                   0                   0                   0                   0

   0.729425538604203   0.805900718138937                   0                   0                   0

   0.593944793234554   0.548784544778004   0.531643466553942                   0                   0

   0.410326958533918   0.349121013633706   0.335810111557420   0.332701645605094                   0

   0.261684547893063   0.212137077679444   0.203004815282493                   0                   0

   0.159083327234799   0.124882920348711   0.119065976526662                   0                   0

                   0                   0                   0                   0                   0

  Columns 6 through 7

                   0                   0

                   0                   0

                   0                   0

                   0                   0

                   0                   0

                   0                   0

                   0                   0

T =

  Columns 1 through 5

   0.500000000000000                   0                   0                   0                   0

   0.729425538604203   0.805900718138937                   0                   0                   0

   0.593944793234554   0.548784544778004   0.531643466553942                   0                   0

   0.410326958533918   0.349121013633706   0.335810111557420   0.332701645605094                   0

   0.261684547893063   0.212137077679444   0.203004815282493   0.200896794706701                   0

   0.159083327234799   0.124882920348711   0.119065976526662                   0                   0

                   0                   0                   0                   0                   0

  Columns 6 through 7

                   0                   0

                   0                   0

                   0                   0

                   0                   0

                   0                   0

                   0                   0

                   0                   0

T =

  Columns 1 through 5

   0.500000000000000                   0                   0                   0                   0

   0.729425538604203   0.805900718138937                   0                   0                   0

   0.593944793234554   0.548784544778004   0.531643466553942                   0                   0

   0.410326958533918   0.349121013633706   0.335810111557420   0.332701645605094                   0

   0.261684547893063   0.212137077679444   0.203004815282493   0.200896794706701                   0

   0.159083327234799   0.124882920348711   0.119065976526662   0.117733614006728                   0

                   0                   0                   0                   0                   0

  Columns 6 through 7

                   0                   0

                   0                   0

                   0                   0

                   0                   0

                   0                   0

                   0                   0

                   0                   0

T =

  Columns 1 through 5

   0.500000000000000                   0                   0                   0                   0

   0.729425538604203   0.805900718138937                   0                   0                   0

   0.593944793234554   0.548784544778004   0.531643466553942                   0                   0

   0.410326958533918   0.349121013633706   0.335810111557420   0.332701645605094                   0

   0.261684547893063   0.212137077679444   0.203004815282493   0.200896794706701   0.200379912938472

   0.159083327234799   0.124882920348711   0.119065976526662   0.117733614006728                   0

                   0                   0                   0                   0                   0

  Columns 6 through 7

                   0                   0

                   0                   0

                   0                   0

                   0                   0

                   0                   0

                   0                   0

                   0                   0

T =

  Columns 1 through 5

   0.500000000000000                   0                   0                   0                   0

   0.729425538604203   0.805900718138937                   0                   0                   0

   0.593944793234554   0.548784544778004   0.531643466553942                   0                   0

   0.410326958533918   0.349121013633706   0.335810111557420   0.332701645605094                   0

   0.261684547893063   0.212137077679444   0.203004815282493   0.200896794706701   0.200379912938472

   0.159083327234799   0.124882920348711   0.119065976526662   0.117733614006728   0.117407483886336

                   0                   0                   0                   0                   0

  Columns 6 through 7

                   0                   0

                   0                   0

                   0                   0

                   0                   0

                   0                   0

                   0                   0

                   0                   0

T =

  Columns 1 through 5

   0.500000000000000                   0                   0                   0                   0

   0.729425538604203   0.805900718138937                   0                   0                   0

   0.593944793234554   0.548784544778004   0.531643466553942                   0                   0

   0.410326958533918   0.349121013633706   0.335810111557420   0.332701645605094                   0

   0.261684547893063   0.212137077679444   0.203004815282493   0.200896794706701   0.200379912938472

   0.159083327234799   0.124882920348711   0.119065976526662   0.117733614006728   0.117407483886336

                   0                   0                   0                   0                   0

  Columns 6 through 7

                   0                   0

                   0                   0

                   0                   0

                   0                   0

                   0                   0

   0.117326376917566                   0

                   0                   0

n =

     6

   0.117326376917566  

第四次作业

题目

程序以及结果

作业 4

第一题

作业4   求解下列三对角线性方程组: ????????????????????

[说明]本题可以选择多种求解方式:

先判断A是否可以进行LU分解,如果可以,则进行Doolittle分解,并通过解两个三角形方程组(用左除的方法)得到原问题的解;否则显示不能分解并直接用左除求解;

先判断A是否是对称正定矩阵,如果是,则进行进行Cholesky分解,并进一步求解;否则显示不能分解并直接用左除求解;

应用追赶法求解,注意考虑存贮空间的合理设置。

function [n]=panduan(A)

l=det(A);

p=rank(A);

if l==0

    n=-1;

  

else

   

        for j=p:1

          

            A(j,:)=[];

            A(:,j)=[];

           if  det(A)==0

               n=-1;

            break

           end

        end

 

    n=0;

end

clc

clear

A=[4 -1 0 0 0; -1 4 -1 0 0; 0 -1 4 -1 0; 0 0 -1 4 -1 ;0 0 0 -1 4]

B=[100;200;200;200;100]

panduan(A) 

A =

     4    -1     0     0     0

    -1     4    -1     0     0

     0    -1     4    -1     0

     0     0    -1     4    -1

     0     0     0    -1     4

B =

   100

   200

   200

   200

   100

ans =

     0  

%   由函数panduan  判断出A矩阵顺序主子式大于零,所以A可以进行LU分解

[L,U]=lu(A)

%LY=B

Y=L\B

%UX=Y

X=U\Y 

L =

    1.0000         0         0         0         0

   -0.2500    1.0000         0         0         0

         0   -0.2667    1.0000         0         0

         0         0   -0.2679    1.0000         0

         0         0         0   -0.2679    1.0000

U =

    4.0000   -1.0000         0         0         0

         0    3.7500   -1.0000         0         0

         0         0    3.7333   -1.0000         0

         0         0         0    3.7321   -1.0000

         0         0         0         0    3.7321

Y =

  100.0000

  225.0000

  260.0000

  269.6429

  172.2488

X =

   46.1538

   84.6154

   92.3077

   84.6154

   46.1538  

第二题

% 由第一题得出A为正定矩阵

n=length(A)

m=0

for  i=1:n

for j=1:n

     if   A(i,j)~=A(j,i)

           m=-1

      else

m=0

end

end

end 

n =

     5

m =

     0

m =

     0

m =

     0

m =

     0

m =

     0

m =

     0

m =

     0

m =

     0

m =

     0

m =

     0

m =

     0

m =

     0

m =

     0

m =

     0

m =

     0

m =

     0

m =

     0

m =

     0

m =

     0

m =

     0

m =

     0

m =

     0

m =

     0

m =

     0

m =

     0

m =

     0  

% 所以A矩阵为对称阵

%进行进行Cholesky分解

% 所以A矩阵为对称阵

A=[4 -1 0 0 0;-1 4 -1 0 0;0 -1 4 -1 0;0 0 -1 4 -1;0 0 0 -1 4];

U=chol(A)  

U =

    2.0000   -0.5000         0         0         0

         0    1.9365   -0.5164         0         0

         0         0    1.9322   -0.5175         0

         0         0         0    1.9319   -0.5176

         0         0         0         0    1.9319  

B=[100;200;200;200;100];

Y=U'\B

X=U\Y  

Y =

   50.0000

  116.1895

  134.5628

  139.5757

   89.1625

X =

   46.1538

   84.6154

   92.3077

   84.6154

   46.1538 

第三题

function[x]=zhuigan(A,B)

n=length(A)

A(1,2)=A(1,2)/A(1,1)

for i=2:n-1

     A(i,i+1)=A(i,i+1)/(A(i,i)-A(i,i-1)*A(i-1,i))

end

y=zeros(n,1);

y(1)=B(1)/A(1,1)

for  j=2:n

    y(j)=(B(j)-A(j,j-1)*y(j-1))/(A(j,j)-A(j,j-1)*A(j-1,j))

end

x=ones(n,1);

x(n)=y(n)

for k=n-1:-1:1

    x(k)=y(k)-A(k,k+1)*x(k+1)

end

clear  

A=[4 -1 0 0 0; -1 4 -1 0 0; 0 -1 4 -1 0; 0 0 -1 4 -1 ;0 0 0 -1 4]

B=[100;200;200;200;100]

zhuigan(A,B) 

A =

     4    -1     0     0     0

    -1     4    -1     0     0

     0    -1     4    -1     0

     0     0    -1     4    -1

     0     0     0    -1     4

B =

   100

   200

   200

   200

   100

n =

     5

A =

    4.0000   -0.2500         0         0         0

   -1.0000    4.0000   -1.0000         0         0

         0   -1.0000    4.0000   -1.0000         0

         0         0   -1.0000    4.0000   -1.0000

         0         0         0   -1.0000    4.0000

A =

    4.0000   -0.2500         0         0         0

   -1.0000    4.0000   -0.2667         0         0

         0   -1.0000    4.0000   -1.0000         0

         0         0   -1.0000    4.0000   -1.0000

         0         0         0   -1.0000    4.0000

A =

    4.0000   -0.2500         0         0         0

   -1.0000    4.0000   -0.2667         0         0

         0   -1.0000    4.0000   -0.2679         0

         0         0   -1.0000    4.0000   -1.0000

         0         0         0   -1.0000    4.0000

A =

    4.0000   -0.2500         0         0         0

   -1.0000    4.0000   -0.2667         0         0

         0   -1.0000    4.0000   -0.2679         0

         0         0   -1.0000    4.0000   -0.2679

         0         0         0   -1.0000    4.0000

y =

    25

     0

     0

     0

     0

y =

    25

    60

     0

     0

     0

y =

   25.0000

   60.0000

   69.6429

         0

         0

y =

   25.0000

   60.0000

   69.6429

   72.2488

         0

y =

   25.0000

   60.0000

   69.6429

   72.2488

   46.1538

x =

    1.0000

    1.0000

    1.0000

    1.0000

   46.1538

x =

    1.0000

    1.0000

    1.0000

   84.6154

   46.1538

x =

    1.0000

    1.0000

   92.3077

   84.6154

   46.1538

x =

    1.0000

   84.6154

   92.3077

   84.6154

   46.1538

x =

   46.1538

   84.6154

   92.3077

   84.6154

   46.1538

ans =

   46.1538

   84.6154

   92.3077

   84.6154

   46.1538  

%  由于作业是分两次做的,所以第三题是从另一个notebook复制来的

第五次作业

题目

作业5 分别用Jacobi迭代法和Gauss-Seidel迭代法解以下方程组:(不必单独上交,包含在实验报告中即可) ??????????????????

[说明] 可选择

两种方法均应用矩阵形式迭代求解;

两种方法均应用分量形式迭代求解。

程序以及结果

% 矩阵A由Variable Editor 生成的

A  

A =

     4    -1     0    -1     0     0

    -1     4    -1     0    -1     0

     0    -1     4     0     0    -1

    -1     0     0     4    -1     0

     0    -1     0    -1     4    -1

     0     0    -1     0    -1     4  

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

b =

     0

     5

     0

     6

    -2

     6 

jacobi(A,b,[0;0;0;0;0;0])  

ans =

    1.0000

    2.0000

    1.0000

    2.0000

    1.0000

    2.0000  

高斯方法

function y=g(A,b,x0)

%jacobi iteration

D=diag(diag(A));

U=triu(A,1);

L=tril(A,-1);

BG=-(D+L)\U;

fG=(D+L)\b;

y=BG*x0+fG;

n=1;

while norm(y-x0)>=1.0e-6

x0=y;

y=BG*x0+fG;

n=n+1;

end

A=[4 -1 0 -1 0 0;-1 4 -1 0 -1 0;0 -1 4 0 0 -1 ; -1 0 0 4 -1 0; 0 -1 0 -1 4 -1;0 0 -1 0 -1 4];

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

g(A,b,[0;0;0;0;0;0]) 

ans =

    1.0000

    2.0000

    1.0000

    2.0000

    1.0000

    2.0000  


更多相关推荐:
数值分析实验报告(一)(完整)

数值分析实验报告123456

数值分析实验报告(包含源程序)

课程实验报告课程实验报告课程实验报告课程实验报告

哈工大-数值分析上机实验报告

实验报告一题目非线性方程求解摘要非线性方程的解析解通常很难给出因此线性方程的数值解法就尤为重要本实验采用两种常见的求解方法二分法和Newton法及改进的Newton法前言目的和意义掌握二分法与Newton法的基...

数值分析 实 验 报 告

数值分析实验报告册课程实验报告专业年级课程名称数值分析指导教师学生姓名学号实验日期实验地点实验成绩教务处制20xx年6月20日实验名称Lagrange插值实验一实验目的数值分析实验报告册掌握Lagrange插值...

数值分析matlab完整版实验报告

数值分析报告运用Matlab求解非线性方程的根学院专业班级姓名学号数值分析报告1目的掌握非线性方程求根的方法并选取实例运用MATLAB软件进行算法的实现分别用牛顿法弦截法和抛物线法求非线性方程的根2报告选题报告...

数值分析实验报告

实验21多项式插值的振荡现象实验目的在一个固定的区间上用插值逼近一个函数显然Lagrange插值中使用的节点越多插值多项式的次数就越高我们自然关心插值多项式的次数增加时Lnx是否也更加靠近被逼近的函数Runge...

数值分析实验报告三

数学与信息工程学院实课程名称实验室实验台号班级姓名实验日期验报告计算方法740420xx年5月21日

数值分析上机实验报告

实验报告一题目非线性方程求解摘要非线性方程的解析解通常很难给出因此线性方程的数值解法就尤为重要本实验采用两种常见的求解方法二分法和Newton法及改进的Newton法前言目的和意义掌握二分法与Newton法的基...

电子科技MATLAB与数值分析第一次实验教学及内容 - 副本

第一次实验教学的具体安排第一次实验教学1MATLAB软件操作及程序设计实验内容具体实验要求及相关内容见实验一实验时间第7周的周一到周三晚上19002130实验方式混合班学生按照自己的时间自由安排但必须带本人学生...

数值实验报告

重庆交通大学学生实验报告实验课程名称开课实验室数学实验室学院理学院年级09专业班学生姓名学号开课时间至学期实验五解线性方程组的直接方法实验51主元的选取与算法的稳定性问题提出Gauss消去法是我们在线性代数中已...

数值分析上机实验报告七

西安工程大学数值计算方法实验报告实验报告七题目线性方程组的直接解法摘要在数值计算中关于线性方程组的解法有两类直接法和迭代法本实验研究线性方程组的直接解法前言目的和意义掌握线性方程组的直接解法如高斯消去法LU解法...

哈工大-数值分析上机实验报告

实验报告一题目非线性方程求解摘要非线性方程的解析解通常很难给出因此线性方程的数值解法就尤为重要本实验采用两种常见的求解方法二分法和Newton法及改进的Newton法前言目的和意义掌握二分法与Newton法的基...

数值分析实验报告(29篇)