Changeset 1047 for trunk/LMDZ.MARS/libf/dyn3d
- Timestamp:
- Sep 23, 2013, 9:56:47 AM (11 years ago)
- Location:
- trunk/LMDZ.MARS/libf/dyn3d
- Files:
-
- 1 deleted
- 5 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/LMDZ.MARS/libf/dyn3d/ini_archive.F
r38 r1047 34 34 c======================================================================= 35 35 36 use comsoil_h, only: nsoilmx, mlayer 36 37 implicit none 37 38 … … 48 49 #include "serre.h" 49 50 #include "control.h" 50 #include"comsoil.h"51 !#include"comsoil.h" 51 52 52 53 #include "netcdf.inc" -
trunk/LMDZ.MARS/libf/dyn3d/lect_start_archive.F
r1036 r1047 1 SUBROUTINE lect_start_archive(nqtot,date,tsurf,tsoil,emis,q2, 1 SUBROUTINE lect_start_archive(ngrid,nlayer,nqtot, 2 & date,tsurf,tsoil,emis,q2, 2 3 & t,ucov,vcov,ps,co2ice,h,phisold_newgrid, 3 4 & q,qsurf,surfith,nid) … … 17 18 c======================================================================= 18 19 use infotrac, only: tnom 20 use comsoil_h, only: nsoilmx, layer, mlayer, volcapa, inertiedat 19 21 implicit none 20 22 21 23 #include "dimensions.h" 22 #include "dimphys.h"23 #include "surfdat.h"24 #include "comsoil.h"25 #include "dimradmars.h"26 #include "yomaer.h"24 !#include "dimphys.h" 25 !#include "surfdat.h" 26 !#include "comsoil.h" 27 !#include "dimradmars.h" 28 !#include "yomaer.h" 27 29 #include "planete.h" 28 30 #include "paramet.h" … … 49 51 c et autres: 50 52 c---------- 53 integer,intent(in) :: ngrid ! number of atmospheric columns 54 ! on new physics grid 55 integer,intent(in) :: nlayer ! number of atmospheric layers 56 ! on new grid 51 57 integer,intent(in) :: nqtot ! number of advected tracers 52 58 … … 98 104 c variable physique 99 105 c------------------ 100 REAL tsurf(ngrid mx) ! surface temperature101 REAL tsoil(ngrid mx,nsoilmx) ! soil temperature102 REAL co2ice(ngrid mx) ! CO2 ice layer103 REAL emis(ngrid mx)104 REAL q2(ngrid mx,nlayermx+1),qsurf(ngridmx,nqtot)105 c REAL phisfi(ngrid mx)106 REAL tsurf(ngrid) ! surface temperature 107 REAL tsoil(ngrid,nsoilmx) ! soil temperature 108 REAL co2ice(ngrid) ! CO2 ice layer 109 REAL emis(ngrid) 110 REAL q2(ngrid,nlayer+1),qsurf(ngrid,nqtot) 111 c REAL phisfi(ngrid) 106 112 107 113 INTEGER i,j,l … … 176 182 177 183 real surfith(iip1,jjp1) ! surface thermal inertia 178 ! real surfithfi(ngrid mx)184 ! real surfithfi(ngrid) 179 185 ! surface thermal inertia at old horizontal grid resolution 180 186 real, dimension(:,:), allocatable :: surfithold … … 335 341 allocate(varp1 (imold+1,jmold+1,llm+1)) 336 342 337 write(*,*) 'q2',ngrid mx,nlayermx+1343 write(*,*) 'q2',ngrid,nlayer+1 338 344 write(*,*) 'q2S',iip1,jjp1,llm+1 339 345 write(*,*) 'q2old',imold+1,jmold+1,lmold+1 … … 1000 1006 call interp_horiz (tsurfold,tsurfs,imold,jmold,iim,jjm,1, 1001 1007 & rlonuold,rlatvold,rlonu,rlatv) 1002 call gr_dyn_fi (1,iim+1,jjm+1,ngrid mx,tsurfs,tsurf)1008 call gr_dyn_fi (1,iim+1,jjm+1,ngrid,tsurfs,tsurf) 1003 1009 c write(44,*) 'tsurf', tsurf 1004 1010 … … 1007 1013 ! & imold,jmold,iim,jjm,nsoilmx, 1008 1014 ! & rlonuold,rlatvold,rlonu,rlatv) 1009 ! call gr_dyn_fi (nsoilmx,iim+1,jjm+1,ngrid mx,tsoils,tsoil)1015 ! call gr_dyn_fi (nsoilmx,iim+1,jjm+1,ngrid,tsoils,tsoil) 1010 1016 c write(45,*) 'tsoil',tsoil 1011 1017 … … 1013 1019 call interp_horiz (emisold,emiss,imold,jmold,iim,jjm,1, 1014 1020 & rlonuold,rlatvold,rlonu,rlatv) 1015 call gr_dyn_fi (1,iim+1,jjm+1,ngrid mx,emiss,emis)1021 call gr_dyn_fi (1,iim+1,jjm+1,ngrid,emiss,emis) 1016 1022 c write(46,*) 'emis',emis 1017 1023 c----------------------------------------------------------------------- … … 1130 1136 1131 1137 ! Reshape inertiedatS to scalar grid as inertiedat 1132 call gr_dyn_fi (nsoilmx,iim+1,jjm+1,ngrid mx,1138 call gr_dyn_fi (nsoilmx,iim+1,jjm+1,ngrid, 1133 1139 & inertiedatS,inertiedat) 1134 1140 … … 1203 1209 1204 1210 ! Reshape tsoilS to scalar grid as tsoil 1205 call gr_dyn_fi (nsoilmx,iim+1,jjm+1,ngrid mx,tsoilS,tsoil)1211 call gr_dyn_fi (nsoilmx,iim+1,jjm+1,ngrid,tsoilS,tsoil) 1206 1212 1207 1213 … … 1229 1235 & rlonuold,rlatvold,rlonu,rlatv) 1230 1236 write (*,*) 'lect_start_archive: q2s ', q2s (1,2,1) ! INFO 1231 call gr_dyn_fi (llm+1,iim+1,jjm+1,ngrid mx,q2s,q2)1237 call gr_dyn_fi (llm+1,iim+1,jjm+1,ngrid,q2s,q2) 1232 1238 write (*,*) 'lect_start_archive: q2 ', q2 (1,2) ! INFO 1233 1239 c write(47,*) 'q2',q2 … … 1278 1284 enddo 1279 1285 1280 call gr_dyn_fi (nqtot,iim+1,jjm+1,ngrid mx,qsurfs,qsurf)1286 call gr_dyn_fi (nqtot,iim+1,jjm+1,ngrid,qsurfs,qsurf) 1281 1287 1282 1288 c traceurs 3D … … 1329 1335 enddo 1330 1336 1331 call gr_dyn_fi (1,iim+1,jjm+1,ngrid mx,co2ices,co2ice)1337 call gr_dyn_fi (1,iim+1,jjm+1,ngrid,co2ices,co2ice) 1332 1338 1333 1339 c----------------------------------------------------------------------- -
trunk/LMDZ.MARS/libf/dyn3d/newstart.F
r1036 r1047 19 19 use infotrac, only: iniadvtrac, nqtot, tnom 20 20 use tracer_mod, only: noms, igcm_h2o_vap, igcm_h2o_ice 21 use surfdat_h, only: phisfi, z0, zmea, zstd, zsig, zgam, zthe, 22 & albedodat, z0_default 23 use comsoil_h, only: inertiedat, layer, mlayer, nsoilmx 21 24 implicit none 22 25 23 26 #include "dimensions.h" 27 integer, parameter :: ngridmx = (2+(jjm-1)*iim - 1/jjm) 24 28 #include "dimphys.h" 25 #include "surfdat.h"26 #include "comsoil.h"27 #include "dimradmars.h"28 #include "yomaer.h"29 !#include "surfdat.h" 30 !#include "comsoil.h" 31 !#include "dimradmars.h" 32 !#include "yomaer.h" 29 33 #include "planete.h" 30 34 #include "paramet.h" … … 404 408 405 409 write(*,*) 'Reading file START_ARCHIVE' 406 CALL lect_start_archive(nqtot,date,tsurf,tsoil,emis,q2, 407 . t,ucov,vcov,ps,co2ice,teta,phisold_newgrid,q,qsurf, 410 CALL lect_start_archive(ngridmx,llm,nqtot, 411 & date,tsurf,tsoil,emis,q2, 412 & t,ucov,vcov,ps,co2ice,teta,phisold_newgrid,q,qsurf, 408 413 & surfith,nid) 409 414 write(*,*) "OK, read start_archive file" … … 425 430 write(*,*) 'Reading file STARTFI' 426 431 fichnom = 'startfi.nc' 427 CALL phyetat0 (fichnom,tab0,Lmodif,nsoilmx,n qtot,432 CALL phyetat0 (fichnom,tab0,Lmodif,nsoilmx,ngridmx,llm,nqtot, 428 433 . day_ini,time, 429 434 . tsurf,tsoil,emis,q2,qsurf,co2ice) … … 858 863 endif 859 864 860 call inichim_newstart(nq, q, qsurf, ps, flagh2o, flagthermo) 865 call inichim_newstart(ngridmx, nq, q, qsurf, ps, 866 & flagh2o, flagthermo) 861 867 862 868 ! We want to have the very same value at lon -180 and lon 180 … … 1472 1478 C 1473 1479 1474 call physdem0("restartfi.nc",lonfi,latfi,nsoilmx,n qtot,1475 . dtphys,real(day_ini),0.0,1480 call physdem0("restartfi.nc",lonfi,latfi,nsoilmx,ngridmx,llm, 1481 . nqtot,dtphys,real(day_ini),0.0, 1476 1482 . airefi,albfi,ithfi,zmea,zstd,zsig,zgam,zthe) 1477 call physdem1("restartfi.nc",nsoilmx,n qtot,1483 call physdem1("restartfi.nc",nsoilmx,ngridmx,llm,nqtot, 1478 1484 . dtphys,hour_ini, 1479 1485 . tsurf,tsoil,co2ice,emis,q2,qsurf) -
trunk/LMDZ.MARS/libf/dyn3d/start2archive.F
r1036 r1047 20 20 21 21 use infotrac, only: iniadvtrac, nqtot, tnom 22 use comsoil_h, only: nsoilmx, inertiedat 23 use surfdat_h, only: ini_surfdat_h 24 use comsoil_h, only: ini_comsoil_h 22 25 implicit none 23 26 24 27 #include "dimensions.h" 28 integer, parameter :: ngridmx = (2+(jjm-1)*iim - 1/jjm) 25 29 #include "paramet.h" 26 30 #include "comconst.h" … … 34 38 #include "description.h" 35 39 36 #include "dimphys.h"37 #include "comsoil.h"40 !#include "dimphys.h" 41 !#include "comsoil.h" 38 42 !#include"advtrac.h" 39 43 #include "netcdf.inc" … … 62 66 REAL tsoil(ngridmx,nsoilmx) ! Soil temperature 63 67 REAL co2ice(ngridmx) ! CO2 ice layer 64 REAL q2(ngridmx, nlayermx+1)68 REAL q2(ngridmx,llm+1) 65 69 REAL,ALLOCATABLE :: qsurf(:,:) 66 70 REAL emis(ngridmx) … … 126 130 allocate(qsurf(ngridmx,nqtot)) 127 131 allocate(qsurfS(ip1jmp1,nqtot)) 132 call ini_surfdat_h(ngridmx) 133 call ini_comsoil_h(ngridmx) 134 128 135 129 136 fichnom = 'start.nc' … … 135 142 Lmodif=0 136 143 137 CALL phyetat0 (fichnom,0,Lmodif,nsoilmx,n qtot,day_ini_fi,timefi,138 .tsurf,tsoil,emis,q2,qsurf,co2ice)144 CALL phyetat0 (fichnom,0,Lmodif,nsoilmx,ngridmx,llm,nqtot, 145 & day_ini_fi,timefi,tsurf,tsoil,emis,q2,qsurf,co2ice) 139 146 140 147 ierr = NF_OPEN (fichnom, NF_NOWRITE,nid1) -
trunk/LMDZ.MARS/libf/dyn3d/write_archive.F
r38 r1047 32 32 c======================================================================= 33 33 34 use comsoil_h, only: nsoilmx 34 35 implicit none 35 36
Note: See TracChangeset
for help on using the changeset viewer.