[2089] | 1 | subroutine PHY_SISVAT_INP(FlagSV_SBC,TsHOST,kcolq) |
---|
| 2 | |
---|
| 3 | !------------------------------------------------------------------------------+ |
---|
| 4 | ! Mon 1-Jul-2013 MAR | |
---|
| 5 | ! SubRoutine PHY_SISVAT_INP initializes | |
---|
| 6 | ! SISVAT (Soil | |
---|
| 7 | ! Ice | |
---|
| 8 | ! Snow | |
---|
| 9 | ! Vegetation | |
---|
| 10 | ! Atmosphere | |
---|
| 11 | ! Transfer Scheme) | |
---|
| 12 | ! | |
---|
| 13 | ! USING DATA | |
---|
| 14 | ! | |
---|
| 15 | ! Here DATA are academic | |
---|
| 16 | ! | |
---|
| 17 | ! version 3.p.4.1 created by H. Gallee, Wed 1-May-2013 | |
---|
| 18 | ! Last Modification by H. Gallee, Mon 1-Jul-2013 | |
---|
| 19 | ! | |
---|
| 20 | !------------------------------------------------------------------------------+ |
---|
| 21 | |
---|
| 22 | |
---|
| 23 | ! Global Variables |
---|
| 24 | ! ================= |
---|
| 25 | |
---|
| 26 | use Mod_Real |
---|
| 27 | use Mod_PHY____grd |
---|
| 28 | use Mod_PHY____dat |
---|
| 29 | use Mod_SISVAT_dat |
---|
| 30 | use Mod_SISVAT_grd |
---|
| 31 | use Mod_SISVAT_kkl |
---|
| 32 | use Mod_SISVAT_gpt |
---|
| 33 | |
---|
| 34 | |
---|
| 35 | IMPLICIT NONE |
---|
| 36 | |
---|
| 37 | |
---|
| 38 | logical :: FlagSV_SBC ! DATA Surface Flag |
---|
| 39 | integer :: kcolq ! |
---|
| 40 | real(kind=real8), dimension(kcolq) :: TsHOST ! (Initial) Surface Temperature [K] |
---|
| 41 | |
---|
| 42 | |
---|
| 43 | |
---|
| 44 | |
---|
| 45 | ! Local Variables |
---|
| 46 | ! ================= |
---|
| 47 | |
---|
| 48 | ! FOR INPUT |
---|
| 49 | ! --------- |
---|
| 50 | |
---|
| 51 | ! integer ,ALLOCATABLE ,dimension(:,:,:) :: Mask___xyn ! Land(1)-Sea(0) Mask (Mosaic) [-] |
---|
| 52 | ! real(kind=real8),ALLOCATABLE ,dimension(:,:,:) :: Frac___xyn ! Grid Cell Fraction (Mosaic) [-] |
---|
| 53 | ! integer ,ALLOCATABLE ,dimension(:,:,:) :: iVgT___xyn ! Vegetat. Type (Mosaic) [-] |
---|
| 54 | ! integer ,ALLOCATABLE ,dimension(:,:,:) :: iSoT___xyn ! Soil Type (Mosaic) [-] |
---|
| 55 | ! integer ,ALLOCATABLE ,dimension(:,:,:) :: iDra___xyn ! Soil Drainage Switch (Mosaic) [-] |
---|
| 56 | ! real(kind=real8),ALLOCATABLE ,dimension(:,:,:) :: Albs___xyn ! Dry Soil Albedo (Mosaic) [-] |
---|
| 57 | ! real(kind=real8),ALLOCATABLE ,dimension(:,:,:) :: LAI____xyn ! Leaf Area Index (Mosaic) [m2/m2] |
---|
| 58 | ! real(kind=real8),ALLOCATABLE ,dimension(:,:,:) :: GLF____xyn ! Green Leaf Fraction (Mosaic) [-] |
---|
| 59 | |
---|
| 60 | |
---|
| 61 | |
---|
| 62 | ! FOR INPUT/OUTPUT (RESTART) |
---|
| 63 | ! ---------------- |
---|
| 64 | |
---|
| 65 | ! real(kind=real8),ALLOCATABLE ,dimension(:,:,:) :: FSbz___xyn ! Fallen Snow Buffer (Mosaic) [mm w.e.] |
---|
| 66 | ! real(kind=real8),ALLOCATABLE ,dimension(:,:,:) :: Tveg___xyn ! Vegetation Temperature (Mosaic) [K] |
---|
| 67 | ! real(kind=real8),ALLOCATABLE ,dimension(:,:,:) :: Sveg___xyn ! Canopy intercepted Snow (Mosaic) [mm w.e.] |
---|
| 68 | ! real(kind=real8),ALLOCATABLE ,dimension(:,:,:) :: Rveg___xyn ! Canopy intercepted Rain (Mosaic) [mm w.e.] |
---|
| 69 | ! real(kind=real8),ALLOCATABLE ,dimension(:,:,:) :: pveg___xyn ! Vegetation Water Potential (Mosaic) [m] |
---|
| 70 | |
---|
| 71 | ! real(kind=real8),ALLOCATABLE ,dimension(:,:,:) :: z0_____xyn ! Roughness Length Momentum (Mosaic) [m] |
---|
| 72 | ! real(kind=real8),ALLOCATABLE ,dimension(:,:,:) :: z0ro___xyn ! Orographic Roughness Length (Mosaic) [m] |
---|
| 73 | ! real(kind=real8),ALLOCATABLE ,dimension(:,:,:) :: r0_____xyn ! Roughness Length Scalars (Mosaic) [m] |
---|
| 74 | ! real(kind=real8),ALLOCATABLE ,dimension(:,:,:) :: uss____xyn ! Blown Snow Flux Turbulent Scale [kg/kg m/s] |
---|
| 75 | ! real(kind=real8),ALLOCATABLE ,dimension(:,:,:) :: uds____xyn ! Blown Dust Flux Turbulent Scale [kg/kg m/s] |
---|
| 76 | ! real(kind=real8),ALLOCATABLE ,dimension(:,:,:) :: BSbz___xyn ! Eroded Snow Buffer (Mosaic) [mm w.e.] |
---|
| 77 | ! #AE real(kind=real8),ALLOCATABLE ,dimension(:,:) :: usth___xyn ! Friction Velocity Saltation Threshold [m/s] |
---|
| 78 | |
---|
| 79 | ! real(kind=real8),ALLOCATABLE ,dimension(:,:,:) :: Alb____xyn ! Surface Albedo (Mosaic) [-] |
---|
| 80 | ! integer ,ALLOCATABLE ,dimension(:,:,:) :: SNnb___xyn ! Nb of Snow Layers (Mosaic) [-] |
---|
| 81 | ! integer ,ALLOCATABLE ,dimension(:,:,:) :: SInb___xyn ! Nb of S.Ice Layers (Mosaic) [-] |
---|
| 82 | ! integer ,ALLOCATABLE ,dimension(:,:,:) :: ICnb___xyn ! Nb of Ice Layers (Mosaic) [-] |
---|
| 83 | |
---|
| 84 | ! real(kind=real8),ALLOCATABLE ,dimension(:,:,:) :: SnWE___xyn ! Snow Pack Thickness (Mosaic) [mm w.e.] |
---|
| 85 | |
---|
| 86 | ! real(kind=real8),ALLOCATABLE ,dimension(:,:,:) :: wes____xyn ! Sublimation Budget (Mosaic) [mm w.e.] |
---|
| 87 | ! real(kind=real8),ALLOCATABLE ,dimension(:,:,:) :: wer____xyn ! Melting Budget (Mosaic) [mm w.e.] |
---|
| 88 | ! real(kind=real8),ALLOCATABLE ,dimension(:,:,:) :: wem____xyn ! Refreezing Budget (Mosaic) [mm w.e.] |
---|
| 89 | ! real(kind=real8),ALLOCATABLE ,dimension(:,:,:) :: wee____xyn ! Evapotranspiration Budget (Mosaic) [mm w.e.] |
---|
| 90 | |
---|
| 91 | ! real(kind=real8),ALLOCATABLE ,dimension(:,:,:,:):: Tsis__dxyn ! Soil-Ice-Snow Temperature (Mosaic) [K] |
---|
| 92 | ! real(kind=real8),ALLOCATABLE ,dimension(:,:,:,:):: Qsis__dxyn ! Soil-Ice-Snow Humidity (Mosaic) [kg/kg] |
---|
| 93 | ! real(kind=real8),ALLOCATABLE ,dimension(:,:,:,:):: SNdz__dxyn ! Snow Layer Thickness (Mosaic) [m] |
---|
| 94 | ! real(kind=real8),ALLOCATABLE ,dimension(:,:,:,:):: SNro__dxyn ! Snow Layer Density (Mosaic) [kg/m3] |
---|
| 95 | ! real(kind=real8),ALLOCATABLE ,dimension(:,:,:,:):: SNag__dxyn ! Snow Layer Age (Mosaic) [day] |
---|
| 96 | ! real(kind=real8),ALLOCATABLE ,dimension(:,:,:,:):: SNg1__dxyn ! Snow Layer Property (d./s.)(Mosaic) [-] |
---|
| 97 | ! real(kind=real8),ALLOCATABLE ,dimension(:,:,:,:):: SNg2__dxyn ! Snow Layer Property (s./s.)(Mosaic) [-] |
---|
| 98 | ! integer ,ALLOCATABLE ,dimension(:,:,:,:):: SNhi__dxyn ! Snow Layer History (Mosaic) [-] |
---|
| 99 | |
---|
| 100 | ! real(kind=real8),ALLOCATABLE ,dimension(:,:,:) :: SWz____xyn ! Surficial Water Mass (Mosaic) [mm w.e.] |
---|
| 101 | ! real(kind=real8),ALLOCATABLE ,dimension(:,:,:) :: SWx____xyn ! Surficial Water Status (Mosaic) [0,1=m,f] |
---|
| 102 | ! real(kind=real8),ALLOCATABLE ,dimension(:,:,:) :: SWHy___xyn ! Surficial Water: Normaliz.Decay (Mosaic) [-] |
---|
| 103 | ! real(kind=real8),ALLOCATABLE ,dimension(:,:,:) :: ROdt___xyn ! Run-Off Intensity (Mosaic) [mm w.e./s] |
---|
| 104 | ! real(kind=real8),ALLOCATABLE ,dimension(:,:,:) :: ROF____xyn ! Cumulative Run-Off (Mosaic) [mm w.e.] |
---|
| 105 | |
---|
| 106 | |
---|
| 107 | ! A-O Coupling |
---|
| 108 | ! ------------ |
---|
| 109 | |
---|
| 110 | ! real(kind=real8),ALLOCATABLE ,dimension(:,:,:) :: Alb_AO_xyn ! Ocean COUPLING (Surface Albedo) n=2 sea-ice [-] |
---|
| 111 | ! real(kind=real8),ALLOCATABLE ,dimension(:,:,:) :: s_T_AO_xyn ! Ocean COUPLING (SST) n=1 opn-watr [K] |
---|
| 112 | ! real(kind=real8),ALLOCATABLE ,dimension(:,:,:) :: dSdTAO_xyn ! Ocean COUPLING (d(SH Flux) / dT) [W/m2/K] |
---|
| 113 | ! real(kind=real8),ALLOCATABLE ,dimension(:,:,:) :: dLdTAO_xyn ! Ocean COUPLING (d(LH Flux) / dT) [W/m2/K] |
---|
| 114 | |
---|
| 115 | |
---|
| 116 | ! Dummy |
---|
| 117 | ! ----- |
---|
| 118 | |
---|
| 119 | integer :: i ,j ,n ,l ,nm ,ikp |
---|
| 120 | |
---|
| 121 | |
---|
| 122 | |
---|
| 123 | |
---|
| 124 | |
---|
| 125 | |
---|
| 126 | !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! |
---|
| 127 | ! ! |
---|
| 128 | ! NON ACADEMIC INITIALIZATION ! |
---|
| 129 | ! ! |
---|
| 130 | IF (FlagSV_SBC) THEN |
---|
| 131 | ! ! |
---|
| 132 | !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! |
---|
| 133 | |
---|
| 134 | |
---|
| 135 | |
---|
| 136 | |
---|
| 137 | ! +++++++++++++++++++++++++++++++++++++++++++++++++++++ |
---|
| 138 | ! INITIALIZATION of a non-1D case, by using INPUT Files |
---|
| 139 | ! (HERE FROM NESTOR) |
---|
| 140 | |
---|
| 141 | ! Martin CONTROL |
---|
| 142 | Print*,'mxpp=',mxpp |
---|
| 143 | Print*,'mypp=',mypp |
---|
| 144 | Print*,'ixp1=',ixp1 |
---|
| 145 | Print*,'jyp1=',jyp1 |
---|
| 146 | |
---|
| 147 | IF (mxpp-ixp1.GT.0 .OR. mypp-jyp1.GT.0) THEN |
---|
| 148 | ! +++++++++++++++++++++++++++++++++++++++++++++++++++++ |
---|
| 149 | |
---|
| 150 | |
---|
| 151 | |
---|
| 152 | |
---|
| 153 | ! ================================ |
---|
| 154 | ! FIRST INITIALIZATION (BEGIN) |
---|
| 155 | |
---|
| 156 | IF (it_EXP .LE. 1) THEN |
---|
| 157 | ! ================================ |
---|
| 158 | |
---|
| 159 | |
---|
| 160 | ! ================================ |
---|
| 161 | END IF ! (it_EXP .LE. 1) |
---|
| 162 | |
---|
| 163 | ! FIRST INITIALIZATION (END) |
---|
| 164 | ! ================================ |
---|
| 165 | |
---|
| 166 | |
---|
| 167 | |
---|
| 168 | |
---|
| 169 | ! Update Sea-Ice Fraction |
---|
| 170 | ! ========================== |
---|
| 171 | |
---|
| 172 | ! #IP IF ( inpSBC ) THEN |
---|
| 173 | |
---|
| 174 | ! ****** |
---|
| 175 | ! #IP call INIsic(newsicSI ) ! ATTENTION 2 premiers Arguments supprimés |
---|
| 176 | ! ****** |
---|
| 177 | |
---|
| 178 | ! #IP END IF |
---|
| 179 | |
---|
| 180 | |
---|
| 181 | |
---|
| 182 | |
---|
| 183 | ! Update LAI and/or Green Leaf Fraction |
---|
| 184 | ! ===================================== |
---|
| 185 | |
---|
| 186 | ! #GP glfFIX = .true. |
---|
| 187 | ! #CM IF (vegmod .AND. inpSBC .AND. .NOT. glfFIX) THEN |
---|
| 188 | |
---|
| 189 | ! ****** |
---|
| 190 | ! #CM call INIglf(newglfSIS) ! ATTENTION 2 premiers Arguments supprimés |
---|
| 191 | ! ****** |
---|
| 192 | |
---|
| 193 | ! #CM END IF |
---|
| 194 | |
---|
| 195 | |
---|
| 196 | |
---|
| 197 | |
---|
| 198 | |
---|
| 199 | |
---|
| 200 | ! +++++++++++++++++++++++++++++++++++++++++++++++++++++ |
---|
| 201 | ! INITIALIZATION of a 1D case, by prescribing INPUT |
---|
| 202 | |
---|
| 203 | ELSE |
---|
| 204 | ! +++++++++++++++++++++++++++++++++++++++++++++++++++++ |
---|
| 205 | |
---|
| 206 | |
---|
| 207 | |
---|
| 208 | |
---|
| 209 | ! ================================ |
---|
| 210 | ! FIRST INITIALIZATION (BEGIN) |
---|
| 211 | |
---|
| 212 | IF (it_EXP .LE. 1) THEN |
---|
| 213 | ! ================================ |
---|
| 214 | |
---|
| 215 | |
---|
| 216 | |
---|
| 217 | ! ALLOCATION |
---|
| 218 | ! ========== |
---|
| 219 | |
---|
| 220 | ! FOR INPUT |
---|
| 221 | ! --------- |
---|
| 222 | |
---|
| 223 | ! allocate ( Mask___xyn(ixp1:mxpp,jyp1:mypp,mwp) ) ! Land(1)-Sea(0) Mask (Mosaic) [-] |
---|
| 224 | ! allocate ( Frac___xyn(ixp1:mxpp,jyp1:mypp,mwp) ) ! Grid Cell Fraction (Mosaic) [-] |
---|
| 225 | ! allocate ( iVgT___xyn(ixp1:mxpp,jyp1:mypp,mwp) ) ! Vegetat. Type (Mosaic) [-] |
---|
| 226 | ! allocate ( iSoT___xyn(ixp1:mxpp,jyp1:mypp,mwp) ) ! Soil Type (Mosaic) [-] |
---|
| 227 | ! allocate ( iDra___xyn(ixp1:mxpp,jyp1:mypp,mwp) ) ! Soil Drainage Switch (Mosaic) [-] |
---|
| 228 | ! allocate ( Albs___xyn(ixp1:mxpp,jyp1:mypp,mwp) ) ! Dry Soil Albedo (Mosaic) [-] |
---|
| 229 | ! allocate ( LAI____xyn(ixp1:mxpp,jyp1:mypp,mwp) ) ! Leaf Area Index (Mosaic) [m2/m2] |
---|
| 230 | ! allocate ( GLF____xyn(ixp1:mxpp,jyp1:mypp,mwp) ) ! Green Leaf Fraction (Mosaic) [-] |
---|
| 231 | |
---|
| 232 | |
---|
| 233 | ! FOR INPUT/OUTPUT (RESTART) |
---|
| 234 | ! ---------------- |
---|
| 235 | |
---|
| 236 | ! allocate ( FSbz___xyn(ixp1:mxpp,jyp1:mypp,mwp) ) ! Fallen Snow Buffer (Mosaic) [mm w.e.] |
---|
| 237 | ! allocate ( Tveg___xyn(ixp1:mxpp,jyp1:mypp,mwp) ) ! Vegetation Temperature (Mosaic) [K] |
---|
| 238 | ! allocate ( Sveg___xyn(ixp1:mxpp,jyp1:mypp,mwp) ) ! Canopy intercepted Snow (Mosaic) [mm w.e.] |
---|
| 239 | ! allocate ( Rveg___xyn(ixp1:mxpp,jyp1:mypp,mwp) ) ! Canopy intercepted Water (Mosaic) [mm w.e.] |
---|
| 240 | ! allocate ( pveg___xyn(ixp1:mxpp,jyp1:mypp,mwp) ) ! Vegetation Water Potential (Mosaic) [m] |
---|
| 241 | |
---|
| 242 | ! allocate ( z0_____xyn(ixp1:mxpp,jyp1:mypp,mwp) ) ! Roughness Length Momentum (Mosaic) [m] |
---|
| 243 | ! allocate ( z0ro___xyn(ixp1:mxpp,jyp1:mypp,mwp) ) ! z0(Orographic) [m] |
---|
| 244 | ! allocate ( r0_____xyn(ixp1:mxpp,jyp1:mypp,mwp) ) ! Roughness Length Scalars (Mosaic) [m] |
---|
| 245 | ! allocate ( uss____xyn(ixp1:mxpp,jyp1:mypp,mwp) ) ! Blown Snow Flux Turbulent Scale [kg/kg m/s] |
---|
| 246 | ! allocate ( BSbz___xyn(ixp1:mxpp,jyp1:mypp,mwp) ) ! Eroded Snow Buffer (Mosaic) [mm w.e.] |
---|
| 247 | ! #AE allocate ( usth___xyn(ixp1:mxpp,jyp1:mypp,mwp) ) ! Friction Velocity Saltation Threshold [m/s] |
---|
| 248 | |
---|
| 249 | ! allocate ( Alb____xyn(ixp1:mxpp,jyp1:mypp,mwp) ) ! Surface Albedo (Mosaic) [-] |
---|
| 250 | ! allocate ( SNnb___xyn(ixp1:mxpp,jyp1:mypp,mwp) ) ! Nb of Snow Layers (Mosaic) [-] |
---|
| 251 | ! allocate ( SInb___xyn(ixp1:mxpp,jyp1:mypp,mwp) ) ! Nb of S.Ice Layers (Mosaic) [-] |
---|
| 252 | ! allocate ( ICnb___xyn(ixp1:mxpp,jyp1:mypp,mwp) ) ! Nb of Ice Layers (Mosaic) [-] |
---|
| 253 | |
---|
| 254 | ! allocate ( SnWE___xyn(ixp1:mxpp,jyp1:mypp,mwp) ) ! Snow Pack Thickness (Mosaic) [mm w.e.] |
---|
| 255 | |
---|
| 256 | ! allocate ( wes____xyn(ixp1:mxpp,jyp1:mypp,mwp) ) ! Sublimation Budget (Mosaic) [mm w.e.] |
---|
| 257 | ! allocate ( wer____xyn(ixp1:mxpp,jyp1:mypp,mwp) ) ! Melting Budget (Mosaic) [mm w.e.] |
---|
| 258 | ! allocate ( wem____xyn(ixp1:mxpp,jyp1:mypp,mwp) ) ! Refreezing Budget (Mosaic) [mm w.e.] |
---|
| 259 | ! allocate ( wee____xyn(ixp1:mxpp,jyp1:mypp,mwp) ) ! Evapotranspiration Budget (Mosaic) [mm w.e.] |
---|
| 260 | |
---|
| 261 | ! allocate ( Tsis__dxyn(ixp1:mxpp,jyp1:mypp,mwp,-nsoil:nsnow) ) |
---|
| 262 | ! ! Soil-Ice-Snow Temperature (Mosaic) [K] |
---|
| 263 | ! allocate ( Qsis__dxyn(ixp1:mxpp,jyp1:mypp,mwp,-nsoil:nsnow) ) |
---|
| 264 | ! ! Soil-Ice-Snow Humidity (Mosaic) [kg/kg] |
---|
| 265 | ! allocate ( SNdz__dxyn(ixp1:mxpp,jyp1:mypp,mwp,nsnow) ) ! Snow Layer Thickness (Mosaic) [m] |
---|
| 266 | ! allocate ( SNro__dxyn(ixp1:mxpp,jyp1:mypp,mwp,nsnow) ) ! Snow Layer Density (Mosaic) [kg/m3] |
---|
| 267 | ! allocate ( SNag__dxyn(ixp1:mxpp,jyp1:mypp,mwp,nsnow) ) ! Snow Layer Age (Mosaic) [day] |
---|
| 268 | ! allocate ( SNg1__dxyn(ixp1:mxpp,jyp1:mypp,mwp,nsnow) ) ! Snow Layer Property (d./s.)(Mosaic) [-] |
---|
| 269 | ! allocate ( SNg2__dxyn(ixp1:mxpp,jyp1:mypp,mwp,nsnow) ) ! Snow Layer Property (s./s.)(Mosaic) [-] |
---|
| 270 | ! allocate ( SNhi__dxyn(ixp1:mxpp,jyp1:mypp,mwp,nsnow) ) ! Snow Layer History (Mosaic) [-] |
---|
| 271 | |
---|
| 272 | ! allocate ( SWz____xyn(ixp1:mxpp,jyp1:mypp,mwp) ) ! Surficial Water Mass (Mosaic) [mm w.e.] |
---|
| 273 | ! allocate ( SWx____xyn(ixp1:mxpp,jyp1:mypp,mwp) ) ! Surficial Water Status (Mosaic) [0,1=m,f] |
---|
| 274 | ! allocate ( SWHy___xyn(ixp1:mxpp,jyp1:mypp,mwp) ) ! Normalized Decay of Surficial Water Content [-] |
---|
| 275 | ! allocate ( ROdt___xyn(ixp1:mxpp,jyp1:mypp,mwp) ) ! Run-Off Intensity (Mosaic) [mm w.e./s] |
---|
| 276 | ! allocate ( ROF____xyn(ixp1:mxpp,jyp1:mypp,mwp) ) ! Cumulative Run-Off (Mosaic) [mm w.e.] |
---|
| 277 | |
---|
| 278 | |
---|
| 279 | ! A-O Coupling |
---|
| 280 | ! ------------ |
---|
| 281 | |
---|
| 282 | ! allocate ( Alb_AO_xyn(ixp1:mxpp,jyp1:mypp,mwp) ) ! Ocean COUPLING (Surface Albedo) n=2 sea-ice [-] |
---|
| 283 | ! allocate ( Alb_AO_xyn(ixp1:mxpp,jyp1:mypp,mwp) ) ! Ocean COUPLING (Surface Albedo) n=2 sea-ice [-] |
---|
| 284 | ! allocate ( dSdTAO_xyn(ixp1:mxpp,jyp1:mypp,mwp) ) ! Ocean COUPLING (d(SH Flux) / dT) [W/m2/K] |
---|
| 285 | ! allocate ( dLdTAO_xyn(ixp1:mxpp,jyp1:mypp,mwp) ) ! Ocean COUPLING (d(LH Flux) / dT) [W/m2/K] |
---|
| 286 | |
---|
| 287 | |
---|
| 288 | ! Martin CONTROL |
---|
| 289 | PRINT*,'On initialise des paramètres en dur dans PHY_SISVAT_INP' |
---|
| 290 | |
---|
| 291 | ! ------------------------------------------ |
---|
| 292 | ! From 2-D Horizontal to 1-D Horizontal Grid |
---|
| 293 | ! ------------------------------------------ |
---|
| 294 | |
---|
| 295 | DO ikp=1,kcolp |
---|
| 296 | i = ii__AP(ikp) |
---|
| 297 | j = jj__AP(ikp) |
---|
| 298 | |
---|
| 299 | |
---|
| 300 | !MaskSV_gpt(ikp) = 1 ! Land(1)-Sea(0) Mask (Grid Cell) [-] |
---|
| 301 | ! Martin : aquaplanète |
---|
| 302 | MaskSV_gpt(ikp) = 0 ! Land(1)-Sea(0) Mask (Grid Cell) [-] |
---|
| 303 | |
---|
| 304 | DO n=1,mwp |
---|
| 305 | ! Mask___xyn(i,j,n) = 1 ! Land(1)-Sea(0) Mask (Mosaic) [-] |
---|
| 306 | !LSmask (ikp,n) = 1 ! Land(1)-Sea(0) Mask (Mosaic) [-] |
---|
| 307 | LSmask (ikp,n) = 0 ! Land(1)-Sea(0) Mask (Mosaic) [-] |
---|
| 308 | |
---|
| 309 | SlopSV (ikp,n) = 0.0 ! Assignation of Slope to a Particular Value |
---|
| 310 | |
---|
| 311 | ! Frac___xyn(i,j,n) = 1.0/float(mwp) ! Grid Cell Fraction (Mosaic) [-] |
---|
| 312 | FracSV (ikp,n) = 1.0/float(mwp) ! Grid Cell Fraction (Mosaic) [-] |
---|
| 313 | |
---|
| 314 | ! z0_____xyn(i,j,n) = 1.e-6 ! Roughness Length Momentum (Mosaic) [m] |
---|
| 315 | !z0__SV (ikp,n) = 1.e-6 ! Roughness Length Momentum (Mosaic) [m] |
---|
| 316 | z0__SV (ikp,n) = 1.e-3 ! Roughness Length Momentum (Mosaic) [m] |
---|
| 317 | ! (Sensitive if non-zero Orographic Roughness) |
---|
| 318 | ! r0_____xyn(i,j,n) = 1.e-6 ! Roughness Length Scalars (Mosaic) [m] |
---|
| 319 | !Z0h_SV (ikp,n) = 1.e-6 ! Roughness Length Scalars (Mosaic) [m] |
---|
| 320 | Z0h_SV (ikp,n) = 1.e-3 ! Roughness Length Scalars (Mosaic) [m] |
---|
| 321 | |
---|
| 322 | |
---|
| 323 | ! Soil and Vegetation |
---|
| 324 | ! ------------------- |
---|
| 325 | |
---|
| 326 | ! iVgT___xyn(i,j,n) = 5 ! Vegetat. Type (Mosaic) [-] (Sensitive) |
---|
| 327 | iVgTSV (ikp,n) = 0 ! Vegetat. Type (Mosaic) [-] (Sensitive) |
---|
| 328 | ! iSoT___xyn(i,j,n) = 5 ! Soil Type (Mosaic) [-] |
---|
| 329 | iSoTSV (ikp,n) = 0 ! Soil Type (Mosaic) [-] |
---|
| 330 | ! iDra___xyn(i,j,n) = 1 ! Soil Drainage Switch (Mosaic) [-] |
---|
| 331 | iWaFSV (ikp,n) = 1 ! Soil Drainage Switch (Mosaic) [-] |
---|
| 332 | ! Albs___xyn(i,j,n) = 0.15 ! Dry Soil Albedo (Mosaic) [-] |
---|
| 333 | alb0SV (ikp,n) = 0.15 ! Dry Soil Albedo (Mosaic) [-] |
---|
| 334 | ! LAI0SV (ikp,n) = LAI____xyn(i,j,n) ! LAI |
---|
| 335 | ! glf0SV (ikp,n) = GLF____xyn(i,j,n) ! Green Leaf Frac. |
---|
| 336 | |
---|
| 337 | |
---|
| 338 | ! Snow Pack Initialization: NO Snow Pack |
---|
| 339 | ! -------------------------------------- |
---|
| 340 | |
---|
| 341 | ! SNnb___xyn(i,j,n) = 0 ! Nb of Snow Layers (Mosaic) [-] (Sensitive, maybe) |
---|
| 342 | isnoSV (ikp,n) = 0 ! Nb of Snow Layers (Mosaic) [-] (Sensitive, maybe) |
---|
| 343 | ! SInb___xyn(i,j,n) = 0 ! Nb of S.Ice Layers (Mosaic) [-] |
---|
| 344 | ispiSV (ikp,n) = 0 ! Nb of S.Ice Layers (Mosaic) [-] |
---|
| 345 | ! ICnb___xyn(i,j,n) = 0 ! Nb of Ice Layers (Mosaic) [-] (Sensitive, maybe) |
---|
| 346 | iiceSV (ikp,n) = 0 ! Nb of Ice Layers (Mosaic) [-] (Sensitive, maybe) |
---|
| 347 | |
---|
| 348 | DO l=-nsol,0 |
---|
| 349 | ! Tsis__dxyn(i,j,n,l) = TsHOST(ikp) ! Soil-Ice-Snow Temperature (Mosaic) [K] |
---|
| 350 | ! TsisSV (ikp,n,l) = Tsis__dxyn(i,j,n,l) ! |
---|
| 351 | TsisSV (ikp,n,l) = TsHOST(ikp) ! |
---|
| 352 | ! Qsis__dxyn(i,j,n,l) = &! Humidity (Mosaic) [kg/kg] |
---|
| 353 | ! & etadSV(iVgTSV(ikp,n)) ! (Saturation is assumed) |
---|
| 354 | ! eta_SV (ikp,n,l) = Qsis__dxyn(i,j,n,l) ! |
---|
| 355 | eta_SV (ikp,n,l) = &! |
---|
| 356 | & etadSV(iVgTSV(ikp,n)) ! |
---|
| 357 | ENDDO |
---|
| 358 | |
---|
| 359 | DO l=1,nsno |
---|
| 360 | ! Tsis__dxyn(i,j,n,l) = 273.15 ! Soil-Ice-Snow Temperature (Mosaic) [K] |
---|
| 361 | ! TsisSV (ikp,n,l) = Tsis__dxyn(i,j,n,l) ! |
---|
| 362 | TsisSV (ikp,n,l) = 273.15 ! |
---|
| 363 | ! Qsis__dxyn(i,j,n,l) = 0.00 ! Soil-Ice-Snow Humidity (Mosaic) [kg/kg] |
---|
| 364 | ! eta_SV (ikp,n,l) = Qsis__dxyn(i,j,n,l) ! |
---|
| 365 | eta_SV (ikp,n,l) = 0.00 ! |
---|
| 366 | ! SNdz__dxyn(i,j,n,l) = 0.00 ! Snow Layer Thickness (Mosaic) [m] |
---|
| 367 | ! dzsnSV (ikp,n,l) = SNdz__dxyn(i,j,n,l) ! |
---|
| 368 | dzsnSV (ikp,n,l) = 0.00 ! |
---|
| 369 | ! SNro__dxyn(i,j,n,l) = 0.00 ! Snow Layer Density (Mosaic) [kg/m3] |
---|
| 370 | ! ro__SV (ikp,n,l) = SNro__dxyn(i,j,n,l) ! |
---|
| 371 | ro__SV (ikp,n,l) = 0.00 ! |
---|
| 372 | ! SNag__dxyn(i,j,n,l) = 0.00 ! Snow Layer Age (Mosaic) [day] |
---|
| 373 | ! agsnSV (ikp,n,l) = SNag__dxyn(i,j,n,l) ! |
---|
| 374 | agsnSV (ikp,n,l) = 0.00 ! |
---|
| 375 | ! SNg1__dxyn(i,j,n,l) = 0.00 ! Snow Layer Property (d./s.)(Mosaic) [-] |
---|
| 376 | ! G1snSV (ikp,n,l) = SNg1__dxyn(i,j,n,l) ! |
---|
| 377 | G1snSV (ikp,n,l) = 0.00 ! |
---|
| 378 | ! SNg2__dxyn(i,j,n,l) = 0.00 ! Snow Layer Property (s./s.)(Mosaic) [-] |
---|
| 379 | ! G2snSV (ikp,n,l) = SNg2__dxyn(i,j,n,l) ! |
---|
| 380 | G2snSV (ikp,n,l) = 0.00 ! |
---|
| 381 | ! SNhi__dxyn(i,j,n,l) = 0 ! Snow Layer History (Mosaic) |
---|
| 382 | ! istoSV (ikp,n,l) = SNhi__dxyn(i,j,n,l) ! |
---|
| 383 | istoSV (ikp,n,l) = 0 ! |
---|
| 384 | ENDDO |
---|
| 385 | |
---|
| 386 | ENDDO |
---|
| 387 | ENDDO |
---|
| 388 | |
---|
| 389 | |
---|
| 390 | ! ================================ |
---|
| 391 | END IF ! (it_EXP .LE. 1) |
---|
| 392 | |
---|
| 393 | ! FIRST INITIALIZATION (END) |
---|
| 394 | ! ================================ |
---|
| 395 | |
---|
| 396 | |
---|
| 397 | |
---|
| 398 | |
---|
| 399 | ! OUTPUT |
---|
| 400 | ! ====== |
---|
| 401 | |
---|
| 402 | ! dSdTAO_xyn(i,j,n) = dSdTSV(ikp,n) ! Sens.H.Flux T-Der. (A-O Coupling) [W/m2/K] |
---|
| 403 | ! dLdTAO_xyn(i,j,n) = dLdTSV(ikp,n) ! Latn.H.Flux T-Der. (A-O Coupling) [W/m2/K] |
---|
| 404 | !!#SN SnWE___xyn(i,j,n) = zWE_SV(ikp,n) ! Current *Thick. |
---|
| 405 | ! ROdt___xyn(i,j,n) = RnofSV(ikp,n) ! Run OFF Intensity |
---|
| 406 | |
---|
| 407 | |
---|
| 408 | |
---|
| 409 | |
---|
| 410 | ! RESTART |
---|
| 411 | ! ======= |
---|
| 412 | |
---|
| 413 | !!#SN BufsSV(ikp,n) = FSbz___xyn(i,j,n) ! Snow Buffer Lay. |
---|
| 414 | !!#SN rusnSV(ikp,n) = SWz____xyn(i,j,n) ! Surficial Water |
---|
| 415 | !!#SN SWS_SV(ikp,n) = SWx____xyn(i,j,n) ! Surficial Water Status |
---|
| 416 | !!#SN SWf_SV(ikp,n) = SWHySV_xyn(i,j,n) ! Normalized Decay |
---|
| 417 | |
---|
| 418 | |
---|
| 419 | |
---|
| 420 | |
---|
| 421 | ! +++++++++++++++++++++++++++++++++++++++++++++++++++++ |
---|
| 422 | END IF |
---|
| 423 | ! +++++++++++++++++++++++++++++++++++++++++++++++++++++ |
---|
| 424 | |
---|
| 425 | |
---|
| 426 | |
---|
| 427 | |
---|
| 428 | |
---|
| 429 | |
---|
| 430 | !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! |
---|
| 431 | ! ! |
---|
| 432 | ! ACADEMIC INITIALIZATION ! |
---|
| 433 | ! ! |
---|
| 434 | ELSE ! IF (.NOT.FlagSV_SBC) ! |
---|
| 435 | ! ! |
---|
| 436 | !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! |
---|
| 437 | |
---|
| 438 | |
---|
| 439 | ! ============================== |
---|
| 440 | ! FIRST INITIALIZATION (BEGIN) |
---|
| 441 | PRINT*, 'CONTROL PHY_SISVAT_INP' |
---|
| 442 | PRINT*,'kcolq=',kcolq |
---|
| 443 | PRINT*,'kcolp=',kcolp |
---|
| 444 | PRINT*,'kmwp=',mwp |
---|
| 445 | |
---|
| 446 | IF (it_EXP .LE. 1) THEN |
---|
| 447 | ! ============================== |
---|
| 448 | |
---|
| 449 | DO ikp=1,kcolp |
---|
| 450 | |
---|
| 451 | MaskSV_gpt(ikp) = 0 ! Land-Sea Mask |
---|
| 452 | |
---|
| 453 | DO nm=1,mwp |
---|
| 454 | |
---|
| 455 | !LSMask(ikp,nm) = 1 ! Land-Sea Mask |
---|
| 456 | ! Test aquaplanète (Martin): |
---|
| 457 | LSMask(ikp,nm) = 0 ! Land-Sea Mask |
---|
| 458 | SlopSV(ikp,nm) = 0. ! Surface Slope |
---|
| 459 | FracSV(ikp,nm) = 1. / float(mwp) ! Mesh Fraction |
---|
| 460 | z0__SV(ikp,nm) = 1. ! z0 Momentum |
---|
| 461 | z0h_SV(ikp,nm) = 1. ! z0 Scalars |
---|
| 462 | !z0__SV(ikp,nm) = 0.1 ! z0 Momentum |
---|
| 463 | !z0h_SV(ikp,nm) = 0.1 ! z0 Scalars |
---|
| 464 | !z0__SV(ikp,nm) = 0.001 ! z0 Momentum |
---|
| 465 | !z0h_SV(ikp,nm) = 0.00001 ! z0 Scalars |
---|
| 466 | isnoSV(ikp,nm) = 0 ! NO Snow |
---|
| 467 | ispiSV(ikp,nm) = 0 ! NO Ice (Superimposed) |
---|
| 468 | iiceSV(ikp,nm) = 0 ! NO Ice |
---|
| 469 | |
---|
| 470 | !iVgTSV(ikp,nm) = 5 ! GRASS MEDIUM Vegetat. Type (Mosaic) [-] (see Mod_SISVAT_dat) |
---|
| 471 | iVgTSV(ikp,nm) = 0 ! GRASS MEDIUM Vegetat. Type (Mosaic) [-] (see Mod_SISVAT_dat) |
---|
| 472 | !iSoTSV(ikp,nm) = 5 ! LOAM Soil Type (Mosaic) [-] (see Mod_SISVAT_dat) |
---|
| 473 | iSoTSV(ikp,nm) = 0 ! LOAM Soil Type (Mosaic) [-] (see Mod_SISVAT_dat) |
---|
| 474 | iWaFSV(ikp,nm) = 1 ! Soil Drainage Switch (Mosaic)(1=free)[-] |
---|
| 475 | alb0SV(ikp,nm) = 0.15 ! Dry Soil Albedo [-] |
---|
| 476 | |
---|
| 477 | DO l=-nsol,0 |
---|
| 478 | TsisSV(ikp,nm,l) = TsHOST(ikp) ! Soil-Ice-Snow Temperature (Mosaic) [K] |
---|
| 479 | eta_SV(ikp,nm,l) = &! Humidity (Mosaic) [kg/kg] |
---|
| 480 | & etadSV(iVgTSV(ikp,nm)) ! (Saturation is assumed) |
---|
| 481 | ENDDO |
---|
| 482 | |
---|
| 483 | DO l=1,nsno |
---|
| 484 | TsisSV(ikp,nm,l) = 273.15 ! Soil-Ice-Snow Temperature (Mosaic) [K] |
---|
| 485 | eta_SV(ikp,nm,l) = 0.00 ! Soil-Ice-Snow Humidity (Mosaic) [kg/kg] |
---|
| 486 | dzsnSV(ikp,nm,l) = 0.00 ! Snow Layer Thickness (Mosaic) [m] |
---|
| 487 | ro__SV(ikp,nm,l) = 0.00 ! Snow Layer Density (Mosaic) [kg/m3] |
---|
| 488 | agsnSV(ikp,nm,l) = 0.00 ! Snow Layer Age (Mosaic) [day] |
---|
| 489 | G1snSV(ikp,nm,l) = 0.00 ! Snow Layer Property (d./s.)(Mosaic) [-] |
---|
| 490 | G2snSV(ikp,nm,l) = 0.00 ! Snow Layer Property (s./s.)(Mosaic) [-] |
---|
| 491 | istoSV(ikp,nm,l) = 0.00 ! Snow Layer History (Mosaic) [-] |
---|
| 492 | ENDDO |
---|
| 493 | |
---|
| 494 | ENDDO |
---|
| 495 | ENDDO |
---|
| 496 | |
---|
| 497 | |
---|
| 498 | ! ============================== |
---|
| 499 | END IF ! (it_EXP .LE. 1) |
---|
| 500 | |
---|
| 501 | ! FIRST INITIALIZATION (END) |
---|
| 502 | ! ============================== |
---|
| 503 | |
---|
| 504 | |
---|
| 505 | !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! |
---|
| 506 | ! |
---|
| 507 | END IF ! (.NOT.FlagSV_SBC) |
---|
| 508 | ! |
---|
| 509 | !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! |
---|
| 510 | |
---|
| 511 | |
---|
| 512 | end subroutine PHY_SISVAT_INP |
---|