SURFEX v7.3
General documentation of Surfex
|
00001 SUBROUTINE OI_ACSOLW (KST,KNBPT,& 00002 !----------------------------------------------------------------------- 00003 ! - INPUT 1D 00004 PARG,PD2,PWS,PIVEG,PSAB,& 00005 ! - INPUT LOGIQUE 00006 LDHMT,& 00007 ! - OUTPUT 1D . 00008 PWFC,PWPMX,PWSAT,PWSMX,PWWILT) 00009 00010 00011 !**** *ACSOLW * - DETERMINATION DES CONTENUS EN EAU CARACTERISTIQUES DU SOL 00012 00013 ! Sujet. 00014 ! ------ 00015 00016 ! - ROUTINE DE CALCUL INTERMEDIAIRE. 00017 ! DETERMINATION DES CONTENUS EN EAU CARACTERISTIQUES DU SOL. 00018 00019 ! SUR MER (PITM=0. , PIVEG=NTVMER ) 00020 ! wwilt=0. wfc=1. wsat=1. 00021 ! SUR BANQUISE (PITM=1. , PIVEG=NTVGLA*1.1) (MODE CLIMAT SEULEMENT) 00022 ! wwilt=0. wfc=1. wsat=1. 00023 ! SUR GLACIER (PITM=1. , PIVEG=NTVGLA ) 00024 ! wwilt=f1(arg) wfc=f2(arg) wsat=wfc 00025 ! SUR TERRE (PITM=1. , AUTRES PIVEG ) 00026 ! wwilt=f1(arg) wfc=f2(arg) wsat=f3(sab) 00027 00028 !** Interface. 00029 ! ---------- 00030 ! *CALL* *ACSOLW* 00031 00032 !----------------------------------------------------------------------- 00033 ! WARNING: THE ENGLISH VERSION OF VARIABLES' NAMES IS TO BE READ IN THE 00034 ! "APLPAR" CODE. 00035 !----------------------------------------------------------------------- 00036 00037 ! - ARGUMENTS D'ENTREE. 00038 ! ------------------- 00039 00040 ! - NOM DES PARAMETRES DE DIMENSIONNEMENT DE LA PHYSIQUE. 00041 00042 ! KST : INDICE DE DEPART DES BOUCLES VECTORISEES SUR L'HORIZONT.. 00043 ! KNBPT : INDICE DE FIN DES BOUCLES VECTORISEES SUR L'HORIZONTALE. 00044 00045 00046 ! - NOM DES CLES LOGIQUES 00047 00048 ! LDHMT : CALCULS REDUITS (POUR L'ANALYSE OU FULL-POS) 00049 ! SEULS LES TABLEAUX (*) SONT UTILISES/CALCULES EN E/S 00050 00051 ! - NOM DES VARIABLES DE LA PHYSIQUE (PAR ORDRE ALPHABETIQUE DANS CHAQUE 00052 ! CATEGORIE). 00053 00054 ! - 1D (GEOGRAPHIQUE) . 00055 00056 ! PARG (*) : POURCENTAGE D'ARGILE DANS LA MAILLE. 00057 ! PD2 : EPAISSEUR DU RESERVOIR PROFOND. 00058 ! PWS (*) : CONTENU EN EAU SUPERFICIEL (pour identification NATURE) 00059 ! PIVEG : TYPE DE SURFACE (MER, BANQUISE OU GLACIER, TERRE). 00060 ! PSAB : POURCENTAGE DE SABLE DANS LA MAILLE. 00061 00062 !----------------------------------------------------------------------- 00063 00064 ! - ARGUMENTS DE SORTIE. 00065 ! -------------------- 00066 00067 ! - NOM DES VARIABLES DE LA PHYSIQUE (PAR ORDRE ALPHABETIQUE DANS CHAQUE 00068 ! CATEGORIE). 00069 00070 ! - 1D (DIAGNOSTIQUE) . 00071 00072 ! PWFC (*) : TENEUR EN EAU A LA CAPACITE AUX CHAMPS. 00073 ! PWPMX : TENEUR EN EAU MAXIMALE DU RESERVOIR PROFOND. 00074 ! PWSAT : TENEUR EN EAU A LA SATURATION 00075 ! PWSMX : TENEUR EN EAU MAXIMALE DU RESERVOIR DE SURFACE. 00076 ! PWWILT (*) : TENEUR EN EAU CORRESPONDANT AU POINT DE FLETRISSEMENT. 00077 00078 !----------------------------------------------------------------------- 00079 00080 ! - ARGUMENTS IMPLICITES. 00081 ! --------------------- 00082 00083 ! COMMON/YOMPHY1/ 00084 ! the common that contains the parameters for the land surface part of the 00085 ! physics of the model 00086 !----------------------------------------------------------------------- 00087 00088 ! Externes. 00089 ! --------- 00090 00091 ! Methode. 00092 ! -------- 00093 00094 ! Auteur. 00095 ! ------- 00096 ! 99-02, D. Giard, d'apres ACSOL 00097 00098 ! Modifications. 00099 ! -------------- 00100 !----------------------------------------------------------------------- 00101 ! 00102 ! 00103 USE MODD_ASSIM, ONLY : NTVGLA, G1WSAT, G2WSAT, EWFC, GWFC, EWWILT, GWWILT, RD1, REPS2 00104 USE MODD_CSTS, ONLY : XRHOLW 00105 USE MODD_SURF_PAR, ONLY : XUNDEF 00106 ! 00107 USE YOMHOOK ,ONLY : LHOOK, DR_HOOK 00108 USE PARKIND1 ,ONLY : JPRB 00109 ! 00110 IMPLICIT NONE 00111 ! 00112 INTEGER :: KNBPT, KST 00113 INTEGER :: JROF 00114 ! 00115 REAL ,INTENT(IN) :: PARG(KNBPT) 00116 REAL ,INTENT(IN) :: PD2(KNBPT) 00117 REAL ,INTENT(IN) :: PWS(KNBPT) 00118 REAL ,INTENT(IN) :: PIVEG(KNBPT) 00119 REAL ,INTENT(IN) :: PSAB(KNBPT) 00120 ! 00121 REAL ,INTENT(OUT) :: PWFC(KNBPT) 00122 REAL ,INTENT(OUT) :: PWPMX(KNBPT) 00123 REAL ,INTENT(OUT) :: PWSAT(KNBPT) 00124 REAL ,INTENT(OUT) :: PWSMX(KNBPT) 00125 REAL ,INTENT(OUT) :: PWWILT(KNBPT) 00126 ! 00127 REAL :: ZARG, ZSAB 00128 ! 00129 LOGICAL :: LDHMT 00130 REAL(KIND=JPRB) :: ZHOOK_HANDLE 00131 ! 00132 ! ** initialization of the parameters of the land surface part of 00133 ! ** the physics of the model 00134 ! 00135 ! ------------------------------------------------------------------ 00136 ! I - CALCULS REDUITS DANS LE CAS LDHMT=.TRUE. 00137 ! ---------------------------------------- 00138 ! REDUCED COMPUTATIONS IN CASE LDHMT=.T. 00139 ! -------------------------------------- 00140 ! 00141 ! ** WFC , WWILT ** 00142 ! 00143 IF (LHOOK) CALL DR_HOOK('OI_ACSOLW',0,ZHOOK_HANDLE) 00144 DO JROF=KST,KNBPT 00145 IF ( PWS(JROF) == XUNDEF ) THEN 00146 PWWILT(JROF) = 0.0 00147 PWFC (JROF) = 1.0 00148 ELSE 00149 ZARG = MAX(REPS2,PARG(JROF)) 00150 PWWILT(JROF) = GWWILT*(ZARG**EWWILT) 00151 PWFC (JROF) = GWFC*(ZARG**EWFC) 00152 ENDIF 00153 ENDDO 00154 ! 00155 IF (LDHMT .AND. LHOOK) CALL DR_HOOK('OI_ACSOLW',1,ZHOOK_HANDLE) 00156 IF (LDHMT) RETURN 00157 ! 00158 ! ------------------------------------------------------------------ 00159 ! II - CALCUL DES AUTRES CHAMPS 00160 ! ------------------------ 00161 ! COMPUTING OTHER FIELDS 00162 ! ---------------------- 00163 ! 00164 DO JROF=KST,KNBPT 00165 ! 00166 ! ** CAS DE LA BANQUISE EN MODE CLIMAT - SEA-ICE - (CLIMAT) ** 00167 ! 00168 IF ( NINT(10.*PIVEG(JROF)) == (10*NTVGLA+1) ) THEN 00169 PWWILT(JROF) = 0.0 00170 PWFC (JROF) = 1.0 00171 ENDIF 00172 ! 00173 ! ** WSAT ** 00174 ! 00175 IF ( PWS(JROF) == XUNDEF .OR. NINT(PIVEG(JROF))==NTVGLA ) THEN 00176 PWSAT(JROF) = PWFC(JROF) 00177 ELSE 00178 ZSAB = MAX(REPS2,PSAB(JROF)) 00179 PWSAT(JROF) = G1WSAT*ZSAB+G2WSAT 00180 ENDIF 00181 ! 00182 ! ** WSMX , WPMX ** 00183 ! 00184 PWPMX(JROF) = PWSAT(JROF)*PD2(JROF)*XRHOLW 00185 PWSMX(JROF) = PWSAT(JROF)*RD1*XRHOLW 00186 ! 00187 ENDDO 00188 IF (LHOOK) CALL DR_HOOK('OI_ACSOLW',1,ZHOOK_HANDLE) 00189 END SUBROUTINE OI_ACSOLW