登 录
註 冊
论坛
微波仿真网
注册
登录论坛可查看更多信息
微波仿真论坛
>
时域有限差分法 FDTD
>
自己写的FDTD,有点问题
发帖
回复
1073
阅读
5
回复
[
求助
]
自己写的FDTD,有点问题
离线
guevara
UID :75963
注册:
2011-04-20
登录:
2011-06-03
发帖:
14
等级:
仿真新人
0楼
发表于: 2011-04-25 16:58:55
要求:二维FDTD ,自由空间TM波,激励源是时谐场
1MpX] j8C#
程序如下:
@| P3
clear;clc;
_Po#ZGm~
%设置网格大小
L/5z!
IE=100;
K: 4P;ApI
JE=100;
7fUi?41XA
c=3e8;%自由空间的光速
}d@LSaM
%设置激励源中心
{vjqy&?y
ic=IE/2;
"`[ $&:~
jc=JE/2;
-h=c=P
%激励源变量设置
jXtLo,km
f=10e9;
(%.</|u
omg=2*pi*f;
Ty.drM
T=1/f;
]2P/G5C3tU
lmd=c/f;
Xa>}4j.
%初始化设置
x)d2G6x
ddx=lmd/20;%空间步长
V54q"kP,@.
dt=ddx/(2*c);%时间步长
(5>{?dR)|
mu=4.0*pi*1.0e-7;%自由空间磁导率
u^!&{ q
epsl=1.0/(c*c*mu);%自由空间介电常数
+B](5 z4
sigma=0;%自由空间电导率
q;KshpfRMD
%初始化系统变量
2}59 7Hb
Ez=zeros(IE,JE);
T4l-sJ'|
Hx=Ez;
Qf"6PJ
Hy=Ez;
K7+^Yv\YQx
%设置时间步
8Er[M
Nsteps=150;%时间步为90时可画图,时间步为150时报:Warning: Axis limits outside float precision, use ZBuffer or Painters instead. %Not rendering
JE/l#Q!
k1=dt/(mu*ddx);
eK\|SQb
k2=dt/(epsl*ddx);
GCZu<,
%主循环
O~nBz):2
for N=1:Nsteps
.&Y,D-h}7|
t=N*dt;
m)(SG
%加入激励源
]<Z&=0i# 9
if t<T/2
8xc8L1;
sgn=0.5*(1-cos(omg*t))*sin(omg*t);%引入窗函数
kqQphKkL
else
:~-)Sm+^
sgn=sin(omg*t);
}rFTh I
end;
>aX:gN
Ez(ic,jc)=Ez(ic,jc)+sgn;
2&suo!ig
%计算Hx
S.qk%NTTD
for j=1:JE-1
|+>%o.M&i
for i=1:IE-1
h 3eGq:!9
Hx(i,j)=Hx(i,j)-k1*(Ez(i,j+1)-Ez(i,j));
t%0r"bTi
end;
>N :|Km\
end;
2Zv,K- G
%计算Hy
zojuH8
for j=1:JE-1
;b{pzIe= F
for i=1:IE-1
{hlT`K
Hy(i,j)=Hy(i,j)-k1*(Ez(i+1,j)-Ez(i,j));
c1 gz#,
end;
cC7"J\+r*
end;
Y'3kE
%计算Ez
07~pf}
for j=2:JE
g%@]z8L
for i=2:IE
/e;e\k_}'
Ez(i,j)=Ez(i,j)+...
|`N$>9qN
k2*(Hy(i,j)-Hy(i-1,j)-Hx(i,j)+Hx(i,j-1));
"US"`a2
end;
i528e{&
end;
Y8x(#qp,
%画图
*>?):-9"6N
figure(1)
B]&Lh~Im
mesh(Ez);
Y*]l|)a6_]
drawnow
cq+nWHqF{J
olUqBQ&ol
未注册仅能浏览
部分内容
,查看
全部内容及附件
请先
登录
或
注册
共
条评分
离线
lvbirui
UID :75507
注册:
2011-04-12
登录:
2011-04-27
发帖:
8
等级:
旁观者
1楼
发表于: 2011-04-25 23:41:26
我是初学者中的初学者,问下
!Sy'Z6%f
你在加入激励源时的那个关于周期的判断,t<T/2 是干什么的???
共
条评分
离线
guevara
UID :75963
注册:
2011-04-20
登录:
2011-06-03
发帖:
14
等级:
仿真新人
2楼
发表于: 2011-04-26 15:12:57
回 1楼(lvbirui) 的帖子
我也不是很清楚,葛德彪的《电磁波时域有限差分方法》的5.3节讲的,我直接用的
共
条评分
离线
my_dream
UID :44900
注册:
2009-10-24
登录:
2017-04-20
发帖:
227
等级:
积极交流四级
3楼
发表于: 2011-07-20 19:15:15
回 1楼(lvbirui) 的帖子
这个是用来加窗函数的,加了窗函数可以上激励在时域上变得平缓一点,从而在频域上看来谐波分量就小一点,不然的话,在t=0时刻突然来了个信号,会引入很多其他频率的冲击信号
>#|Q,hVU5
这个是我的理解,我也是新手,还请指教
共
条评分
离线
jiandan1986
UID :77042
注册:
2011-05-09
登录:
2012-04-16
发帖:
25
等级:
仿真新人
4楼
发表于: 2011-07-24 19:28:02
请问一下三楼,如果用上面的得到了仿真图的话,怎么得到它的频谱图啊???谢啦!!!
共
条评分
离线
jiandan1986
UID :77042
注册:
2011-05-09
登录:
2012-04-16
发帖:
25
等级:
仿真新人
5楼
发表于: 2011-07-24 19:29:46
如果设置一下坐标轴的范围呢,会不会有效呢?我也不懂,只是个人意见。
共
条评分
发帖
回复