Changeset 5924 for LMDZ6/trunk/libf/phylmd/StratAer/interp_sulf_input.f90
- Timestamp:
- Dec 9, 2025, 3:08:05 PM (8 hours ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
LMDZ6/trunk/libf/phylmd/StratAer/interp_sulf_input.f90
r5559 r5924 19 19 USE aerophys 20 20 USE yomcst_mod_h 21 USE strataer_local_var_mod, ONLY : flag_ newclim_file,flag_verbose_strataer21 USE strataer_local_var_mod, ONLY : flag_verbose_strataer 22 22 23 23 IMPLICIT NONE … … 125 125 126 126 !--init ncdf variables 127 IF(flag_newclim_file) THEN 128 nc_fname = "ocs_so2_h2so4_annual_lmdz.nc" 129 nc_lat = "LAT" 130 nc_lon = "LON" 131 ELSE 132 ! old file for retro compatibility 133 nc_fname = "ocs_so2_annual_lmdz.nc" 134 nc_lat = "lat" 135 nc_lon = "lon" 136 ENDIF 137 127 nc_fname = "ocs_so2_h2so4_annual_lmdz.nc" 128 nc_lat = "LAT" 129 nc_lon = "LON" 130 138 131 !--reading emission files 139 132 CALL nf95_open(nc_fname, nf90_nowrite, ncid_in) … … 180 173 IF(flag_verbose_strataer) print *,'code erreur SO2_lifetime_in=', ncerr, varid 181 174 182 IF(flag_newclim_file) THEN 183 CALL nf95_inq_varid(ncid_in, "O3", varid) 184 ncerr = nf90_get_var(ncid_in, varid, O3_clim_in) 185 IF(flag_verbose_strataer) print *,'code erreur O3=', ncerr, varid 186 187 CALL nf95_inq_varid(ncid_in, "H2SO4_LIFET", varid) 188 ncerr = nf90_get_var(ncid_in, varid, H2SO4_lifetime_in) 189 IF(flag_verbose_strataer) print *,'code erreur H2SO4_lifetime_in=', ncerr, varid 190 ENDIF 175 CALL nf95_inq_varid(ncid_in, "O3", varid) 176 ncerr = nf90_get_var(ncid_in, varid, O3_clim_in) 177 IF(flag_verbose_strataer) print *,'code erreur O3=', ncerr, varid 178 179 CALL nf95_inq_varid(ncid_in, "H2SO4_LIFET", varid) 180 ncerr = nf90_get_var(ncid_in, varid, H2SO4_lifetime_in) 181 IF(flag_verbose_strataer) print *,'code erreur H2SO4_lifetime_in=', ncerr, varid 191 182 192 183 CALL nf95_close(ncid_in) … … 215 206 216 207 ! O3 from 2d model is not tracer, in VMR 217 IF(flag_newclim_file) THEN 218 H2SO4_lifetime_mth(:,j,:) = H2SO4_lifetime_in(:,n_lat+1-j,:,mth_cur) 219 ! new input files 220 O3_clim_mth(:,j,:) = 1.e-6*O3_clim_in(:,n_lat+1-j,:,mth_cur) 221 ELSE 222 H2SO4_lifetime_mth(:,j,:) = 1.e-6 223 O3_clim_mth(:,j,:) = 1.e-6 224 ENDIF 208 H2SO4_lifetime_mth(:,j,:) = H2SO4_lifetime_in(:,n_lat+1-j,:,mth_cur) 209 ! new input files 210 O3_clim_mth(:,j,:) = 1.e-6*O3_clim_in(:,n_lat+1-j,:,mth_cur) 225 211 ENDDO 226 212 … … 279 265 MAX(0.0,MIN(paprs_glo(i,k),paprs_input(kk))-MAX(paprs_glo(i,k+1),paprs_input(kk+1))) & 280 266 *SO2_lifetime_tmp(i,kk)/(paprs_glo(i,k)-paprs_glo(i,k+1)) 281 IF(flag_newclim_file) THEN 282 H2SO4_lifetime_glo(i,k)=H2SO4_lifetime_glo(i,k)+ & 283 MAX(0.0,MIN(paprs_glo(i,k),paprs_input(kk)) & 284 -MAX(paprs_glo(i,k+1),paprs_input(kk+1))) & 285 *H2SO4_lifetime_tmp(i,kk)/(paprs_glo(i,k)-paprs_glo(i,k+1)) 286 ENDIF 267 H2SO4_lifetime_glo(i,k)=H2SO4_lifetime_glo(i,k)+ & 268 MAX(0.0,MIN(paprs_glo(i,k),paprs_input(kk)) & 269 -MAX(paprs_glo(i,k+1),paprs_input(kk+1))) & 270 *H2SO4_lifetime_tmp(i,kk)/(paprs_glo(i,k)-paprs_glo(i,k+1)) 287 271 288 272 OCS_clim_glo(i,k)=OCS_clim_glo(i,k)+ & … … 292 276 MAX(0.0,MIN(paprs_glo(i,k),paprs_input(kk))-MAX(paprs_glo(i,k+1),paprs_input(kk+1))) & 293 277 *SO2_clim_tmp(i,kk)/(paprs_glo(i,k)-paprs_glo(i,k+1)) 294 IF(flag_newclim_file) THEN 295 O3_clim_glo(i,k)=O3_clim_glo(i,k)+ & 296 MAX(0.0,MIN(paprs_glo(i,k),paprs_input(kk)) & 297 -MAX(paprs_glo(i,k+1),paprs_input(kk+1))) & 298 *O3_clim_tmp(i,kk)/(paprs_glo(i,k)-paprs_glo(i,k+1)) 299 ENDIF 278 O3_clim_glo(i,k)=O3_clim_glo(i,k)+ & 279 MAX(0.0,MIN(paprs_glo(i,k),paprs_input(kk)) & 280 -MAX(paprs_glo(i,k+1),paprs_input(kk+1))) & 281 *O3_clim_tmp(i,kk)/(paprs_glo(i,k)-paprs_glo(i,k+1)) 300 282 ENDDO 301 283 ENDDO
Note: See TracChangeset
for help on using the changeset viewer.
