SURFEX v7.3
General documentation of Surfex
|
00001 ! ######### 00002 SUBROUTINE RW_PRECIP_n(HPROGRAM,PRAIN,PSNOW) 00003 ! ############################################ 00004 ! 00005 !!**** *RW_PRECIP_n* - Initialize/Save precip field for a ARPEGE/ALADIN run 00006 !! 00007 !! PURPOSE 00008 !! ------- 00009 !! 00010 !!** METHOD 00011 !! 00012 !! EXTERNAL 00013 !! -------- 00014 !! 00015 !! IMPLICIT ARGUMENTS 00016 !! ------------------ 00017 !! 00018 !! REFERENCE 00019 !! --------- 00020 !! 00021 !! 00022 !! AUTHOR 00023 !! ------ 00024 !! B. Decharme *Meteo France* 00025 !! 00026 !! MODIFICATIONS 00027 !! ------------- 00028 !! Original 04/2009 00029 !------------------------------------------------------------------------------- 00030 ! 00031 !* 0. DECLARATIONS 00032 ! ------------ 00033 ! 00034 ! 00035 USE MODD_SURF_ATM, ONLY : LRW_PRECIP 00036 USE MODD_SURF_ATM_n, ONLY : LINIT_PRECIP 00037 USE MODD_DIAG_SURF_ATM_n,ONLY : XRW_RAIN, XRW_SNOW 00038 ! 00039 ! 00040 USE YOMHOOK ,ONLY : LHOOK, DR_HOOK 00041 USE PARKIND1 ,ONLY : JPRB 00042 ! 00043 IMPLICIT NONE 00044 ! 00045 !* 0.1 Declarations of arguments 00046 ! ------------------------- 00047 ! 00048 CHARACTER(LEN=6), INTENT(IN) :: HPROGRAM ! calling program 00049 ! 00050 REAL, DIMENSION(:), INTENT(INOUT) :: PRAIN ! liquid precipitation (kg/m2/s) 00051 REAL, DIMENSION(:), INTENT(INOUT) :: PSNOW ! snow precipitation (kg/m2/s) 00052 REAL(KIND=JPRB) :: ZHOOK_HANDLE 00053 ! 00054 !* 0.2 Declarations of local variables 00055 ! ------------------------------- 00056 ! 00057 !------------------------------------------------------------------------------- 00058 ! 00059 IF (LHOOK) CALL DR_HOOK('RW_PRECIP_N',0,ZHOOK_HANDLE) 00060 IF(LRW_PRECIP)THEN 00061 IF(LINIT_PRECIP)THEN 00062 PRAIN(:)=XRW_RAIN(:) 00063 PSNOW(:)=XRW_SNOW(:) 00064 LINIT_PRECIP=.FALSE. 00065 ELSE 00066 XRW_RAIN(:)=PRAIN(:) 00067 XRW_SNOW(:)=PSNOW(:) 00068 ENDIF 00069 ENDIF 00070 IF (LHOOK) CALL DR_HOOK('RW_PRECIP_N',1,ZHOOK_HANDLE) 00071 ! 00072 !------------------------------------------------------------------------------- 00073 ! 00074 END SUBROUTINE RW_PRECIP_n