Changeset 3344 for trunk/LMDZ.MARS/libf
- Timestamp:
- May 23, 2024, 4:17:52 PM (7 months ago)
- Location:
- trunk/LMDZ.MARS/libf/phymars
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/LMDZ.MARS/libf/phymars/iniwritesoil.F90
r2573 r3344 1 subroutine iniwritesoil(nid,ngrid,inertia,area,nbplon,nbplat) 1 module iniwritesoil_mod 2 3 implicit none 4 5 contains 6 7 subroutine iniwritesoil(nid,ngrid,inertia,area,nbplon,nbplat,nsoilmx,mlayer) 2 8 3 9 ! initialization routine for 'writediagoil'. Here we create/define … … 5 11 ! (time-independent) parameters. 6 12 7 use comsoil_h, only: mlayer, nsoilmx8 13 USE comcstfi_h, only: pi 9 14 USE regular_lonlat_mod, ONLY: lon_reg, lat_reg … … 15 20 16 21 ! Arguments: 17 integer,intent(in) :: ngrid 18 integer,intent(in) :: nid ! NetCDF output file ID 19 real,intent(in) :: inertia(nbplon,nbplat,nsoilmx) 20 real,intent(in) :: area(nbplon,nbp_lat) ! mesh area (m2) 21 integer,intent(in) :: nbplon,nbplat ! sizes of area 22 integer, intent(in) :: ngrid 23 integer, intent(in) :: nid ! NetCDF output file ID 24 integer, intent(in) :: nbplon, nbplat ! sizes of area 25 integer, intent(in) :: nsoilmx ! number of subterranean layers 26 real, intent(in) :: inertia(nbplon,nbplat,nsoilmx) 27 real, intent(in) :: area(nbplon,nbp_lat) ! mesh area (m2) 28 real, intent(in) :: mlayer(nsoilmx) ! soil mid-layer depths 22 29 23 30 ! Local variables: … … 63 70 endif 64 71 ierr=NF_DEF_DIM(nid,"depth",nsoilmx,idim_depth) 65 ! nsoilmx known from comsoil_h66 72 if (ierr.ne.NF_NOERR) then 67 73 write(*,*)"iniwritesoil: Error, could not define depth dimension" … … 174 180 ierr=NF_PUT_VAR_REAL(nid,varid,mlayer) 175 181 #endif 176 ! Note mlayer(0:nsoilmx-1) known from comsoil_h177 182 if (ierr.ne.NF_NOERR) then 178 183 write(*,*)"iniwritesoil: Error, could not write depth variable" … … 271 276 272 277 end subroutine iniwritesoil 278 279 end module iniwritesoil_mod -
trunk/LMDZ.MARS/libf/phymars/writediagsoil.F90
r3213 r3344 21 21 ! Modifs: Aug.2010 Ehouarn: enforce outputs to be real*4 22 22 23 use comsoil_h, only: nsoilmx, inertiedat23 use comsoil_h, only: mlayer, nsoilmx, inertiedat 24 24 use geometry_mod, only: cell_area 25 25 use time_phylmdz_mod, only: ecritphy, day_step, iphysiq 26 use mod_phys_lmdz_para, only : is_mpi_root, is_master, gather 27 use mod_grid_phy_lmdz, only : klon_glo, Grid1Dto2D_glo, nbp_lon, nbp_lat 28 use mod_grid_phy_lmdz, only : grid_type, unstructured 26 use mod_phys_lmdz_para, only: is_mpi_root, is_master, gather 27 use mod_grid_phy_lmdz, only: klon_glo, Grid1Dto2D_glo, nbp_lon, nbp_lat 28 use mod_grid_phy_lmdz, only: grid_type, unstructured 29 use iniwritesoil_mod, only: iniwritesoil 29 30 30 31 implicit none … … 154 155 ! write "header" of file (longitudes, latitudes, geopotential, ...) 155 156 if (klon_glo>1) then ! general 3D case 156 call iniwritesoil(nid,ngrid,inertia,area,nbp_lon+1,nbp_lat )157 call iniwritesoil(nid,ngrid,inertia,area,nbp_lon+1,nbp_lat,nsoilmx,mlayer) 157 158 else ! 1D model 158 call iniwritesoil(nid,ngrid,inertiafi_glo(1,:),areafi_glo(1),1,1 )159 call iniwritesoil(nid,ngrid,inertiafi_glo(1,:),areafi_glo(1),1,1,nsoilmx,mlayer) 159 160 endif 160 161
Note: See TracChangeset
for help on using the changeset viewer.