1 |
C $Header: /u/u0/gcmpack/models/MITgcmUV/model/inc/CG2D_INTERNAL.h,v 1.5 2001/09/21 03:54:36 cnh Exp $ |
2 |
C $Name: $ |
3 |
CBOP |
4 |
C !ROUTINE: CG2D_INTERNAL.h |
5 |
C !INTERFACE: |
6 |
C include "CG2D_INTERNAL.h" |
7 |
C !DESCRIPTION: |
8 |
C \bv |
9 |
C *==========================================================* |
10 |
C | CG2D_INTERNAL.h :: Header file for two-dimensional |
11 |
C | :: conjugate gradient solver common |
12 |
C | :: blocks. |
13 |
C *==========================================================* |
14 |
C | Internal (private) data structures. |
15 |
C *==========================================================* |
16 |
C \ev |
17 |
CEOP |
18 |
|
19 |
C-- COMMON /CG2D_R/ DEL**2 Laplacian operators |
20 |
C aW2d :: Two-d con. grad solver east-west operator. |
21 |
C aS2d :: Two-d con. grad solver north-south operator. |
22 |
C pW :: Two-d con. grad solver east-west off-diagonal term of preconditioner. |
23 |
C pS :: Two-d con. grad solver north-south off-diagonal term of preconditioner. |
24 |
C pC :: Two-d con. grad solver main diagonal term of preconditioner. |
25 |
C cg2dNorm :: Two-d con. grad solver A matrix normalisation factor. |
26 |
COMMON /CG2D_I_R/ |
27 |
& aW2d, |
28 |
& aS2d, |
29 |
& pW, pS, pC, |
30 |
& cg2dNorm |
31 |
_RS aW2d (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy) |
32 |
_RS aS2d (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy) |
33 |
_RS pW (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy) |
34 |
_RS pS (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy) |
35 |
_RS pC (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy) |
36 |
_RL cg2dNorm |
37 |
|
38 |
C-- COMMON /CG2D_I_WK_R/ Work array common block |
39 |
C cg2d_q, :: Two-d con. grad solver intermediate matrix-vector product term |
40 |
C cg2d_r, :: |
41 |
C cg2d_s :: |
42 |
COMMON /CG2D_I_WK_R/ |
43 |
& cg2d_q, cg2d_r, cg2d_s |
44 |
_RL cg2d_q(1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy) |
45 |
_RL cg2d_r(1-1:sNx+1,1-1:sNy+1,nSx,nSy) |
46 |
_RL cg2d_s(1-1:sNx+1,1-1:sNy+1,nSx,nSy) |
47 |
|