SURFEX v7.3
General documentation of Surfex
 All Classes Files Functions Variables Typedefs
/home/dasprezs/EXPORT_v7_3/src/SURFEX/get_mesh_dim_lonlatval.F90
Go to the documentation of this file.
00001 !     #########
00002       SUBROUTINE GET_MESH_DIM_LONLATVAL(KGRID_PAR,KL,PGRID_PAR,PDX,PDY)
00003 !     ##############################################################
00004 !
00005 !!**** *GET_MESH_DIM_LONLATVAL* get the grid mesh dimensions
00006 !!
00007 !!    PURPOSE
00008 !!    -------
00009 !!
00010 !!    METHOD
00011 !!    ------
00012 !!   
00013 !!    REFERENCE
00014 !!    ---------
00015 !!
00016 !!    AUTHOR
00017 !!    ------
00018 !!
00019 !!    E. Martin         Meteo-France
00020 !!
00021 !!    MODIFICATION
00022 !!    ------------
00023 !!
00024 !!    Original    10/2007
00025 !!
00026 !----------------------------------------------------------------------------
00027 !
00028 !*    0.     DECLARATION
00029 !            -----------
00030 !
00031 USE MODD_CSTS, ONLY : XPI, XRADIUS
00032 !
00033 USE MODE_GRIDTYPE_LONLATVAL
00034 !
00035 !
00036 USE YOMHOOK   ,ONLY : LHOOK,   DR_HOOK
00037 USE PARKIND1  ,ONLY : JPRB
00038 !
00039 IMPLICIT NONE
00040 !
00041 !*    0.1    Declaration of arguments
00042 !            ------------------------
00043 !
00044 INTEGER,                         INTENT(IN)    :: KGRID_PAR ! size of PGRID_PAR
00045 INTEGER,                         INTENT(IN)    :: KL        ! number of points
00046 REAL,    DIMENSION(KGRID_PAR),   INTENT(IN)    :: PGRID_PAR ! grid parameters
00047 REAL,    DIMENSION(KL),          INTENT(OUT)   :: PDX       ! dimension in x dir. (meters)
00048 REAL,    DIMENSION(KL),          INTENT(OUT)   :: PDY       ! dimension in y dir. (meters)
00049 !
00050 !*    0.2    Declaration of other local variables
00051 !            ------------------------------------
00052 !
00053 INTEGER             :: ILAMBERT ! Lambert type
00054 REAL, DIMENSION(KL) :: ZX       ! X Lambert   coordinate
00055 REAL, DIMENSION(KL) :: ZY       ! Y Lambert   coordinate
00056 REAL, DIMENSION(KL) :: ZLAT     ! latitude
00057 REAL, DIMENSION(KL) :: ZLON     ! longitude
00058 REAL, DIMENSION(KL) :: ZMAP     ! map factor
00059 REAL(KIND=JPRB) :: ZHOOK_HANDLE
00060 
00061 !----------------------------------------------------------------------------
00062 !
00063 IF (LHOOK) CALL DR_HOOK('GET_MESH_DIM_LONLATVAL',0,ZHOOK_HANDLE)
00064  CALL GET_GRIDTYPE_LONLATVAL(PGRID_PAR,PX=ZX,PY=ZY,PDX=PDX,PDY=PDY      )
00065 !
00066 !---------------------------------------------------------------------------
00067 !
00068 !*       2.    Computation of latitude and longitude
00069 !              -------------------------------------
00070 !
00071  CALL LATLON_LONLATVAL(ZX,ZY,ZLAT,ZLON)
00072 !
00073 !-----------------------------------------------------------------------------
00074 !
00075 !*       3.    Compute grif size
00076 !              -----------------
00077 !
00078 PDX(:) = PDX(:) * (XPI / 180.) * XRADIUS * COS(ZLAT(:)*XPI/180.) 
00079 PDY(:) = PDY(:) * (XPI / 180.) * XRADIUS 
00080 IF (LHOOK) CALL DR_HOOK('GET_MESH_DIM_LONLATVAL',1,ZHOOK_HANDLE)
00081 !
00082 !-------------------------------------------------------------------------------
00083 !
00084 END SUBROUTINE GET_MESH_DIM_LONLATVAL