包含基于射线追踪的任意复杂界面计算
这个提交包含在:
+48
-5
@@ -7,15 +7,58 @@ SUBROUTINE ZERO
|
||||
USE ELECTROMAGNETIC_VARIABLES
|
||||
USE RES_MODEL_PARAMETER
|
||||
USE TIME_PARAMETER
|
||||
USE PML_PARAMETER
|
||||
USE OMP_LIB
|
||||
!本子程序将计算中的数组赋0值进行初始化
|
||||
!>This subroutine will initialize the array in the calculation by setting all its elements to zero.
|
||||
IMPLICIT NONE
|
||||
CCSIG=0.0D0
|
||||
CCSIG=0.0D0
|
||||
CCSIGX=0.0D0
|
||||
CCSIGY=0.0D0
|
||||
CCSIGZ=0.0D0
|
||||
EX=0.0D0
|
||||
EY=0.0D0
|
||||
EZ=0.0D0
|
||||
EY=0.0D0
|
||||
EZ=0.0D0
|
||||
HX=0.0D0
|
||||
HY=0.0D0
|
||||
HZ=0.0D0
|
||||
HZ=0.0D0
|
||||
!>CPML arrays: den_* is always initialized to 1.0 (neutral value), so the
|
||||
!! iteration loop can always multiply the curl terms by den_*; the scheme
|
||||
!! degenerates exactly to the original version when Logic_PML=0.
|
||||
den_ex=1.0D0
|
||||
den_ey=1.0D0
|
||||
den_ez=1.0D0
|
||||
den_hx=1.0D0
|
||||
den_hy=1.0D0
|
||||
den_hz=1.0D0
|
||||
c_h_zz=0.0D0
|
||||
inv_hz_den=1.0D0
|
||||
IF(Logic_PML==1)THEN
|
||||
psi_Eyx_1=0.0D0
|
||||
psi_Eyx_2=0.0D0
|
||||
psi_Ezx_1=0.0D0
|
||||
psi_Ezx_2=0.0D0
|
||||
psi_Ezy_1=0.0D0
|
||||
psi_Ezy_2=0.0D0
|
||||
psi_Exy_1=0.0D0
|
||||
psi_Exy_2=0.0D0
|
||||
psi_Exz_1=0.0D0
|
||||
psi_Exz_2=0.0D0
|
||||
psi_Eyz_1=0.0D0
|
||||
psi_Eyz_2=0.0D0
|
||||
psi_Hyx_1=0.0D0
|
||||
psi_Hyx_2=0.0D0
|
||||
psi_Hzx_1=0.0D0
|
||||
psi_Hzx_2=0.0D0
|
||||
psi_Hxy_1=0.0D0
|
||||
psi_Hxy_2=0.0D0
|
||||
psi_Hzy_1=0.0D0
|
||||
psi_Hzy_2=0.0D0
|
||||
psi_Hxz_1=0.0D0
|
||||
psi_Hxz_2=0.0D0
|
||||
psi_Hyz_1=0.0D0
|
||||
psi_Hyz_2=0.0D0
|
||||
psi_Hzz_1=0.0D0
|
||||
psi_Hzz_2=0.0D0
|
||||
ENDIF
|
||||
RETURN
|
||||
ENDSUBROUTINE ZERO
|
||||
在新工单中引用
屏蔽一个用户