46 INTEGER,
INTENT(IN) :: KGRID_PAR
47 INTEGER,
INTENT(IN) :: KL
48 REAL,
DIMENSION(KGRID_PAR),
INTENT(IN) :: PGRID_PAR
49 INTEGER,
DIMENSION(KL),
INTENT(OUT) :: KLEFT
50 INTEGER,
DIMENSION(KL),
INTENT(OUT) :: KRIGHT
51 INTEGER,
DIMENSION(KL),
INTENT(OUT) :: KTOP
52 INTEGER,
DIMENSION(KL),
INTENT(OUT) :: KBOTTOM
61 INTEGER,
DIMENSION(:),
ALLOCATABLE :: INLOPA
65 REAL,
DIMENSION(:),
ALLOCATABLE :: ZXCEN
67 INTEGER :: JLAT, JLON, IL, JL, ILGRID, JLON2, ID, JL0
71 REAL(KIND=JPRB) :: ZHOOK_HANDLE
75 IF (
lhook)
CALL dr_hook(
'GET_ADJ_MES_GAUSS',0,zhook_handle)
78 ALLOCATE(inlopa(0:inlati))
93 DO jlon=1,inlopa(jlat)
104 DO jlon=1,inlopa(jlat)
108 IF (jlon>1 ) kleft(jl) = jl-1
109 IF (jlon<inlopa(jlat) ) kright(jl) = jl+1
111 IF (jlon==1 ) kleft(jl) = jl+inlopa(jlat)-1
112 IF (jlon==inlopa(jlat)) kright(jl) = jl-inlopa(jlat)+1
115 zdis = abs(zxcen(jl) - zxcen(jl0 - inlopa(jlat-1) + 1))
117 DO jlon2 = 1,inlopa(jlat-1)
118 zinter = abs(zxcen(jl) - zxcen(jl0 - inlopa(jlat-1) + jlon2))
119 IF (zinter<zdis)
THEN 124 ktop(jl) = jl0 - inlopa(jlat-1) + id
127 IF (jlat<inlati )
THEN 128 zdis = abs(zxcen(jl) - zxcen(jl0 + inlopa(jlat) + 1))
130 DO jlon2 = 1,inlopa(jlat+1)
131 zinter = abs(zxcen(jl) - zxcen(jl0 + inlopa(jlat) + jlon2))
132 IF (zinter<zdis)
THEN 137 kbottom(jl) = jl0 + inlopa(jlat) + id
147 IF (
lhook)
CALL dr_hook(
'GET_ADJ_MES_GAUSS',1,zhook_handle)
subroutine get_adj_mes_gauss(KGRID_PAR, KL, PGRID_PAR, KLEFT, KRIGHT, K
subroutine get_gridtype_gauss(PGRID_PAR, KNLATI, PLAPO, PLOPO, PCODIL, KNLOPA, KL, PLAT, PLON, PLAT_XY, PLON_XY, PMESH_SIZE, PLONINF, PLATINF, PLONSUP, PLATSUP)