SURFEX v7.3
General documentation of Surfex
 All Classes Files Functions Variables Typedefs
/home/dasprezs/EXPORT_v7_3/src/SURFEX/get_sso_stdevn.F90
Go to the documentation of this file.
00001 !     ########################################
00002       SUBROUTINE GET_SSO_STDEV_n(HPROGRAM,KI,PSSO_STDEV)
00003 !     ########################################
00004 !
00005 !!****  *GET_SSO_STDEV_n* - routine to get some surface fields
00006 !!
00007 !!    PURPOSE
00008 !!    -------
00009 !!
00010 !!**  METHOD
00011 !!    ------
00012 !!
00013 !!    EXTERNAL
00014 !!    --------
00015 !!
00016 !!
00017 !!    IMPLICIT ARGUMENTS
00018 !!    ------------------
00019 !!
00020 !!    REFERENCE
00021 !!    ---------
00022 !!
00023 !!
00024 !!    AUTHOR
00025 !!    ------
00026 !!      S. Riette   *Meteo France*
00027 !!
00028 !!    MODIFICATIONS
00029 !!    -------------
00030 !!      Original    06/2010
00031 !-------------------------------------------------------------------------------
00032 !
00033 !*       0.    DECLARATIONS
00034 !              ------------
00035 !
00036 USE MODI_GET_LUOUT
00037 USE MODI_ABOR1_SFX
00038 !
00039 USE MODD_SURF_ATM_SSO_n,     ONLY : XSSO_STDEV
00040 !
00041 USE YOMHOOK   ,ONLY : LHOOK,   DR_HOOK
00042 USE PARKIND1  ,ONLY : JPRB
00043 !
00044 IMPLICIT NONE
00045 !
00046 !*       0.1   Declarations of arguments
00047 !              -------------------------
00048 !
00049  CHARACTER(LEN=6),    INTENT(IN)  :: HPROGRAM
00050 INTEGER,             INTENT(IN)  :: KI      ! horizontal dim. of cover
00051 REAL, DIMENSION(KI), INTENT(OUT) :: PSSO_STDEV     ! S.S.O. standard deviation (m)
00052 !
00053 !
00054 !*       0.2   Declarations of local variables
00055 !              -------------------------------
00056 !
00057 INTEGER :: ILUOUT
00058 REAL(KIND=JPRB) :: ZHOOK_HANDLE
00059 !
00060 !-------------------------------------------------------------------------------
00061 IF (LHOOK) CALL DR_HOOK('GET_SSO_STDEV_N',0,ZHOOK_HANDLE)
00062  CALL GET_LUOUT(HPROGRAM,ILUOUT)
00063 !-------------------------------------------------------------------------------
00064 !
00065 IF ( SIZE(PSSO_STDEV) /= SIZE(XSSO_STDEV) ) THEN
00066   WRITE(ILUOUT,*) 'try to get SSO_STDEV field from atmospheric model, but size is not correct'
00067   WRITE(ILUOUT,*) 'size of field expected by the atmospheric model (PSSO_STDEV) :', SIZE(PSSO_STDEV)
00068   WRITE(ILUOUT,*) 'size of field inthe surface                     (XSSO_STDEV) :', SIZE(XSSO_STDEV)
00069   CALL ABOR1_SFX('GET_SSO_STDEVN: SSO_STDEV SIZE NOT CORRECT')
00070 ELSE
00071   PSSO_STDEV = XSSO_STDEV
00072 END IF
00073 IF (LHOOK) CALL DR_HOOK('GET_SSO_STDEV_N',1,ZHOOK_HANDLE)
00074 !
00075 !==============================================================================
00076 !
00077 END SUBROUTINE GET_SSO_STDEV_n