Ignore:
Timestamp:
Oct 1, 2018 2:37:10 AM (6 years ago)
Author:
raasch
Message:

modularization of the ocean code

File:
1 edited

Legend:

Unmodified
Added
Removed
  • palm/trunk/SOURCE/netcdf_interface_mod.f90

    r3274 r3294  
    2525! -----------------
    2626! $Id$
     27! changes concerning modularization of ocean option
     28!
     29! 3274 2018-09-24 15:42:55Z knoop
    2730! Modularization of all bulk cloud physics code components
    2831!
     
    568571               do3d_time_count, domask_time_count, end_time, land_surface,     &
    569572               mask_size_l, mask_i, mask_i_global, mask_j, mask_j_global,      &
    570                mask_k_global, message_string, mid, ntdim_2d_xy,                &
    571                ntdim_2d_xz, ntdim_2d_yz, ntdim_3d, nz_do3d, plant_canopy,      &
     573               mask_k_global, message_string, mid, ntdim_2d_xy, ntdim_2d_xz,   &
     574               ntdim_2d_yz, ntdim_3d, nz_do3d, ocean_mode, plant_canopy,       &
    572575               run_description_header, section, simulated_time,                &
    573576               simulated_time_at_begin, skip_time_data_output_av,              &
     
    589592    USE land_surface_model_mod,                                                &
    590593        ONLY: lsm_define_netcdf_grid, nzb_soil, nzt_soil, nzs, zs
     594
     595    USE ocean_mod,                                                             &
     596        ONLY:  ocean_define_netcdf_grid
    591597
    592598    USE pegrid
     
    943949                CASE ( 'e', 'lpt', 'nc', 'nr', 'p', 'pc', 'pr', 'prr', 'pt',   &
    944950                       'q', 'qc', 'ql', 'ql_c', 'ql_v', 'ql_vp', 'qr', 'qv',   &
    945                        'rho_ocean', 's', 'sa', 'vpt'  )
     951                       's', 'vpt'  )
    946952
    947953                   grid_x = 'x'
     
    971977
    972978!             
    973 !--       Block of urban surface model outputs   
     979!--             Block of urban surface model outputs
    974980                CASE ( 'usm_output' )
    975981
    976                    CALL usm_define_netcdf_grid( domask(mid,av,i), found, &
     982                   CALL usm_define_netcdf_grid( domask( mid,av,i), found,      &
    977983                                                        grid_x, grid_y, grid_z )
    978984
    979985                CASE DEFAULT
    980 
    981                    CALL tcm_define_netcdf_grid( domask(mid,av,i), found, &
    982                                                         grid_x, grid_y, grid_z )
    983 
    984 !
    985 !--                Check for land surface quantities
     986!
     987!--                Check for quantities defined in other modules
     988                   IF ( .NOT. found  .AND.  air_chemistry )  THEN
     989                      CALL chem_define_netcdf_grid( domask(mid,av,i), found,   &
     990                                                    grid_x, grid_y, grid_z )
     991                   ENDIF
     992
     993                   IF ( .NOT. found  .AND.  gust_module_enabled )  THEN
     994                      CALL gust_define_netcdf_grid( domask(mid,av,i), found,   &
     995                                                    grid_x, grid_y, grid_z )
     996                   ENDIF
     997
    986998                   IF ( land_surface )  THEN
    987999                      CALL lsm_define_netcdf_grid( domask(mid,av,i), found,    &
    9881000                                                   grid_x, grid_y, grid_z )
    9891001                   ENDIF
    990 !
    991 !--                Check for plant canopy quantities
     1002
     1003                   IF ( .NOT. found  .AND.  ocean_mode )  THEN
     1004                      CALL ocean_define_netcdf_grid( domask(mid,av,i), found,  &
     1005                                                     grid_x, grid_y, grid_z )
     1006                   ENDIF
     1007
    9921008                   IF ( .NOT. found  .AND.  plant_canopy )  THEN
    9931009                      CALL pcm_define_netcdf_grid( domask(mid,av,i), found,    &
     
    9951011                   ENDIF
    9961012
    997 !
    998 !--                Check for radiation quantities
    9991013                   IF ( .NOT. found  .AND.  radiation )  THEN
    10001014                      CALL radiation_define_netcdf_grid( domask(mid,av,i),     &
     
    10031017                   ENDIF
    10041018
    1005 !
    1006 !--                Check for gust module quantities
    1007                    IF ( .NOT. found  .AND.  gust_module_enabled )  THEN
    1008                       CALL gust_define_netcdf_grid( domask(mid,av,i), found,   &
    1009                                                     grid_x, grid_y, grid_z )
    1010                    ENDIF
    1011 
    1012 !
    1013 !--                Check for chemistry quantities                   
    1014                    IF ( .NOT. found  .AND.  air_chemistry )  THEN
    1015                       CALL chem_define_netcdf_grid( domask(mid,av,i),          &
    1016                                                     found, grid_x, grid_y,     &
    1017                                                     grid_z )
    1018                    ENDIF
    1019 
    1020 !
    1021 !--                Check for user-defined quantities
     1019                   CALL tcm_define_netcdf_grid( domask( mid,av,i), found,      &
     1020                                                        grid_x, grid_y, grid_z )
     1021
     1022!
     1023!--                Now check for user-defined quantities
    10221024                   IF ( .NOT. found )  THEN
    10231025                      CALL user_define_netcdf_grid( domask(mid,av,i), found,   &
     
    48064808!
    48074809!--       Define y-axis
    4808           CALL netcdf_create_dim(id_set_sp, 'k_y', ny/2, id_dim_y_sp, 282 )
     4810          CALL netcdf_create_dim( id_set_sp, 'k_y', ny/2, id_dim_y_sp, 282 )
    48094811          CALL netcdf_create_var( id_set_sp, (/ id_dim_y_sp /), 'k_y',         &
    48104812                                  NF90_DOUBLE, id_var_y_sp, 'm-1', '', 283,    &
Note: See TracChangeset for help on using the changeset viewer.