登 录
註 冊
论坛
微波仿真网
注册
登录论坛可查看更多信息
微波仿真论坛
>
时域有限差分法 FDTD
>
啊,受不了了,我的二维TEfdtd老出错,请各 ..
发帖
回复
983
阅读
0
回复
[
讨论
]
啊,受不了了,我的二维TEfdtd老出错,请各位抽出宝贵的几分钟给我看看行吗?教我一下,谢谢
离线
昆虫杀手
自强不息厚德载物
UID :58301
注册:
2010-04-28
登录:
2022-12-16
发帖:
332
等级:
仿真三级
0楼
发表于: 2011-10-24 11:28:42
%常数定义
O+(. 29
ie=80;
@!L@UP0
je=80;
()JYN5
i0=25;
eeI9[lTw
j0=25;
[3{:H"t
epsr=8.854e-12;
ND9n1WZ&x
miu=4*pi*1e-7;
5p]urfN-f
sigma=0;
h@PMCmf_
sigmam=0;
~_dBND?
Z0=sqrt(miu/epsr);
uZqu xu.
ddx=0.01;
O" X!S_R
dy=ddx;
G:h;C].
dt=ddx/(6e8);
gqO%^b)6
ia=4;
KV^:sxU
ib=ie-4+1;
7})!>p )
ja=4;
WL)_8!
jb=je-4+1;
J[& 7,}
%初始化数组
F?RCaj
sigmax=0.001;
/H\^l.|vk
sigmamx=Z0^2*sigmax;
;*>QG6Fh
sigmay=0.001;
*hk{q/*Qw
sigmamy=Z0^2*sigmay;
#whO2Mv
h|c:!VN@
ex=zeros(ie,je);
+s+PnZ%0V
ey=zeros(ie,je);
26('V `N
hz=zeros(ie+1,je+1);
Sg_-OX@f
hzx=zeros(ie+1,je+1);
K*HVn2OV
hzy=zeros(ie+1,je+1);
@ 2%.>0s.
nsteps=300;
AXNszS%4
ee=zeros(nsteps,1);
~u?x{[
t0=12;
A3 Rm0
spread=25;
W{$+mow7S
T=0;
FM;;x(sg
%主程序
~Me&cT8
for n=1:nsteps
%WJ{IXlz
T=T+1;
[kp7LA"`
%真空中,fdtd迭代
T|BY00Sz`
ca=(1.-sigma*dt/(2*epsr))/(1.+sigma*dt/(2*epsr));
T,xVQ4J?
cb=dt/epsr/(1.+sigma*dt/(2*epsr));
5JU(@}Db
cp=(1.-sigmam*dt/(2*miu))/(1.+sigmam*dt/(2*miu));
{R1Cxt}
cq=dt/epsr/(1.+sigmam*dt/(2*miu));
v:J.d5
cb=dt/epsr;
K;ry4/Vap
cq=dt/miu;
?Qo_ KQ%sn
ex(ia:ib,ja:jb)=ex(ia:ib,ja:jb)+cb.*(hz(ia:ib,ja:jb)-hz(ia:ib,ja-1:jb-1)/dy);
X('Q;^`
ey(ia:ib,ja:jb)=ey(ia:ib,ja:jb)+cb.*(hz(ia:ib,ja:jb)-hz(ia-1:ib-1,ja:jb)/ddx);
-?%{A%'
%source
"u,~yxYWl
hz(ia-1:ib-1,ja-1:jb-1)=hz(ia-1:ib-1,ja-1:jb-1)+cq.*((ey(ia:ib,ja:jb)-ey(ia-1:ib-1,ja-1:jb-1))/ddx-(ex(ia:ib,ja:jb)-ex(ia-1:ib-1,ja-1:jb-1))/dy);
P60]ps!M
pulse=exp(-0.5*(T*dt-t0)^2/spread^2)/10000;
d9[6kQ]
ex(i0,j0)=ex(i0,j0)+pulse;
rvoS52XG,
%pml层顶点计算
(7Ca\H3$
e1=(1-exp(-sigmay*dt/epsr))/(dy*sigmay);
,h^;~|GT
% ex在四个角顶点的计算
^Lg{2hjj
%左下角,hz ->1:ja
V"2AN3~&
ex(1:ia-1,1:ja-1)=exp(-sigmay*dt/epsr).*ex(1:ia-1,1:ja-1)-e1.*(hz(1:ia-1,1:ja-1)-hz(1:ia-1,2:ja));
e u=f-HW]
%左上角
E3.W#=o
ex(1:ia-1,jb-1:je-1)=exp(-sigmay*dt/epsr).*ex(1:ia-1,jb-1:je-1)-e1.*(hz(1:ia-1,jb-1:je-1)-hz(1:ia-1,jb:je));
<-oRhi4
%右下角
kGBl)0pr`x
ex(ib-1:ie-1,1:ja-1)=exp(-sigmay*dt/epsr).*ex(ib-1:ie-1,1:ja-1)-e1.*(hz(ib-1:ie-1,1:ja-1)-hz(ib-1:ie-1,2:ja));
-fSKJo#}|
%右上角
*{;A\sL
ex(ib-1:ie-1,jb-1:je-1)=exp(-sigmay*dt/epsr).*ex(ib-1:ie-1,jb-1:je-1)-e1.*(hz(ib-1:ie-1,jb-1:je-1)-hz(ib-1:ie-1,jb:je));
6q xUT
% ey在四个角顶点的计算
EbwZZSds1
e11=(1-exp(-sigmax*dt/epsr))/(ddx*sigmax);
v-r[~
%左下角,hz ->1:ia
M;RnH##W
ey(1:ia-1,1:ja-1)=exp(-sigmax*dt/epsr).*ey(1:ia-1,1:ja-1)-e11.*(hz(2:ia,1:ja-1)-hz(1:ia-1,1:ja-1));
Bu>yRL=*
%左上角
"]\":T
ey(1:ia-1,jb-1:je-1)=exp(-sigmax*dt/epsr).*ey(1:ia-1,jb-1:je-1)-e11.*(hz(2:ia,jb-1:je-1)-hz(1:ia-1,jb-1:je-1));
8w@W8(3B
%右下角
si mX
ey(ib-1:ie-1,1:ja-1)=exp(-sigmax*dt/epsr).*ey(ib-1:ie-1,1:ja-1)-e11.*(hz(ib:ie,1:ja-1)-hz(ib-1:ie-1,1:ja-1));
Med"dHo7
%右上角
ss*2TE7
ey(ib-1:ie-1,jb-1:je-1)=exp(-sigmax*dt/epsr).*ey(ib-1:ie-1,jb-1:je-1)-e11.*(hz(ib:ie,jb-1:je-1)-hz(ib-1:ie-1,jb-1:je-1));
Nh7!Ah
<,]CVo
%%%hzx在四个角顶点的计算
1^H<+0
hhzx1=(1-exp(-sigmamx*dt/epsr))/(ddx*sigmamx);
gx>mKSzy
%左下角
B|q3;P
hzx(2:ia,2:ja)=exp(-sigmamx*dt/miu).*hzx(2:ia,2:ja)-hhzx1.*(ey(2:ia,2:ja)-ey(1:ia-1,2:ja));
-I$txa/"|
%右下角
uTlT'9)
hzx(ib+1:ie,2:ja)=exp(-sigmamx*dt/miu).*hzx(ib+1:ie,2:ja)-hhzx1.*(ey(ib+1:ie,2:ja)-ey(ib:ie-1,2:ja));
4Igs\x{i
%左上角
n5,Pq+[
hzx(2:ia,jb+1:je)=exp(-sigmamx*dt/miu).*hzx(2:ia,jb+1:je)-hhzx1.*(ey(2:ia,jb+1:je)-ey(1:ia-1,jb+1:je));
$85o%siS'
%右上角
yV]-Oa$*s0
hzx(ib+1:ie,jb+1:je)=exp(-sigmamx*dt/miu).*hzx(ib+1:ie,jb+1:je)-hhzx1.*(ey(ib+1:ie,jb+1:je)-ey(ib:ie-1,jb+1:je));
CyBM4qyH
%%%hzy在四个角顶点的计算
CK`3
hhzy1=(1-exp(-sigmamy*dt/epsr))/(ddx*sigmamy);
}HQT@&=
%左下角
G'}_ZUy#
hzy(2:ia,2:ja)=exp(-sigmay*dt/epsr).*hzy(2:ia,2:ja)-hhzy1.*(ex(2:ia,2:ja)-ex(2:ia,1:ja-1));
)i6U$,]
%左上角
PK`(qK9
hzy(2:ia,jb+1:je)=exp(-sigmay*dt/epsr).*hzy(2:ia,jb+1:je)-hhzy1.*(ex(2:ia,jb+1:je)-ex(2:ia,jb:je-1));
^%OH}Z `ly
%右下角
|Nd.'|g,
hzy(ib+1:ie,2:ja)=exp(-sigmay*dt/epsr).*hzy(ib+1:ie,2:ja)-hhzy1.*(ex(ib+1:ie,2:ja)-ex(ib+1:ie,1:ja-1));
VV}fW"_ND
%右上角
g7Q*KA+
hzy(ib+1:ie,jb+1:je)=exp(-sigmay*dt/epsr).*hzy(ib+1:ie,jb+1:je)-hhzy1.*(ex(ib+1:ie,jb+1:je)-ex(ib+1:ie,jb:je-1));
"y ,(9_#
%pml 左右两边
:;#}9g9
%%%% the left side
hr}R,BR|
ex(1:ia-1,ja:jb-1)=ex(1:ia-1,ja:jb-1)-Z0/2.*(hz(1:ia-1,ja:jb-1)-hz(1:ia-1,ja+1:jb));
^CZ|ci6bX
ey(1:ia-1,ja:jb-1)=exp(-sigmax*dt/epsr).*ey(1:ia-1,ja:jb-1)-e11.*(hz(2:ia,ja:jb-1)-hz(1:ia-1,ja:jb-1));
-{amzyvLE
hzx(2:ia,ja+1:jb)=exp(-sigmamx*dt/miu).*hzx(2:ia,ja+1:jb)-hhzx1.*(ey(2:ia,ja+1:jb)-ey(1:ia-1,ja+1:jb));
?28GQyk4
hzy(2:ia,ja+1:jb)=hzy(2:ia,ja+1:jb)-1/(2*Z0).*(ex(2:ia,ja:jb-1)-ex(2:ia,ja+1:jb));
"?0G^zu
%%% the right side
PM?Ri^55<L
ex(ib:ie-1,ja:jb-1)=ex(ib:ie-1,ja:jb-1)-Z0/2.*(hz(ib:ie-1,ja:jb-1)-hz(ib:ie-1,ja+1:jb));
<n~g+ps
ey(ib:ie-1,ja:jb-1)=exp(-sigmax*dt/epsr).*ey(ib:ie-1,ja:jb-1)-e11.*(hz(ib+1:ie,ja:jb-1)-hz(ib:ie-1,ja:jb-1));
0@/E%T1c"
hzx(ib+1:ie,ja+1:jb)=exp(-sigmamx*dt/miu).*hzx(ib+1:ie,ja+1:jb)-hhzx1.*(ey(ib+1:ie,ja+1:jb)-ey(ib:ie-1,ja+1:jb));
i$ZpoM
hzy(ib+1:ie,ja+1:jb)=hzy(ib+1:ie,ja+1:jb)-1/(2*Z0).*(ex(ib+1:ie,ja:jb-1)-ex(ib+1:ie,ja+1:jb));
Zz*mf+
%pml 上下两边
9kg>)ty@
%%the bottom side
u$/2XO
ex(ia:ib-1,1:ja-1)=exp(-sigmay*dt/epsr).*ex(ia:ib-1,1:ja-1)-e1.*(hz(ia:ib-1,1:ja-1)-hz(ia:ib-1,2:ja));
ZxeE6M^w
ey(ia:ib-1,1:ja-1)=ey(ia:ib-1,1:ja-1)-(Z0/2).*(hz(ia+1:ib,1:ja-1)-hz(ia:ib-1,1:ja-1));
C"|_j?
hzx(ia+1:ib,2:ja)=hzx(ia+1:ib,2:ja)-1/(2*Z0).*(ey(ia+1:ib,2:ja)-ey(ia:ib-1,2:ja));
c"&!=@
hzy(ia+1:ib,2:ja)=exp(-sigmay*dt/epsr).*hzy(ia+1:ib,2:ja)-hhzy1.*(ex(ia+1:ib,2:ja)-ex(ia+1:ib,1:ja-1));
C%7)sLWjJS
%%the upper side
+n~rM'^4/
ex(ia:ib-1,jb:je-1)=exp(-sigmay*dt/epsr).*ex(ia:ib-1,jb:je-1)-e1.*(hz(ia:ib-1,jb:je-1)-hz(ia:ib-1,jb+1:je));
(Gk]<`d#N
ey(ia:ib-1,jb:je-1)=ey(ia:ib-1,jb:je-1)-(Z0/2).*(hz(ia+1:ib,jb:je-1)-hz(ia:ib-1,jb:je-1));
AkQFb2|ir
hzx(ia+1:ib,jb+1:je)=hzx(ia+1:ib,jb+1:je)-1/(2*Z0).*(ey(ia+1:ib,jb+1:je)-ey(ia:ib-1,jb+1:je));
/g-X=|?F
hzy(ia+1:ib,jb+1:je)=exp(-sigmay*dt/epsr).*hzy(ia+1:ib,jb+1:je)-hhzy1.*(ex(ia+1:ib,jb+1:je)-ex(ia+1:ib,jb:je-1));
J1ro\"
%真空与pml交界面
V^5k>`A
ey(ib,ja:jb)=ey(ib,ja:jb)-Z0/2.*(hz(ib+1,ja:jb)-hz(ib,ja:jb));
6o23#JgN
ex(ia:ib,ja)=ex(ia:ib,ja)-Z0/2.*(hz(ia:ib,ja)-hz(ia:jb,ja+1));
3)MM5 bb$
"7g8 d
未注册仅能浏览
部分内容
,查看
全部内容及附件
请先
登录
或
注册
共
条评分
发帖
回复