- Timestamp:
- Dec 13, 2018, 1:07:06 PM (6 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
LMDZ6/branches/IPSLCM6.0.15/libf/phylmd/rrtm/readaerosolstrato2_rrtm.F90
r3408 r3425 2 2 ! $Id: readaerosolstrato2_rrtm.F90 2526 2016-05-26 22:13:40Z oboucher $ 3 3 ! 4 SUBROUTINE readaerosolstrato2_rrtm(debut )4 SUBROUTINE readaerosolstrato2_rrtm(debut, ok_volcan) 5 5 6 6 USE netcdf95, ONLY: nf95_close, nf95_gw_var, nf95_inq_dimid, & … … 29 29 ! Variable input 30 30 LOGICAL, INTENT(IN) :: debut 31 LOGICAL, INTENT(IN) :: ok_volcan !activate volcanic diags 31 32 32 33 ! Variables locales … … 290 291 ENDDO 291 292 293 IF ( .not. ok_volcan) THEN 292 294 !--weighted average for cg, piz and tau, adding strat aerosols on top of tropospheric ones 293 295 DO band=1, NSW … … 303 305 tau_aero_sw_rrtm(:,:,2,band) = tau_aero_sw_rrtm(:,:,2,band) + tau_aer_strat(:,:,band) 304 306 !--natural aerosols bands 1 to NSW 305 ! cg_aero_sw_rrtm(:,:,1,band) = ( cg_aero_sw_rrtm(:,:,1,band)*piz_aero_sw_rrtm(:,:,1,band)*tau_aero_sw_rrtm(:,:,1,band) + & 306 ! cg_aer_strat(:,:,band)*piz_aer_strat(:,:,band)*tau_aer_strat(:,:,band) ) / & 307 ! MAX( piz_aero_sw_rrtm(:,:,1,band)*tau_aero_sw_rrtm(:,:,1,band) + & 308 ! piz_aer_strat(:,:,band)*tau_aer_strat(:,:,band), 1.e-15 ) 309 ! piz_aero_sw_rrtm(:,:,1,band) = ( piz_aero_sw_rrtm(:,:,1,band)*tau_aero_sw_rrtm(:,:,1,band) + & 310 ! piz_aer_strat(:,:,band)*tau_aer_strat(:,:,band) ) / & 311 ! MAX( tau_aero_sw_rrtm(:,:,1,band) + tau_aer_strat(:,:,band), 1.e-15 ) 312 ! tau_aero_sw_rrtm(:,:,1,band) = tau_aero_sw_rrtm(:,:,1,band) + tau_aer_strat(:,:,band) 307 ! BEWARE: if you change stings here, you'll also need to change them a few 308 ! lines down after the ELSE 309 cg_aero_sw_rrtm(:,:,1,band) = ( cg_aero_sw_rrtm(:,:,1,band)*piz_aero_sw_rrtm(:,:,1,band)*tau_aero_sw_rrtm(:,:,1,band) + & 310 cg_aer_strat(:,:,band)*piz_aer_strat(:,:,band)*tau_aer_strat(:,:,band) ) / & 311 MAX( piz_aero_sw_rrtm(:,:,1,band)*tau_aero_sw_rrtm(:,:,1,band) + & 312 piz_aer_strat(:,:,band)*tau_aer_strat(:,:,band), 1.e-15 ) 313 piz_aero_sw_rrtm(:,:,1,band) = ( piz_aero_sw_rrtm(:,:,1,band)*tau_aero_sw_rrtm(:,:,1,band) + & 314 piz_aer_strat(:,:,band)*tau_aer_strat(:,:,band) ) / & 315 MAX( tau_aero_sw_rrtm(:,:,1,band) + tau_aer_strat(:,:,band), 1.e-15 ) 316 tau_aero_sw_rrtm(:,:,1,band) = tau_aero_sw_rrtm(:,:,1,band) + tau_aer_strat(:,:,band) 317 ENDWHERE 318 ENDDO 313 319 !--no stratospheric aerosol in index 1 for these tests 320 ELSE 321 !--weighted average for cg, piz and tau, adding strat aerosols on top of tropospheric ones 322 DO band=1, NSW 323 WHERE (stratomask.GT.0.999999) 324 !--anthropogenic aerosols bands 1 to NSW 325 cg_aero_sw_rrtm(:,:,2,band) = ( cg_aero_sw_rrtm(:,:,2,band)*piz_aero_sw_rrtm(:,:,2,band)*tau_aero_sw_rrtm(:,:,2,band) + & 326 cg_aer_strat(:,:,band)*piz_aer_strat(:,:,band)*tau_aer_strat(:,:,band) ) / & 327 MAX( piz_aero_sw_rrtm(:,:,2,band)*tau_aero_sw_rrtm(:,:,2,band) + & 328 piz_aer_strat(:,:,band)*tau_aer_strat(:,:,band), 1.e-15 ) 329 piz_aero_sw_rrtm(:,:,2,band) = ( piz_aero_sw_rrtm(:,:,2,band)*tau_aero_sw_rrtm(:,:,2,band) + & 330 piz_aer_strat(:,:,band)*tau_aer_strat(:,:,band) ) / & 331 MAX( tau_aero_sw_rrtm(:,:,2,band) + tau_aer_strat(:,:,band), 1.e-15 ) 332 tau_aero_sw_rrtm(:,:,2,band) = tau_aero_sw_rrtm(:,:,2,band) + tau_aer_strat(:,:,band) 333 !--natural aerosols bands 1 to NSW 314 334 cg_aero_sw_rrtm(:,:,1,band) = cg_aero_sw_rrtm(:,:,1,band) 315 335 piz_aero_sw_rrtm(:,:,1,band) = piz_aero_sw_rrtm(:,:,1,band) 316 336 tau_aero_sw_rrtm(:,:,1,band) = tau_aero_sw_rrtm(:,:,1,band) 317 ENDWHERE 318 ENDDO 337 ENDWHERE 338 ENDDO 339 ENDIF 319 340 320 341 !--total vertical aod at 10 um … … 331 352 ENDDO 332 353 354 IF ( .not. ok_volcan) THEN 333 355 DO band=1, NLW 334 356 WHERE (stratomask.GT.0.999999) 335 357 tau_aero_lw_rrtm(:,:,2,band) = tau_aero_lw_rrtm(:,:,2,band) + taulw_aer_strat(:,:,band) 336 358 tau_aero_lw_rrtm(:,:,1,band) = tau_aero_lw_rrtm(:,:,1,band) + taulw_aer_strat(:,:,band) 337 !--no stratospheric aerosols in index 1 for these tests338 ! tau_aero_lw_rrtm(:,:,1,band) = tau_aero_lw_rrtm(:,:,1,band)339 359 ENDWHERE 340 360 ENDDO 361 ELSE 362 DO band=1, NLW 363 WHERE (stratomask.GT.0.999999) 364 tau_aero_lw_rrtm(:,:,2,band) = tau_aero_lw_rrtm(:,:,2,band) + taulw_aer_strat(:,:,band) 365 !--no stratospheric aerosols in index 1 for these tests 366 tau_aero_lw_rrtm(:,:,1,band) = tau_aero_lw_rrtm(:,:,2,band) 367 ENDWHERE 368 ENDDO 369 ENDIF 341 370 342 371 !--default SSA value if there is no aerosol
Note: See TracChangeset
for help on using the changeset viewer.