- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
《数值计算方法》实验报告
线性方程组AX=B的数值计算方法实验
学号:2013040207012 姓名:梁哲豪
实验描述
在自然科学和工程技术中很多问题的解决常常归结为解线性代数方程组。例如电学中的网络问题,船体数学放样中建立三次样条函数问题,用最小二乘法求实验数据的曲线拟合问题,解非线性方程组问题,用差分法或者有限元法解常微分方程,偏微分方程边值问题等都导致求解线性方程组,而且后面几种情况常常归结为求解大型线性方程组。线性代数方面的计算方法就是研究求解线性方程组的一些数值解法与研究计算矩阵的特征值及特征向量的数值方法。
关于线性方程组的数值解法一般有两类:
直接法:若在计算过程中没有舍入误差,经过有限步算术运算,可求得方程组的精确解的方法。
迭代法:用某种极限过程去逐步逼近线性方程组精确解的方法。迭代法具有占存储单元少,程序设计简单,原始系数矩阵在迭代过程中不变等优点,但存在收敛性及收敛速度等问题。
上三角线性方程组的求解:
基本算法:
高斯消元法:将原方程组化为三角形方阵的方程组:
a
(k=1,2,…,n-1; i=k+1,k+2, …,n ;j=k+1,k+2, …,n+1)
由回代过程求得原方程组的解:
x
x
LU分解法:
将系数矩阵A转化为A=L*U,L为单位下三角矩阵,U为普通上三角矩阵,然后通过解方程组l*y=b,u*x=y,来求解x。
二、实验内容
1、许多科学应用包含的矩阵带有很多零。在实际情况中很重要的三角形线性方程组有如下形式:
……
构造一个程序求解三角形线性方程组。可假定不需要变换。而且可用第k行消去第k+1行的。
核心代码:
#includeiostream.h
#includemath.h
#includeiomanip.h
#define N 4//矩阵阶数
void ColPivot(double c[N][N+1],double []); //函数声明
void main(){
int i,j;
double x[N];
double c[N][N+1]={1,3,5,7,1,
2,-1,3,5,2,
0,0,2,5,3,
-2,-6,-3,1,4};
cout----------------------------------------endl;
cout系数矩阵为: \n;
for(i=0;iN;i++){
for(j=0;jN;j++)
coutsetw(10)c[i][j];
coutendl;
}
cout右侧矩阵 y 为: \n;
for(i=0;iN;i++)
coutsetw(10)c[i][N];
coutendl;
cout----------------------------------------endl;
ColPivot(c,x); //调用函数,进行高斯消去法变换
cout变换后得到的三角矩阵: \n;
for(i=0;iN;i++){
for(j=0;jN;j++)
coutsetw(10)c[i][j];
coutendl;
}
cout变换后的右侧矩阵 y 为: \n;
for(i=0;iN;i++)
coutsetw(10)c[i][N];
coutendl;
cout----------------------------------------endl;
cout方程的解为: \n;
for(i=0;iN;i++)
cout x[i]= x[i]endl;
cout----------------------------------------endl;
}
void ColPivot(double c[N][N+1],double x[])
{
int i,j,k;
double p,max;
double t[N];
for(i=0;i=N-2;i++)
{
max=0;
k=i;
for(j=i+1;jN;j++)
if(fabs(c[j][i])max)
{
k=j;
max=fabs(c[j][i]); //选主元
}
if(k!=i)
for(j=i;j=N;j++)
{
p=c[i][j];
c[i][j]=c[k][j]; //选出主元后进行交换
c[k][j]=p;
}
for(j=i+1;jN;j++)
{
p=c[j][i]/c[i][i];
for(k=i;k=N;k++)
c[j][k]-=p*c[i][k]; //高斯消去,进行计算
}
}
for(i=0;iN;i++)
t[i]=c[i][N];
for(i=N-1;i=0;i--) //利用回代法求最终解
{
for(j=N-1;ji;j--)
t[i]-=c[i][j]*x[j];
x[i]=t[i]/c[i][i];
}
}
运行结果:(以具体方
您可能关注的文档
最近下载
- 2024届浙江省新阵地教育联盟高三上学期第二次联考作文“君子有三鉴:鉴乎前,鉴乎人,鉴乎镜”导写及范文.docx VIP
- 高速铁路通信工程细部设计和工艺质量标准(1).pdf VIP
- 2020年成人高等学校招生全国统一考试高起点数学(文).docx VIP
- 钢筋混凝土化粪池22S702.pdf VIP
- 医疗设备投放合同.docx VIP
- 附件2农村实用人才基本情况调查表.doc VIP
- 《Python程序设计》高职PPT完整全套教学课件1-110.pptx VIP
- 水电站防汛工作检查表[一].doc VIP
- 关于《农村留守儿童行为习惯培养的研究》的研究报告.doc VIP
- 全概率公式(呼伦贝尔学院吴美华)教学课件.ppt.ppt VIP
文档评论(0)