6 SUBROUTINE get_mesh_index(KLUOUT,KNBLINES,PLAT,PLON,KINDEX,PVALUE,PNODATA,KSSO,KISSOX,KISSOY)
40 USE yomhook
,ONLY : lhook, dr_hook
41 USE parkind1
,ONLY : jprb
45 USE modi_get_mesh_index_conf_proj
47 USE modi_get_mesh_index_gauss
49 USE modi_get_mesh_index_ign
51 USE modi_get_mesh_index_lonlat_reg
53 USE modi_get_mesh_index_lonlatval
55 USE modi_get_mesh_index_lonlat_rot
61 INTEGER,
INTENT(IN) :: kluout
62 INTEGER,
INTENT(IN) :: knblines
63 REAL,
DIMENSION(:),
INTENT(IN) :: plat
64 REAL,
DIMENSION(:),
INTENT(IN) :: plon
65 INTEGER,
DIMENSION(:,:),
INTENT(OUT) :: kindex
67 REAL,
DIMENSION(:),
OPTIONAL,
INTENT(IN) :: pvalue
68 REAL,
OPTIONAL,
INTENT(IN) :: pnodata
70 INTEGER,
OPTIONAL,
INTENT(IN) :: ksso
71 INTEGER,
DIMENSION(:,:),
OPTIONAL,
INTENT(OUT) :: kissox
72 INTEGER,
DIMENSION(:,:),
OPTIONAL,
INTENT(OUT) :: kissoy
78 INTEGER,
DIMENSION(NOVMX,SIZE(PLAT)) :: iissox
79 INTEGER,
DIMENSION(NOVMX,SIZE(PLAT)) :: iissoy
80 REAL(KIND=JPRB) :: zhook_handle
86 IF (lhook) CALL dr_hook(
'GET_MESH_INDEX',0,zhook_handle)
89 CASE(
"CONF PROJ ",
"LONLAT REG",
"GAUSS ",
"IGN ",
"LONLATVAL ",
"LONLAT ROT")
90 IF (present(ksso) .AND. present(kissox) .AND. present(kissoy))
THEN
96 IF (cgrid==
"CONF PROJ ")
THEN
99 IF (cgrid==
"LONLAT REG")
THEN
100 IF (present(pvalue) .AND. present(pnodata))
THEN
107 IF (cgrid==
"GAUSS ")
THEN
108 IF (present(pvalue) .AND. present(pnodata))
THEN
115 IF (cgrid==
"IGN ")
THEN
116 IF (present(pvalue) .AND. present(pnodata))
THEN
123 IF (cgrid==
"LONLATVAL ") &
125 IF (cgrid==
"LONLAT ROT")
THEN
129 IF (present(ksso) .AND. present(kissox) .AND. present(kissoy))
THEN
135 WRITE(kluout,*)
'error in physiographic fields computations (routine GET_MESH_INDEX)'
136 WRITE(kluout,*)
'It is impossible to retrieve geographical coordinates (latitude, longitude)'
137 WRITE(kluout,*)
'for the following grid type: CGRID = ', cgrid
138 CALL
abor1_sfx(
'GET_MESH_INDEX: IMPOSSIBLE TO RETRIEVE GEOGRAPHICAL COORDINATES')
140 IF (lhook) CALL dr_hook(
'GET_MESH_INDEX',1,zhook_handle)
subroutine get_mesh_index(KLUOUT, KNBLINES, PLAT, PLON, KINDEX, PVALUE, PNODATA, KSSO, KISSOX, KISSOY)
subroutine get_mesh_index_lonlat_rot(KGRID_PAR, KL, PGRID_PAR, PLAT, PLON, KINDEX, KSSO, KISSOX, KISSOY)
subroutine get_mesh_index_ign(KGRID_PAR, KSSO, PGRID_PAR, PLAT, PLON, KINDEX, KISSOX, KISSOY, PVALUE, PNODATA)
subroutine get_mesh_index_lonlatval(KGRID_PAR, KSSO, PGRID_PAR, PLAT, PLON, KINDEX, KISSOX, KISSOY)
subroutine abor1_sfx(YTEXT)
subroutine get_mesh_index_gauss(KNBLINES, KGRID_PAR, KSSO, PGRID_PAR, PLAT, PLON, KINDEX, KISSOX, KISSOY, PVALUE, PNODATA)
subroutine get_mesh_index_conf_proj(KGRID_PAR, KSSO, PGRID_PAR, PLAT, PLON, KINDEX, KISSOX, KISSOY)
subroutine get_mesh_index_lonlat_reg(KGRID_PAR, KSSO, PGRID_PAR, PLAT, PLON, KINDEX, KISSOX, KISSOY, PVALUE, PNODATA)