登 录
註 冊
论坛
微波仿真网
注册
登录论坛可查看更多信息
微波仿真论坛
>
时域有限差分法 FDTD
>
关于一维FDTD Mur边界的问题
发帖
回复
2004
阅读
7
回复
[
讨论
]
关于一维FDTD Mur边界的问题
离线
shuangzh
wave wave wave
UID :55184
注册:
2010-03-19
登录:
2012-07-04
发帖:
148
等级:
仿真二级
0楼
发表于: 2010-03-19 22:56:35
最近在看葛德彪的《电磁波时域有限差分方法》一书,在看到Mur边界时,自己做的一维Mur边界的吸收效果不好。
1:5P%$?b
用Gauss脉冲激励(最大值为1),在边界边会有0.2的反射波不能被吸收。
k!vHO
程序调了很久,就是不能消除反射波,不知道有没有人做过这个简单的一维FDTD程序,有没有出现这样的情况?
QRiF!D)Nk
ChVY Vx(
还有在书中提到的一维行波延时法,当C*dt=dz/2时的吸收边界公式为
#:I^&~:
Ez(K , n+1)=1/2*{ Ez(K , n ) + Ez(K-1 , n ) )
1O4D+0@
其中 K表示空间节点, n 表示时间节点。用这个公式设置边界也不能完全吸收。
7YD\ !2b
我认为这个公式是简单的线性插值,如果入射到边界处的波形在一个空间节点距离上线性度不好的话,那么就不能很好的吸 ..
ZmP1C`>
!xH,y
未注册仅能浏览
部分内容
,查看
全部内容及附件
请先
登录
或
注册
共
条评分
静思而后动
离线
shuangzh
wave wave wave
UID :55184
注册:
2010-03-19
登录:
2012-07-04
发帖:
148
等级:
仿真二级
1楼
发表于: 2010-03-20 00:40:38
#include <stdio.h>
Rh5@[cg%
#include <stdlib.h>
t201ud2$
#include <math.h>
e,PQ)1
aMe%#cLI
#define NUM_of_ZAXIS 400
= .fc"R|<K
*C,$W\6sz
float gauss_pulse(float T,float t0,float spread);
C6Um6X9/i
:DF`A(
int file_save(float* data,char* filename);
@`#OC#
Q&\ZC?y4
Tom}sFl][
fo/(()
void main()
EuhF$L1
{
={e#lC
float ex[NUM_of_ZAXIS],hy[NUM_of_ZAXIS];
$u/8Rp
float obj_parameters[NUM_of_ZAXIS][4]; /*模型参数设置 */
W+fkWq7`Xx
float CA[NUM_of_ZAXIS],CB[NUM_of_ZAXIS],CP[NUM_of_ZAXIS],CQ[NUM_of_ZAXIS];
&