Changeset 2943 for trunk/LMDZ.MARS
- Timestamp:
- Apr 17, 2023, 12:07:33 PM (20 months ago)
- Location:
- trunk/LMDZ.MARS/libf/dynphy_lonlat/phymars
- Files:
-
- 5 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/LMDZ.MARS/libf/dynphy_lonlat/phymars/lect_start_archive.F
r2935 r2943 1 1 SUBROUTINE lect_start_archive(ngrid,nlayer,nqtot, 2 & date,tsurf,tsoil, albedo,emis,q2,2 & date,tsurf,tsoil,inertiesoil,albedo,emis,q2, 3 3 & t,ucov,vcov,ps,h,phisold_newgrid, 4 4 & q,qsurf,tauscaling,totcloudfrac,surfith,nid, … … 49 49 REAL,INTENT(OUT) :: tsurf(ngrid,nslope) ! surface temperature 50 50 REAL,INTENT(OUT) :: tsoil(ngrid,nsoilmx,nslope) ! soil temperature 51 REAL,INTENT(OUT) :: inertiesoil(ngrid,nsoilmx,nslope) ! soil thermal inertia 51 52 REAL,INTENT(OUT) :: albedo(ngrid,2,nslope) ! surface albedo 52 53 REAL,INTENT(OUT) :: emis(ngrid,nslope) ! ground emissivity … … 218 219 integer :: ndims 219 220 integer, dimension(:), allocatable :: dimids 221 integer :: islope 220 222 c======================================================================= 221 223 … … 1354 1356 & inertiedatS,inertiedat) 1355 1357 1358 1359 do islope = 1,nslope 1360 inertiesoil(:,:,islope) = inertiedat(:,:) 1361 enddo 1356 1362 c----------------------------------------------------------------------- 1357 1363 c 6.2.2 Soil temperature -
trunk/LMDZ.MARS/libf/dynphy_lonlat/phymars/newstart.F
r2942 r2943 437 437 write(*,*) 'Reading file START_ARCHIVE' 438 438 CALL lect_start_archive(ngridmx,llm,nqtot, 439 & date,tsurf,tsoil, albedo,emis,q2,439 & date,tsurf,tsoil,inertiesoil,albedo,emis,q2, 440 440 & t,ucov,vcov,ps,teta,phisold_newgrid,q,qsurf, 441 441 & tauscaling,totcloudfrac,surfith,nid,watercap) … … 1984 1984 call physdem1("restartfi.nc",nsoilmx,ngridmx,llm,nqtot, 1985 1985 & dtphys,hour_ini, 1986 & tsurf,tsoil, albedo,emis,q2,qsurf,tauscaling,1987 & t otcloudfrac,wstar,watercap)1986 & tsurf,tsoil,inertiesoil,albedo,emis,q2,qsurf, 1987 & tauscaling,totcloudfrac,wstar,watercap) 1988 1988 1989 1989 c======================================================================= -
trunk/LMDZ.MARS/libf/dynphy_lonlat/phymars/start2archive.F
r2913 r2943 66 66 REAL,ALLOCATABLE :: tsurf(:,:) ! Surface temperature 67 67 REAL,ALLOCATABLE :: tsoil(:,:,:) ! Soil temperature 68 REAL,ALLOCATABLE :: inertiesoil(:,:,:) ! Soil thermal inertia (!= inertiedat which is for present day climate) 68 69 REAL,ALLOCATABLE :: watercap(:,:) ! h2o ice layer 69 70 REAL :: tauscaling(ngridmx) ! dust conversion factor … … 83 84 REAL,ALLOCATABLE :: tsurfS(:,:) 84 85 REAL,ALLOCATABLE :: tsoilS(:,:,:) 85 REAL ithS(ip1jmp1,nsoilmx) ! Soil Thermal Inertia 86 REAL,ALLOCATABLE :: inertiesoilS(:,:,:)! Variable Soil Thermal Inertia (obtained from PEM) 87 REAL ithS(ip1jmp1,nsoilmx) ! Soil Thermal Inertia for inertie dat (present day climate) 86 88 REAL,ALLOCATABLE :: watercapS(:,:) 87 89 REAL :: tauscalingS(ip1jmp1) … … 165 167 allocate(tsurf(ngridmx,nslope)) 166 168 allocate(tsoil(ngridmx,nsoilmx,nslope)) 169 allocate(inertiesoil(ngridmx,nsoilmx,nslope)) 167 170 allocate(watercap(ngridmx,nslope)) 168 171 allocate(emis(ngridmx,nslope)) … … 172 175 allocate(tsurfS(ip1jmp1,nslope)) 173 176 allocate(tsoilS(ip1jmp1,nsoilmx,nslope)) 177 allocate(inertiesoilS(ip1jmp1,nsoilmx,nslope)) 174 178 allocate(watercapS(ip1jmp1,nslope)) 175 179 allocate(emisS(ip1jmp1,nslope)) … … 264 268 c watercap --> watercapS 265 269 c tsoil --> tsoilS 270 c inertiesoil --> inertiesoilS 266 271 c inertiedat --> ithS 267 272 c emis --> emisS … … 281 286 call gr_fi_dyn(nsoilmx,ngridmx,iip1,jjp1,tsoil(:,:,islope), 282 287 & tsoilS(:,:,islope)) 288 call gr_fi_dyn(nsoilmx,ngridmx,iip1,jjp1,inertiesoil(:,:,islope), 289 & inertiesoil(:,:,islope)) 283 290 ! Note: thermal inertia "inertiedat" is in comsoil.h 284 291 call gr_fi_dyn(1,ngridmx,iip1,jjp1,emis(:,islope), … … 451 458 call write_archive(nid,ntime,'tsoil','Soil temperature', 452 459 & 'K',-3,tsoilS(:,:,:)) 453 454 460 ! Write soil thermal inertia 455 call write_archive(nid,ntime,'inertiedat', 461 call write_archive(nid,ntime,'inertiesoil','Soil TI', 462 & 'J.s-1/2.m-2.K-1',-3,inertiesoilS(:,:,:)) 463 ! Write soil thermal inertia for current climate 464 call write_archive(nid,ntime,'inertiedat - present day TI', 456 465 & 'Soil thermal inertia', 457 466 & 'J.s-1/2.m-2.K-1',-3,ithS) -
trunk/LMDZ.MARS/libf/dynphy_lonlat/phymars/start2archive_SSO.F
r2914 r2943 69 69 REAL,ALLOCATABLE :: tsurf(:,:) ! Surface temperature 70 70 REAL,ALLOCATABLE :: tsoil(:,:,:) ! Soil temperature 71 REAL,ALLOCATABLE :: inertiesoil(:,:,:) ! Soil thermal inertia (!= inertiedat which is for present day climate) 71 72 REAL,ALLOCATABLE :: watercap(:,:) ! h2o ice layer 72 73 REAL tauscaling(ngridmx) ! dust conversion factor … … 89 90 REAL,ALLOCATABLE :: tsurfS(:,:) 90 91 REAL,ALLOCATABLE :: tsoilS(:,:,:) 91 REAL ithS(ip1jmp1,nsoilmx) ! Soil Thermal Inertia 92 REAL,ALLOCATABLE :: inertiesoilS(:,:,:)! Variable Soil Thermal Inertia (obtained from PEM) 93 REAL ithS(ip1jmp1,nsoilmx) ! Soil Thermal Inertia for inertie dat (present day climate) 92 94 REAL,ALLOCATABLE :: watercapS(:,:) 93 95 REAL tauscalingS(ip1jmp1) … … 183 185 allocate(tsurf(ngridmx,nslope)) 184 186 allocate(tsoil(ngridmx,nsoilmx,nslope)) 187 allocate(inertiesoil(ngridmx,nsoilmx,nslope)) 185 188 allocate(watercap(ngridmx,nslope)) 186 189 allocate(emis(ngridmx,nslope)) … … 190 193 allocate(tsurfS(ip1jmp1,nslope)) 191 194 allocate(tsoilS(ip1jmp1,nsoilmx,nslope)) 195 allocate(inertiesoilS(ip1jmp1,nsoilmx,nslope)) 192 196 allocate(watercapS(ip1jmp1,nslope)) 193 197 allocate(emisS(ip1jmp1,nslope)) … … 281 285 c tsurf --> tsurfS 282 286 c tsoil --> tsoilS 287 c inertiesoil ---> inertiesoilS 283 288 c emis --> emisS 284 289 c q2 --> q2S … … 296 301 call gr_fi_dyn(nsoilmx,ngridmx,iip1,jjp1,tsoil(:,:,islope), 297 302 & tsoilS(:,:,islope)) 303 call gr_fi_dyn(nsoilmx,ngridmx,iip1,jjp1,inertiesoil(:,:,islope), 304 & inertiesoil(:,:,islope)) 298 305 ! Note: thermal inertia "inertiedat" is in comsoil.h 299 306 call gr_fi_dyn(1,ngridmx,iip1,jjp1,emis(:,islope), … … 490 497 call write_archive(nid,ntime,'tsoil','Soil temperature', 491 498 & 'K',-3,tsoilS(:,:,:)) 492 493 499 ! Write soil thermal inertia 500 call write_archive(nid,ntime,'inertiesoil','Soil TI', 501 & 'J.s-1/2.m-2.K-1',-3,inertiesoilS(:,:,:)) 502 ! Write soil thermal inertia for current climate 494 503 call write_archive(nid,ntime,'inertiedat', 495 504 & 'Soil thermal inertia', -
trunk/LMDZ.MARS/libf/dynphy_lonlat/phymars/write_archive.F
r2914 r2943 81 81 82 82 ! Creation de la variable si elle n'existait pas 83 83 84 84 write (*,*) "=====================" 85 85 write (*,*) "creation de ",nom … … 224 224 & nom.eq."ps" .or. nom.eq."q2surf" .or. nom.eq."ZMEA" .or. 225 225 & nom.eq."ZSTD" .or. nom.eq."ZSIG" .or. nom.eq."ZTHE" .or. 226 & nom.eq."ZGAM" .or. nom.eq."albedodat" .or. 226 & nom.eq."ZGAM" .or. nom.eq."albedodat" .or. 227 227 & nom.eq."z0" .or. nom.eq."summit" .or. nom.eq."hmons" 228 228 & .or. nom.eq."base") then … … 238 238 write (*,*) "=====================" 239 239 write (*,*) "creation de ",nom 240 241 240 call def_var(nid,nom,titre,unite,3,id,varid,ierr) 242 241 … … 276 275 write (*,*) "=====================" 277 276 write (*,*) "creation de ",nom 278 279 277 call def_var(nid,nom,titre,unite,4,id,varid,ierr) 280 278 … … 323 321 write (*,*) "=====================" 324 322 write (*,*) "creation de ",nom 325 326 323 call def_var(nid,nom,titre,unite,1,id,varid,ierr) 327 324
Note: See TracChangeset
for help on using the changeset viewer.