当前位置:
文档之家› 数值方法迭代法解线性方程组实验报告
数值方法迭代法解线性方程组实验报告
1. 138053
x2
1.267604
k二5
x0=-3. 108742
xl=
1. 089012
x2
1. 266255
k=6
x0=-3. 088856
xl=
1.094659
x2
1. 265101
k=7
x0=-3. 090884
xl=
L094729
x2
1. 265541
k=8
x0=-3. 091000
xl=
迭代格式:
Ax二bu (D -L -U)x =b
(若D-L可逆)二x=(D _L)」Ux (D _L)」b
x(k=Gx(k)C, K =0,1,2……
G =(D -L)dU ,C =(D -L)」b,x(0)为初始向量(矩阵形式)
1i-1n
x/k)=—(-送ajX(f-送ajX(k)+bj, (i=1,2,,n)(分量形式)
>p\Debu
g\OOO.exe'
xO=O, 000000 xl-o. 00000(
J边=(
1 00000(
)
k=2
x0=-2. 400000
xl=
1.900000
x2
1. 530000
k=3
x0=-3. 466000
xl=
0. 868500
x2
1. 227450
k=4
x0=-2, 992890
xl=
double A[3][3]={{5,2,1},{-1,4,2},{2,-5,10}};
double b[3]={-12,10,1},X[3]={0,0,0}; //以上为输入部分
while(k<=N)〃迭代步数从1开始,在最大迭代步数之内
{
e=0.0000;
printf("\nk=%d ",k);〃输出第k次迭代
这次实验使我对Guass-Seidel迭代法的理解更加深刻,掌握了迭代法解线性方程 组的方法,掌握了判别迭代法收敛的基本方法及其运用。
三、指导教师评语及成绩
评语
评语等级
优
良
中
பைடு நூலகம்及 格
不及格
1.实验报告按时完成,字迹清楚,文字叙述流畅,逻辑性强
2.实验方案设计合理
3.实验过程(实验步骤详细,记录完整,数据合理,分析透彻)
for(i=0;i<=n ;i++)
{
t=X[i];
s=0.0000;
printf("x%d=%f\t",i,X[i]);〃输出k-1次迭代后的值作为第k次
的初值
for(j=0;j<=n ;j++)
{
if(j!=i)
s=s+A[i][j]*X[j];
}
X[i]=(b[i]-s)/A[i][i]; //迭代过程,得到x[i]的解
4实验结论正确.
成绩:
指导教师签名:
批阅日期:
附录
#i nclude<stdio.h>
#in clude<math.h>
#defi ne eps 1e-4
#defi ne n 2
#defi ne N 10 //以上为定义部分
void mai n()
{
int i,j,k=1;
double t,e,s;
一、实验概述:
1实验目的
1)了解Guass-Seidel迭代法的迭代思想;
2)熟练掌握Guass-Seidel迭代法的基本原理和基本方法;
3)学会用逐次Guass-Seidel迭代法解简单方程组;
4)体会数值计算方法的收敛性及收敛速度;
5)掌握判别迭代法收敛的基本方法及其运用;
2实验原理
Guass-Seidel迭代法:
}
if(k==N)
{
prin tf("fail!");
}
k++;//步数增加
}
}
附录
1•实验项目名称: 要求与实验教学大纲一致。
b)不成立,则判断k<N是否成立
i成立,则k=k+1,回到步骤1)ii否则,输出失败信息,结束程序。
2实验步骤
(1)上机前思考解决问题的思路与方法并写好算法;
(2)根据算法编写解决冋题的程序;
(3)上机时调试程序发现错误并改正;
(4)运行无误后得到结果;
3实验结论(数据及分析结果)
EI
1C:\Users\87058\Desktc
aiij二jw卅
3实验环境
VC++6.0
WIN10操作系统
二、实验内容:
a)i—Xi
1n
b)为_——(bajXj)
aiij J
c)判断声_i | e是否成立,成立则e:-|Xt-t|;(比较本次与上次迭代中的对应 人的 值,寻找最大误差)
3)判断e:::;是否成立
a)成立,找到近似解,则输出迭代步数和近似解k,结束程序。
if(fabs(X[i]-t)>e)
e=fabs(X[i]-t);〃求出最大误差}
if(e<=eps)
{
prin tf("\nthe root:\nk=%d\t",k+1);
for(i=0;i<=n ;i++)
prin tf("x%d=%f\t",i,X[i]);
break;
}//如果两次相邻迭代步数求出的解的误差在最大误差限内,则找到解
1. 094479
x2
1. 265440
x0=-3. 090880
the
roo t:
k=lC
1x0=-3.090915
xl=L 094560
x2=L 265456
k=lC
i x0=-3. 090915
the
roo t:
k=l]
⑷二」3.090915
xl=L 094560
x2=L 265456
4实验小结(收获体会)