登 录
註 冊
论坛
微波仿真网
注册
登录论坛可查看更多信息
微波仿真论坛
>
时域有限差分法 FDTD
>
一维FDTD的MATLAB程序2
发帖
回复
1304
阅读
1
回复
[
转载
]
一维FDTD的MATLAB程序2
离线
lihao1223
享受孤独
UID :76808
注册:
2011-05-05
登录:
2015-04-08
发帖:
105
等级:
仿真二级
0楼
发表于: 2011-05-24 19:57:47
这次是关于FDTD算法的。一维情况下在入口输入一个高斯脉冲的E分量,终端匹配。
TE%#$q
function FDTDonedimensionpipei(L,d,T)
Q)`gPX3F
%version1.0 终端匹配
[fi'=Cb
%FDTDonedimensionpipei(6,0.18,0.5e-9)
(YHvGGr
t0=3*T;
QaWHz
c=3e8;
iN_D8dI
u=4*pi*1e-7;
:z.Y$]F@
e=8.8541878e-12;
rAWl0y_m
dz=T*c/10;
-,VhS I
Nz=L/dz;
,|X+/|gm
Nz=fix(Nz);
{Y91vXTz7
dt=dz/2/c;
t*d >eK`:N
Ex=zeros(1,Nz+1);
&3Z. #*
B=zeros(1,Nz+1);
99"[b
Hy=zeros(1,Nz);
+'/}[1q1/T
Nt=2*Nz;
x$GsDV
for n=0:Nt
x XM!E 8
t=n*dt;
sD8m<
F=exp(-(t-t0).^2./T^2);
u=;nU(]M '
Ex(1)=F;
] 5v4^mk
for k=1:Nz
ny(GTKoUz
Hy(k)=Hy(k)+dt./u.*(Ex(k)-Ex(k+1))./dz;
^qO=~U!{
end
=HY1l}\
for k=1:Nz-1
UIOEkQ\Wl
Ex(k+1)=Ex(k+1)+dt./e.*(Hy(k)-Hy(k+1))./dz;
R pI<]1
end
BwJ^_:(p~
Ex(1)=B(2)+(c*dt-dz)./(c*dt+dz).*(Ex(2)-B(1));
{Mr~%y4
Ex(Nz+1)=B(Nz)+(c*dt-dz)./(c*dt+dz).*(Ex(Nz)-B(Nz+1));
RP,:[}mPl
Vref1=d.*Ex(Nz-300);
[OZ=iz.
Vref2=d.*Ex(Nz-100);
u:$x6/t
plot(t,Vref1,'s');
+Y)#yGUn
hold on;
a4(?]ND~6
]}[Yf
未注册仅能浏览
部分内容
,查看
全部内容及附件
请先
登录
或
注册
共
条评分
离线
北斗寒星
UID :78053
注册:
2011-05-25
登录:
2015-02-26
发帖:
29
等级:
仿真新人
1楼
发表于: 2011-05-25 21:06:03
看看,好像这个程序问题啊
共
条评分
发帖
回复