55 CHARACTER(LEN=6),
INTENT(IN) :: HPROGRAM
56 INTEGER,
INTENT(IN) :: KDIM_FULL
57 INTEGER,
INTENT(OUT) :: KSIZE_FULL
58 INTEGER,
INTENT(INOUT) :: KGRID_PAR
59 REAL,
DIMENSION(:),
POINTER :: PGRID_PAR
60 INTEGER,
OPTIONAL,
INTENT(IN) :: KHALO
65 REAL(KIND=JPRB) :: ZHOOK_HANDLE
69 INTEGER :: IIMAX, IJMAX
70 REAL,
DIMENSION(KDIM_FULL) :: ZX, ZY, ZDX, ZDY
73 INTEGER :: IIMAX_SPLIT, IJMAX_SPLIT
74 REAL,
DIMENSION(:),
ALLOCATABLE :: ZX_SPLIT, ZY_SPLIT, ZDX_SPLIT, ZDY_SPLIT
77 IF (
lhook)
CALL dr_hook(
'SPLIT_GRID_CARTESIAN',0,zhook_handle)
88 IF (
PRESENT(khalo))
THEN 96 ksize_full = iimax_split * ijmax_split
98 ALLOCATE(zx_split(ksize_full))
99 ALLOCATE(zy_split(ksize_full))
100 ALLOCATE(zdx_split(ksize_full))
101 ALLOCATE(zdy_split(ksize_full))
103 IF (
PRESENT(khalo))
THEN 120 iimax_split,ijmax_split, &
121 zx_split,zy_split,zdx_split,zdy_split )
124 kgrid_par =
SIZE(pgrid_par)
126 DEALLOCATE(zx_split )
127 DEALLOCATE(zy_split )
128 DEALLOCATE(zdx_split)
129 DEALLOCATE(zdy_split)
131 IF (
lhook)
CALL dr_hook(
'SPLIT_GRID_CARTESIAN',1,zhook_handle)
subroutine split_grid_cartesian(HPROGRAM, KDIM_FULL, KSIZE_FULL, KGRI
subroutine put_gridtype_cartesian(PGRID_PAR, PLAT0, PLON0, KIMAX, KJMAX, PX, PY, PDX, PDY
subroutine get_gridtype_cartesian(PGRID_PAR, PLAT0, PLON0,
subroutine split_grid_parametern0(HPROGRAM, HGRID, HREC, KFIELD, KFIELD_SPLIT, KHALO)
subroutine split_grid_parameterx1(HPROGRAM, HGRID, HREC, KDIM, KSIZE, PFIELD, PFIELD_SPLIT, KIMAX_ll, KJMAX_ll, KHALO)