登 录
註 冊
论坛
微波仿真网
注册
登录论坛可查看更多信息
微波仿真论坛
>
程序
>
UPML有耗均匀介质代码,为什么当sigma_e赋值不 ..
发帖
回复
1418
阅读
0
回复
[
求助
]
UPML有耗均匀介质代码,为什么当sigma_e赋值不为0时,结果就不太对(代码可供下载)??
离线
xiaoyuan
UID :53338
注册:
2010-02-28
登录:
2015-12-05
发帖:
156
等级:
仿真二级
0楼
发表于: 2010-08-29 06:18:30
UPML_3D_Boyuan_lossy.rar
(5 K) 下载次数:10
我基于论坛里Program author: Keely J. Willis, Graduate Student UW Computational Electromagnetics Laboratory
D',7 T=C
Director: Susan C. Hagness编的真空UPML代码的基础上改编成UPML连接有耗介质的代码,但是一旦我把sigma赋值后,比如让sigma=0.5,结果就不对,非常小(10的负一百多次方),而且幅值是一直增大的趋势。但当把sigma赋成0时,结果看上去似乎就合理。不知道为什么,想请各位有经验的高手给点建议或找找原因。
RpU i'
KiMlbF.~V
下面是我的迭代方程。其中磁场迭代方程我没有动它,和源代码一样。电场迭代方程我是基于talflove的书第二版第七章7.10节的公式。
*eD[[HbKX
[A,!3BN
%
Update magnetic field
m{>"
>mCH!ey
bstore=bx;
~%tVb c
bx(2:ie_tot,:,:)=D1hx(2:ie_tot,:,:).* bx(2:ie_tot,:,:)-...
2OI 0B\
D2hx(2:ie_tot,:,:).*((ez(2:ie_tot,2:jh_tot,:)-ez(2:ie_tot,1:je_tot,:))-...
Qd~7OH4Lp
(ey(2:ie_tot,:,2:kh_tot)-ey(2:ie_tot,:,1:ke_tot)))./delta;
Uun0FCA>
;L",K?6#
hx(2:ie_tot,:,:)= D3hx(2:ie_tot,:,:).*hx(2:ie_tot,:,:)+...
|j/Y#.k;{0
D4hx(2:ie_tot,:,:).*(D5hx(2:ie_tot,:,:).*bx(2:ie_tot,:,:)-...
GLub5GrxR
D6hx(2:ie_tot,:,:).*bstore(2:ie_tot,:,:));
+5-|6
5mVO9Qj
bstore=by;
KN@ [hb7%
by(:,2:je_tot,:)=D1hy(:,2:je_tot,:).* by(:,2:je_tot,:)-...
Ht43G_.j
D2hy(:,2:je_tot,:).*((ex(:,2:je_tot,2:kh_tot)-ex(:,2:je_tot,1:ke_tot))-...
bCTN^
(ez(2:ih_tot,2:je_tot,:)-ez(1:ie_tot,2:je_tot,:)))./delta;
L\#G#1x8
2T%sHp~qt
hy(:,2:je_tot,:)= D3hy(:,2:je_tot,:).*hy(:,2:je_tot,:)+...
!iHC++D
D4hy(:,2:je_tot,:).*(D5hy(:,2:je_tot,:).*by(:,2:je_tot,:)-...
0 GFho$f
D6hy(:,2:je_tot,:).*bstore(:,2:je_tot,:));
V*?QZ;hCP
?$I9/r
bstore=bz;
vx6lud0k}
bz(:,:,2:ke_tot)=D1hz(:,:,2:ke_tot).* bz(:,:,2:ke_tot)-...
H{_D#It
D2hz(:,:,2:ke_tot).*((ey(2:ih_tot,:,2:ke_tot)-ey(1:ie_tot,:,2:ke_tot))-...
_"H\,7E
(ex(:,2:jh_tot,2:ke_tot)-ex(:,1:je_tot,2:ke_tot)))./delta;
w"D1mI!L 7
,d!@5d&Zi
hz(:,:,2:ke_tot)= D3hz(:,:,2:ke_tot).*hz(:,:,2:ke_tot)+...
TqS s*as5
D4hz(:,:,2:ke_tot).*(D5hz(:,:,2:ke_tot).*bz(:,:,2:ke_tot)-...
;j~%11
D6hz(:,:,2:ke_tot).*bstore(:,:,2:ke_tot));
e7n0=U0
2xi;13?
% Update electric field
}VWUcALJV
1foG*
p1store=px1;
(VkO[5j
UZ<.R"aK
px1(:,2:je_tot,2:ke_tot)=C1ex(:,2:je_tot,2:ke_tot).* px1(:,2:je_tot,2:ke_tot)+...
}#~E-N3x
C2ex(:,2:je_tot,2:ke_tot).*((hz(:,2:je_tot,2:ke_tot)-hz(:,1:je_tot-1,2:ke_tot))-...
_lT'nFe=Q
( hy(:,2:je_tot,2:ke_tot)-hy(:,2:je_tot,1:ke_tot-1)))./delta;
GXLh(d!C
":sp0(`h
p2store=px2;
+F,])p4,]i
m' j1
px2(:,2:je_tot,2:ke_tot)=C3ex(:,2:je_tot,2:ke_tot).* px2(:,2:je_tot,2:ke_tot)+...
2_bEo
C4ex(:,2:je_tot,2:ke_tot).*( px1(:,2:je_tot,2:ke_tot)-...
s 7%iuP
p1store(:,2:je_tot,2:ke_tot));
T6?03cSE
D'moy*E
ex(:,2:je_tot,2:ke_tot)=C5ex(:,2:je_tot,2:ke_tot).* ex(:,2:je_tot,2:ke_tot)+...
$M,Q"QL
C6ex(:,2:je_tot,2:ke_tot).*(C7ex(:,2:je_tot,2:ke_tot).* px2(:,2:je_tot,2:ke_tot)-...
~T9QpL1OJ
C8ex(:,2:je_tot,2:ke_tot).*p2store(:,2:je_tot,2:ke_tot));
q|klsup
%H_-`A`
p1store=py1;
,. ht ~AE
npytb*[|c
py1(2:ie_tot,:,2:ke_tot)=C1ey(2:ie_tot,:,2:ke_tot).* py1(2:ie_tot,:,2:ke_tot)+...
ON{a'H
C2ey(2:ie_tot,:,2:ke_tot).*((hx(2:ie_tot,:,2:ke_tot)-hx(2:ie_tot,:,1:ke_tot-1))-...
Wd+kjI \
( hz(2:ie_tot,:,2:ke_tot)-hz(1:ie_tot-1,:,2:ke_tot)))./delta;
usK P9[T$
c|'$3dB*
p2store=py2;
SH"<f_
rT-.'aQ2t
py2(2:ie_tot,:,2:ke_tot)=C3ey(2:ie_tot,:,2:ke_tot).* py2(2:ie_tot,:,2:ke_tot)+...
$\k)Y(&
C4ey(2:ie_tot,:,2:ke_tot).*( py1(2:ie_tot,:,2:ke_tot)-...
A3HNMz
p1store(2:ie_tot,:,2:ke_tot));
'b [O-6v
ETX>wZ
ey(2:ie_tot,:,2:ke_tot)=C5ey(2:ie_tot,:,2:ke_tot).* ey(2:ie_tot,:,2:ke_tot)+...
eMEKR5*-O
C6ey(2:ie_tot,:,2:ke_tot).*(C7ey(2:ie_tot,:,2:ke_tot).* py2(2:ie_tot,:,2:ke_tot)-...
'9qyf<MlY
C8ey(2:ie_tot,:,2:ke_tot).*p2store(2:ie_tot,:,2:ke_tot));
[".94(qs
lpB:lRM
p1store=pz1;
ze LIOw
%WP[V{,F
pz1(2:ie_tot,2:je_tot,:)=C1ez(2:ie_tot,2:je_tot,:).* pz1(2:ie_tot,2:je_tot,:)+...
Pec40g:#F
C2ez(2:ie_tot,2:je_tot,:).*((hy(2:ie_tot,2:je_tot,:)-hy(1:ie_tot-1,2:je_tot,:))-...
f]sR4mhO
( hx(2:ie_tot,2:je_tot,:)-hx(2:ie_tot,1:je_tot-1,:)))./delta;
`CL\-
p2store=pz2;
E@Ewx;P5
247vU1
pz2(2:ie_tot,2:je_tot,:)=C3ez(2:ie_tot,2:je_tot,:).* pz2(2:ie_tot,2:je_tot,:)+...
WcXNc`x
C4ez(2:ie_tot,2:je_tot,:).*( pz1(2:ie_tot,2:je_tot,:)-...
D5Jg(-
p1store(2:ie_tot,2:je_tot,:));
#5^OO ou|
wmMn1q0F
pz2(is,js,ks:ks+1)=pz2(is,js,ks:ks+1)+exp(-((n-4.5*tau/dt)^2/(tau/dt)^2));
@qWClr{`
2A*,9S|Y
ez(2:ie_tot,2:je_tot,:)=C5ez(2:ie_tot,2:je_tot,:).* ez(2:ie_tot,2:je_tot,:)+...
#PC*l\ )
C6ez(2:ie_tot,2:je_tot,:).*(C7ez(2:ie_tot, ..
HsRoiqo
!Dc;R+Ir0!
未注册仅能浏览
部分内容
,查看
全部内容及附件
请先
登录
或
注册
共
条评分
发帖
回复