精选优质文档-倾情为你奉上利用共轭梯度法求解线性方程组翟莹 在自然科学和工程技术中很多问题的解决常常归结为解线性方程组,而这些方程组的系数矩阵大致可分为两种:低阶稠密矩阵和大型稀疏矩阵。而求解方程组的方法通常为直接法和迭代法。直接法用于较低阶方程组的求解,效率较高;迭代法更适用于高阶方程组的求解,常用的经典迭代法有高斯-赛德尔迭代法和雅各比迭代法,但收敛效率较低;共轭梯度法(CG)以较高的收敛速度而经常被采用。从理论上讲,一个n阶方程组最多迭代 n 步就可求出精确解。1 直接法直接法就是经过有限步算术运算,无需迭代可直接求得方程组精确解的方法。但实际计算中由于舍入误差的存在和影响,这种方法也只能得到线性方程组的近似解,该方法是求解低阶稠密矩阵方程组的有效方法。如Cramer法则,Gauss消元法及其变形(LU分解法、Cholesky分解法、QR分解法)等。Matlab中,用矩阵除法“/”或 “”直接求解线性方程组(见附录一),它是一个内部包含着许许多多的自适应算法,对超定方程用最小二乘法求解;对欠定方程因为它的解不唯一,Matlab给出所有解中范数最