登 录
註 冊
论坛
微波仿真网
注册
登录论坛可查看更多信息
微波仿真论坛
>
时域有限差分法 FDTD
>
平面波程序调试遇到问题了~~急,急,急 ..
发帖
回复
1
2
3
3770
阅读
23
回复
[
求助
]
平面波程序调试遇到问题了~~急,急,急需各位高手师兄指点
离线
gwzhao
方恨少
UID :17098
注册:
2008-08-24
登录:
2019-01-09
发帖:
1374
等级:
荣誉管理员
10楼
发表于: 2009-05-27 20:48:38
举个例子吧,开始的时候,Ex(30:90,30,30:90)这个面的值是一样的,因为你加的是在ZX面上的平面波,
smU+:~
传播了一个步长后,你看一下 Ex(30:90,31,30:90)这个面上的值是不是全部一样,因为是平面波传播,同时向前走了一个步长,按道理来说,应该是完全相同的。
tFQFpbI
我估计你第二步的时候,连接边界上的值Ex(30,31,30:90)或Ex(30:90,31,30)已经有不一样的值了。
共
条评分
逆流而上
离线
strange007
UID :2803
注册:
2007-05-20
登录:
2025-03-08
发帖:
453
等级:
积极交流五级
11楼
发表于: 2009-05-27 20:58:15
看了一下,估计FDTD递推中代码有误
|`wsKr'
这样的问题是需要细心调试来解决的
sv"mba.J
I})t
可以:
zF&UdS3
1.仔细检查代码是否与FDTD算法相符,是否有+/-、变量操作上面的问题;
yipD5,TC
2.按照原理,应该得到什么样的结果。对于平面波沿着Y轴传播的情况,应该一个时刻t上面,电磁波传播方向y=y0位置的一个平面上,E/H场是有相同幅度的。
)1Nnn
3.然后,进行程序单步调试。针对上面有点源散射的情况,看看是否在连接边界场的加入和边界外场的减去方面出问题。针对y=y0位置的一个平面上,E/H场是如何发生散射传播,检查递推过程为什么得不到同样场量的波阵面。
共
条评分
离线
wq_463
UID :20925
注册:
2008-11-06
登录:
2021-04-22
发帖:
227
等级:
仿真三级
12楼
发表于: 2009-05-27 21:07:35
回 9楼(gwzhao) 的帖子
我也考虑过平面波在传播过程中,值发生变化的问,我刚才用下面的这段程序出的一个xz面商ez值变化的图程序和图如下
AXP`,H
xx=1:100;
?Wg{oB@(
zz=1:100;
*UBP]w
[xxx,zzz]=meshgrid(xx,zz);
9/1+BQ
mesh(xxx,ez(1:100,je_jmin,1:100),zzz);
BBR"HMa4
surf(xxx,ez(1:100,je_jmin,1:100),zzz);
TT2cOw
shading interp
c|}K_~l_
pause(0.01)
I+"?,Ej$K
[attachment=20332]
!@<@QG-
发现有两个点是突变的。。。。不明白怎么回事
共
条评分
离线
wq_463
UID :20925
注册:
2008-11-06
登录:
2021-04-22
发帖:
227
等级:
仿真三级
13楼
发表于: 2009-05-27 21:37:26
回 9楼(gwzhao) 的帖子
allen的书,角点跟没有拿出来单独处理,这个地方不会存在角点正负号错误的问题,allen把角点放到交界面上一起处理了
共
条评分
离线
gwzhao
方恨少
UID :17098
注册:
2008-08-24
登录:
2019-01-09
发帖:
1374
等级:
荣誉管理员
14楼
发表于: 2009-05-27 21:56:08
回 12楼(wq_463) 的帖子
????
b fp,zs
!0Idp%
不是已经找到这两个突变的点了吗?
?}vzLgp
下面简单了,就以这个点为平面进行调试好了,一步一步的看,看什么时候值有问题的。
\F 3C=M@:
我觉得应该哪边公式写错了,应该用不了两三步就可以找到原因的。
.zvlRt.zl
8f?rEI\0GD
遇到问题不要急,定下心来,分析一下,你自己不难搞定的。
共
条评分
逆流而上
离线
gwzhao
方恨少
UID :17098
注册:
2008-08-24
登录:
2019-01-09
发帖:
1374
等级:
荣誉管理员
15楼
发表于: 2009-05-27 21:58:09
程序加入的电磁场幅度归一了吗?看你打印出来都是成千上万的,也不知道是不是发散掉了。
uFZ~
CM9 XPr
如果加入的源Ex幅度是1的话,明显程序是发散了。
共
条评分
逆流而上
离线
wq_463
UID :20925
注册:
2008-11-06
登录:
2021-04-22
发帖:
227
等级:
仿真三级
16楼
发表于: 2009-05-28 10:17:40
回 14楼(gwzhao) 的帖子
嗯,我正在检查,估计是代码有问题,按说平面波不会出现这2个突变点
共
条评分
离线
wq_463
UID :20925
注册:
2008-11-06
登录:
2021-04-22
发帖:
227
等级:
仿真三级
17楼
发表于: 2009-05-28 10:24:48
回 15楼(gwzhao) 的帖子
不知道师兄说的这个归一化是不是H'=Z0*H,其中Z0为自由空间的波阻抗?
5qbq,#Pf
我用的双指数脉冲,这个脉冲的值确实很大E(t)=A*(exp(-a*t)-exp(-b*t)),其中A=52500,a=4000000,b=476000000
共
条评分
离线
wq_463
UID :20925
注册:
2008-11-06
登录:
2021-04-22
发帖:
227
等级:
仿真三级
18楼
发表于: 2009-05-29 10:30:03
根据allen taflove的书
ZnW@YC#9
[attachment=20350]
//f
我们可以通过调整图中三个角的变化来控制平面波的传播方向,我令于x轴的夹角为90度,于z轴的夹角为0度,Einc于Kinc的夹角为90度,这样的话是否就是让平面波延z轴传播呢?
共
条评分
离线
wq_463
UID :20925
注册:
2008-11-06
登录:
2021-04-22
发帖:
227
等级:
仿真三级
19楼
发表于: 2009-05-30 19:46:02
回 14楼(gwzhao) 的帖子
我用了2天的时间检查了一下程序,没有发现符号运算方面的问题,然后我又仔细观察了出的图,发现一些问题
H*n-_{h"t
1。固定y观察xz面上ex(30:90,30,3:90)的变化原图
C[cbbp
图片:ex.jpg
>>r(/81S
图片:1.gif
zpn9,,~u
图片:2.gif
ZvM(Q=^
通过上面2个图发现在连接边界的2个角点处产生了泄漏,导致了突变
yZY \MB/
2。
h,:m~0gmj
图片:3.gif
]h`&&B qt
B`)BZ,#p
xx=1:100;
k t#fMd$
zz=1:100;
Pm6pv;WK
[xxx,zzz]=meshgrid(xx,zz);
K-)] 1BG
mesh(xxx,ex(1:100,je_jmin+1,1:100),zzz);
(XTG8W sN
surf(xxx,ex(1:100,je_jmin+1,1:100),zzz);
>Er|Jxy
通过上面这段程序观察应该是只有在(30:90,30,30:90)这个面上的ez的变化,第四个图根据坐标可以看出,波是完全泄漏到散射场中去了
tAd%#:K
FjHv
我现在怀疑自己的网格设置是错误的
!/b>sN}
共
条评分
发帖
回复