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/write_restart_data_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!
     
    9598       USE arrays_3d,                                                          &
    9699           ONLY:  inflow_damping_factor, mean_inflow_profiles, pt_init,        &
    97                   q_init, ref_state, s_init, sa_init, u_init, ug, v_init, vg
     100                  q_init, ref_state, s_init, u_init, ug, v_init, vg
     101
     102       USE bulk_cloud_model_mod,                                               &
     103           ONLY:  bulk_cloud_model, bcm_wrd_global
    98104
    99105       USE date_and_time_mod,                                                  &
     
    112118           ONLY:  nx, ny, nz
    113119
    114        USE bulk_cloud_model_mod,                                               &
    115            ONLY:  bulk_cloud_model, bcm_wrd_global
    116 
    117120       USE model_1d_mod,                                                       &
    118121           ONLY:  damp_level_1d, dt_pr_1d, dt_run_control_1d, end_time_1d
     
    120123       USE netcdf_interface,                                                   &
    121124           ONLY:  netcdf_precision, output_for_t0
     125
     126       USE ocean_mod,                                                          &
     127           ONLY:  ocean_wrd_global
    122128
    123129       USE particle_attributes,                                                &
     
    238244       WRITE ( 14 )  bc_s_t
    239245
    240        CALL wrd_write_string( 'bc_sa_t' )
    241        WRITE ( 14 )  bc_sa_t
    242 
    243246       CALL wrd_write_string( 'bc_uv_b' )
    244247       WRITE ( 14 )  bc_uv_b
     
    246249       CALL wrd_write_string( 'bc_uv_t' )
    247250       WRITE ( 14 )  bc_uv_t
    248 
    249        CALL wrd_write_string( 'bottom_salinityflux' )
    250        WRITE ( 14 )  bottom_salinityflux
    251251
    252252       CALL wrd_write_string( 'building_height' )
     
    497497       WRITE ( 14 )  ny
    498498
    499        CALL wrd_write_string( 'ocean' )
    500        WRITE ( 14 )  ocean
     499       CALL wrd_write_string( 'ocean_mode' )
     500       WRITE ( 14 )  ocean_mode
    501501
    502502       CALL wrd_write_string( 'old_dt' )
     
    622622       CALL wrd_write_string( 's_vertical_gradient_level_ind' )
    623623       WRITE ( 14 )  s_vertical_gradient_level_ind
    624 
    625        CALL wrd_write_string( 'sa_init' )
    626        WRITE ( 14 )  sa_init
    627 
    628        CALL wrd_write_string( 'sa_surface' )
    629        WRITE ( 14 )  sa_surface
    630 
    631        CALL wrd_write_string( 'sa_vertical_gradient' )
    632        WRITE ( 14 )  sa_vertical_gradient
    633 
    634        CALL wrd_write_string( 'sa_vertical_gradient_level' )
    635        WRITE ( 14 )  sa_vertical_gradient_level
    636624
    637625       CALL wrd_write_string( 'scalar_advec' )
     
    738726       WRITE ( 14 )  top_momentumflux_v
    739727
    740        CALL wrd_write_string( 'top_salinityflux' )
    741        WRITE ( 14 )  top_salinityflux
    742 
    743728       CALL wrd_write_string( 'top_scalarflux' )
    744729       WRITE ( 14 )  top_scalarflux
     
    876861       WRITE ( 14 )  wall_humidityflux
    877862
    878        CALL wrd_write_string( 'wall_salinityflux' )
    879        WRITE ( 14 )  wall_salinityflux
    880 
    881863       CALL wrd_write_string( 'wall_scalarflux' )
    882864       WRITE ( 14 )  wall_scalarflux
     
    897879       WRITE ( 14 )  z_i
    898880
    899 
    900 !   
    901 !-- The order of the calls can be different as in read_restart_data_mod where
    902 !-- the restart data will be read
    903 
    904 !
    905 !-- If required, write restart data for gust module.
    906        IF ( bulk_cloud_model )  CALL bcm_wrd_global
    907 !
    908 !-- If required, write restart data for wind turbine model.
    909        IF ( wind_turbine )  CALL wtm_wrd_global
    910 
    911 !
    912 !-- If required, write restart data for virtual measurements.
    913        IF ( virtual_flight )  CALL flight_wrd_global
    914 
    915 !
    916 !-- If required, write restart data for turbulence generator.
    917        IF ( syn_turb_gen )  CALL stg_wrd_global
    918 
    919 !
    920 !-- If required, write restart data for gust module.
     881!
     882!--    Write restart data of the other modules
     883!--    The order of the calls can be different as in read_restart_data_mod where
     884!--    the restart data will be read
     885       IF ( bulk_cloud_model )     CALL bcm_wrd_global
     886       IF ( virtual_flight )       CALL flight_wrd_global
    921887       IF ( gust_module_enabled )  CALL gust_wrd_global
    922 
    923 !
    924 !-- Write restart data for user data.
     888       IF ( ocean_mode )           CALL ocean_wrd_global
     889       IF ( syn_turb_gen )         CALL stg_wrd_global
     890       IF ( wind_turbine )         CALL wtm_wrd_global
     891!
     892!--    Write restart data of the user-interface
    925893       CALL user_wrd_global
    926894
     
    940908
    941909       USE arrays_3d,                                                          &
    942            ONLY:  e, kh, km, p, pt, q, ql, s, sa, u, u_m_l, u_m_n, u_m_r,      &
     910           ONLY:  e, kh, km, p, pt, q, ql, s, u, u_m_l, u_m_n, u_m_r,          &
    943911                  u_m_s, v, v_m_l, v_m_n, v_m_r, v_m_s, vpt, w, w_m_l, w_m_n,  &
    944912                  w_m_r, w_m_s
     
    960928       USE land_surface_model_mod,                                             &
    961929           ONLY:  lsm_wrd_local
     930
     931       USE ocean_mod,                                                          &
     932           ONLY:  ocean_wrd_local
    962933
    963934       USE particle_attributes,                                                &
     
    11121083       ENDIF
    11131084       
    1114        IF ( ocean )  THEN
    1115 
    1116           IF ( ALLOCATED( rho_ocean_av ) )  THEN
    1117              CALL wrd_write_string( 'rho_ocean_av' )
    1118              WRITE ( 14 )  rho_ocean_av
    1119           ENDIF
    1120 
    1121           CALL wrd_write_string( 'sa' )
    1122           WRITE ( 14 )  sa
    1123 
    1124           IF ( ALLOCATED( sa_av ) )  THEN
    1125              CALL wrd_write_string( 'sa_av' )
    1126              WRITE ( 14 )  sa_av
    1127           ENDIF
    1128 
    1129        ENDIF
    1130 
    11311085       IF ( ALLOCATED( ql_c_av ) )  THEN
    11321086          CALL wrd_write_string( 'ql_c_av' )
     
    13101264
    13111265!
    1312 !-- If required, write restart data for microphysics module.
    1313        IF ( bulk_cloud_model )  THEN
    1314           CALL bcm_wrd_local
    1315        ENDIF
    1316 
    1317 !
    1318 !-- Write surface-related restart data.
     1266!--    Write restart data of other modules
     1267       IF ( bulk_cloud_model )     CALL bcm_wrd_local
     1268       IF ( air_chemistry )        CALL chem_wrd_local
     1269       IF ( gust_module_enabled )  CALL gust_wrd_local
     1270       IF ( land_surface )         CALL lsm_wrd_local
     1271       IF ( ocean_mode )           CALL ocean_wrd_local
    13191272       CALL surface_wrd_local
    1320 
    1321 !
    1322 !-- If required, write restart data for urban surface model.
    1323        IF ( urban_surface )  THEN
    1324           CALL usm_wrd_local
    1325        ENDIF
    1326 
    1327 !
    1328 !-- If required, write restart data for land surface model.
    1329        IF ( land_surface )  THEN
    1330           CALL lsm_wrd_local
    1331        ENDIF
    1332 
    1333 !
    1334 !-- If required, write restart data for radiation model.
    1335        IF ( radiation )  THEN
    1336           CALL radiation_wrd_local
    1337        ENDIF
    1338 
    1339 !
    1340 !-- If required, write restart data for chemistry model.
    1341        IF ( air_chemistry )  THEN
    1342           CALL chem_wrd_local
    1343        ENDIF
    1344 
    1345 !
    1346 !-- If required, write restart data for gust module.
    1347        IF ( gust_module_enabled )  THEN
    1348           CALL gust_wrd_local
    1349        ENDIF
    1350 
    1351 !
    1352 !-- Write user-related restart data.
     1273       IF ( radiation )            CALL radiation_wrd_local
     1274       IF ( urban_surface )        CALL usm_wrd_local
     1275
     1276!
     1277!--    Write user-defined restart data
    13531278       CALL user_wrd_local
    13541279
    1355 !--    Write end label.
     1280!
     1281!--    Write end label
    13561282       CALL wrd_write_string( '*** end ***' )
    13571283
Note: See TracChangeset for help on using the changeset viewer.