Ignore:
Timestamp:
Oct 14, 2020 3:11:02 PM (4 years ago)
Author:
schwenkel
Message:

Implement snow and graupel (bulk microphysics)

File:
1 edited

Legend:

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

    r4648 r4742  
    2424! -----------------
    2525! $Id$
     26! Implement snow and graupel (bulk microphysics)
     27!
     28! 4648 2020-08-25 07:52:08Z raasch
    2629! file re-formatted to follow the PALM coding standard
    2730!
     
    6669    USE bulk_cloud_model_mod,                                                                      &
    6770        ONLY: bulk_cloud_model, microphysics_ice_phase, microphysics_morrison,                     &
    68               microphysics_seifert
     71              microphysics_seifert, snow, graupel
    6972
    7073
     
    281284                unit = '1/m3'
    282285
     286             CASE ( 'ng' )
     287                IF ( .NOT. bulk_cloud_model )  THEN
     288                   WRITE ( message_string, * ) 'output of "', TRIM( var ),                         &
     289                        '" requires bulk_cloud_model = .TRUE.'
     290                   CALL message( 'init_masks', 'PA0108', 1, 2, 0, 6, 0 )
     291                 ELSEIF ( .NOT. microphysics_ice_phase  .OR.  .NOT.  graupel )  THEN
     292                   message_string = 'output of "' // TRIM( var ) // '" ' //                        &
     293                         'requires  microphysics_ice_phase = .TRUE.'
     294                   CALL message( 'check_parameters', 'PA0359', 1, 2, 0, 6, 0 )
     295                ENDIF
     296                unit = '1/m3'
     297
     298
    283299             CASE ( 'nr' )
    284300                IF ( .NOT. bulk_cloud_model )  THEN
     
    293309                unit = '1/m3'
    294310
     311             CASE ( 'ns' )
     312                IF ( .NOT. bulk_cloud_model )  THEN
     313                   WRITE ( message_string, * ) 'output of "', TRIM( var ),                         &
     314                        '" requires bulk_cloud_model = .TRUE.'
     315                   CALL message( 'init_masks', 'PA0108', 1, 2, 0, 6, 0 )
     316                 ELSEIF ( .NOT. microphysics_seifert  .OR.  .NOT.  snow)  THEN
     317                   message_string = 'output of "' // TRIM( var ) // '"' //                         &
     318                         'requires cloud_scheme = seifert_beheng'
     319                   CALL message( 'check_parameters', 'PA0359', 1, 2, 0, 6, 0 )
     320                ENDIF
     321                unit = '1/m3'
     322
     323
    295324             CASE ( 'pc', 'pr' )
    296325                IF ( .NOT. particle_advection )  THEN
     
    347376                unit = 'kg/kg'
    348377
     378             CASE ( 'qg' )
     379                IF ( .NOT. bulk_cloud_model )  THEN
     380                   message_string = 'output of "' // TRIM( var ) // '" ' //                        &
     381                            'requires bulk_cloud_model = .TRUE.'
     382                   CALL message( 'check_parameters', 'PA0108', 1, 2, 0, 6, 0 )
     383                ELSEIF ( .NOT. microphysics_ice_phase  .OR.  .NOT.  graupel )  THEN
     384                   message_string = 'output of "' // TRIM( var ) // '" ' //                        &
     385                            'requires microphysics_ice_phase = .TRUE.'
     386                   CALL message( 'check_parameters', 'PA0359', 1, 2, 0, 6, 0 )
     387                ENDIF
     388                unit = 'kg/kg'
     389
    349390             CASE ( 'qi' )
    350391                IF ( .NOT. bulk_cloud_model )  THEN
     
    370411                ENDIF
    371412                unit = 'kg/kg'
     413
     414             CASE ( 'qs' )
     415                IF ( .NOT. bulk_cloud_model )  THEN
     416                   message_string = 'output of "' // TRIM( var ) // '" ' //                        &
     417                            'requires bulk_cloud_model = .TRUE.'
     418                   CALL message( 'check_parameters', 'PA0108', 1, 2, 0, 6, 0 )
     419                ELSEIF ( .NOT. microphysics_seifert  .OR.  snow )  THEN
     420                   message_string = 'output of "' // TRIM( var ) // '" ' //                        &
     421                            'requires cloud_scheme = seifert_beheng'
     422                   CALL message( 'check_parameters', 'PA0359', 1, 2, 0, 6, 0 )
     423                ENDIF
     424                unit = 'kg/kg'
     425
    372426
    373427             CASE ( 'rho_sea_water' )
Note: See TracChangeset for help on using the changeset viewer.