版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
PAGEPAGE5第二步:求L和U矩阵的逆,(1)求U矩阵的逆由式(9)可得矩阵U的逆的各元素计算如下:(2)求L矩阵的逆由(8)式可得L矩阵的逆的各元素计算如下所以得到L和U的逆矩阵为:(3)求A的逆矩阵由式(10)可计算得到矩阵A的逆,如下:由程序计算出的结果如下:2、C语言程序设计及测试2.1算法c程序实现#include<stdio.h>#include<string.h>#defineN4voidmain(){floata[N][N];floatL[N][N],U[N][N],out[N][N],out1[N][N];floatr[N][N],u[N][N];memset(a,0,sizeof(a));memset(L,0,sizeof(L));memset(U,0,sizeof(U));memset(r,0,sizeof(r));memset(u,0,sizeof(u));intn=N;intk,i,j;intflag=1;floats,t;////////////////////inputamatrix////printf("\ninputA=");for(i=0;i<n;i++)for(j=0;j<n;j++)scanf("%f",&a[i][j]);//////////////////figuretheinputmatrix//////////////////////////printf("输入矩阵:\n");for(i=0;i<n;i++){ for(j=0;j<n;j++) { printf("%lf",a[i][j]); } printf("\n");}for(j=0;j<n;j++)a[0][j]=a[0][j];//计算U矩阵的第一行for(i=1;i<n;i++)a[i][0]=a[i][0]/a[0][0];//计算L矩阵的第1列for(k=1;k<n;k++){for(j=k;j<n;j++){s=0;for(i=0;i<k;i++)s=s+a[k][i]*a[i][j];//累加a[k][j]=a[k][j]-s;//计算U矩阵的其他元素}for(i=k+1;i<n;i++){t=0;for(j=0;j<k;j++)t=t+a[i][j]*a[j][k];//累加a[i][k]=(a[i][k]-t)/a[k][k];//计算L矩阵的其他元素}}for(i=0;i<n;i++)for(j=0;j<n;j++){if(i>j){L[i][j]=a[i][j];U[i][j]=0;}//如果i>j,说明行大于列,计算矩阵的下三角部分,得出L的值,U的//为0else{U[i][j]=a[i][j];if(i==j)L[i][j]=1;//否则如果i<j,说明行小于列,计算矩阵的上三角部分,得出U的//值,L的为0elseL[i][j]=0;}}if(U[1][1]*U[2][2]*U[3][3]*U[4][4]==0){ flag=0;printf("\n逆矩阵不存在");}if(flag==1){/////////////////////求L和U矩阵的逆for(i=0;i<n;i++)/*求矩阵U的逆*/{u[i][i]=1/U[i][i];//对角元素的值,直接取倒数for(k=i-1;k>=0;k--){s=0;for(j=k+1;j<=i;j++)s=s+U[k][j]*u[j][i];u[k][i]=-s/U[k][k];//迭代计算,按列倒序依次得到每一个值,}}for(i=0;i<n;i++)//求矩阵L的逆{r[i][i]=1;//对角元素的值,直接取倒数,这里为1for(k=i+1;k<n;k++){for(j=i;j<=k-1;j++)r[k][i]=r[k][i]-L[k][j]*r[j][i];//迭代计算,按列顺序依次得到每一个值}}/////////////////绘制矩阵LU分解后的L和U矩阵///////////////////////printf("\nLU分解后L矩阵:");for(i=0;i<n;i++){printf("\n");for(j=0;j<n;j++)printf("%lf",L[i][j]);}printf("\nLU分解后U矩阵:");for(i=0;i<n;i++){printf("\n");for(j=0;j<n;j++)printf("%lf",U[i][j]);}printf("\n");////////绘制L和U矩阵的逆矩阵printf("\nL矩阵的逆矩阵:");for(i=0;i<n;i++){printf("\n");for(j=0;j<n;j++)printf("%lf",r[i][j]);}printf("\nU矩阵的逆矩阵:");for(i=0;i<n;i++){printf("\n");for(j=0;j<n;j++)printf("%lf",u[i][j]);}printf("\n");//验证将L和U相乘,得到原矩阵printf("\nL矩阵和U矩阵乘积\n");for(i=0;i<n;i++) { for(j=0;j<n;j++) {out[i][j]=0;}}for(i=0;i<n;i++) { for(j=0;j<n;j++) { for(k=0;k<n;k++) {out[i][j]+=L[i][k]*U[k][j];} }}for(i=0;i<n;i++){ for(j=0;j<n;j++) { printf("%lf\t",out[i][j]); }printf("\r\n");}//////////将r和u相乘,得到逆矩阵printf("\n原矩阵的逆矩阵:\n");for(i=0;i<n;i++) { for(j=0;j<n;j++) {out1[i][j]=0;}}for(i=0;i<n;i++) { for(j=0;j<n;j++) { for(k=0;k<n;k++) {out1[i][j]+=u[i][k]*r[k][j];} }}fo
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025-2026学年苏州市工业初三下学期第四次周考(线上)化学试题试卷含解析
- 2025-2026学年浙江省杭州市景成实验中学初三第四次模拟综合试卷含解析
- 山东省滨州市五校联合2025-2026学年初三年级元月调研考试化学试题含解析
- 2026年湖北省十堰市十堰外国语校初三化学试题5月最后一卷试题含解析
- 广西防城港市重点中学2026年初三下学期开学考试化学试题试卷版含答案含解析
- 2026年医院场景智能轮椅患者转运检查科室自动导航方案
- 2026年深海采矿环境影响评价中生物多样性指标选取
- 2026年德国LiGNUM项目秸秆纸浆副产物转化为尼龙原料技术解析
- 2026年企业数据资产入表与价值评估操作手册
- 2025年临床诊断试卷
- 学校德育活动评估标准体系
- 社保局内控管理规范制度
- 统编版六年级下册1.1《学会尊重》 第二课时 《尊重自己》 课件含内嵌视频
- 诺如病毒相关知识课件
- 7.3粤港澳大湾区的内外联系 课件 2025-2026学年湘教版地理八年级下册
- 春季护肤专业知识课件
- 2026年湖南工艺美术职业学院单招职业技能测试题库及完整答案详解1套
- 幼儿园集团化办园人员外包服务采购项目方案投标文件(技术标)
- TNAHIEM《智慧药房建设与运维管理标准》
- 护士培训的不足
- T∕GDRX 4004-2025 送气工行为规范
评论
0/150
提交评论