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

Modularization of all bulk cloud physics code components

File:
1 edited

Legend:

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

    r3241 r3274  
    2525! -----------------
    2626! $Id$
     27! Modularization of all bulk cloud physics code components
     28!
     29! 3241 2018-09-12 15:02:00Z raasch
    2730! unused variables removed
    2831!
     
    326329    USE control_parameters,                                                    &
    327330        ONLY:  air_chemistry, bc_dirichlet_l, bc_dirichlet_n, bc_dirichlet_r,  &
    328                bc_dirichlet_s, cloud_physics, child_domain,                    &
     331               bc_dirichlet_s, child_domain,                                   &
    329332               constant_diffusion, constant_flux_layer,                        &
    330333               coupling_char, dt_3d, dz, humidity, message_string,             &
    331                microphysics_morrison, microphysics_seifert,                    &
    332334               neutral, passive_scalar, rans_mode, rans_tke_e,                 &
    333335               roughness_length, simulated_time, topography, volume_flow
     
    348350        ONLY:  nbgp, nx, nxl, nxlg, nxlu, nxr, nxrg, ny, nyn, nyng, nys, nysg, &
    349351               nysv, nz, nzb, nzt, wall_flags_0
     352
     353    USE bulk_cloud_model_mod,                                                  &
     354        ONLY: bulk_cloud_model, microphysics_morrison, microphysics_seifert
    350355
    351356    USE particle_attributes,                                                   &
     
    12691274          CALL pmc_set_dataarray_name( 'coarse', 'q'  ,'fine', 'q',  ierr )
    12701275
    1271           IF ( cloud_physics  .AND.  microphysics_morrison )  THEN
     1276          IF ( bulk_cloud_model  .AND.  microphysics_morrison )  THEN
    12721277            CALL pmc_set_dataarray_name( 'coarse', 'qc'  ,'fine', 'qc',  ierr ) 
    12731278            CALL pmc_set_dataarray_name( 'coarse', 'nc'  ,'fine', 'nc',  ierr )
    12741279          ENDIF
    12751280
    1276           IF ( cloud_physics  .AND.  microphysics_seifert )  THEN
     1281          IF ( bulk_cloud_model  .AND.  microphysics_seifert )  THEN
    12771282             CALL pmc_set_dataarray_name( 'coarse', 'qr'  ,'fine', 'qr',  ierr )
    12781283             CALL pmc_set_dataarray_name( 'coarse', 'nr'  ,'fine', 'nr',  ierr )
     
    38423847                                      r2yo, r1zo, r2zo, 's' )
    38433848
    3844           IF ( cloud_physics  .AND.  microphysics_morrison )  THEN
     3849          IF ( bulk_cloud_model  .AND.  microphysics_morrison )  THEN
    38453850             CALL pmci_interp_tril_all ( qc, qcc, ico, jco, kco, r1xo, r2xo,   &
    38463851                                          r1yo, r2yo, r1zo, r2zo, 's' )
     
    38493854          ENDIF
    38503855
    3851           IF ( cloud_physics  .AND.  microphysics_seifert )  THEN
     3856          IF ( bulk_cloud_model  .AND.  microphysics_seifert )  THEN
    38523857             CALL pmci_interp_tril_all ( qr, qrc, ico, jco, kco, r1xo, r2xo,   &
    38533858                                         r1yo, r2yo, r1zo, r2zo, 's' )
     
    45754580                                          nzt_topo_nestbc_l, 'l', 's' )
    45764581
    4577                 IF ( cloud_physics  .AND.  microphysics_morrison )  THEN
     4582                IF ( bulk_cloud_model  .AND.  microphysics_morrison )  THEN
    45784583                   CALL pmci_interp_tril_lr( qc, qcc, ico, jco, kco, r1xo,     &
    45794584                                             r2xo, r1yo, r2yo, r1zo, r2zo,     &
     
    45894594                ENDIF
    45904595
    4591                 IF ( cloud_physics  .AND.  microphysics_seifert )  THEN
     4596                IF ( bulk_cloud_model  .AND.  microphysics_seifert )  THEN
    45924597                   CALL pmci_interp_tril_lr( qr, qrc, ico, jco, kco, r1xo,     &
    45934598                                             r2xo, r1yo, r2yo, r1zo, r2zo,     &
     
    46834688                                          nzt_topo_nestbc_r, 'r', 's' )
    46844689
    4685                 IF ( cloud_physics  .AND.  microphysics_morrison )  THEN
     4690                IF ( bulk_cloud_model  .AND.  microphysics_morrison )  THEN
    46864691
    46874692                   CALL pmci_interp_tril_lr( qc, qcc, ico, jco, kco, r1xo,     &
     
    47004705                ENDIF
    47014706
    4702                 IF ( cloud_physics  .AND.  microphysics_seifert )  THEN
     4707                IF ( bulk_cloud_model  .AND.  microphysics_seifert )  THEN
    47034708
    47044709     
     
    47964801                                          nzt_topo_nestbc_s, 's', 's' )
    47974802
    4798                 IF ( cloud_physics  .AND.  microphysics_morrison )  THEN
     4803                IF ( bulk_cloud_model  .AND.  microphysics_morrison )  THEN
    47994804
    48004805                   CALL pmci_interp_tril_sn( qc, qcc, ico, jco, kco, r1xo,     &
     
    48124817                ENDIF
    48134818
    4814                 IF ( cloud_physics  .AND.  microphysics_seifert )  THEN
     4819                IF ( bulk_cloud_model  .AND.  microphysics_seifert )  THEN
    48154820
    48164821                   CALL pmci_interp_tril_sn( qr, qrc, ico, jco, kco, r1xo,     &
     
    49074912                                          nzt_topo_nestbc_n, 'n', 's' )
    49084913
    4909                 IF ( cloud_physics  .AND.  microphysics_morrison )  THEN
     4914                IF ( bulk_cloud_model  .AND.  microphysics_morrison )  THEN
    49104915
    49114916                   CALL pmci_interp_tril_sn( qc, qcc, ico, jco, kco, r1xo,     &
     
    49234928                ENDIF
    49244929
    4925                 IF ( cloud_physics  .AND.  microphysics_seifert )  THEN
     4930                IF ( bulk_cloud_model  .AND.  microphysics_seifert )  THEN
    49264931
    49274932                   CALL pmci_interp_tril_sn( qr, qrc, ico, jco, kco, r1xo,     &
     
    49944999                                   r2yo, r1zo, r2zo, 's' )
    49955000
    4996           IF ( cloud_physics  .AND.  microphysics_morrison )  THEN
     5001          IF ( bulk_cloud_model  .AND.  microphysics_morrison )  THEN
    49975002
    49985003             CALL pmci_interp_tril_t( qc, qcc, ico, jco, kco, r1xo, r2xo, r1yo,&
     
    50045009          ENDIF
    50055010
    5006           IF ( cloud_physics  .AND.  microphysics_seifert )  THEN
     5011          IF ( bulk_cloud_model  .AND.  microphysics_seifert )  THEN
    50075012
    50085013
     
    50785083                                  kfuo, ijkfc_s, 'q' )
    50795084
    5080          IF ( cloud_physics  .AND.  microphysics_morrison )  THEN
     5085         IF ( bulk_cloud_model  .AND.  microphysics_morrison )  THEN
    50815086
    50825087            CALL pmci_anterp_tophat( qc, qcc, kctu, iflo, ifuo, jflo, jfuo,    &
     
    50885093         ENDIF
    50895094
    5090          IF ( cloud_physics  .AND.  microphysics_seifert )  THEN
     5095         IF ( bulk_cloud_model  .AND.  microphysics_seifert )  THEN
    50915096
    50925097            CALL pmci_anterp_tophat( qr, qrc, kctu, iflo, ifuo, jflo, jfuo,    &
     
    59025907          ENDDO 
    59035908       ENDIF
    5904        IF ( cloud_physics  .AND.  microphysics_morrison )  THEN
     5909       IF ( bulk_cloud_model  .AND.  microphysics_morrison )  THEN
    59055910          DO  m = 1, bc_h(0)%ns
    59065911             i = bc_h(0)%i(m)           
     
    59205925       ENDIF
    59215926
    5922        IF ( cloud_physics  .AND.  microphysics_seifert )  THEN
     5927       IF ( bulk_cloud_model  .AND.  microphysics_seifert )  THEN
    59235928          DO  m = 1, bc_h(0)%ns
    59245929             i = bc_h(0)%i(m)           
Note: See TracChangeset for help on using the changeset viewer.