登 录
註 冊
论坛
微波仿真网
注册
登录论坛可查看更多信息
微波仿真论坛
>
时域有限差分法 FDTD
>
Mur二阶边界条件求助
发帖
回复
2748
阅读
9
回复
[
已解决
]
Mur二阶边界条件求助
离线
xiaoweike
UID :18905
注册:
2008-10-10
登录:
2011-04-03
发帖:
59
等级:
仿真一级
0楼
发表于: 2008-10-31 18:51:54
前面编了一阶的,能很好的运行,现在想编一个二阶的,于是换了个公式,但是当波进入边界后,马上不正常了(出现超过极限的反射),下面就是使用的二阶Mur的边界条件(按葛书编的),望大家指教.
mrig5{
% 3.二阶Mur边界条件
ryb81 .|
k0=8.854e-12;%真空介电常数
Ml'lZ)
h1=(c0*dt-ds)/(c0*dt+ds);
MHA_b^7?
h2=c0^2*k0*dt/2/(c0*dt+ds);
wEQZ9?\
Q07&7SH_
for i=1
ZzxWKIE'c
for j=2:JE-1
yI/ FD
Hz(i,j)=Hz(i+1,j)+h1*(Hz(i+1,j)-Hz(i,j))+h2*(Ex(i,j)-Ex(i,j-1)+Ex(i+1,j)-Ex(i+1,j-1));%左侧边界
F?qg?1vB|
end
%8xK BL]J
end
Zg|l:^E
for i=IE
}L=Qp=4
for j=2:JE-1
8d&%H,
Hz(i,j)=Hz(i-1,j)+h1*(Hz(i-1,j)-Hz(i,j))+h2*(Ex(i,j)-Ex(i,j-1)+Ex(i-1,j)-Ex(i-1,j-1));%右侧边界
W>'(MB$3
end
U.Y7]#P:
end
oqzWL~
for j=1
2WE01D9O
for i=2:IE-1
JoD@e[(
Hz(i,j)=Hz(i,j+1)+h1*(Hz(i,j+1)-Hz(i,j))+h2*(Ey(i,j)-Ey(i-1,j)+Ey(i,j+1)-Ey(i-1,j+1));%下侧边界
e`Co ='
end
FuG;$';H75
end
jsP+,brO
for j=JE
*&hbfsP:
for i=2:IE-1
IsDwa qd|
Hz(i,j)=Hz(i,j-1)+h1*(Hz(i,j-1)-Hz(i,j))+h2*(Ey(i,j)-Ey(i-1,j)+Ey(i,j-1)-Ey(i-1,j-1));%上侧边界
1\g r ;b
& ..
F^5\w-gLY
#$}A$ sm
未注册仅能浏览
部分内容
,查看
全部内容及附件
请先
登录
或
注册
共
条评分
离线
gwzhao
方恨少
UID :17098
注册:
2008-08-24
登录:
2019-01-09
发帖:
1374
等级:
荣誉管理员
1楼
发表于: 2008-10-31 21:31:00
好像公式不是这样的吧。
共
条评分
逆流而上
离线
aoso
<a href="http://b
UID :4796
注册:
2007-09-04
登录:
2025-06-23
发帖:
592
等级:
八级仿真大师
2楼
发表于: 2008-10-31 21:36:18
找本葛德彪老师那本书后面有个2维2阶Mur的例子,fortran编的,和matlab语法差不多
共
条评分
<a href="http://bbs.myboyan.com/index.php?x=298768"><img src="http://bbs.myboyan.com/images/wind/logo.png"></a>
离线
xiaoweike
UID :18905
注册:
2008-10-10
登录:
2011-04-03
发帖:
59
等级:
仿真一级
3楼
发表于: 2008-10-31 21:48:44
能不能给我一下matlab的二阶Mur边界条件,我手头上现在没书.
共
条评分
离线
cem-uestc
UID :9061
注册:
2008-03-07
登录:
2019-01-05
发帖:
2575
等级:
荣誉管理员
4楼
发表于: 2008-10-31 21:49:30
Mur2阶的公式有4个系数,公式有问题
共
条评分
欢迎光临
http://www.mwtee.com/home.php?mod=space&uid=13535
离线
gwzhao
方恨少
UID :17098
注册:
2008-08-24
登录:
2019-01-09
发帖:
1374
等级:
荣誉管理员
5楼
发表于: 2008-10-31 22:57:08
% 本程序实现2维TM波FDTD仿真
)=}qAVO8
% 此程序用PML设置吸收边界条件
p:nl4O/
% FDTD_2D_PML
z{Yfiv\-r
% 仅含有Ez,Hx,Hy分量
#A4WFZ
v=G*K11@
clear;
:l]qTCmY
clc;
7P3/Ky@6
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
`+< ^Svou
%% 1.初始化
>>J$`0kM*
T=200; % 迭代次数
"AjC2P],
IE=100; %
jq]5Y^e
JE=100;
"ADI.
npml=8; % PML的网格数量
=\2gnk~
08jk~$%
c0=3*10^8; % 波速
B<BS^waU
f=1.5*10^(9); % 频率
M.dX;iM<
lambda=c0/f; % 波长
2Cy,#X%j>
t|oIzjKE/
wl=10; %数值波长
9a=:e=q3#
dx=lambda/wl;
g#74c'+
dy=lambda/wl;
JL#LCU ?
pi=3.14159;
]'% iR
Dom]w.W5
dt=dx/(2*c0); % 时间间隔
L"9Z{o7
H%l-@::+$
epsz=1/(4*pi*9*10^9); % 真空介电常数
Y J,"@n_
epsilon=1; % 相对介电常数
_Cz98VqRk
sigma=0; % 电导率
0/]h"5H3
>CrrxiG
spread=6; % 脉冲宽度
*FEJ5x
t0=20; % 脉冲高度
\36 G``e
/"`hz6rIv
ic=IE/2; % 源的X位置
A/a=)su
jc=JE/2; % 源的Y位置
>ryA:TO{
%初始化
}[|9vF"g.y
for i=1E+1;
6e \?%,H
for j=1:JE+1;
Jf=V<
dz(i,j)=0; % z方向电荷密度
)b]!IP3
ez(i,j)=0; % z方向电场
IfB .2e`
hx(i,j)=0; % x方向磁场
6B@e[VtG$
hy(i,j)=0; % y方向磁场
kdGq\k,
ihx(i,j)=0;%
rlh:|#GTJ
ihy(i,j)=0;
l*hWws[
iz(i,j)=0; % z方向求和参量,频域卷积转化为时域求和
F;`c0ja]
end;
?QFxds
end;
ygja{W.
\(Nx)F
for i=2E; %
I@VzH(da\
for j=2:JE;
+@fEw
ga(i,j)=1;
2jhJXM=~
end;
$2*_7_Qb
end;
M {'(+a[
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
) P9]/y
%PML参数的设置
i^:#*Q-co
for i=1E;
P4yUm(@
gi2(i)=1;
k*2khh-
gi3(i)=1;
& .1-6
fi1(i)=0;
q90RTX'CY
fi2(i)=1.0;
?QKDYH(
fi3(i)=1.0;
^NX;zc
end
ehB'@_y
]Kjt@F";
for j=1:JE;
7&P70DO
gj2(j)=1;
71E~~ $
gj3(j)=1;
|PYyhY
fj1(j)=0;
*iru>F8r:
fj2(j)=1;
F(/<ADx
fj3(j)=1;
ul_E{v
end
(p#c p
56kqG}mg&
for i=1:npml+1; %设置PML层中的参数
'W9[Vm
xnum=npml+1-i;
$A 5O>
xn=0.33*(xnum/npml)^3;
Sx~mc_ekY
gi2(i)=1.0/(1+xn);
d5L BL'/o
gi2(IE-1-i)=1/(1+xn);
8q]"CFpa
gi3(i)=(1-xn)/(1+xn);
4s%zvRu
gi3(IE-1-i)=(1-xn)/(1+xn);
?1r;6
xn=0.25*((xnum-0.5)/npml)^3;
oVP,ar0G
fi1(i)=xn;
p3-~cr.LD
fi1(IE-2-i)=xn;
32 j){[PL3
fi2(i)=1.0/(1+xn);
hFycSu
fi2(IE-2-i)=1/(1+xn);
Xsanc@w)^C
fi3(i)=(1-xn)/(1+xn);
;,]4A{|
fi3(IE-2-i)=(1-xn)/(1+xn);
URj)]wp/
end
=os!^{p7>
$$p +~X
for i=1:npml+1;
xv147"w'v
xnum=npml+1-i;
ktfxb<%
xn=0.33*(xnum/npml)^3;
,if~%'9j
gj2(i)=1.0/(1+xn);
s=:LS
gj2(JE-1-i)=1/(1+xn);
t5b cQ@Y
gj3(i)=(1-xn)/(1+xn);
r@i)Sluf
gj3(JE-1-i)=(1-xn)/(1+xn);
&.2%p
xn=0.25*((xnum-0.5)/npml)^3;
#%$@[4"V
fj1(i)=xn;
)!VJ\
fj1(JE-2-i)=xn;
6IK>v*<
fj2(i)=1.0/(1+xn);
D` cy.},L
fj2(JE-2-i)=1/(1+xn);
YwH Fn+
fj3(i)=(1-xn)/(1+xn);
nXy"
fj3(JE-2-i)=(1-xn)/(1+xn);
Lfa&JKd
end
rVOF
1xkk5\3]
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
=C(BZ+-^
%% 2.迭代求解电场和磁场
v#g:]T
for t=1:T;
\N|}V.r
for i=2E; % 为了使每个电场周围都有磁场进行数组下标处理
ZBU<L+#
for j=2:JE;
%sZ3Gpi
dz(i,j)=gi3(i)*gj3(j)*dz(i,j)+gi2(i)*gj2(j)*0.5*(hy(i,j)-hy(i-1,j)-hx(i,j)+hx(i,j-1));
&a\w+
end;
'Q]Wk75
end; % 电场循环结束
z\, lPwB2
.&b c3cW
pulse=sin(2*pi*f*t*dt); % 正弦波源
t vW0 W
dz(ic,jc)=dz(ic,jc)+pulse; % 软源
*b{Hj'H aH
VFq\{@- %
for i=1E; % 为了使每个电场周围都有磁场进行数组下标处理
sT iFh"8d>
for j=1:JE;
>#S}J LZ
ez(i,j)=ga(i,j)* dz(i,j); %反映煤质的情况都是放到这里的
rKOa9M
% iz(i,j)=iz(i,j)+gb(i,j)*ez(i,j) ;
&