当前位置:文档之家› 一病态线性方程组的算法设计

一病态线性方程组的算法设计

实验一 病态线性方程组的算法设计
1 实验目的
① 初步了解常规方法在求解病态线性方程组时遇到的困难。

② 针对病态问题设计求解算法并验证算法的有效性。

2 实验内容
Hilbert 矩阵是一个典型的病态矩阵,定义如下
11/21/1/21/31/(1)()1/1/(1)
1/(21)n ij n n H h n n n ⎡⎤⎢⎥+⎢⎥==⎢⎥⎢⎥+-⎣⎦ (1) 其中1(1)ij h i j =+-,
它是一个对称正定矩阵,并且()n cond H 随着n 的增加迅速增加,其逆矩阵1()n ij H a -=,其中
2(1)(1)!(1)!(1)[(1)!(1)!]()!()!
i j ij n i n j a i j i j n i n j +-+-+-=+----- 考虑线性方程组
n H x b = (2)
其中11
(,,),(1,2,,)n
T
n i ij j b b b b h i n ====∑。

易见()1,,1T x =为方程组(2)的精确解。

编程完成以下题目:
(1) 用列主元高斯消去算法和高斯-赛德尔迭代算法求解线性方程组(2),与精确解进行比较,
写出你的结论,并分析原因。

(线性方程组的阶数3,5,10,20,40n =)
(2) 设计一种可对方程组(2)进行求解的有效算法。

(3,5,10,20,40n =)
3 练习思考
什么是病态线性方程组,如何判定线性代数方程组是否是病态的?并举例对你的结论进行验证。

相关主题