1 |
C $Header$ |
C $Header$ |
2 |
C $Name$ |
C $Name$ |
3 |
|
|
|
#include "PACKAGES_CONFIG.h" |
|
|
|
|
4 |
#ifdef ALLOW_NONHYDROSTATIC |
#ifdef ALLOW_NONHYDROSTATIC |
5 |
CBOP |
CBOP |
6 |
C !ROUTINE: CG3D.h |
C !ROUTINE: CG3D.h |
21 |
CEOP |
CEOP |
22 |
|
|
23 |
C-- COMMON /CG3D_R/ DEL**2 Laplacian operators |
C-- COMMON /CG3D_R/ DEL**2 Laplacian operators |
24 |
C aW3d - East-west operator. |
C aW3d :: East-west operator. |
25 |
C aS3d - North-south operator. |
C aS3d :: North-south operator. |
26 |
C aV3d - Vertical operator. |
C aV3d :: Vertical operator. |
27 |
C etaNBuf - Shared buffers for accumulating con. grad vector product. |
C aC3d :: 3D operator main diagonal term. |
28 |
C alphaBuf |
C zMC, zML, zMU :: preconditioner 3D solver |
|
C errBuf |
|
|
C nrmBuf |
|
29 |
C cg3dNorm - A matrix normalisation factor. |
C cg3dNorm - A matrix normalisation factor. |
30 |
COMMON /CG3D_R/ |
COMMON /CG3D_R/ |
31 |
& aW3d, |
& aW3d, aS3d, aV3d, |
32 |
& aS3d, |
& aC3d, |
|
& aV3d, |
|
33 |
& zMC, zML, zMU, |
& zMC, zML, zMU, |
34 |
& cg3dNorm |
& cg3dNorm |
35 |
_RS aW3d (1-OLx:sNx+OLx,1-OLy:sNy+OLy,Nr,nSx,nSy) |
_RS aW3d (1-OLx:sNx+OLx,1-OLy:sNy+OLy,Nr,nSx,nSy) |
36 |
_RS aS3d (1-OLx:sNx+OLx,1-OLy:sNy+OLy,Nr,nSx,nSy) |
_RS aS3d (1-OLx:sNx+OLx,1-OLy:sNy+OLy,Nr,nSx,nSy) |
37 |
_RS aV3d (1-OLx:sNx+OLx,1-OLy:sNy+OLy,Nr,nSx,nSy) |
_RS aV3d (1-OLx:sNx+OLx,1-OLy:sNy+OLy,Nr,nSx,nSy) |
38 |
|
_RS aC3d (1-OLx:sNx+OLx,1-OLy:sNy+OLy,Nr,nSx,nSy) |
39 |
_RS zMC (1-OLx:sNx+OLx,1-OLy:sNy+OLy,Nr,nSx,nSy) |
_RS zMC (1-OLx:sNx+OLx,1-OLy:sNy+OLy,Nr,nSx,nSy) |
40 |
_RS zML (1-OLx:sNx+OLx,1-OLy:sNy+OLy,Nr,nSx,nSy) |
_RS zML (1-OLx:sNx+OLx,1-OLy:sNy+OLy,Nr,nSx,nSy) |
41 |
_RS zMU (1-OLx:sNx+OLx,1-OLy:sNy+OLy,Nr,nSx,nSy) |
_RS zMU (1-OLx:sNx+OLx,1-OLy:sNy+OLy,Nr,nSx,nSy) |
45 |
C cg3d_q - Intermediate matrix-vector product term |
C cg3d_q - Intermediate matrix-vector product term |
46 |
C cg3d_r - " |
C cg3d_r - " |
47 |
C cg3d_s - " |
C cg3d_s - " |
|
C cg3d_x Solution vector |
|
|
C cg3d_b Right-hand side vector |
|
48 |
COMMON /CG3D_WK_R/ |
COMMON /CG3D_WK_R/ |
49 |
& cg3d_q, cg3d_r, cg3d_s |
& cg3d_q, cg3d_r, cg3d_s |
50 |
_RL cg3d_q(1-OLx:sNx+OLx,1-OLy:sNy+OLy,nR,nSx,nSy) |
_RL cg3d_q(1-1 :sNx+1 ,1-1 :sNy+1 ,Nr,nSx,nSy) |
51 |
_RL cg3d_r(1-1 :sNx+1 ,1-1 :sNy+1 ,nR,nSx,nSy) |
_RL cg3d_r(1-1 :sNx+1 ,1-1 :sNy+1 ,Nr,nSx,nSy) |
52 |
_RL cg3d_s(1-1 :sNx+1 ,1-1 :sNy+1 ,nR,nSx,nSy) |
_RL cg3d_s(1-1 :sNx+1 ,1-1 :sNy+1 ,Nr,nSx,nSy) |
53 |
|
|
54 |
#endif /* ALLOW_NONHYDROSTATIC */ |
#endif /* ALLOW_NONHYDROSTATIC */ |