(1)PML領域の定義    PML領域の電界と磁界を次のように定義する.ここで, NX,NY,NZ:FDTD解析領域の大きさ LM:PMLの層数 EX:電界のx成分,EY:電界のy成分,EZ:電界のz成分 EX=EXYL+EXZL EY=EYXL+EYZL EZ=EZXL+EZYL 但し,上式のLについては,x軸を左右,y軸を前後,z軸を上下方向で右手座標を取ると, L=1:z軸下部のPML層,L=2:z軸上部のPML層 L=3:y軸前部のPML層,L=4:x軸左部のPML層 L=5:x軸右部のPML層,L=6:y軸後部のPML層 磁界Hも同様 C DEFINATION OF PML REGION COMMON/PML3/EXY1(1:NX-1,2:NY-1,2:LM),EXZ1(1:NX-1,2:NY-1,2:LM) & ,EXY2(1:NX-1,2:NY-1,NZ-LM+1:NZ-1) & ,EXZ2(1:NX-1,2:NY-1,NZ-LM+1:NZ-1) & ,EXY3(1:NX-1,2:LM,LM+1:NZ-LM) & ,EXZ3(1:NX-1,2:LM,LM+1:NZ-LM) & ,EXY4(1:LM,LM+1:NY-LM,LM+1:NZ-LM) & ,EXZ4(1:LM,LM+1:NY-LM,LM+1:NZ-LM) & ,EXY5(NX-LM:NX-1,LM+1:NY-LM,LM+1:NZ-LM) & ,EXZ5(NX-LM:NX-1,LM+1:NY-LM,LM+1:NZ-LM) & ,EXY6(1:NX-1,NY-LM+1:NY-1,LM+1:NZ-LM) & ,EXZ6(1:NX-1,NY-LM+1:NY-1,LM+1:NZ-LM) & ,EYX1(2:NX-1,1:NY-1,2:LM),EYZ1(2:NX-1,1:NY-1,2:LM) & ,EYX2(2:NX-1,1:NY-1,NZ-LM+1:NZ-1) & ,EYZ2(2:NX-1,1:NY-1,NZ-LM+1:NZ-1) & ,EYX3(2:NX-1,1:LM,LM+1:NZ-LM) & ,EYZ3(2:NX-1,1:LM,LM+1:NZ-LM) & ,EYX4(2:LM,LM+1:NY-LM-1,LM+1:NZ-LM) & ,EYZ4(2:LM,LM+1:NY-LM-1,LM+1:NZ-LM) & ,EYX5(NX-LM+1:NX-1,LM+1:NY-LM-1,LM+1:NZ-LM) & ,EYZ5(NX-LM+1:NX-1,LM+1:NY-LM-1,LM+1:NZ-LM) & ,EYX6(2:NX-1,NY-LM:NY-1,LM+1:NZ-LM) & ,EYZ6(2:NX-1,NY-LM:NY-1,LM+1:NZ-LM) & ,EZX1(2:NX-1,2:NY-1,1:LM),EZY1(2:NX-1,2:NY-1,1:LM) & ,EZX2(2:NX-1,2:NY-1,NZ-LM:NZ-1) & ,EZY2(2:NX-1,2:NY-1,NZ-LM:NZ-1) & ,EZX3(2:NX-1,2:LM,LM+1:NZ-LM-1) & ,EZY3(2:NX-1,2:LM,LM+1:NZ-LM-1) & ,EZX4(2:LM,LM+1:NY-LM,LM+1:NZ-LM-1) & ,EZY4(2:LM,LM+1:NY-LM,LM+1:NZ-LM-1) & ,EZX5(NX-LM+1:NX-1,LM+1:NY-LM,LM+1:NZ-LM-1) & ,EZY5(NX-LM+1:NX-1,LM+1:NY-LM,LM+1:NZ-LM-1) & ,EZX6(2:NX-1,NY-LM+1:NY-1,LM+1:NZ-LM-1) & ,EZY6(2:NX-1,NY-LM+1:NY-1,LM+1:NZ-LM-1) COMMON/PML4/HXY1(2:NX-1,1:NY-1,1:LM) & ,HXZ1(2:NX-1,1:NY-1,1:LM) & ,HXY2(2:NX-1,1:NY-1,NZ-LM:NZ-1) & ,HXZ2(2:NX-1,1:NY-1,NZ-LM:NZ-1) & ,HXY3(2:NX-1,1:LM,LM+1:NZ-LM-1) & ,HXZ3(2:NX-1,1:LM,LM+1:NZ-LM-1) & ,HXY4(2:LM,LM+1:NY-LM-1,LM+1:NZ-LM-1) & ,HXZ4(2:LM,LM+1:NY-LM-1,LM+1:NZ-LM-1) & ,HXY5(NX-LM+1:NX-1,LM+1:NY-LM-1,LM+1:NZ-LM-1) & ,HXZ5(NX-LM+1:NX-1,LM+1:NY-LM-1,LM+1:NZ-LM-1) & ,HXY6(2:NX-1,NY-LM:NY-1,LM+1:NZ-LM-1) & ,HXZ6(2:NX-1,NY-LM:NY-1,LM+1:NZ-LM-1) & ,HYX1(1:NX-1,2:NY-1,1:LM) & ,HYZ1(1:NX-1,2:NY-1,1:LM) & ,HYX2(1:NX-1,2:NY-1,NZ-LM:NZ-1) & ,HYZ2(1:NX-1,2:NY-1,NZ-LM:NZ-1) & ,HYX3(1:NX-1,2:LM,LM+1:NZ-LM-1) & ,HYZ3(1:NX-1,2:LM,LM+1:NZ-LM-1) & ,HYX4(1:LM,LM+1:NY-LM,LM+1:NZ-LM-1) & ,HYZ4(1:LM,LM+1:NY-LM,LM+1:NZ-LM-1) & ,HYX5(NX-LM:NX-1,LM+1:NY-LM,LM+1:NZ-LM-1) & ,HYZ5(NX-LM:NX-1,LM+1:NY-LM,LM+1:NZ-LM-1) & ,HYX6(1:NX-1,NY-LM+1:NY-1,LM+1:NZ-LM-1) & ,HYZ6(1:NX-1,NY-LM+1:NY-1,LM+1:NZ-LM-1) & ,HZX1(1:NX-1,1:NY-1,2:LM) & ,HZY1(1:NX-1,1:NY-1,2:LM) & ,HZX2(1:NX-1,1:NY-1,NZ-LM+1:NZ-1) & ,HZY2(1:NX-1,1:NY-1,NZ-LM+1:NZ-1) & ,HZX3(1:NX-1,1:LM,LM+1:NZ-LM) & ,HZY3(1:NX-1,1:LM,LM+1:NZ-LM) & ,HZX4(1:LM,LM+1:NY-LM-1,LM+1:NZ-LM) & ,HZY4(1:LM,LM+1:NY-LM-1,LM+1:NZ-LM) & ,HZX5(NX-LM:NX-1,LM+1:NY-LM-1,LM+1:NZ-LM) & ,HZY5(NX-LM:NX-1,LM+1:NY-LM-1,LM+1:NZ-LM) & ,HZX6(1:NX-1,NY-LM:NY-1,LM+1:NZ-LM) & ,HZY6(1:NX-1,NY-LM:NY-1,LM+1:NZ-LM) (2)PML領域の初期化 C INITIALIZE PML REGION DO K=2,LM DO J=2,NY-1 DO I=1,NX-1 EXY1(I,J,K)=0.0 EXZ1(I,J,K)=0.0 END DO END DO END DO DO K=NZ-LM+1,NZ-1 DO J=2,NY-1 DO I=1,NX-1 EXY2(I,J,K)=0.0 EXZ2(I,J,K)=0.0 END DO END DO END DO DO K=LM+1,NZ-LM DO J=2,LM DO I=1,NX-1 EXY3(I,J,K)=0.0 EXZ3(I,J,K)=0.0 END DO END DO DO I=1,LM DO J=LM+1,NY-LM EXY4(I,J,K)=0.0 EXZ4(I,J,K)=0.0 END DO END DO DO I=NX-LM,NX-1 DO J=LM+1,NY-LM EXY5(I,J,K)=0.0 EXZ5(I,J,K)=0.0 END DO END DO DO J=NY-LM+1,NY-1 DO I=1,NX-1 EXY6(I,J,K)=0.0 EXZ6(I,J,K)=0.0 END DO END DO END DO C DO K=2,LM DO J=1,NY-1 DO I=2,NX-1 EYX1(I,J,K)=0.0 EYZ1(I,J,K)=0.0 END DO END DO END DO DO K=NZ-LM+1,NZ-1 DO J=1,NY-1 DO I=2,NX-1 EYX2(I,J,K)=0.0 EYZ2(I,J,K)=0.0 END DO END DO END DO DO K=LM+1,NZ-LM DO J=1,LM DO I=2,NX-1 EYX3(I,J,K)=0.0 EYZ3(I,J,K)=0.0 END DO END DO DO I=2,LM DO J=LM+1,NY-LM-1 EYX4(I,J,K)=0.0 EYZ4(I,J,K)=0.0 END DO END DO DO I=NX-LM+1,NX-1 DO J=LM+1,NY-LM-1 EYX5(I,J,K)=0.0 EYZ5(I,J,K)=0.0 END DO END DO DO J=NY-LM,NY-1 DO I=2,NX-1 EYX6(I,J,K)=0.0 EYZ6(I,J,K)=0.0 END DO END DO END DO C DO K=1,LM DO J=2,NY-1 DO I=2,NX-1 EZX1(I,J,K)=0.0 EZY1(I,J,K)=0.0 END DO END DO END DO DO K=NZ-LM,NZ-1 DO J=2,NY-1 DO I=2,NX-1 EZX2(I,J,K)=0.0 EZY2(I,J,K)=0.0 END DO END DO END DO DO K=LM+1,NZ-LM-1 DO J=2,LM DO I=2,NX-1 EZX3(I,J,K)=0.0 EZY3(I,J,K)=0.0 END DO END DO DO I=2,LM DO J=LM+1,NY-LM EZX4(I,J,K)=0.0 EZY4(I,J,K)=0.0 END DO END DO DO I=NX-LM+1,NX-1 DO J=LM+1,NY-LM EZX5(I,J,K)=0.0 EZY5(I,J,K)=0.0 END DO END DO DO J=NY-LM+1,NY-1 DO I=2,NX-1 EZX6(I,J,K)=0.0 EZY6(I,J,K)=0.0 END DO END DO END DO C DO K=1,LM DO J=1,NY-1 DO I=2,NX-1 HXY1(I,J,K)=0.0 HXZ1(I,J,K)=0.0 END DO END DO END DO DO K=NZ-LM,NZ-1 DO J=1,NY-1 DO I=2,NX-1 HXY2(I,J,K)=0.0 HXZ2(I,J,K)=0.0 END DO END DO END DO DO K=LM+1,NZ-LM-1 DO J=1,LM DO I=2,NX-1 HXY3(I,J,K)=0.0 HXZ3(I,J,K)=0.0 END DO END DO DO I=2,LM DO J=LM+1,NY-LM-1 HXY4(I,J,K)=0.0 HXZ4(I,J,K)=0.0 END DO END DO DO I=NX-LM+1,NX-1 DO J=LM+1,NY-LM-1 HXY5(I,J,K)=0.0 HXZ5(I,J,K)=0.0 END DO END DO DO J=NY-LM,NY-1 DO I=2,NX-1 HXY6(I,J,K)=0.0 HXZ6(I,J,K)=0.0 END DO END DO END DO C DO K=1,LM DO J=2,NY-1 DO I=1,NX-1 HYX1(I,J,K)=0.0 HYZ1(I,J,K)=0.0 END DO END DO END DO DO K=NZ-LM,NZ-1 DO J=2,NY-1 DO I=1,NX-1 HYX2(I,J,K)=0.0 HYZ2(I,J,K)=0.0 END DO END DO END DO DO K=LM+1,NZ-LM-1 DO J=2,LM DO I=1,NX-1 HYX3(I,J,K)=0.0 HYZ3(I,J,K)=0.0 END DO END DO DO I=1,LM DO J=LM+1,NY-LM HYX4(I,J,K)=0.0 HYZ4(I,J,K)=0.0 END DO END DO DO I=NX-LM,NX-1 DO J=LM+1,NY-LM HYX5(I,J,K)=0.0 HYZ5(I,J,K)=0.0 END DO END DO DO J=NY-LM+1,NY-1 DO I=1,NX-1 HYX6(I,J,K)=0.0 HYZ6(I,J,K)=0.0 END DO END DO END DO C DO K=2,LM DO J=1,NY-1 DO I=1,NX-1 HZX1(I,J,K)=0.0 HZY1(I,J,K)=0.0 END DO END DO END DO DO K=NZ-LM+1,NZ-1 DO J=1,NY-1 DO I=1,NX-1 HZX2(I,J,K)=0.0 HZY2(I,J,K)=0.0 END DO END DO END DO DO K=LM+1,NZ-LM DO J=1,LM DO I=1,NX-1 HZX3(I,J,K)=0.0 HZY3(I,J,K)=0.0 END DO END DO DO I=1,LM DO J=LM+1,NY-LM-1 HZX4(I,J,K)=0.0 HZY4(I,J,K)=0.0 END DO END DO DO I=NX-LM,NX-1 DO J=LM+1,NY-LM-1 HZX5(I,J,K)=0.0 HZY5(I,J,K)=0.0 END DO END DO DO J=NY-LM,NY-1 DO I=1,NX-1 HZX6(I,J,K)=0.0 HZY6(I,J,K)=0.0 END DO END DO END DO (3)EPML C E_FIELD PML DO K=2,LM DO J=2,NY-1 DO I=1,NX-1 EXY1(I,J,K)=CEDY(J)*EXY1(I,J,K) & +CEDYL(J)*(HZ(I,J,K)-HZ(I,J-1,K)) EXZ1(I,J,K)=CEDZ(K)*EXZ1(I,J,K) & +CEDZL(K)*(HY(I,J,K-1)-HY(I,J,K)) EX(I,J,K)=EXY1(I,J,K)+EXZ1(I,J,K) END DO END DO END DO DO K=NZ-LM+1,NZ-1 DO J=2,NY-1 DO I=1,NX-1 EXY2(I,J,K)=CEDY(J)*EXY2(I,J,K) & +CEDYL(J)*(HZ(I,J,K)-HZ(I,J-1,K)) EXZ2(I,J,K)=CEDZ(K)*EXZ2(I,J,K) & +CEDZL(K)*(HY(I,J,K-1)-HY(I,J,K)) EX(I,J,K)=EXY2(I,J,K)+EXZ2(I,J,K) END DO END DO END DO DO K=LM+1,NZ-LM DO J=2,LM DO I=1,NX-1 EXY3(I,J,K)=CEDY(J)*EXY3(I,J,K) & +CEDYL(J)*(HZ(I,J,K)-HZ(I,J-1,K)) EXZ3(I,J,K)=CEDZ(K)*EXZ3(I,J,K) & +CEDZL(K)*(HY(I,J,K-1)-HY(I,J,K)) EX(I,J,K)=EXY3(I,J,K)+EXZ3(I,J,K) END DO END DO DO I=1,LM DO J=LM+1,NY-LM EXY4(I,J,K)=CEDY(J)*EXY4(I,J,K) & +CEDYL(J)*(HZ(I,J,K)-HZ(I,J-1,K)) EXZ4(I,J,K)=CEDZ(K)*EXZ4(I,J,K) & +CEDZL(K)*(HY(I,J,K-1)-HY(I,J,K)) EX(I,J,K)=EXY4(I,J,K)+EXZ4(I,J,K) END DO END DO DO I=NX-LM,NX-1 DO J=LM+1,NY-LM EXY5(I,J,K)=CEDY(J)*EXY5(I,J,K) & +CEDYL(J)*(HZ(I,J,K)-HZ(I,J-1,K)) EXZ5(I,J,K)=CEDZ(K)*EXZ5(I,J,K) & +CEDZL(K)*(HY(I,J,K-1)-HY(I,J,K)) EX(I,J,K)=EXY5(I,J,K)+EXZ5(I,J,K) END DO END DO DO J=NY-LM+1,NY-1 DO I=1,NX-1 EXY6(I,J,K)=CEDY(J)*EXY6(I,J,K) & +CEDYL(J)*(HZ(I,J,K)-HZ(I,J-1,K)) EXZ6(I,J,K)=CEDZ(K)*EXZ6(I,J,K) & +CEDZL(K)*(HY(I,J,K-1)-HY(I,J,K)) EX(I,J,K)=EXY6(I,J,K)+EXZ6(I,J,K) END DO END DO END DO C DO K=2,LM DO J=1,NY-1 DO I=2,NX-1 EYX1(I,J,K)=CEDX(I)*EYX1(I,J,K) & +CEDXL(I)*(HZ(I-1,J,K)-HZ(I,J,K)) EYZ1(I,J,K)=CEDZ(K)*EYZ1(I,J,K) & +CEDZL(K)*(HX(I,J,K)-HX(I,J,K-1)) EY(I,J,K)=EYX1(I,J,K)+EYZ1(I,J,K) END DO END DO END DO DO K=NZ-LM+1,NZ-1 DO J=1,NY-1 DO I=2,NX-1 EYX2(I,J,K)=CEDX(I)*EYX2(I,J,K) & +CEDXL(I)*(HZ(I-1,J,K)-HZ(I,J,K)) EYZ2(I,J,K)=CEDZ(K)*EYZ2(I,J,K) & +CEDZL(K)*(HX(I,J,K)-HX(I,J,K-1)) EY(I,J,K)=EYX2(I,J,K)+EYZ2(I,J,K) END DO END DO END DO DO K=LM+1,NZ-LM DO J=1,LM DO I=2,NX-1 EYX3(I,J,K)=CEDX(I)*EYX3(I,J,K) & +CEDXL(I)*(HZ(I-1,J,K)-HZ(I,J,K)) EYZ3(I,J,K)=CEDZ(K)*EYZ3(I,J,K) & +CEDZL(K)*(HX(I,J,K)-HX(I,J,K-1)) EY(I,J,K)=EYX3(I,J,K)+EYZ3(I,J,K) END DO END DO DO I=2,LM DO J=LM+1,NY-LM-1 EYX4(I,J,K)=CEDX(I)*EYX4(I,J,K) & +CEDXL(I)*(HZ(I-1,J,K)-HZ(I,J,K)) EYZ4(I,J,K)=CEDZ(K)*EYZ4(I,J,K) & +CEDZL(K)*(HX(I,J,K)-HX(I,J,K-1)) EY(I,J,K)=EYX4(I,J,K)+EYZ4(I,J,K) END DO END DO DO I=NX-LM+1,NX-1 DO J=LM+1,NY-LM-1 EYX5(I,J,K)=CEDX(I)*EYX5(I,J,K) & +CEDXL(I)*(HZ(I-1,J,K)-HZ(I,J,K)) EYZ5(I,J,K)=CEDZ(K)*EYZ5(I,J,K) & +CEDZL(K)*(HX(I,J,K)-HX(I,J,K-1)) EY(I,J,K)=EYX5(I,J,K)+EYZ5(I,J,K) END DO END DO DO J=NY-LM,NY-1 DO I=2,NX-1 EYX6(I,J,K)=CEDX(I)*EYX6(I,J,K) & +CEDXL(I)*(HZ(I-1,J,K)-HZ(I,J,K)) EYZ6(I,J,K)=CEDZ(K)*EYZ6(I,J,K) & +CEDZL(K)*(HX(I,J,K)-HX(I,J,K-1)) EY(I,J,K)=EYX6(I,J,K)+EYZ6(I,J,K) END DO END DO END DO C DO K=1,LM DO J=2,NY-1 DO I=2,NX-1 EZX1(I,J,K)=CEDX(I)*EZX1(I,J,K) & +CEDXL(I)*(HY(I,J,K)-HY(I-1,J,K)) EZY1(I,J,K)=CEDY(J)*EZY1(I,J,K) & +CEDYL(J)*(HX(I,J-1,K)-HX(I,J,K)) EZ(I,J,K)=EZX1(I,J,K)+EZY1(I,J,K) END DO END DO END DO DO K=NZ-LM,NZ-1 DO J=2,NY-1 DO I=2,NX-1 EZX2(I,J,K)=CEDX(I)*EZX2(I,J,K) & +CEDXL(I)*(HY(I,J,K)-HY(I-1,J,K)) EZY2(I,J,K)=CEDY(J)*EZY2(I,J,K) & +CEDYL(J)*(HX(I,J-1,K)-HX(I,J,K)) EZ(I,J,K)=EZX2(I,J,K)+EZY2(I,J,K) END DO END DO END DO DO K=LM+1,NZ-LM-1 DO J=2,LM DO I=2,NX-1 EZX3(I,J,K)=CEDX(I)*EZX3(I,J,K) & +CEDXL(I)*(HY(I,J,K)-HY(I-1,J,K)) EZY3(I,J,K)=CEDY(J)*EZY3(I,J,K) & +CEDYL(J)*(HX(I,J-1,K)-HX(I,J,K)) EZ(I,J,K)=EZX3(I,J,K)+EZY3(I,J,K) END DO END DO DO I=2,LM DO J=LM+1,NY-LM EZX4(I,J,K)=CEDX(I)*EZX4(I,J,K) & +CEDXL(I)*(HY(I,J,K)-HY(I-1,J,K)) EZY4(I,J,K)=CEDY(J)*EZY4(I,J,K) & +CEDYL(J)*(HX(I,J-1,K)-HX(I,J,K)) EZ(I,J,K)=EZX4(I,J,K)+EZY4(I,J,K) END DO END DO DO I=NX-LM+1,NX-1 DO J=LM+1,NY-LM EZX5(I,J,K)=CEDX(I)*EZX5(I,J,K) & +CEDXL(I)*(HY(I,J,K)-HY(I-1,J,K)) EZY5(I,J,K)=CEDY(J)*EZY5(I,J,K) & +CEDYL(J)*(HX(I,J-1,K)-HX(I,J,K)) EZ(I,J,K)=EZX5(I,J,K)+EZY5(I,J,K) END DO END DO DO J=NY-LM+1,NY-1 DO I=2,NX-1 EZX6(I,J,K)=CEDX(I)*EZX6(I,J,K) & +CEDXL(I)*(HY(I,J,K)-HY(I-1,J,K)) EZY6(I,J,K)=CEDY(J)*EZY6(I,J,K) & +CEDYL(J)*(HX(I,J-1,K)-HX(I,J,K)) EZ(I,J,K)=EZX6(I,J,K)+EZY6(I,J,K) END DO END DO END DO (4)HPML C H_FIELD PML DO K=1,LM DO J=1,NY-1 DO I=2,NX-1 HXY1(I,J,K)=CHDY(J)*HXY1(I,J,K) & -CHDYL(J)*(EZ(I,J+1,K)-EZ(I,J,K)) HXZ1(I,J,K)=CHDZ(K)*HXZ1(I,J,K) & +CHDZL(K)*(EY(I,J,K+1)-EY(I,J,K)) HX(I,J,K)=HXY1(I,J,K)+HXZ1(I,J,K) END DO END DO END DO DO K=NZ-LM,NZ-1 DO J=1,NY-1 DO I=2,NX-1 HXY2(I,J,K)=CHDY(J)*HXY2(I,J,K) & -CHDYL(J)*(EZ(I,J+1,K)-EZ(I,J,K)) HXZ2(I,J,K)=CHDZ(K)*HXZ2(I,J,K) & +CHDZL(K)*(EY(I,J,K+1)-EY(I,J,K)) HX(I,J,K)=HXY2(I,J,K)+HXZ2(I,J,K) END DO END DO END DO DO K=LM+1,NZ-LM-1 DO J=1,LM DO I=2,NX-1 HXY3(I,J,K)=CHDY(J)*HXY3(I,J,K) & -CHDYL(J)*(EZ(I,J+1,K)-EZ(I,J,K)) HXZ3(I,J,K)=CHDZ(K)*HXZ3(I,J,K) & +CHDZL(K)*(EY(I,J,K+1)-EY(I,J,K)) HX(I,J,K)=HXY3(I,J,K)+HXZ3(I,J,K) END DO END DO DO I=2,LM DO J=LM+1,NY-LM-1 HXY4(I,J,K)=CHDY(J)*HXY4(I,J,K) & -CHDYL(J)*(EZ(I,J+1,K)-EZ(I,J,K)) HXZ4(I,J,K)=CHDZ(K)*HXZ4(I,J,K) & +CHDZL(K)*(EY(I,J,K+1)-EY(I,J,K)) HX(I,J,K)=HXY4(I,J,K)+HXZ4(I,J,K) END DO END DO DO I=NX-LM+1,NX-1 DO J=LM+1,NY-LM-1 HXY5(I,J,K)=CHDY(J)*HXY5(I,J,K) & -CHDYL(J)*(EZ(I,J+1,K)-EZ(I,J,K)) HXZ5(I,J,K)=CHDZ(K)*HXZ5(I,J,K) & +CHDZL(K)*(EY(I,J,K+1)-EY(I,J,K)) HX(I,J,K)=HXY5(I,J,K)+HXZ5(I,J,K) END DO END DO DO J=NY-LM,NY-1 DO I=2,NX-1 HXY6(I,J,K)=CHDY(J)*HXY6(I,J,K) & -CHDYL(J)*(EZ(I,J+1,K)-EZ(I,J,K)) HXZ6(I,J,K)=CHDZ(K)*HXZ6(I,J,K) & +CHDZL(K)*(EY(I,J,K+1)-EY(I,J,K)) HX(I,J,K)=HXY6(I,J,K)+HXZ6(I,J,K) END DO END DO END DO C DO K=1,LM DO J=2,NY-1 DO I=1,NX-1 HYX1(I,J,K)=CHDX(I)*HYX1(I,J,K) & +CHDXL(I)*(EZ(I+1,J,K)-EZ(I,J,K)) HYZ1(I,J,K)=CHDZ(K)*HYZ1(I,J,K) & -CHDZL(K)*(EX(I,J,K+1)-EX(I,J,K)) HY(I,J,K)=HYX1(I,J,K)+HYZ1(I,J,K) END DO END DO END DO DO K=NZ-LM,NZ-1 DO J=2,NY-1 DO I=1,NX-1 HYX2(I,J,K)=CHDX(I)*HYX2(I,J,K) & +CHDXL(I)*(EZ(I+1,J,K)-EZ(I,J,K)) HYZ2(I,J,K)=CHDZ(K)*HYZ2(I,J,K) & -CHDZL(K)*(EX(I,J,K+1)-EX(I,J,K)) HY(I,J,K)=HYX2(I,J,K)+HYZ2(I,J,K) END DO END DO END DO DO K=LM+1,NZ-LM-1 DO J=2,LM DO I=1,NX-1 HYX3(I,J,K)=CHDX(I)*HYX3(I,J,K) & +CHDXL(I)*(EZ(I+1,J,K)-EZ(I,J,K)) HYZ3(I,J,K)=CHDZ(K)*HYZ3(I,J,K) & -CHDZL(K)*(EX(I,J,K+1)-EX(I,J,K)) HY(I,J,K)=HYX3(I,J,K)+HYZ3(I,J,K) END DO END DO DO I=1,LM DO J=LM+1,NY-LM HYX4(I,J,K)=CHDX(I)*HYX4(I,J,K) & +CHDXL(I)*(EZ(I+1,J,K)-EZ(I,J,K)) HYZ4(I,J,K)=CHDZ(K)*HYZ4(I,J,K) & -CHDZL(K)*(EX(I,J,K+1)-EX(I,J,K)) HY(I,J,K)=HYX4(I,J,K)+HYZ4(I,J,K) END DO END DO DO I=NX-LM,NX-1 DO J=LM+1,NY-LM HYX5(I,J,K)=CHDX(I)*HYX5(I,J,K) & +CHDXL(I)*(EZ(I+1,J,K)-EZ(I,J,K)) HYZ5(I,J,K)=CHDZ(K)*HYZ5(I,J,K) & -CHDZL(K)*(EX(I,J,K+1)-EX(I,J,K)) HY(I,J,K)=HYX5(I,J,K)+HYZ5(I,J,K) END DO END DO DO J=NY-LM+1,NY-1 DO I=1,NX-1 HYX6(I,J,K)=CHDX(I)*HYX6(I,J,K) & +CHDXL(I)*(EZ(I+1,J,K)-EZ(I,J,K)) HYZ6(I,J,K)=CHDZ(K)*HYZ6(I,J,K) & -CHDZL(K)*(EX(I,J,K+1)-EX(I,J,K)) HY(I,J,K)=HYX6(I,J,K)+HYZ6(I,J,K) END DO END DO END DO C DO K=2,LM DO J=1,NY-1 DO I=1,NX-1 HZX1(I,J,K)=CHDX(I)*HZX1(I,J,K) & -CHDXL(I)*(EY(I+1,J,K)-EY(I,J,K)) HZY1(I,J,K)=CHDY(J)*HZY1(I,J,K) & +CHDYL(J)*(EX(I,J+1,K)-EX(I,J,K)) HZ(I,J,K)=HZX1(I,J,K)+HZY1(I,J,K) END DO END DO END DO DO K=NZ-LM+1,NZ-1 DO J=1,NY-1 DO I=1,NX-1 HZX2(I,J,K)=CHDX(I)*HZX2(I,J,K) & -CHDXL(I)*(EY(I+1,J,K)-EY(I,J,K)) HZY2(I,J,K)=CHDY(J)*HZY2(I,J,K) & +CHDYL(J)*(EX(I,J+1,K)-EX(I,J,K)) HZ(I,J,K)=HZX2(I,J,K)+HZY2(I,J,K) END DO END DO END DO DO K=LM+1,NZ-LM DO J=1,LM DO I=1,NX-1 HZX3(I,J,K)=CHDX(I)*HZX3(I,J,K) & -CHDXL(I)*(EY(I+1,J,K)-EY(I,J,K)) HZY3(I,J,K)=CHDY(J)*HZY3(I,J,K) & +CHDYL(J)*(EX(I,J+1,K)-EX(I,J,K)) HZ(I,J,K)=HZX3(I,J,K)+HZY3(I,J,K) END DO END DO DO I=1,LM DO J=LM+1,NY-LM-1 HZX4(I,J,K)=CHDX(I)*HZX4(I,J,K) & -CHDXL(I)*(EY(I+1,J,K)-EY(I,J,K)) HZY4(I,J,K)=CHDY(J)*HZY4(I,J,K) & +CHDYL(J)*(EX(I,J+1,K)-EX(I,J,K)) HZ(I,J,K)=HZX4(I,J,K)+HZY4(I,J,K) END DO END DO DO I=NX-LM,NX-1 DO J=LM+1,NY-LM-1 HZX5(I,J,K)=CHDX(I)*HZX5(I,J,K) & -CHDXL(I)*(EY(I+1,J,K)-EY(I,J,K)) HZY5(I,J,K)=CHDY(J)*HZY5(I,J,K) & +CHDYL(J)*(EX(I,J+1,K)-EX(I,J,K)) HZ(I,J,K)=HZX5(I,J,K)+HZY5(I,J,K) END DO END DO DO J=NY-LM,NY-1 DO I=1,NX-1 HZX6(I,J,K)=CHDX(I)*HZX6(I,J,K) & -CHDXL(I)*(EY(I+1,J,K)-EY(I,J,K)) HZY6(I,J,K)=CHDY(J)*HZY6(I,J,K) & +CHDYL(J)*(EX(I,J+1,K)-EX(I,J,K)) HZ(I,J,K)=HZX6(I,J,K)+HZY6(I,J,K) END DO END DO END DO