Changeset 3068 for trunk/LMDZ.COMMON/libf
- Timestamp:
- Oct 3, 2023, 11:25:57 AM (14 months ago)
- Location:
- trunk/LMDZ.COMMON/libf/evolution
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/LMDZ.COMMON/libf/evolution/changelog.txt
r3065 r3068 77 77 == 26/09/2023 == JBC 78 78 Minor changes concerning the form of the code in the PEM. 79 80 == 28/09/2023 == JBC 79 81 Addition of a file "changelog.txt" in LMDZ.COMMON/libf/evolution/ specific to the PEM rather than using the one for Mars. Completed with changesets since 01/07/2023. 80 82 81 83 == 02/10/2023 == JBC 82 84 Initialization of the PEM in 1D through the subroutine "init_testphys1d_mod.F90" + Some adaptations of the Mars PCM in 1D + Update of "launch_pem.sh" in deftank. 85 86 == 03/10/2023 == JBC 87 Following the commits r3066 and r3067, the PEM initialization in 1D has been adapted. -
trunk/LMDZ.COMMON/libf/evolution/pem.F90
r3065 r3068 138 138 ! Variables to read starfi.nc 139 139 character (len = *), parameter :: FILE_NAME = "startfi_evol.nc" ! Name of the file used for initialsing the PEM 140 character *2str2141 integer :: ncid, varid, status ! Variable for handling opening of files142 integer :: phydimid, subdimid, nlayerdimid, nqdimid ! Variable ID for Netcdf files143 integer :: lonvarid, latvarid, areavarid, sdvarid ! Variable ID for Netcdf files144 integer :: apvarid, bpvarid ! Variable ID for Netcdf files140 character(2) :: str2 141 integer :: ncid, varid, status ! Variable for handling opening of files 142 integer :: phydimid, subdimid, nlayerdimid, nqdimid ! Variable ID for Netcdf files 143 integer :: lonvarid, latvarid, areavarid, sdvarid ! Variable ID for Netcdf files 144 integer :: apvarid, bpvarid ! Variable ID for Netcdf files 145 145 146 146 ! Variables to read starfi.nc and write restartfi.nc … … 165 165 logical :: STOPPING_pressure ! Logical: is the criterion (% of change in the surface pressure) reached? 166 166 integer :: criterion_stop ! which criterion is reached ? 1= h2o ice surf, 2 = co2 ice surf, 3 = ps, 4 = orb param 167 real, save :: A , B, mmean! Molar mass: intermediate A, B for computations of the mean molar mass of the layer [mol/kg]167 real, save :: A, B, mmean ! Molar mass: intermediate A, B for computations of the mean molar mass of the layer [mol/kg] 168 168 real, dimension(:,:), allocatable :: vmr_co2_gcm ! Physics x Times co2 volume mixing ratio retrieve from the gcm [m^3/m^3] 169 169 real, dimension(:,:), allocatable :: vmr_co2_pem_phys ! Physics x Times co2 volume mixing ratio used in the PEM … … 238 238 real, dimension(:,:), allocatable :: emis ! Subslope variable, only needed in the GENERIC case 239 239 real, dimension(:,:), allocatable :: watercap ! Subslope variable, only needed in the GENERIC case =0 no watercap in generic model 240 logical, dimension(:), allocatable :: WATERCAPTAG! Subslope variable, only needed in the GENERIC case =false no watercaptag in generic model240 logical, dimension(:), allocatable :: watercaptag ! Subslope variable, only needed in the GENERIC case =false no watercaptag in generic model 241 241 real, dimension(:,:,:), allocatable :: albedo ! Subslope variable, only needed in the GENERIC case 242 242 real, dimension(:,:,:), allocatable :: inertiesoil ! Subslope variable, only needed in the GENERIC case … … 249 249 250 250 ! Dummy variables to use the subroutine 'init_testphys1d' 251 real, dimension(:,:), allocatable :: q_tmp ! Temporary tracer mixing ratio (e.g. kg/kg) 252 logical :: startfiles_1D, therestart1D, therestartfi 253 integer :: ndt, day0 254 real :: ptif, pks, day, gru, grv, atm_wat_profile, atm_wat_tau 255 real, dimension(:), allocatable :: zqsat, qsurf_tmp 256 real, dimension(:,:), allocatable :: dq, dqdyn 257 real, dimension(nlayer) :: play, w 258 real, dimension(nlayer + 1) :: plev, q2_tmp 259 real, dimension(nsoilmx) :: tsoil_tmp 260 real, dimension(1) :: tsurf_tmp, emis_tmp 261 real, dimension(1,1) :: albedo_tmp 251 logical :: startfiles_1D, therestart1D, therestartfi 252 integer :: ndt, day0 253 real :: ptif, pks, day, gru, grv, atm_wat_profile, atm_wat_tau 254 real, dimension(:), allocatable :: zqsat 255 real, dimension(:,:,:), allocatable :: dq, dqdyn 256 real, dimension(nlayer) :: play, w 257 real, dimension(nlayer + 1) :: plev 262 258 #else 263 259 integer, parameter :: jjm_value = jjm … … 301 297 allocate(longitude(ngrid),latitude(ngrid),cell_area(ngrid)) 302 298 #else 299 allocate(q(1,llm,nqtot)) 303 300 allocate(longitude(1),latitude(1),cell_area(1)) 304 call init_testphys1d(.true.,ngrid,nlayer,610.,nq,q _tmp,time_0,ps(1),ucov,vcov,teta,startfiles_1D,therestart1D,therestartfi, &305 ndt,ptif,pks,dtphys,zqsat,qsurf_tmp,dq,dqdyn,day0,day,tsurf_tmp,gru,grv,w,q2_tmp,play,plev,tsoil_tmp,&306 albedo_tmp,emis_tmp,latitude,longitude,cell_area,atm_wat_profile,atm_wat_tau)301 call init_testphys1d(.true.,ngrid,nlayer,610.,nq,q,time_0,ps(1),ucov,vcov,teta,startfiles_1D,therestart1D, & 302 therestartfi,ndt,ptif,pks,dtphys,zqsat,dq,dqdyn,day0,day,gru,grv,w, & 303 play,plev,latitude,longitude,cell_area,atm_wat_profile,atm_wat_tau) 307 304 ps(2) = ps(1) 308 allocate(q(ip1jmp1,llm,nqtot))309 q(ip1jmp1,:,:) = q_tmp(:,:)310 deallocate(q_tmp,qsurf_tmp)311 305 nsplit_phys = 1 312 306 #endif
Note: See TracChangeset
for help on using the changeset viewer.