工程电磁场 超松弛迭代报告.docx
- 文档编号:6298753
- 上传时间:2023-01-05
- 格式:DOCX
- 页数:7
- 大小:55.25KB
工程电磁场 超松弛迭代报告.docx
《工程电磁场 超松弛迭代报告.docx》由会员分享,可在线阅读,更多相关《工程电磁场 超松弛迭代报告.docx(7页珍藏版)》请在冰豆网上搜索。
工程电磁场超松弛迭代报告
工程电磁场上机实验报告
(一)
组员:
胡怡洁913110690103
贾崎913110690104
李田田913110690105
刘琳913110690106
孙莹913110690108
2014.3.29
1.实验题目:
试用超松弛迭代法求解接地金属槽内的电位分布
已知:
a=4cm,h=a/4=10mm
给定边值:
当a=4cm时,φ=100,其余部分,φ=0
给定初值:
φ(i,j)=0
误差范围:
e=10^-5
计算:
迭代次数n=?
Φ(i,j)分布
2.实验思路:
1.定义两个5*5的矩阵作为第k次和第k+1次的结果的空间
2.给两个矩阵同时定义相同的初始值
3.使收敛因子从1~2以+0.01的速度来循环查找最小的收敛因子,每轮循环开始迭代的时候n都要重新赋值为0,两个矩阵也要重新赋值为初始值
4.将其中一个矩阵定义为第k次迭代的矩阵,将前一次的迭代结果赋值给它
5.将另一个矩阵定义为第k+1次迭代的矩阵,利用上一次迭代的结果进行本次迭代
6.每迭代一次,迭代加一
7.当两个矩阵各电位点的差值>e^-5时,继续迭代,当两个矩阵各电位点的差值 8.对比之前最少的迭代次数和本次的迭代次数,选取其中的较小值作为样本和下次的迭代次数进行比较,并记录本次的收敛因子 9.其中,寻找出和公式结果相等的收敛因子的迭代次数与找出的最小迭代次数和其收敛因子作比较 10.输出找到的最少的迭代次数和其所使用的收敛因子 11.输出迭代后各点电位的值 3.程序清单: 1.循环寻找最小迭代次数收敛因子的程序 #include #include voidmain() {doublea[5][5],b[5][5]; inti,j,h,n,m=5000; doublep,q; for(i=0;i<5;i++) for(j=0;j<5;j++) {if(i==0) a[i][j]=100; else a[i][j]=0; } cout<<"迭代前各电位点上的初始值"< for(i=0;i<5;i++) {for(j=0;j<5;j++) {cout< cout< } for(p=1;p<=2;p=p+0.01) {n=0; for(i=0;i<5;i++) for(j=0;j<5;j++) {if(i==0) a[i][j]=100; else a[i][j]=0; } do {for(i=0;i<5;i++) {for(j=0;j<5;j++) b[i][j]=a[i][j]; } for(i=1;i<4;i++) {for(j=1;j<4;j++) {a[i][j]=b[i][j]+p*(b[i+1][j]+b[i][j+1]+a[i-1][j]+a[i][j-1]-4*b[i][j])/4;} } for(i=1;i<4;i++) {for(j=1;j<4;j++) {if(fabs(a[i][j]-b[i][j])>1e-5) {h=1;break;} elseh=0; } } n++; } while(h); if(n {m=n; q=p; } if(p==1.01) {cout<<"当收敛因子为2/(1+sin(π/a))时,迭代次数为"< } cout<<"当收敛因子为"< cout<<"迭代次数最少,为"< cout<<"迭代后各电位点上的结果值"< for(i=0;i<5;i++) {{for(j=0;j<5;j++) cout< } cout< } } 2.手动输入迭代因子比较的程序 #include #include #include voidmain() {doublea[5][5],b[5][5]; inti,j,h,n=0; doublem,p=1.18; for(i=0;i<5;i++) for(j=0;j<5;j++) {if(i==0) a[i][j]=100; else a[i][j]=0; } cout<<"迭代前各电位点上的初始值"< for(i=0;i<5;i++) {for(j=0;j<5;j++)
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 工程电磁场 超松弛迭代报告 工程 电磁场 松弛 报告