SURFEX v7.3
General documentation of Surfex
 All Classes Files Functions Variables Typedefs
/home/dasprezs/EXPORT_v7_3/src/SURFEX/put_rad_watn.F90
Go to the documentation of this file.
00001 !     ######spl
00002       SUBROUTINE PUT_RAD_WAT_n(HPROGRAM,KI,PTS,PTICE,PDIR_ALB,PSCA_ALB,PICE_ALB)
00003 !     ##########################################################################
00004 !
00005 !!****  *PUT_RAD_WAT_n* - routine to modify water/ice ts and albedos
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 !!      B. Decharme   *Meteo France*    
00027 !!
00028 !!    MODIFICATIONS
00029 !!    -------------
00030 !!      Original    09/2009
00031 !-------------------------------------------------------------------------------
00032 !
00033 !*       0.    DECLARATIONS
00034 !              ------------
00035 !
00036 USE MODI_GET_LUOUT
00037 !
00038 USE MODD_WATFLUX_n,  ONLY : XTS,XTICE,XDIR_ALB,XSCA_ALB,XICE_ALB 
00039 !
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(IN)  :: PTS     
00052 REAL, DIMENSION(KI), INTENT(IN)  :: PTICE     
00053 REAL, DIMENSION(KI), INTENT(IN)  :: PDIR_ALB
00054 REAL, DIMENSION(KI), INTENT(IN)  :: PSCA_ALB
00055 REAL, DIMENSION(KI), INTENT(IN)  :: PICE_ALB
00056 !
00057 !
00058 !*       0.2   Declarations of local variables
00059 !              -------------------------------
00060 !
00061 INTEGER :: ILUOUT
00062 REAL(KIND=JPRB) :: ZHOOK_HANDLE
00063 !
00064 
00065 !-------------------------------------------------------------------------------
00066 IF (LHOOK) CALL DR_HOOK('PUT_RAD_WAT_N',0,ZHOOK_HANDLE)
00067  CALL GET_LUOUT(HPROGRAM,ILUOUT)
00068 !-------------------------------------------------------------------------------
00069 !
00070 IF ( SIZE(PTS) /= SIZE(XTS) ) THEN
00071   WRITE(ILUOUT,*) 'try to get PTS field from oceanic model, but size is not correct'
00072   WRITE(ILUOUT,*) 'size of field expected by the oceanic model (PTS) :', SIZE(PTS)
00073   WRITE(ILUOUT,*) 'size of field over SURFEX sea               (XTS) :', SIZE(XTS)
00074   STOP
00075 ELSE
00076   XTS     (:)=PTS(:)
00077   XTICE   (:)=PTICE(:)
00078   XDIR_ALB(:)=PDIR_ALB(:)
00079   XSCA_ALB(:)=PSCA_ALB(:)
00080   XICE_ALB(:)=PICE_ALB(:)
00081 END IF
00082 IF (LHOOK) CALL DR_HOOK('PUT_RAD_WAT_N',1,ZHOOK_HANDLE)
00083 !
00084 !==============================================================================
00085 !
00086 END SUBROUTINE PUT_RAD_WAT_n