主题:紧急求助!!!!!!!!!!
麻烦各位,高斯分解法和LU分解法求线性方程的解得C语言程序怎么写?
高斯消去法的基本思想为将原系统转化为另一个等价的系统( 该系统与原系统有相同的解),但变换后的系统系数矩阵为上三角形矩阵。
具体步骤如下:
1. 用 a11作为一个要素消去其它方程中 x1 的系数;
2. 用同样的方法消去第三至第 n 个方程中 x2 的系数;
下面给出了高斯消元法的伪代码
Algorithm BetterGaussElimination (A[1..n, 1..n], b[1..n])
for i  1 to n do A[i, n+1]  b[i]
for i  1 to n-1 do
pivotrow  i
for j  i+1 to n do
if |A[j, i]|> |A[pivotrow, i]| pivotrow  j
for k  i to n+1 do
swap(A[i, k], A[pivotrow, k])
for j  i+1 to n do
temp  A[j, i]/A[i, i]
for k  i to n+1 do
A[j, k]  A[j, k]-A[i, k]*temp
LU分解法的方法是考虑下三角阵 L (其主对角线元素均为1. 其它位置的值为高斯消元法中各行所乘的倍数)和上三角阵 U (它是消元法的结果矩阵 ). 我们可以验证 LU=A
事情紧急,麻烦各位帮个忙吧!谢谢!
高斯消去法的基本思想为将原系统转化为另一个等价的系统( 该系统与原系统有相同的解),但变换后的系统系数矩阵为上三角形矩阵。
具体步骤如下:
1. 用 a11作为一个要素消去其它方程中 x1 的系数;
2. 用同样的方法消去第三至第 n 个方程中 x2 的系数;
下面给出了高斯消元法的伪代码
Algorithm BetterGaussElimination (A[1..n, 1..n], b[1..n])
for i  1 to n do A[i, n+1]  b[i]
for i  1 to n-1 do
pivotrow  i
for j  i+1 to n do
if |A[j, i]|> |A[pivotrow, i]| pivotrow  j
for k  i to n+1 do
swap(A[i, k], A[pivotrow, k])
for j  i+1 to n do
temp  A[j, i]/A[i, i]
for k  i to n+1 do
A[j, k]  A[j, k]-A[i, k]*temp
LU分解法的方法是考虑下三角阵 L (其主对角线元素均为1. 其它位置的值为高斯消元法中各行所乘的倍数)和上三角阵 U (它是消元法的结果矩阵 ). 我们可以验证 LU=A
事情紧急,麻烦各位帮个忙吧!谢谢!