有限元的MATLAB解法.docx

上传人:b****4 文档编号:24774115 上传时间:2023-06-01 格式:DOCX 页数:8 大小:37.68KB
下载 相关 举报
有限元的MATLAB解法.docx_第1页
第1页 / 共8页
有限元的MATLAB解法.docx_第2页
第2页 / 共8页
有限元的MATLAB解法.docx_第3页
第3页 / 共8页
有限元的MATLAB解法.docx_第4页
第4页 / 共8页
有限元的MATLAB解法.docx_第5页
第5页 / 共8页
点击查看更多>>
下载资源
资源描述

有限元的MATLAB解法.docx

《有限元的MATLAB解法.docx》由会员分享,可在线阅读,更多相关《有限元的MATLAB解法.docx(8页珍藏版)》请在冰豆网上搜索。

有限元的MATLAB解法.docx

有限元的MATLAB解法

有限元的MATLAB解法

1.翻开MATLAB。

2.输入“pdetool〞再回车,会跳出PDEToolbo*的窗口〔PDE意为偏微分方程,是partialdifferentialequations的缩写〕,需要的话可点击Options菜单下Grid命令,翻开栅格。

3.完成平面几何模型:

在PDEToolbo*的窗口中,点击工具栏下的矩形几何模型进展制作模型,可画矩形R,椭圆E,圆C,然后在Setformula栏进展编辑并〔如双脊波导R1+R2+R3改为RI-R2-R3,设定a、b、s/a、d/b的值从而方便下步设定坐标〕

用算术运算符将图形对象名称连接起来,假设还需要,可进展储存,形成M文件。

4.用左键双击矩形进展坐标设置:

将大的矩形left和bottom都设为0,width是矩形波导的*轴的长度,height是矩形波导的y轴的长度,以大的矩形左下角点为原点坐标为参考设置其他矩形坐标。

5.进展边界设置:

点击“Boundary〞中的“BoundaryMode〞,再点击“Boundary〞中的“SpecifyBoundaryConditions〞,选择符合的边界条件,Neumann为诺曼条件,Dirichlet为狄利克雷条件,边界颜色显示为红色。

6.进入PDE模式:

点击"PDE"菜单下“PDEMode〞命令,进入PDE模式,单击“PDESpecification〞,设置方程类型,“Elliptic〞为椭圆型,“Parabolic〞为抛物型,“Hyperbolic〞为双曲型,“Eigenmodes〞为特征值问题。

7.对模型进展剖分:

点击“Mesh〞中“InitializeMesh〞进展初次剖分,假设要剖的更细,再点击“RefineMesh〞进展网格加密。

8.进展计算:

点击“Solve〞中“SolvePDE〞,解偏微分方程并显示图形解,u值即为Hz或者Ez。

9.单击“Plot〞菜单下“Parameters〞选项,翻开“PlotSelection〞对话框。

选中Color,Height(3-Dplot)和Showmesh三项,然后单击“Plot〞按钮,显示三维图形解。

10.如果要画等值线图和矢量场图,单击“Plot〞菜单下“Parameters〞选项,翻开“PlotSelection〞对话框。

选中Contour和Arrows两项,然后单击Plot按钮,可显示解的等值线图和矢量场图。

11.将计算结果条件和边界导入MATLAB中:

点击“E*portSolution〞,再点击“Mesh〞中“E*portMesh〞。

12.在MATLAB中将编好的计算程序导入,按F5运行。

备注:

Property〔属性〕用于画图时选用相应的绘图类型

u方程的解

abs(grad(u))每个三角形的中心的▽u的绝对值

abs(c*grad(u))每个三角形的中心的c·▽u的绝对值

-grad(u)u的负梯度-▽u

我们也可以用MATLAB程序求解PDE问题,同时显示解的图形;

一个长直接接地金属矩形槽,其侧壁与底面电位均为0,顶盖电位为100V,求槽的电位分布:

〔1〕画出剖分图〔尺寸与书上一样〕;

〔2〕标出各剖分点坐标值;

〔3〕求出各点电位值〔用有限差分〕;

〔4〕画出等电位图。

解:

〔1〕编写以下程序得:

*=0:

5

y=0:

5

[*,Y]=meshgrid(*,y)

plot(*,Y)

holdon

plot(Y,*)

fori=0:

5

s=i:

5

t=0:

(5-i)

plot(s,t)

plot(t,s)

end

得到剖分图如下:

〔2〕用有限元法编写程序如下:

N*=6;Ny=6;*m=5;Ym=15;Np=5;Nq=5;

fori=1:

N*

forj=1:

Ny

N(i,j)=(i-1)*Ny+j;/i列j行的节点编号/

*(N(i,j))=(i-1)**m/Np;/节点横坐标/

Y(N(i,j))=(j-1)*Ym/Nq;/节点纵坐标/

end

end

fori=1:

2**m

forj=1:

Ym

ifrem(i,2)==1

L(i,j)=(i-1)*Nq+j;

p(i,j)=2*(i-1)*Ny/2+Ny+j+1;

