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/average_3d_data.f90

    r3004 r3274  
    2525! -----------------
    2626! $Id$
     27! Modularization of all bulk cloud physics code components
     28!
     29! 3004 2018-04-27 12:33:25Z Giersch
    2730! Further allocation checks implemented, case z0q* added
    2831!
     
    138141    USE averaging
    139142
     143    USE bulk_cloud_model_mod,                                                  &
     144        ONLY:  bulk_cloud_model, bcm_3d_data_averaging
     145
    140146    USE chemistry_model_mod,                                                   &
    141147        ONLY:  chem_3d_data_averaging
     
    255261             ENDIF
    256262
    257           CASE ( 'nc' )
    258              IF ( ALLOCATED( nc_av ) ) THEN
    259                 DO  i = nxlg, nxrg
    260                    DO  j = nysg, nyng
    261                       DO  k = nzb, nzt+1
    262                          nc_av(k,j,i) = nc_av(k,j,i) / REAL( average_count_3d, KIND=wp )
    263                       ENDDO
    264                    ENDDO
    265                 ENDDO
    266              ENDIF
    267 
    268           CASE ( 'nr' )
    269              IF ( ALLOCATED( nr_av ) ) THEN
    270                 DO  i = nxlg, nxrg
    271                    DO  j = nysg, nyng
    272                       DO  k = nzb, nzt+1
    273                          nr_av(k,j,i) = nr_av(k,j,i) / REAL( average_count_3d, KIND=wp )
    274                       ENDDO
    275                    ENDDO
    276                 ENDDO
    277              ENDIF
    278 
    279263         CASE ( 'ol*' )
    280264             IF ( ALLOCATED( ol_av ) ) THEN
     
    320304             ENDIF
    321305
    322           CASE ( 'prr' )
    323              IF ( ALLOCATED( prr_av ) ) THEN
    324                 DO  i = nxlg, nxrg
    325                    DO  j = nysg, nyng
    326                       DO  k = nzb, nzt+1
    327                          prr_av(k,j,i) = prr_av(k,j,i) / REAL( average_count_3d, KIND=wp )
    328                       ENDDO
    329                    ENDDO
    330                 ENDDO
    331              ENDIF
    332 
    333306          CASE ( 'pt' )
    334307             IF ( ALLOCATED( pt_av ) ) THEN
     
    353326             ENDIF
    354327
    355           CASE ( 'qc' )
    356              IF ( ALLOCATED( qc_av ) ) THEN
    357                 DO  i = nxlg, nxrg
    358                    DO  j = nysg, nyng
    359                       DO  k = nzb, nzt+1
    360                          qc_av(k,j,i) = qc_av(k,j,i) / REAL( average_count_3d, KIND=wp )
    361                       ENDDO
    362                    ENDDO
    363                 ENDDO
    364              ENDIF
    365 
    366328          CASE ( 'ql' )
    367329             IF ( ALLOCATED( ql_av ) ) THEN
     
    404366                         ql_vp_av(k,j,i) = ql_vp_av(k,j,i) /                      &
    405367                                           REAL( average_count_3d, KIND=wp )
    406                       ENDDO
    407                    ENDDO
    408                 ENDDO
    409              ENDIF
    410 
    411           CASE ( 'qr' )
    412              IF ( ALLOCATED( qr_av ) ) THEN
    413                 DO  i = nxlg, nxrg
    414                    DO  j = nysg, nyng
    415                       DO  k = nzb, nzt+1
    416                          qr_av(k,j,i) = qr_av(k,j,i) / REAL( average_count_3d, KIND=wp )
    417368                      ENDDO
    418369                   ENDDO
     
    607558!--          Turbulence closure module
    608559             CALL tcm_3d_data_averaging( 'average', doav(ii) )
    609 
     560!
     561!--          microphysics module quantities
     562             IF ( bulk_cloud_model )  THEN
     563                CALL bcm_3d_data_averaging( 'average', doav(ii) )
     564             ENDIF
    610565!
    611566!--          Land surface quantity
Note: See TracChangeset for help on using the changeset viewer.