数值计算方法实验报告71433new

数值计算方法实验报告71433new

ID:18391136

大小:46.03 KB

页数:6页

时间:2018-09-17

数值计算方法实验报告71433new_第1页
数值计算方法实验报告71433new_第2页
数值计算方法实验报告71433new_第3页
数值计算方法实验报告71433new_第4页
数值计算方法实验报告71433new_第5页
资源描述:

《数值计算方法实验报告71433new》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、线性方程组的各种解法题目:用三种不同的方法计算线性方程组Ax=b,输入方程组的阶数n,矩阵A的元素和常向量b的元素,输出方程组的解。一.高斯列主元法1.方法原理:.高斯消去法包括两过程:先把方程组化为同解的上三角方程组,再按相反顺序求解上三角方程组。前者称消去或消元过程,后者称回代过程。消去过程实际上是对增广矩阵作初等变换。对一般的n阶方程组,消去过程分n-1步:第一步消去a[1][1]下方元素,第二部消去a[2][2]下方元素,······,第n-1步消去a[n-1][n-1]下方元素。第k步将第k行的适当倍数加于其后各行,也可说是从k+1~n行减去第行的适当倍数,

2、使它们的第k列元素变为0,而k+1~n+1列元素减去第k行对应列元素的倍数。为了避免出现小主元,可在第k步的第k列的元素a[k][k],a[k+1][k],···,a[n][k]中选主元,即在其中找出绝对值最大的元素a[p][k],然后交换第k和第p行,继续进行消去过程。交换行相当于改变方程顺序,不会影响原方程组的解。这种方法称为列主元消去法。2.源代码:voidGaosi(floata[15][15],intn,floatb[15],floatx[15])/*高斯列主元法的函数*/{inti,j,k;for(k=1;k<=n-1;k++){floatmax=fabs

3、(a[k][k]);intp_max=k;for(intp=k;p<=n;p++)/*列主元的选主元*/if(max

4、[n]=b[n]/a[n][n];for(k=n-1;k>=1;k--){floatsum=0;for(j=k+1;j<=n;j++){sum+=(a[k][j]*x[j]);}x[k]=(b[k]-sum)/a[k][k];}cout<<"============================";cout<<"用高斯消去法解方程组:"<

5、ut(x,n);/*依次输出方程的解*/}一.Jacobi迭代法1.方法原理:由方程组的形式可构成迭代式:x[i](k+1)=(-a[i][1]x[1](k)-···-a[i][i-1]x[i-1](k)-a[i][i+1]x[i+1](k)-···-a[1]x[n](k)+b[i])/a[i][i],i=1~n给定初值x(0)=x(x[1](0),x[2](0),···x[n](0))T,令k=0,1,···,由此可得向量序列{x(k)}.如果此序列收敛于x,那么每个分量序列{x[i](k)}必收敛于想x[i],x[i](i=1~n)就必然是原方程组的解。此方法称为

6、雅可比(Jacobi)迭代法。2.源代码:voidJacobi(floata[15][15],floatx[15],intn,floatb[15])/*雅可比迭代法函数*/{floaty[15]={0};doubleD;for(inti=1;iD)/*退出循环的条件*/D=

7、fabs(x[i]-y[i]);}for(inti=1;i=Level)continue;elsebreak;}cout<<"============================";cout<<"用Jacobi法解方程组:"<

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。