q(i,j)=p(i,j)-Ny;

r(i,j)=q(i,j)-1;

elserem(i,2)==0

L(i,j)=(i-1)*Ny+j;

p(i,j)=(2i-2)*Ny/2+j;

q(i,j)=p(i,j)+Ny;

r(i,j)=q(i,j)+1;

end

end

end

fori=1:

2**m

forj=1:

Ym

b(p(i,j))=Y(q(i,j))-Y(r(i,j));b(q(i,j))=Y(r(i,j))-Y(p(i,j));

b(r(i,j))=Y(p(i,j))-Y(q(i,j));c(p(i,j))=*(r(i,j))-*(q(i,j));

c(q(i,j))=*(p(i,j))-*(r(i,j));c(r(i,j))=*(q(i,j))-*(p(i,j));

area(i,j)=(b(p(i,j))*c(q(i,j))-b(q(i,j))*c(p(i,j)))/2;

K=zeros(N**Ny);

Kpp(i,j)=(b(p(i,j))^2+c(p(i,j))^2)/(2*area(i,j));

Kpq(i,j)=(b(p(i,j))*b(q(i,j))+c(p(i,j))*c(q(i,j)))/(2*area(i,j));

Kpr(i,j)=(b(p(i,j))*b(r(i,j))+c(p(i,j))*c(r(i,j)))/(2*area(i,j));

Kqp(i,j)=Kpq(i,j);Kqq(i,j)=(b(q(i,j))^2+c(q(i,j))^2)/(2*area(i,j));

Kqr(i,j)=(b(q(i,j))*b(r(i,j))+c(q(i,j))*c(r(i,j)))/(2*area(i,j));

Krp(i,j)=Kpr(i,j);

Krq(i,j)=Kqr(i,j);Krr(i,j)=(b(r(i,j))^2+c(r(i,j))^2)/(2*area(i,j));

end

end

fori=1:

2**m

forj=1:

Ym

K(p(i,j),p(i,j))=Kpp(i,j)+K(p(i,j),p(i,j));

K(p(i,j),q(i,j))=Kpq(i,j)+K(p(i,j),q(i,j));

K(p(i,j),r(i,j))=Kpr(i,j)+K(p(i,j),r(i,j));

K(q(i,j),p(i,j))=Kqp(i,j)+K(q(i,j),p(i,j));

K(q(i,j),q(i,j))=Kqq(i,j)+K(q(i,j),q(i,j));

K(q(i,j),r(i,j))=Kqr(i,j)+K(q(i,j),r(i,j));

K(r(i,j),p(i,j))=Krp(i,j)+K(r(i,j),p(i,j));

K(r(i,j),q(i,j))=Krq(i,j)+K(r(i,j),q(i,j));

K(r(i,j),r(i,j))=Krr(i,j)+K(r(i,j),r(i,j));

end

end

fori=1:

11

K(i,:

)=0;

K(i,i)=1;

end

fori=1:

11:

111

K(i,:

)=0;

K(i,i)=1;

end

fori=111:

121

K(i,:

)=0;

K(i,i)=1;

end

fori=11:

11:

121

K(i,:

)=0;

K(i,i)=1;

end

B=zeros(121,1);

fori=11:

11:

121

B(i,1)=100;

end

U=K\B;

b=1;**=zeros(11,11)

forj=1:

11

fori=1:

11

**(i,j)=U(b,1);

b=b+1;

end

end

subplot(1,2,1),mesh(**)

a*is([0,11,0,11,0,100])

subplot(1,2,2),contour(**,15)

holdon

〔3〕由上面的程序得到节点电位:

〔4〕由程序得到的电场分布图及等位线图如下:

4.用有限元法求矩形波导〔b/a=0.45〕的:

〔1〕电场分布图;

〔2〕求TE模式下的主模、第一、二高次模的截止波长〔5次〕,画出截至波长图;

〔3〕求TM模式下的主模、第一、二高次模的截止波长〔5次〕,画出截至波长图。

解:

利用MATLAB中的PDE工具箱:

取矩形波导的宽边尺寸为a,窄边尺寸为0.45a。

(1)主模的电场分布图如下:

在Neumann边界条件下:

在Dirichlet边界条件下:

〔2〕在TE模式下设置边界条件为Neumann条件,使用编制好的程序计算出主模的截止波长为1.9988a,第一高次模为0.9977a,第二高次模为0.8972a,截止波长图如下:

〔3〕在TM模式下设置边界条件为Dirichlet条件,使用编制好的程序计算出主模的截止波长为0.8179a,第一高次模为0.6655a,第二高次模为0.5315a,截止波长图如下:

5.用时域有限差分求解上述4题中的前两问。

解:

〔1〕根据时域有限差分编写的程序可画出主模的电场分布图如下:

在Neumann边界条件下:

在Dirichlet边界条件下:

〔2〕根据时域有限差分编写的程序可画出频谱图和场构造图,从左图中可以读出主模截止频率

值,主模

,根据

,其中

从而计算出主模截至波长

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > PPT模板 > 国外设计风格

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1