预览加载中,请您耐心等待几秒...
1/9
2/9
3/9
4/9
5/9
6/9
7/9
8/9
9/9

在线预览结束,喜欢就下载吧,查找使用更方便

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

本科实验报告课程名称:计算机数值方法B实验项目:线性方程组的直接解法实验地点:逸夫楼302专业班级:学号:学生姓名:指导教师:2013年4月13日一、实验目的和要求(1)了解线性方程组常见的直接解法,如Guass消元法、LU分解法、追赶法。(2)加深对线性方程组求解方法的认识,掌握算法。(3)会进行误差分析,并能对不同方法进行比较。二、实验内容和原理合理利用Gauss消元法、LU分解法或追赶法求解下列方程组:①②③④(n=5,10,100,…)1、高斯分解法:=1\*GB2⑴将原方程组化为三角形方阵的方程组:lik=aik/akkaij=aij-lik*akjk=1,2,…,n-1i=k+1,k+2,…,nj=k+1,k+2,…,n+1=2\*GB2⑵由回代过程求得原方程组的解:xn=ann+1/annxk=(akn+1-∑akjxj)/akk(k=n-1,n-2,…,2,1)2、LU分解法:将系数矩阵A转化为A=L*U,L为单位下三角矩阵,U为普通上三角矩阵,然后通过解方程组l*y=b,u*x=y,来求解x。3、追赶法:用来求对角方程组;将系数矩阵A转化为A=L*U,L为普通下n-1对角矩阵,U为单位上n-1对角矩阵,然后通过解方程组l*y=b,u*x=y,来求解x。三、主要仪器设备惠普ProBook6460bVC++运行环境四、操作方法与实验步骤(1)Guass消元法完全主元素消元法#include"stdafx.h"#include"math.h"#include"iostream"usingnamespacestd;floata[100][101];floatx[10];intN;voidoutput(){for(inti=1;i<=N;i++){for(intj=1;j<=N+1;j++){cout<<a[i][j]<<""<<"";}cout<<endl;}}voidinput(){cout<<"请输入矩阵阶数:"<<endl;cin>>N;cout<<"请输入矩阵各项:"<<endl;for(inti=1;i<=N;i++)for(intj=1;j<=N+1;j++){cin>>a[i][j];}cout<<endl;}voidmain(){intz[10];intmaxi,maxj,i;input();for(inti=1;i<=N;i++)z[i]=i;for(intk=1;k<N;k++){maxi=k;maxj=k;floatmaxv=abs(a[k][k]);for(i=k;i<=N;i++)for(intj=k;j<=N;j++)if(abs(a[i][j])>maxv){maxv=abs(a[i][j]);maxi=i;maxj=j;}if(maxi!=k){for(intj=1;j<=N+1;j++){floatt=a[k][j];a[k][j]=a[maxi][j];a[maxi][j]=t;}}if(maxj!=k){for(i=1;i<=N;i++){floatt=a[i][k];a[i][k]=a[i][maxj];a[i][maxj]=t;}intt=z[k];z[k]=z[maxj];z[maxj]=t;}for(inti=k+1;i<=N;i++){floatl=a[i][k]/a[k][k];for(intj=k;j<=N+1;j++){a[i][j]+=-l*a[k][j];}}}for(i=N;i>0;i--){floats=0;for(intj=i+1;j<=N;j++){s+=a[i][j]*x[z[j]];}x[z[i]]=(a[i][N+1]-s)/a[i][i];}cout<<"完全主元素消去法之后的矩阵为:"<<endl;output();for(i=1;i<=N;i++)cout<<"x["<<i<<"]="<<x[i]<<endl;system("pause");}列主元素消元法intmain(){floata[3][4]={{1,2,3,14},{0,1