数值与符号计算 lu和qr分解实验报告

数值与符号计算 lu和qr分解实验报告

ID:14236692

大小:243.50 KB

页数:8页

时间:2018-07-27

数值与符号计算  lu和qr分解实验报告_第1页
数值与符号计算  lu和qr分解实验报告_第2页
数值与符号计算  lu和qr分解实验报告_第3页
数值与符号计算  lu和qr分解实验报告_第4页
数值与符号计算  lu和qr分解实验报告_第5页
资源描述:

《数值与符号计算 lu和qr分解实验报告》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、数值与符号计算实验(丑)线性代数方程组求解姓名:学号:学院:一、实验题目用C/C++语言实现如下函数:1、boollu(double*a,int*pivot,intn);矩阵的LU分解2、boolguass(doubleconst*lu,intconst*p,double*b,intn);求线性代数方程组的解3、voidqr(double*a,double*d,intn);矩阵的QR分解4、boolhshld(doubleconst*qr,doubleconst*d,double*b,intn);求线性代数方程组的解二、实验要求i.撰写详细的实验报告i

2、i.不必修改函数界面iii.用高斯列选主元消去法和矩阵QR分解两种方法求解下面3个方程组,比较这两种方法的误差。一、实验算法结果1、矩阵的Lu分解算法代码如下:boollu(double*a,int*pivot,intn)//矩阵LU分解{inti,j,k;doublemax,temp;max=0;temp=0;for(i=0;i

3、max){max=fabs(a[n*j+i]);pivot[i]=j;}}//对第i列进行行变换,使得主元在对角线上if(pivot[i]!=i){for(j=i;j

4、n*j+k]=a[n*j+k]-a[n*j+i]*a[n*i+k];}//计算下三角Lfor(i=0;i

5、or(i=0;i=0;i--){for(j=n-1;j>i;j--)b[i]=b[i]-lu[n*i+j]*b[j];b[i]=b[i]/lu[n*i+i];}returnfalse;}2、矩阵的QR分解算法代码如下:voidqr(double*

6、a,double*d,intn)//矩阵的QR分解{inti,j,l,k;doubletem,m;double*temp;temp=(double*)malloc(sizeof(double)*n);for(i=0;i0)m=-sqrt(m);elsem=sqrt(m);//获得temp放入矩阵,并存主元dtem=0;d[i]=m;a[n*i+i]=a[n*i+i]-m;

7、for(j=i;j<=n-1;j++)tem=tem+a[n*j+i]*a[n*j+i];tem=sqrt(tem);for(j=i;j<=n-1;j++)a[n*j+i]=a[n*j+i]/tem;//调整矩阵for(k=i+1;k

8、;}1、QR求解线性方程组的代码如下:boolhouseholder(doubleconst*

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

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

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