This module contains calls to the sub-models to calculate quantities on the fast and slow time scales and update the boundary conditions and tiling structure where necessary.
time_manager_mod
mpp_domains_mod
fms_mod
vegetation_mod
soil_mod
land_types_mod
constants_mod
diag_manager_mod
field_manager_mod
tracer_manager_mod
subroutine init_land_with_xgrid & (atmos2land, bnd, time_init, time, dt_fast, dt_slow, atmos_domain) type(atmos_land_boundary_type), intent(inout) :: atmos2land ! land boundary data type(land_data_type), intent(inout) :: bnd ! land boundary data type(time_type), intent(in) :: time_init ! initial time of simulation (?) type(time_type), intent(in) :: time ! current time type(time_type), intent(in) :: dt_fast ! fast time step type(time_type), intent(in) :: dt_slow ! slow time step type(domain2d), intent(in), optional :: atmos_domain ! domain of computations |
subroutine init_land_with_area & ( atmos2land, bnd, gblon, gblat, gcellarea, gfrac, time, dt_fast, dt_slow, domain, & glon, glat ) type(atmos_land_boundary_type), intent(inout) :: atmos2land ! land boundary data type(land_data_type), intent(inout) :: bnd ! state to update real, intent(in) :: gblon(:)! lon boundaries of the grid cells real, intent(in) :: gblat(:)! lat boundaries of the grid cells real, intent(in) :: gcellarea(:,:) ! full area of the grid cells real, intent(in) :: gfrac(:,:) ! fraction of land in the grid cell type(time_type), intent(in) :: time ! current time type(time_type), intent(in) :: dt_fast ! fast time step type(time_type), intent(in) :: dt_slow ! slow time step type(domain2d), intent(in), optional :: domain ! domain of computations real, intent(in), optional :: glon(:), glat(:) ! centers ! of the grid cells |
subroutine land_model_end ( atmos2land, bnd ) type(atmos_land_boundary_type), intent(inout) :: atmos2land type(land_data_type), intent(inout) :: bnd ! state to update
call land_model_end ( bnd )
subroutine update_land_model_fast ( atmos2land, bnd ) type(atmos_land_boundary_type), intent(inout) :: atmos2land ! quantities exchanged between ! the atmosphere and the land type(land_data_type), intent(inout) :: bnd ! state to update
call update_land_model_fast ( atmos2land, bnd )
subroutine update_land_model_slow ( atmos2land, bnd ) type(atmos_land_boundary_type), intent(inout) :: atmos2land type(land_data_type), intent(inout) :: bnd ! state to update
call update_land_model_slow ( bnd )
subroutine update_land_bnd_fast ( bnd ) type(land_data_type), intent(inout) :: bnd ! state to update
call update_land_bnd_fast ( bnd )
subroutine update_land_bnd_slow ( bnd ) type(land_data_type), intent(inout) :: bnd ! state to update
call update_land_bnd_slow ( bnd )
subroutine init_land_diag(glonb, glatb, domain, id_lon, id_lat, glon, glat) real, intent(in) :: glonb(:), glatb(:) ! longitude and latitude boundaries of grid ! cells, specified for the global grid ! (not only domain) type(domain2d), intent(in) :: domain ! the domain of operations integer, intent(out) :: id_lon, id_lat ! IDs of respective diag. manager axes real, intent(in),optional :: glon(:), glat(:) ! coordinates of grid cell centers
call init_land_diag (glonb, glatb, domain, id_lon, id_lat)
subroutine err(ierr, file, line) integer, intent(in) :: ierr ! error code character(len=*), intent(in) :: file ! name of the file integer, intent(in) :: line ! number of line in the file
call err (ierr, file, line)
Diagnostic fields for module name identifier:
field name |
field description (units) |