Changeset 2999 for trunk/LMDZ.MARS/libf/dynphy_lonlat
- Timestamp:
- Jul 19, 2023, 11:40:38 AM (18 months ago)
- Location:
- trunk/LMDZ.MARS/libf/dynphy_lonlat/phymars
- Files:
-
- 4 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/LMDZ.MARS/libf/dynphy_lonlat/phymars/lect_start_archive.F
r2959 r2999 3 3 & t,ucov,vcov,ps,h,phisold_newgrid, 4 4 & q,qsurf,tauscaling,totcloudfrac,surfith,nid, 5 & watercap )5 & watercap,peren_co2ice) 6 6 c======================================================================= 7 7 c … … 57 57 REAL,INTENT(OUT) :: totcloudfrac(ngrid) ! sub grid cloud fraction 58 58 REAL,INTENT(OUT) :: watercap(ngrid,nslope) ! infinite polar cap 59 REAL,INTENT(OUT) :: peren_co2ice(ngrid,nslope) ! infinite co2 polar cap 59 60 REAL,INTENT(OUT) :: phisold_newgrid(iip1,jjp1) 60 61 REAL,INTENT(OUT) :: t(iip1,jjp1,llm) … … 140 141 real totcloudfracS(iip1,jjp1) 141 142 real watercapS(iip1,jjp1,nslope) 143 real peren_co2iceS(iip1,jjp1,nslope) 142 144 real watercaptagS(iip1,jjp1) 143 145 real albedoS(iip1,jjp1,nslope) … … 178 180 real, dimension(:,:), allocatable :: totcloudfracold 179 181 real, dimension(:,:,:), allocatable :: watercapold 182 real, dimension(:,:,:), allocatable :: peren_co2iceold 180 183 real, dimension(:,:), allocatable :: watercapold_noslope 184 real, dimension(:,:), allocatable :: peren_co2iceold_noslope 181 185 real, dimension(:,:), allocatable :: watercaptagold 182 186 real, dimension(:), allocatable :: watercaptag_tmp … … 430 434 allocate(totcloudfracold(imold+1,jmold+1)) 431 435 allocate(watercapold(imold+1,jmold+1,nslope)) 436 allocate(peren_co2iceold(imold+1,jmold+1,nslope)) 432 437 allocate(watercaptagold(imold+1,jmold+1)) 433 438 allocate(watercaptag_tmp(ngrid)) … … 439 444 allocate(emisold_noslope(imold+1,jmold+1)) 440 445 allocate(watercapold_noslope(imold+1,jmold+1)) 446 allocate(peren_co2iceold_noslope(imold+1,jmold+1)) 441 447 allocate(albedoold_noslope(imold+1,jmold+1)) 442 448 allocate(qsurfold_noslope(imold+1,jmold+1,nqtot)) … … 914 920 IF (ierr .NE. NF_NOERR) THEN 915 921 PRINT*, "lect_start_archive: Failed loading <watercap>" 922 PRINT*, NF_STRERROR(ierr) 923 CALL abort 924 ENDIF 925 ENDIF 926 927 ierr = NF_INQ_VARID (nid, "perenial_co2ice", nvarid) 928 IF (ierr .NE. NF_NOERR) THEN 929 PRINT*, "lect_start_archive: <perenial_co2ice> not in file" 930 peren_co2iceold(:,:,:) = 0. 931 ELSE 932 if(no_slope) then 933 ierr = nf90_get_var(nid, nvarid,peren_co2iceold_noslope) 934 peren_co2iceold(:,:,1)=peren_co2iceold_noslope(:,:) 935 else 936 ierr = nf90_get_var(nid, nvarid,peren_co2iceold) 937 endif 938 IF (ierr .NE. NF_NOERR) THEN 939 PRINT*, "lect_start_archive:" 940 PRINT*, "Failed loading<peren_co2iceold>" 916 941 PRINT*, NF_STRERROR(ierr) 917 942 CALL abort … … 1252 1277 & watercap(:,1)) 1253 1278 1279 c Watercap 1280 call interp_horiz (peren_co2iceold(:,:,1),peren_co2iceS(:,:,1), 1281 & imold,jmold,iim,jjm,1,rlonuold,rlatvold,rlonu,rlatv) 1282 call gr_dyn_fi (1,iim+1,jjm+1,ngrid,peren_co2iceS(:,:,1), 1283 & peren_co2ice(:,1)) 1284 1254 1285 c Watercaptag 1255 1286 if(imold.eq.iim .and. jmold.eq.jjm) then … … 1648 1679 deallocate(tauscalingold) 1649 1680 deallocate(totcloudfracold) 1681 deallocate(peren_co2iceold) 1650 1682 deallocate(watercapold) 1651 1683 deallocate(watercaptagold) -
trunk/LMDZ.MARS/libf/dynphy_lonlat/phymars/newstart.F
r2952 r2999 30 30 & albedodat, z0_default, qsurf, tsurf, 31 31 & emis, hmons, summit, base, watercap, 32 & ini_surfdat_h_slope_var,end_surfdat_h_slope_var 32 & ini_surfdat_h_slope_var,end_surfdat_h_slope_var, 33 & perenial_co2ice 33 34 use comsoil_h, only: inertiedat, inertiesoil,layer, mlayer, 34 35 & nsoilmx,tsoil,ini_comsoil_h_slope_var, end_comsoil_h_slope_var, … … 196 197 REAL,ALLOCATABLE :: qsurf_old_slope(:,:,:) ! tracer on surface (e.g. kg.m-2) 197 198 REAL,ALLOCATABLE :: watercap_old_slope(:,:) ! Surface water ice (kg.m-2) 199 REAL,ALLOCATABLE :: perenial_co2_old_slope(:,:) ! Surface water ice (kg.m-2) 198 200 REAL,ALLOCATABLE :: tsoil_old_slope(:,:,:) 199 201 REAL,ALLOCATABLE :: inertiesoil_old_slope(:,:,:) … … 464 466 & day_ini,time,tsurf,tsoil,albedo,emis, 465 467 & q2,qsurf,tauscaling,totcloudfrac, 466 & wstar,watercap,def_slope,def_slope_mean,subslope_dist) 468 & wstar,watercap,perenial_co2ice, 469 & def_slope,def_slope_mean,subslope_dist) 467 470 468 471 ! copy albedo and soil thermal inertia … … 1800 1803 allocate(emis_old_slope(ngridmx,nslope_old)) 1801 1804 allocate(watercap_old_slope(ngridmx,nslope_old)) 1805 allocate(perenial_co2_old_slope(ngridmx,nslope_old)) 1802 1806 1803 1807 … … 1806 1810 emis_old_slope(:,:)=emis(:,:) 1807 1811 watercap_old_slope(:,:)=watercap(:,:) 1808 1812 perenial_co2_old_slope(:,:) = perenial_co2ice(:,:) 1809 1813 call end_surfdat_h_slope_var 1810 1814 call ini_surfdat_h_slope_var(ngridmx,nqtot,nslope_new) … … 1837 1841 emis(:,islope)=emis_old_slope(:,1) 1838 1842 watercap(:,islope)=watercap_old_slope(:,1) 1843 perenial_co2ice(:,islope)= perenial_co2_old_slope(:,1) 1839 1844 tsoil(:,:,islope)=tsoil_old_slope(:,:,1) 1840 1845 albedo(:,:,islope)=albedo_old_slope(:,:,1) … … 1847 1852 emis(:,1)=emis_old_slope(:,iflat) 1848 1853 watercap(:,1)=watercap_old_slope(:,iflat) 1854 perenial_co2ice(:,islope)= perenial_co2_old_slope(:,iflat) 1849 1855 tsoil(:,:,1)=tsoil_old_slope(:,:,iflat) 1850 1856 albedo(:,:,1)=albedo_old_slope(:,:,iflat) … … 1857 1863 emis(:,islope)=emis_old_slope(:,iflat) 1858 1864 watercap(:,islope)=watercap_old_slope(:,iflat) 1865 perenial_co2ice(:,islope)= perenial_co2_old_slope(:,iflat) 1859 1866 tsoil(:,:,islope)=tsoil_old_slope(:,:,iflat) 1860 1867 albedo(:,:,islope)=albedo_old_slope(:,:,iflat) … … 1868 1875 emis(:,islope)=emis_old_slope(:,iflat) 1869 1876 watercap(:,islope)=watercap_old_slope(:,iflat) 1877 perenial_co2ice(:,islope)= perenial_co2_old_slope(:,iflat) 1870 1878 tsoil(:,:,islope)=tsoil_old_slope(:,:,iflat) 1871 1879 albedo(:,:,islope)=albedo_old_slope(:,:,iflat) … … 2001 2009 & dtphys,hour_ini, 2002 2010 & tsurf,tsoil,inertiesoil,albedo,emis,q2,qsurf, 2003 & tauscaling,totcloudfrac,wstar,watercap) 2011 & tauscaling,totcloudfrac,wstar,watercap, 2012 & perenial_co2ice) 2004 2013 2005 2014 c======================================================================= -
trunk/LMDZ.MARS/libf/dynphy_lonlat/phymars/start2archive.F
r2959 r2999 67 67 REAL,ALLOCATABLE :: tsoil(:,:,:) ! Soil temperature 68 68 REAL,ALLOCATABLE :: watercap(:,:) ! h2o ice layer 69 REAL,ALLOCATABLE :: perenial_co2ice(:,:) ! co2 ice layer 69 70 REAL :: tauscaling(ngridmx) ! dust conversion factor 70 71 REAL:: totcloudfrac(ngridmx) ! sub-grid cloud fraction … … 86 87 REAL ithS(ip1jmp1,nsoilmx) ! Soil Thermal Inertia for inertie dat (present day climate) 87 88 REAL,ALLOCATABLE :: watercapS(:,:) 89 REAL,ALLOCATABLE :: perenial_co2iceS(:,:) 88 90 REAL,ALLOCATABLE :: watercaptag_tmp(:) 89 91 REAL,ALLOCATABLE :: watercaptagS(:) … … 169 171 allocate(tsoil(ngridmx,nsoilmx,nslope)) 170 172 allocate(watercap(ngridmx,nslope)) 173 allocate(perenial_co2ice(ngridmx,nslope)) 171 174 allocate(emis(ngridmx,nslope)) 172 175 allocate(albedo(ngridmx,2,nslope)) … … 177 180 allocate(inertiesoilS(ip1jmp1,nsoilmx,nslope)) 178 181 allocate(watercapS(ip1jmp1,nslope)) 182 allocate(perenial_co2iceS(ip1jmp1,nslope)) 179 183 allocate(watercaptagS(ip1jmp1)) 180 184 allocate(emisS(ip1jmp1,nslope)) … … 184 188 CALL phyetat0 (fichnom,0,Lmodif,nsoilmx,ngridmx,llm,nqtot, 185 189 & day_ini_fi,timefi,tsurf,tsoil,albedo,emis,q2,qsurf, 186 & tauscaling,totcloudfrac,wstar,watercap, def_slope,187 & def_slope _mean,subslope_dist)190 & tauscaling,totcloudfrac,wstar,watercap,perenial_co2ice, 191 & def_slope, def_slope_mean,subslope_dist) 188 192 189 193 ierr = NF_OPEN (fichnom, NF_NOWRITE,nid1) … … 270 274 c tsurf --> tsurfS 271 275 c watercap --> watercapS 276 c perenial_co2ice --> perenial_co2iceS 272 277 c tsoil --> tsoilS 273 278 c inertiesoil --> inertiesoilS … … 287 292 call gr_fi_dyn(1,ngridmx,iip1,jjp1,watercap(:,islope), 288 293 & watercapS(:,islope)) 294 call gr_fi_dyn(1,ngridmx,iip1,jjp1,perenial_co2ice(:,islope), 295 & perenial_co2iceS(:,islope)) 289 296 call gr_fi_dyn(nsoilmx,ngridmx,iip1,jjp1,tsoil(:,:,islope), 290 297 & tsoilS(:,:,islope)) … … 417 424 call write_archive(nid,ntime,'watercap','couche de glace h2o', 418 425 & 'kg/m2',2,watercapS) 426 call write_archive(nid,ntime,'perenial_co2ice', 427 &'couche de glace co2','kg/m2',2,perenial_co2iceS) 419 428 call write_archive(nid,ntime,'watercaptag','couche de glace h2o', 420 429 & 'kg/m2',2,watercaptagS) -
trunk/LMDZ.MARS/libf/dynphy_lonlat/phymars/start2archive_SSO.F
r2959 r2999 69 69 REAL,ALLOCATABLE :: tsoil(:,:,:) ! Soil temperature 70 70 REAL,ALLOCATABLE :: watercap(:,:) ! h2o ice layer 71 REAL,ALLOCATABLE :: perenial_co2ice(:,:) ! co2 ice layer 71 72 REAL tauscaling(ngridmx) ! dust conversion factor 72 73 REAL totcloudfrac(ngridmx) ! sub-grid cloud fraction … … 91 92 REAL ithS(ip1jmp1,nsoilmx) ! Soil Thermal Inertia for inertie dat (present day climate) 92 93 REAL,ALLOCATABLE :: watercapS(:,:) 94 REAL,ALLOCATABLE :: perenial_co2iceS(:,:) ! co2 ice layer 93 95 REAL tauscalingS(ip1jmp1) 94 96 REAL totcloudfracS(ip1jmp1) … … 184 186 allocate(tsoil(ngridmx,nsoilmx,nslope)) 185 187 allocate(watercap(ngridmx,nslope)) 188 allocate(perenial_co2ice(ngridmx,nslope)) 186 189 allocate(emis(ngridmx,nslope)) 187 190 allocate(albedo(ngridmx,2,nslope)) … … 192 195 allocate(inertiesoilS(ip1jmp1,nsoilmx,nslope)) 193 196 allocate(watercapS(ip1jmp1,nslope)) 197 allocate(perenial_co2iceS(ngridmx,nslope)) 194 198 allocate(emisS(ip1jmp1,nslope)) 195 199 allocate(albedoS(ip1jmp1,nslope)) … … 198 202 CALL phyetat0 (fichnom,0,Lmodif,nsoilmx,ngridmx,llm,nqtot, 199 203 & day_ini_fi,timefi,tsurf,tsoil,albedo,emis,q2,qsurf, 200 & tauscaling,totcloudfrac,wstar,watercap, def_slope,201 & def_slope _mean,subslope_dist)204 & tauscaling,totcloudfrac,wstar,watercap,perenial_co2ice, 205 & def_slope,def_slope_mean,subslope_dist) 202 206 203 207 ierr = NF_OPEN (fichnom, NF_NOWRITE,nid1) … … 296 300 call gr_fi_dyn(1,ngridmx,iip1,jjp1,watercap(:,islope), 297 301 & watercapS(:,islope)) 302 call gr_fi_dyn(1,ngridmx,iip1,jjp1,perenial_co2ice(:,islope), 303 & perenial_co2iceS(:,islope)) 298 304 call gr_fi_dyn(nsoilmx,ngridmx,iip1,jjp1,tsoil(:,:,islope), 299 305 & tsoilS(:,:,islope)) … … 427 433 call write_archive(nid,ntime,'watercap','couche de glace h2o', 428 434 & 'kg/m2',2,watercapS) 435 call write_archive(nid,ntime,'perenial_co2ice','couche de glace co2', 436 & 'kg/m2',2,perenial_co2iceS) 429 437 call write_archive(nid,ntime,'tauscaling', 430 438 & 'dust conversion factor',' ',2,tauscalingS)
Note: See TracChangeset
for help on using the changeset viewer.