数值代数试卷

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

河南师范大学数学与信息科学学院2013―2014学年度第2学期 2012级信息与计算科学专业期末考试《数值线性代数》A 卷

1. 设n n R ⨯∈A ,用列主元Gauss 消去法得到=PA LU ,则当1j i n ≤<≤时,,i j l _____.

2. 设⋅是定义在n n

R

⨯上的一种矩阵范数.对任意的矩阵n n

R

⨯∈A ,则

()A κ_______.

3. 设n n R ⨯∈A 是对称正定,则二次泛函1()2

T ϕ=

-T

x x Ax b x 的极小值点是 . 4. 求解对称正定方程组=Ax b 的最速下降法的第k (>0)步迭代中,下降方向

1k -=p ___________.

5. 求解线性方程组Ax =b 的SOR 迭代法收敛的必要条件是___________。

6. 设n n R ⨯∈A , 则存在排列矩阵n n R ⨯∈P 使得PA 具有非零对角元。

7.

α

β

是n R 上任意两个范数, 则存在正常数1c 和2c 使对一切n R ∈x 有

12c c α

β

α≤≤x

x

x .

8. 线性方程组Ax =b 的最小二乘解总是存在的。

9. 求解Ax =b 的单步线性定常迭代法收敛的充分必要条件是() 1.ρ

i j a R

⨯⎡⎤=∈⎣⎦A 且,,1

(1,2,

,)n

k k k j j j k

a a k n =≠≥=∑,则A 是弱严格对角占优的。

三、计算题(每小题10分,共40分)

1648432

4108426

,.8812103844101230A b ⎡⎤⎡⎤⎢⎥⎢⎥⎢

⎥⎢⎥==⎢⎥⎢⎥⎢⎥⎢⎥⎣⎦⎣⎦

用Gauss 消元法求解.Ax b =

12. 确定一个Householder 阵H 和正数α,使(1,0,1,1,1,1)T H =(1,,0,0,0,0)T α. [解]

一、填空题(每空3分,共15分)

二、判断对错(每小题3分,共15分) 姓名:________ 学号:__________ 年级:______________ 专业:_____________

…….……………………….密…………………封…………………线…………………………

13. 已知线性方程组

1231231

238233461332714

x x x x x x x x x +-=⎧⎪

+-=⎨⎪+-=-⎩ (1)试给出Jacobi 迭代法和Gauss-Seidel 迭代法求解该方程组的分量形式。

(2)两种迭代法是否收敛?为什么? [解]

14. 给出求解对称正定线性方程组Ax b =的共轭梯度法的前两步迭代过程。

四、综合题(每小题10分,共30分)

15. 下列程序是最速下降法求解正定方程组Ax b =(,n n

n A R

b R ⨯∈∈)的C 程

序,请补充算法中涉及到的两个C 函数。

#include

double Product(double*x,double*y,int n);

double AProduct(double**A,double*x,double*y,int n);

int Grad(double**A,double*b,double*x,int n,double eps=1.0e-6,int CND=100000); int Grad(double**A,double*b,double*x,int n,double eps,int CND){ double *r=new double[n]; double alph,norm; int i,k;

for(i=0;i

for(i=0;i

while(norm>eps&&k

alph=Product(r,r,n)/AProduct(A,r,r,n); for(i=0;i

for(i=0;i

norm=sqrt(Product(r,r,n)); }

if(k>=CND)

printf("迭代次数超限!结果可能失真!"); return(k); }

16.用Gauss-Seidel迭代法求解Ax b

=的C程序如下。请你将它改造成SOR迭代法的C程序。

int G_Seidel(double**B,double*g,double*x,int n,double eps,int CND){ double y,norm;

int i,j,k;

for(i=0;i

for(j=0;j

for(j=i+1;j

g[i]/=B[i][i]; B[i][i]=0.0;

}

k=0;

do{

for(norm=0.0,i=0;i

y=x[i];

for(x[i]=g[i],j=0;j

x[i]+=B[i][j]*x[j];

if(norm

}

k++;

}while(norm>eps&&k

if(k>=CND)printf("迭代次数已达到最大值,结果可能失真!\n")

return(k);

}

(注:把需要增、删、或改动的内容,在下边空白处说明。)

[解] 17.众所周知Gauss变换(2)

n n

k

L R k n

∈≤<做为行(列)变换仅改变后n k

-行

(列)。请你根据运用Gaus变换设计一个能把

,

n n

i j

A a R⨯

⎡⎤

=∈

⎣⎦约化为上Hessenberg型矩阵的算法。

[解]

相关文档
最新文档