This module contain the RUC land surface model driver. More...
Functions/Subroutines | |
| subroutine, public | lsm_ruc_init (me, master, isot, ivegsrc, nlunit, lsm_cold_start, flag_init, con_fvirt, con_rd, im, lsoil_ruc, lsoil, kice, nlev, lsm_ruc, lsm, slmsk, stype, vtype, landfrac, q1, prsl1, tsfc_lnd, tsfc_ice, tsfc_wat, tg3, smc, slc, stc, fice, min_seaice, sncovr_lnd, sncovr_ice, snoalb, facsf, facwf, alvsf, alvwf, alnsf, alnwf, sfcqv_lnd, sfcqv_ice, sfalb_lnd_bck, semisbase, semis_lnd, semis_ice, albdvis_lnd, albdnir_lnd, albivis_lnd, albinir_lnd, albdvis_ice, albdnir_ice, albivis_ice, albinir_ice, zs, sh2o, smfrkeep, tslb, smois, wetness, tsice, pores, resid, errmsg, errflg) |
| This subroutine calls set_soilveg_ruc() to specify vegetation and soil parameters for a given soil and land-use classification. | |
| subroutine, public | lsm_ruc_final (errmsg, errflg) |
| subroutine, public | lsm_ruc_run (iter, me, master, delt, kdt, im, nlev, lsm_ruc, lsm, imp_physics, imp_physics_gfdl, imp_physics_thompson, imp_physics_nssl, do_mynnsfclay, use_cdeps_data, mask_dat, exticeden, lsoil_ruc, lsoil, mosaic_lu, mosaic_soil, isncond_opt, isncovr_opt, nlcat, nscat, rdlai, xlat_d, xlon_d, oro, sigma, zs, t1, q1, qc, stype, vtype, vegtype_frac, soiltype_frac, sigmaf, laixy, dlwflx, dswsfc, tg3, coszen, land, icy, use_lake, rainnc, rainc, ice, snow, graupel, prsl1, zf, wind, shdmin, shdmax, srflag, sfalb_lnd_bck, snoalb, isot, ivegsrc, fice, smcwlt2, smcref2, min_lakeice, min_seaice, oceanfrac, rhonewsn1, con_cp, con_rd, con_rv, con_g, con_pi, con_hvap, con_hfus, con_fvirt, stbolt, rhoh2o, semisbase, semis_lnd, semis_ice, sfalb_lnd, sfalb_ice, sncovr1_lnd, weasd_lnd, snwdph_lnd, tskin_lnd, sncovr1_ice, weasd_ice, snwdph_ice, tskin_ice, smois, tsice, tslb, sh2o, keepfr, smfrkeep, canopy, trans, tsurf_lnd, tsnow_lnd, z0rl_lnd, sfcqc_lnd, sfcqv_lnd, qsurf_lnd, gflux_lnd, evap_lnd, hflx_lnd, runof, runoff, srunoff, drain, cm_lnd, ch_lnd, evbs, evcw, stm, wetness, snowfallac_lnd, acsnow_lnd, snowmt_lnd, snohf, albdvis_lnd, albdnir_lnd, albivis_lnd, albinir_lnd, sfcqc_ice, sfcqv_ice, tsurf_ice, tsnow_ice, z0rl_ice, qsurf_ice, gflux_ice, evap_ice, ep1d_ice, hflx_ice, cm_ice, ch_ice, snowfallac_ice, acsnow_ice, snowmt_ice, albdvis_ice, albdnir_ice, albivis_ice, albinir_ice, add_fire_heat_flux, fire_heat_flux_out, frac_grid_burned_out, rhosnf, sbsno, cmm_lnd, chh_lnd, cmm_ice, chh_ice, flag_iter, flag_guess, flag_init, lsm_cold_start, flag_cice, frac_grid, errmsg, errflg) |
This module contain the RUC land surface model driver.
| subroutine, public lsm_ruc::lsm_ruc_final | ( | character(len=*), intent(out) | errmsg, |
| integer, intent(out) | errflg | ||
| ) |
Definition at line 243 of file lsm_ruc.F90.
| subroutine, public lsm_ruc::lsm_ruc_init | ( | integer, intent(in) | me, |
| integer, intent(in) | master, | ||
| integer, intent(in) | isot, | ||
| integer, intent(in) | ivegsrc, | ||
| integer, intent(in) | nlunit, | ||
| logical, intent(in) | lsm_cold_start, | ||
| logical, intent(in) | flag_init, | ||
| real (kind_phys), intent(in) | con_fvirt, | ||
| real (kind_phys), intent(in) | con_rd, | ||
| integer, intent(in) | im, | ||
| integer, intent(in) | lsoil_ruc, | ||
| integer, intent(in) | lsoil, | ||
| integer, intent(in) | kice, | ||
| integer, intent(in) | nlev, | ||
| integer, intent(in) | lsm_ruc, | ||
| integer, intent(in) | lsm, | ||
| real (kind_phys), dimension(:), intent(in) | slmsk, | ||
| integer, dimension(:), intent(in) | stype, | ||
| integer, dimension(:), intent(in) | vtype, | ||
| real (kind_phys), dimension(:), intent(in) | landfrac, | ||
| real (kind_phys), dimension(:), intent(in) | q1, | ||
| real (kind_phys), dimension(:), intent(in) | prsl1, | ||
| real (kind_phys), dimension(:), intent(in) | tsfc_lnd, | ||
| real (kind_phys), dimension(:), intent(in) | tsfc_ice, | ||
| real (kind_phys), dimension(:), intent(in) | tsfc_wat, | ||
| real (kind_phys), dimension(:), intent(in) | tg3, | ||
| real (kind_phys), dimension(:,:), intent(in) | smc, | ||
| real (kind_phys), dimension(:,:), intent(in) | slc, | ||
| real (kind_phys), dimension(:,:), intent(in) | stc, | ||
| real (kind_phys), dimension(:), intent(in) | fice, | ||
| real (kind_phys), intent(in) | min_seaice, | ||
| real (kind_phys), dimension(:), intent(in) | sncovr_lnd, | ||
| real (kind_phys), dimension(:), intent(in) | sncovr_ice, | ||
| real (kind_phys), dimension(:), intent(in) | snoalb, | ||
| real (kind_phys), dimension(:), intent(in) | facsf, | ||
| real (kind_phys), dimension(:), intent(in) | facwf, | ||
| real (kind_phys), dimension(:), intent(in) | alvsf, | ||
| real (kind_phys), dimension(:), intent(in) | alvwf, | ||
| real (kind_phys), dimension(:), intent(in) | alnsf, | ||
| real (kind_phys), dimension(:), intent(in) | alnwf, | ||
| real (kind_phys), dimension(:), intent(inout) | sfcqv_lnd, | ||
| real (kind_phys), dimension(:), intent(inout) | sfcqv_ice, | ||
| real (kind_phys), dimension(:), intent(inout) | sfalb_lnd_bck, | ||
| real (kind_phys), dimension(:), intent(out) | semisbase, | ||
| real (kind_phys), dimension(:), intent(inout) | semis_lnd, | ||
| real (kind_phys), dimension(:), intent(inout) | semis_ice, | ||
| real (kind_phys), dimension(:), intent(inout) | albdvis_lnd, | ||
| real (kind_phys), dimension(:), intent(inout) | albdnir_lnd, | ||
| real (kind_phys), dimension(:), intent(inout) | albivis_lnd, | ||
| real (kind_phys), dimension(:), intent(inout) | albinir_lnd, | ||
| real (kind_phys), dimension(:), intent(inout) | albdvis_ice, | ||
| real (kind_phys), dimension(:), intent(inout) | albdnir_ice, | ||
| real (kind_phys), dimension(:), intent(inout) | albivis_ice, | ||
| real (kind_phys), dimension(:), intent(inout) | albinir_ice, | ||
| real (kind_phys), dimension(:), intent(out) | zs, | ||
| real (kind_phys), dimension(:,:), intent(inout) | sh2o, | ||
| real (kind_phys), dimension(:,:), intent(inout) | smfrkeep, | ||
| real (kind_phys), dimension(:,:), intent(inout) | tslb, | ||
| real (kind_phys), dimension(:,:), intent(inout) | smois, | ||
| real (kind_phys), dimension(:), intent(inout) | wetness, | ||
| real (kind_phys), dimension(:,:), intent(inout) | tsice, | ||
| real (kind_phys), dimension(:), intent(out) | pores, | ||
| real (kind_phys), dimension(:), intent(out) | resid, | ||
| character(len=*), intent(out) | errmsg, | ||
| integer, intent(out) | errflg | ||
| ) |
This subroutine calls set_soilveg_ruc() to specify vegetation and soil parameters for a given soil and land-use classification.
Definition at line 36 of file lsm_ruc.F90.
References module_soil_pre::init_soil_depth_3(), module_sf_ruclsm::rslf(), and set_soilveg_ruc_mod::set_soilveg_ruc().
| subroutine, public lsm_ruc::lsm_ruc_run | ( | integer, intent(in) | iter, |
| integer, intent(in) | me, | ||
| integer, intent(in) | master, | ||
| real (kind_phys), intent(in) | delt, | ||
| integer, intent(in) | kdt, | ||
| integer, intent(in) | im, | ||
| integer, intent(in) | nlev, | ||
| integer, intent(in) | lsm_ruc, | ||
| integer, intent(in) | lsm, | ||
| integer, intent(in) | imp_physics, | ||
| integer, intent(in) | imp_physics_gfdl, | ||
| integer, intent(in) | imp_physics_thompson, | ||
| integer, intent(in) | imp_physics_nssl, | ||
| logical, intent(in) | do_mynnsfclay, | ||
| logical, intent(in) | use_cdeps_data, | ||
| real (kind_phys), dimension(:), intent(in), optional | mask_dat, | ||
| logical, intent(in) | exticeden, | ||
| integer, intent(in) | lsoil_ruc, | ||
| integer, intent(in) | lsoil, | ||
| integer, intent(in) | mosaic_lu, | ||
| integer, intent(in) | mosaic_soil, | ||
| integer, intent(in) | isncond_opt, | ||
| integer, intent(in) | isncovr_opt, | ||
| integer, intent(in) | nlcat, | ||
| integer, intent(in) | nscat, | ||
| logical, intent(in) | rdlai, | ||
| real (kind_phys), dimension(:), intent(in) | xlat_d, | ||
| real (kind_phys), dimension(:), intent(in) | xlon_d, | ||
| real (kind_phys), dimension(:), intent(in) | oro, | ||
| real (kind_phys), dimension(:), intent(in) | sigma, | ||
| real (kind_phys), dimension(:), intent(in) | zs, | ||
| real (kind_phys), dimension(:), intent(in) | t1, | ||
| real (kind_phys), dimension(:), intent(in) | q1, | ||
| real (kind_phys), dimension(:), intent(in) | qc, | ||
| integer, dimension(:), intent(inout) | stype, | ||
| integer, dimension(:), intent(in) | vtype, | ||
| real (kind_phys), dimension(:,:), intent(in) | vegtype_frac, | ||
| real (kind_phys), dimension(:,:), intent(in) | soiltype_frac, | ||
| real (kind_phys), dimension(:), intent(in) | sigmaf, | ||
| real (kind_phys), dimension(:), intent(inout) | laixy, | ||
| real (kind_phys), dimension(:), intent(in) | dlwflx, | ||
| real (kind_phys), dimension(:), intent(in) | dswsfc, | ||
| real (kind_phys), dimension(:), intent(in) | tg3, | ||
| real (kind_phys), dimension(:), intent(in) | coszen, | ||
| logical, dimension(:), intent(in) | land, | ||
| logical, dimension(:), intent(in) | icy, | ||
| integer, dimension(:), intent(in) | use_lake, | ||
| real (kind_phys), dimension(:), intent(in) | rainnc, | ||
| real (kind_phys), dimension(:), intent(in) | rainc, | ||
| real (kind_phys), dimension(:), intent(in) | ice, | ||
| real (kind_phys), dimension(:), intent(in) | snow, | ||
| real (kind_phys), dimension(:), intent(in) | graupel, | ||
| real (kind_phys), dimension(:), intent(in) | prsl1, | ||
| real (kind_phys), dimension(:), intent(in) | zf, | ||
| real (kind_phys), dimension(:), intent(in) | wind, | ||
| real (kind_phys), dimension(:), intent(in) | shdmin, | ||
| real (kind_phys), dimension(:), intent(in) | shdmax, | ||
| real (kind_phys), dimension(:), intent(in) | srflag, | ||
| real (kind_phys), dimension(:), intent(in) | sfalb_lnd_bck, | ||
| real (kind_phys), dimension(:), intent(in) | snoalb, | ||
| integer, intent(in) | isot, | ||
| integer, intent(in) | ivegsrc, | ||
| real (kind_phys), dimension(:), intent(inout) | fice, | ||
| real (kind_phys), dimension(:), intent(inout) | smcwlt2, | ||
| real (kind_phys), dimension(:), intent(inout) | smcref2, | ||
| real (kind_phys), intent(in) | min_lakeice, | ||
| real (kind_phys), intent(in) | min_seaice, | ||
| real (kind_phys), dimension(:), intent(in) | oceanfrac, | ||
| real (kind_phys), dimension(:), intent(in) | rhonewsn1, | ||
| real (kind_phys), intent(in) | con_cp, | ||
| real (kind_phys), intent(in) | con_rd, | ||
| real (kind_phys), intent(in) | con_rv, | ||
| real (kind_phys), intent(in) | con_g, | ||
| real (kind_phys), intent(in) | con_pi, | ||
| real (kind_phys), intent(in) | con_hvap, | ||
| real (kind_phys), intent(in) | con_hfus, | ||
| real (kind_phys), intent(in) | con_fvirt, | ||
| real (kind_phys), intent(in) | stbolt, | ||
| real (kind_phys), intent(in) | rhoh2o, | ||
| real (kind_phys), dimension(:), intent(inout) | semisbase, | ||
| real (kind_phys), dimension(:), intent(inout) | semis_lnd, | ||
| real (kind_phys), dimension(:), intent(inout) | semis_ice, | ||
| real (kind_phys), dimension(:), intent(inout) | sfalb_lnd, | ||
| real (kind_phys), dimension(:), intent(inout) | sfalb_ice, | ||
| real (kind_phys), dimension(:), intent(inout) | sncovr1_lnd, | ||
| real (kind_phys), dimension(:), intent(inout) | weasd_lnd, | ||
| real (kind_phys), dimension(:), intent(inout) | snwdph_lnd, | ||
| real (kind_phys), dimension(:), intent(inout) | tskin_lnd, | ||
| real (kind_phys), dimension(:), intent(inout) | sncovr1_ice, | ||
| real (kind_phys), dimension(:), intent(inout) | weasd_ice, | ||
| real (kind_phys), dimension(:), intent(inout) | snwdph_ice, | ||
| real (kind_phys), dimension(:), intent(inout) | tskin_ice, | ||
| real (kind_phys), dimension(:,:), intent(inout) | smois, | ||
| real (kind_phys), dimension(:,:), intent(inout) | tsice, | ||
| real (kind_phys), dimension(:,:), intent(inout) | tslb, | ||
| real (kind_phys), dimension(:,:), intent(inout) | sh2o, | ||
| real (kind_phys), dimension(:,:), intent(inout) | keepfr, | ||
| real (kind_phys), dimension(:,:), intent(inout) | smfrkeep, | ||
| real (kind_phys), dimension(:), intent(inout) | canopy, | ||
| real (kind_phys), dimension(:), intent(inout) | trans, | ||
| real (kind_phys), dimension(:), intent(inout) | tsurf_lnd, | ||
| real (kind_phys), dimension(:), intent(inout) | tsnow_lnd, | ||
| real (kind_phys), dimension(:), intent(inout) | z0rl_lnd, | ||
| real (kind_phys), dimension(:), intent(inout) | sfcqc_lnd, | ||
| real (kind_phys), dimension(:), intent(inout) | sfcqv_lnd, | ||
| real (kind_phys), dimension(:), intent(inout) | qsurf_lnd, | ||
| real (kind_phys), dimension(:), intent(inout) | gflux_lnd, | ||
| real (kind_phys), dimension(:), intent(inout) | evap_lnd, | ||
| real (kind_phys), dimension(:), intent(inout) | hflx_lnd, | ||
| real (kind_phys), dimension(:), intent(inout) | runof, | ||
| real (kind_phys), dimension(:), intent(inout) | runoff, | ||
| real (kind_phys), dimension(:), intent(inout) | srunoff, | ||
| real (kind_phys), dimension(:), intent(inout) | drain, | ||
| real (kind_phys), dimension(:), intent(in) | cm_lnd, | ||
| real (kind_phys), dimension(:), intent(in) | ch_lnd, | ||
| real (kind_phys), dimension(:), intent(inout) | evbs, | ||
| real (kind_phys), dimension(:), intent(inout) | evcw, | ||
| real (kind_phys), dimension(:), intent(inout) | stm, | ||
| real (kind_phys), dimension(:), intent(inout) | wetness, | ||
| real (kind_phys), dimension(:), intent(inout) | snowfallac_lnd, | ||
| real (kind_phys), dimension(:), intent(inout) | acsnow_lnd, | ||
| real (kind_phys), dimension(:), intent(inout) | snowmt_lnd, | ||
| real (kind_phys), dimension(:), intent(inout) | snohf, | ||
| real (kind_phys), dimension(:), intent(out) | albdvis_lnd, | ||
| real (kind_phys), dimension(:), intent(out) | albdnir_lnd, | ||
| real (kind_phys), dimension(:), intent(out) | albivis_lnd, | ||
| real (kind_phys), dimension(:), intent(out) | albinir_lnd, | ||
| real (kind_phys), dimension(:), intent(inout) | sfcqc_ice, | ||
| real (kind_phys), dimension(:), intent(inout) | sfcqv_ice, | ||
| real (kind_phys), dimension(:), intent(inout) | tsurf_ice, | ||
| real (kind_phys), dimension(:), intent(inout) | tsnow_ice, | ||
| real (kind_phys), dimension(:), intent(inout) | z0rl_ice, | ||
| real (kind_phys), dimension(:), intent(inout) | qsurf_ice, | ||
| real (kind_phys), dimension(:), intent(inout) | gflux_ice, | ||
| real (kind_phys), dimension(:), intent(inout) | evap_ice, | ||
| real (kind_phys), dimension(:), intent(inout) | ep1d_ice, | ||
| real (kind_phys), dimension(:), intent(inout) | hflx_ice, | ||
| real (kind_phys), dimension(:), intent(in) | cm_ice, | ||
| real (kind_phys), dimension(:), intent(in) | ch_ice, | ||
| real (kind_phys), dimension(:), intent(inout) | snowfallac_ice, | ||
| real (kind_phys), dimension(:), intent(inout) | acsnow_ice, | ||
| real (kind_phys), dimension(:), intent(inout) | snowmt_ice, | ||
| real (kind_phys), dimension(:), intent(out) | albdvis_ice, | ||
| real (kind_phys), dimension(:), intent(out) | albdnir_ice, | ||
| real (kind_phys), dimension(:), intent(out) | albivis_ice, | ||
| real (kind_phys), dimension(:), intent(out) | albinir_ice, | ||
| logical, intent(in) | add_fire_heat_flux, | ||
| real (kind_phys), dimension(:), intent(in) | fire_heat_flux_out, | ||
| real (kind_phys), dimension(:), intent(in) | frac_grid_burned_out, | ||
| real (kind_phys), dimension(:), intent(inout) | rhosnf, | ||
| real (kind_phys), dimension(:), intent(inout) | sbsno, | ||
| real (kind_phys), dimension(:), intent(inout) | cmm_lnd, | ||
| real (kind_phys), dimension(:), intent(inout) | chh_lnd, | ||
| real (kind_phys), dimension(:), intent(inout) | cmm_ice, | ||
| real (kind_phys), dimension(:), intent(inout) | chh_ice, | ||
| logical, dimension(:), intent(in) | flag_iter, | ||
| logical, dimension(:), intent(in) | flag_guess, | ||
| logical, intent(in) | flag_init, | ||
| logical, intent(in) | lsm_cold_start, | ||
| logical, dimension(:), intent(in) | flag_cice, | ||
| logical, intent(in) | frac_grid, | ||
| character(len=*), intent(out) | errmsg, | ||
| integer, intent(out) | errflg | ||
| ) |
– number of soil categories
– set parameters for IGBP land-use data
– sanity checks on sneqv and snowh
– sanity checks on sneqv and snowh
Definition at line 329 of file lsm_ruc.F90.
References module_soil_pre::init_soil_3_real(), module_sf_ruclsm::lsmruc(), module_sf_ruclsm::rslf(), and module_sf_ruclsm::ruclsminit().