Ignore:
Timestamp:
Sep 24, 2018 3:42:55 PM (5 years ago)
Author:
knoop
Message:

Modularization of all bulk cloud physics code components

File:
1 edited

Legend:

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

    r3271 r3274  
    2626! -----------------
    2727! $Id$
     28! Modularization of all bulk cloud physics code components
     29!
     30! 3271 2018-09-24 08:20:34Z suehring
    2831! Comment revised
    2932!
     
    231234    USE arrays_3d,                                                             &
    232235        ONLY:  e, kh, nc, nr, pt, q, ql, qc, qr, s, u, v, vpt, w, zu, zw,      &
    233                drho_air_zw, rho_air_zw
     236               drho_air_zw, rho_air_zw, d_exner
     237
     238    USE basic_constants_and_equations_mod,                                     &
     239        ONLY:  g, kappa, lv_d_cp, pi
    234240
    235241    USE chem_modules,                                                          &
    236242        ONLY:  constant_csflux, nvar
    237243
    238     USE cloud_parameters,                                                      &
    239         ONLY:  l_d_cp, pt_d_t
    240 
    241     USE constants,                                                             &
    242         ONLY:  pi
    243 
    244244    USE cpulog
    245245
    246246    USE control_parameters,                                                    &
    247         ONLY:  air_chemistry, cloud_droplets, cloud_physics,                   &
    248                constant_heatflux, constant_scalarflux,                         &     
    249                constant_waterflux, coupling_mode, g, humidity, ibc_e_b,        &
    250                ibc_pt_b, initializing_actions, kappa,                          &
     247        ONLY:  air_chemistry, cloud_droplets,                                  &
     248               constant_heatflux, constant_scalarflux,                         &
     249               constant_waterflux, coupling_mode, humidity, ibc_e_b,           &
     250               ibc_pt_b, initializing_actions,                                 &
    251251               intermediate_timestep_count, intermediate_timestep_count_max,   &
    252                land_surface, large_scale_forcing, lsf_surf,                    &
    253                message_string, microphysics_morrison, microphysics_seifert,    &
     252               land_surface, large_scale_forcing, lsf_surf, message_string,    &
    254253               most_method, neutral, passive_scalar, pt_surface, q_surface,    &
    255254               run_coupled, surface_pressure, simulated_time, terminate_run,   &
     
    264263
    265264    USE kinds
     265
     266    USE bulk_cloud_model_mod,                                                  &
     267        ONLY: bulk_cloud_model, microphysics_morrison, microphysics_seifert
    266268
    267269    USE pegrid
     
    14671469
    14681470             ENDDO
    1469           ELSEIF ( cloud_physics  .OR.  cloud_droplets )  THEN
     1471          ELSEIF ( bulk_cloud_model  .OR.  cloud_droplets )  THEN
    14701472             !$OMP PARALLEL DO PRIVATE( i, j, k, z_mo )
    14711473             DO  m = 1, surf%ns
     
    15961598          k   = surf%k(m)
    15971599
    1598           IF ( cloud_physics ) THEN
    1599              surf%pt1(m) = pt(k,j,i) + l_d_cp * pt_d_t(k) * ql(k,j,i)
     1600          IF ( bulk_cloud_model ) THEN
     1601             surf%pt1(m) = pt(k,j,i) + lv_d_cp * d_exner(k) * ql(k,j,i)
    16001602             surf%qv1(m) = q(k,j,i) - ql(k,j,i)
    16011603          ELSEIF( cloud_droplets ) THEN
    1602              surf%pt1(m) = pt(k,j,i) + l_d_cp * pt_d_t(k) * ql(k,j,i)
     1604             surf%pt1(m) = pt(k,j,i) + lv_d_cp * d_exner(k) * ql(k,j,i)
    16031605             surf%qv1(m) = q(k,j,i)
    16041606          ELSE
     
    18201822             ENDIF
    18211823
    1822              IF ( cloud_physics  .OR.  cloud_droplets )  THEN
     1824             IF ( bulk_cloud_model  .OR.  cloud_droplets )  THEN
    18231825               !$OMP PARALLEL DO PRIVATE( i, j, k, z_mo )
    18241826                DO  m = 1, surf%ns   
     
    19271929!
    19281930!--    If required compute qc* and nc*
    1929        IF ( cloud_physics  .AND.  microphysics_morrison  .AND.                 &
     1931       IF ( bulk_cloud_model  .AND.  microphysics_morrison  .AND.              &
    19301932            .NOT. surf_vertical )  THEN
    19311933          !$OMP PARALLEL DO PRIVATE( i, j, k, z_mo )
     
    19531955!
    19541956!--    If required compute qr* and nr*
    1955        IF ( cloud_physics  .AND.  microphysics_seifert  .AND.                  &
     1957       IF ( bulk_cloud_model  .AND.  microphysics_seifert  .AND.               &
    19561958            .NOT. surf_vertical )  THEN
    19571959          !$OMP PARALLEL DO PRIVATE( i, j, k, z_mo )
     
    21452147!
    21462148!--       Compute (turbulent) fluxes of cloud water content and cloud drop conc.
    2147           IF ( cloud_physics  .AND.  microphysics_morrison  .AND.              &
     2149          IF ( bulk_cloud_model  .AND.  microphysics_morrison  .AND.           &
    21482150               .NOT. downward)  THEN
    21492151             !$OMP PARALLEL DO PRIVATE( i, j )
     
    21592161!
    21602162!--       Compute (turbulent) fluxes of rain water content and rain drop conc.
    2161           IF ( cloud_physics  .AND.  microphysics_seifert  .AND.               &
     2163          IF ( bulk_cloud_model  .AND.  microphysics_seifert  .AND.            &
    21622164               .NOT. downward)  THEN
    21632165             !$OMP PARALLEL DO PRIVATE( i, j )
Note: See TracChangeset for help on using the changeset viewer.