SURFEX  V8_0
Surfex V8_0 release
 All Classes Files Functions Variables
get_grid_coord_gauss.F90
Go to the documentation of this file.
1 !SFX_LIC Copyright 1994-2014 CNRS, Meteo-France and Universite Paul Sabatier
2 !SFX_LIC This is part of the SURFEX software governed by the CeCILL-C licence
3 !SFX_LIC version 1. See LICENSE, CeCILL-C_V1-en.txt and CeCILL-C_V1-fr.txt
4 !SFX_LIC for details. version 1.
5 ! ###############################################
6  SUBROUTINE get_grid_coord_gauss(KGRID_PAR,KL,PGRID_PAR,PLON_XY,PLAT_XY)
7 ! ###############################################
8 !
9 !!**** *GET_GRID_COORD_GAUSS* - gets pseudo longitude LON_XY and
10 ! pseudo-latitude LAT_XY of the grid points
11 !!
12 !! PURPOSE
13 !! -------
14 !!
15 !!** METHOD
16 !! ------
17 !!
18 !! EXTERNAL
19 !! --------
20 !!
21 !!
22 !! IMPLICIT ARGUMENTS
23 !! ------------------
24 !!
25 !! REFERENCE
26 !! ---------
27 !!
28 !!
29 !! AUTHOR
30 !! ------
31 !!
32 !! MODIFICATIONS
33 !! -------------
34 !-------------------------------------------------------------------------------
35 !
36 !* 0. DECLARATIONS
37 ! ------------
38 !
40 !
41 !
42 USE yomhook ,ONLY : lhook, dr_hook
43 USE parkind1 ,ONLY : jprb
44 !
45 IMPLICIT NONE
46 !
47 !* 0.1 Declarations of arguments
48 ! -------------------------
49 !
50 INTEGER, INTENT(IN) :: kgrid_par ! size of PGRID_PAR
51 INTEGER, INTENT(IN) :: kl ! number of points
52 REAL, DIMENSION(KGRID_PAR), INTENT(IN) :: pgrid_par ! parameters defining this grid
53 REAL, DIMENSION(KL), INTENT(OUT) :: plon_xy ! pseudo-latitude (deg)
54 REAL, DIMENSION(KL), INTENT(OUT) :: plat_xy ! pseudo-longitude (deg)
55 !
56 !* 0.2 Declarations of local variables
57 ! -------------------------------
58 !
59 REAL :: zlapo ! latitude of the rotated pole (deg)
60 REAL :: zlopo ! longitude of the rotated pole (deg)
61 REAL :: zcodil ! stretching factor (must be greater than or equal to 1)
62 REAL(KIND=JPRB) :: zhook_handle
63 !
64 !---------------------------------------------------------------------------
65 !
66 !* 1. Gets latitudes and longitudes
67 ! -----------------------------
68 !
69 IF (lhook) CALL dr_hook('GET_GRID_COORD_GAUSS',0,zhook_handle)
70  CALL get_gridtype_gauss(pgrid_par,plapo=zlapo,plopo=zlopo,pcodil=zcodil, &
71  plat_xy=plat_xy,plon_xy=plon_xy)
72 IF (lhook) CALL dr_hook('GET_GRID_COORD_GAUSS',1,zhook_handle)
73 !
74 !---------------------------------------------------------------------------
75 !
76 END SUBROUTINE get_grid_coord_gauss
subroutine get_gridtype_gauss(PGRID_PAR, KNLATI, PLAPO, PLOPO, PCODIL, KNLOPA, KL, PLAT, PLON, PLAT_XY, PLON_XY, PMESH_SIZE, PLONINF, PLATINF, PLONSUP, PLATSUP)
subroutine get_grid_coord_gauss(KGRID_PAR, KL, PGRID_PAR, PLON_XY, PLAT_XY)