登 录
註 冊
论坛
微波仿真网
注册
登录论坛可查看更多信息
微波仿真论坛
>
时域有限差分法 FDTD
>
请大伙帮忙见证一维TEM波Sin点源计算结果是 ..
发帖
回复
1719
阅读
6
回复
[
讨论
]
请大伙帮忙见证一维TEM波Sin点源计算结果是否正确!!
离线
linzchey
UID :22707
注册:
2008-12-07
登录:
2011-10-17
发帖:
76
等级:
仿真二级
0楼
发表于: 2009-06-14 19:04:45
[attachment=21068] [attachment=21069] 图片 不能上传
au@ LQxKQ
RbzSQr>a\
$}_N379&
>A5R
k"\%x=#
."&,_F
请问在没有归一化的情况下,TEM波沿x轴传播,omega=1.3e11, phi=0的情况下会是什么样子呢?
WSi`)@.XO
X1&Ug^
:K>v F`SM
我的结果是在原点有个峰值,随后就降到很小的峰值在震荡前进,最大峰值在0.3左右,随着时间的推移
g6{.C7m
11[[H kX@
峰值正负之间变化且在减小。不知为何,空间是自由空间,eps_r-1, mu_r=1???????
^e:C{]S=
^u&oS1U
u?5d%]*
1j0OV9 -|
========== ..
:i_818h!?[
y=g9 wO
未注册仅能浏览
部分内容
,查看
全部内容及附件
请先
登录
或
注册
共
条评分
离线
vincentwl
UID :15476
注册:
2008-07-16
登录:
2015-06-24
发帖:
189
等级:
八级仿真大师
1楼
发表于: 2009-06-14 19:43:14
回 楼主(linzchey) 的帖子
”随着时间推移 峰值正负之间变化且在减小。“
<S~_|Y*v
没看懂 按我理解的意思 是在趋向于稳定状态
(Wkli:Lq
(]7*Kq
正弦波在真空传播的正确结果 应该是 在观察点观察到的场值变化和你源点一样 只是相位不一样。
共
条评分
http://www.meta-materials.com/
离线
gwzhao
方恨少
UID :17098
注册:
2008-08-24
登录:
2019-01-09
发帖:
1374
等级:
荣誉管理员
2楼
发表于: 2009-06-14 22:01:26
回 楼主(linzchey) 的帖子
你这个一个周期有多少个网格啊,有20个么?
&_FNDJ>MCk
你把步长设的小一点,看看结果,比如dx = lamda / WL ,
bb;fV
WL 取20,40等等。
共
1
条评分
linzchey
rf币
+1
-
2009-06-15
逆流而上
离线
hawkwhite
No pains, no gains
UID :13554
注册:
2008-06-07
登录:
2011-04-09
发帖:
315
等级:
退休版主
3楼
发表于: 2009-06-14 22:46:35
应该是程序错误而不是网格不够密。FDTD即使每波长只有5个网格点,得到的结果也不会“振幅0.3且越来越小”。
q" wi.&|
需要注意的问题:第一,时间步长的选取,要按FDTD书上的稳定性限制条件给;第二,电场和磁场空间相差半个网格点、时间相差半个时间步,比如一维问题中,一般整数点上放电场半点上放磁场、整数时间步放电场、半时间步放磁场;第三,FDTD计算公式别搞错了(论坛发帖没办法敲公式,自己找本FDTD书看看);第四,电场和磁场交替计算(一定要算完所有点上的电场后再算磁场、算完所有点上的磁场后再算电场);最后,截断边界要处理好,为了考证是否是边界问题,建议在传播时间(传播速度为光速)不足以使TEM波传播到截断边界前存储计算结果观察,若还有你说的那个现象,应该是前四条有问题。
共
2
条评分
linzchey
rf币
+1
积极参与
2009-06-15
gwzhao
技术分
+1
积极参与讨论+技术分 论坛感谢您的参与
2009-06-14
发帖并不意味着本人理解、认同并奉行帖子所述内容,看帖人士务必于24小时内摒弃帖子所述观点并忘记帖子内容,否则由此产生之法律纠纷一概与本人无关,本人谢绝一切跨省追捕、打击报复和刑讯逼供等手段!
离线
linzchey
UID :22707
注册:
2008-12-07
登录:
2011-10-17
发帖:
76
等级:
仿真二级
4楼
发表于: 2009-06-15 10:48:44
回 2楼(gwzhao) 的帖子
程序的流程是这样的:
:\80*[=;Z
1MB
double pi = 3.14159265358979;
Fi5,y;]R
double eps_0 = 8.854*1e-12;
W@wT,yJ8@
double mu_0 = 4*pi*1e-7;
:Hd?0eZ|
double c = 1/sqrt(eps_0*mu_0); //the speed of the light in the vacuum
)>\Ne~%
|lJXI:GG
//the parameters of the photonic crystal
SNK+U"Q
double dx = 0.01;
!@VmaAT
double dt = dx/c/2; //the time step, stability criteria dt<=dx/c!!!
-^#Ix;%
cout << "dx = " << dx << ", dt = " << dt << endl;
NmB0CbB
cout << "coeff = " << dt/mu_0/dx << endl;
$6y1';A
Y}1|/6eJ
ZlO@PlZ)
int n_x = 500; //total number of cells in x direction
*[.\S3K`
int n_PML = 20; //the size of PML
|{9"n<JW
vpXS!o>/Sn
//PML area
?Fi-,4
int n_x_a ; //= n_PML + 10
@Wx_4LOhf
int n_x_b ; //= n_x - n_PML
{xM%3
_|A)ueY
int num_iter = 1500;//
|AFF*]e S
h@W}xT
//the excitation
TP^.]IO-
//Gaussian pulse
m7M*)N8
double H_0 = 1; //[A/m]s, Amplitude
Hlz4f+#I
double t_w = 20*dt; //width
kJDMIh|g
double t_0 = 4*t_w; //max value
=HoiQWQs`
double om = 1.3e11; //angular frequency, omega
/o|@]SAe.
double Phi = 0;//-pi/2; //phase, Phi
|;D[Al5AMc
int source_Type = 2; // 1- Gauss; 2- Sin; 3- Gauss-Sin
v0$6@K;M4G
Opjt? ]
^kt"n(P5
我的参数是这样设置的,当选择Gauss源是我已发一贴,应该是正确的结果。波形呈Gauss状传播且E是H的376倍。
R4IFl z
2o\\qEYg
现在换成Sin源,波形就不是sin状了。
G uDus2#+
U Ciq'^,
按照版主的方法,我发现我把源加载在左边PML起点中,所以波幅在逐渐增大,呈正弦状前进。
~7~nU>Vv
i( c2NPbX
下图是我按照版主的建议修改的,dx = lambda / 20, 现在看起来不是很密了。另外我把源点加载到了nx / 2处。
0A1l"$_|
3[V|C=u0
J=\Y 4- "
图片:Ey_Sin_100-600_nx=middle.jpg
r,b
9 l,Gd
B1LnuB%
wh*OD
L3<XWpv
j ^_G
======================================================================
共
条评分
离线
gwzhao
方恨少
UID :17098
注册:
2008-08-24
登录:
2019-01-09
发帖:
1374
等级:
荣誉管理员
5楼
发表于: 2009-06-15 12:16:42
回 4楼(linzchey) 的帖子
源是怎么加的?
my} P\r.
E(nx/2) = E(nx/2) + sin(w*n*dt)么?
1/fvk
keWgbj
看你这个图形应该不是直接加的sin(wt)吧?
d@l;dos),
e1IuobT
程序运行稳定后,是什么样的?
共
2
条评分
linzchey
rf币
+1
-
2009-06-15
zouchanglin
rf币
+1
-
2009-06-15
逆流而上
离线
linzchey
UID :22707
注册:
2008-12-07
登录:
2011-10-17
发帖:
76
等级:
仿真二级
6楼
发表于: 2009-06-15 14:51:22
回 5楼(gwzhao) 的帖子
源是这样加的:
o j^U
/J6CSk
alfa = 1.0*omega/(2.0*pi);
rcbixOT
V*TG%V -
switch (Source_Type)
y%GV9
{
O^<6`ku
case 1:
o _CVZ
E_1D[]nx/2 += E0*exp( - (time - t0)*(time - t0)/(tw*tw) );
4Cfwz-Qo
break;
z7K?rgH
case 2:
Vnl~AQfk|
E_1D[nx/2] += ( 1.0 - exp( - alfa*time) ) * E0 * cos( omega * time + phase );
vx4& ;2
break;
Hc+<(g
case 3:
3dM6zOK
E_1D[nx/2] += E0*cos(omega*(time-t0) + phase)*exp( - (time - t0)*(time - t0)/(tw*tw) );
2cDC6rul
break;
%*/[aq, #
}
T8\,2UWsj2
iKK=A.g
从本论坛中看到软源与硬源的解释一贴,这样设置应该是软源。
AH} nTm
dHu]wog
在使用Gauss软源时振幅最大为1,而使用硬源时振幅只达0.5,不知道为何?
>:xnjEsi$/
'Oc8[8
Mfz5:'
不知斑竹所说的稳定运行是什么意思?我设定的运行步数是1500, 网格数量是500, 现在图形已经绘制到了600步了,
]6aM %r=c
MVj@0W33m
那一般什么时候才能达到稳定,为了数值的稳定我已经加载了源开关了啊!
kQb0pfYs
3LTO+>, |"
vbFAS:Y:+
UkYQ<MNO
i3GvTg-X
==========================================================================
共
条评分
发帖
回复