工程电磁场实验报告用超松弛迭代法求解接地金属槽内的电位分布
电磁场数值计算上机题报告
电磁场数值计算上机题报告第一题计算长直接地金属槽中的电场分布。
金属槽横截面如图1所示,其侧壁与底面电位均为零,顶盖电位相对值为10。
槽内电位函数满足拉普拉斯方程。
计算槽内电位分布。
要求:(1)先用正方形网格粗分,每边取4个网格计算,取不同的松弛因子,比较其收敛速度。
取计算精度为千分之一。
(2)划分网格加倍,计算电位分布,并与上面计算结果比较。
(一)建立问题的数学物理模型首先列出方程及其边界条件 槽内的电位满足二维的拉普拉斯方程:222220x y ϕϕϕ∂∂∇=+=∂∂其中,x y 的范围是:0,0x a y a <<<<边界条件是:0000;10x x ay y aϕϕϕϕ========图1 (二)算法设计及其实现在本题中,因为区域为正方形区域,网格采用正方形网格,每边四个网格,因此,每边要有5个结点, 网格数m=n=4,比较少,不能用课本中的公式计算收敛因子,取收敛因子为 1.4α=,计算的程序的流程为:①选取计算的场域,并划分网格,网格划分如右图2所示:右图表示网格的划分,共16个网格,一共划分了25个结点,每个节点用相应的下标(i,j )来表示,对应的电位为(,)u i j 。
根据题意,边界条件的 处理如下: 图 2(1,)(,1)(,1)0(,)10(21)u j u i u n u k j k n ===⎧⎨=≤≤-⎩其中n 为一行对应的节点数,根据题意,这里n=5② 用(,)u i j 表示节点的电位,设经过第n 次迭代之后的结点电位用(),n i j u 来表示,则超松弛迭代法的差分格式(记,(,)i j u u i j =)为:(1)()()()(1)(1)(),,1,,11,,1,(4)4n n n n n n n i j i j i j i j i j i j i j u u u u u u u α+++++--=++++- 边界条件前面已经给出 ③给各个节点赋初值,对于非边界上的点(对于边界点的值前面已经赋过初值),如下10(,)(1)1u i j j n =--④迭代计算,直到已经满足精度条件为止,这里精度为0.0001,最后输出计算的结果,输出结果见生成的数据文件shuju.txt 中 ⑤计算框图如图3所示图 3 计算框图⑥用fortran90语言编写计算机程序,计算各点的电位,程序清单如下:(三)计算结果及数据分析当网格数目为4(节点数目为5),加速收敛因子为1.4,计算精度为0.0001时,计算出各结点电位如下所示(对不同的收敛因子的比较后面进行)不可能完全对称,只能是近似对称的),这点不难从理论上进行分析得到。
电磁场与电磁波实验报告
电磁场与电磁波实验报告09024126 张亦驰一.实验目的使用简单迭代法与超松弛迭代法求解电磁场金属槽边值问题二.实验步骤1.简单迭代法:源程序:#include<xxgc.h>main(){int i;double a[50][3][3];a[0][0][0]=a[0][1][0]=a[0][2][0]=25;a[0][0][1]=a[0][1][1]=a[0][2][1]=50;a[0][0][2]=a[0][1][2]=a[0][2][2]=75;for(i=0;i<50;i++){printf("a[%d][0][0]=%.3f,a[%d][1][0]=%.3f,a[%d][2][0]=%.3f\n",i,a[i][0][0],i,a[i][1][0],i,a[i ][2][0]);printf("a[%d][0][1]=%.3f,a[%d][1][1]=%.3f,a[%d][2][1]=%.3f\n",i,a[i][0][1],i,a[i][1][1],i,a[i ][2][1]);printf("a[%d][0][2]=%.3f,a[%d][1][2]=%.3f,a[%d][2][2]=%.3f\n\n",i,a[i][0][2],i,a[i][1][2],i,a[i][2][2]);getch();a[i+1][0][0]=0.25*(0+0+a[i][1][0]+a[i][0][1]);a[i+1][0][1]=0.25*(0+a[i][0][0]+a[i][1][1]+a[i][0][2]);a[i+1][0][2]=0.25*(0+a[i][0][1]+a[i][1][2]+100);a[i+1][1][0]=0.25*(a[i][0][0]+0+a[i][2][0]+a[i][1][1]);a[i+1][1][1]=0.25*(a[i][0][1]+a[i][1][0]+a[i][2][1]+a[i][1][2]);a[i+1][1][2]=0.25*(a[i][0][2]+a[i][1][1]+a[i][2][2]+100);a[i+1][2][0]=0.25*(a[i][1][0]+0+0+a[i][2][1]);a[i+1][2][1]=0.25*(a[i][1][1]+a[i][2][0]+0+a[i][2][2]);a[i+1][2][2]=0.25*(a[i][1][2]+a[i][2][1]+0+100);}getch();}实验结果如图2.超松弛迭代法源程序:#include<stdio.h>#include<math.h> #include<iostream> using namespace std;#define pi 3.1415926void Boundary_conditions_initialize(float Boundary_areas[5][5]) {for(int j=0;j<5;j++){ Boundary_areas[0][j]=0;Boundary_areas[4][j]=100; }for(int i=0;i<5;i++){Boundary_areas[i][0]=0;Boundary_areas[i][4]=0;j =100 Vj =0j =0}}void nodes_Field_region_Initialization(float Field_region[5][5]) {for(int i=1;i<4;i++){ for(int j=1;j<4;j++){Field_region[i][j]=0; }}}void Output_nodes_value (float all_nodes[5][5],int count){if(count==0){cout<<"场内各点的初始值为:"<<'\n' ;}else{cout<<"迭代次数N="<< count<<'\n'<<"迭代最终结果为:" <<'\n'; }for(int i=4;i>=0;i--){ for(int j=0;j<5;j++){cout<<all_nodes[i][j]<<'\t'<<'\t';}cout<<'\n';}}void main(void){int a=4 ;int h=a/4;float areas[5][5] ;int N=0 ;const float e=0.00001;float Maxerror ;float a0=2/(1+sin(pi/4));Boundary_conditions_initialize(areas);nodes_Field_region_Initialization(areas);Output_nodes_value (areas,N) ;cout<<"加速因子a="<<a0<<'\n';do{ N=N+1 ;for(int i=1;i<4;i++){ for(int j=1;j<4;j++){ float areasK=areas[i][j];areas[i][j]=areas[i][j]+(a0/4)*(areas[i-1][j]+areas[i][j-1]+areas[i+1 ][j]+areas[i][j+1]-4*areas[i][j]);float error=fabs(areas[i][j]-areasK);if(i==1&&j==1){Maxerror=error; }else{if (Maxerror<error) Maxerror=error ;}}}} while(Maxerror>e) ;Output_nodes_value(areas,N);}。
工程电磁场C++编程作业-一、用超松弛迭代法求解接地金属槽内电位的分布二、按对称场差分格式求解电位的分布
工程电磁场实验报告——C++编程课题一、用超松弛迭代法求解接地金属槽内电位的分布二、按对称场差分格式求解电位的分布一、用超松弛迭代法求解接地金属槽内电位的分布一、实验原理二、程序框图:三、实验内容:1、用超松弛迭代法求解接地金属槽内点位分布1)内容及要求:2)实验思路:由超松弛迭代法,将网格分成5*5列,边界点正好都是网格的节点,对所有的节点进行编号,并记录节点的坐标位置,并用一个二维数组进行表示u1[5][5],此数组表示的是迭代后的值。
考虑到迭代前后的数值不一样,再用一个二维数组表示迭代之前的数值u2[5][5]。
运用C++的知识在计算机上将边界值和内节点进行赋值,即将节点离散化。
然后开始迭代。
迭代开始之前将另一个数组b赋值,用数组a给其赋值,表示迭代之前的值,好用于后面精度的比较。
开始进行迭代时,根据超松弛公式将迭代方程编写输入。
每次迭代结束后将数组a和数组b对应的值进行比较,即是精度的计算。
如果误差大于所规定的误差0.00001,将a的值赋给b,然后继续进行迭代。
直到当迭代前后数值误差小于所规定的误差时停止迭代。
并比较迭代因子的大小对收敛次数的影响,选取最烧收敛次数的迭代因子作为实验最后的输出结果。
最后输出最适合迭代因子、迭代的次数和迭代后各点的电位值。
3)程序如下://********用超松弛迭代法求解接地金属槽内电位的分布********#include<iostream.h>#include<math.h>#include<iomanip.h>Void main(){double u1[5][5],u2[5][5];int flag=1000,i,j,e,n;double a,d;//a最佳加速收敛因子for(i=0;i<5;i++)for(j=0;j<5;j++){if(i==0)u1[i][j]=100;else u1[i][j]=0;}cout<<"迭代前各电位点上的初始值:"<<endl;for(i=0;i<5;i++){for(j=0;j<5;j++){cout<<u1[i][j]<<" ";//输出迭代初值}cout<<endl;}cout<<"\n";for(d=1;d<2;d+=0.01)//找取迭代次数最少的加速收敛因子{n=0;for(j=0;j<5;j++){u1[0][j]=100;}for(i=1;i<5;i++)for(j=0;j<5;j++){u1[i][j]=0;}do//迭代x次{for(i=0;i<5;i++){for(j=0;j<5;j++){u2[i][j]=u1[i][j];}}for(i=1;i<4;i++)for(j=1;j<4;j++){u1[i][j]=u2[i][j]+(d/4)*(u2[i+1][j]+u2[i][j+1]+u1[i-1][j]+u1[i][j-1]-4*u2[i][j]);}for(i=1;i<4;i++)//判断精度{{for(j=1;j<4;j++){if(fabs(u1[i][j]-u2[i][j])>1e-5){e=1; break; }else e=0; }if(e==1) break; }}n++;//迭代次数}while(e);if(n<flag) {flag=n; a=d; }}cout<<"收敛因子:"<<a<<endl;cout<<endl;cout<<"迭代次数:"<<flag<<endl;cout<<endl;cout<<"各节点上最终电位近似值:"<<endl;for(i=0;i<5;i++){for(j=0;j<5;j++){cout<<setiosflags(ios::fixed)<<setprecision(5)<<setw(8)<<u1[i][j]<<" ";//对齐输出}cout<<endl; }cout<<endl; }4)输出结果:5)总结:最佳收敛因子:1.18此时的最少迭代次数:102、按对称场差分格式求解电位的分布1)内容及要求:2)实验思路:类似与第一题的思路,但只计算一半的区域,对另一半进行对称性计算,减小计算量。
电磁场仿真实验-用超松弛法求二维静电场域的电位分布
姓名:梁鸿宇学号:19 班级:10通信实验目的:通过用MATLAB等软件编程计算电磁场问题,掌握有限差分法的基本思想,掌握电磁场数值计算的基本思想和方法,掌握MATLAB等软件编程技巧,学会用MATLAB等软件应用于有限差分法的数值解。
实验内容:用MATLAB等软件编程计算电磁场问题,给出有关波形和图表。
分析数值解和解析解的优缺点。
题目如下:实验程序与结果分析:程序(MATLAB)%电位函数为φ(x,y) ,边界条件φ(x,y)=0(x=0);φ(x,y)=50(y=0);% φ(x,y)=100(x=a);φ(x,y)=100(y=a);hx=11;hy=11; %设置网格节点数v1=ones(hy,hx); %设置行列二维数组m=10;n=10; %横纵向网格数%上下两行的Dirichlet条件边界值:v1(1,:)=ones(1,hx)*50;v1(hy,:)=ones(1,hx)*100;%左右两列的Dirichlet条件边界值:for i=1:hyv1(i,1)=0;v1(i,hx)=100;end%计算松弛因子t1=(cos(pi/m)+cos(pi/n))/2;w=2/(1+sqrt(1-t1^2));v2=v1;maxt=1;t=0; %初始化k=0while(maxt>1e-6) %由V1迭代V2.迭代精度为k=k+1 %计算迭代次数maxt=0;for i=2:hy-1 %从2到hy-1行循环for j=2:hx-1 %从2到hx-1列循环v2(i,j)=v1(i,j)+(v1(i,j+1)+v1(i+1,j)+v2(i-1,j)+v2(i,j-1)-4*v1(i,j))*w/4;% 拉普拉斯方程差分式t=abs(v2(i,j)-v1(i,j));if(t>maxt) maxt=t;endendendv1=v2endcontour(v2,20) %画等电位线图hold onx=1:1:hx;y=1:1:hy[xx,yy]=meshgrid(x,y); %形成栅格[Ex,Ey]=gradient(v2,,; %计算梯度AE=sqrt(Ex.^2+Ey.^2);Ex=Ex./AE;Ey=Ey./AE; % 场强归一化,使箭头等长quiver(xx,yy,Ex,Ey, %根据梯度数据画箭头axis([,hx+,-2,13]) %设置坐标边框plot([1,1,hx,hx,1],[1,hy,hy,1,1],'k') %画导体边框text(hx/,hy+,'100V','fontsize',11); %上标注text(hx/2,,'50V','fontsize',11); %下标注text,hy/2,'0V','fontsize',11); %左标注text(hx+,hy/2,'100V','fontsize',11); %右标注hold offhx=11;hy=11;输出图形(MATLAB)总结和体会:这次仿真实验,是自己学习NATLAB的基本操作的,在了解这个全英版的软件之前,觉得很茫然。
工程电磁场实训报告总结
一、引言电磁场是现代工程领域中不可或缺的一部分,涉及通信、电子、电力、医疗等多个领域。
为了加深对电磁场理论知识的理解,提高实际操作能力,我们参加了为期两周的工程电磁场实训。
通过本次实训,我们不仅巩固了电磁场的基本理论,还学会了如何运用这些理论解决实际问题。
以下是本次实训的总结报告。
二、实训内容1. 电磁场基本理论实训首先对电磁场的基本理论进行了回顾,包括麦克斯韦方程组、电磁波、电磁场能量等。
通过理论学习,我们深入了解了电磁场的基本性质和规律。
2. 电磁场模拟软件的使用实训过程中,我们学习了电磁场模拟软件的使用方法。
以Ansys Maxwell为例,我们学会了如何建立模型、设置边界条件和求解电磁场问题。
通过实际操作,我们掌握了软件在工程中的应用。
3. 电磁场仿真实验在仿真实验环节,我们针对实际工程问题进行了电磁场仿真。
例如,我们模拟了天线辐射、传输线特性、电磁屏蔽等场景,分析了电磁场参数对实际工程的影响。
4. 电磁场测量实验实训还安排了电磁场测量实验,包括电磁场强度测量、电磁波传播特性测量等。
通过实验,我们掌握了电磁场测量仪器的使用方法,了解了电磁场参数的测量方法。
三、实训收获1. 理论知识得到巩固通过本次实训,我们对电磁场基本理论有了更深入的理解,为今后在相关领域的学习和工作打下了坚实的基础。
2. 实际操作能力得到提高实训过程中,我们学会了使用电磁场模拟软件和测量仪器,提高了实际操作能力。
这些技能将有助于我们在今后的工作中解决实际问题。
3. 团队协作能力得到锻炼实训过程中,我们分组进行实验和仿真,培养了团队协作精神。
在遇到问题时,我们共同讨论、解决问题,提高了团队协作能力。
4. 创新意识得到培养在实训过程中,我们针对实际问题进行仿真和实验,培养了创新意识。
通过不断尝试和改进,我们找到了更优的解决方案。
四、不足与反思1. 理论与实践结合不够紧密在实训过程中,我们发现部分理论知识在实际操作中应用不够灵活。
超松弛迭代法求解接地金属槽内电位分布
实验一用超松弛迭代法求解接地金属槽内电位分布一、实验内容:试用超松弛迭代法求解接地金属槽内电位的分布。
已知:,mm?410h?a/4a?cm给定边值如图所示。
给定初值:)0(?0?ji,误差范围:5??10?计算迭代次数,分布。
?ji,一.实验思路由边界条件用泊松方程的五点差分格式求得中央点的点位。
再以所得点及边界再次利用泊松方程的五点差分格式求出另四个点,依照此方法求出其余点的电位分布。
用最佳收敛因子的经验公式计算收敛因子。
利用超松弛迭代法进行差分方程的求解,当遇到边界是采用边界值或者边界差分格式。
直到所有节点电位满足误差条件。
二.实验设计原理:有限差分法有限差分法(Finite Differential Method)是基于差分原理的一种数值计算法。
其基本思想:将场域离散为许多小网格,应用差分原理,将求解连续函数?的泊松方程的问题换为求解网格节点上?的差分方程组的问题。
编程时将边值编入到程序中,这样可以省略输入,从而直接输入迭代因子进行求解,可以减少编程的难度。
迭代时所用公式是和书上一样,为a[i][j]=b[i][j]+w/4*(b[i+1][j]+b[i][j+1]+a[i][j-1]+ a[i-1][j]-4*b[i][j]);。
k代表b,而k+1代表a其中启动输出开始菜单(边值都已经给定)输入迭代因w迭代次n=0n++开始循环迭函数判断相邻二次差值是否小于给定输n电a[i][j]终止.三、程序运行界面及结果四.源程序代码#include<iostream>#include<math.h>#include<iomanip>using namespace std;classoverrei //over-relaxation iterative method{private:intm,n;doublex,e;double **p,**q;public:int k;overrei(int m0,int n0,double e0){inti;e=e0;k=0;m=m0;n=n0;p=new double *[m];for(i=0;i<m;i++)p[i]=new double[n];q=new double *[m];//迭代因子求解for(i=0;i<m;i++)q[i]=new double[n];if(m==n)/(m-1))); x=2/(1+sin(3.141592654 elsex=2-3.141592654*sqrt(2)*sqrt(1/((m-1)*(m-1))+1/((n-1)*(n-1))); :<<x<<endl;潣瑵?最佳收敛因子}void Initialization(); //赋边界条件void Cal(); //计算void Diedai(); //迭代函数void Show(); //输出部分};void overrei::Initialization() //赋边界条件{inti,j;for(i=0;i<m;i++) //边界条件for(j=0;j<n;j++){if(i==0){p[i][j]=100;q[i][j]=100;}else{p[i][j]=0;q[i][j]=0;}}潣瑵?初始点位:<<endl;Show();}void overrei::Cal() //计算{inti,j;int c=1;while(1){c=1;for(i=0;i<m;i++){for(j=0;j<n;j++){if((p[i][j]-q[i][j])>e||(q[i][j]-p[i][j])>e) //相邻两次迭代误差是否小于1e-5 {c=0;break;}}if(c==0) break;}if(c==1 && k!=0) break;Diedai();}}void overrei::Diedai() //迭代函数{inti,j;double y=x/4;if(k%2){for(i=1;i<m-1;i++)for(j=1;j<n-1;j++){q[i][j]=p[i][j]+y*(q[i-1][j]+q[i][j-1]+p[i+1][j]+p[i][j+1]-4*p[i][j]);}}else{for(i=1;i<m-1;i++)for(j=1;j<n-1;j++){p[i][j]=q[i][j]+y*(p[i-1][j]+p[i][j-1]+q[i+1][j]+q[i][j+1]-4*q[i][j]);}}k++;}void overrei::Show() //输出部分{inti,j;for(i=0;i<m;i++){for(j=0;j<n;j++){cout<<setw(12)<<setprecision(6)<<fixed<<q[i][j]<<ends;}cout<<endl;}}int main(){cout<< **************************************<<endl; cout<< 超松弛迭代法求解接地金属槽内电位的分布<<endl; cout<< **************************************<<endl; overrei A(5,5,1e-5);A.Initialization();A.Cal();潣瑵?电位分布:<<endl;A.Show();潣瑵?迭代次数:<<A.k<<endl;return 0;}实验二按对称场差分格式求解电位的分布一.实验思路只计算一半的区域,对另一半进行对称性计算,减小计算量。
南京理工大学工程电磁场实验报告
MATlAB 绘制等电位线视图如下:
三维图像:
100 80 60 40 20 0 4 3 2 1 1 3 2 4
8
二维图像:
4
3.5 3
2.5
2
1.5
1
0.5 0.5 1 1.5 2 2.5 3 3.5 4
五、实验总结:
通过本次实验,我们在很大程度上把书本上的知识应用于实践中去, 例如 VC++的应用, 是我们第一次把其应用到工程实验上去, 超越了以 往只限于基础原理的学习。另一方面,在画图方面对于 MATlAB 的应 用,让我们初步认识到这款软件功能的强大,也让我们意识到掌握这 门软件的重要性,其在可视化,仿真方面发挥了很大的作用,大大地 帮助我们更深刻地理解和把握工程电磁场这门课程的相关知识。
三、程序设计及其运行情况:
#include<stdio.h> #include<math.h> #include<windows.h> fun(float u[][41],float p) /*此函数即为差分求解的方 法过程*/ {long int i,j,flag=1,num=0;float t,e=p/4; /*定义变量,在此 p 为收敛 因子*/ while(flag) {flag=0; for(i=1;i<40;i++) {for(j=1;j<20;j++) { t=u[i][j]; u[i][j]=u[i][j]+e*(u[i][j-1]+u[i-1][j]+u[i][j+1]+u[i+1][j]4*u[i][j]); if(fabs(u[i][j]-t)>=1e-5) flag=1; /*该判断语句用于判断 u[i][j]前后两次计算之差绝对值是否符合实验误 差要求*/ }u[i][20]=u[i][19]; }num++; } return num; } int main(void) { long int i,j,num=0,min=100000;float q,p,t,eps=1,e=p/4,u[41][41]; for(i=0;i<41;i++) {u[0][i]=100;u[40][i]=0;} /*定义初值*/ for(i=1;i<40;i++) {u[i][0]=u[i][40]=0;} for(i=1;i<40;i++) for(j=1;j<21;j++) u[i][j]=2.5*(j-1); printf("左半边初始值如下:\n"); for(i=0;i<41;i++) {printf("\n"); for(j=0;j<21;j++) { printf("%-11.5f",u[i][j]);
项目训练二 求二维金属槽内的点位分布
将这几点的电位用泰勒级数展开,化简,近似可得:
1
0
1 ( ) 2 3 4 4 1
上式表明,任一点的电位等于它周围四个点电位的平均值。
图 3-1 差分网格
差分方程的数值解法: 平面内有多少个节点,就能得到多少个差分方程,当这些节点数目较大时,使用迭代 法求解差分方程组比较方便。 a. 简单迭代法: 用迭代法解二维电位分布时,将包含边界在内的节点均以下标(i,j)表示,i,j 分 别表示沿 x,y 方向的标点。次序是 x 方向从左到右,y 方向从上到下,我们用上标 n 表示 某点电位的第 n 次的迭代值。下式得出点(i,j)的第 n+1 次电位的计算公式:
n n 1 n 1 1 n ( ) i , j 1 i 1, j i , j 1 4 i 1, j
c. 超松弛迭代法:
n 1 i, j
此式也称为异步迭代法,异步迭代法比简单迭代法收敛速度加快一倍左右。
为了加快收敛速度,常采用超松弛迭代法。计算时,将某点的新老电位值之差乘以一
图 4-3 三维电位分布图 等位线分布图
4.6 中心点电位的数值解和精确解的比较
4.6.1 中心点 p ( , ) 的数值解:
因为电位是从上至下逐渐呈递减状,中间点的所在等位线的 a b 为 50V。
, 2 2
a b 2 2 a b 2 2
4.6.2 中心点 p ( , ) 的精确解:
在不同的 m 取值下, a b 的取值会不同。
, 2 2
m=1.2, a b =49.5133V
, 2 2 , 2 2
m=1.4, a b =49.5149V M=1.6, a b =49.5161V
工程电磁场报告
工程电磁场报告-------迭代法在计算电位中的应用所谓迭代法,是一种不断用变量的旧值递推新值的过程,跟迭代法相对应的是直接法(或者称为一次解法),即一次性解决问题。
迭代法又分为精确迭代和近似迭代。
“二分法”和“牛顿迭代法”属于近似迭代法。
迭代算法是用计算机解决问题的一种基本方法。
它利用计算机运算速度快、适合做重复性操作的特点,让计算机对一组指令(或一定步骤)进行重复执行,在每次执行这组指令(或这些步骤)时,都从变量的原值推出它的一个新值。
在这次实验中是利用迭代法求出在二维场中的电位分布,相对于其他求解方法,虽然精确度存在误差,但是简单易行,充分利用计算机的高效,可以很快的得出大致的电位分布。
实验采用的是C++语言进行辅助。
一、初试牛刀-----计算5×5的电位分布;这个实验是用于实现超松弛法来求节点电位,考虑到要求的场是二维分布的,所以构造的基本数据为二维数组,套用的迭代公式为:a[i][j]=b[i][j]+( α/4)*(b[i+1][j]+b[i][j+1]+a[i-1][j]+a[i][j-1]-4*b[i][j]);迭代因子为α,可根据经验公式算出,直接赋值,考虑到计算机的高效性,在此可任取一大于1小于2的数,最后均能得出答案,只是迭代次数有所差异。
实现该功能的源程序如下:#include<iostream.h>#include<math.h>#include<iomanip.h>void main(){double a[5][5];double b[5][5];int i=0,j=0;static int M=0;bool N=true;for(j=1;j<=3;j++){for(i=1;i<=3;i++)a[i][j]=0;}{a[4][j]=0;a[0][j]=100;}for(i=1;i<=4;i++){a[i][0]=0;a[i][4]=0;}cout<<"各内节点上电位的初始迭代值为:"<<endl;//输出初始迭代值for(i=0;i<=4;i++){for(j=0;j<=4;j++){cout<<a[i][j]<<" ";}cout<<endl;}cout<<"\n";do{for(i=0;i<=4;i++){for(j=0;j<=4;j++){b[i][j]=a[i][j];}}{for(j=1;j<=3;j++){a[i][j]=b[i][j]+(1.2/4)*(b[i+1][j]+b[i][j+1]+a[i-1][j]+a[i][j-1]-4*b[i][j]);}}for(i=1;i<=3;i++) {for(j=1;j<=3;j++){if(fabs(a[i][j]-b[i][j])>0.00001){N=true;break;}elseN=false;}}M++;}while(N);cout<<"经迭代后,各节点电位的近似值为:"<<endl;for(i=0;i<=4;i++){for(j=0;j<=4;j++){cout<<setiosflags(ios::fixed)<<setprecision(5)<<a[i][j]<<" ";}cout<<endl;}cout<<endl;cout<<"迭代次数"<<M<<endl<<endl;}程序很短,但是实现了要求的功能,经运行可得出结果:电位大概的分布如左图所示,可以看出还是比较符合的。
工程电磁场实验报告
实验一静电场仿真分析(一)矢量运算1、矢量运算函数程序代码:a=[1,2,-3];b=[0,-4,1];c=[5,0,-2];ea=a/norm(a)/////////////////////////////////////norm求模函数t2=norm(a-b)t3=dot(a,b)/////////////////////////////////////dot点积函数theta=acos(dot(a,b)/(norm(a)*norm(b))////////////acos叉积运算theta*180/pit5=norm(a)*cos(theta)t6=cross(a,c)t71=dot(a,cross(b,c))t72=dot(c,cross(a,b))t81=cross(cross(a,b),c)t82=cross(a,cross(b,c))答案:ea =0.2673 0.5345 -0.8018t2 = 7.2801t3 = -11theta = 2.3646ans =135.4815t5 =-2.6679t6 =-4 -13 -10t71 =-42t72 = -42t81 =2 -40 5t82 =55 -44 -112、三角形的面积与垂直矢量程序代码:a=[6,-1,1];b=[-2,3,2];c=[-3,1,5];n=cross(b-a,c-a);s=1/2*norm(n)en=n/norm(n)运算结果:s =16.7705en =0.4174 0.6857 0.5963 3、圆柱坐标下的电场求解程序代码:p=[3,4,2];rou=[p(1),p(2),0];erou=rou/norm(rou);ez=[0,0,1];ephai=cross(ez,erou);a=[4,2,3];arou=dot(a,erou)aphai=dot(a,ephai)az=dot(a,ez)运算结果:arou =4aphai =-2az =3(二)静电场仿真原理:单个点电荷电场强度:E =q/(4πεr2)e r多个点电荷电场强度:E =14πεq ir e ri1、电场强度的计算程序代码与运算结果:2、点电荷在球面上的电场矢量图函数说明:surf(X,Y,Z,0*Z);quiver3(X,Y,Z,X,Y,Z) 程序代码:r=1;i=0;for theta=(0:2:180)*pi/180i=i+1;j=0;for phai=(0:2:360)*pi/180j=j+1;X(i,j)=r*sin(theta)*cos(phai);Y(i,j)=r*sin(theta)*sin(phai);Z(i,j)=r*cos(theta);endendsurf (X,Y,Z,0*Z);hold on;quiver3(X,Y,Z,X,Y,Z); 结果显示:3、电偶极子的等位面和电力线程序代码:g=10;x=-g:g;y=-g:g;[X,Y]=meshgrid(x,y);d=0.5;r1=sqrt(X.^2+(Y-d).^2);r2=sqrt(X.^2+(Y+d).^2);rf=sqrt(X.^2+Y.^2).^3;phai=(r2-r1)./(r2.*r1)*1e4; contour(X,Y,phai,100);hold on[FX,FY]=gradient(phai,1);quiver(X,Y,-FX.*rf,-FY.*rf);结果显示:(三)有限差分法求静电场的电位基础知识:1)静电位的拉普拉斯方程:∇2φ=0,泊松方程::∇2φ=−ρε2)二维拉普拉斯方程的差分格式:φ0=φ1+φ2+φ3+φ44迭代法程序代码:u=[100,100,100,100,100;0,75,75,75,0;0,50,50,50,0;0,25,25,25,0;0,0,0,0,0];v=u;i=2:size(u,1)-1;j=2:size(u,2)-1;for k=1:100000v(i,j)=1/4*(u(i-1,j)+u(i+1,j)+u(i,j-1)+u(i,j+1));u(i,j)=1/4*(v(i-1,j)+v(i+1,j)+v(i,j-1)+v(i,j+1));err=max(max(abs(u-v)));if err<1e-8 break;end;enduk程序输出结果:u =100.0000 100.0000 100.0000 100.0000 100.00000 42.8571 52.6786 42.8571 00 18.7500 25.0000 18.7500 00 7.1429 9.8214 7.1429 00 0 0 0 0k =31实验二微波发信机系统实验原理图:。
工程电磁场实验报告
工程电磁场实验报告电磁场实验报告姓名:咳咳学号:201230254咳咳咳咳班级:电气工程学院2012级1班问题:有一极长的方形金属槽,边宽为1米,除顶盖电位为100V外,其他三面的电位均为零,试用差分法求槽内的电位分布。
有限差分法(Finite Differential Method,FDM)是基于差分原理的一种数值计算法。
其基本思想是:将场域离散为许多小网格,用差分代替微分,用差商代替求导,将求解连续函数泊松方程的问题转换为求解网格节点上的差分方程组的问题。
用所求网格的数值解代替整个场域的真实解。
因而数值解即是所求场域的离散点的解。
虽然数值解是一种近似解法,但当划分的网格或单元愈密时,离散点的数目也愈多,近似解(数值解)也就愈逼近于真实解。
设求解二维静电场边值问题:①网格划分将场域划分为小的网格。
设为正方形网格,边长h。
② 方程离散 将节点上的电位值作为求解变量,把微分方程化为关于的线性代数方程组。
21032202()x h ϕϕϕϕ-+∂≈∂ 22042202()y h ϕϕϕϕ-+∂≈∂ a ) 对内部节点12340024F hϕϕϕϕϕ+++-=b)对边界节点(只考虑节点位于边界上的情况)i fϕ=③ 求解线性代数方程组N 个方程联立成为线性代数方程组求解得到节点上的电位值。
当内点数较少时,可直接用代元消去法或列式法,张弛法等少算;当内点较多时,即内点不是几个,十几个而是成百个,上千个时,手算几乎不可能,这就必须借助计算机进行计算。
求解高阶方程有赛德尔迭代法等方法。
解:对于本例而言,用差分法可直接求得场域中离散点上电位的近似值。
首先对场域进行等距剖分,此处取步长h=0.1米,对于正方形场域则可使用网络格线自边界处起始, 边界节点的电位值(i=0,10;j=0,10)由边界条件给出,其内部节点的电位值(i=1,2,...9;j=1,2,...9)则待求。
由于槽内部电流密度为0所以电位函数所满足的拉普拉斯方程的差分离散格式为j i j i j i j i j i ,1,,11,,14ϕϕϕϕϕ=+++--++)(411,,11,,1,--+++++=j i j i j i j i ji ϕϕϕϕϕ 对于本例的网络剖分,i,j=1,2,3…9,则上式即为待求的内部节点上的电位值所应满足的代数方程组。
工程电磁场实验报告
工程电磁场仿真实验报告——叠钢片涡流损耗Maxwell 2D仿真分析(实验小组成员:文玉徐晨波葛晨阳郭鹏程栋)Maxwell仿真分析——二维轴向磁场涡流分析源的处理在学习了Ansoft公司开发的软件Maxwell后,对工程电磁场有了进一步的了解,这一软件的应用之广非我们所想象。
本次实验只是利用了其中很小的一部分功能,涡流损耗分析。
通过软件仿真、作图,并与理论值相比较,得出我们需要的实验结果。
在交流变压器和驱动器中,叠片钢的功率损耗非常重。
大多数扼流线圈通常使用叠片,以减少涡流损耗,但这种损耗仍然很大。
特别是在高频情况下,交变设备由脉宽调制波形所产生的涡流损耗不仅降低了设备的整体性能,也产生了热,因此做这方面的分析十分有必要。
一、实验目的1)认识钢的涡流效应的损耗,以及减少涡流的方法;2)学习涡流损耗的计算方法;3)学习用MAXWELL 2D计算叠片钢的涡流。
二、实验模型实验模型是4片叠钢片组成,每一篇截面的长和宽分别是12.7mm和0.356mm,两片中间的距离为8.12um,叠片钢的电导率为2.08e6 S/m,相对磁导率为2000,作用在磁钢表面的外磁场H z=397.77A/m,即B z=1T。
考虑到模型对X,Y轴具有对称性,可以只计算第一象限的模型。
三、实验步骤一.单个钢片的涡流损耗分析1、建立模型,因为是单个钢片的涡流分析,故位置无所谓,就放在中间,然后设置边界为397.77A/m,然后设置频率,进行求解。
2、进行数据处理,算出理论值,并进行比较。
二、叠钢片涡流损耗分析1、依照模型建立起第一象限的模型,将模型的原点与坐标轴的原点重合,这样做起来比较方便。
设置钢片的材质,使之符合实际要求。
然后设置边界条件和源,本实验的源为一恒定磁场,分别制定在上界和右边界,然后考虑到对偶性,将左边界和下界设置为对偶。
然后设置求解参数,因为本实验是要进行不同的频率下,涡流损耗的分析,所以设定好Frequency后,进行求解。
工程电磁场实验报告
工程电磁场实验报告一.题目有一极长的方形金属槽,边宽1m,除顶盖电位为100sinπx V外,其他三面的电位均为零,试用差分法求槽内电位的分布。
二.原理如下图所示,用分别平行于x,y轴的两组直线把场域D划分为许多正方形网格,网格线交点称为节点,两相邻平行网格线间的距离h称为步距用表示节点处电位值,利用二元函数泰勒公式,与节点(Xi,Yj)直接相邻的节点上的电位表示为整理可得差分方程这就是二维拉普拉斯方程的差分格式,它将场域内任意一点的位函数值表示为周围直接相邻的四个位函数值的平均值。
这一关系式对场域内的每一节点都成立,也就是说,对场域的每一个节点都可以列出一个上式形式的差分方程,所有节点的差分方程构成联立差分方程组。
已知的边界条件经离散化后成为边界点上已知数值。
若场域的边界正好落在网格点上,则将这些点赋予边界上的位函数值。
一般情况下,场域的边界不一定正好落在网格节点上,最简单的近似处理就是将最靠近边界点的节点作为边界节点,并将位函数的边界值赋予这些节点。
如何计算:简单迭代法先对静电场内的节点赋予迭代初值,其上标(0)表示初始近似值。
然后再按下面的公式:进行多次迭代(k=0,1,2,3…)。
当两次邻近的迭代值差足够小时,就认为得到了电位函数的近似数值解。
如何计算:超松弛迭代法三.编程序bc=50; %网格数u=zeros(bc+1,bc+1); %步长为1/bc%********附初值*********w=0;for j=1:bc+1;u(1,j)=100*sin((j-1)*pi/bc);w=w+u(1,j);endfor i=2:bcfor j=2:bcu(i,j)=w./bc;endend%***************************************************h=input('please input h(1<h<2:h= '); %输超松弛子n=input('please input n(1<n,nΪÕûÊý):n= '); %输迭代次数%*****************迭代过程 ******************for w=1:n;for i=2:bc;for j=2:bc;a=u(i,j);b=u(i,j+1);c=u(i+1,j);d=u(i-1,j);e=u(i,j-1);f=(b+c+d+e)/4;u(i,j)=a+h.*(f-a);endendend%***************绘图********************x=0:1/bc*1:1;y=0:1/bc*1:1;[x,y]=meshgrid(x,y);mesh(x,y,u)四.结果五.实验体会这学期上了这门课,刚开始上课,老师说教我们手算,不用计算机,终于体会到了学了计算方法的好处。
用超松弛迭代法求解接地金属槽内电位分布
实验一用超松弛迭代法求解接地金属槽内电位分布一、实验原理(有限差分法介绍)有限差分法(Finite Differential Method)是基于差分原理的一种数值计算法。
其基本思想:将场域离散为许多小网格,应用差分原理,将求解连续函数ϕ的泊松方程的问题转换为求解网格节点上ϕ的差分方程组的问题。
二.实验内容与要求1. 试用超松弛迭代法求解接地金属槽内电位的分布。
已知:,cma4=mmah104/==给定边值如图所示。
给定初值:0)0(,=jiϕ误差范围:510−=ε计算迭代次数,ji,ϕ分布。
2、按对称场差分格式求解电位的分布(即求出D域的场分布,由对称性可得全域的场分布)已知,cma4=mmh14040==给定边值:如图1示给定初值)()(.1j401001jp12ji−=−−=ϕϕϕ误差范围: 510−=ε图1 接地金属槽内半场域的网格剖分计算:1)迭代次数,Nji,ϕ;2)按电位差10=Δϕ画出槽中等位线分布图。
图1.7 接地金属槽内网格0=ϕ=V 100 ϕ0=ϕ0=ϕ电磁场数值计算与仿真实验指导书63、分片场域的静电场分析(选做)用有限差分法计算区域内的电位、电场强度,绘制等位线。
并计算区域的电容,分析单元的大小对电容计算结果的影响,给出曲线。
100伏0伏εr1=2 εr2=4εr3=1εr4=3电磁场数值计算与仿真实验指导书7三、实验程序内容程序一:#include<iostream.h>#include<math.h>void main(){double m[5][5],n[5][5];int N=0,b=1;int i,j;double e=0.00001;double a=2/(1+sin(3.1415926/4));for(i=0;i<=4;i++)for(j=0;j<=4;j++){m[i][j]=0;n[i][j]=0;}m[1][4]=100;m[2][4]=100;m[3][4]=100;n[1][4]= m[1][4];n[2][4]= m[1][4];n[3][4]= m[1][4];for(j=4;j>=0;j--){for(i=0;i<=4;i++)cout<<"m["<<i<<"]["<<j<<"]"<<"="<<m[i][j]<<'\t';cout<<endl;}while(b==1){b=0;N=N+1;for(i=1;i<=3;i++)for(j=1;j<=3;j++)m[i][j]=m[i][j]+a*(m[i-1][j]+m[i][j-1]+m[i+1][j]+m[i][j+1]-4*m[i][j])/4; for(i=1;i<=3;i++)for(j=1;j<=3;j++){ if(fabs(m[i][j]-n[i][j])>=e)b=1;n[i][j]=m[i][j];}for(j=4;j>=0;j--){for(i=0;i<=4;i++)cout<<"m["<<i<<"]["<<j<<"]"<<"="<<m[i][j]<<'\t'; cout<<endl;}cout<<"N="<<N<<endl;}实验结果:N=13程序二:#include<iostream.h>#include<math.h>void main(){static double m[41][41],n[41][41];int N=0,b=1;int i,j;double e=0.00001;double a=2/(1+sin(3.1415926/4));for(i=2;i<=40;i++)for(j=2;j<=41;j++){m[i][j]=100*(j-1);m[i][j]=m[i][j]/40;n[i][j]=m[i][j];for(j=41;j>=1;j--){ for(i=1;i<=41;i++)cout<<m[i][j]<<'\t';cout<<endl;}while(b==1){b=0;N=N+1;for(i=2;i<=21;i++)for(j=2;j<=40;j++){m[i][j]=m[i][j]+a*(m[i-1][j]+m[i][j-1]+m[i+1][j]+m[i][j+1]-4*m[i][j])/4; }for(i=2;i<=21;i++)for(j=2;j<=40;j++){ if(abs(m[i][j]-n[i][j])>=e)b=1;n[i][j]=m[i][j];}}for(i=2;i<=21;i++)for(j=2;j<=40;j++)m[42-i][j]=m[i][j];cout<<endl;for(j=41;j>=1;j--){ for(i=1;i<=41;i++)cout<<m[i][j]<<'\t';cout<<endl;}cout<<"N="<<N<<endl;}实验结果:N=17等位线分布程序及图:(mathematic)。
工程电磁场实验报告用超松弛迭代法求解接地金属槽内的电位分布
南京理工大学工程电磁场实验报告班级:1m 班姓名:mmmm学号:mmm2013.06.16实验一 用超松弛迭代法求解接地金属槽内的电位分布 一、实验目的1、掌握如何使用超松弛法来近似求解金属槽内的电位值。
2、掌握利用C++来实现超松弛迭代法。
二、实验原理有限差分法是基于差分原理的一种计算方法。
对于下面的的一个二维泊松方程的差分格式,利用差分就可以得到每一个点的电位。
图1 有限法网格分割其电位值是: 2012341()4Fh ϕϕϕϕϕ=+++-其中F ρε=-, h 为网格间距。
若令F=0,则电位情况则变成了拉普拉斯的差分格式:012341()4ϕϕϕϕϕ=+++图2 迭代法求电位值1、高斯-赛德尔计算法:(1)112,1,,11,,11[]4k k k k k i j i j i j i j i j Fh ϕϕϕϕϕ+++--++=+++-直到(1)(),,k k i j i j ϕϕε+-<为止。
2、对于超松弛法,我们引入一个加速收敛因子α并且得到下面的计算公式:(1)()112(),,1,,11,,1,[4]4k k k k k k k i j i j i j i j i j i j i j Fh αϕϕϕϕϕϕϕ+++--++=++++--直到(1)(),,k k i j i j ϕϕε+-<为止。
借助计算机来求解的时候,其流程图如下:图3 迭代法求电位值的流程图三、实验内容(1)、题目要求利用超松弛迭代法求解接地金属槽内的电位分布,给定图如下。
已知a=4cm,h=a/4=10mm 。
给定初值(0),j 0i ϕ=,误差范围为510ε-=。
求迭代次数N=?以及电位分布,i j ϕ。
图4 超松弛法求接地金属槽内的电位值(2)、利用C++来编写计算机的求解程序,其程序如下:程序(3)、求解结果运行程序后,就能得到求解的结果。
图5 运行程序后的初始界面图6 求解结果(4)结果分析1、从实验结果可以看到,当加速收敛因子的大小不同的时候,两者的迭代次数是有差异,所以选取合适的最佳的收敛因子可以大大加速求解的速度,节省存储空间,提高效率。
南京理工大学工程电磁场实验报告
工程电磁场实验报告姓名:赵玲学号:1010200219指导老师:李强日期:2013.6.16实验一 用超松弛迭代法求解接地金属槽内电位分布一、实验内容与要求试用超松弛迭代法求解接地金属槽内电位分布已知:a=4 cm ,h=10 mm 给定边值如图所示。
给定初值:(0),0i j ϕ=误差范围:510ε-=计算迭代次数N ,,i j ϕ分布二、原理1、有限差分法(Finite Differential Method )有限差分法是基于差分原理的一种数值计算法。
其基本思想:将场域离散为许多小网格,应用差分原理,将求解连续函数ϕ 的泊松方程的问题转换为求解网格节点上ϕ 的差分方程组的问题。
2、超松弛迭代法式中:α ——加速收敛因子(1<α < 2) 迭代收敛的速度与α 有明显关系表1.1 迭代收敛的速度与α 的关系最佳收敛因子的经验公式:• 迭代收敛的速度与电位初始值的给定及网格剖分精细有关• 迭代收敛的速度与工程精度要求有关三、流程图四、源程序#include<iostream.h>void main(){ double a7,a8,a9,a12,a13,a14,a17,a18,a19,u7=0,u8=0,u9=0,u12=0,u13=0,u14=0,u17 =0,u18=0,u19=0,b=1.2,N=0;do{ a7=u7;a8=u8;a9=u9;a12=u12;a13=u13;a14=u14;a17=u14;a18=u18;a19=u19;u7=u7+b/4*(u8+u12-4*u7);u8=u8+b/4*(u9+u13+u7-4*u8);u9=u9+b/4*(100+u14+u8-4*u9);u12=u12+b/4*(u13+u17+u7-4*u12);u13=u13+b/4*(u14+u18+u8+u12-4*u13);u14=u14+b/4*(100+u19+u9+u13-4*u14);u17=u17+b/4*(u18+u12-4*u17);u18=u18+b/4*(u19+u13+u17-4*u18);u19=u19+b/4*(100+u14+u18-4*u19);N++;}while(u7-a7>1e-5||u8-a8>1e-5||u9-a9>1e-5||u12-a12>1e-5||u13-a13>1e-5||u14-a14>1e-5||u17-a17>1e-5||u18-a18>1e-5||u19-a19>1e-5);cout<<"u7="<<u7<<'\t'<<"u8="<<u8<<'\t'<<"u9="<<u9<<'\n';cout<<"u12="<<u12<<'\t'<<"u13="<<u13<<'\t'<<'\t'<<"u14="<<u14<<'\n'; cout<<"u17="<<u17<<'\t'<<"u18="<<u18<<'\t'<<"u19="<<u19<<'\n';cout<<"迭代次数N="<<N<<'\n';}五、求解结果六、实验总结通过工程电磁场这门课的学习,掌握了二维静电场边值问题的分析,但是对有限差分法的掌握还不够深入,所以这次实验还是有点难度的。
利用超松弛迭代法求解问题
利用超松弛迭代法求解问题在电场中,利用有限差分法求解场域中各个节点的点位。
其中求解差分方程组的解运用到了超松弛方法。
超松弛方法是高斯—塞德尔迭代法的变形。
它在迭代过程中,为了加速收敛,再把所得结果依次带入进行计算的同时,还使用把每一次迭代的变化量加权后再代入的方法。
运用超松弛迭代法求解下述问题:试用超松弛迭代法求解接地金属槽内的电位的分布。
已知:A=4CM,H=A\4=10CM给定边值:如图示;给定初值:Φ=0误差范围:E=10^-5计算:迭代次数N=?,Φ的分布。
分析:(1)、节点按从下到上,从左到右的顺序排列。
(2)、按高斯—塞德尔迭代公式进行迭代。
(3)、选择加速因子Α,且A在1到2之间。
以下为该题程序段:#INCLUDE <IOSTREAM.H>#INCLUDE<MATH.H>#INCLUDE<IOMANIP.H>BOOL SUCCESS(DOUBLE A[5][5][2], DOUBLE B) 构建函数其中DOUBLE A 代表记录数据前后两次的值。
{INT I,J;FOR (I=1;I<5;I++)FOR (J=1;J<5;J++) 依次对定义数组赋值{IF ( FABS(A[I][J][1]-A[I][J][0]) > B ) 误差在题设范围内则返回值TRUERETURN TRUE;} 否则返回FALSE RETURN FALSE;}INT MAIN(){INT N,I,J;DOUBLE A[5][5][2];DOUBLE B;B=0.00005;DOUBLE S=1.21;WHILE (1){N=0;COUT<<"输入加速因子数值(1<= A < 2 ) "<<ENDL; 输入题设CIN>>S;FOR(I=0;I<5;I++)FOR(J=0;J<5;J++){A[I][J][0]=0;A[I][J][1]=0;}FOR (I=0;I<5;I++){A[I][4][0]=100;A[I][4][1]=100;}WHILE ( N==0 || SUCCESS(A,B)){FOR(I=1;I<4;I++)FOR(J=1;J<4;J++){A[I][J][0]=A[I][J][1];A[I][J][1]=A[I][J][1]+(A[I-1][J][1]+A[I+1][J][1]+A[I][J+1][1]+A[I][J-1][1] [I][J][1]*4)*S/4; 由高斯—塞德尔迭代公式写出相应公式。
电磁场实验报告
电磁场实验报告电磁场实验报告一、实验题目:用有限差分法求解金属槽内电位分布一足够长(忽略边缘效应)的方形金属槽,边宽1m ,除顶盖电位为100sin x πV外,其他三方的电位均为零,求槽内电位分布二、数学原理有限差分法(Finite Differential Method )是基于差分原理的一种数值计算法。
有限差分法的基本思想是把连续的定解区域用有限个离散点构成的网格来代替,这些离散点称作网格的节点; 把连续定解区域上的连续变量的函数用在网格上定义的离散变量函数来近似; 把原方程和定解条件中的微商用差商来近似, 积分用积分和来近似,于是原微分方程和定解条件就近似地代之以代数方程组,即有限差分方程组, 解此方程组就可以得到原问题在离散点上的近似解。
然后再利用插值方法便可以从离散解得到定解问题在整个区域上的近似解。
对于简单迭代法有如下公式φ( i , j) = (φ( i- 1 , j) +φ( i+1 , j) +φ( i , j - 1) +φ( i , j+1) )*1/4 三、编程计算=?= 100sin x π=?0=?实验代码如下:u=zeros(21,21); %定义数组w=0; %赋初值for j=1:21;u(1,j)=100*sin((j-1)*pi/20);w=w+u(1,j);endfor i=2:20for j=2:20u(i,j)=w./20;endendu %打印数组un=1000; %简单迭代1000次for w=1:n;for i=2:20;for j=2:20;a=u(i+1,j);b=u(i,j+1);c=u(i-1,j);d=u(i,j-1);u(i,j)=0.25.*(a+b+c+d); %简单迭代法endendendu %打印数组u(11,11) %打印点(0.5,0.5)x=1:-0.05:0; y=1:-0.05:0;[x,y]=meshgrid(x,y); %画图mesh(x,y,u) hold offgrid onxlabel('0<x<1')< p="">ylabel('0<y<1')< p="">zlabel('0<u<100')< p="">四、计算结果: u的值如下ans =19.9858 说明u (11,11)=19.98580<1<="" p="">0<y<1< p="">0<100<="" p="">五、实验分析由图像知u关于x=0.5对称且y=1时u关于x的表达式变为100sin xπ,与该图像相符,因此结果是正确的六、实验心得与思考通过设计程序并进行完善调试,我对有限差分法有了进一步的认识,这次的代码是针对于特定题目编出的程序,如果边值条件有所改变那么代码也得改变,显得不是很方便。
工程电磁场答辩
1 1 2 2 p q
BACK
(矩形场域、正方形网格)
问题陈述
如右图,接地金属槽横截面边长 为4cm的正方形,h=1cm,则可将其 分成4*4的网格,共25个网格节点, 从上到下分别编号为dij, i,j从零开始(i表示行数,j表示 列数)编程时,可建立一个二维 数组V1[5][5],将dij放入 V1[i][j]中,由于每次迭代后, 数组中的值会发生改变, 故再建立一个数组V2[5][5];
} for(i=1;i<4;i++) {
for(j=1;j<4;j++) { a[i][j]=b[i][j]+(1.20/4)*(b[i+1][j]+ b[i][j+1]+a[i-1][j]+a[i][j-1]-4*b[i][j]); //迭代公式,取松弛因子为α=1.20 }
}
图五 Hz=2kHz时叠片钢的磁场分布
图六 Hz=5kHz时叠片钢的磁场分布
图七 Hz=10kHz时叠片钢的磁场分布
软件计算了不同频率处最低磁通密度Bmin和涡流损耗P F(Hz) 1 Bmin 1.000 P(W) 1.93366e-6
60
360 1k 2k
0.999
0.988 0.919 0.758
1.9605e-6
7.0578e-3 2.5460e-1 1.9907 8.1618
5k
10k
0.412
0.202
5.3053e1
2.1928e2
数据/观测
图三 Hz=360Hz时叠片钢的磁场分布 图一 Hz=1Hz时叠片钢的磁场分布 图二 Hz=60Hz时叠片钢的磁场分布
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
南京理工大学工程电磁场实验报告班级:1m 班姓名:mmmm学号:mmm2013.06.16实验一 用超松弛迭代法求解接地金属槽内的电位分布 一、实验目的1、掌握如何使用超松弛法来近似求解金属槽内的电位值。
2、掌握利用C++来实现超松弛迭代法。
二、实验原理有限差分法是基于差分原理的一种计算方法。
对于下面的的一个二维泊松方程的差分格式,利用差分就可以得到每一个点的电位。
图1 有限法网格分割其电位值是: 2012341()4Fh ϕϕϕϕϕ=+++-其中F ρε=-, h 为网格间距。
若令F=0,则电位情况则变成了拉普拉斯的差分格式:012341()4ϕϕϕϕϕ=+++图2 迭代法求电位值1、高斯-赛德尔计算法:(1)112,1,,11,,11[]4k k k k k i j i j i j i j i j Fh ϕϕϕϕϕ+++--++=+++-直到(1)(),,k k i j i j ϕϕε+-<为止。
2、对于超松弛法,我们引入一个加速收敛因子α并且得到下面的计算公式:(1)()112(),,1,,11,,1,[4]4k k k k k k k i j i j i j i j i j i j i j Fh αϕϕϕϕϕϕϕ+++--++=++++--直到(1)(),,k k i j i j ϕϕε+-<为止。
借助计算机来求解的时候,其流程图如下:图3 迭代法求电位值的流程图三、实验内容(1)、题目要求利用超松弛迭代法求解接地金属槽内的电位分布,给定图如下。
已知a=4cm,h=a/4=10mm 。
给定初值(0),j 0i ϕ=,误差范围为510ε-=。
求迭代次数N=?以及电位分布,i j ϕ。
图4 超松弛法求接地金属槽内的电位值(2)、利用C++来编写计算机的求解程序,其程序如下:程序(3)、求解结果运行程序后,就能得到求解的结果。
图5 运行程序后的初始界面图6 求解结果(4)结果分析1、从实验结果可以看到,当加速收敛因子的大小不同的时候,两者的迭代次数是有差异,所以选取合适的最佳的收敛因子可以大大加速求解的速度,节省存储空间,提高效率。
根据这个实际例子,列出收敛因子从分别为1.1,1.2,1.3,1.4,1.5,1.6,1.7,1.8和1.9的情况。
表1 不同加速收敛因子的迭代次数再在1.1-1.2选取10个值来分析:表2 不同加速收敛因子的迭代次数由此可知该计算的最佳的加速收敛因子为1.18左右,迭代次数只需12次。
如果改变允许误差的值,那么自然迭代次数和电位值的计算值都有所不同。
结合 1.5αε=和=0.00001的情况,在α保持不变的情况下,改变ε的值来分析迭代次数和电位值的情况。
图7 不同ε的求解情况由此可以发现允许误差越小,需要的迭代次数就越大,此外电位值也越接近理论值。
四、实验总结1、通过这个实验,我对利用超松弛迭代法来计算电位值有了更加深刻的理解,并且清楚了它的计算过程和原理。
使我对这一部分的知识有了更好的掌握。
2、进一步巩固了C++的相关知识,当然程序还有可以继续优化的地方。
3、通过分析不同情况的电位值,对加速收敛因子的作用有了直观而清晰的认识。
知道了对于选取合适的加速收敛因子的值可以大大减少迭代次数,提高效率。
实验二螺线管电磁阀静磁场分析一、实验目的1、掌握二维静磁场分析方法。
2、深入了解螺线管静磁场的分布二、实验内容和要求生成几何模型;设定模型;设定执行参数;设定求解选项;磁场力与磁通密度分析。
三、实验步骤(一)、几何模型的生成按照《指导书》的具体指导步骤,新建项目。
首先对绘图区域参数进行设置,然后一次绘制各个部分,并且分别命名为Plugnut、Core、Coil,Yoke和Bonnet。
并用不同的颜色加以区分。
图1 模型的绘制(二)、设定材料的属性1、background设定为默认值vacuum。
2、将Coil的材料属性设定为copper(铜)。
3、自定义一个材料属性,绘制其BH曲线,将其命名为ColdRolledSteel(冷轧钢)。
将Bonnet和Yoke的材料属性设定此属性。
4、新建材料属性NEO35,并将其分配给Coil。
图3 自定义材料的属性5、新建材料属性SS430,与步骤三类似。
自绘制BH曲线,计算机拟合生成拟合曲线,将该属性分配给Plugnut。
(三)、建立边界条件和激励源1、选择background(Edit-select-object-by clicking),指定边界条件(Assign-boundary-balloon)。
设置边界完毕。
2、选择线圈Coil,分配一个激励电流源,其值为10000。
图4 设置激励源(四)、设定求解参数设定完参数后保存退出。
四、实验结果分析(一)、解的监控:点击SLOVE命令后监控求解的动态过程。
(二)、观察收敛情况。
其情况如下图:图5 观察收敛情况发现其求解过程是收敛的,需要9步。
(三)、观察各个数据关系曲线的情况,如下图:图6 各数据关系曲线的情况(四)、观察统计情况:图7 统计信息1图8 统计信息2图9 统计信息3图10 统计信息4图11 统计信息5(五)、磁场力分析获取Core的磁力大小:图12 磁力分析发现最终的力大小约为118N。
(六)、磁通的分析画磁通量等势线选择相应命令后,来绘制磁通的情况以便于后续的分析,其绘制结果如下:图13 磁通量等势线从上面我们可以看出磁通情况,与实际现象结合分析,发现是合理的。
(六)、材料饱和度分析先绘制出螺线管的磁通密度B的情况,如下:图14 磁通量密度情况选择Yoke(或者Bonnet)以及Plugnut的磁密度来绘制曲线,结果如下:图15 BH曲线图分析Plugnut的磁饱和问题,即选择上图中的绿色曲线(下方这一条)来进行分析。
五、实验总结1、通过观察磁通量等势线和磁通密度等情况,知道磁通密度在各个部分的大小分布情况,结合实际情况知道,实验结果与实际情况是相符的,即本次实验的结果是合理的。
2、通过本次实验,对利用MAXWELL软件来分析静磁场有了认识和掌握。
对后续相关实验的进行奠定了基础。
实验三 叠片钢涡流损耗分析一、实验目的1、认识钢的涡流效应的损耗,以及减少涡流的方法;2、学习涡流损耗的计算方法;3、学习用Maxwell 2D 计算叠片钢的涡流。
二、实验内容叠片钢的模型由四片钢片叠加而成,每一片界面的长和宽分别为12.7mm 和0.365mm ,两片之间的距离为8.12um ,叠片钢的电导率为2.08e6 S/m ,相对磁导率为2000, 作用在磁钢表现的外电场397.77/z H A m =。
建立相应几何模型,并指定材料属性,指定边界条件,上边界和右边界偶对称。
分析不同频率下的最低磁通密度和涡流损耗情况。
图1 叠片钢三、实验原理在交流电压器和驱动器中,叠片钢的功率很重要。
大多数扼流圈和电机通常使用碟片,以减少涡流,但是这种仍然很大,特别在高频情况下,交变设备中由脉冲宽度调制产生的涡流损耗不仅降低了设备的整体性能,更是会产生热。
故需要在低频和高频段采用不同的方法预测涡流损耗,。
在频率不大于60HZ 的情况下,我们可以直接采用简单的计算方式,但是当频率较高时,需要其它方法来求解。
(一)、低频涡流损耗的计算公式22224t B P V ωσ=式中,V 为叠片体积;t 为叠片厚度;B 为峰值磁通密度;σ为叠片电导率;ω为外加磁场角频率。
Maxwell 2D 所获得的功率损耗値是假定叠片钢在Z 方向上具有单位长度(1m )时而计算出来的。
因此,上式中的体积显然需要按以下公式计算:33612.7100.356101 4.521210V ---=⨯⨯⨯⨯=⨯3m(一)、高频涡流损耗的计算公式22122t t s H P H R S δσ===式子中,S 为叠片表面积;t H 磁场强度切线分量;σ为叠片电导率;μ为叠片相对磁导率;s R 单位面积叠片的阻抗;δ为趋肤深度。
注意:该式子对频率大于10KZH 的情况很适用。
注意叠片钢与磁场强度相切的面有4个,故总面积33322(12.71010.356101) 2.611210S m ---=⨯⨯⨯+⨯⨯=⨯四、实验步骤新建项目后,类比实验二《螺线管电磁阀静磁场分析》的实验步骤,依次建立模型、指定材料、设定边界后激励源,分析求解来进行实验。
再次不再赘述。
但是要注意几点,在指导书中存在着一些错误,需要改正,分别如下: 1、模型的绘制中,首先应把绘图尺寸的左下点的值修改为0,即minx 和miny 改为0。
2、在绘制第一象限碟片钢时候,指导书上的尺寸是有错误的,正确的绘制参数如下:表格1 绘图参数绘制结果如下:图2 第一象限叠片钢3、在设定边界条件的时候,指导书上存在着错误,正确的是应该讲左、下边设置为偶对称(而不是右、下边界),外加磁场施加在上、右边界。
只有这样才能形成四个象限的叠片钢模型。
五、实验结果和分析分析在不同频率(1HZ, 60HZ, 360HZ, 1KHZ, 2KHZ, 10KHZ)下叠片钢的最低磁通密度和涡流损耗情况。
(一)、1HZ的情况其求解过程如下:图3 1HZ的求解结果知涡流损耗值为1.92872e-006 (w)。
图4 1HZ 的磁场分布由此可知273.97771020004100.9997B H μπ-==⨯⨯⨯⨯= (T )。
(二)、60HZ 的情况其求解过程如下:图5 60HZ 的求解结果知涡流损耗值P=6.93905e-003 (w)。
其磁场分布情况如下:图6 60HZ 的磁场分布由此可知273.97451020004100.9989B H μπ-==⨯⨯⨯⨯=(T )。
(三)、360HZ 的情况图7 360HZ 的求解结果知涡流损耗值P=2.44484e-001(w)。
图8 360HZ 的磁场分布由此可知273.86341020004100.9710B H μπ-==⨯⨯⨯⨯= (T) 。
(四)、1KHZ 的情况同样,由求解器求的涡流损耗P=1.64505 (w )。
图9 1KHZ 的磁场分布由此可知273.21271020004100.8074B H μπ-==⨯⨯⨯⨯= (T) 。
(五)、2KHZ 的情况同样,由求解器求的涡流损耗P=4.58324 (w )。
图10 2KHZ 的磁场分布由此可知271.87921020004100.4723B H μπ-==⨯⨯⨯⨯= (T) 。
(六)、10KHZ 的情况同样,由求解器求的涡流损耗P=12.8213 (w )。
图11 10KHZ 的磁场分布由此可知76.73201020004100.1692B H μπ-==⨯⨯⨯⨯= (T) 。
(七)、结果分析根据不同频率在高频段和低频段的计算公式,可以计算出理论值,再和软件计算值进行比较。