数值计算方法实验报告

数值计算方法实验报告

ID:8840866

大小:36.90 KB

页数:9页

时间:2018-04-09

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

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

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

2、n-1]下方元素。第k步将第k行的适当倍数加于其后各行,也可说是从k+1~n行减去第行的适当倍数,使它们的第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,

3、floatb[15],floatx[15])/高斯列主元法的函数/{inti,j,k;for(k=1;k<=n-1;k++){floatmax=fabs(a[k][k]);intp_max=k;for(intp=k;p<=n;p++)/列主元的选主元/if(max

4、c=a[i][k]/a[k][k];for(j=k;j<=n+1;j++)a[i][j]=a[i][j]-ca[k][j];}}for(intp=1;p<=n;p++){b[p]=a[p][n+1];}x[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、"用高斯消去法解方程组:"<

6、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)就必然是原方程组的解。此方法称为雅可比(Jacobi)迭代法。2.源代码:voidJacobi(floata[15][15],floatx[15],intn,floatb[15])/雅可比迭代法函数/{floaty[15]={0};d

7、oubleD;for(inti=1;iD)/退出循环的条件/D=fabs(x[i]-y[i]);}for(inti=1;i=Level)continue;elsebrea

8、k;}cout<<"============================";cout<<"用Jacobi法解方程组:"<

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

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

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