LCOV - code coverage report
Current view: | top level - physics/clubb/src/CLUBB_core - stats_zt_module.F90 (source / functions) |  |  | Hit | Total | Coverage
Test: | coverage.info |  | Lines: | 0 | 1771 | 0.0 %
Date: | 2024-12-17 17:57:11 |  | Functions: | 0 | 1 | 0.0 %

              Line data    Source code
           1             : !---------------------------------------------------------------------------
           2             : ! $Id$
           3             : !===============================================================================
           4             : module stats_zt_module
           5             :
           6             :   implicit none
           7             :
           8             :   private ! Default Scope
           9             :
          10             :   public :: stats_init_zt
          11             :
          12             :   ! Constant parameters
          13             :   integer, parameter, public :: nvarmax_zt = 800 ! Maximum variables allowed
          14             :
          15             :   contains
          16             :
          17             :   !=============================================================================
          18           0 :   subroutine stats_init_zt( hydromet_dim, sclr_dim, edsclr_dim, & ! intent(in)
          19           0 :                             hydromet_list, l_mix_rat_hm,        & ! intent(in)
          20           0 :                             vars_zt,                            & ! intent(in)
          21             :                             l_error,                            & ! intent(inout)
          22             :                             stats_metadata, stats_zt )            ! intent(inout)
          23             :
          24             :     ! Description:
          25             :     ! Initializes array indices for stats_zt
          26             :
          27             :     ! Note:
          28             :     ! All code that is within subroutine stats_init_zt, including variable
          29             :     ! allocation code, is not called if l_stats is false.  This subroutine is
          30             :     ! called only when l_stats is true.
          31             :
          32             :     !-----------------------------------------------------------------------
          33             :
          34             :     use constants_clubb, only:  &
          35             :         fstderr ! Constant(s)
          36             :
          37             :     use stats_type_utilities, only: &
          38             :         stat_assign ! Procedure
          39             :
          40             :     use stats_type, only: &
          41             :         stats ! Type
          42             :
          43             :     use stats_variables, only: &
          44             :         stats_metadata_type
          45             :
          46             :     implicit none
          47             :
          48             :     ! External
          49             :     intrinsic :: trim
          50             :
          51             :     ! Local Constants
          52             :
          53             :     !--------------------- Input Variable ---------------------
          54             :     integer, intent(in) :: &
          55             :       hydromet_dim, &
          56             :       sclr_dim, &
          57             :       edsclr_dim
          58             :
          59             :     character(len=10), dimension(hydromet_dim), intent(in) :: &
          60             :       hydromet_list
          61             :
          62             :     logical, dimension(hydromet_dim), intent(in) :: &
          63             :       l_mix_rat_hm   ! if true, then the quantity is a hydrometeor mixing ratio
          64             :
          65             :     character(len= * ), dimension(nvarmax_zt), intent(in) :: &
          66             :       vars_zt
          67             :
          68             :     !--------------------- InOut Variables ---------------------
          69             :     type (stats_metadata_type), intent(inout) :: &
          70             :       stats_metadata
          71             :
          72             :     type (stats), target, intent(inout) :: &
          73             :       stats_zt
          74             :
          75             :     logical, intent(inout) :: l_error
          76             :
          77             :     !--------------------- Local Varables ---------------------
          78             :     integer :: tot_zt_loops
          79             :
          80             :     integer :: i, j, k
          81             :
          82             :     integer :: hm_idx, hmx_idx, hmy_idx
          83             :
          84             :     character(len=10) :: hm_type, hmx_type, hmy_type
          85             :
          86             :     character(len=50) :: sclr_idx
          87             :
          88             :     !--------------------- Begin Code ---------------------
          89             :
          90             :     ! The default initialization for array indices for stats_zt is zero (see module
          91             :     ! stats_variables)
          92             :
          93             :     ! If any of the index arrays are allocated, then we have called this before
          94             :     ! to set up stats_metadata, so all we want to do is set stats_zt via stats_assign
          95           0 :     if ( .not. allocated(stats_metadata%ihm_1) ) then
          96             :
          97             :       ! Allocate and initialize hydrometeor statistical variables.
          98           0 :       allocate( stats_metadata%ihm_1(1:hydromet_dim) )
          99           0 :       allocate( stats_metadata%ihm_2(1:hydromet_dim) )
         100           0 :       allocate( stats_metadata%imu_hm_1(1:hydromet_dim) )
         101           0 :       allocate( stats_metadata%imu_hm_2(1:hydromet_dim) )
         102           0 :       allocate( stats_metadata%imu_hm_1_n(1:hydromet_dim) )
         103           0 :       allocate( stats_metadata%imu_hm_2_n(1:hydromet_dim) )
         104           0 :       allocate( stats_metadata%isigma_hm_1(1:hydromet_dim) )
         105           0 :       allocate( stats_metadata%isigma_hm_2(1:hydromet_dim) )
         106           0 :       allocate( stats_metadata%isigma_hm_1_n(1:hydromet_dim) )
         107           0 :       allocate( stats_metadata%isigma_hm_2_n(1:hydromet_dim) )
         108             :
         109           0 :       allocate( stats_metadata%icorr_w_hm_1(1:hydromet_dim) )
         110           0 :       allocate( stats_metadata%icorr_w_hm_2(1:hydromet_dim) )
         111           0 :       allocate( stats_metadata%icorr_chi_hm_1(1:hydromet_dim) )
         112           0 :       allocate( stats_metadata%icorr_chi_hm_2(1:hydromet_dim) )
         113           0 :       allocate( stats_metadata%icorr_eta_hm_1(1:hydromet_dim) )
         114           0 :       allocate( stats_metadata%icorr_eta_hm_2(1:hydromet_dim) )
         115           0 :       allocate( stats_metadata%icorr_Ncn_hm_1(1:hydromet_dim) )
         116           0 :       allocate( stats_metadata%icorr_Ncn_hm_2(1:hydromet_dim) )
         117           0 :       allocate( stats_metadata%icorr_hmx_hmy_1(1:hydromet_dim,1:hydromet_dim) )
         118           0 :       allocate( stats_metadata%icorr_hmx_hmy_2(1:hydromet_dim,1:hydromet_dim) )
         119             :
         120           0 :       allocate( stats_metadata%icorr_w_hm_1_n(1:hydromet_dim) )
         121           0 :       allocate( stats_metadata%icorr_w_hm_2_n(1:hydromet_dim) )
         122           0 :       allocate( stats_metadata%icorr_chi_hm_1_n(1:hydromet_dim) )
         123           0 :       allocate( stats_metadata%icorr_chi_hm_2_n(1:hydromet_dim) )
         124           0 :       allocate( stats_metadata%icorr_eta_hm_1_n(1:hydromet_dim) )
         125           0 :       allocate( stats_metadata%icorr_eta_hm_2_n(1:hydromet_dim) )
         126           0 :       allocate( stats_metadata%icorr_Ncn_hm_1_n(1:hydromet_dim) )
         127           0 :       allocate( stats_metadata%icorr_Ncn_hm_2_n(1:hydromet_dim) )
         128           0 :       allocate( stats_metadata%icorr_hmx_hmy_1_n(1:hydromet_dim,1:hydromet_dim) )
         129           0 :       allocate( stats_metadata%icorr_hmx_hmy_2_n(1:hydromet_dim,1:hydromet_dim) )
         130             :
         131           0 :       allocate( stats_metadata%ihmp2_zt(1:hydromet_dim) )
         132             :
         133           0 :       allocate( stats_metadata%iwp2hmp(1:hydromet_dim) )
         134             :
         135           0 :       stats_metadata%ihm_1(:) = 0
         136           0 :       stats_metadata%ihm_2(:) = 0
         137           0 :       stats_metadata%imu_hm_1(:) = 0
         138           0 :       stats_metadata%imu_hm_2(:) = 0
         139           0 :       stats_metadata%imu_hm_1_n(:) = 0
         140           0 :       stats_metadata%imu_hm_2_n(:) = 0
         141           0 :       stats_metadata%isigma_hm_1(:) = 0
         142           0 :       stats_metadata%isigma_hm_2(:) = 0
         143           0 :       stats_metadata%isigma_hm_1_n(:) = 0
         144           0 :       stats_metadata%isigma_hm_2_n(:) = 0
         145             :
         146           0 :       stats_metadata%icorr_w_hm_1(:) = 0
         147           0 :       stats_metadata%icorr_w_hm_2(:) = 0
         148           0 :       stats_metadata%icorr_chi_hm_1(:) = 0
         149           0 :       stats_metadata%icorr_chi_hm_2(:) = 0
         150           0 :       stats_metadata%icorr_eta_hm_1(:) = 0
         151           0 :       stats_metadata%icorr_eta_hm_2(:) = 0
         152           0 :       stats_metadata%icorr_Ncn_hm_1(:) = 0
         153           0 :       stats_metadata%icorr_Ncn_hm_2(:) = 0
         154           0 :       stats_metadata%icorr_hmx_hmy_1(:,:) = 0
         155           0 :       stats_metadata%icorr_hmx_hmy_2(:,:) = 0
         156             :
         157           0 :       stats_metadata%icorr_w_hm_1_n(:) = 0
         158           0 :       stats_metadata%icorr_w_hm_2_n(:) = 0
         159           0 :       stats_metadata%icorr_chi_hm_1_n(:) = 0
         160           0 :       stats_metadata%icorr_chi_hm_2_n(:) = 0
         161           0 :       stats_metadata%icorr_eta_hm_1_n(:) = 0
         162           0 :       stats_metadata%icorr_eta_hm_2_n(:) = 0
         163           0 :       stats_metadata%icorr_Ncn_hm_1_n(:) = 0
         164           0 :       stats_metadata%icorr_Ncn_hm_2_n(:) = 0
         165           0 :       stats_metadata%icorr_hmx_hmy_1_n(:,:) = 0
         166           0 :       stats_metadata%icorr_hmx_hmy_2_n(:,:) = 0
         167             :
         168           0 :       stats_metadata%ihmp2_zt(:) = 0
         169             :
         170           0 :       stats_metadata%iwp2hmp(:) = 0
         171             :
         172             :       ! Allocate and then zero out passive scalar arrays
         173           0 :       allocate( stats_metadata%isclrm(1:sclr_dim) )
         174           0 :       allocate( stats_metadata%isclrm_f(1:sclr_dim) )
         175             :
         176           0 :       stats_metadata%isclrm(:)     = 0
         177           0 :       stats_metadata%isclrm_f(:)   = 0
         178             :
         179           0 :       allocate( stats_metadata%iedsclrm(1:edsclr_dim) )
         180           0 :       allocate( stats_metadata%iedsclrm_f(1:edsclr_dim) )
         181             :
         182           0 :       stats_metadata%iedsclrm(:)   = 0
         183           0 :       stats_metadata%iedsclrm_f(:) = 0
         184             :
         185             :     end if
         186             :
         187             :     ! Assign pointers for statistics variables stats_zt using stat_assign
         188             :
         189           0 :     tot_zt_loops = stats_zt%num_output_fields
         190             :
         191           0 :     if ( any( vars_zt == "hm_i" ) ) then
         192             :        ! Correct for number of variables found under "hm_i".
         193             :        ! Subtract 2 from the loop size (1st PDF component and 2nd PDF component)
         194             :        ! for each hydrometeor.
         195           0 :        tot_zt_loops = tot_zt_loops - 2 * hydromet_dim
         196             :        ! Add 1 for "hm_i" to the loop size.
         197           0 :        tot_zt_loops = tot_zt_loops + 1
         198             :     endif
         199           0 :     if ( any( vars_zt == "mu_hm_i" ) ) then
         200             :        ! Correct for number of variables found under "mu_hm_i".
         201             :        ! Subtract 2 from the loop size (1st PDF component and 2nd PDF component)
         202             :        ! for each hydrometeor.
         203           0 :        tot_zt_loops = tot_zt_loops - 2 * hydromet_dim
         204             :        ! Add 1 for "mu_hm_i" to the loop size.
         205           0 :        tot_zt_loops = tot_zt_loops + 1
         206             :     endif
         207           0 :     if ( any( vars_zt == "mu_Ncn_i" ) ) then
         208             :        ! Correct for number of variables found under "mu_Ncn_i".
         209             :        ! Subtract 2 from the loop size (1st PDF comp. and 2nd PDF comp.).
         210           0 :        tot_zt_loops = tot_zt_loops - 2
         211             :        ! Add 1 for "mu_Ncn_i" to the loop size.
         212           0 :        tot_zt_loops = tot_zt_loops + 1
         213             :     endif
         214           0 :     if ( any( vars_zt == "mu_hm_i_n" ) ) then
         215             :        ! Correct for number of variables found under "mu_hm_i_n".
         216             :        ! Subtract 2 from the loop size (1st PDF component and 2nd PDF component)
         217             :        ! for each hydrometeor.
         218           0 :        tot_zt_loops = tot_zt_loops - 2 * hydromet_dim
         219             :        ! Add 1 for "mu_hm_i_n" to the loop size.
         220           0 :        tot_zt_loops = tot_zt_loops + 1
         221             :     endif
         222           0 :     if ( any( vars_zt == "mu_Ncn_i_n" ) ) then
         223             :        ! Correct for number of variables found under "mu_Ncn_i_n".
         224             :        ! Subtract 2 from the loop size (1st PDF comp. and 2nd PDF comp.).
         225           0 :        tot_zt_loops = tot_zt_loops - 2
         226             :        ! Add 1 for "mu_Ncn_i_n" to the loop size.
         227           0 :        tot_zt_loops = tot_zt_loops + 1
         228             :     endif
         229           0 :     if ( any( vars_zt == "sigma_hm_i" ) ) then
         230             :        ! Correct for number of variables found under "sigma_hm_i".
         231             :        ! Subtract 2 from the loop size (1st PDF component and 2nd PDF component)
         232             :        ! for each hydrometeor.
         233           0 :        tot_zt_loops = tot_zt_loops - 2 * hydromet_dim
         234             :        ! Add 1 for "sigma_hm_i" to the loop size.
         235           0 :        tot_zt_loops = tot_zt_loops + 1
         236             :     endif
         237           0 :     if ( any( vars_zt == "sigma_Ncn_i" ) ) then
         238             :        ! Correct for number of variables found under "sigma_Ncn_i".
         239             :        ! Subtract 2 from the loop size (1st PDF comp. and 2nd PDF comp.).
         240           0 :        tot_zt_loops = tot_zt_loops - 2
         241             :        ! Add 1 for "sigma_Ncn_i" to the loop size.
         242           0 :        tot_zt_loops = tot_zt_loops + 1
         243             :     endif
         244           0 :     if ( any( vars_zt == "sigma_hm_i_n" ) ) then
         245             :        ! Correct for number of variables found under "sigma_hm_i_n".
         246             :        ! Subtract 2 from the loop size (1st PDF component and 2nd PDF component)
         247             :        ! for each hydrometeor.
         248           0 :        tot_zt_loops = tot_zt_loops - 2 * hydromet_dim
         249             :        ! Add 1 for "sigma_hm_i_n" to the loop size.
         250           0 :        tot_zt_loops = tot_zt_loops + 1
         251             :     endif
         252           0 :     if ( any( vars_zt == "sigma_Ncn_i_n" ) ) then
         253             :        ! Correct for number of variables found under "sigma_Ncn_i_n".
         254             :        ! Subtract 2 from the loop size (1st PDF comp. and 2nd PDF comp.).
         255           0 :        tot_zt_loops = tot_zt_loops - 2
         256             :        ! Add 1 for "sigma_Ncn_i_n" to the loop size.
         257           0 :        tot_zt_loops = tot_zt_loops + 1
         258             :     endif
         259             :
         260           0 :     if ( any( vars_zt == "corr_w_hm_i" ) ) then
         261             :        ! Correct for number of variables found under "corr_whm_i".
         262             :        ! Subtract 2 from the loop size (1st PDF component and 2nd PDF component)
         263             :        ! for each hydrometeor.
         264           0 :        tot_zt_loops = tot_zt_loops - 2 * hydromet_dim
         265             :        ! Add 1 for "corr_whm_i" to the loop size.
         266           0 :        tot_zt_loops = tot_zt_loops + 1
         267             :     endif
         268           0 :     if ( any( vars_zt == "corr_w_Ncn_i" ) ) then
         269             :        ! Correct for number of variables found under "corr_wNcn_i".
         270             :        ! Subtract 2 from the loop size (1st PDF comp. and 2nd PDF comp.).
         271           0 :        tot_zt_loops = tot_zt_loops - 2
         272             :        ! Add 1 for "corr_wNcn_i" to the loop size.
         273           0 :        tot_zt_loops = tot_zt_loops + 1
         274             :     endif
         275           0 :     if ( any( vars_zt == "corr_chi_hm_i" ) ) then
         276             :        ! Correct for number of variables found under "corr_chi_hm_i".
         277             :        ! Subtract 2 from the loop size (1st PDF component and 2nd PDF component)
         278             :        ! for each hydrometeor.
         279           0 :        tot_zt_loops = tot_zt_loops - 2 * hydromet_dim
         280             :        ! Add 1 for "corr_chi_hm_i" to the loop size.
         281           0 :        tot_zt_loops = tot_zt_loops + 1
         282             :     endif
         283           0 :     if ( any( vars_zt == "corr_chi_Ncn_i" ) ) then
         284             :        ! Correct for number of variables found under "corr_chi_Ncn_i".
         285             :        ! Subtract 2 from the loop size (1st PDF comp. and 2nd PDF comp.).
         286           0 :        tot_zt_loops = tot_zt_loops - 2
         287             :        ! Add 1 for "corr_chi_Ncn_i" to the loop size.
         288           0 :        tot_zt_loops = tot_zt_loops + 1
         289             :     endif
         290           0 :     if ( any( vars_zt == "corr_eta_hm_i" ) ) then
         291             :        ! Correct for number of variables found under "corr_eta_hm_i".
         292             :        ! Subtract 2 from the loop size (1st PDF component and 2nd PDF component)
         293             :        ! for each hydrometeor.
         294           0 :        tot_zt_loops = tot_zt_loops - 2 * hydromet_dim
         295             :        ! Add 1 for "corr_eta_hm_i" to the loop size.
         296           0 :        tot_zt_loops = tot_zt_loops + 1
         297             :     endif
         298           0 :     if ( any( vars_zt == "corr_eta_Ncn_i" ) ) then
         299             :        ! Correct for number of variables found under "corr_eta_Ncn_i".
         300             :        ! Subtract 2 from the loop size (1st PDF comp. and 2nd PDF comp.).
         301           0 :        tot_zt_loops = tot_zt_loops - 2
         302             :        ! Add 1 for "corr_eta_Ncn_i" to the loop size.
         303           0 :        tot_zt_loops = tot_zt_loops + 1
         304             :     endif
         305           0 :     if ( any( vars_zt == "corr_Ncn_hm_i" ) ) then
         306             :        ! Correct for number of variables found under "corr_Ncnhm_i".
         307             :        ! Subtract 2 from the loop size (1st PDF component and 2nd PDF component)
         308             :        ! for each hydrometeor.
         309           0 :        tot_zt_loops = tot_zt_loops - 2 * hydromet_dim
         310             :        ! Add 1 for "corr_Ncnhm_i" to the loop size.
         311           0 :        tot_zt_loops = tot_zt_loops + 1
         312             :     endif
         313           0 :     if ( any( vars_zt == "corr_hmx_hmy_i" ) ) then
         314             :        ! Correct for number of variables found under "corr_hmxhmy_i".
         315             :        ! Subtract 2 (1st PDF component and 2nd PDF component) multipled by the
         316             :        ! number of correlations of two hydrometeors, which is found by:
         317             :        ! (1/2) * hydromet_dim * ( hydromet_dim - 1 ); from the loop size.
         318           0 :        tot_zt_loops = tot_zt_loops - hydromet_dim * ( hydromet_dim - 1 )
         319             :        ! Add 1 for "corr_hmxhmy_i" to the loop size.
         320           0 :        tot_zt_loops = tot_zt_loops + 1
         321             :     endif
         322             :
         323           0 :     if ( any( vars_zt == "corr_w_hm_i_n" ) ) then
         324             :        ! Correct for number of variables found under "corr_whm_i_n".
         325             :        ! Subtract 2 from the loop size (1st PDF component and 2nd PDF component)
         326             :        ! for each hydrometeor.
         327           0 :        tot_zt_loops = tot_zt_loops - 2 * hydromet_dim
         328             :        ! Add 1 for "corr_whm_i_n" to the loop size.
         329           0 :        tot_zt_loops = tot_zt_loops + 1
         330             :     endif
         331           0 :     if ( any( vars_zt == "corr_w_Ncn_i_n" ) ) then
         332             :        ! Correct for number of variables found under "corr_wNcn_i_n".
         333             :        ! Subtract 2 from the loop size (1st PDF comp. and 2nd PDF comp.).
         334           0 :        tot_zt_loops = tot_zt_loops - 2
         335             :        ! Add 1 for "corr_wNcn_i_n" to the loop size.
         336           0 :        tot_zt_loops = tot_zt_loops + 1
         337             :     endif
         338           0 :     if ( any( vars_zt == "corr_chi_hm_i_n" ) ) then
         339             :        ! Correct for number of variables found under "corr_chi_hm_i_n".
         340             :        ! Subtract 2 from the loop size (1st PDF component and 2nd PDF component)
         341             :        ! for each hydrometeor.
         342           0 :        tot_zt_loops = tot_zt_loops - 2 * hydromet_dim
         343             :        ! Add 1 for "corr_chi_hm_i_n" to the loop size.
         344           0 :        tot_zt_loops = tot_zt_loops + 1
         345             :     endif
         346           0 :     if ( any( vars_zt == "corr_chi_Ncn_i_n" ) ) then
         347             :        ! Correct for number of variables found under "corr_chi_Ncn_i_n".
         348             :        ! Subtract 2 from the loop size (1st PDF comp. and 2nd PDF comp.).
         349           0 :        tot_zt_loops = tot_zt_loops - 2
         350             :        ! Add 1 for "corr_chi_Ncn_i_n" to the loop size.
         351           0 :        tot_zt_loops = tot_zt_loops + 1
         352             :     endif
         353           0 :     if ( any( vars_zt == "corr_eta_hm_i_n" ) ) then
         354             :        ! Correct for number of variables found under "corr_eta_hm_i_n".
         355             :        ! Subtract 2 from the loop size (1st PDF component and 2nd PDF component)
         356             :        ! for each hydrometeor.
         357           0 :        tot_zt_loops = tot_zt_loops - 2 * hydromet_dim
         358             :        ! Add 1 for "corr_eta_hm_i_n" to the loop size.
         359           0 :        tot_zt_loops = tot_zt_loops + 1
         360             :     endif
         361           0 :     if ( any( vars_zt == "corr_eta_Ncn_i_n" ) ) then
         362             :        ! Correct for number of variables found under "corr_eta_Ncn_i_n".
         363             :        ! Subtract 2 from the loop size (1st PDF comp. and 2nd PDF comp.).
         364           0 :        tot_zt_loops = tot_zt_loops - 2
         365             :        ! Add 1 for "corr_eta_Ncn_i_n" to the loop size.
         366           0 :        tot_zt_loops = tot_zt_loops + 1
         367             :     endif
         368           0 :     if ( any( vars_zt == "corr_Ncn_hm_i_n" ) ) then
         369             :        ! Correct for number of variables found under "corr_Ncnhm_i_n".
         370             :        ! Subtract 2 from the loop size (1st PDF component and 2nd PDF component)
         371             :        ! for each hydrometeor.
         372           0 :        tot_zt_loops = tot_zt_loops - 2 * hydromet_dim
         373             :        ! Add 1 for "corr_Ncnhm_i_n" to the loop size.
         374           0 :        tot_zt_loops = tot_zt_loops + 1
         375             :     endif
         376           0 :     if ( any( vars_zt == "corr_hmx_hmy_i_n" ) ) then
         377             :        ! Correct for number of variables found under "corr_hmxhmy_i_n".
         378             :        ! Subtract 2 (1st PDF component and 2nd PDF component) multipled by the
         379             :        ! number of normal space correlations of two hydrometeors, which is found
         380             :        ! by:  (1/2) * hydromet_dim * ( hydromet_dim - 1 );
         381             :        ! from the loop size.
         382           0 :        tot_zt_loops = tot_zt_loops - hydromet_dim * ( hydromet_dim - 1 )
         383             :        ! Add 1 for "corr_hmxhmy_i_n" to the loop size.
         384           0 :        tot_zt_loops = tot_zt_loops + 1
         385             :     endif
         386             :
         387           0 :     if ( any( vars_zt == "hmp2_zt" ) ) then
         388             :        ! Correct for number of variables found under "hmp2_zt".
         389             :        ! Subtract 1 from the loop size for each hydrometeor.
         390           0 :        tot_zt_loops = tot_zt_loops - hydromet_dim
         391             :        ! Add 1 for "hmp2_zt" to the loop size.
         392           0 :        tot_zt_loops = tot_zt_loops + 1
         393             :     endif
         394             :
         395           0 :     if ( any( vars_zt == "wp2hmp" ) ) then
         396             :        ! Correct for number of variables found under "wp2hmp".
         397             :        ! Subtract 1 from the loop size for each hydrometeor.
         398           0 :        tot_zt_loops = tot_zt_loops - hydromet_dim
         399             :        ! Add 1 for "wp2hmp" to the loop size.
         400           0 :        tot_zt_loops = tot_zt_loops + 1
         401             :     endif
         402             :
         403           0 :     if ( any( vars_zt == "sclrm" ) ) then
         404             :        ! Correct for number of variables found under "sclrm".
         405             :        ! Subtract 1 from the loop size for each scalar.
         406           0 :        tot_zt_loops = tot_zt_loops - sclr_dim
         407             :
         408             :        ! Add 1 for "sclrm" to the loop size.
         409           0 :        tot_zt_loops = tot_zt_loops + 1
         410             :     endif
         411             :
         412           0 :     if ( any( vars_zt == "sclrm_f" ) ) then
         413             :        ! Correct for number of variables found under "sclrm_f".
         414             :        ! Subtract 1 from the loop size for each scalar.
         415           0 :        tot_zt_loops = tot_zt_loops - sclr_dim
         416             :        ! Add 1 for "sclrm_f" to the loop size.
         417           0 :        tot_zt_loops = tot_zt_loops + 1
         418             :     endif
         419             :
         420           0 :     if ( any( vars_zt == "edsclrm" ) ) then
         421             :        ! Correct for number of variables found under "edsclrm".
         422             :        ! Subtract 1 from the loop size for each scalar.
         423           0 :        tot_zt_loops = tot_zt_loops - edsclr_dim
         424             :        ! Add 1 for "edsclrm" to the loop size.
         425           0 :        tot_zt_loops = tot_zt_loops + 1
         426             :     endif
         427             :
         428           0 :     if ( any( vars_zt == "edsclrm_f" ) ) then
         429             :        ! Correct for number of variables found under "edsclrm_f".
         430             :        ! Subtract 1 from the loop size for each scalar.
         431           0 :        tot_zt_loops = tot_zt_loops - edsclr_dim
         432             :        ! Add 1 for "edsclrm_f" to the loop size.
         433           0 :        tot_zt_loops = tot_zt_loops + 1
         434             :     endif
         435             :
         436           0 :     k = 1
         437             :
         438           0 :     do i = 1, tot_zt_loops
         439             :
         440           0 :       select case ( trim( vars_zt(i) ) )
         441             :       case ('thlm')
         442           0 :         stats_metadata%ithlm = k
         443             :         call stat_assign( var_index=stats_metadata%ithlm, var_name="thlm", &
         444             :              var_description="thlm, Liquid water potential temperature (theta_l)", var_units="K", &
         445           0 :              l_silhs=.false., grid_kind=stats_zt )
         446           0 :         k = k + 1
         447             :
         448             :       case ('T_in_K')
         449           0 :         stats_metadata%iT_in_K = k
         450             :         call stat_assign( var_index=stats_metadata%iT_in_K, var_name="T_in_K", &
         451             :              var_description="T_in_K, Absolute temperature", var_units="K", l_silhs=.false., &
         452           0 :              grid_kind=stats_zt )
         453           0 :         k = k + 1
         454             :
         455             :       case ('thvm')
         456           0 :         stats_metadata%ithvm = k
         457             :         call stat_assign( var_index=stats_metadata%ithvm, var_name="thvm", &
         458             :              var_description="thvm, Virtual potential temperature", &
         459             :              var_units="K", l_silhs=.false., &
         460           0 :              grid_kind=stats_zt )
         461           0 :         k = k + 1
         462             :
         463             :       case ('rtm')
         464           0 :         stats_metadata%irtm = k
         465             :
         466             :         call stat_assign( var_index=stats_metadata%irtm, var_name="rtm", &
         467             :              var_description="rtm, Total (vapor+liquid) water mixing ratio", &
         468           0 :              var_units="kg/kg", l_silhs=.false., grid_kind=stats_zt )
         469             :
         470           0 :         k = k + 1
         471             :
         472             :       case ('rcm')
         473           0 :         stats_metadata%ircm = k
         474             :         call stat_assign( var_index=stats_metadata%ircm, var_name="rcm", &
         475             :              var_description="rcm, Cloud water mixing ratio", var_units="kg/kg", &
         476           0 :              l_silhs=.false., grid_kind=stats_zt )
         477           0 :         k = k + 1
         478             :
         479             :       case ('rfrzm')
         480           0 :         stats_metadata%irfrzm = k
         481             :         call stat_assign( var_index=stats_metadata%irfrzm, var_name="rfrzm", &
         482             :              var_description="rfrzm, Total ice phase water mixing ratio", var_units="kg/kg", &
         483           0 :              l_silhs=.false., grid_kind=stats_zt )
         484           0 :         k = k + 1
         485             :
         486             :       case ('rvm')
         487           0 :         stats_metadata%irvm = k
         488             :         call stat_assign( var_index=stats_metadata%irvm, var_name="rvm", &
         489             :              var_description="rvm, Vapor water mixing ratio", var_units="kg/kg", &
         490           0 :              l_silhs=.false., grid_kind=stats_zt )
         491           0 :         k = k + 1
         492             :       case ('rel_humidity')
         493           0 :         stats_metadata%irel_humidity = k
         494             :         call stat_assign( var_index=stats_metadata%irel_humidity, var_name="rel_humidity", &
         495             :              var_description="rel_humidity, Relative humidity w.r.t. liquid (between 0 and 1)", &
         496           0 :              var_units="[-]", l_silhs=.false., grid_kind=stats_zt )
         497           0 :         k = k + 1
         498             :       case ('um')
         499           0 :         stats_metadata%ium = k
         500             :         call stat_assign( var_index=stats_metadata%ium, var_name="um", &
         501             :              var_description="u_bar, Grid-mean eastward (u) wind", &
         502             :              var_units="m/s", l_silhs=.false., &
         503           0 :              grid_kind=stats_zt )
         504           0 :         k = k + 1
         505             :       case ('vm')
         506           0 :         stats_metadata%ivm = k
         507             :         call stat_assign( var_index=stats_metadata%ivm, var_name="vm", &
         508             :              var_description="v_bar, Grid-mean northward (v) wind", &
         509             :              var_units="m/s", l_silhs=.false., &
         510           0 :              grid_kind=stats_zt )
         511           0 :         k = k + 1
         512             :       case ('wm_zt')
         513           0 :         stats_metadata%iwm_zt = k
         514             :         call stat_assign( var_index=stats_metadata%iwm_zt, var_name="wm_zt", &
         515             :              var_description="w_bar, Grid-mean upward (w) wind", &
         516             :              var_units="m/s", l_silhs=.false., &
         517           0 :              grid_kind=stats_zt )
         518           0 :         k = k + 1
         519             :       case ('um_ref')
         520           0 :         stats_metadata%ium_ref = k
         521             :         call stat_assign( var_index=stats_metadata%ium_ref, var_name="um_ref", &
         522             :              var_description="um_ref, Reference u wind", var_units="m/s", l_silhs=.false., &
         523           0 :              grid_kind=stats_zt )
         524           0 :         k = k + 1
         525             :       case ('vm_ref')
         526           0 :         stats_metadata%ivm_ref = k
         527             :         call stat_assign( var_index=stats_metadata%ivm_ref, var_name="vm_ref", &
         528             :              var_description="vm_ref, Reference v wind", var_units="m/s", l_silhs=.false., &
         529           0 :              grid_kind=stats_zt )
         530           0 :         k = k + 1
         531             :       case ('ug')
         532           0 :         stats_metadata%iug = k
         533             :         call stat_assign( var_index=stats_metadata%iug, var_name="ug", &
         534             :              var_description="ug, u geostrophic wind", var_units="m/s", l_silhs=.false., &
         535           0 :              grid_kind=stats_zt )
         536           0 :         k = k + 1
         537             :       case ('vg')
         538           0 :         stats_metadata%ivg = k
         539             :         call stat_assign( var_index=stats_metadata%ivg, var_name="vg", &
         540             :              var_description="vg, v geostrophic wind", var_units="m/s", l_silhs=.false., &
         541           0 :              grid_kind=stats_zt )
         542           0 :         k = k + 1
         543             :       case ('cloud_frac')
         544           0 :         stats_metadata%icloud_frac = k
         545             :         call stat_assign( var_index=stats_metadata%icloud_frac, var_name="cloud_frac", &
         546             :              var_description="cloud_frac, Cloud fraction (between 0 and 1)", var_units="-", &
         547           0 :              l_silhs=.false., grid_kind=stats_zt )
         548           0 :         k = k + 1
         549             :
         550             :       case ('ice_supersat_frac')
         551           0 :         stats_metadata%iice_supersat_frac = k
         552             :         call stat_assign( var_index=stats_metadata%iice_supersat_frac, var_name="ice_supersat_frac", &
         553             :              var_description="ice_supersat_frac, Ice cloud fraction (between 0 and 1)", &
         554             :              var_units="count", &
         555           0 :              l_silhs=.false., grid_kind=stats_zt )
         556           0 :         k = k + 1
         557             :
         558             :       case ('rcm_in_layer')
         559           0 :         stats_metadata%ircm_in_layer = k
         560             :         call stat_assign( var_index=stats_metadata%ircm_in_layer, var_name="rcm_in_layer", &
         561             :              var_description="rcm_in_layer, rcm in cloud layer", &
         562             :              var_units="kg/kg", l_silhs=.false., &
         563           0 :              grid_kind=stats_zt )
         564           0 :         k = k + 1
         565             :
         566             :       case ('rcm_in_cloud')
         567           0 :         stats_metadata%ircm_in_cloud = k
         568             :         call stat_assign( var_index=stats_metadata%ircm_in_cloud, var_name="rcm_in_cloud", &
         569             :              var_description="rcm_in_cloud, In-cloud value of rcm (for microphysics)", &
         570           0 :              var_units="kg/kg", l_silhs=.false., grid_kind=stats_zt )
         571           0 :         k = k + 1
         572             :
         573             :       case ('cloud_cover')
         574           0 :         stats_metadata%icloud_cover = k
         575             :         call stat_assign( var_index=stats_metadata%icloud_cover, var_name="cloud_cover", &
         576             :              var_description="cloud_cover, Cloud cover (between 0 and 1)", var_units="count", &
         577           0 :              l_silhs=.false., grid_kind=stats_zt )
         578           0 :         k = k + 1
         579             :       case ('p_in_Pa')
         580           0 :         stats_metadata%ip_in_Pa = k
         581             :         call stat_assign( var_index=stats_metadata%ip_in_Pa, var_name="p_in_Pa", &
         582             :              var_description="p_in_Pa, Pressure", &
         583           0 :              var_units="Pa", l_silhs=.false., grid_kind=stats_zt )
         584           0 :         k = k + 1
         585             :       case ('exner')
         586           0 :         stats_metadata%iexner = k
         587             :         call stat_assign( var_index=stats_metadata%iexner, var_name="exner", &
         588             :              var_description="exner, Exner function = (p/p0)**(rd/cp)", var_units="count", &
         589           0 :              l_silhs=.false., grid_kind=stats_zt )
         590           0 :         k = k + 1
         591             :       case ('rho_ds_zt')
         592           0 :         stats_metadata%irho_ds_zt = k
         593             :         call stat_assign( var_index=stats_metadata%irho_ds_zt, var_name="rho_ds_zt", &
         594             :              var_description="rho_ds_zt, Dry static base-state density", var_units="kg m^{-3}", &
         595           0 :              l_silhs=.false., grid_kind=stats_zt )
         596           0 :         k = k + 1
         597             :       case ('thv_ds_zt')
         598           0 :         stats_metadata%ithv_ds_zt = k
         599             :         call stat_assign( var_index=stats_metadata%ithv_ds_zt, var_name="thv_ds_zt", &
         600             :              var_description="thv_ds_zt, Dry base-state theta_v", &
         601             :              var_units="K", l_silhs=.false., &
         602           0 :              grid_kind=stats_zt )
         603           0 :         k = k + 1
         604             :       case ('Lscale')
         605           0 :         stats_metadata%iLscale = k
         606             :         call stat_assign( var_index=stats_metadata%iLscale, var_name="Lscale", &
         607             :           var_description="L, Turbulent mixing length", &
         608           0 :           var_units="m", l_silhs=.false., grid_kind=stats_zt )
         609           0 :         k = k + 1
         610             :       case ('thlm_forcing')
         611           0 :         stats_metadata%ithlm_forcing = k
         612             :         call stat_assign( var_index=stats_metadata%ithlm_forcing, var_name="thlm_forcing", &
         613             :              var_description="thlm_forcing, thlm budget: thetal forcing " &
         614             :              // "(includes thlm_mc and radht)",&
         615           0 :              var_units="K s^{-1}", l_silhs=.false., grid_kind=stats_zt )
         616           0 :         k = k + 1
         617             :       case ('thlm_mc')
         618           0 :         stats_metadata%ithlm_mc = k
         619             :         call stat_assign( var_index=stats_metadata%ithlm_mc, var_name="thlm_mc", &
         620             :              var_description="thlm_mc, Change in thlm due to microphysics (not in budget)", &
         621           0 :              var_units="K s^{-1}", l_silhs=.false., grid_kind=stats_zt )
         622           0 :         k = k + 1
         623             :       case ('rtm_forcing')
         624           0 :         stats_metadata%irtm_forcing = k
         625             :         call stat_assign( var_index=stats_metadata%irtm_forcing, var_name="rtm_forcing", &
         626             :              var_description="rtm_forcing, rtm budget: rt forcing (includes rtm_mc)", &
         627           0 :              var_units="kg kg^{-1} s^{-1}", l_silhs=.false., grid_kind=stats_zt )
         628           0 :         k = k + 1
         629             :
         630             :       case ('rtm_mc')
         631           0 :         stats_metadata%irtm_mc = k
         632             :         call stat_assign( var_index=stats_metadata%irtm_mc, var_name="rtm_mc", &
         633             :              var_description="rtm_mc, Change in rt due to microphysics (not in budget)", &
         634           0 :              var_units="kg kg^{-1} s^{-1}", l_silhs=.false., grid_kind=stats_zt )
         635           0 :         k = k + 1
         636             :
         637             :       case ('rvm_mc')
         638           0 :         stats_metadata%irvm_mc = k
         639             :         call stat_assign( var_index=stats_metadata%irvm_mc, var_name="rvm_mc", &
         640             :              var_description="rvm_mc, Time tendency of vapor mixing ratio due to microphysics", &
         641           0 :              var_units="kg/(kg s)", l_silhs=.false., grid_kind=stats_zt )
         642           0 :         k = k + 1
         643             :
         644             :       case ('rcm_mc')
         645           0 :         stats_metadata%ircm_mc = k
         646             :         call stat_assign( var_index=stats_metadata%ircm_mc, var_name="rcm_mc", &
         647             :              var_description="rcm_mc, Time tendency of liquid water mixing ratio " &
         648             :              // "due microphysics",&
         649           0 :              var_units="kg/kg/s", l_silhs=.false., grid_kind=stats_zt )
         650           0 :         k = k + 1
         651             :
         652             :       case ('rcm_sd_mg_morr')
         653           0 :         stats_metadata%ircm_sd_mg_morr = k
         654             :         call stat_assign( var_index=stats_metadata%ircm_sd_mg_morr, var_name="rcm_sd_mg_morr", &
         655             :              var_description="rcm_sd_mg_morr, rcm sedimentation when using morrision or MG " &
         656             :              // "microphysics (not in budget, included in rcm_mc)", &
         657           0 :              var_units="kg kg^{-1} s^{-1}", l_silhs=.true., grid_kind=stats_zt )
         658           0 :         k = k + 1
         659             :
         660             :       case ('thlm_mfl_min')
         661           0 :         stats_metadata%ithlm_mfl_min = k
         662             :         call stat_assign( var_index=stats_metadata%ithlm_mfl_min, var_name="thlm_mfl_min", &
         663             :              var_description="thlm_mfl_min, Minimum allowable thlm", var_units="K", &
         664             :              l_silhs=.false., &
         665           0 :              grid_kind=stats_zt )
         666           0 :         k = k + 1
         667             :
         668             :       case ('thlm_mfl_max')
         669           0 :         stats_metadata%ithlm_mfl_max = k
         670             :         call stat_assign( var_index=stats_metadata%ithlm_mfl_max, var_name="thlm_mfl_max", &
         671             :              var_description="thlm_mfl_max, Maximum allowable thlm", var_units="K", &
         672             :              l_silhs=.false., &
         673           0 :              grid_kind=stats_zt )
         674           0 :         k = k + 1
         675             :
         676             :       case ('thlm_enter_mfl')
         677           0 :         stats_metadata%ithlm_enter_mfl = k
         678             :         call stat_assign( var_index=stats_metadata%ithlm_enter_mfl, var_name="thlm_enter_mfl", &
         679             :              var_description="thlm_enter_mfl, Thlm before flux-limiter", var_units="K", &
         680             :              l_silhs=.false., &
         681           0 :              grid_kind=stats_zt )
         682           0 :         k = k + 1
         683             :
         684             :       case ('thlm_exit_mfl')
         685           0 :         stats_metadata%ithlm_exit_mfl = k
         686             :         call stat_assign( var_index=stats_metadata%ithlm_exit_mfl, var_name="thlm_exit_mfl", &
         687             :              var_description="thlm_exit_mfl, Thlm exiting flux-limiter", var_units="K", &
         688             :              l_silhs=.false., &
         689           0 :              grid_kind=stats_zt )
         690           0 :         k = k + 1
         691             :
         692             :       case ('thlm_old')
         693           0 :         stats_metadata%ithlm_old = k
         694             :         call stat_assign( var_index=stats_metadata%ithlm_old, var_name="thlm_old", &
         695             :              var_description="thlm_old, Thlm at previous timestep", var_units="K", &
         696             :              l_silhs=.false., &
         697           0 :              grid_kind=stats_zt )
         698           0 :         k = k + 1
         699             :
         700             :       case ('thlm_without_ta')
         701           0 :         stats_metadata%ithlm_without_ta = k
         702             :         call stat_assign( var_index=stats_metadata%ithlm_without_ta, var_name="thlm_without_ta", &
         703             :              var_description="thlm_without_ta, Thlm without turbulent advection contribution", &
         704             :              var_units="K", &
         705           0 :              l_silhs=.false., grid_kind=stats_zt )
         706           0 :         k = k + 1
         707             :
         708             :       case ('rtm_mfl_min')
         709           0 :         stats_metadata%irtm_mfl_min = k
         710             :         call stat_assign( var_index=stats_metadata%irtm_mfl_min, var_name="rtm_mfl_min", &
         711             :              var_description="rtm_mfl_min, Minimum allowable rtm", var_units="kg/kg", &
         712           0 :              l_silhs=.false., grid_kind=stats_zt )
         713           0 :         k = k + 1
         714             :
         715             :       case ('rtm_mfl_max')
         716           0 :         stats_metadata%irtm_mfl_max = k
         717             :         call stat_assign( var_index=stats_metadata%irtm_mfl_max, var_name="rtm_mfl_max", &
         718             :              var_description="rtm_mfl_max, Maximum allowable rtm", var_units="kg/kg", &
         719           0 :              l_silhs=.false., grid_kind=stats_zt )
         720           0 :         k = k + 1
         721             :
         722             :       case ('rtm_enter_mfl')
         723           0 :         stats_metadata%irtm_enter_mfl = k
         724             :         call stat_assign( var_index=stats_metadata%irtm_enter_mfl, var_name="rtm_enter_mfl", &
         725             :              var_description="rtm_enter_mfl, Rtm before flux-limiter", var_units="kg/kg", &
         726           0 :              l_silhs=.false., grid_kind=stats_zt )
         727           0 :         k = k + 1
         728             :
         729             :       case ('rtm_exit_mfl')
         730           0 :         stats_metadata%irtm_exit_mfl = k
         731             :         call stat_assign( var_index=stats_metadata%irtm_exit_mfl, var_name="rtm_exit_mfl", &
         732             :              var_description="rtm_exit_mfl, Rtm exiting flux-limiter", var_units="kg/kg", &
         733           0 :              l_silhs=.false., grid_kind=stats_zt )
         734           0 :         k = k + 1
         735             :
         736             :       case ('rtm_old')
         737           0 :         stats_metadata%irtm_old = k
         738             :         call stat_assign( var_index=stats_metadata%irtm_old, var_name="rtm_old", &
         739             :              var_description="rtm_old, Rtm at previous timestep", var_units="kg/kg", &
         740           0 :              l_silhs=.false., grid_kind=stats_zt )
         741           0 :         k = k + 1
         742             :
         743             :       case ('rtm_without_ta')
         744           0 :         stats_metadata%irtm_without_ta = k
         745             :         call stat_assign( var_index=stats_metadata%irtm_without_ta, var_name="rtm_without_ta", &
         746             :              var_description="rtm_without_ta, Rtm without turbulent advection contribution", &
         747           0 :              var_units="kg/kg", l_silhs=.false., grid_kind=stats_zt )
         748           0 :         k = k + 1
         749             :
         750             :       case ('wp3')
         751           0 :         stats_metadata%iwp3 = k
         752             :         call stat_assign( var_index=stats_metadata%iwp3, var_name="wp3", &
         753             :              var_description="w'^3, Third-order moment of vertical air velocity", &
         754             :              var_units="m^3/s^3", &
         755           0 :              l_silhs=.false., grid_kind=stats_zt )
         756           0 :         k = k + 1
         757             :
         758             :       case ('wpup2')
         759           0 :         stats_metadata%iwpup2 = k
         760             :         call stat_assign( var_index=stats_metadata%iwpup2, var_name="wpup2", &
         761             :              var_description="w'u'^2, Third-order moment from PDF", &
         762             :              var_units="m^3/s^3", &
         763           0 :              l_silhs=.false., grid_kind=stats_zt )
         764           0 :         k = k + 1
         765             :
         766             :       case ('wpvp2')
         767           0 :         stats_metadata%iwpvp2 = k
         768             :         call stat_assign( var_index=stats_metadata%iwpvp2, var_name="wpvp2", &
         769             :              var_description="w'v'^2, Third-order moment from PDF", &
         770             :              var_units="m^3/s^3", &
         771           0 :              l_silhs=.false., grid_kind=stats_zt )
         772           0 :         k = k + 1
         773             :
         774             :       case ('thlp3')
         775           0 :         stats_metadata%ithlp3 = k
         776             :         call stat_assign( var_index=stats_metadata%ithlp3, var_name="thlp3", &
         777             :              var_description="thl'^3, Third-order moment of theta_l", var_units="K^3", &
         778           0 :              l_silhs=.false., grid_kind=stats_zt )
         779           0 :         k = k + 1
         780             :
         781             :       case ('rtp3')
         782           0 :         stats_metadata%irtp3 = k
         783             :         call stat_assign( var_index=stats_metadata%irtp3, var_name="rtp3", &
         784             :              var_description="rt'^3, Third-order moment of total water, rt", var_units="(kg/kg)^3", &
         785           0 :              l_silhs=.false., grid_kind=stats_zt )
         786           0 :         k = k + 1
         787             :
         788             :       case ('wpthlp2')
         789           0 :         stats_metadata%iwpthlp2 = k
         790             :         call stat_assign( var_index=stats_metadata%iwpthlp2, var_name="wpthlp2", &
         791             :              var_description="w'theta_l'^2, Vertical turbulent flux of theta_l'^2", &
         792             :              var_units="(m K^2)/s", l_silhs=.false., &
         793           0 :              grid_kind=stats_zt )
         794           0 :         k = k + 1
         795             :
         796             :       case ('wp2thlp')
         797           0 :         stats_metadata%iwp2thlp = k
         798             :         call stat_assign( var_index=stats_metadata%iwp2thlp, var_name="wp2thlp", &
         799             :              var_description="w'^2theta_l', Vertical turbulent flux of w'theta_l'", &
         800             :              var_units="(m^2 K)/s^2", l_silhs=.false., &
         801           0 :              grid_kind=stats_zt )
         802           0 :         k = k + 1
         803             :
         804             :       case ('wprtp2')
         805           0 :         stats_metadata%iwprtp2 = k
         806             :         call stat_assign( var_index=stats_metadata%iwprtp2, var_name="wprtp2", &
         807             :              var_description="w'rt'^2, Vertical turbulent flux of rt'^2", &
         808             :              var_units="(m kg)/(s kg)", &
         809           0 :              l_silhs=.false., grid_kind=stats_zt )
         810           0 :         k = k + 1
         811             :
         812             :       case ('wp2rtp')
         813           0 :         stats_metadata%iwp2rtp = k
         814             :         call stat_assign( var_index=stats_metadata%iwp2rtp, var_name="wp2rtp", &
         815             :              var_description="w'^2rt', Vertical turbulent flux of w'rt'", &
         816             :              var_units="(m^2 kg)/(s^2 kg)", &
         817           0 :              l_silhs=.false., grid_kind=stats_zt )
         818           0 :         k = k + 1
         819             :
         820             :       case ('Lscale_up')
         821           0 :         stats_metadata%iLscale_up = k
         822             :         call stat_assign( var_index=stats_metadata%iLscale_up, var_name="Lscale_up", &
         823             :              var_description="Lscale_up, Upward mixing length", var_units="m", l_silhs=.false., &
         824           0 :              grid_kind=stats_zt )
         825           0 :         k = k + 1
         826             :
         827             :       case ('Lscale_down')
         828           0 :         stats_metadata%iLscale_down = k
         829             :         call stat_assign( var_index=stats_metadata%iLscale_down, var_name="Lscale_down", &
         830             :              var_description="Lscale_down, Downward mixing length", var_units="m", &
         831             :              l_silhs=.false.,&
         832           0 :              grid_kind=stats_zt )
         833           0 :         k = k + 1
         834             :
         835             :       case ('Lscale_pert_1')
         836           0 :         stats_metadata%iLscale_pert_1 = k
         837             :         call stat_assign( var_index=stats_metadata%iLscale_pert_1, var_name="Lscale_pert_1", &
         838             :              var_description="Lscale_pert_1, Mixing length using a perturbed value of rtm/thlm", &
         839           0 :              var_units="m", l_silhs=.false., grid_kind=stats_zt )
         840           0 :         k = k + 1
         841             :
         842             :       case ('Lscale_pert_2')
         843           0 :         stats_metadata%iLscale_pert_2 = k
         844             :         call stat_assign( var_index=stats_metadata%iLscale_pert_2, var_name="Lscale_pert_2", &
         845             :              var_description="Lscale_pert_2, Mixing length using a perturbed value of rtm/thlm", &
         846           0 :              var_units="m", l_silhs=.false., grid_kind=stats_zt )
         847           0 :         k = k + 1
         848             :
         849             :       case ('tau_zt')
         850           0 :         stats_metadata%itau_zt = k
         851             :         call stat_assign( var_index=stats_metadata%itau_zt, var_name="tau_zt", &
         852             :              var_description="tau_zt, Dissipation time", var_units="s", l_silhs=.false., &
         853           0 :              grid_kind=stats_zt )
         854           0 :         k = k + 1
         855             :
         856             :       case ('invrs_tau_zt')
         857           0 :         stats_metadata%iinvrs_tau_zt = k
         858             :         call stat_assign( var_index=stats_metadata%iinvrs_tau_zt, var_name="invrs_tau_zt", &
         859             :              var_description="invrs_tau_zt, Inverse of dissipation time", var_units="s^-1", &
         860           0 :              l_silhs=.false., grid_kind=stats_zt )
         861           0 :         k = k + 1
         862             :
         863             :       case ('Kh_zt')
         864           0 :         stats_metadata%iKh_zt = k
         865             :         call stat_assign( var_index=stats_metadata%iKh_zt, var_name="Kh_zt", &
         866             :              var_description="Kh_zt, Eddy diffusivity", var_units="m^2/s", l_silhs=.false., &
         867           0 :              grid_kind=stats_zt )
         868           0 :         k = k + 1
         869             :
         870             :       case ('wp2thvp')
         871           0 :         stats_metadata%iwp2thvp = k
         872             :         call stat_assign( var_index=stats_metadata%iwp2thvp, var_name="wp2thvp", &
         873             :              var_description="w'^2theta_v', Vertical turbulent flux of w'theta_v'", &
         874             :              var_units="K m^2/s^2", l_silhs=.false., &
         875           0 :              grid_kind=stats_zt )
         876           0 :         k = k + 1
         877             :
         878             :       case ('wp2rcp')
         879           0 :         stats_metadata%iwp2rcp = k
         880             :         call stat_assign( var_index=stats_metadata%iwp2rcp, var_name="wp2rcp", &
         881             :              var_description="w'^2rc'", var_units="(m^2 kg)/(s^2 kg)", &
         882           0 :              l_silhs=.false., grid_kind=stats_zt )
         883           0 :         k = k + 1
         884             :
         885             :       case ('w_up_in_cloud')
         886           0 :         stats_metadata%iw_up_in_cloud = k
         887             :         call stat_assign( var_index=stats_metadata%iw_up_in_cloud, var_name="w_up_in_cloud", &
         888             :              var_description="Mean W in saturated updrafts", &
         889           0 :              var_units="m/s", l_silhs=.false., grid_kind=stats_zt )
         890           0 :          k = k + 1
         891             :
         892             :       case ('w_down_in_cloud')
         893           0 :         stats_metadata%iw_down_in_cloud = k
         894             :         call stat_assign( var_index=stats_metadata%iw_down_in_cloud, var_name="w_down_in_cloud", &
         895             :              var_description="Mean W in saturated downdrafts", &
         896           0 :              var_units="m/s", l_silhs=.false., grid_kind=stats_zt )
         897           0 :          k = k + 1
         898             :
         899             :       case ('cld_updr_frac')
         900           0 :         stats_metadata%icld_updr_frac = k
         901             :         call stat_assign( var_index=stats_metadata%icld_updr_frac, var_name="cld_updr_frac", &
         902             :              var_description="Cloudy Updraft Fraction", &
         903           0 :              var_units="-", l_silhs=.false., grid_kind=stats_zt )
         904           0 :          k = k + 1
         905             :
         906             :       case ('cld_downdr_frac')
         907           0 :         stats_metadata%icld_downdr_frac = k
         908             :         call stat_assign( var_index=stats_metadata%icld_downdr_frac, var_name="cld_downdr_frac", &
         909             :              var_description="Cloudy Downdraft Fraction", &
         910           0 :              var_units="-", l_silhs=.false., grid_kind=stats_zt )
         911           0 :          k = k + 1
         912             :
         913             :       case ('wprtpthlp')
         914           0 :         stats_metadata%iwprtpthlp = k
         915             :         call stat_assign( var_index=stats_metadata%iwprtpthlp, var_name="wprtpthlp", &
         916             :              var_description="w'rt'theta_l', Vertical turbulent flux of rt'theta_l'", &
         917             :              var_units="(m kg K)/(s kg)", &
         918           0 :              l_silhs=.false., grid_kind=stats_zt )
         919           0 :         k = k + 1
         920             :
         921             :       case ('rc_coef')
         922           0 :         stats_metadata%irc_coef = k
         923             :         call stat_assign( var_index=stats_metadata%irc_coef, var_name="rc_coef", &
         924             :              var_description="rc_coef, Coefficient of X'r_c'", &
         925           0 :              var_units="K/(kg/kg)", l_silhs=.false., grid_kind=stats_zt )
         926           0 :         k = k + 1
         927             :
         928             :       case ('sigma_sqd_w_zt')
         929           0 :         stats_metadata%isigma_sqd_w_zt = k
         930             :         call stat_assign( var_index=stats_metadata%isigma_sqd_w_zt, var_name="sigma_sqd_w_zt", &
         931             :              var_description="sigma_sqd_w_zt, Nondimensionalized w variance of " &
         932             :              // "Gaussian component",&
         933           0 :              var_units="-", l_silhs=.false., grid_kind=stats_zt )
         934           0 :         k = k + 1
         935             :
         936             :       case ('rho')
         937           0 :         stats_metadata%irho = k
         938             :         call stat_assign( var_index=stats_metadata%irho, var_name="rho", var_description="rho, Air density", &
         939           0 :              var_units="kg m^{-3}", l_silhs=.false., grid_kind=stats_zt )
         940           0 :         k = k + 1
         941             :
         942             :       case ('Ncm')           ! Brian
         943           0 :         stats_metadata%iNcm = k
         944             :         call stat_assign( var_index=stats_metadata%iNcm, var_name="Ncm", &
         945             :              var_description="Ncm, Cloud droplet number concentration", var_units="num/kg", &
         946           0 :              l_silhs=.false., grid_kind=stats_zt )
         947           0 :         k = k + 1
         948             :
         949             :       case ('Nc_in_cloud')
         950           0 :         stats_metadata%iNc_in_cloud = k
         951             :
         952             :         call stat_assign( var_index=stats_metadata%iNc_in_cloud, var_name="Nc_in_cloud", &
         953             :              var_description="Nc_in_cloud, In cloud droplet concentration", var_units="num/kg", &
         954           0 :              l_silhs=.false., grid_kind=stats_zt )
         955             :
         956           0 :         k = k + 1
         957             :
         958             :       case ('Nc_activated')
         959           0 :         stats_metadata%iNc_activated = k
         960             :
         961             :         call stat_assign( var_index=stats_metadata%iNc_activated, var_name="Nc_activated", &
         962             :              var_description="Nc_activated, Droplets activated by GFDL activation", &
         963           0 :              var_units="num/kg", l_silhs=.false., grid_kind=stats_zt )
         964             :
         965           0 :         k = k + 1
         966             :
         967             :       case ('Nccnm')
         968           0 :         stats_metadata%iNccnm = k
         969             :         call stat_assign( var_index=stats_metadata%iNccnm, var_name="Nccnm", &
         970             :              var_description="Nccnm, Cloud condensation nuclei concentration", &
         971           0 :              var_units="num/kg", l_silhs=.false., grid_kind=stats_zt )
         972           0 :         k = k + 1
         973             :
         974             :       case ('Nim')           ! Brian
         975           0 :         stats_metadata%iNim = k
         976             :         call stat_assign( var_index=stats_metadata%iNim, var_name="Nim", &
         977             :              var_description="Nim, Ice crystal number concentration", var_units="num/kg", &
         978           0 :              l_silhs=.false., grid_kind=stats_zt )
         979           0 :         k = k + 1
         980             :
         981             :       case ('snowslope')     ! Adam Smith, 22 April 2008
         982           0 :         stats_metadata%isnowslope = k
         983             :         call stat_assign( var_index=stats_metadata%isnowslope, var_name="snowslope", &
         984             :              var_description="snowslope, COAMPS microphysics snow slope parameter", &
         985             :              var_units="1/m", &
         986           0 :              l_silhs=.false., grid_kind=stats_zt )
         987           0 :         k = k + 1
         988             :
         989             :       case ('Nsm')        ! Adam Smith, 22 April 2008
         990           0 :         stats_metadata%iNsm = k
         991             :         call stat_assign( var_index=stats_metadata%iNsm, var_name="Nsm", &
         992             :              var_description="Nsm, Snow particle number concentration", var_units="num/kg", &
         993           0 :              l_silhs=.false., grid_kind=stats_zt )
         994           0 :         k = k + 1
         995             :
         996             :       case ('Ngm')
         997           0 :         stats_metadata%iNgm = k
         998             :         call stat_assign( var_index=stats_metadata%iNgm, var_name="Ngm", &
         999             :              var_description="Ngm, Graupel number concentration", var_units="num/kg", &
        1000           0 :              l_silhs=.false., grid_kind=stats_zt )
        1001           0 :         k = k + 1
        1002             :
        1003             :       case ('sed_rcm')       ! Brian
        1004           0 :         stats_metadata%ised_rcm = k
        1005             :         call stat_assign( var_index=stats_metadata%ised_rcm, var_name="sed_rcm", &
        1006             :              var_description="sed_rcm, d(rcm)/dt due to cloud sedimentation", &
        1007           0 :              var_units="kg / [m^2 s]", l_silhs=.false., grid_kind=stats_zt )
        1008           0 :         k = k + 1
        1009             :
        1010             :       case ('rsat')           ! Brian
        1011           0 :         stats_metadata%irsat = k
        1012             :         call stat_assign( var_index=stats_metadata%irsat, var_name="rsat", &
        1013             :              var_description="rsat, Saturation mixing ratio over liquid", var_units="kg/kg", &
        1014           0 :              l_silhs=.false., grid_kind=stats_zt )
        1015           0 :         k = k + 1
        1016             :
        1017             :       case ('rsati')
        1018           0 :         stats_metadata%irsati = k
        1019             :         call stat_assign( var_index=stats_metadata%irsati, var_name="rsati", &
        1020             :              var_description="rsati, Saturation mixing ratio over ice", var_units="kg/kg", &
        1021           0 :              l_silhs=.false., grid_kind=stats_zt )
        1022           0 :         k = k + 1
        1023             :
        1024             :       case ('rrm')           ! Brian
        1025           0 :         stats_metadata%irrm = k
        1026             :         call stat_assign( var_index=stats_metadata%irrm, var_name="rrm", &
        1027             :              var_description="rrm, Rain water mixing ratio", var_units="kg/kg", &
        1028           0 :              l_silhs=.false., grid_kind=stats_zt )
        1029           0 :         k = k + 1
        1030             :
        1031             :       case ('rsm')
        1032           0 :         stats_metadata%irsm = k
        1033             :         call stat_assign( var_index=stats_metadata%irsm, var_name="rsm", &
        1034             :              var_description="rsm, Snow water mixing ratio", var_units="kg/kg", &
        1035           0 :              l_silhs=.false., grid_kind=stats_zt )
        1036           0 :         k = k + 1
        1037             :
        1038             :       case ('rim')
        1039           0 :         stats_metadata%irim = k
        1040             :         call stat_assign( var_index=stats_metadata%irim, var_name="rim", &
        1041             :              var_description="rim, Pristine ice water mixing ratio", var_units="kg/kg", &
        1042           0 :              l_silhs=.false., grid_kind=stats_zt )
        1043           0 :         k = k + 1
        1044             :
        1045             :       case ('rgm')
        1046           0 :         stats_metadata%irgm = k
        1047             :         call stat_assign( var_index=stats_metadata%irgm, var_name="rgm", &
        1048             :              var_description="rgm, Graupel water mixing ratio", var_units="kg/kg", &
        1049           0 :              l_silhs=.false., grid_kind=stats_zt )
        1050           0 :         k = k + 1
        1051             :
        1052             :       case ('Nrm')           ! Brian
        1053           0 :         stats_metadata%iNrm = k
        1054             :         call stat_assign( var_index=stats_metadata%iNrm, var_name="Nrm", &
        1055             :              var_description="Nrm, Rain drop number concentration", var_units="num/kg", &
        1056           0 :              l_silhs=.false., grid_kind=stats_zt )
        1057           0 :         k = k + 1
        1058             :
        1059             :       case ('m_vol_rad_rain')  ! Brian
        1060           0 :         stats_metadata%im_vol_rad_rain = k
        1061             :         call stat_assign( var_index=stats_metadata%im_vol_rad_rain, var_name="mvrr", &
        1062             :              var_description="mvrr, Rain drop mean volume radius", &
        1063             :              var_units="m", l_silhs=.false.,&
        1064           0 :              grid_kind=stats_zt )
        1065           0 :         k = k + 1
        1066             :
        1067             :       case ('m_vol_rad_cloud')
        1068           0 :         stats_metadata%im_vol_rad_cloud = k
        1069             :         call stat_assign( var_index=stats_metadata%im_vol_rad_cloud, var_name="m_vol_rad_cloud", &
        1070             :              var_description="m_vol_rad_cloud, Cloud drop mean volume radius", var_units="m", &
        1071             :              l_silhs=.false., &
        1072           0 :              grid_kind=stats_zt )
        1073           0 :         k = k + 1
        1074             :
        1075             :       case ('eff_rad_cloud')
        1076           0 :         stats_metadata%ieff_rad_cloud = k
        1077             :         call stat_assign( var_index=stats_metadata%ieff_rad_cloud, var_name="eff_rad_cloud", &
        1078             :              var_description="eff_rad_cloud, Cloud drop effective volume radius", &
        1079             :              var_units="microns", &
        1080           0 :              l_silhs=.false., grid_kind=stats_zt )
        1081           0 :         k = k + 1
        1082             :
        1083             :       case ('eff_rad_ice')
        1084           0 :         stats_metadata%ieff_rad_ice = k
        1085             :
        1086             :         call stat_assign( var_index=stats_metadata%ieff_rad_ice, var_name="eff_rad_ice", &
        1087             :              var_description="eff_rad_ice, Ice effective volume radius", var_units="microns", &
        1088           0 :              l_silhs=.false., grid_kind=stats_zt )
        1089           0 :         k = k + 1
        1090             :
        1091             :       case ('eff_rad_snow')
        1092           0 :         stats_metadata%ieff_rad_snow = k
        1093             :         call stat_assign( var_index=stats_metadata%ieff_rad_snow, var_name="eff_rad_snow", &
        1094             :              var_description="eff_rad_snow, Snow effective volume radius", &
        1095             :              var_units="microns", &
        1096           0 :              l_silhs=.false., grid_kind=stats_zt )
        1097           0 :         k = k + 1
        1098             :
        1099             :       case ('eff_rad_rain')
        1100           0 :         stats_metadata%ieff_rad_rain = k
        1101             :         call stat_assign( var_index=stats_metadata%ieff_rad_rain, var_name="eff_rad_rain", &
        1102             :              var_description="eff_rad_rain, Rain drop effective volume radius", &
        1103             :              var_units="microns", &
        1104           0 :              l_silhs=.false., grid_kind=stats_zt )
        1105           0 :         k = k + 1
        1106             :
        1107             :       case ('eff_rad_graupel')
        1108           0 :         stats_metadata%ieff_rad_graupel = k
        1109             :         call stat_assign( var_index=stats_metadata%ieff_rad_graupel, var_name="eff_rad_graupel", &
        1110             :              var_description="eff_rad_graupel, Graupel effective volume radius", &
        1111             :              var_units="microns", &
        1112           0 :              l_silhs=.false., grid_kind=stats_zt )
        1113           0 :         k = k + 1
        1114             :
        1115             :       case ('precip_rate_zt')     ! Brian
        1116           0 :         stats_metadata%iprecip_rate_zt = k
        1117             :
        1118             :         call stat_assign( var_index=stats_metadata%iprecip_rate_zt, var_name="precip_rate_zt", &
        1119             :              var_description="precip_rate_zt, Rain rate", var_units="mm/day", l_silhs=.false., &
        1120           0 :              grid_kind=stats_zt )
        1121           0 :         k = k + 1
        1122             :
        1123             :       case ('radht')
        1124           0 :         stats_metadata%iradht = k
        1125             :
        1126             :         call stat_assign( var_index=stats_metadata%iradht, var_name="radht", &
        1127             :              var_description="radht, Total (sw+lw) radiative heating rate", var_units="K/s", &
        1128           0 :              l_silhs=.false., grid_kind=stats_zt )
        1129           0 :         k = k + 1
        1130             :
        1131             :       case ('radht_LW')
        1132           0 :         stats_metadata%iradht_LW = k
        1133             :
        1134             :         call stat_assign( var_index=stats_metadata%iradht_LW, var_name="radht_LW", &
        1135             :              var_description="radht_LW, Long-wave radiative heating rate", var_units="K/s", &
        1136           0 :              l_silhs=.false., grid_kind=stats_zt )
        1137             :
        1138           0 :         k = k + 1
        1139             :
        1140             :       case ('radht_SW')
        1141           0 :         stats_metadata%iradht_SW = k
        1142             :         call stat_assign( var_index=stats_metadata%iradht_SW, var_name="radht_SW", &
        1143             :              var_description="radht_SW, Short-wave radiative heating rate", var_units="K/s", &
        1144           0 :              l_silhs=.false., grid_kind=stats_zt )
        1145           0 :         k = k + 1
        1146             :
        1147             :       case ('diam')
        1148           0 :         stats_metadata%idiam = k
        1149             :
        1150             :         call stat_assign( var_index=stats_metadata%idiam, var_name="diam", &
        1151             :              var_description="diam, Ice crystal diameter", var_units="m", l_silhs=.false., &
        1152           0 :              grid_kind=stats_zt )
        1153           0 :         k = k + 1
        1154             :
        1155             :       case ('mass_ice_cryst')
        1156           0 :         stats_metadata%imass_ice_cryst = k
        1157             :         call stat_assign( var_index=stats_metadata%imass_ice_cryst, var_name="mass_ice_cryst", &
        1158             :              var_description="mass_ice_cryst, Mass of a single ice crystal", var_units="kg", &
        1159           0 :              l_silhs=.false., grid_kind=stats_zt )
        1160           0 :         k = k + 1
        1161             :
        1162             :       case ('rcm_icedfs')
        1163           0 :         stats_metadata%ircm_icedfs = k
        1164             :         call stat_assign( var_index=stats_metadata%ircm_icedfs, var_name="rcm_icedfs", &
        1165             :              var_description="rcm_icedfs, Change in liquid due to ice", var_units="kg/kg/s", &
        1166           0 :              l_silhs=.false., grid_kind=stats_zt )
        1167           0 :         k = k + 1
        1168             :
        1169             :       case ('u_T_cm')
        1170           0 :         stats_metadata%iu_T_cm = k
        1171             :         call stat_assign( var_index=stats_metadata%iu_T_cm, var_name="u_T_cm", &
        1172             :              var_description="u_T_cm, Ice crystal fallspeed", var_units="cm s^{-1}", &
        1173           0 :              l_silhs=.false., grid_kind=stats_zt )
        1174           0 :         k = k + 1
        1175             :
        1176             :       case ('rtm_bt')
        1177           0 :         stats_metadata%irtm_bt = k
        1178             :
        1179             :         call stat_assign( var_index=stats_metadata%irtm_bt, var_name="rtm_bt", &
        1180             :              var_description="rtm_bt, rtm budget: rtm time tendency", &
        1181           0 :              var_units="kg kg^{-1} s^{-1}", l_silhs=.false., grid_kind=stats_zt )
        1182           0 :         k = k + 1
        1183             :
        1184             :       case ('rtm_ma')
        1185           0 :         stats_metadata%irtm_ma = k
        1186             :
        1187             :         call stat_assign( var_index=stats_metadata%irtm_ma, var_name="rtm_ma", &
        1188             :              var_description="rtm_ma, rtm budget: rtm vertical mean advection", &
        1189           0 :              var_units="kg kg^{-1} s^{-1}", l_silhs=.false., grid_kind=stats_zt )
        1190           0 :         k = k + 1
        1191             :
        1192             :       case ('rtm_ta')
        1193           0 :         stats_metadata%irtm_ta = k
        1194             :
        1195             :         call stat_assign( var_index=stats_metadata%irtm_ta, var_name="rtm_ta", &
        1196             :              var_description="rtm_ta, rtm budget: rtm turbulent advection", &
        1197           0 :              var_units="kg kg^{-1} s^{-1}", l_silhs=.false., grid_kind=stats_zt )
        1198           0 :         k = k + 1
        1199             :
        1200             :       case ('rtm_mfl')
        1201           0 :         stats_metadata%irtm_mfl = k
        1202             :
        1203             :         call stat_assign( var_index=stats_metadata%irtm_mfl, var_name="rtm_mfl", &
        1204             :          var_description="rtm_mfl, rtm budget: rtm correction due to monotonic flux limiter", &
        1205           0 :          var_units="kg kg^{-1} s^{-1}", l_silhs=.false., grid_kind=stats_zt)
        1206           0 :         k = k + 1
        1207             :
        1208             :       case ('rtm_tacl')
        1209           0 :         stats_metadata%irtm_tacl = k
        1210             :
        1211             :         call stat_assign( var_index=stats_metadata%irtm_tacl, var_name="rtm_tacl", &
        1212             :           var_description="rtm_tacl, rtm budget: rtm correction due to ta term" &
        1213             :           // " (wprtp) clipping", &
        1214           0 :           var_units="kg kg^{-1} s^{-1}", l_silhs=.false., grid_kind=stats_zt)
        1215             :
        1216           0 :         k = k + 1
        1217             :
        1218             :       case ('rtm_cl')
        1219           0 :         stats_metadata%irtm_cl = k
        1220             :
        1221             :         call stat_assign( var_index=stats_metadata%irtm_cl, var_name="rtm_cl", &
        1222             :              var_description="rtm_cl, rtm budget: rtm clipping", &
        1223           0 :              var_units="kg kg^{-1} s^{-1}", l_silhs=.false., grid_kind=stats_zt )
        1224             :
        1225           0 :         k = k + 1
        1226             :       case ('rtm_sdmp')
        1227           0 :         stats_metadata%irtm_sdmp = k
        1228             :
        1229             :         call stat_assign( var_index=stats_metadata%irtm_sdmp, var_name="rtm_sdmp", &
        1230             :              var_description="rtm_sdmp, rtm budget: rtm correction due to sponge damping", &
        1231           0 :              var_units="kg kg^{-1} s^{-1}", l_silhs=.false., grid_kind=stats_zt )
        1232           0 :         k = k + 1
        1233             :
        1234             :
        1235             :       case ('rtm_pd')
        1236           0 :         stats_metadata%irtm_pd = k
        1237             :
        1238             :         call stat_assign( var_index=stats_metadata%irtm_pd, var_name="rtm_pd", &
        1239             :              var_description="rtm_pd, rtm budget: rtm positive definite adjustment", &
        1240           0 :              var_units="kg kg^{-1} s^{-1}", l_silhs=.false., grid_kind=stats_zt )
        1241             :
        1242           0 :         k = k + 1
        1243             :
        1244             :       case ('thlm_bt')
        1245           0 :         stats_metadata%ithlm_bt = k
        1246             :
        1247             :         call stat_assign( var_index=stats_metadata%ithlm_bt, var_name="thlm_bt", &
        1248             :              var_description="thlm_bt, thlm budget: thlm time tendency", var_units="K s^{-1}", &
        1249           0 :              l_silhs=.false., grid_kind=stats_zt )
        1250           0 :         k = k + 1
        1251             :
        1252             :       case ('thlm_ma')
        1253           0 :         stats_metadata%ithlm_ma = k
        1254             :
        1255             :         call stat_assign( var_index=stats_metadata%ithlm_ma, var_name="thlm_ma", &
        1256             :              var_description="thlm_ma, thlm budget: thlm vertical mean advection", &
        1257           0 :              var_units="K s^{-1}", l_silhs=.false., grid_kind=stats_zt )
        1258           0 :         k = k + 1
        1259             :
        1260             :       case ('thlm_sdmp')
        1261           0 :         stats_metadata%ithlm_sdmp = k
        1262             :
        1263             :         call stat_assign( var_index=stats_metadata%ithlm_sdmp, var_name="thlm_sdmp", &
        1264             :              var_description="thlm_sdmp, thlm budget: thlm correction due to sponge damping", &
        1265           0 :              var_units="K s^{-1}", l_silhs=.false., grid_kind=stats_zt )
        1266           0 :         k = k + 1
        1267             :
        1268             :
        1269             :       case ('thlm_ta')
        1270           0 :         stats_metadata%ithlm_ta = k
        1271             :
        1272             :         call stat_assign( var_index=stats_metadata%ithlm_ta, var_name="thlm_ta", &
        1273             :              var_description="thlm_ta, thlm budget: thlm turbulent advection", &
        1274           0 :              var_units="K s^{-1}", l_silhs=.false., grid_kind=stats_zt )
        1275           0 :         k = k + 1
        1276             :
        1277             :       case ('thlm_mfl')
        1278           0 :         stats_metadata%ithlm_mfl = k
        1279             :
        1280             :         call stat_assign( var_index=stats_metadata%ithlm_mfl, var_name="thlm_mfl", &
        1281             :              var_description="thlm_mfl, thlm budget: thlm correction due to monotonic " &
        1282             :              // "flux limiter", &
        1283           0 :              var_units="K s^{-1}", l_silhs=.false., grid_kind=stats_zt )
        1284           0 :         k = k + 1
        1285             :
        1286             :       case ('thlm_tacl')
        1287           0 :         stats_metadata%ithlm_tacl = k
        1288             :
        1289             :         call stat_assign( var_index=stats_metadata%ithlm_tacl, var_name="thlm_tacl", &
        1290             :              var_description="thlm_tacl, thlm budget: thlm correction due to ta term " &
        1291             :              // "(wpthlp) clipping", &
        1292           0 :              var_units="K s^{-1}", l_silhs=.false., grid_kind=stats_zt )
        1293           0 :         k = k + 1
        1294             :
        1295             :       case ('thlm_cl')
        1296           0 :         stats_metadata%ithlm_cl = k
        1297             :
        1298             :         call stat_assign( var_index=stats_metadata%ithlm_cl, var_name="thlm_cl", &
        1299             :              var_description="thlm_cl, thlm budget: thlm_cl", var_units="K s^{-1}", &
        1300           0 :              l_silhs=.false., grid_kind=stats_zt )
        1301           0 :         k = k + 1
        1302             :
        1303             :       case ('wp3_bt')
        1304           0 :         stats_metadata%iwp3_bt = k
        1305             :
        1306             :         call stat_assign( var_index=stats_metadata%iwp3_bt, var_name="wp3_bt", &
        1307             :              var_description="wp3_bt, wp3 budget: wp3 time tendency", &
        1308           0 :              var_units="m^{3} s^{-4}", l_silhs=.false., grid_kind=stats_zt )
        1309           0 :         k = k + 1
        1310             :
        1311             :       case ('wp3_ma')
        1312           0 :         stats_metadata%iwp3_ma = k
        1313             :
        1314             :         call stat_assign( var_index=stats_metadata%iwp3_ma, var_name="wp3_ma", &
        1315             :              var_description="wp3_ma, wp3 budget: wp3 vertical mean advection", &
        1316           0 :              var_units="m^{3} s^{-4}", l_silhs=.false., grid_kind=stats_zt )
        1317           0 :         k = k + 1
        1318             :
        1319             :       case ('wp3_ta')
        1320           0 :         stats_metadata%iwp3_ta = k
        1321             :
        1322             :         call stat_assign( var_index=stats_metadata%iwp3_ta, var_name="wp3_ta", &
        1323             :              var_description="wp3_ta, wp3 budget: wp3 turbulent advection", &
        1324           0 :              var_units="m^{3} s^{-4}", l_silhs=.false., grid_kind=stats_zt )
        1325             :
        1326           0 :         k = k + 1
        1327             :
        1328             :       case ('wp3_tp')
        1329           0 :         stats_metadata%iwp3_tp = k
        1330             :         call stat_assign( var_index=stats_metadata%iwp3_tp, var_name="wp3_tp", &
        1331             :              var_description="wp3_tp, wp3 budget: wp3 turbulent transport", &
        1332           0 :              var_units="m^{3} s^{-4}", l_silhs=.false., grid_kind=stats_zt )
        1333           0 :         k = k + 1
        1334             :
        1335             :       case ('wp3_ac')
        1336           0 :         stats_metadata%iwp3_ac = k
        1337             :         call stat_assign( var_index=stats_metadata%iwp3_ac, var_name="wp3_ac", &
        1338             :              var_description="wp3_ac, wp3 budget: wp3 accumulation term", &
        1339           0 :              var_units="m^{3} s^{-4}", l_silhs=.false., grid_kind=stats_zt )
        1340           0 :         k = k + 1
        1341             :
        1342             :       case ('wp3_bp1')
        1343           0 :         stats_metadata%iwp3_bp1 = k
        1344             :         call stat_assign( var_index=stats_metadata%iwp3_bp1, var_name="wp3_bp1", &
        1345             :              var_description="wp3_bp1, wp3 budget: wp3 buoyancy production", &
        1346           0 :              var_units="m^{3} s^{-4}", l_silhs=.false., grid_kind=stats_zt )
        1347           0 :         k = k + 1
        1348             :
        1349             :       case ('wp3_pr_tp')
        1350           0 :         stats_metadata%iwp3_pr_tp = k
        1351             :         call stat_assign( var_index=stats_metadata%iwp3_pr_tp, var_name="wp3_pr_tp", &
        1352             :              var_description= &
        1353             :                "wp3_pr_tp, wp3 budget: wp3 pressure damping of turbulent production", &
        1354           0 :              var_units="m^{3} s^{-4}", l_silhs=.false., grid_kind=stats_zt )
        1355           0 :         k = k + 1
        1356             :
        1357             :       case ('wp3_pr_turb')
        1358           0 :         stats_metadata%iwp3_pr_turb = k
        1359             :         call stat_assign( var_index=stats_metadata%iwp3_pr_turb, var_name="wp3_pr_turb", &
        1360             :              var_description="wp3_pr_turb, wp3 budget: wp3 pressure-turbulence correlation term", &
        1361           0 :              var_units="m^{3} s^{-4}", l_silhs=.false., grid_kind=stats_zt )
        1362           0 :         k = k + 1
        1363             :
        1364             :       case ('wp3_pr_dfsn')
        1365           0 :         stats_metadata%iwp3_pr_dfsn = k
        1366             :         call stat_assign( var_index=stats_metadata%iwp3_pr_dfsn, var_name="wp3_pr_dfsn", &
        1367             :              var_description="wp3_pr_dfsn, wp3 budget: wp3 pressure diffusion term", &
        1368           0 :              var_units="m^{3} s^{-4}", l_silhs=.false., grid_kind=stats_zt )
        1369           0 :         k = k + 1
        1370             :
        1371             :       case ('wp3_pr1')
        1372           0 :         stats_metadata%iwp3_pr1 = k
        1373             :         call stat_assign( var_index=stats_metadata%iwp3_pr1, var_name="wp3_pr1", &
        1374             :              var_description="wp3_pr1, wp3 budget: wp3 pressure term 1", &
        1375           0 :              var_units="m^{3} s^{-4}", l_silhs=.false., grid_kind=stats_zt )
        1376           0 :         k = k + 1
        1377             :
        1378             :       case ('wp3_pr2')
        1379           0 :         stats_metadata%iwp3_pr2 = k
        1380             :         call stat_assign( var_index=stats_metadata%iwp3_pr2, var_name="wp3_pr2", &
        1381             :              var_description="wp3_pr2, wp3 budget: wp3 pressure term 2", &
        1382           0 :              var_units="m^{3} s^{-4}", l_silhs=.false., grid_kind=stats_zt )
        1383             :
        1384           0 :         k = k + 1
        1385             :
        1386             :       case ('wp3_pr3')
        1387           0 :         stats_metadata%iwp3_pr3 = k
        1388             :         call stat_assign( var_index=stats_metadata%iwp3_pr3, var_name="wp3_pr3", &
        1389             :              var_description="wp3_pr3, wp3 budget: wp3 pressure term 3", &
        1390           0 :              var_units="m^{3} s^{-4}", l_silhs=.false., grid_kind=stats_zt )
        1391             :
        1392           0 :         k = k + 1
        1393             :
        1394             :       case ('wp3_dp1')
        1395           0 :         stats_metadata%iwp3_dp1 = k
        1396             :         call stat_assign( var_index=stats_metadata%iwp3_dp1, var_name="wp3_dp1", &
        1397             :              var_description="wp3_dp1, wp3 budget: wp3 dissipation term 1", &
        1398           0 :              var_units="m^{3} s^{-4}", l_silhs=.false., grid_kind=stats_zt )
        1399           0 :         k = k + 1
        1400             :
        1401             :       case ('wp3_sdmp')
        1402           0 :         stats_metadata%iwp3_sdmp = k
        1403             :         call stat_assign( var_index=stats_metadata%iwp3_sdmp, var_name="wp3_sdmp", &
        1404             :              var_description="wp3_sdmp, wp3 budget: wp3 sponge damping term", &
        1405           0 :              var_units="m^{3} s^{-4}", l_silhs=.false., grid_kind=stats_zt )
        1406           0 :         k = k + 1
        1407             :
        1408             :       case ('wp3_cl')
        1409           0 :         stats_metadata%iwp3_cl = k
        1410             :         call stat_assign( var_index=stats_metadata%iwp3_cl, var_name="wp3_cl", &
        1411             :              var_description="wp3_cl, wp3 budget: wp3 clipping term", &
        1412           0 :              var_units="m^{3} s^{-4}", l_silhs=.false., grid_kind=stats_zt )
        1413           0 :         k = k + 1
        1414             :
        1415             :       case ('wp3_splat')
        1416           0 :         stats_metadata%iwp3_splat = k
        1417             :         call stat_assign( var_index=stats_metadata%iwp3_splat, var_name="wp3_splat", &
        1418             :              var_description="wp3_splat, wp3 budget: wp3 splatting term", &
        1419           0 :              var_units="m^3 s^-4", l_silhs=.false., grid_kind=stats_zt )
        1420           0 :         k = k + 1
        1421             :
        1422             :       case ('rtp3_bt')
        1423           0 :         stats_metadata%irtp3_bt = k
        1424             :
        1425             :         call stat_assign( var_index=stats_metadata%irtp3_bt, var_name="rtp3_bt", &
        1426             :              var_description="rtp3_bt, rtp3 budget: rtp3 time tendency" &
        1427             :                              // "[kg^{3} kg^{-3} s^{-1}]", &
        1428             :              var_units="kg^{3} kg^{-3} s^{-1}", l_silhs=.false., &
        1429           0 :              grid_kind=stats_zt )
        1430           0 :         k = k + 1
        1431             :
        1432             :       case ('rtp3_tp')
        1433           0 :         stats_metadata%irtp3_tp = k
        1434             :
        1435             :         call stat_assign( var_index=stats_metadata%irtp3_tp, var_name="rtp3_tp", &
        1436             :              var_description="rtp3_tp, rtp3 budget: rtp3 turbulent production" &
        1437             :                              // "[kg^{3} kg^{-3} s^{-1}]", &
        1438             :              var_units="kg^{3} kg^{-3} s^{-1}", l_silhs=.false., &
        1439           0 :              grid_kind=stats_zt )
        1440           0 :         k = k + 1
        1441             :
        1442             :       case ('rtp3_ac')
        1443           0 :         stats_metadata%irtp3_ac = k
        1444             :
        1445             :         call stat_assign( var_index=stats_metadata%irtp3_ac, var_name="rtp3_ac", &
        1446             :              var_description="rtp3_ac, rtp3 budget: rtp3 accumulation" &
        1447             :                              // "[kg^{3} kg^{-3} s^{-1}]", &
        1448             :              var_units="kg^{3} kg^{-3} s^{-1}", l_silhs=.false., &
        1449           0 :              grid_kind=stats_zt )
        1450           0 :         k = k + 1
        1451             :
        1452             :       case ('rtp3_dp')
        1453           0 :         stats_metadata%irtp3_dp = k
        1454             :
        1455             :         call stat_assign( var_index=stats_metadata%irtp3_dp, var_name="rtp3_dp", &
        1456             :              var_description="rtp3_dp, rtp3 budget: rtp3 dissipation" &
        1457             :                              // "[kg^{3} kg^{-3} s^{-1}]", &
        1458             :              var_units="kg^{3} kg^{-3} s^{-1}", l_silhs=.false., &
        1459           0 :              grid_kind=stats_zt )
        1460           0 :         k = k + 1
        1461             :
        1462             :       case ('thlp3_bt')
        1463           0 :         stats_metadata%ithlp3_bt = k
        1464             :
        1465             :         call stat_assign( var_index=stats_metadata%ithlp3_bt, var_name="thlp3_bt", &
        1466             :              var_description="thlp3_bt, thlp3 budget: thlp3 time tendency" &
        1467             :                              // "[K^{3} s^{-1}]", &
        1468           0 :              var_units="K^{3} s^{-1}", l_silhs=.false., grid_kind=stats_zt )
        1469           0 :         k = k + 1
        1470             :
        1471             :       case ('thlp3_tp')
        1472           0 :         stats_metadata%ithlp3_tp = k
        1473             :
        1474             :         call stat_assign( var_index=stats_metadata%ithlp3_tp, var_name="thlp3_tp", &
        1475             :              var_description="thlp3_tp, thlp3 budget: thlp3 turbulent production" &
        1476             :                              // "[K^{3} s^{-1}]", &
        1477           0 :              var_units="K^{3} s^{-1}", l_silhs=.false., grid_kind=stats_zt )
        1478           0 :         k = k + 1
        1479             :
        1480             :       case ('thlp3_ac')
        1481           0 :         stats_metadata%ithlp3_ac = k
        1482             :
        1483             :         call stat_assign( var_index=stats_metadata%ithlp3_ac, var_name="thlp3_ac", &
        1484             :              var_description="thlp3_ac, thlp3 budget: thlp3 accumulation" &
        1485             :                              // "[K^{3} s^{-1}]", &
        1486           0 :              var_units="K^{3} s^{-1}", l_silhs=.false., grid_kind=stats_zt )
        1487           0 :         k = k + 1
        1488             :
        1489             :       case ('thlp3_dp')
        1490           0 :         stats_metadata%ithlp3_dp = k
        1491             :
        1492             :         call stat_assign( var_index=stats_metadata%ithlp3_dp, var_name="thlp3_dp", &
        1493             :              var_description="thlp3_dp, thlp3 budget: thlp3 dissipation", &
        1494           0 :              var_units="K^{3} s^{-1}", l_silhs=.false., grid_kind=stats_zt )
        1495           0 :         k = k + 1
        1496             :
        1497             :       case ('rrm_bt')
        1498           0 :         stats_metadata%irrm_bt = k
        1499             :         call stat_assign( var_index=stats_metadata%irrm_bt, var_name="rrm_bt", &
        1500             :              var_description="rrm_bt, rrm budget: rrm time tendency", &
        1501           0 :              var_units="kg kg^{-1} s^{-1}", l_silhs=.false., grid_kind=stats_zt )
        1502           0 :         k = k + 1
        1503             :
        1504             :       case ('rrm_ma')
        1505           0 :         stats_metadata%irrm_ma = k
        1506             :
        1507             :         call stat_assign( var_index=stats_metadata%irrm_ma, var_name="rrm_ma", &
        1508             :              var_description="rrm_ma, rrm budget: rrm vertical mean advection", &
        1509           0 :              var_units="kg kg^{-1} s^{-1}", l_silhs=.false., grid_kind=stats_zt )
        1510           0 :         k = k + 1
        1511             :
        1512             :       case ('rrm_sd')
        1513           0 :         stats_metadata%irrm_sd = k
        1514             :
        1515             :         call stat_assign( var_index=stats_metadata%irrm_sd, var_name="rrm_sd", &
        1516             :              var_description="rrm_sd, rrm budget: rrm sedimentation", &
        1517           0 :              var_units="kg kg^{-1} s^{-1}", l_silhs=.false., grid_kind=stats_zt )
        1518           0 :         k = k + 1
        1519             :
        1520             :       case ('rrm_ts')
        1521           0 :         stats_metadata%irrm_ts = k
        1522             :
        1523             :         call stat_assign( var_index=stats_metadata%irrm_ts, var_name="rrm_ts", &
        1524             :              var_description="rrm_ts, rrm budget: rrm turbulent sedimentation", &
        1525           0 :              var_units="kg kg^{-1} s^{-1}", l_silhs=.false., grid_kind=stats_zt )
        1526           0 :         k = k + 1
        1527             :
        1528             :       case ('rrm_sd_morr')
        1529           0 :         stats_metadata%irrm_sd_morr = k
        1530             :
        1531             :         call stat_assign( var_index=stats_metadata%irrm_sd_morr, var_name="rrm_sd_morr", &
        1532             :              var_description="rrm_sd_morr, rrm sedimentation when using morrision microphysics &
        1533             :              &(not in budget, included in rrm_mc)", &
        1534           0 :              var_units="kg kg^{-1} s^{-1}", l_silhs=.true., grid_kind=stats_zt )
        1535           0 :         k = k + 1
        1536             :
        1537             :       case ('rrm_ta')
        1538           0 :         stats_metadata%irrm_ta = k
        1539             :
        1540             :         call stat_assign( var_index=stats_metadata%irrm_ta, var_name="rrm_ta", &
        1541             :              var_description="rrm_ta, rrm budget: rrm turbulent advection", &
        1542           0 :              var_units="kg kg^{-1} s^{-1}", l_silhs=.false., grid_kind=stats_zt )
        1543           0 :         k = k + 1
        1544             :
        1545             :       case ('rrm_evap')
        1546           0 :         stats_metadata%irrm_evap = k
        1547             :
        1548             :         call stat_assign( var_index=stats_metadata%irrm_evap, var_name="rrm_evap", &
        1549             :              var_description="rrm_evap, rrm evaporation rate", &
        1550           0 :              var_units="kg kg^{-1} s^{-1}", l_silhs=.false., grid_kind=stats_zt )
        1551           0 :         k = k + 1
        1552             :
        1553             :       case ('rrm_auto')
        1554           0 :         stats_metadata%irrm_auto = k
        1555             :
        1556             :         call stat_assign( var_index=stats_metadata%irrm_auto, var_name="rrm_auto", &
        1557             :              var_description="rrm_auto, rrm autoconversion rate", &
        1558           0 :              var_units="kg kg^{-1} s^{-1}", l_silhs=.false., grid_kind=stats_zt )
        1559           0 :         k = k + 1
        1560             :
        1561             :       case ('rrm_accr')
        1562           0 :         stats_metadata%irrm_accr = k
        1563             :         call stat_assign( var_index=stats_metadata%irrm_accr, var_name="rrm_accr", &
        1564             :              var_description="rrm_accr, rrm accretion rate", &
        1565           0 :              var_units="kg kg^{-1} s^{-1}", l_silhs=.false., grid_kind=stats_zt )
        1566           0 :         k = k + 1
        1567             :
        1568             :       case ('rrm_evap_adj')
        1569           0 :         stats_metadata%irrm_evap_adj = k
        1570             :
        1571             :         call stat_assign( var_index=stats_metadata%irrm_evap_adj, var_name="rrm_evap_adj", &
        1572             :              var_description="rrm_evap_adj, rrm evaporation adjustment due to over-evaporation", &
        1573           0 :              var_units="kg kg^{-1} s^{-1}", l_silhs=.false., grid_kind=stats_zt )
        1574           0 :         k = k + 1
        1575             :
        1576             :       case ('rrm_src_adj')
        1577           0 :         stats_metadata%irrm_src_adj = k
        1578             :
        1579             :         call stat_assign( var_index=stats_metadata%irrm_src_adj, var_name="rrm_src_adj", &
        1580             :              var_description="rrm_src_adj, rrm source term adjustment due to over-depletion", &
        1581           0 :              var_units="kg kg^{-1} s^{-1}", l_silhs=.false., grid_kind=stats_zt )
        1582           0 :         k = k + 1
        1583             :
        1584             :       case ('rrm_mc_nonadj')
        1585           0 :         stats_metadata%irrm_mc_nonadj = k
        1586             :
        1587             :         call stat_assign( var_index=stats_metadata%irrm_mc_nonadj, var_name="rrm_mc_nonadj", &
        1588             :              var_description="rrm_mc_nonadj, Value of rrm_mc tendency before adjustment", &
        1589           0 :              var_units="kg kg^{-1} s^{-1}", l_silhs=.false., grid_kind=stats_zt )
        1590           0 :         k = k + 1
        1591             :
        1592             :       case ('rrm_hf')
        1593           0 :         stats_metadata%irrm_hf = k
        1594             :         call stat_assign( var_index=stats_metadata%irrm_hf, var_name="rrm_hf", &
        1595             :              var_description="rrm_hf, rrm budget: rrm hole-filling term", &
        1596           0 :              var_units="kg kg^{-1} s^{-1}", l_silhs=.false., grid_kind=stats_zt )
        1597           0 :         k = k + 1
        1598             :
        1599             :       case ('rrm_wvhf')
        1600           0 :         stats_metadata%irrm_wvhf = k
        1601             :         call stat_assign( var_index=stats_metadata%irrm_wvhf, var_name="rrm_wvhf", &
        1602             :              var_description="rrm_wvhf, rrm budget: rrm water vapor hole-filling term", &
        1603           0 :              var_units="kg kg^{-1} s^{-1}", l_silhs=.false., grid_kind=stats_zt )
        1604           0 :         k = k + 1
        1605             :
        1606             :       case ('rrm_cl')
        1607           0 :         stats_metadata%irrm_cl = k
        1608             :         call stat_assign( var_index=stats_metadata%irrm_cl, var_name="rrm_cl", &
        1609             :              var_description="rrm_cl, rrm budget: rrm clipping term", &
        1610           0 :              var_units="kg kg^{-1} s^{-1}", l_silhs=.false., grid_kind=stats_zt )
        1611           0 :         k = k + 1
        1612             :
        1613             :       case ('rrm_mc')
        1614           0 :         stats_metadata%irrm_mc = k
        1615             :
        1616             :         call stat_assign( var_index=stats_metadata%irrm_mc, var_name="rrm_mc", &
        1617             :              var_description="rrm_mc, rrm budget: Change in rrm due to microphysics", &
        1618           0 :              var_units="kg kg^{-1} s^{-1}", l_silhs=.false., grid_kind=stats_zt )
        1619           0 :         k = k + 1
        1620             :
        1621             :       case ('Nrm_bt')
        1622           0 :         stats_metadata%iNrm_bt = k
        1623             :         call stat_assign( var_index=stats_metadata%iNrm_bt, var_name="Nrm_bt", &
        1624             :              var_description="Nrm_bt, Nrm budget: Nrm time tendency", &
        1625           0 :              var_units="(num/kg)/s", l_silhs=.false., grid_kind=stats_zt )
        1626             :
        1627           0 :         k = k + 1
        1628             :
        1629             :       case ('Nrm_ma')
        1630           0 :         stats_metadata%iNrm_ma = k
        1631             :
        1632             :         call stat_assign( var_index=stats_metadata%iNrm_ma, var_name="Nrm_ma", &
        1633             :              var_description="Nrm_ma, Nrm budget: Nrm vertical mean advection", &
        1634           0 :              var_units="(num/kg)/s", l_silhs=.false., grid_kind=stats_zt )
        1635           0 :         k = k + 1
        1636             :
        1637             :       case ('Nrm_sd')
        1638           0 :         stats_metadata%iNrm_sd = k
        1639             :
        1640             :         call stat_assign( var_index=stats_metadata%iNrm_sd, var_name="Nrm_sd", &
        1641             :              var_description="Nrm_sd, Nrm budget: Nrm sedimentation", &
        1642           0 :              var_units="(num/kg)/s", l_silhs=.false., grid_kind=stats_zt )
        1643             :
        1644           0 :         k = k + 1
        1645             :
        1646             :       case ('Nrm_ts')
        1647           0 :         stats_metadata%iNrm_ts = k
        1648             :
        1649             :         call stat_assign( var_index=stats_metadata%iNrm_ts, var_name="Nrm_ts", &
        1650             :              var_description="Nrm_ts, Nrm budget: Nrm turbulent sedimentation", &
        1651           0 :              var_units="(num/kg)/s", l_silhs=.false., grid_kind=stats_zt )
        1652           0 :         k = k + 1
        1653             :
        1654             :       case ('Nrm_ta')
        1655           0 :         stats_metadata%iNrm_ta = k
        1656             :         call stat_assign( var_index=stats_metadata%iNrm_ta, var_name="Nrm_ta", &
        1657             :              var_description="Nrm_ta, Nrm budget: Nrm turbulent advection", &
        1658           0 :              var_units="(num/kg)/s", l_silhs=.false., grid_kind=stats_zt )
        1659             :
        1660           0 :         k = k + 1
        1661             :
        1662             :       case ('Nrm_evap')
        1663           0 :         stats_metadata%iNrm_evap = k
        1664             :
        1665             :         call stat_assign( var_index=stats_metadata%iNrm_evap, var_name="Nrm_evap", &
        1666             :              var_description="Nrm_evap, Nrm evaporation rate", var_units="(num/kg)/s", &
        1667           0 :              l_silhs=.false., grid_kind=stats_zt )
        1668           0 :         k = k + 1
        1669             :
        1670             :       case ('Nrm_auto')
        1671           0 :         stats_metadata%iNrm_auto = k
        1672             :
        1673             :         call stat_assign( var_index=stats_metadata%iNrm_auto, var_name="Nrm_auto", &
        1674             :              var_description="Nrm_auto, Nrm autoconversion rate", var_units="(num/kg)/s", &
        1675           0 :              l_silhs=.false., grid_kind=stats_zt )
        1676             :
        1677           0 :         k = k + 1
        1678             :
        1679             :       case ('Nrm_evap_adj')
        1680           0 :         stats_metadata%iNrm_evap_adj = k
        1681             :
        1682             :         call stat_assign( var_index=stats_metadata%iNrm_evap_adj, var_name="Nrm_evap_adj", &
        1683             :              var_description="Nrm_evap_adj, Nrm evaporation adjustment due to over-evaporation", &
        1684           0 :              var_units="(num/kg)/s", l_silhs=.false., grid_kind=stats_zt )
        1685           0 :         k = k + 1
        1686             :
        1687             :       case ('Nrm_src_adj')
        1688           0 :         stats_metadata%iNrm_src_adj = k
        1689             :
        1690             :         call stat_assign( var_index=stats_metadata%iNrm_src_adj, var_name="Nrm_src_adj", &
        1691             :              var_description="Nrm_src_adj, Nrm source term adjustment due to over-depletion", &
        1692           0 :              var_units="(num/kg)/s", l_silhs=.false., grid_kind=stats_zt )
        1693           0 :         k = k + 1
        1694             :
        1695             :       case ('Nrm_cl')
        1696           0 :         stats_metadata%iNrm_cl = k
        1697             :         call stat_assign( var_index=stats_metadata%iNrm_cl, var_name="Nrm_cl", &
        1698             :              var_description="Nrm_cl, Nrm budget: Nrm clipping term", &
        1699           0 :              var_units="(num/kg)/s", l_silhs=.false., grid_kind=stats_zt )
        1700           0 :         k = k + 1
        1701             :
        1702             :       case ('Nrm_mc')
        1703           0 :         stats_metadata%iNrm_mc = k
        1704             :         call stat_assign( var_index=stats_metadata%iNrm_mc, var_name="Nrm_mc", &
        1705             :              var_description="Nrm_mc, Nrm budget: Change in Nrm due to microphysics " &
        1706             :              // "(Not in budget)", &
        1707           0 :              var_units="(num/kg)/s", l_silhs=.false., grid_kind=stats_zt )
        1708           0 :         k = k + 1
        1709             :
        1710             :       case ('rsm_bt')
        1711           0 :         stats_metadata%irsm_bt = k
        1712             :         call stat_assign( var_index=stats_metadata%irsm_bt, var_name="rsm_bt", &
        1713             :              var_description="rsm_bt, rsm budget: rsm time tendency", &
        1714           0 :              var_units="(kg/kg)/s", l_silhs=.false., grid_kind=stats_zt )
        1715             :
        1716           0 :         k = k + 1
        1717             :
        1718             :       case ('rsm_ma')
        1719           0 :         stats_metadata%irsm_ma = k
        1720             :
        1721             :         call stat_assign( var_index=stats_metadata%irsm_ma, var_name="rsm_ma", &
        1722             :              var_description="rsm_ma, rsm budget: rsm vertical mean advection", &
        1723           0 :              var_units="(kg/kg)/s", l_silhs=.false., grid_kind=stats_zt )
        1724           0 :         k = k + 1
        1725             :
        1726             :       case ('rsm_sd')
        1727           0 :         stats_metadata%irsm_sd = k
        1728             :         call stat_assign( var_index=stats_metadata%irsm_sd, var_name="rsm_sd", &
        1729             :              var_description="rsm_sd, rsm budget: rsm sedimentation", &
        1730           0 :              var_units="(kg/kg)/s", l_silhs=.false., grid_kind=stats_zt )
        1731           0 :         k = k + 1
        1732             :
        1733             :       case ('rsm_sd_morr')
        1734           0 :         stats_metadata%irsm_sd_morr = k
        1735             :         call stat_assign( var_index=stats_metadata%irsm_sd_morr, var_name="rsm_sd_morr", &
        1736             :              var_description="rsm_sd_morr, rsm sedimentation when using morrison microphysics &
        1737             :              &(Not in budget, included in rsm_mc)", &
        1738           0 :              var_units="(kg/kg)/s", l_silhs=.true., grid_kind=stats_zt )
        1739           0 :         k = k + 1
        1740             :
        1741             :       case ('rsm_ta')
        1742           0 :         stats_metadata%irsm_ta = k
        1743             :
        1744             :         call stat_assign( var_index=stats_metadata%irsm_ta, var_name="rsm_ta", &
        1745             :              var_description="rsm_ta, rsm budget: rsm turbulent advection", &
        1746           0 :              var_units="(kg/kg)/s", l_silhs=.false., grid_kind=stats_zt )
        1747           0 :         k = k + 1
        1748             :
        1749             :       case ('rsm_mc')
        1750           0 :         stats_metadata%irsm_mc = k
        1751             :
        1752             :         call stat_assign( var_index=stats_metadata%irsm_mc, var_name="rsm_mc", &
        1753             :              var_description="rsm_mc, rsm budget: Change in rsm due to microphysics", &
        1754           0 :              var_units="(kg/kg)/s", l_silhs=.false., grid_kind=stats_zt )
        1755           0 :         k = k + 1
        1756             :
        1757             :       case ('rsm_hf')
        1758           0 :         stats_metadata%irsm_hf = k
        1759             :
        1760             :         call stat_assign( var_index=stats_metadata%irsm_hf, var_name="rsm_hf", &
        1761             :              var_description="rsm_hf, rsm budget: rsm hole-filling term", &
        1762           0 :              var_units="(kg/kg)/s", l_silhs=.false., grid_kind=stats_zt )
        1763           0 :         k = k + 1
        1764             :
        1765             :       case ('rsm_wvhf')
        1766           0 :         stats_metadata%irsm_wvhf = k
        1767             :
        1768             :         call stat_assign( var_index=stats_metadata%irsm_wvhf, var_name="rsm_wvhf", &
        1769             :              var_description="rsm_wvhf, rsm budget: rsm water vapor hole-filling term", &
        1770           0 :              var_units="(kg/kg)/s", l_silhs=.false., grid_kind=stats_zt )
        1771           0 :         k = k + 1
        1772             :
        1773             :       case ('rsm_cl')
        1774           0 :         stats_metadata%irsm_cl = k
        1775             :
        1776             :         call stat_assign( var_index=stats_metadata%irsm_cl, var_name="rsm_cl", &
        1777             :              var_description="rsm_cl, rsm budget: rsm clipping term", &
        1778           0 :              var_units="(kg/kg)/s", l_silhs=.false., grid_kind=stats_zt )
        1779           0 :         k = k + 1
        1780             :
        1781             :       case ('Nsm_bt')
        1782           0 :         stats_metadata%iNsm_bt = k
        1783             :         call stat_assign( var_index=stats_metadata%iNsm_bt, var_name="Nsm_bt", &
        1784             :              var_description="Nsm_bt, Nsm budget", var_units="(num/kg)/s", &
        1785           0 :              l_silhs=.false., grid_kind=stats_zt )
        1786             :
        1787           0 :         k = k + 1
        1788             :
        1789             :       case ('Nsm_ma')
        1790           0 :         stats_metadata%iNsm_ma = k
        1791             :
        1792             :         call stat_assign( var_index=stats_metadata%iNsm_ma, var_name="Nsm_ma", &
        1793             :              var_description="Nsm_ma, Nsm budget: Nsm mean advection", &
        1794           0 :              var_units="(num/kg)/s", l_silhs=.false., grid_kind=stats_zt )
        1795           0 :         k = k + 1
        1796             :
        1797             :       case ('Nsm_sd')
        1798           0 :         stats_metadata%iNsm_sd = k
        1799             :
        1800             :         call stat_assign( var_index=stats_metadata%iNsm_sd, var_name="Nsm_sd", &
        1801             :              var_description="Nsm_sd, Nsm budget: Nsm sedimentation", &
        1802           0 :              var_units="(num/kg)/s", l_silhs=.false., grid_kind=stats_zt )
        1803             :
        1804           0 :         k = k + 1
        1805             :
        1806             :       case ('Nsm_ta')
        1807           0 :         stats_metadata%iNsm_ta = k
        1808             :         call stat_assign( var_index=stats_metadata%iNsm_ta, var_name="Nsm_ta", &
        1809             :              var_description="Nsm_ta, Nsm budget: Nsm turbulent advection", &
        1810           0 :              var_units="(num/kg)/s", l_silhs=.false., grid_kind=stats_zt )
        1811             :
        1812           0 :         k = k + 1
        1813             :
        1814             :       case ('Nsm_mc')
        1815           0 :         stats_metadata%iNsm_mc = k
        1816             :         call stat_assign( var_index=stats_metadata%iNsm_mc, var_name="Nsm_mc", &
        1817             :              var_description="Nsm_mc, Nsm budget: Nsm microphysics", &
        1818           0 :              var_units="(num/kg)/s", l_silhs=.false., grid_kind=stats_zt )
        1819             :
        1820           0 :         k = k + 1
        1821             :
        1822             :       case ('Nsm_cl')
        1823           0 :         stats_metadata%iNsm_cl = k
        1824             :
        1825             :         call stat_assign( var_index=stats_metadata%iNsm_cl, var_name="Nsm_cl", &
        1826             :              var_description="Nsm_cl, Nsm budget: Nsm clipping term", &
        1827           0 :              var_units="(num/kg)/s", l_silhs=.false., grid_kind=stats_zt )
        1828           0 :         k = k + 1
        1829             :
        1830             :       case ('rim_bt')
        1831           0 :         stats_metadata%irim_bt = k
        1832             :
        1833             :         call stat_assign( var_index=stats_metadata%irim_bt, var_name="rim_bt", &
        1834             :              var_description="rim_bt, rim budget: rim time tendency", &
        1835           0 :              var_units="(kg/kg)/s", l_silhs=.false., grid_kind=stats_zt )
        1836             :
        1837           0 :         k = k + 1
        1838             :
        1839             :       case ('rim_ma')
        1840           0 :         stats_metadata%irim_ma = k
        1841             :
        1842             :         call stat_assign( var_index=stats_metadata%irim_ma, var_name="rim_ma", &
        1843             :              var_description="rim_ma, rim budget: rim vertical mean advection", &
        1844           0 :              var_units="(kg/kg)/s", l_silhs=.false., grid_kind=stats_zt )
        1845           0 :         k = k + 1
        1846             :
        1847             :       case ('rim_sd')
        1848           0 :         stats_metadata%irim_sd = k
        1849             :
        1850             :         call stat_assign( var_index=stats_metadata%irim_sd, var_name="rim_sd", &
        1851             :              var_description="rim_sd, rim budget: rim sedimentation", &
        1852           0 :              var_units="(kg/kg)/s", l_silhs=.false., grid_kind=stats_zt )
        1853           0 :         k = k + 1
        1854             :
        1855             :       case ('rim_sd_mg_morr')
        1856           0 :         stats_metadata%irim_sd_mg_morr = k
        1857             :
        1858             :         call stat_assign( var_index=stats_metadata%irim_sd_mg_morr, var_name="rim_sd_mg_morr", &
        1859             :              var_description="rim_sd_mg_morr, rim sedimentation when using morrison or MG " &
        1860             :              // "microphysics" &
        1861             :              // "(not in budget, included in rim_mc)", &
        1862           0 :              var_units="(kg/kg)/s", l_silhs=.true., grid_kind=stats_zt )
        1863           0 :         k = k + 1
        1864             :
        1865             :       case ('rim_ta')
        1866           0 :         stats_metadata%irim_ta = k
        1867             :
        1868             :         call stat_assign( var_index=stats_metadata%irim_ta, var_name="rim_ta", &
        1869             :              var_description="rim_ta, rim budget: rim turbulent advection", &
        1870           0 :              var_units="(kg/kg)/s", l_silhs=.false., grid_kind=stats_zt )
        1871           0 :         k = k + 1
        1872             :
        1873             :       case ('rim_mc')
        1874           0 :         stats_metadata%irim_mc = k
        1875             :
        1876             :         call stat_assign( var_index=stats_metadata%irim_mc, var_name="rim_mc", &
        1877             :              var_description="rim_mc, rim budget: Change in rim due to microphysics", &
        1878           0 :              var_units="(kg/kg)/s", l_silhs=.false., grid_kind=stats_zt )
        1879           0 :         k = k + 1
        1880             :
        1881             :       case ('rim_hf')
        1882           0 :         stats_metadata%irim_hf = k
        1883             :
        1884             :         call stat_assign( var_index=stats_metadata%irim_hf, var_name="rim_hf", &
        1885             :              var_description="rim_hf, rim budget: rim hole-filling term", &
        1886           0 :              var_units="(kg/kg)/s", l_silhs=.false., grid_kind=stats_zt )
        1887           0 :         k = k + 1
        1888             :
        1889             :       case ('rim_wvhf')
        1890           0 :         stats_metadata%irim_wvhf = k
        1891             :
        1892             :         call stat_assign( var_index=stats_metadata%irim_wvhf, var_name="rim_wvhf", &
        1893             :              var_description="rim_wvhf, rim budget: rim water vapor hole-filling term", &
        1894           0 :              var_units="(kg/kg)/s", l_silhs=.false., grid_kind=stats_zt )
        1895           0 :         k = k + 1
        1896             :
        1897             :       case ('rim_cl')
        1898           0 :         stats_metadata%irim_cl = k
        1899             :
        1900             :         call stat_assign( var_index=stats_metadata%irim_cl, var_name="rim_cl", &
        1901             :              var_description="rim_cl, rim budget: rim clipping term", &
        1902           0 :              var_units="(kg/kg)/s", l_silhs=.false., grid_kind=stats_zt )
        1903           0 :         k = k + 1
        1904             :
        1905             :       case ('rgm_bt')
        1906           0 :         stats_metadata%irgm_bt = k
        1907             :
        1908             :         call stat_assign( var_index=stats_metadata%irgm_bt, var_name="rgm_bt", &
        1909             :              var_description="rgm_bt, rgm budget: rgm time tendency", &
        1910           0 :              var_units="(kg/kg)/s", l_silhs=.false., grid_kind=stats_zt )
        1911           0 :         k = k + 1
        1912             :
        1913             :       case ('rgm_ma')
        1914           0 :         stats_metadata%irgm_ma = k
        1915             :
        1916             :         call stat_assign( var_index=stats_metadata%irgm_ma, var_name="rgm_ma", &
        1917             :              var_description="rgm_ma, rgm budget: rgm vertical mean advection", &
        1918           0 :              var_units="(kg/kg)/s", l_silhs=.false., grid_kind=stats_zt )
        1919           0 :         k = k + 1
        1920             :
        1921             :       case ('rgm_sd')
        1922           0 :         stats_metadata%irgm_sd = k
        1923             :
        1924             :         call stat_assign( var_index=stats_metadata%irgm_sd, var_name="rgm_sd", &
        1925             :              var_description="rgm_sd, rgm budget: rgm sedimentation", &
        1926           0 :              var_units="(kg/kg)/s", l_silhs=.false., grid_kind=stats_zt )
        1927           0 :         k = k + 1
        1928             :
        1929             :       case ('rgm_sd_morr')
        1930           0 :         stats_metadata%irgm_sd_morr = k
        1931             :
        1932             :         call stat_assign( var_index=stats_metadata%irgm_sd_morr, var_name="rgm_sd_morr", &
        1933             :              var_description="rgm_sd_morr, rgm sedimentation when using morrison microphysics &
        1934             :              &(not in budget, included in rgm_mc)", &
        1935           0 :              var_units="(kg/kg)/s", l_silhs=.true., grid_kind=stats_zt )
        1936           0 :         k = k + 1
        1937             :
        1938             :       case ('rgm_ta')
        1939           0 :         stats_metadata%irgm_ta = k
        1940             :
        1941             :         call stat_assign( var_index=stats_metadata%irgm_ta, var_name="rgm_ta", &
        1942             :              var_description="rgm_ta, rgm budget: rgm turbulent advection", &
        1943           0 :              var_units="(kg/kg)/s", l_silhs=.false., grid_kind=stats_zt )
        1944           0 :         k = k + 1
        1945             :
        1946             :       case ('rgm_mc')
        1947           0 :         stats_metadata%irgm_mc = k
        1948             :
        1949             :         call stat_assign( var_index=stats_metadata%irgm_mc, var_name="rgm_mc", &
        1950             :              var_description="rgm_mc, rgm budget: Change in rgm due to microphysics", &
        1951           0 :              var_units="(kg/kg)/s", l_silhs=.false., grid_kind=stats_zt )
        1952           0 :         k = k + 1
        1953             :
        1954             :       case ('rgm_hf')
        1955           0 :         stats_metadata%irgm_hf = k
        1956             :
        1957             :         call stat_assign( var_index=stats_metadata%irgm_hf, var_name="rgm_hf", &
        1958             :              var_description="rgm_hf, rgm budget: rgm hole-filling term", &
        1959           0 :              var_units="(kg/kg)/s", l_silhs=.false., grid_kind=stats_zt )
        1960           0 :         k = k + 1
        1961             :
        1962             :       case ('rgm_wvhf')
        1963           0 :         stats_metadata%irgm_wvhf = k
        1964             :
        1965             :         call stat_assign( var_index=stats_metadata%irgm_wvhf, var_name="rgm_wvhf", &
        1966             :              var_description="rgm_wvhf, rgm budget: rgm water vapor hole-filling term", &
        1967           0 :              var_units="(kg/kg)/s", l_silhs=.false., grid_kind=stats_zt )
        1968           0 :         k = k + 1
        1969             :
        1970             :       case ('rgm_cl')
        1971           0 :         stats_metadata%irgm_cl = k
        1972             :
        1973             :         call stat_assign( var_index=stats_metadata%irgm_cl, var_name="rgm_cl", &
        1974             :              var_description="rgm_cl, rgm budget: rgm clipping term", &
        1975           0 :              var_units="(kg/kg)/s", l_silhs=.false., grid_kind=stats_zt )
        1976           0 :         k = k + 1
        1977             :
        1978             :       case ('Ngm_bt')
        1979           0 :         stats_metadata%iNgm_bt = k
        1980             :         call stat_assign( var_index=stats_metadata%iNgm_bt, var_name="Ngm_bt", &
        1981             :              var_description="Ngm_bt, Ngm budget:", var_units="(num/kg)/s", &
        1982           0 :              l_silhs=.false., grid_kind=stats_zt )
        1983             :
        1984           0 :         k = k + 1
        1985             :
        1986             :       case ('Ngm_ma')
        1987           0 :         stats_metadata%iNgm_ma = k
        1988             :
        1989             :         call stat_assign( var_index=stats_metadata%iNgm_ma, var_name="Ngm_ma", &
        1990             :              var_description="Ngm_ma, Ngm budget: Ngm mean advection", &
        1991           0 :              var_units="(num/kg)/s", l_silhs=.false., grid_kind=stats_zt )
        1992           0 :         k = k + 1
        1993             :
        1994             :       case ('Ngm_sd')
        1995           0 :         stats_metadata%iNgm_sd = k
        1996             :
        1997             :         call stat_assign( var_index=stats_metadata%iNgm_sd, var_name="Ngm_sd", &
        1998             :              var_description="Ngm_sd, Ngm budget: Ngm sedimentation", &
        1999           0 :              var_units="(num/kg)/s", l_silhs=.false., grid_kind=stats_zt )
        2000             :
        2001           0 :         k = k + 1
        2002             :
        2003             :       case ('Ngm_ta')
        2004           0 :         stats_metadata%iNgm_ta = k
        2005             :         call stat_assign( var_index=stats_metadata%iNgm_ta, var_name="Ngm_ta", &
        2006             :              var_description="Ngm_ta, Ngm budget: Ngm turbulent advection", &
        2007           0 :              var_units="(num/kg)/s", l_silhs=.false., grid_kind=stats_zt )
        2008             :
        2009           0 :         k = k + 1
        2010             :
        2011             :       case ('Ngm_mc')
        2012           0 :         stats_metadata%iNgm_mc = k
        2013             :
        2014             :         call stat_assign( var_index=stats_metadata%iNgm_mc, var_name="Ngm_mc", &
        2015             :              var_description="Ngm_mc, Ngm budget: Ngm microphysics term", &
        2016           0 :              var_units="(num/kg)/s", l_silhs=.false., grid_kind=stats_zt )
        2017           0 :         k = k + 1
        2018             :
        2019             :       case ('Ngm_cl')
        2020           0 :         stats_metadata%iNgm_cl = k
        2021             :
        2022             :         call stat_assign( var_index=stats_metadata%iNgm_cl, var_name="Ngm_cl", &
        2023             :              var_description="Ngm_cl, Ngm budget: Ngm clipping term", &
        2024           0 :              var_units="(num/kg)/s", l_silhs=.false., grid_kind=stats_zt )
        2025           0 :         k = k + 1
        2026             :
        2027             :       case ('Nim_bt')
        2028           0 :         stats_metadata%iNim_bt = k
        2029             :         call stat_assign( var_index=stats_metadata%iNim_bt, var_name="Nim_bt", &
        2030             :              var_description="Nim_bt, Nim budget", var_units="(num/kg)/s", l_silhs=.false., &
        2031           0 :              grid_kind=stats_zt )
        2032             :
        2033           0 :         k = k + 1
        2034             :
        2035             :       case ('Nim_ma')
        2036           0 :         stats_metadata%iNim_ma = k
        2037             :
        2038             :         call stat_assign( var_index=stats_metadata%iNim_ma, var_name="Nim_ma", &
        2039             :              var_description="Nim_ma, Nim budget: Nim mean advection", &
        2040           0 :              var_units="(num/kg)/s", l_silhs=.false., grid_kind=stats_zt )
        2041           0 :         k = k + 1
        2042             :
        2043             :       case ('Nim_sd')
        2044           0 :         stats_metadata%iNim_sd = k
        2045             :
        2046             :         call stat_assign( var_index=stats_metadata%iNim_sd, var_name="Nim_sd", &
        2047             :              var_description="Nim_sd, Nim budget: Nim sedimentation", &
        2048           0 :              var_units="(num/kg)/s", l_silhs=.false., grid_kind=stats_zt )
        2049             :
        2050           0 :         k = k + 1
        2051             :
        2052             :       case ('Nim_ta')
        2053           0 :         stats_metadata%iNim_ta = k
        2054             :         call stat_assign( var_index=stats_metadata%iNim_ta, var_name="Nim_ta", &
        2055             :              var_description="Nim_ta, Nim budget: Nim turbulent advection", &
        2056           0 :              var_units="(num/kg)/s", l_silhs=.false., grid_kind=stats_zt )
        2057             :
        2058           0 :         k = k + 1
        2059             :
        2060             :       case ('Nim_mc')
        2061           0 :         stats_metadata%iNim_mc = k
        2062             :
        2063             :         call stat_assign( var_index=stats_metadata%iNim_mc, var_name="Nim_mc", &
        2064             :              var_description="Nim_mc, Nim budget: Nim microphysics term", &
        2065           0 :              var_units="(num/kg)/s", l_silhs=.false., grid_kind=stats_zt )
        2066           0 :         k = k + 1
        2067             :
        2068             :       case ('Nim_cl')
        2069           0 :         stats_metadata%iNim_cl = k
        2070             :
        2071             :         call stat_assign( var_index=stats_metadata%iNim_cl, var_name="Nim_cl", &
        2072             :              var_description="Nim_cl, Nim budget: Nim clipping term", &
        2073           0 :              var_units="(num/kg)/s", l_silhs=.false., grid_kind=stats_zt )
        2074           0 :         k = k + 1
        2075             :
        2076             :       case ('Ncm_bt')
        2077           0 :         stats_metadata%iNcm_bt = k
        2078             :         call stat_assign( var_index=stats_metadata%iNcm_bt, var_name="Ncm_bt", &
        2079             :              var_description="Ncm_bt, Ncm budget: Cloud droplet number concentration budget", &
        2080           0 :              var_units="(num/kg)/s", l_silhs=.false., grid_kind=stats_zt )
        2081             :
        2082           0 :         k = k + 1
        2083             :
        2084             :       case ('Ncm_ma')
        2085           0 :         stats_metadata%iNcm_ma = k
        2086             :
        2087             :         call stat_assign( var_index=stats_metadata%iNcm_ma, var_name="Ncm_ma", &
        2088             :              var_description="Ncm_ma, Ncm budget: Ncm vertical mean advection", &
        2089           0 :              var_units="(num/kg)/s", l_silhs=.false., grid_kind=stats_zt )
        2090           0 :         k = k + 1
        2091             :
        2092             :       case ('Ncm_act')
        2093           0 :         stats_metadata%iNcm_act = k
        2094             :
        2095             :         call stat_assign( var_index=stats_metadata%iNcm_act, var_name="Ncm_act", &
        2096             :              var_description="Ncm_act, Ncm budget: Change in Ncm due to activation", &
        2097           0 :              var_units="(num/kg)/s", l_silhs=.false., grid_kind=stats_zt )
        2098             :
        2099           0 :         k = k + 1
        2100             :
        2101             :       case ('Ncm_ta')
        2102           0 :         stats_metadata%iNcm_ta = k
        2103             :         call stat_assign( var_index=stats_metadata%iNcm_ta, var_name="Ncm_ta", &
        2104             :              var_description="Ncm_ta, Ncm budget: Ncm turbulent advection", &
        2105           0 :              var_units="(num/kg)/s", l_silhs=.false., grid_kind=stats_zt )
        2106             :
        2107           0 :         k = k + 1
        2108             :
        2109             :       case ('Ncm_mc')
        2110           0 :         stats_metadata%iNcm_mc = k
        2111             :
        2112             :         call stat_assign( var_index=stats_metadata%iNcm_mc, var_name="Ncm_mc", &
        2113             :              var_description="Ncm_mc, Ncm budget: Change in Ncm due to microphysics", &
        2114           0 :              var_units="(num/kg)/s", l_silhs=.false., grid_kind=stats_zt )
        2115           0 :         k = k + 1
        2116             :
        2117             :       case ('Ncm_cl')
        2118           0 :         stats_metadata%iNcm_cl = k
        2119             :
        2120             :         call stat_assign( var_index=stats_metadata%iNcm_cl, var_name="Ncm_cl", &
        2121             :              var_description="Ncm_cl, Ncm budget: Ncm clipping term", &
        2122           0 :              var_units="(num/kg)/s", l_silhs=.false., grid_kind=stats_zt )
        2123           0 :         k = k + 1
        2124             :
        2125             :       case ('PSMLT')
        2126           0 :         stats_metadata%iPSMLT = k
        2127             :
        2128             :         call stat_assign( var_index=stats_metadata%iPSMLT, var_name="PSMLT", &
        2129             :              var_description="PSMLT, Freezing of rain to form snow, +rsm, -rrm", &
        2130           0 :              var_units="(kg/kg)/s", l_silhs=.true., grid_kind=stats_zt )
        2131           0 :         k = k + 1
        2132             :
        2133             :       case ('EVPMS')
        2134           0 :         stats_metadata%iEVPMS = k
        2135             :
        2136             :         call stat_assign( var_index=stats_metadata%iEVPMS, var_name="EVPMS", &
        2137             :              var_description="EVPMS, Evaporation of melted snow, +rsm, -rvm", &
        2138           0 :              var_units="(kg/kg)/s", l_silhs=.true., grid_kind=stats_zt )
        2139           0 :         k = k + 1
        2140             :
        2141             :       case ('PRACS')
        2142           0 :         stats_metadata%iPRACS = k
        2143             :
        2144             :         call stat_assign( var_index=stats_metadata%iPRACS, var_name="PRACS", &
        2145             :              var_description="PRACS, Collection of rain by snow, +rsm, -rrm", &
        2146           0 :              var_units="(kg/kg)/s", l_silhs=.true., grid_kind=stats_zt )
        2147           0 :         k = k + 1
        2148             :
        2149             :       case ('EVPMG')
        2150           0 :         stats_metadata%iEVPMG = k
        2151             :
        2152             :         call stat_assign( var_index=stats_metadata%iEVPMG, var_name="EVPMG", &
        2153             :              var_description="EVPMG, Evaporation of melted graupel, +rgm, -rvm", &
        2154           0 :              var_units="(kg/kg)/s", l_silhs=.true., grid_kind=stats_zt )
        2155           0 :         k = k + 1
        2156             :
        2157             :       case ('PRACG')
        2158           0 :         stats_metadata%iPRACG = k
        2159             :
        2160             :         call stat_assign( var_index=stats_metadata%iPRACG, var_name="PRACG", &
        2161             :              var_description="PRACG, Negative of collection of rain by graupel, +rrm, -rgm", &
        2162           0 :              var_units="(kg/kg)/s", l_silhs=.true., grid_kind=stats_zt )
        2163           0 :         k = k + 1
        2164             :
        2165             :       case ('PGMLT')
        2166           0 :         stats_metadata%iPGMLT = k
        2167             :
        2168             :         call stat_assign( var_index=stats_metadata%iPGMLT, var_name="PGMLT", &
        2169             :              var_description="PGMLT, Negative of melting of graupel, +rgm, -rrm", &
        2170           0 :              var_units="(kg/kg)/s", l_silhs=.true., grid_kind=stats_zt )
        2171           0 :         k = k + 1
        2172             :
        2173             :       case ('MNUCCC')
        2174           0 :         stats_metadata%iMNUCCC = k
        2175             :
        2176             :         call stat_assign( var_index=stats_metadata%iMNUCCC, var_name="MNUCCC", &
        2177             :              var_description="MNUCCC, Contact freezing of cloud droplets, +rim, -rcm", &
        2178           0 :              var_units="(kg/kg)/s", l_silhs=.true., grid_kind=stats_zt )
        2179           0 :         k = k + 1
        2180             :
        2181             :       case ('PSACWS')
        2182           0 :         stats_metadata%iPSACWS = k
        2183             :
        2184             :         call stat_assign( var_index=stats_metadata%iPSACWS, var_name="PSACWS", &
        2185             :              var_description="PSACWS, Collection of cloud water by snow, +rsm, -rcm", &
        2186           0 :              var_units="(kg/kg)/s", l_silhs=.true., grid_kind=stats_zt )
        2187           0 :         k = k + 1
        2188             :
        2189             :       case ('PSACWI')
        2190           0 :         stats_metadata%iPSACWI = k
        2191             :
        2192             :         call stat_assign( var_index=stats_metadata%iPSACWI, var_name="PSACWI", &
        2193             :              var_description="PSACWI, Collection of cloud water by cloud ice, +rim, -rcm", &
        2194           0 :              var_units="(kg/kg)/s", l_silhs=.true., grid_kind=stats_zt )
        2195           0 :         k = k + 1
        2196             :
        2197             :       case ('QMULTS')
        2198           0 :         stats_metadata%iQMULTS = k
        2199             :
        2200             :         call stat_assign( var_index=stats_metadata%iQMULTS, var_name="QMULTS", &
        2201             :              var_description="QMULTS, Splintering from cloud droplets accreted onto snow, " &
        2202             :              // "+rim, -rcm", &
        2203           0 :              var_units="(kg/kg)/s", l_silhs=.true., grid_kind=stats_zt )
        2204           0 :         k = k + 1
        2205             :
        2206             :       case ('QMULTG')
        2207           0 :         stats_metadata%iQMULTG = k
        2208             :
        2209             :         call stat_assign( var_index=stats_metadata%iQMULTG, var_name="QMULTG", &
        2210             :              var_description="QMULTG, Splintering from droplets accreted onto graupel, " &
        2211             :              // "+rim, -rcm", &
        2212           0 :              var_units="(kg/kg)/s", l_silhs=.true., grid_kind=stats_zt )
        2213           0 :         k = k + 1
        2214             :
        2215             :       case ('PSACWG')
        2216           0 :         stats_metadata%iPSACWG = k
        2217             :
        2218             :         call stat_assign( var_index=stats_metadata%iPSACWG, var_name="PSACWG", &
        2219             :              var_description="PSACWG, Collection of cloud water by graupel, +rgm, -rcm", &
        2220           0 :              var_units="(kg/kg)/s", l_silhs=.true., grid_kind=stats_zt )
        2221           0 :         k = k + 1
        2222             :
        2223             :       case ('PGSACW')
        2224           0 :         stats_metadata%iPGSACW = k
        2225             :
        2226             :         call stat_assign( var_index=stats_metadata%iPGSACW, var_name="PGSACW", &
        2227             :              var_description="PGSACW, Reclassification of rimed snow as graupel, +rgm, -rcm", &
        2228           0 :              var_units="(kg/kg)/s", l_silhs=.true., grid_kind=stats_zt )
        2229           0 :         k = k + 1
        2230             :
        2231             :       case ('PRD')
        2232           0 :         stats_metadata%iPRD = k
        2233             :
        2234             :         call stat_assign( var_index=stats_metadata%iPRD, var_name="PRD", &
        2235             :              var_description="PRD, Depositional growth of cloud ice, +rim, -rvm", &
        2236           0 :              var_units="(kg/kg)/s", l_silhs=.true., grid_kind=stats_zt )
        2237           0 :         k = k + 1
        2238             :
        2239             :       case ('PRCI')
        2240           0 :         stats_metadata%iPRCI = k
        2241             :
        2242             :         call stat_assign( var_index=stats_metadata%iPRCI, var_name="PRCI", &
        2243             :              var_description="PRCI, Autoconversion of cloud ice to snow, +rsm, -rim", &
        2244           0 :              var_units="(kg/kg)/s", l_silhs=.true., grid_kind=stats_zt )
        2245           0 :         k = k + 1
        2246             :
        2247             :       case ('PRAI')
        2248           0 :         stats_metadata%iPRAI = k
        2249             :
        2250             :         call stat_assign( var_index=stats_metadata%iPRAI, var_name="PRAI", &
        2251             :              var_description="PRAI, Collection of cloud ice by snow, +rsm, -rim", &
        2252           0 :              var_units="(kg/kg)/s", l_silhs=.true., grid_kind=stats_zt )
        2253           0 :         k = k + 1
        2254             :
        2255             :       case ('QMULTR')
        2256           0 :         stats_metadata%iQMULTR = k
        2257             :
        2258             :         call stat_assign( var_index=stats_metadata%iQMULTR, var_name="QMULTR", &
        2259             :              var_description="QMULTR, Splintering from rain droplets accreted onto snow, " &
        2260             :              // "+rim, -rrm", &
        2261           0 :              var_units="(kg/kg)/s", l_silhs=.true., grid_kind=stats_zt )
        2262           0 :         k = k + 1
        2263             :
        2264             :       case ('QMULTRG')
        2265           0 :         stats_metadata%iQMULTRG = k
        2266             :
        2267             :         call stat_assign( var_index=stats_metadata%iQMULTRG, var_name="QMULTRG", &
        2268             :              var_description="QMULTRG, Splintering from rain droplets accreted onto graupel, " &
        2269             :              // "+rim, -rrm", &
        2270           0 :              var_units="(kg/kg)/s", l_silhs=.true., grid_kind=stats_zt )
        2271           0 :         k = k + 1
        2272             :
        2273             :       case ('MNUCCD')
        2274           0 :         stats_metadata%iMNUCCD = k
        2275             :
        2276             :         call stat_assign( var_index=stats_metadata%iMNUCCD, var_name="MNUCCD", &
        2277             :              var_description="MNUCCD, Freezing of aerosol, +rim, -rvm", &
        2278           0 :              var_units="(kg/kg)/s", l_silhs=.true., grid_kind=stats_zt )
        2279           0 :         k = k + 1
        2280             :
        2281             :       case ('PRACI')
        2282           0 :         stats_metadata%iPRACI = k
        2283             :
        2284             :         call stat_assign( var_index=stats_metadata%iPRACI, var_name="PRACI", &
        2285             :              var_description="PRACI, Collection of cloud ice by rain, +rgm, -rim", &
        2286           0 :              var_units="(kg/kg)/s", l_silhs=.true., grid_kind=stats_zt )
        2287           0 :         k = k + 1
        2288             :
        2289             :       case ('PRACIS')
        2290           0 :         stats_metadata%iPRACIS = k
        2291             :
        2292             :         call stat_assign( var_index=stats_metadata%iPRACIS, var_name="PRACIS", &
        2293             :              var_description="PRACIS, Collection of cloud ice by rain, +rsm, -rim", &
        2294           0 :              var_units="(kg/kg)/s", l_silhs=.true., grid_kind=stats_zt )
        2295           0 :         k = k + 1
        2296             :
        2297             :       case ('EPRD')
        2298           0 :         stats_metadata%iEPRD = k
        2299             :
        2300             :         call stat_assign( var_index=stats_metadata%iEPRD, var_name="EPRD", &
        2301             :              var_description="EPRD, Negative of sublimation of cloud ice, +rim, -rvm", &
        2302           0 :              var_units="(kg/kg)/s", l_silhs=.true., grid_kind=stats_zt )
        2303           0 :         k = k + 1
        2304             :
        2305             :       case ('MNUCCR')
        2306           0 :         stats_metadata%iMNUCCR = k
        2307             :
        2308             :         call stat_assign( var_index=stats_metadata%iMNUCCR, var_name="MNUCCR", &
        2309             :              var_description="MNUCCR, Contact freezing of rain droplets, +rgm, -rrm", &
        2310           0 :              var_units="(kg/kg)/s", l_silhs=.true., grid_kind=stats_zt )
        2311           0 :         k = k + 1
        2312             :
        2313             :       case ('PIACR')
        2314           0 :         stats_metadata%iPIACR = k
        2315             :
        2316             :         call stat_assign( var_index=stats_metadata%iPIACR, var_name="PIACR", &
        2317             :              var_description="PIACR, Collection of cloud ice by rain, +rgm, -rrm", &
        2318           0 :              var_units="(kg/kg)/s", l_silhs=.true., grid_kind=stats_zt )
        2319           0 :         k = k + 1
        2320             :
        2321             :       case ('PIACRS')
        2322           0 :         stats_metadata%iPIACRS = k
        2323             :
        2324             :         call stat_assign( var_index=stats_metadata%iPIACRS, var_name="PIACRS", &
        2325             :              var_description="PIACRS, Collection of cloud ice by rain, +rsm, -rrm", &
        2326           0 :              var_units="(kg/kg)/s", l_silhs=.true., grid_kind=stats_zt )
        2327           0 :         k = k + 1
        2328             :
        2329             :       case ('PGRACS')
        2330           0 :         stats_metadata%iPGRACS = k
        2331             :
        2332             :         call stat_assign( var_index=stats_metadata%iPGRACS, var_name="PGRACS", &
        2333             :              var_description="PGRACS, Collection of rain by snow, +rgm, -rrm", &
        2334           0 :              var_units="(kg/kg)/s", l_silhs=.true., grid_kind=stats_zt )
        2335           0 :         k = k + 1
        2336             :
        2337             :       case ('PRDS')
        2338           0 :         stats_metadata%iPRDS = k
        2339             :
        2340             :         call stat_assign( var_index=stats_metadata%iPRDS, var_name="PRDS", &
        2341             :              var_description="PRDS, Depositional growth of snow, +rsm, -rvm", &
        2342           0 :              var_units="(kg/kg)/s", l_silhs=.true., grid_kind=stats_zt )
        2343           0 :         k = k + 1
        2344             :
        2345             :       case ('EPRDS')
        2346           0 :         stats_metadata%iEPRDS = k
        2347             :
        2348             :         call stat_assign( var_index=stats_metadata%iEPRDS, var_name="EPRDS", &
        2349             :              var_description="EPRDS, Negative of sublimation of snow, +rsm, -rvm", &
        2350           0 :              var_units="(kg/kg)/s", l_silhs=.true., grid_kind=stats_zt )
        2351           0 :         k = k + 1
        2352             :
        2353             :       case ('PSACR')
        2354           0 :         stats_metadata%iPSACR = k
        2355             :
        2356             :         call stat_assign( var_index=stats_metadata%iPSACR, var_name="PSACR", &
        2357             :              var_description="PSACR, Collection of snow by rain, +rgm, -rsm", &
        2358           0 :              var_units="(kg/kg)/s", l_silhs=.true., grid_kind=stats_zt )
        2359           0 :         k = k + 1
        2360             :
        2361             :       case ('PRDG')
        2362           0 :         stats_metadata%iPRDG = k
        2363             :
        2364             :         call stat_assign( var_index=stats_metadata%iPRDG, var_name="PRDG", &
        2365             :              var_description="PRDG, Depositional growth of graupel, +rgm, -rvm", &
        2366           0 :              var_units="(kg/kg)/s", l_silhs=.true., grid_kind=stats_zt )
        2367           0 :         k = k + 1
        2368             :
        2369             :       case ('EPRDG')
        2370           0 :         stats_metadata%iEPRDG = k
        2371             :
        2372             :         call stat_assign( var_index=stats_metadata%iEPRDG, var_name="EPRDG", &
        2373             :              var_description="EPRDG, Negative of sublimation of graupel, +rgm, -rvm", &
        2374           0 :              var_units="(kg/kg)/s", l_silhs=.true., grid_kind=stats_zt )
        2375           0 :         k = k + 1
        2376             :
        2377             :       case ('NGSTEN')
        2378           0 :         stats_metadata%iNGSTEN = k
        2379             :
        2380             :         call stat_assign( var_index=stats_metadata%iNGSTEN, var_name="NGSTEN", &
        2381             :              var_description="NGSTEN, Graupel sedimentation tendency", var_units="(#/kg/s)", &
        2382           0 :              l_silhs=.true., grid_kind=stats_zt )
        2383           0 :         k = k + 1
        2384             :
        2385             :       case ('NRSTEN')
        2386           0 :         stats_metadata%iNRSTEN = k
        2387             :
        2388             :         call stat_assign( var_index=stats_metadata%iNRSTEN, var_name="NRSTEN", &
        2389             :              var_description="NRSTEN, Rain sedimentation tendency", var_units="(#/kg/s)", &
        2390           0 :              l_silhs=.true., grid_kind=stats_zt )
        2391           0 :         k = k + 1
        2392             :
        2393             :       case ('NISTEN')
        2394           0 :         stats_metadata%iNISTEN = k
        2395             :
        2396             :         call stat_assign( var_index=stats_metadata%iNISTEN, var_name="NISTEN", &
        2397             :              var_description="NISTEN, Cloud ice sedimentation tendency", var_units="(#/kg/s)", &
        2398           0 :              l_silhs=.true., grid_kind=stats_zt )
        2399           0 :         k = k + 1
        2400             :
        2401             :       case ('NSSTEN')
        2402           0 :         stats_metadata%iNSSTEN = k
        2403             :
        2404             :         call stat_assign( var_index=stats_metadata%iNSSTEN, var_name="NSSTEN", &
        2405             :              var_description="NSSTEN, Snow sedimentation tendency", var_units="(#/kg/s)", &
        2406           0 :              l_silhs=.true., grid_kind=stats_zt )
        2407           0 :         k = k + 1
        2408             :
        2409             :       case ('NCSTEN')
        2410           0 :         stats_metadata%iNCSTEN = k
        2411             :
        2412             :         call stat_assign( var_index=stats_metadata%iNCSTEN, var_name="NCSTEN", &
        2413             :              var_description="NCSTEN, Cloud water sedimentation tendency", &
        2414           0 :              var_units="(#/kg/s)", l_silhs=.true., grid_kind=stats_zt )
        2415           0 :         k = k + 1
        2416             :
        2417             :       case ('NPRC1')
        2418           0 :         stats_metadata%iNPRC1 = k
        2419             :
        2420             :         call stat_assign( var_index=stats_metadata%iNPRC1, var_name="NPRC1", &
        2421             :              var_description="NPRC1, Change in Nrm due to autoconversion of droplets, +Nrm", &
        2422           0 :              var_units="(#/kg/s)", l_silhs=.true., grid_kind=stats_zt )
        2423           0 :         k = k + 1
        2424             :
        2425             :       case ('NRAGG')
        2426           0 :         stats_metadata%iNRAGG = k
        2427             :
        2428             :         call stat_assign( var_index=stats_metadata%iNRAGG, var_name="NRAGG", &
        2429             :              var_description="NRAGG, Change in Nrm due to self-collection of raindrops, +Nrm", &
        2430           0 :              var_units="(#/kg/s)", l_silhs=.true., grid_kind=stats_zt )
        2431           0 :         k = k + 1
        2432             :
        2433             :       case ('NPRACG')
        2434           0 :         stats_metadata%iNPRACG = k
        2435             :
        2436             :         call stat_assign( var_index=stats_metadata%iNPRACG, var_name="NPRACG", &
        2437             :              var_description="NPRACG, Collection of rainwater by graupel, -Nrm", &
        2438           0 :              var_units="(#/kg/s)", l_silhs=.true., grid_kind=stats_zt )
        2439           0 :         k = k + 1
        2440             :
        2441             :       case ('NSUBR')
        2442           0 :         stats_metadata%iNSUBR = k
        2443             :
        2444             :         call stat_assign( var_index=stats_metadata%iNSUBR, var_name="NSUBR", &
        2445             :              var_description="NSUBR, Loss of Nrm by evaporation, +Nrm", var_units="(#/kg/s)", &
        2446           0 :              l_silhs=.true., grid_kind=stats_zt )
        2447           0 :         k = k + 1
        2448             :
        2449             :       case ('NSMLTR')
        2450           0 :         stats_metadata%iNSMLTR = k
        2451             :
        2452             :         call stat_assign( var_index=stats_metadata%iNSMLTR, var_name="NSMLTR", &
        2453             :              var_description="NSMLTR, Melting of snow to form rain, -Nrm", &
        2454           0 :              var_units="(#/kg/s)", l_silhs=.true., grid_kind=stats_zt )
        2455           0 :         k = k + 1
        2456             :
        2457             :       case ('NGMLTR')
        2458           0 :         stats_metadata%iNGMLTR = k
        2459             :
        2460             :         call stat_assign( var_index=stats_metadata%iNGMLTR, var_name="NGMLTR", &
        2461             :              var_description="NGMLTR, Melting of graupel to form rain, -Nrm", &
        2462           0 :              var_units="(#/kg/s)", l_silhs=.true., grid_kind=stats_zt )
        2463           0 :         k = k + 1
        2464             :
        2465             :       case ('NPRACS')
        2466           0 :         stats_metadata%iNPRACS = k
        2467             :
        2468             :         call stat_assign( var_index=stats_metadata%iNPRACS, var_name="NPRACS", &
        2469             :              var_description="NPRACS, Collection of rainwater by snow, -Nrm", &
        2470           0 :              var_units="(#/kg/s)", l_silhs=.true., grid_kind=stats_zt )
        2471           0 :         k = k + 1
        2472             :
        2473             :       case ('NNUCCR')
        2474           0 :         stats_metadata%iNNUCCR = k
        2475             :
        2476             :         call stat_assign( var_index=stats_metadata%iNNUCCR, var_name="NNUCCR", &
        2477             :              var_description="NNUCCR, Contact freezing of rain, +Ngm, -Nrm", &
        2478           0 :              var_units="(#/kg/s)", l_silhs=.true., grid_kind=stats_zt )
        2479           0 :         k = k + 1
        2480             :
        2481             :       case ('NIACR')
        2482           0 :         stats_metadata%iNIACR = k
        2483             :
        2484             :         call stat_assign( var_index=stats_metadata%iNIACR, var_name="NIACR", &
        2485             :              var_description="NIACR, Collection of cloud ice by rain, +Ngm, -Nrm, -Nim", &
        2486           0 :              var_units="(#/kg/s)", l_silhs=.true., grid_kind=stats_zt )
        2487           0 :         k = k + 1
        2488             :
        2489             :       case ('NIACRS')
        2490           0 :         stats_metadata%iNIACRS = k
        2491             :
        2492             :         call stat_assign( var_index=stats_metadata%iNIACRS, var_name="NIACRS", &
        2493             :              var_description="NIACRS, Collection of cloud ice by rain, +Nsm, -Nrm, -Nim", &
        2494           0 :              var_units="(#/kg/s)", l_silhs=.true., grid_kind=stats_zt )
        2495           0 :         k = k + 1
        2496             :
        2497             :       case ('NGRACS')
        2498           0 :         stats_metadata%iNGRACS = k
        2499             :
        2500             :         call stat_assign( var_index=stats_metadata%iNGRACS, var_name="NGRACS", &
        2501             :              var_description="NGRACS, Collection of rain by snow, +Ngm, -Nrm, -Nsm", &
        2502           0 :              var_units="(#/kg/s)", l_silhs=.true., grid_kind=stats_zt )
        2503           0 :         k = k + 1
        2504             :
        2505             :       case ('NSMLTS')
        2506           0 :         stats_metadata%iNSMLTS= k
        2507             :
        2508             :         call stat_assign( var_index=stats_metadata%iNSMLTS, var_name="NSMLTS", &
        2509             :              var_description="NSMLTS, Melting  of snow, +Nsm", var_units="(#/kg/s)", &
        2510           0 :              l_silhs=.true., grid_kind=stats_zt )
        2511           0 :         k = k + 1
        2512             :
        2513             :       case ('NSAGG')
        2514           0 :         stats_metadata%iNSAGG= k
        2515             :
        2516             :         call stat_assign( var_index=stats_metadata%iNSAGG, var_name="NSAGG", &
        2517             :              var_description="NSAGG, Self collection of snow, +Nsm", var_units="(#/kg/s)", &
        2518           0 :              l_silhs=.true., grid_kind=stats_zt )
        2519             :
        2520           0 :         k = k + 1
        2521             :
        2522             :       case ('NPRCI')
        2523           0 :         stats_metadata%iNPRCI= k
        2524             :
        2525             :         call stat_assign( var_index=stats_metadata%iNPRCI, var_name="NPRCI", &
        2526             :              var_description="NPRCI, Autoconversion of cloud ice to snow, -Nim, +Nsm", &
        2527           0 :              var_units="(#/kg/s)", l_silhs=.true., grid_kind=stats_zt )
        2528           0 :         k = k + 1
        2529             :
        2530             :       case ('NSCNG')
        2531           0 :         stats_metadata%iNSCNG= k
        2532             :
        2533             :         call stat_assign( var_index=stats_metadata%iNSCNG, var_name="NSCNG", &
        2534             :              var_description="NSCNG, Conversion of snow to graupel, +Ngm, -Nsm", &
        2535           0 :              var_units="(#/kg/s)", l_silhs=.true., grid_kind=stats_zt )
        2536           0 :         k = k + 1
        2537             :
        2538             :       case ('NSUBS')
        2539           0 :         stats_metadata%iNSUBS= k
        2540             :
        2541             :         call stat_assign( var_index=stats_metadata%iNSUBS, var_name="NSUBS", &
        2542             :              var_description="NSUBS, Loss of snow due to sublimation, +Nsm", &
        2543           0 :              var_units="(#/kg/s)", l_silhs=.true., grid_kind=stats_zt )
        2544           0 :         k = k + 1
        2545             :
        2546             :       case ('PRC')
        2547           0 :         stats_metadata%iPRC= k
        2548             :
        2549             :         call stat_assign( var_index=stats_metadata%iPRC, var_name="PRC", &
        2550             :              var_description="PRC, Autoconversion +rrm -rcm", var_units="(kg/kg/s)", &
        2551           0 :              l_silhs=.true., grid_kind=stats_zt )
        2552           0 :         k = k + 1
        2553             :
        2554             :       case ('PRA')
        2555           0 :         stats_metadata%iPRA= k
        2556             :
        2557             :         call stat_assign( var_index=stats_metadata%iPRA, var_name="PRA", &
        2558             :              var_description="PRA, Accretion +rrm -rcm", var_units="(kg/kg/s)", &
        2559           0 :              l_silhs=.true., grid_kind=stats_zt )
        2560           0 :         k = k + 1
        2561             :
        2562             :       case ('PRE')
        2563           0 :         stats_metadata%iPRE= k
        2564             :
        2565             :         call stat_assign( var_index=stats_metadata%iPRE, var_name="PRE", &
        2566             :              var_description="PRE, Evaporation of rain -rrm", var_units="(kg/kg/s)", &
        2567           0 :              l_silhs=.true., grid_kind=stats_zt )
        2568           0 :         k = k + 1
        2569             :
        2570             :       case ('PCC')
        2571           0 :         stats_metadata%iPCC= k
        2572             :
        2573             :         call stat_assign( var_index=stats_metadata%iPCC, var_name="PCC", &
        2574             :              var_description="PCC, Satuation adjustment -rvm +rcm", var_units="(kg/kg/s)", &
        2575           0 :              l_silhs=.true., grid_kind=stats_zt )
        2576           0 :         k = k + 1
        2577             :
        2578             :       case ('NNUCCC')
        2579           0 :         stats_metadata%iNNUCCC= k
        2580             :
        2581             :         call stat_assign( var_index=stats_metadata%iNNUCCC, var_name="NNUCCC", &
        2582             :              var_description="NNUCCC, Contact freezing of drops, -Ncm + Nim", &
        2583           0 :              var_units="(#/kg/s)", l_silhs=.true., grid_kind=stats_zt )
        2584           0 :         k = k + 1
        2585             :
        2586             :       case ('NPSACWS')
        2587           0 :         stats_metadata%iNPSACWS= k
        2588             :
        2589             :         call stat_assign( var_index=stats_metadata%iNPSACWS, var_name="NPSACWS", &
        2590             :              var_description="NPSACWS, Droplet accretion by snow, -Ncm", var_units="(#/kg/s)", &
        2591           0 :              l_silhs=.true., grid_kind=stats_zt )
        2592           0 :         k = k + 1
        2593             :
        2594             :       case ('NPRA')
        2595           0 :         stats_metadata%iNPRA= k
        2596             :
        2597             :         call stat_assign( var_index=stats_metadata%iNPRA, var_name="NPRA", &
        2598             :              var_description="NPRA, Droplet accretion by rain, -Ncm", var_units="(#/kg/s)", &
        2599           0 :              l_silhs=.true., grid_kind=stats_zt )
        2600           0 :         k = k + 1
        2601             :
        2602             :       case ('NPRC')
        2603           0 :         stats_metadata%iNPRC= k
        2604             :
        2605             :         call stat_assign( var_index=stats_metadata%iNPRC, var_name="NPRC", &
        2606             :              var_description="NPRC, Autoconversion of cloud drops, -Ncm", &
        2607           0 :              var_units="(#/kg/s)", l_silhs=.true., grid_kind=stats_zt )
        2608           0 :         k = k + 1
        2609             :
        2610             :       case ('NPSACWI')
        2611           0 :         stats_metadata%iNPSACWI= k
        2612             :
        2613             :         call stat_assign( var_index=stats_metadata%iNPSACWI, var_name="NPSACWI", &
        2614             :              var_description="NPSACWI, Droplet accretion by cloud ice, -Ncm", &
        2615           0 :              var_units="(#/kg/s)", l_silhs=.true., grid_kind=stats_zt )
        2616           0 :         k = k + 1
        2617             :
        2618             :       case ('NPSACWG')
        2619           0 :         stats_metadata%iNPSACWG= k
        2620             :
        2621             :         call stat_assign( var_index=stats_metadata%iNPSACWG, var_name="NPSACWG", &
        2622             :              var_description="NPSACWG, Collection of cloud droplets by graupel, -Ncm", &
        2623           0 :              var_units="(#/kg/s)", l_silhs=.true., grid_kind=stats_zt )
        2624           0 :         k = k + 1
        2625             :
        2626             :       case ('NPRAI')
        2627           0 :         stats_metadata%iNPRAI= k
        2628             :
        2629             :         call stat_assign( var_index=stats_metadata%iNPRAI, var_name="NPRAI", &
        2630             :              var_description="NPRAI, Accretion of cloud ice by snow, -Nim", &
        2631           0 :              var_units="(#/kg/s)", l_silhs=.true., grid_kind=stats_zt )
        2632           0 :         k = k + 1
        2633             :
        2634             :       case ('NMULTS')
        2635           0 :         stats_metadata%iNMULTS= k
        2636             :
        2637             :         call stat_assign( var_index=stats_metadata%iNMULTS, var_name="NMULTS", &
        2638             :              var_description="NMULTS, Ice multiplication due to riming of cloud droplets " &
        2639             :              // "by snow, +Nim", &
        2640           0 :              var_units="(#/kg/s)", l_silhs=.true., grid_kind=stats_zt )
        2641           0 :         k = k + 1
        2642             :
        2643             :       case ('NMULTG')
        2644           0 :         stats_metadata%iNMULTG= k
        2645             :
        2646             :         call stat_assign( var_index=stats_metadata%iNMULTG, var_name="NMULTG", &
        2647             :              var_description="NMULTG, Ice multiplication due to accretion of droplets " &
        2648             :              // "by graupel, +Nim", &
        2649           0 :              var_units="(#/kg/s)", l_silhs=.true., grid_kind=stats_zt )
        2650           0 :         k = k + 1
        2651             :
        2652             :       case ('NMULTR')
        2653           0 :         stats_metadata%iNMULTR= k
        2654             :
        2655             :         call stat_assign( var_index=stats_metadata%iNMULTR, var_name="NMULTR", &
        2656             :              var_description="Ice multiplication due to riming of rain by snow, +Nim", &
        2657           0 :              var_units="(#/kg/s)", l_silhs=.true., grid_kind=stats_zt )
        2658           0 :         k = k + 1
        2659             :
        2660             :       case ('NMULTRG')
        2661           0 :         stats_metadata%iNMULTRG= k
        2662             :
        2663             :         call stat_assign( var_index=stats_metadata%iNMULTRG, var_name="NMULTRG", &
        2664             :              var_description="NMULTR, Ice multiplication due to accretion of rain by " &
        2665             :              // "graupel, +Nim", &
        2666           0 :              var_units="(#/kg/s)", l_silhs=.true., grid_kind=stats_zt )
        2667           0 :         k = k + 1
        2668             :
        2669             :       case ('NNUCCD')
        2670           0 :         stats_metadata%iNNUCCD= k
        2671             :
        2672             :         call stat_assign( var_index=stats_metadata%iNNUCCD, var_name="NNUCCD", &
        2673             :              var_description="NNUCCD, Primary ice nucleation, freezing of aerosol, +Nim", &
        2674           0 :              var_units="(#/kg/s)", l_silhs=.true., grid_kind=stats_zt )
        2675           0 :         k = k + 1
        2676             :
        2677             :       case ('NSUBI')
        2678           0 :         stats_metadata%iNSUBI= k
        2679             :
        2680             :         call stat_assign( var_index=stats_metadata%iNSUBI, var_name="NSUBI", &
        2681             :              var_description="NSUBI, Loss of ice due to sublimation, -Nim", &
        2682           0 :              var_units="(#/kg/s)", l_silhs=.true., grid_kind=stats_zt )
        2683           0 :         k = k + 1
        2684             :
        2685             :       case ('NGMLTG')
        2686           0 :         stats_metadata%iNGMLTG= k
        2687             :
        2688             :         call stat_assign( var_index=stats_metadata%iNGMLTG, var_name="NGMLTG", &
        2689             :              var_description="NGMLTG, Loss of graupel due to melting, -Ngm", &
        2690           0 :              var_units="(#/kg/s)", l_silhs=.true., grid_kind=stats_zt )
        2691           0 :         k = k + 1
        2692             :
        2693             :       case ('NSUBG')
        2694           0 :         stats_metadata%iNSUBG= k
        2695             :
        2696             :         call stat_assign( var_index=stats_metadata%iNSUBG, var_name="NSUBG", &
        2697             :              var_description="NSUBG, Loss of graupel due to sublimation, -Ngm", &
        2698           0 :              var_units="(#/kg/s)", l_silhs=.true., grid_kind=stats_zt )
        2699           0 :         k = k + 1
        2700             :
        2701             :       case ('NACT')
        2702           0 :         stats_metadata%iNACT= k
        2703             :
        2704             :         call stat_assign( var_index=stats_metadata%iNACT, var_name="NACT", &
        2705             :              var_description="NACT, Cloud drop formation by aerosol activation, +Ncm", &
        2706           0 :              var_units="(#/kg/s)", l_silhs=.true., grid_kind=stats_zt )
        2707           0 :         k = k + 1
        2708             :
        2709             :       case ('SIZEFIX_NR')
        2710           0 :         stats_metadata%iSIZEFIX_NR= k
        2711             :
        2712             :         call stat_assign( var_index=stats_metadata%iSIZEFIX_NR, var_name="SIZEFIX_NR", &
        2713             :              var_description="SIZEFIX_NR, Adjust rain # conc. for large/small drops, +Nrm", &
        2714           0 :              var_units="(#/kg/s)", l_silhs=.true., grid_kind=stats_zt )
        2715           0 :         k = k + 1
        2716             :
        2717             :       case ('SIZEFIX_NC')
        2718           0 :         stats_metadata%iSIZEFIX_NC= k
        2719             :
        2720             :         call stat_assign( var_index=stats_metadata%iSIZEFIX_NC, var_name="SIZEFIX_NC", &
        2721             :              var_description="SIZEFIX_NC, Adjust cloud # conc. for large/small drops, +Ncm", &
        2722           0 :              var_units="(#/kg/s)", l_silhs=.true., grid_kind=stats_zt )
        2723           0 :         k = k + 1
        2724             :
        2725             :       case ('SIZEFIX_NI')
        2726           0 :         stats_metadata%iSIZEFIX_NI= k
        2727             :
        2728             :         call stat_assign( var_index=stats_metadata%iSIZEFIX_NI, var_name="SIZEFIX_NI", &
        2729             :              var_description="SIZEFIX_NI, Adjust ice # conc. for large/small drops, +Nim", &
        2730           0 :              var_units="(#/kg/s)", l_silhs=.true., grid_kind=stats_zt )
        2731           0 :         k = k + 1
        2732             :
        2733             :       case ('SIZEFIX_NS')
        2734           0 :         stats_metadata%iSIZEFIX_NS= k
        2735             :
        2736             :         call stat_assign( var_index=stats_metadata%iSIZEFIX_NS, var_name="SIZEFIX_NS", &
        2737             :              var_description="SIZEFIX_NS, Adjust snow # conc. for large/small drops, +Nsm", &
        2738           0 :              var_units="(#/kg/s)", l_silhs=.true., grid_kind=stats_zt )
        2739           0 :         k = k + 1
        2740             :
        2741             :       case ('SIZEFIX_NG')
        2742           0 :         stats_metadata%iSIZEFIX_NG= k
        2743             :
        2744             :         call stat_assign( var_index=stats_metadata%iSIZEFIX_NG, var_name="SIZEFIX_NG", &
        2745             :              var_description="SIZEFIX_NG, Adjust graupel # conc. for large/small drops,+Ngm",&
        2746           0 :              var_units="(#/kg/s)", l_silhs=.true., grid_kind=stats_zt )
        2747           0 :         k = k + 1
        2748             :
        2749             :       case ('NEGFIX_NR')
        2750           0 :         stats_metadata%iNEGFIX_NR= k
        2751             :
        2752             :         call stat_assign( var_index=stats_metadata%iNEGFIX_NR, var_name="NEGFIX_NR", &
        2753             :              var_description="NEGFIX_NR, Removal of negative rain drop number conc., -Nrm", &
        2754           0 :              var_units="(#/kg/s)", l_silhs=.true., grid_kind=stats_zt )
        2755           0 :         k = k + 1
        2756             :
        2757             :       case ('NEGFIX_NC')
        2758           0 :         stats_metadata%iNEGFIX_NC= k
        2759             :
        2760             :         call stat_assign( var_index=stats_metadata%iNEGFIX_NC, var_name="NEGFIX_NC", &
        2761             :              var_description="NEGFIX_NC, Removal of negative cloud drop number conc., -Ncm", &
        2762           0 :              var_units="(#/kg/s)", l_silhs=.true., grid_kind=stats_zt )
        2763           0 :         k = k + 1
        2764             :
        2765             :       case ('NEGFIX_NI')
        2766           0 :         stats_metadata%iNEGFIX_NI= k
        2767             :
        2768             :         call stat_assign( var_index=stats_metadata%iNEGFIX_NI, var_name="NEGFIX_NI", &
        2769             :              var_description="NEGFIX_NI, Removal of negative ice number conc., -Nim", &
        2770           0 :              var_units="(#/kg/s)", l_silhs=.true., grid_kind=stats_zt )
        2771           0 :         k = k + 1
        2772             :
        2773             :       case ('NEGFIX_NS')
        2774           0 :         stats_metadata%iNEGFIX_NS= k
        2775             :
        2776             :         call stat_assign( var_index=stats_metadata%iNEGFIX_NS, var_name="NEGFIX_NS", &
        2777             :              var_description="NEGFIX_NS, Removal of negative snow number conc, -Nsm", &
        2778           0 :              var_units="(#/kg/s)", l_silhs=.true., grid_kind=stats_zt )
        2779           0 :         k = k + 1
        2780             :
        2781             :       case ('NEGFIX_NG')
        2782           0 :         stats_metadata%iNEGFIX_NG= k
        2783             :
        2784             :         call stat_assign( var_index=stats_metadata%iNEGFIX_NG, var_name="NEGFIX_NG", &
        2785             :              var_description="NEGFIX_NG, Removal of negative graupel number conc., -Ngm", &
        2786           0 :              var_units="(#/kg/s)", l_silhs=.true., grid_kind=stats_zt )
        2787           0 :         k = k + 1
        2788             :
        2789             :       case ('NIM_MORR_CL')
        2790           0 :         stats_metadata%iNIM_MORR_CL= k
        2791             :
        2792             :         call stat_assign( var_index=stats_metadata%iNIM_MORR_CL, var_name="NIM_MORR_CL", &
        2793             :              var_description="NIM_MORR_CL, Clipping of large ice concentrations, -Nim", &
        2794           0 :              var_units="(#/kg/s)", l_silhs=.true., grid_kind=stats_zt )
        2795           0 :         k = k + 1
        2796             :
        2797             :       case ('QC_INST')
        2798           0 :         stats_metadata%iQC_INST= k
        2799             :
        2800             :         call stat_assign( var_index=stats_metadata%iQC_INST, var_name="QC_INST", &
        2801             :              var_description="QC_INST, Change in mixing ratio due to instantaneous " &
        2802             :              // "processes +rcm", &
        2803           0 :              var_units="(kg/kg/s)", l_silhs=.true., grid_kind=stats_zt )
        2804           0 :         k = k + 1
        2805             :
        2806             :       case ('QR_INST')
        2807           0 :         stats_metadata%iQR_INST= k
        2808             :
        2809             :         call stat_assign( var_index=stats_metadata%iQR_INST, var_name="QR_INST", &
        2810             :              var_description="QR_INST, Change in mixing ratio from instantaneous processes, +rrm",&
        2811           0 :              var_units="(kg/kg/s)", l_silhs=.true., grid_kind=stats_zt )
        2812           0 :         k = k + 1
        2813             :
        2814             :       case ('QI_INST')
        2815           0 :         stats_metadata%iQI_INST= k
        2816             :
        2817             :         call stat_assign( var_index=stats_metadata%iQI_INST, var_name="QI_INST", &
        2818             :              var_description="QI_INST, Change in mixing ratio from instantaneous processes +rim",&
        2819           0 :              var_units="(kg/kg/s)", l_silhs=.true., grid_kind=stats_zt )
        2820           0 :         k = k + 1
        2821             :
        2822             :       case ('QS_INST')
        2823           0 :         stats_metadata%iQS_INST= k
        2824             :
        2825             :         call stat_assign( var_index=stats_metadata%iQS_INST, var_name="QS_INST", &
        2826             :              var_description="QS_INST, Change in mixing ratio from instantaneous processes +rsm",&
        2827           0 :              var_units="(kg/kg/s)", l_silhs=.true., grid_kind=stats_zt )
        2828           0 :         k = k + 1
        2829             :
        2830             :       case ('QG_INST')
        2831           0 :         stats_metadata%iQG_INST= k
        2832             :
        2833             :         call stat_assign( var_index=stats_metadata%iQG_INST, var_name="QG_INST", &
        2834             :              var_description="QG_INST, Change in mixing ratio from instantaneous processes +rgm",&
        2835           0 :              var_units="(kg/kg/s)", l_silhs=.true., grid_kind=stats_zt )
        2836           0 :         k = k + 1
        2837             :
        2838             :       case ('NC_INST')
        2839           0 :         stats_metadata%iNC_INST= k
        2840             :
        2841             :         call stat_assign( var_index=stats_metadata%iNC_INST, var_name="NC_INST", &
        2842             :              var_description="NC_INST, Change in # conc. from instantaneous processes +Ncm", &
        2843           0 :              var_units="(#/kg/s)", l_silhs=.true., grid_kind=stats_zt )
        2844           0 :         k = k + 1
        2845             :
        2846             :       case ('NR_INST')
        2847           0 :         stats_metadata%iNR_INST= k
        2848             :
        2849             :         call stat_assign( var_index=stats_metadata%iNR_INST, var_name="NR_INST", &
        2850             :              var_description="NR_INST, Change in # conc. from instantaneous processes +Nrm", &
        2851           0 :              var_units="(#/kg/s)", l_silhs=.true., grid_kind=stats_zt )
        2852           0 :         k = k + 1
        2853             :
        2854             :       case ('NI_INST')
        2855           0 :         stats_metadata%iNI_INST= k
        2856             :
        2857             :         call stat_assign( var_index=stats_metadata%iNI_INST, var_name="NI_INST", &
        2858             :              var_description="NI_INST, Change in # conc. from instantaneous processes +Nim", &
        2859           0 :              var_units="(#/kg/s)", l_silhs=.true., grid_kind=stats_zt )
        2860           0 :         k = k + 1
        2861             :
        2862             :       case ('NS_INST')
        2863           0 :         stats_metadata%iNS_INST= k
        2864             :
        2865             :         call stat_assign( var_index=stats_metadata%iNS_INST, var_name="NS_INST", &
        2866             :              var_description="NS_INST, Change in # conc. from instantaneous processes +Nsm", &
        2867           0 :              var_units="(#/kg/s)", l_silhs=.true., grid_kind=stats_zt )
        2868           0 :         k = k + 1
        2869             :
        2870             :       case ('NG_INST')
        2871           0 :         stats_metadata%iNG_INST= k
        2872             :
        2873             :         call stat_assign( var_index=stats_metadata%iNG_INST, var_name="NG_INST", &
        2874             :              var_description="NG_INST, Change in # conc. from instantaneous processes +Ngm", &
        2875           0 :              var_units="(#/kg/s)", l_silhs=.true., grid_kind=stats_zt )
        2876           0 :         k = k + 1
        2877             :
        2878             :
        2879             :       case ('T_in_K_mc')
        2880           0 :         stats_metadata%iT_in_K_mc= k
        2881             :
        2882             :         call stat_assign( var_index=stats_metadata%iT_in_K_mc, var_name="T_in_K_mc", &
        2883             :              var_description="T_in_K_mc, Temperature tendency from Morrison microphysics", &
        2884           0 :              var_units="(K/s)", l_silhs=.true., grid_kind=stats_zt )
        2885           0 :         k = k + 1
        2886             :
        2887             :       case ('w_KK_evap_covar_zt')
        2888           0 :         stats_metadata%iw_KK_evap_covar_zt = k
        2889             :
        2890             :         call stat_assign( var_index=stats_metadata%iw_KK_evap_covar_zt, var_name="w_KK_evap_covar_zt", &
        2891             :              var_description="w_KK_evap_covar_zt, Covariance of w and KK evaporation rate", &
        2892           0 :              var_units="m*(kg/kg)/s^2", l_silhs=.false., grid_kind=stats_zt )
        2893           0 :        k = k + 1
        2894             :
        2895             :       case ('rt_KK_evap_covar_zt')
        2896           0 :         stats_metadata%irt_KK_evap_covar_zt = k
        2897             :
        2898             :         call stat_assign( var_index=stats_metadata%irt_KK_evap_covar_zt, var_name="rt_KK_evap_covar_zt", &
        2899             :              var_description="rt_KK_evap_covar_zt, Covariance of r_t and KK evaporation rate", &
        2900           0 :              var_units="(kg/kg)^2/s", l_silhs=.false., grid_kind=stats_zt )
        2901           0 :        k = k + 1
        2902             :
        2903             :       case ('thl_KK_evap_covar_zt')
        2904           0 :         stats_metadata%ithl_KK_evap_covar_zt = k
        2905             :
        2906             :         call stat_assign( var_index=stats_metadata%ithl_KK_evap_covar_zt, var_name="thl_KK_evap_covar_zt", &
        2907             :              var_description="thl_KK_evap_covar_zt, Covariance of theta_l and KK " &
        2908             :              // "evaporation rate", &
        2909           0 :              var_units="K*(kg/kg)/s", l_silhs=.false., grid_kind=stats_zt )
        2910           0 :        k = k + 1
        2911             :
        2912             :       case ('w_KK_auto_covar_zt')
        2913           0 :         stats_metadata%iw_KK_auto_covar_zt = k
        2914             :
        2915             :         call stat_assign( var_index=stats_metadata%iw_KK_auto_covar_zt, var_name="w_KK_auto_covar_zt", &
        2916             :              var_description="w_KK_auto_covar_zt, Covariance of w and KK autoconversion rate", &
        2917           0 :              var_units="m*(kg/kg)/s^2", l_silhs=.false., grid_kind=stats_zt )
        2918           0 :        k = k + 1
        2919             :
        2920             :       case ('rt_KK_auto_covar_zt')
        2921           0 :         stats_metadata%irt_KK_auto_covar_zt = k
        2922             :
        2923             :         call stat_assign( var_index=stats_metadata%irt_KK_auto_covar_zt, var_name="rt_KK_auto_covar_zt", &
        2924             :              var_description="rt_KK_auto_covar_zt, Covariance of r_t and KK autoconversion rate",&
        2925           0 :              var_units="(kg/kg)^2/s", l_silhs=.false., grid_kind=stats_zt )
        2926           0 :        k = k + 1
        2927             :
        2928             :       case ('thl_KK_auto_covar_zt')
        2929           0 :         stats_metadata%ithl_KK_auto_covar_zt = k
        2930             :
        2931             :         call stat_assign( var_index=stats_metadata%ithl_KK_auto_covar_zt, var_name="thl_KK_auto_covar_zt", &
        2932             :              var_description="thl_KK_auto_covar_zt, Covariance of theta_l and " &
        2933             :              // "KK autoconversion rate", &
        2934           0 :              var_units="K*(kg/kg)/s", l_silhs=.false., grid_kind=stats_zt )
        2935           0 :        k = k + 1
        2936             :
        2937             :       case ('w_KK_accr_covar_zt')
        2938           0 :         stats_metadata%iw_KK_accr_covar_zt = k
        2939             :
        2940             :         call stat_assign( var_index=stats_metadata%iw_KK_accr_covar_zt, var_name="w_KK_accr_covar_zt", &
        2941             :              var_description="w_KK_accr_covar_zt, Covariance of w and KK accretion rate", &
        2942             :              var_units="m*(kg/kg)/s^2", &
        2943           0 :              l_silhs=.false., grid_kind=stats_zt )
        2944           0 :        k = k + 1
        2945             :
        2946             :       case ('rt_KK_accr_covar_zt')
        2947           0 :         stats_metadata%irt_KK_accr_covar_zt = k
        2948             :
        2949             :         call stat_assign( var_index=stats_metadata%irt_KK_accr_covar_zt, var_name="rt_KK_accr_covar_zt", &
        2950             :              var_description="rt_KK_accr_covar_zt, Covariance of r_t and KK accretion rate", &
        2951             :              var_units="(kg/kg)^2/s", &
        2952           0 :              l_silhs=.false., grid_kind=stats_zt )
        2953           0 :        k = k + 1
        2954             :
        2955             :       case ('thl_KK_accr_covar_zt')
        2956           0 :         stats_metadata%ithl_KK_accr_covar_zt = k
        2957             :
        2958             :         call stat_assign( var_index=stats_metadata%ithl_KK_accr_covar_zt, var_name="thl_KK_accr_covar_zt", &
        2959             :              var_description="thl_KK_accr_covar_zt, Covariance of theta_l and KK accretion rate",&
        2960           0 :              var_units="K*(kg/kg)/s", l_silhs=.false., grid_kind=stats_zt )
        2961           0 :        k = k + 1
        2962             :
        2963             :       case ('rr_KK_mvr_covar_zt')
        2964           0 :         stats_metadata%irr_KK_mvr_covar_zt = k
        2965             :
        2966             :         call stat_assign( var_index=stats_metadata%irr_KK_mvr_covar_zt, var_name="rr_KK_mvr_covar_zt", &
        2967             :              var_description="rr_KK_mvr_covar_zt, Covariance of r_r and KK rain drop mean " &
        2968             :              // "volume radius", &
        2969           0 :              var_units="(kg/kg)m", l_silhs=.false., grid_kind=stats_zt )
        2970           0 :        k = k + 1
        2971             :
        2972             :       case ('Nr_KK_mvr_covar_zt')
        2973           0 :         stats_metadata%iNr_KK_mvr_covar_zt = k
        2974             :
        2975             :         call stat_assign( var_index=stats_metadata%iNr_KK_mvr_covar_zt, var_name="Nr_KK_mvr_covar_zt", &
        2976             :              var_description="Nr_KK_mvr_covar_zt, Covariance of N_r and KK rain drop mean " &
        2977             :              // "volume radius", &
        2978           0 :              var_units="(num/kg)m", l_silhs=.false., grid_kind=stats_zt )
        2979           0 :        k = k + 1
        2980             :
        2981             :       case ('KK_mvr_variance_zt')
        2982           0 :         stats_metadata%iKK_mvr_variance_zt = k
        2983             :
        2984             :         call stat_assign( var_index=stats_metadata%iKK_mvr_variance_zt, var_name="KK_mvr_variance_zt", &
        2985             :              var_description="KK_mvr_variance_zt, Variance of KK rain drop mean volume radius", &
        2986           0 :              var_units="m^2", l_silhs=.false., grid_kind=stats_zt )
        2987           0 :        k = k + 1
        2988             :
        2989             :       case ('vm_bt')
        2990           0 :         stats_metadata%ivm_bt = k
        2991             :
        2992             :         call stat_assign( var_index=stats_metadata%ivm_bt, var_name="vm_bt", &
        2993             :              var_description="vm_bt, vm budget: vm time tendency", var_units="m s^{-2}", &
        2994           0 :              l_silhs=.false., grid_kind=stats_zt )
        2995           0 :         k = k + 1
        2996             :
        2997             :       case ('vm_ma')
        2998           0 :         stats_metadata%ivm_ma = k
        2999             :         call stat_assign( var_index=stats_metadata%ivm_ma, var_name="vm_ma", &
        3000             :              var_description="vm_ma, vm budget: vm vertical mean advection", &
        3001           0 :              var_units="m s^{-2}", l_silhs=.false., grid_kind=stats_zt )
        3002           0 :         k = k + 1
        3003             :
        3004             :       case ('vm_gf')
        3005           0 :         stats_metadata%ivm_gf = k
        3006             :
        3007             :         call stat_assign( var_index=stats_metadata%ivm_gf, var_name="vm_gf", &
        3008             :              var_description="vm_gf, vm budget: vm geostrophic forcing", &
        3009           0 :              var_units="m s^{-2}", l_silhs=.false., grid_kind=stats_zt )
        3010           0 :         k = k + 1
        3011             :
        3012             :       case ('vm_cf')
        3013           0 :         stats_metadata%ivm_cf = k
        3014             :
        3015             :         call stat_assign( var_index=stats_metadata%ivm_cf, var_name="vm_cf", &
        3016             :              var_description="vm_cf, vm budget: vm coriolis forcing", var_units="m s^{-2}", &
        3017           0 :              l_silhs=.false., grid_kind=stats_zt )
        3018           0 :         k = k + 1
        3019             :
        3020             :       case ('vm_ta')
        3021           0 :         stats_metadata%ivm_ta = k
        3022             :
        3023             :         call stat_assign( var_index=stats_metadata%ivm_ta, var_name="vm_ta", &
        3024             :              var_description="vm_ta, vm budget: vm turbulent transport", &
        3025           0 :              var_units="m s^{-2}", l_silhs=.false., grid_kind=stats_zt )
        3026           0 :         k = k + 1
        3027             :
        3028             :       case ('vm_f')
        3029           0 :         stats_metadata%ivm_f = k
        3030             :         call stat_assign( var_index=stats_metadata%ivm_f, var_name="vm_f", &
        3031             :              var_description="vm_f, vm budget: vm forcing", var_units="m s^{-2}", &
        3032           0 :              l_silhs=.false., grid_kind=stats_zt )
        3033           0 :         k = k + 1
        3034             :
        3035             :       case ('vm_sdmp')
        3036           0 :         stats_metadata%ivm_sdmp = k
        3037             :         call stat_assign( var_index=stats_metadata%ivm_sdmp, var_name="vm_sdmp", &
        3038             :              var_description="vm_sdmp, vm budget: vm sponge damping", var_units="m s^{-2}", &
        3039           0 :              l_silhs=.false., grid_kind=stats_zt )
        3040           0 :         k = k + 1
        3041             :
        3042             :       case ('vm_ndg')
        3043           0 :         stats_metadata%ivm_ndg = k
        3044             :         call stat_assign( var_index=stats_metadata%ivm_ndg, var_name="vm_ndg", &
        3045             :              var_description="vm_ndg, vm budget: vm nudging", var_units="m s^{-2}", &
        3046           0 :              l_silhs=.false., grid_kind=stats_zt )
        3047           0 :         k = k + 1
        3048             :
        3049             :       case ('vm_mfl')
        3050           0 :         stats_metadata%ivm_mfl = k
        3051             :         call stat_assign( var_index=stats_metadata%ivm_mfl, var_name="vm_mfl", &
        3052             :              var_description="vm_mfl, vm budget: vm monotonic flux limiter", &
        3053             :              var_units="m s^{-2}", &
        3054           0 :              l_silhs=.false., grid_kind=stats_zt )
        3055           0 :         k = k + 1
        3056             :
        3057             :       case ('um_bt')
        3058           0 :         stats_metadata%ium_bt = k
        3059             :
        3060             :         call stat_assign( var_index=stats_metadata%ium_bt, var_name="um_bt", &
        3061             :              var_description="um_bt, um budget: um time tendency", var_units="m s^{-2}", &
        3062           0 :              l_silhs=.false., grid_kind=stats_zt )
        3063           0 :         k = k + 1
        3064             :
        3065             :       case ('um_ma')
        3066           0 :         stats_metadata%ium_ma = k
        3067             :
        3068             :         call stat_assign( var_index=stats_metadata%ium_ma, var_name="um_ma", &
        3069             :              var_description="um_ma, um budget: um vertical mean advection", &
        3070           0 :              var_units="m s^{-2}", l_silhs=.false., grid_kind=stats_zt )
        3071           0 :         k = k + 1
        3072             :
        3073             :       case ('um_gf')
        3074           0 :         stats_metadata%ium_gf = k
        3075             :         call stat_assign( var_index=stats_metadata%ium_gf, var_name="um_gf", &
        3076             :              var_description="um_gf, um budget: um geostrophic forcing", &
        3077           0 :              var_units="m s^{-2}", l_silhs=.false., grid_kind=stats_zt )
        3078           0 :         k = k + 1
        3079             :
        3080             :       case ('um_cf')
        3081           0 :         stats_metadata%ium_cf = k
        3082             :         call stat_assign( var_index=stats_metadata%ium_cf, var_name="um_cf", &
        3083             :              var_description="um_cf, um budget: um coriolis forcing", var_units="m s^{-2}", &
        3084           0 :              l_silhs=.false., grid_kind=stats_zt )
        3085           0 :         k = k + 1
        3086             :
        3087             :       case ('um_ta')
        3088           0 :         stats_metadata%ium_ta = k
        3089             :         call stat_assign( var_index=stats_metadata%ium_ta, var_name="um_ta", &
        3090             :              var_description="um_ta, um budget: um turbulent advection", &
        3091           0 :              var_units="m s^{-2}", l_silhs=.false., grid_kind=stats_zt )
        3092           0 :         k = k + 1
        3093             :
        3094             :       case ('um_f')
        3095           0 :         stats_metadata%ium_f = k
        3096             :         call stat_assign( var_index=stats_metadata%ium_f, var_name="um_f", &
        3097             :              var_description="um_f, um budget: um forcing", var_units="m s^{-2}", &
        3098           0 :              l_silhs=.false., grid_kind=stats_zt )
        3099           0 :         k = k + 1
        3100             :
        3101             :       case ('um_sdmp')
        3102           0 :         stats_metadata%ium_sdmp = k
        3103             :         call stat_assign( var_index=stats_metadata%ium_sdmp, var_name="um_sdmp", &
        3104             :              var_description="um_sdmp, um budget: um sponge damping", var_units="m s^{-2}", &
        3105           0 :              l_silhs=.false., grid_kind=stats_zt )
        3106           0 :         k = k + 1
        3107             :
        3108             :       case ('um_ndg')
        3109           0 :         stats_metadata%ium_ndg = k
        3110             :         call stat_assign( var_index=stats_metadata%ium_ndg, var_name="um_ndg", &
        3111             :              var_description="um_ndg, um budget: um nudging", var_units="m s^{-2}", &
        3112           0 :              l_silhs=.false., grid_kind=stats_zt )
        3113           0 :         k = k + 1
        3114             :
        3115             :       case ('um_mfl')
        3116           0 :         stats_metadata%ium_mfl = k
        3117             :         call stat_assign( var_index=stats_metadata%ium_mfl, var_name="um_mfl", &
        3118             :              var_description="um_mfl, um budget: um monotonic flux limiter", &
        3119             :              var_units="m s^{-2}",&
        3120           0 :              l_silhs=.false., grid_kind=stats_zt )
        3121           0 :         k = k + 1
        3122             :
        3123             :       case ('mixt_frac')
        3124           0 :         stats_metadata%imixt_frac = k
        3125             :         call stat_assign( var_index=stats_metadata%imixt_frac, var_name="mixt_frac", &
        3126             :              var_description="mixt_frac, pdf parameter: mixture fraction", var_units="count", &
        3127           0 :              l_silhs=.false., grid_kind=stats_zt )
        3128           0 :         k = k + 1
        3129             :
        3130             :       case ('w_1')
        3131           0 :         stats_metadata%iw_1 = k
        3132             :         call stat_assign( var_index=stats_metadata%iw_1, var_name="w_1", &
        3133             :              var_description="w_1, pdf parameter: mean w of component 1", var_units="m/s", &
        3134           0 :              l_silhs=.false., grid_kind=stats_zt )
        3135             :
        3136           0 :         k = k + 1
        3137             :
        3138             :       case ('w_2')
        3139           0 :         stats_metadata%iw_2 = k
        3140             :
        3141             :         call stat_assign( var_index=stats_metadata%iw_2, var_name="w_2", &
        3142             :              var_description="w_2, pdf paramete: mean w of component 2", var_units="m/s", &
        3143           0 :              l_silhs=.false., grid_kind=stats_zt )
        3144           0 :         k = k + 1
        3145             :
        3146             :       case ('varnce_w_1')
        3147           0 :         stats_metadata%ivarnce_w_1 = k
        3148             :         call stat_assign( var_index=stats_metadata%ivarnce_w_1, var_name="varnce_w_1", &
        3149             :              var_description="varnce_w_1, pdf parameter: w variance of component 1", &
        3150           0 :              var_units="m^2/s^2", l_silhs=.false., grid_kind=stats_zt )
        3151             :
        3152           0 :         k = k + 1
        3153             :
        3154             :       case ('varnce_w_2')
        3155           0 :         stats_metadata%ivarnce_w_2 = k
        3156             :
        3157             :         call stat_assign( var_index=stats_metadata%ivarnce_w_2, var_name="varnce_w_2", &
        3158             :              var_description="varnce_w_2, pdf parameter: w variance of component 2", &
        3159           0 :              var_units="m^2/s^2", l_silhs=.false., grid_kind=stats_zt )
        3160           0 :         k = k + 1
        3161             :
        3162             :       case ('thl_1')
        3163           0 :         stats_metadata%ithl_1 = k
        3164             :
        3165             :         call stat_assign( var_index=stats_metadata%ithl_1, var_name="thl_1", &
        3166             :              var_description="thl_1, pdf parameter: mean thl of component 1", var_units="K", &
        3167           0 :              l_silhs=.false., grid_kind=stats_zt )
        3168             :
        3169           0 :         k = k + 1
        3170             :
        3171             :       case ('thl_2')
        3172           0 :         stats_metadata%ithl_2 = k
        3173             :
        3174             :         call stat_assign( var_index=stats_metadata%ithl_2, var_name="thl_2", &
        3175             :              var_description="thl_2, pdf parameter: mean thl of component 2", var_units="K", &
        3176           0 :              l_silhs=.false., grid_kind=stats_zt )
        3177           0 :         k = k + 1
        3178             :
        3179             :       case ('varnce_thl_1')
        3180           0 :         stats_metadata%ivarnce_thl_1 = k
        3181             :
        3182             :         call stat_assign( var_index=stats_metadata%ivarnce_thl_1, var_name="varnce_thl_1", &
        3183             :              var_description="varnce_thl_1, pdf parameter: thl variance of component 1", &
        3184             :              var_units="K^2", &
        3185           0 :              l_silhs=.false., grid_kind=stats_zt )
        3186             :
        3187           0 :         k = k + 1
        3188             :
        3189             :       case ('varnce_thl_2')
        3190           0 :         stats_metadata%ivarnce_thl_2 = k
        3191             :         call stat_assign( var_index=stats_metadata%ivarnce_thl_2, var_name="varnce_thl_2", &
        3192             :              var_description="varnce_thl_2, pdf parameter: thl variance of component 2", &
        3193             :              var_units="K^2", &
        3194           0 :              l_silhs=.false., grid_kind=stats_zt )
        3195             :
        3196           0 :         k = k + 1
        3197             :
        3198             :       case ('rt_1')
        3199           0 :         stats_metadata%irt_1 = k
        3200             :         call stat_assign( var_index=stats_metadata%irt_1, var_name="rt_1", &
        3201             :              var_description="rt_1, pdf parameter: mean rt of component 1", var_units="kg/kg", &
        3202           0 :              l_silhs=.false., grid_kind=stats_zt )
        3203             :
        3204           0 :         k = k + 1
        3205             :
        3206             :       case ('rt_2')
        3207           0 :         stats_metadata%irt_2 = k
        3208             :
        3209             :         call stat_assign( var_index=stats_metadata%irt_2, var_name="rt_2", &
        3210             :              var_description="rt_2, pdf parameter: mean rt of component 2", var_units="kg/kg", &
        3211           0 :              l_silhs=.false., grid_kind=stats_zt )
        3212           0 :         k = k + 1
        3213             :
        3214             :       case ('varnce_rt_1')
        3215           0 :         stats_metadata%ivarnce_rt_1 = k
        3216             :         call stat_assign( var_index=stats_metadata%ivarnce_rt_1, var_name="varnce_rt_1", &
        3217             :              var_description="varnce_rt_1, pdf parameter: rt variance of component 1", &
        3218           0 :              var_units="(kg^2)/(kg^2)", l_silhs=.false., grid_kind=stats_zt )
        3219           0 :         k = k + 1
        3220             :
        3221             :       case ('varnce_rt_2')
        3222           0 :         stats_metadata%ivarnce_rt_2 = k
        3223             :
        3224             :         call stat_assign( var_index=stats_metadata%ivarnce_rt_2, var_name="varnce_rt_2", &
        3225             :              var_description="varnce_rt_2, pdf parameter: rt variance of component 2", &
        3226           0 :              var_units="(kg^2)/(kg^2)", l_silhs=.false., grid_kind=stats_zt )
        3227           0 :         k = k + 1
        3228             :
        3229             :       case ('rc_1')
        3230           0 :         stats_metadata%irc_1 = k
        3231             :
        3232             :         call stat_assign( var_index=stats_metadata%irc_1, var_name="rc_1", &
        3233             :              var_description="rc_1, pdf parameter: mean rc of component 1", var_units="kg/kg", &
        3234           0 :              l_silhs=.false., grid_kind=stats_zt )
        3235           0 :         k = k + 1
        3236             :
        3237             :       case ('rc_2')
        3238           0 :         stats_metadata%irc_2 = k
        3239             :
        3240             :         call stat_assign( var_index=stats_metadata%irc_2, var_name="rc_2", &
        3241             :              var_description="rc_2, pdf parameter: mean rc of component 2", var_units="kg/kg", &
        3242           0 :              l_silhs=.false., grid_kind=stats_zt )
        3243           0 :         k = k + 1
        3244             :
        3245             :       case ('rsatl_1')
        3246           0 :         stats_metadata%irsatl_1 = k
        3247             :
        3248             :         call stat_assign( var_index=stats_metadata%irsatl_1, var_name="rsatl_1", &
        3249             :              var_description="rsatl_1, pdf parameter: sat mix rat based on tl1", &
        3250           0 :              var_units="kg/kg", l_silhs=.false., grid_kind=stats_zt )
        3251           0 :         k = k + 1
        3252             :
        3253             :       case ('rsatl_2')
        3254           0 :         stats_metadata%irsatl_2 = k
        3255             :
        3256             :         call stat_assign( var_index=stats_metadata%irsatl_2, var_name="rsatl_2", &
        3257             :              var_description="rsatl_2, pdf parameter: sat mix rat based on tl2", &
        3258           0 :              var_units="kg/kg", l_silhs=.false., grid_kind=stats_zt )
        3259           0 :         k = k + 1
        3260             :
        3261             :       case ('cloud_frac_1')
        3262           0 :         stats_metadata%icloud_frac_1 = k
        3263             :         call stat_assign( var_index=stats_metadata%icloud_frac_1, var_name="cloud_frac_1", &
        3264             :              var_description="cloud_frac_1, pdf parameter cloud_frac_1", var_units="-", &
        3265           0 :              l_silhs=.false., grid_kind=stats_zt )
        3266           0 :         k = k + 1
        3267             :
        3268             :       case ('cloud_frac_2')
        3269           0 :         stats_metadata%icloud_frac_2 = k
        3270             :
        3271             :         call stat_assign( var_index=stats_metadata%icloud_frac_2, var_name="cloud_frac_2", &
        3272             :              var_description="cloud_frac_2, pdf parameter cloud_frac_2", var_units="-", &
        3273           0 :              l_silhs=.false., grid_kind=stats_zt )
        3274           0 :         k = k + 1
        3275             :
        3276             :       case ('chi_1')
        3277           0 :         stats_metadata%ichi_1 = k
        3278             :
        3279             :         call stat_assign( var_index=stats_metadata%ichi_1, var_name="chi_1", &
        3280             :              var_description="chi_1, pdf parameter: Mellor's s (extended liq) for component 1", &
        3281           0 :              var_units="kg/kg", l_silhs=.false., grid_kind=stats_zt )
        3282           0 :         k = k + 1
        3283             :
        3284             :       case ('chi_2')
        3285           0 :         stats_metadata%ichi_2 = k
        3286             :
        3287             :         call stat_assign( var_index=stats_metadata%ichi_2, var_name="chi_2", &
        3288             :              var_description="chi_2, pdf parameter: Mellor's s (extended liq) for component 2", &
        3289           0 :              var_units="kg/kg", l_silhs=.false., grid_kind=stats_zt )
        3290           0 :         k = k + 1
        3291             :
        3292             :       case ('stdev_chi_1')
        3293           0 :         stats_metadata%istdev_chi_1 = k
        3294             :
        3295             :         call stat_assign( var_index=stats_metadata%istdev_chi_1, var_name="stdev_chi_1", &
        3296             :              var_description="stdev_chi_1, pdf parameter: Std dev of chi_1", var_units="kg/kg", &
        3297           0 :              l_silhs=.false., grid_kind=stats_zt )
        3298           0 :         k = k + 1
        3299             :
        3300             :       case ('stdev_chi_2')
        3301           0 :         stats_metadata%istdev_chi_2 = k
        3302             :
        3303             :         call stat_assign( var_index=stats_metadata%istdev_chi_2, var_name="stdev_chi_2", &
        3304             :              var_description="stdev_chi_2, pdf parameter: Std dev of chi_2", var_units="kg/kg", &
        3305           0 :              l_silhs=.false., grid_kind=stats_zt )
        3306           0 :         k = k + 1
        3307             :
        3308             :       case ('chip2')
        3309           0 :         stats_metadata%ichip2 = k
        3310             :         call stat_assign( var_index=stats_metadata%ichip2, var_name="chip2", &
        3311             :              var_description="chip2, Variance of chi(s) (overall)", var_units="(kg/kg)^2", &
        3312           0 :              l_silhs=.false., grid_kind=stats_zt )
        3313           0 :         k = k + 1
        3314             :
        3315             :       case ('stdev_eta_1')
        3316           0 :         stats_metadata%istdev_eta_1 = k
        3317             :
        3318             :         call stat_assign( var_index=stats_metadata%istdev_eta_1, var_name="stdev_eta_1", &
        3319             :              var_description="stdev_eta_1, Standard dev. of eta(t) (1st PDF component)", &
        3320           0 :              var_units="kg/kg", l_silhs=.false., grid_kind=stats_zt )
        3321           0 :         k = k + 1
        3322             :
        3323             :       case ('stdev_eta_2')
        3324           0 :         stats_metadata%istdev_eta_2 = k
        3325             :
        3326             :         call stat_assign( var_index=stats_metadata%istdev_eta_2, var_name="stdev_eta_2", &
        3327             :              var_description="stdev_eta_2, Standard dev. of eta(t) (2nd PDF component)", &
        3328           0 :              var_units="kg/kg", l_silhs=.false., grid_kind=stats_zt )
        3329           0 :         k = k + 1
        3330             :
        3331             :       case ('covar_chi_eta_1')
        3332           0 :         stats_metadata%icovar_chi_eta_1 = k
        3333             :
        3334             :         call stat_assign( var_index=stats_metadata%icovar_chi_eta_1, var_name="covar_chi_eta_1", &
        3335             :              var_description="covar_chi_eta_1, Covariance of chi(s) and eta(t) " &
        3336             :              // "(1st PDF component)", &
        3337           0 :              var_units="kg^2/kg^2", l_silhs=.false., grid_kind=stats_zt )
        3338           0 :         k = k + 1
        3339             :
        3340             :       case ('covar_chi_eta_2')
        3341           0 :         stats_metadata%icovar_chi_eta_2 = k
        3342             :
        3343             :         call stat_assign( var_index=stats_metadata%icovar_chi_eta_2, var_name="covar_chi_eta_2", &
        3344             :              var_description="covar_chi_eta_2, Covariance of chi(s) and eta(t) " &
        3345             :              // "(2nd PDF component)", &
        3346           0 :              var_units="kg^2/kg^2", l_silhs=.false., grid_kind=stats_zt )
        3347           0 :         k = k + 1
        3348             :
        3349             :       case ('corr_w_chi_1')
        3350           0 :         stats_metadata%icorr_w_chi_1 = k
        3351             :
        3352             :         call stat_assign( var_index=stats_metadata%icorr_w_chi_1, var_name="corr_w_chi_1", &
        3353             :                           var_description="corr_w_chi_1, Correlation of w and chi (s)" &
        3354             :                           // " (1st PDF component)", var_units="-", &
        3355           0 :                           l_silhs=.false., grid_kind=stats_zt )
        3356           0 :         k = k + 1
        3357             :
        3358             :       case ('corr_w_chi_2')
        3359           0 :         stats_metadata%icorr_w_chi_2 = k
        3360             :
        3361             :         call stat_assign( var_index=stats_metadata%icorr_w_chi_2, var_name="corr_w_chi_2", &
        3362             :                           var_description="corr_w_chi_2, Correlation of w and chi (s)" &
        3363             :                           // " (2nd PDF component)", var_units="-", &
        3364           0 :                           l_silhs=.false., grid_kind=stats_zt )
        3365           0 :         k = k + 1
        3366             :
        3367             :       case ('corr_w_eta_1')
        3368           0 :         stats_metadata%icorr_w_eta_1 = k
        3369             :
        3370             :         call stat_assign( var_index=stats_metadata%icorr_w_eta_1, var_name="corr_w_eta_1", &
        3371             :                           var_description="corr_w_eta_1, Correlation of w and eta (t)" &
        3372             :                           // " (1st PDF component)", var_units="-", &
        3373           0 :                           l_silhs=.false., grid_kind=stats_zt )
        3374           0 :         k = k + 1
        3375             :
        3376             :       case ('corr_w_eta_2')
        3377           0 :         stats_metadata%icorr_w_eta_2 = k
        3378             :
        3379             :         call stat_assign( var_index=stats_metadata%icorr_w_eta_2, var_name="corr_w_eta_2", &
        3380             :                           var_description="corr_w_eta_2, Correlation of w and eta (t)" &
        3381             :                           // " (2nd PDF component)", var_units="-", &
        3382           0 :                           l_silhs=.false., grid_kind=stats_zt )
        3383           0 :         k = k + 1
        3384             :
        3385             :       case ('corr_chi_eta_1')
        3386           0 :         stats_metadata%icorr_chi_eta_1 = k
        3387             :
        3388             :         call stat_assign( var_index=stats_metadata%icorr_chi_eta_1, &
        3389             :                           var_name="corr_chi_eta_1", &
        3390             :                           var_description="corr_chi_eta_1, Correlation of chi (s) and" &
        3391             :                           // " eta (t) (1st PDF component)", &
        3392             :                           var_units="-", &
        3393           0 :                           l_silhs=.false., grid_kind=stats_zt )
        3394           0 :         k = k + 1
        3395             :
        3396             :       case ('corr_chi_eta_2')
        3397           0 :         stats_metadata%icorr_chi_eta_2 = k
        3398             :
        3399             :         call stat_assign( var_index=stats_metadata%icorr_chi_eta_2, &
        3400             :                           var_name="corr_chi_eta_2", &
        3401             :                           var_description="corr_chi_eta_2, Correlation of chi (s) and" &
        3402             :                           // " eta (t) (2nd PDF component)", &
        3403             :                           var_units="-", &
        3404           0 :                           l_silhs=.false., grid_kind=stats_zt )
        3405           0 :         k = k + 1
        3406             :
        3407             :       case ('corr_w_rt_1')
        3408           0 :         stats_metadata%icorr_w_rt_1 = k
        3409             :
        3410             :         call stat_assign( var_index=stats_metadata%icorr_w_rt_1, var_name="corr_w_rt_1", &
        3411             :                           var_description="corr_w_rt_1, Correlation of w and rt" &
        3412             :                           // " (1st PDF component)", var_units="-", &
        3413           0 :                           l_silhs=.false., grid_kind=stats_zt )
        3414           0 :         k = k + 1
        3415             :
        3416             :       case ('corr_w_rt_2')
        3417           0 :         stats_metadata%icorr_w_rt_2 = k
        3418             :
        3419             :         call stat_assign( var_index=stats_metadata%icorr_w_rt_2, var_name="corr_w_rt_2", &
        3420             :                           var_description="corr_w_rt_2, Correlation of w and rt" &
        3421             :                           // " (2nd PDF component)", var_units="-", &
        3422           0 :                           l_silhs=.false., grid_kind=stats_zt )
        3423           0 :         k = k + 1
        3424             :
        3425             :       case ('corr_w_thl_1')
        3426           0 :         stats_metadata%icorr_w_thl_1 = k
        3427             :
        3428             :         call stat_assign( var_index=stats_metadata%icorr_w_thl_1, var_name="corr_w_thl_1", &
        3429             :                           var_description="corr_w_thl_1, Correlation of w and thl" &
        3430             :                           // " (1st PDF component)", var_units="-", &
        3431           0 :                           l_silhs=.false., grid_kind=stats_zt )
        3432           0 :         k = k + 1
        3433             :
        3434             :       case ('corr_w_thl_2')
        3435           0 :         stats_metadata%icorr_w_thl_2 = k
        3436             :
        3437             :         call stat_assign( var_index=stats_metadata%icorr_w_thl_2, var_name="corr_w_thl_2", &
        3438             :                           var_description="corr_w_thl_2, Correlation of w and thl" &
        3439             :                           // " (2nd PDF component)", var_units="-", &
        3440           0 :                           l_silhs=.false., grid_kind=stats_zt )
        3441           0 :         k = k + 1
        3442             :
        3443             :       case ('corr_rt_thl_1')
        3444           0 :         stats_metadata%icorr_rt_thl_1 = k
        3445             :
        3446             :         call stat_assign( var_index=stats_metadata%icorr_rt_thl_1, var_name="corr_rt_thl_1", &
        3447             :                           var_description="corr_rt_thl_1, Correlation of rt and thl" &
        3448             :                           // " (1st PDF component)", var_units="-", &
        3449           0 :                           l_silhs=.false., grid_kind=stats_zt )
        3450           0 :         k = k + 1
        3451             :
        3452             :       case ('corr_rt_thl_2')
        3453           0 :         stats_metadata%icorr_rt_thl_2 = k
        3454             :
        3455             :         call stat_assign( var_index=stats_metadata%icorr_rt_thl_2, var_name="corr_rt_thl_2", &
        3456             :                           var_description="corr_rt_thl_2, Correlation of rt and thl" &
        3457             :                           // " (2nd PDF component)", var_units="-", &
        3458           0 :                           l_silhs=.false., grid_kind=stats_zt )
        3459           0 :         k = k + 1
        3460             :
        3461             :       case ('crt_1')
        3462           0 :         stats_metadata%icrt_1 = k
        3463             :
        3464             :         call stat_assign( var_index=stats_metadata%icrt_1, var_name="crt_1", &
        3465             :                           var_description="crt_1, Coefficient on rt in chi/eta" &
        3466             :                           // " equations (1st PDF comp.)", &
        3467           0 :                           var_units="-", l_silhs=.false., grid_kind=stats_zt )
        3468           0 :         k = k + 1
        3469             :
        3470             :       case ('crt_2')
        3471           0 :         stats_metadata%icrt_2 = k
        3472             :
        3473             :         call stat_assign( var_index=stats_metadata%icrt_2, var_name="crt_2", &
        3474             :                           var_description="crt_2, Coefficient on rt in chi/eta" &
        3475             :                           // " equations (2nd PDF comp.)", &
        3476           0 :                           var_units="-", l_silhs=.false., grid_kind=stats_zt )
        3477           0 :         k = k + 1
        3478             :
        3479             :       case ('cthl_1')
        3480           0 :         stats_metadata%icthl_1 = k
        3481             :
        3482             :         call stat_assign( var_index=stats_metadata%icthl_1, var_name="cthl_1", &
        3483             :                           var_description="cthl_1, Coefficient on theta-l in chi/eta" &
        3484             :                           // " equations (1st PDF comp.)", &
        3485           0 :                           var_units="kg/kg/K", l_silhs=.false., grid_kind=stats_zt )
        3486           0 :         k = k + 1
        3487             :
        3488             :       case ('cthl_2')
        3489           0 :         stats_metadata%icthl_2 = k
        3490             :
        3491             :         call stat_assign( var_index=stats_metadata%icthl_2, var_name="cthl_2", &
        3492             :                           var_description="cthl_2, Coefficient on theta-l in chi/eta" &
        3493             :                           // " equations (2nd PDF comp.)", &
        3494           0 :                           var_units="kg/kg/K", l_silhs=.false., grid_kind=stats_zt )
        3495           0 :         k = k + 1
        3496             :
        3497             :       case('F_w')
        3498           0 :         stats_metadata%iF_w = k
        3499             :
        3500             :         call stat_assign( var_index=stats_metadata%iF_w, var_name="F_w", &
        3501             :                           var_description="F_w, Parameter for the spread of the" &
        3502             :                           // " PDF component means of w (new PDF)", &
        3503           0 :                           var_units="-", l_silhs=.false., grid_kind=stats_zt )
        3504           0 :         k = k + 1
        3505             :
        3506             :       case('F_rt')
        3507           0 :         stats_metadata%iF_rt = k
        3508             :
        3509             :         call stat_assign( var_index=stats_metadata%iF_rt, var_name="F_rt", &
        3510             :                           var_description="F_rt, Parameter for the spread of the" &
        3511             :                           // " PDF component means of rt (new PDF)", &
        3512           0 :                           var_units="-", l_silhs=.false., grid_kind=stats_zt )
        3513           0 :         k = k + 1
        3514             :
        3515             :       case('F_thl')
        3516           0 :         stats_metadata%iF_thl = k
        3517             :
        3518             :         call stat_assign( var_index=stats_metadata%iF_thl, var_name="F_thl", &
        3519             :                           var_description="F_thl, Parameter for the spread of the" &
        3520             :                           // " PDF component means of thl (new PDF)", &
        3521           0 :                           var_units="-", l_silhs=.false., grid_kind=stats_zt )
        3522           0 :         k = k + 1
        3523             :
        3524             :       case('min_F_w')
        3525           0 :         stats_metadata%imin_F_w = k
        3526             :
        3527             :         call stat_assign( var_index=stats_metadata%imin_F_w, var_name="min_F_w", &
        3528             :                           var_description="min_F_w, Minimum allowable value of the" &
        3529             :                           // " parameter F_w (new PDF)", &
        3530           0 :                           var_units="-", l_silhs=.false., grid_kind=stats_zt )
        3531           0 :         k = k + 1
        3532             :
        3533             :       case('max_F_w')
        3534           0 :         stats_metadata%imax_F_w = k
        3535             :
        3536             :         call stat_assign( var_index=stats_metadata%imax_F_w, var_name="max_F_w", &
        3537             :                           var_description="max_F_w, Maximum allowable value of the" &
        3538             :                           // " parameter F_w (new PDF)", &
        3539           0 :                           var_units="-", l_silhs=.false., grid_kind=stats_zt )
        3540           0 :         k = k + 1
        3541             :
        3542             :       case('min_F_rt')
        3543           0 :         stats_metadata%imin_F_rt = k
        3544             :
        3545             :         call stat_assign( var_index=stats_metadata%imin_F_rt, var_name="min_F_rt", &
        3546             :                           var_description="min_F_rt, Minimum allowable value of the" &
        3547             :                           // " parameter F_rt (new PDF)", &
        3548           0 :                           var_units="-", l_silhs=.false., grid_kind=stats_zt )
        3549           0 :         k = k + 1
        3550             :
        3551             :       case('max_F_rt')
        3552           0 :         stats_metadata%imax_F_rt = k
        3553             :
        3554             :         call stat_assign( var_index=stats_metadata%imax_F_rt, var_name="max_F_rt", &
        3555             :                           var_description="max_F_rt, Maximum allowable value of the" &
        3556             :                           // " parameter F_rt (new PDF)", &
        3557           0 :                           var_units="-", l_silhs=.false., grid_kind=stats_zt )
        3558           0 :         k = k + 1
        3559             :
        3560             :       case('min_F_thl')
        3561           0 :         stats_metadata%imin_F_thl = k
        3562             :
        3563             :         call stat_assign( var_index=stats_metadata%imin_F_thl, var_name="min_F_thl", &
        3564             :                           var_description="min_F_thl, Minimum allowable value of the" &
        3565             :                           // " parameter F_thl (new PDF)", &
        3566           0 :                           var_units="-", l_silhs=.false., grid_kind=stats_zt )
        3567           0 :         k = k + 1
        3568             :
        3569             :       case('max_F_thl')
        3570           0 :         stats_metadata%imax_F_thl = k
        3571             :
        3572             :         call stat_assign( var_index=stats_metadata%imax_F_thl, var_name="max_F_thl", &
        3573             :                           var_description="max_F_thl, Maximum allowable value of the" &
        3574             :                           // " parameter F_thl (new PDF)", &
        3575           0 :                           var_units="-", l_silhs=.false., grid_kind=stats_zt )
        3576           0 :         k = k + 1
        3577             :
        3578             :       case ( 'coef_wprtp2_implicit' )
        3579           0 :         stats_metadata%icoef_wprtp2_implicit = k
        3580             :         call stat_assign( var_index=stats_metadata%icoef_wprtp2_implicit, &
        3581             :                           var_name="coef_wprtp2_implicit", &
        3582             :                           var_description="coef_wprtp2_implicit, wprtp2" &
        3583             :                                           // " = coef_wprtp2_implicit" &
        3584             :                                           // " * rtp2" &
        3585             :                                           // " + term_wprtp2_explicit", &
        3586           0 :                           var_units="m/s", l_silhs=.false., grid_kind=stats_zt )
        3587           0 :         k = k + 1
        3588             :
        3589             :       case ( 'term_wprtp2_explicit' )
        3590           0 :         stats_metadata%iterm_wprtp2_explicit = k
        3591             :         call stat_assign( var_index=stats_metadata%iterm_wprtp2_explicit, &
        3592             :                           var_name="term_wprtp2_explicit", &
        3593             :                           var_description="term_wprtp2_explicit, wprtp2" &
        3594             :                                           // " = coef_wprtp2_implicit" &
        3595             :                                           // " * rtp2" &
        3596             :                                           // " + term_wprtp2_explicit", &
        3597             :                           var_units="m/s kg^2/kg^2", l_silhs=.false., &
        3598           0 :                           grid_kind=stats_zt )
        3599           0 :         k = k + 1
        3600             :
        3601             :       case ( 'coef_wpthlp2_implicit' )
        3602           0 :         stats_metadata%icoef_wpthlp2_implicit = k
        3603             :         call stat_assign( var_index=stats_metadata%icoef_wpthlp2_implicit, &
        3604             :                           var_name="coef_wpthlp2_implicit", &
        3605             :                           var_description="coef_wpthlp2_implicit, wpthlp2" &
        3606             :                                           // " = coef_wpthlp2_implicit" &
        3607             :                                           // " * thlp2" &
        3608             :                                           // " + term_wpthlp2_explicit", &
        3609           0 :                           var_units="m/s", l_silhs=.false., grid_kind=stats_zt )
        3610           0 :         k = k + 1
        3611             :
        3612             :       case ( 'term_wpthlp2_explicit' )
        3613           0 :         stats_metadata%iterm_wpthlp2_explicit = k
        3614             :         call stat_assign( var_index=stats_metadata%iterm_wpthlp2_explicit, &
        3615             :                           var_name="term_wpthlp2_explicit", &
        3616             :                           var_description="term_wpthlp2_explicit, wpthlp2" &
        3617             :                                           // " = coef_wpthlp2_implicit" &
        3618             :                                           // " * thlp2" &
        3619             :                                           // " + term_wpthlp2_explicit", &
        3620             :                           var_units="m/s K^2", l_silhs=.false., &
        3621           0 :                           grid_kind=stats_zt )
        3622           0 :         k = k + 1
        3623             :
        3624             :       case ( 'coef_wprtpthlp_implicit' )
        3625           0 :         stats_metadata%icoef_wprtpthlp_implicit = k
        3626             :         call stat_assign( var_index=stats_metadata%icoef_wprtpthlp_implicit, &
        3627             :                           var_name="coef_wprtpthlp_implicit", &
        3628             :                           var_description="coef_wprtpthlp_implicit, wprtpthlp" &
        3629             :                                           // " = coef_wprtpthlp_implicit" &
        3630             :                                           // " * rtpthlp" &
        3631             :                                           // " + term_wprtpthlp_explicit", &
        3632           0 :                           var_units="m/s", l_silhs=.false., grid_kind=stats_zt )
        3633           0 :         k = k + 1
        3634             :
        3635             :       case ( 'term_wprtpthlp_explicit' )
        3636           0 :         stats_metadata%iterm_wprtpthlp_explicit = k
        3637             :         call stat_assign( var_index=stats_metadata%iterm_wprtpthlp_explicit, &
        3638             :                           var_name="term_wprtpthlp_explicit", &
        3639             :                           var_description="term_wprtpthlp_explicit, wprtpthlp" &
        3640             :                                           // " = coef_wprtpthlp_implicit" &
        3641             :                                           // " * rtpthlp" &
        3642             :                                           // " + term_wprtpthlp_explicit]", &
        3643             :                           var_units="m/s (kg/kg) K", l_silhs=.false., &
        3644           0 :                           grid_kind=stats_zt )
        3645           0 :         k = k + 1
        3646             :
        3647             :       case ( 'coef_wp2rtp_implicit' )
        3648           0 :         stats_metadata%icoef_wp2rtp_implicit = k
        3649             :         call stat_assign( var_index=stats_metadata%icoef_wp2rtp_implicit, &
        3650             :                           var_name="coef_wp2rtp_implicit", &
        3651             :                           var_description="coef_wp2rtp_implicit, wp2rtp" &
        3652             :                                           // " = coef_wp2rtp_implicit" &
        3653             :                                           // " * wprtp" &
        3654             :                                           // " + term_wp2rtp_explicit", &
        3655           0 :                           var_units="m/s", l_silhs=.false., grid_kind=stats_zt )
        3656           0 :         k = k + 1
        3657             :
        3658             :       case ( 'term_wp2rtp_explicit' )
        3659           0 :         stats_metadata%iterm_wp2rtp_explicit = k
        3660             :         call stat_assign( var_index=stats_metadata%iterm_wp2rtp_explicit, &
        3661             :                           var_name="term_wp2rtp_explicit", &
        3662             :                           var_description="term_wp2rtp_explicit, wp2rtp" &
        3663             :                                           // " = coef_wp2rtp_implicit" &
        3664             :                                           // " * wprtp" &
        3665             :                                           // " + term_wp2rtp_explicit", &
        3666             :                           var_units="m^2/s^2 kg/kg", l_silhs=.false., &
        3667           0 :                           grid_kind=stats_zt )
        3668           0 :         k = k + 1
        3669             :
        3670             :       case ( 'coef_wp2thlp_implicit' )
        3671           0 :         stats_metadata%icoef_wp2thlp_implicit = k
        3672             :         call stat_assign( var_index=stats_metadata%icoef_wp2thlp_implicit, &
        3673             :                           var_name="coef_wp2thlp_implicit", &
        3674             :                           var_description="coef_wp2thlp_implicit, wp2thlp" &
        3675             :                                           // " = coef_wp2thlp_implicit" &
        3676             :                                           // " * wpthlp" &
        3677             :                                           // " + term_wp2thlp_explicit", &
        3678           0 :                           var_units="m/s", l_silhs=.false., grid_kind=stats_zt )
        3679           0 :         k = k + 1
        3680             :
        3681             :       case ( 'term_wp2thlp_explicit' )
        3682           0 :         stats_metadata%iterm_wp2thlp_explicit = k
        3683             :         call stat_assign( var_index=stats_metadata%iterm_wp2thlp_explicit, &
        3684             :                           var_name="term_wp2thlp_explicit", &
        3685             :                           var_description="term_wp2thlp_explicit, wp2thlp" &
        3686             :                                           // " = coef_wp2thlp_implicit" &
        3687             :                                           // " * wpthlp" &
        3688             :                                           // " + term_wp2thlp_explicit", &
        3689             :                           var_units="m^2/s^2 K", l_silhs=.false., &
        3690           0 :                           grid_kind=stats_zt )
        3691           0 :         k = k + 1
        3692             :
        3693             :       case('wp2_zt')
        3694           0 :         stats_metadata%iwp2_zt = k
        3695             :
        3696             :         call stat_assign( var_index=stats_metadata%iwp2_zt, var_name="wp2_zt", &
        3697             :              var_description="wp2_zt, w'^2 interpolated to thermodynamic levels", &
        3698           0 :              var_units="m^2/s^2", l_silhs=.false., grid_kind=stats_zt )
        3699           0 :         k = k + 1
        3700             :
        3701             :       case('thlp2_zt')
        3702           0 :         stats_metadata%ithlp2_zt = k
        3703             :
        3704             :         call stat_assign( var_index=stats_metadata%ithlp2_zt, var_name="thlp2_zt", &
        3705             :              var_description="thlp2_zt, thl'^2 interpolated to thermodynamic levels", &
        3706           0 :              var_units="K^2", l_silhs=.false., grid_kind=stats_zt )
        3707           0 :         k = k + 1
        3708             :
        3709             :       case('wpthlp_zt')
        3710           0 :         stats_metadata%iwpthlp_zt = k
        3711             :
        3712             :         call stat_assign( var_index=stats_metadata%iwpthlp_zt, var_name="wpthlp_zt", &
        3713             :              var_description="wpthlp_zt, w'thl' interpolated to thermodynamic levels", &
        3714           0 :              var_units="(m K)/s", l_silhs=.false., grid_kind=stats_zt )
        3715           0 :         k = k + 1
        3716             :
        3717             :       case('wprtp_zt')
        3718           0 :         stats_metadata%iwprtp_zt = k
        3719             :
        3720             :         call stat_assign( var_index=stats_metadata%iwprtp_zt, var_name="wprtp_zt", &
        3721             :              var_description="wprtp_zt, w'rt' interpolated to thermodynamic levels", &
        3722           0 :              var_units="(m kg)/(s kg)", l_silhs=.false., grid_kind=stats_zt )
        3723           0 :         k = k + 1
        3724             :
        3725             :       case('rtp2_zt')
        3726           0 :         stats_metadata%irtp2_zt = k
        3727             :
        3728             :         call stat_assign( var_index=stats_metadata%irtp2_zt, var_name="rtp2_zt", &
        3729             :              var_description="rtp2_zt, rt'^2 interpolated to thermodynamic levels", &
        3730           0 :              var_units="(kg/kg)^2", l_silhs=.false., grid_kind=stats_zt )
        3731           0 :         k = k + 1
        3732             :
        3733             :       case('rtpthlp_zt')
        3734           0 :         stats_metadata%irtpthlp_zt = k
        3735             :
        3736             :         call stat_assign( var_index=stats_metadata%irtpthlp_zt, var_name="rtpthlp_zt", &
        3737             :              var_description="rtpthlp_zt, rt'thl' interpolated to thermodynamic levels", &
        3738           0 :              var_units="(kg K)/kg", l_silhs=.false., grid_kind=stats_zt )
        3739           0 :         k = k + 1
        3740             :
        3741             :       case ('up2_zt')
        3742           0 :         stats_metadata%iup2_zt = k
        3743             :         call stat_assign( var_index=stats_metadata%iup2_zt, var_name="up2_zt", &
        3744             :              var_description="up2_zt, u'^2 interpolated to thermodynamic levels", &
        3745           0 :              var_units="m^2/s^2", l_silhs=.false., grid_kind=stats_zt )
        3746           0 :         k = k + 1
        3747             :
        3748             :       case ('vp2_zt')
        3749           0 :         stats_metadata%ivp2_zt = k
        3750             :         call stat_assign( var_index=stats_metadata%ivp2_zt, var_name="vp2_zt", &
        3751             :              var_description="vp2_zt, v'^2 interpolated to thermodynamic levels", &
        3752           0 :              var_units="m^2/s^2", l_silhs=.false., grid_kind=stats_zt )
        3753           0 :         k = k + 1
        3754             :
        3755             :       case ('upwp_zt')
        3756           0 :         stats_metadata%iupwp_zt = k
        3757             :         call stat_assign( var_index=stats_metadata%iupwp_zt, var_name="upwp_zt", &
        3758             :              var_description="upwp_zt, u'w' interpolated to thermodynamic levels", &
        3759           0 :              var_units="m^2/s^2", l_silhs=.false., grid_kind=stats_zt )
        3760           0 :         k = k + 1
        3761             :
        3762             :       case ('vpwp_zt')
        3763           0 :         stats_metadata%ivpwp_zt = k
        3764             :         call stat_assign( var_index=stats_metadata%ivpwp_zt, var_name="vpwp_zt", &
        3765             :              var_description="vpwp_zt, v'w' interpolated to thermodynamic levels", &
        3766           0 :              var_units="m^2/s^2", l_silhs=.false., grid_kind=stats_zt )
        3767           0 :         k = k + 1
        3768             :
        3769             :       case ('Skw_zt')
        3770           0 :         stats_metadata%iSkw_zt = k
        3771             :         call stat_assign( var_index=stats_metadata%iSkw_zt, var_name="Skw_zt", &
        3772             :              var_description="Skw_zt, Skewness of w on thermodynamic levels", &
        3773           0 :              var_units="-", l_silhs=.false., grid_kind=stats_zt )
        3774           0 :         k = k + 1
        3775             :
        3776             :       case ('Skthl_zt')
        3777           0 :         stats_metadata%iSkthl_zt = k
        3778             :         call stat_assign( var_index=stats_metadata%iSkthl_zt, var_name="Skthl_zt", &
        3779             :              var_description="Skthl_zt, Skewness of thl on thermodynamic levels", &
        3780           0 :              var_units="-", l_silhs=.false., grid_kind=stats_zt )
        3781           0 :         k = k + 1
        3782             :
        3783             :       case ('Skrt_zt')
        3784           0 :         stats_metadata%iSkrt_zt = k
        3785             :         call stat_assign( var_index=stats_metadata%iSkrt_zt, var_name="Skrt_zt", &
        3786             :              var_description="Skrt_zt, Skewness of rt on thermodynamic levels", &
        3787           0 :              var_units="-", l_silhs=.false., grid_kind=stats_zt )
        3788           0 :         k = k + 1
        3789             :
        3790             :       case ('rcm_supersat_adj')
        3791           0 :         stats_metadata%ircm_supersat_adj = k
        3792             :         call stat_assign( var_index=stats_metadata%ircm_supersat_adj, var_name="rcm_supersat_adj", &
        3793             :              var_description="rcm_supersat_adj, rcm adjustment due to spurious supersaturation", &
        3794           0 :              var_units="kg/kg", l_silhs=.false., grid_kind=stats_zt )
        3795           0 :         k = k + 1
        3796             :
        3797             :       ! Hydrometeor overall variances for each hydrometeor type.
        3798             :       case('hmp2_zt')
        3799             :
        3800           0 :          do hm_idx = 1, hydromet_dim, 1
        3801             :
        3802           0 :             hm_type = hydromet_list(hm_idx)
        3803             :
        3804             :             ! The overall variance of the hydrometeor.
        3805           0 :             stats_metadata%ihmp2_zt(hm_idx) = k
        3806             :
        3807           0 :             if ( l_mix_rat_hm(hm_idx) ) then
        3808             :
        3809           0 :                call stat_assign( var_index=stats_metadata%ihmp2_zt(hm_idx), &
        3810             :                                  var_name=trim( hm_type(1:2) )//"p2_zt", &
        3811             :                                  var_description="<" &
        3812             :                                  // hm_type(1:1)//"_"//trim( hm_type(2:2) ) &
        3813             :                                  // "'^2> on thermodynamic levels (from " &
        3814             :                                  // "integration over PDF) [(kg/kg)^2]", &
        3815             :                                  var_units="(kg/kg)^2", &
        3816           0 :                                  l_silhs=.false., grid_kind=stats_zt )
        3817             :
        3818             :             else ! Concentration
        3819             :
        3820           0 :                call stat_assign( var_index=stats_metadata%ihmp2_zt(hm_idx), &
        3821             :                                  var_name=trim( hm_type(1:2) )//"p2_zt", &
        3822             :                                  var_description="<" &
        3823             :                                  // hm_type(1:1)//"_"//trim( hm_type(2:2) ) &
        3824             :                                  // "'^2> on thermodynamic levels (from " &
        3825             :                                  // "integration over PDF) [(num/kg)^2]", &
        3826             :                                  var_units="(num/kg)^2", &
        3827           0 :                                  l_silhs=.false., grid_kind=stats_zt )
        3828             :
        3829             :             endif ! l_mix_rat_hm(hm_idx)
        3830             :
        3831           0 :             k = k + 1
        3832             :
        3833             :          enddo ! hm_idx = 1, hydromet_dim, 1
        3834             :
        3835             :       case ('C11_Skw_fnc')
        3836           0 :         stats_metadata%iC11_Skw_fnc = k
        3837             :
        3838             :         call stat_assign( var_index=stats_metadata%iC11_Skw_fnc, var_name="C11_Skw_fnc", &
        3839             :              var_description="C11_Skw_fnc, C_11 parameter with Sk_w applied", var_units="count", &
        3840           0 :              l_silhs=.false., grid_kind=stats_zt )
        3841           0 :         k = k + 1
        3842             :
        3843             :       case ('chi')
        3844           0 :         stats_metadata%ichi = k
        3845             :
        3846             :         call stat_assign( var_index=stats_metadata%ichi, var_name="chi", &
        3847             :              var_description="chi, Mellor's s (extended liq)", var_units="kg/kg", &
        3848           0 :              l_silhs=.false., grid_kind=stats_zt )
        3849           0 :         k = k + 1
        3850             :
        3851             :       case ( 'a3_coef_zt' )
        3852           0 :         stats_metadata%ia3_coef_zt = k
        3853             :         call stat_assign( var_index=stats_metadata%ia3_coef_zt, var_name="a3_coef_zt", &
        3854             :              var_description="a3_coef_zt, The a3 coefficient interpolated the the zt grid", &
        3855           0 :              var_units="count", l_silhs=.false., grid_kind=stats_zt )
        3856           0 :         k = k + 1
        3857             :
        3858             :       case ( 'wp3_on_wp2_zt' )
        3859           0 :         stats_metadata%iwp3_on_wp2_zt = k
        3860             :         call stat_assign( var_index=stats_metadata%iwp3_on_wp2_zt, var_name="wp3_on_wp2_zt", &
        3861             :              var_description="wp3_on_wp2_zt, Smoothed version of wp3 / wp2", var_units="m/s", &
        3862           0 :              l_silhs=.false., grid_kind=stats_zt )
        3863           0 :         k = k + 1
        3864             :
        3865             :       ! Hydrometeor component mean values for each PDF component and hydrometeor
        3866             :       ! type.
        3867             :       case ( "hm_i" )
        3868             :
        3869           0 :          do hm_idx = 1, hydromet_dim, 1
        3870             :
        3871           0 :             hm_type = hydromet_list(hm_idx)
        3872             :
        3873             :             ! The mean of the hydrometeor in the 1st PDF component.
        3874           0 :             stats_metadata%ihm_1(hm_idx) = k
        3875             :
        3876           0 :             if ( l_mix_rat_hm(hm_idx) ) then
        3877             :
        3878           0 :                call stat_assign( var_index=stats_metadata%ihm_1(hm_idx), &
        3879             :                                  var_name=trim( hm_type(1:2) )//"_1", &
        3880             :                                  var_description="Mean of " &
        3881             :                                  // hm_type(1:1)//"_"//trim( hm_type(2:2) ) &
        3882             :                                  // " (1st PDF component) [kg/kg]", &
        3883             :                                  var_units="kg/kg", &
        3884           0 :                                  l_silhs=.false., grid_kind=stats_zt )
        3885             :
        3886             :             else ! Concentration
        3887             :
        3888           0 :                call stat_assign( var_index=stats_metadata%ihm_1(hm_idx), &
        3889             :                                  var_name=trim( hm_type(1:2) )//"_1", &
        3890             :                                  var_description="Mean of " &
        3891             :                                  // hm_type(1:1)//"_"//trim( hm_type(2:2) ) &
        3892             :                                  // " (1st PDF component) [num/kg]", &
        3893             :                                  var_units="num/kg", &
        3894           0 :                                  l_silhs=.false., grid_kind=stats_zt )
        3895             :
        3896             :             endif ! l_mix_rat_hm(hm_idx)
        3897             :
        3898           0 :             k = k + 1
        3899             :
        3900             :             ! The mean of the hydrometeor in the 2nd PDF component.
        3901           0 :             stats_metadata%ihm_2(hm_idx) = k
        3902             :
        3903           0 :             if ( l_mix_rat_hm(hm_idx) ) then
        3904             :
        3905           0 :                call stat_assign( var_index=stats_metadata%ihm_2(hm_idx), &
        3906             :                                  var_name=trim( hm_type(1:2) )//"_2", &
        3907             :                                  var_description="Mean of " &
        3908             :                                  // hm_type(1:1)//"_"//trim( hm_type(2:2) ) &
        3909             :                                  // " (2nd PDF component) [kg/kg]", &
        3910             :                                  var_units="kg/kg", &
        3911           0 :                                  l_silhs=.false., grid_kind=stats_zt )
        3912             :
        3913             :             else ! Concentration
        3914             :
        3915           0 :                call stat_assign( var_index=stats_metadata%ihm_2(hm_idx), &
        3916             :                                  var_name=trim( hm_type(1:2) )//"_2", &
        3917             :                                  var_description="Mean of " &
        3918             :                                  // hm_type(1:1)//"_"//trim( hm_type(2:2) ) &
        3919             :                                  // " (2nd PDF component) [num/kg]", &
        3920             :                                  var_units="num/kg", &
        3921           0 :                                  l_silhs=.false., grid_kind=stats_zt )
        3922             :
        3923             :             endif ! l_mix_rat_hm(hm_idx)
        3924             :
        3925           0 :             k = k + 1
        3926             :
        3927             :          enddo ! hm_idx = 1, hydromet_dim, 1
        3928             :
        3929             :       case ( 'precip_frac' )
        3930           0 :         stats_metadata%iprecip_frac = k
        3931             :         call stat_assign( var_index=stats_metadata%iprecip_frac, var_name="precip_frac", &
        3932             :              var_description="precip_frac, Precipitation Fraction", var_units="-", &
        3933           0 :              l_silhs=.false., grid_kind=stats_zt )
        3934           0 :         k = k + 1
        3935             :
        3936             :       case ( 'precip_frac_1' )
        3937           0 :         stats_metadata%iprecip_frac_1 = k
        3938             :         call stat_assign( var_index=stats_metadata%iprecip_frac_1, var_name="precip_frac_1", &
        3939             :              var_description="precip_frac_1, Precipitation Fraction (1st PDF component)", &
        3940           0 :              var_units="-", l_silhs=.false., grid_kind=stats_zt )
        3941           0 :         k = k + 1
        3942             :
        3943             :       case ( 'precip_frac_2' )
        3944           0 :         stats_metadata%iprecip_frac_2 = k
        3945             :         call stat_assign( var_index=stats_metadata%iprecip_frac_2, var_name="precip_frac_2", &
        3946             :              var_description="precip_frac_2, Precipitation Fraction (2nd PDF component)", &
        3947           0 :              var_units="-", l_silhs=.false., grid_kind=stats_zt )
        3948           0 :         k = k + 1
        3949             :
        3950             :       case ( 'Ncnm' )
        3951           0 :         stats_metadata%iNcnm = k
        3952             :         call stat_assign( var_index=stats_metadata%iNcnm, var_name="Ncnm", &
        3953             :              var_description="Ncnm, Cloud nuclei concentration (PDF)", &
        3954           0 :              var_units="num/kg", l_silhs=.false., grid_kind=stats_zt )
        3955           0 :         k = k + 1
        3956             :
        3957             :       ! Hydrometeor component mean values (in-precip) for each PDF component and
        3958             :       ! hydrometeor type.
        3959             :       case ( 'mu_hm_i' )
        3960             :
        3961           0 :          do hm_idx = 1, hydromet_dim, 1
        3962             :
        3963           0 :             hm_type = hydromet_list(hm_idx)
        3964             :
        3965             :             ! The in-precip mean of the hydrometeor in the 1st PDF component.
        3966           0 :             stats_metadata%imu_hm_1(hm_idx) = k
        3967             :
        3968           0 :             if ( l_mix_rat_hm(hm_idx) ) then
        3969             :
        3970           0 :                call stat_assign( var_index=stats_metadata%imu_hm_1(hm_idx), &
        3971             :                                  var_name="mu_"//trim( hm_type(1:2) )//"_1", &
        3972             :                                  var_description="Mean (in-precip) of " &
        3973             :                                  // hm_type(1:1)//"_"//trim( hm_type(2:2) ) &
        3974             :                                  // " (1st PDF component) [kg/kg]", &
        3975             :                                  var_units="kg/kg", &
        3976           0 :                                  l_silhs=.false., grid_kind=stats_zt )
        3977             :
        3978             :             else ! Concentration
        3979             :
        3980           0 :                call stat_assign( var_index=stats_metadata%imu_hm_1(hm_idx), &
        3981             :                                  var_name="mu_"//trim( hm_type(1:2) )//"_1", &
        3982             :                                  var_description="Mean (in-precip) of " &
        3983             :                                  // hm_type(1:1)//"_"//trim( hm_type(2:2) ) &
        3984             :                                  // " (1st PDF component) [num/kg]", &
        3985             :                                  var_units="num/kg", &
        3986           0 :                                  l_silhs=.false., grid_kind=stats_zt )
        3987             :
        3988             :             endif ! l_mix_rat_hm(hm_idx)
        3989             :
        3990           0 :             k = k + 1
        3991             :
        3992             :             ! The in-precip mean of the hydrometeor in the 2nd PDF component.
        3993           0 :             stats_metadata%imu_hm_2(hm_idx) = k
        3994             :
        3995           0 :             if ( l_mix_rat_hm(hm_idx) ) then
        3996             :
        3997           0 :                call stat_assign( var_index=stats_metadata%imu_hm_2(hm_idx), &
        3998             :                                  var_name="mu_"//trim( hm_type(1:2) )//"_2", &
        3999             :                                  var_description="Mean (in-precip) of " &
        4000             :                                  // hm_type(1:1)//"_"//trim( hm_type(2:2) ) &
        4001             :                                  // " (2nd PDF component) [kg/kg]", &
        4002             :                                  var_units="kg/kg", &
        4003           0 :                                  l_silhs=.false., grid_kind=stats_zt )
        4004             :
        4005             :             else ! Concentration
        4006             :
        4007           0 :                call stat_assign( var_index=stats_metadata%imu_hm_2(hm_idx), &
        4008             :                                  var_name="mu_"//trim( hm_type(1:2) )//"_2", &
        4009             :                                  var_description="Mean (in-precip) of " &
        4010             :                                  // hm_type(1:1)//"_"//trim( hm_type(2:2) ) &
        4011             :                                  // " (2nd PDF component) [num/kg]", &
        4012             :                                  var_units="num/kg", &
        4013           0 :                                  l_silhs=.false., grid_kind=stats_zt )
        4014             :
        4015             :             endif ! l_mix_rat_hm(hm_idx)
        4016             :
        4017           0 :             k = k + 1
        4018             :
        4019             :          enddo ! hm_idx = 1, hydromet_dim, 1
        4020             :
        4021             :       case ( 'mu_Ncn_i' )
        4022           0 :         stats_metadata%imu_Ncn_1 = k
        4023             :
        4024             :          call stat_assign( var_index=stats_metadata%imu_Ncn_1, &
        4025             :                            var_name="mu_Ncn_1", &
        4026             :                            var_description="mu_Ncn_1, Mean of N_cn (1st PDF component) " &
        4027             :                            // "[num/kg]", var_units="num/kg", &
        4028           0 :                            l_silhs=.false., grid_kind=stats_zt )
        4029             :
        4030           0 :          k = k + 1
        4031             :
        4032           0 :          stats_metadata%imu_Ncn_2 = k
        4033             :
        4034             :          call stat_assign( var_index=stats_metadata%imu_Ncn_2, &
        4035             :                            var_name="mu_Ncn_2", &
        4036             :                            var_description="mu_Ncn_2, Mean of N_cn (2nd PDF component)", &
        4037             :                            var_units="num/kg", &
        4038           0 :                            l_silhs=.false., grid_kind=stats_zt )
        4039             :
        4040           0 :          k = k + 1
        4041             :
        4042             :       ! Hydrometeor component mean values (in-precip) for ln hm for each PDF
        4043             :       ! component and hydrometeor type.
        4044             :       case ( 'mu_hm_i_n' )
        4045             :
        4046           0 :          do hm_idx = 1, hydromet_dim, 1
        4047             :
        4048           0 :             hm_type = hydromet_list(hm_idx)
        4049             :
        4050             :             ! The in-precip mean of ln hm in the 1st PDF component.
        4051           0 :             stats_metadata%imu_hm_1_n(hm_idx) = k
        4052             :
        4053           0 :             if ( l_mix_rat_hm(hm_idx) ) then
        4054             :
        4055           0 :                call stat_assign( var_index=stats_metadata%imu_hm_1_n(hm_idx), &
        4056             :                                  var_name="mu_"//trim( hm_type(1:2) )//"_1_n", &
        4057             :                                  var_description="Mean (in-precip) of ln " &
        4058             :                                  // hm_type(1:1)//"_"//trim( hm_type(2:2) ) &
        4059             :                                  // " (1st PDF component) [ln(kg/kg)]", &
        4060             :                                  var_units="ln(kg/kg)", &
        4061           0 :                                  l_silhs=.false., grid_kind=stats_zt )
        4062             :
        4063             :             else ! Concentration
        4064             :
        4065           0 :                call stat_assign( var_index=stats_metadata%imu_hm_1_n(hm_idx), &
        4066             :                                  var_name="mu_"//trim( hm_type(1:2) )//"_1_n", &
        4067             :                                  var_description="Mean (in-precip) of ln " &
        4068             :                                  // hm_type(1:1)//"_"//trim( hm_type(2:2) ) &
        4069             :                                  // " (1st PDF component) [ln(num/kg)]", &
        4070             :                                  var_units="ln(num/kg)", &
        4071           0 :                                  l_silhs=.false., grid_kind=stats_zt )
        4072             :
        4073             :             endif ! l_mix_rat_hm(hm_idx)
        4074             :
        4075           0 :             k = k + 1
        4076             :
        4077             :             ! The in-precip mean of ln hm in the 2nd PDF component.
        4078           0 :             stats_metadata%imu_hm_2_n(hm_idx) = k
        4079             :
        4080           0 :             if ( l_mix_rat_hm(hm_idx) ) then
        4081             :
        4082           0 :                call stat_assign( var_index=stats_metadata%imu_hm_2_n(hm_idx), &
        4083             :                                  var_name="mu_"//trim( hm_type(1:2) )//"_2_n", &
        4084             :                                  var_description="Mean (in-precip) of ln " &
        4085             :                                  // hm_type(1:1)//"_"//trim( hm_type(2:2) ) &
        4086             :                                  // " (2nd PDF component) [ln(kg/kg)]", &
        4087             :                                  var_units="ln(kg/kg)", &
        4088           0 :                                  l_silhs=.false., grid_kind=stats_zt )
        4089             :
        4090             :             else ! Concentration
        4091             :
        4092           0 :                call stat_assign( var_index=stats_metadata%imu_hm_2_n(hm_idx), &
        4093             :                                  var_name="mu_"//trim( hm_type(1:2) )//"_2_n", &
        4094             :                                  var_description="Mean (in-precip) of ln " &
        4095             :                                  // hm_type(1:1)//"_"//trim( hm_type(2:2) ) &
        4096             :                                  // " (2nd PDF component) [ln(num/kg)]", &
        4097             :                                  var_units="ln(num/kg)", &
        4098           0 :                                  l_silhs=.false., grid_kind=stats_zt )
        4099             :
        4100             :             endif ! l_mix_rat_hm(hm_idx)
        4101             :
        4102           0 :             k = k + 1
        4103             :
        4104             :          enddo ! hm_idx = 1, hydromet_dim, 1
        4105             :
        4106             :       case ( 'mu_Ncn_i_n' )
        4107             :
        4108           0 :          stats_metadata%imu_Ncn_1_n = k
        4109             :
        4110             :          call stat_assign( var_index=stats_metadata%imu_Ncn_1_n, &
        4111             :                            var_name="mu_Ncn_1_n", &
        4112             :                            var_description="mu_Ncn_1_n, Mean of ln N_cn " &
        4113             :                            // "(1st PDF component)", &
        4114             :                            var_units="ln(num/kg)", &
        4115           0 :                            l_silhs=.false., grid_kind=stats_zt )
        4116             :
        4117           0 :          k = k + 1
        4118             :
        4119           0 :          stats_metadata%imu_Ncn_2_n = k
        4120             :
        4121             :          call stat_assign( var_index=stats_metadata%imu_Ncn_2_n, &
        4122             :                            var_name="mu_Ncn_2_n", &
        4123             :                            var_description="mu_Ncn_2_n, Mean of ln N_cn " &
        4124             :                            // "(2nd PDF component)", &
        4125             :                            var_units="ln(num/kg)", &
        4126           0 :                            l_silhs=.false., grid_kind=stats_zt )
        4127             :
        4128           0 :          k = k + 1
        4129             :
        4130             :       ! Hydrometeor component standard deviations (in-precip) for each PDF
        4131             :       ! component and hydrometeor type.
        4132             :       case ( 'sigma_hm_i' )
        4133             :
        4134           0 :          do hm_idx = 1, hydromet_dim, 1
        4135             :
        4136           0 :             hm_type = hydromet_list(hm_idx)
        4137             :
        4138             :             ! The in-precip standard deviation of the hydrometeor in the 1st PDF
        4139             :             ! component.
        4140           0 :             stats_metadata%isigma_hm_1(hm_idx) = k
        4141             :
        4142           0 :             if ( l_mix_rat_hm(hm_idx) ) then
        4143             :
        4144           0 :                call stat_assign( var_index=stats_metadata%isigma_hm_1(hm_idx), &
        4145             :                                  var_name="sigma_" &
        4146             :                                  // trim( hm_type(1:2) )//"_1", &
        4147             :                                  var_description="Standard deviation " &
        4148             :                                  // "(in-precip) of " &
        4149             :                                  // hm_type(1:1)//"_"//trim( hm_type(2:2) ) &
        4150             :                                  // " (1st PDF component) [kg/kg]", &
        4151             :                                  var_units="kg/kg", &
        4152           0 :                                  l_silhs=.false., grid_kind=stats_zt )
        4153             :
        4154             :             else ! Concentration
        4155             :
        4156           0 :                call stat_assign( var_index=stats_metadata%isigma_hm_1(hm_idx), &
        4157             :                                  var_name="sigma_" &
        4158             :                                  // trim( hm_type(1:2) )//"_1", &
        4159             :                                  var_description="Standard deviation " &
        4160             :                                  // "(in-precip) of " &
        4161             :                                  // hm_type(1:1)//"_"//trim( hm_type(2:2) ) &
        4162             :                                  // " (1st PDF component) [num/kg]", &
        4163             :                                  var_units="num/kg", &
        4164           0 :                                  l_silhs=.false., grid_kind=stats_zt )
        4165             :
        4166             :             endif ! l_mix_rat_hm(hm_idx)
        4167             :
        4168           0 :             k = k + 1
        4169             :
        4170             :             ! The in-precip standard deviation of the hydrometeor in the 2nd PDF
        4171             :             ! component.
        4172           0 :             stats_metadata%isigma_hm_2(hm_idx) = k
        4173             :
        4174           0 :             if ( l_mix_rat_hm(hm_idx) ) then
        4175             :
        4176           0 :                call stat_assign( var_index=stats_metadata%isigma_hm_2(hm_idx), &
        4177             :                                  var_name="sigma_" &
        4178             :                                  // trim( hm_type(1:2) )//"_2", &
        4179             :                                  var_description="Standard deviation " &
        4180             :                                  // "(in-precip) of " &
        4181             :                                  // hm_type(1:1)//"_"//trim( hm_type(2:2) ) &
        4182             :                                  // " (2nd PDF component) [kg/kg]", &
        4183             :                                  var_units="kg/kg", &
        4184           0 :                                  l_silhs=.false., grid_kind=stats_zt )
        4185             :
        4186             :             else ! Concentration
        4187             :
        4188           0 :                call stat_assign( var_index=stats_metadata%isigma_hm_2(hm_idx), &
        4189             :                                  var_name="sigma_" &
        4190             :                                  // trim( hm_type(1:2) )//"_2", &
        4191             :                                  var_description="Standard deviation " &
        4192             :                                  // "(in-precip) of " &
        4193             :                                  // hm_type(1:1)//"_"//trim( hm_type(2:2) ) &
        4194             :                                  // " (2nd PDF component) [num/kg]", &
        4195             :                                  var_units="num/kg", &
        4196           0 :                                  l_silhs=.false., grid_kind=stats_zt )
        4197             :
        4198             :             endif ! l_mix_rat_hm(hm_idx)
        4199             :
        4200           0 :             k = k + 1
        4201             :
        4202             :          enddo ! hm_idx = 1, hydromet_dim, 1
        4203             :
        4204             :       case ( 'sigma_Ncn_i' )
        4205             :
        4206           0 :          stats_metadata%isigma_Ncn_1 = k
        4207             :
        4208             :          call stat_assign( var_index=stats_metadata%isigma_Ncn_1, &
        4209             :                            var_name="sigma_Ncn_1", &
        4210             :                            var_description="sigma_Ncn_1, Standard deviation of N_cn " &
        4211             :                            // "(1st PDF component)", &
        4212           0 :                            var_units="num/kg", l_silhs=.false., grid_kind=stats_zt )
        4213             :
        4214           0 :          k = k + 1
        4215             :
        4216           0 :          stats_metadata%isigma_Ncn_2 = k
        4217             :
        4218             :          call stat_assign( var_index=stats_metadata%isigma_Ncn_2, &
        4219             :                            var_name="sigma_Ncn_2", &
        4220             :                            var_description="sigma_Ncn_2, Standard deviation of N_cn " &
        4221             :                            // "(2nd PDF component)", &
        4222           0 :                            var_units="num/kg", l_silhs=.false., grid_kind=stats_zt )
        4223             :
        4224           0 :          k = k + 1
        4225             :
        4226             :       ! Hydrometeor component standard deviations (in-precip) for ln hm for each
        4227             :       ! PDF component and hydrometeor type.
        4228             :       case ( 'sigma_hm_i_n' )
        4229             :
        4230           0 :          do hm_idx = 1, hydromet_dim, 1
        4231             :
        4232           0 :             hm_type = hydromet_list(hm_idx)
        4233             :
        4234             :             ! The in-precip standard deviation of ln hm in the 1st PDF
        4235             :             ! component.
        4236           0 :             stats_metadata%isigma_hm_1_n(hm_idx) = k
        4237             :
        4238           0 :             call stat_assign( var_index=stats_metadata%isigma_hm_1_n(hm_idx), &
        4239             :                               var_name="sigma_" &
        4240             :                               // trim( hm_type(1:2) )//"_1_n", &
        4241             :                               var_description="Standard deviation " &
        4242             :                               // "(in-precip) of ln " &
        4243             :                               // hm_type(1:1)//"_"//trim( hm_type(2:2) ) &
        4244             :                               // " (1st PDF component) [-]", &
        4245             :                               var_units="-", &
        4246           0 :                               l_silhs=.false., grid_kind=stats_zt )
        4247             :
        4248           0 :             k = k + 1
        4249             :
        4250             :             ! The in-precip standard deviation of ln hm in the 2nd PDF
        4251             :             ! component.
        4252           0 :             stats_metadata%isigma_hm_2_n(hm_idx) = k
        4253             :
        4254           0 :             call stat_assign( var_index=stats_metadata%isigma_hm_2_n(hm_idx), &
        4255             :                               var_name="sigma_" &
        4256             :                               // trim( hm_type(1:2) )//"_2_n", &
        4257             :                               var_description="Standard deviation " &
        4258             :                               // "(in-precip) of ln " &
        4259             :                               // hm_type(1:1)//"_"//trim( hm_type(2:2) ) &
        4260             :                               // " (2nd PDF component) [-]", &
        4261             :                               var_units="-", &
        4262           0 :                               l_silhs=.false., grid_kind=stats_zt )
        4263             :
        4264           0 :             k = k + 1
        4265             :
        4266             :          enddo ! hm_idx = 1, hydromet_dim, 1
        4267             :
        4268             :       case ( 'sigma_Ncn_i_n' )
        4269           0 :         stats_metadata%isigma_Ncn_1_n = k
        4270             :
        4271             :          call stat_assign( var_index=stats_metadata%isigma_Ncn_1_n, &
        4272             :                            var_name="sigma_Ncn_1_n", &
        4273             :                            var_description="sigma_Ncn_1_n, Standard deviation of ln N_cn " &
        4274             :                            // "(1st PDF component)", &
        4275           0 :                            var_units="-", l_silhs=.false., grid_kind=stats_zt )
        4276             :
        4277           0 :          k = k + 1
        4278             :
        4279           0 :          stats_metadata%isigma_Ncn_2_n = k
        4280             :
        4281             :          call stat_assign( var_index=stats_metadata%isigma_Ncn_2_n, &
        4282             :                            var_name="sigma_Ncn_2_n", &
        4283             :                            var_description="sigma_Ncn_2_n, Standard deviation of ln N_cn " &
        4284             :                            // "(2nd PDF component)", &
        4285           0 :                            var_units="-", l_silhs=.false., grid_kind=stats_zt )
        4286             :
        4287           0 :          k = k + 1
        4288             :
        4289             :       case ('corr_w_chi_1_ca')
        4290           0 :         stats_metadata%icorr_w_chi_1_ca = k
        4291             :
        4292             :         call stat_assign( var_index=stats_metadata%icorr_w_chi_1_ca, &
        4293             :                           var_name="corr_w_chi_1_ca", &
        4294             :                           var_description="corr_w_chi_1_ca, Correlation of w and chi" &
        4295             :                           // " (1st PDF component) found in the correlation" &
        4296             :                           // " array", var_units="-", &
        4297           0 :                           l_silhs=.false., grid_kind=stats_zt )
        4298           0 :         k = k + 1
        4299             :
        4300             :       case ('corr_w_chi_2_ca')
        4301           0 :         stats_metadata%icorr_w_chi_2_ca = k
        4302             :
        4303             :         call stat_assign( var_index=stats_metadata%icorr_w_chi_2_ca, &
        4304             :                           var_name="corr_w_chi_2_ca", &
        4305             :                           var_description="corr_w_chi_2_ca, Correlation of w and chi" &
        4306             :                           // " (2nd PDF component) found in the correlation" &
        4307             :                           // " array", var_units="-", &
        4308           0 :                           l_silhs=.false., grid_kind=stats_zt )
        4309           0 :         k = k + 1
        4310             :
        4311             :       case ('corr_w_eta_1_ca')
        4312           0 :         stats_metadata%icorr_w_eta_1_ca = k
        4313             :
        4314             :         call stat_assign( var_index=stats_metadata%icorr_w_eta_1_ca, &
        4315             :                           var_name="corr_w_eta_1_ca", &
        4316             :                           var_description="corr_w_eta_1_ca, Correlation of w and eta" &
        4317             :                           // " (1st PDF component) found in the correlation" &
        4318             :                           // " array", var_units="-", &
        4319           0 :                           l_silhs=.false., grid_kind=stats_zt )
        4320           0 :         k = k + 1
        4321             :
        4322             :       case ('corr_w_eta_2_ca')
        4323           0 :         stats_metadata%icorr_w_eta_2_ca = k
        4324             :
        4325             :         call stat_assign( var_index=stats_metadata%icorr_w_eta_2_ca, &
        4326             :                           var_name="corr_w_eta_2_ca", &
        4327             :                           var_description="corr_w_eta_2_ca, Correlation of w and eta" &
        4328             :                           // " (2nd PDF component) found in the correlation" &
        4329             :                           // " array", var_units="-", &
        4330           0 :                           l_silhs=.false., grid_kind=stats_zt )
        4331           0 :         k = k + 1
        4332             :
        4333             :       ! Correlation of w and a hydrometeor (in-precip) for each PDF
        4334             :       ! component and hydrometeor type.
        4335             :       case ( 'corr_w_hm_i' )
        4336             :
        4337           0 :          do hm_idx = 1, hydromet_dim, 1
        4338             :
        4339           0 :             hm_type = hydromet_list(hm_idx)
        4340             :
        4341             :             ! The in-precip correlation of w and the hydrometeor in the
        4342             :             ! 1st PDF component.
        4343           0 :             stats_metadata%icorr_w_hm_1(hm_idx) = k
        4344             :
        4345           0 :             call stat_assign( var_index=stats_metadata%icorr_w_hm_1(hm_idx), &
        4346             :                               var_name="corr_w_"//trim( hm_type(1:2) )//"_1", &
        4347             :                               var_description="Correlation (in-precip) " &
        4348             :                               // "of w and " &
        4349             :                               // hm_type(1:1)//"_"//trim( hm_type(2:2) ) &
        4350             :                               // " (1st PDF component) [-]", &
        4351           0 :                               var_units="-", l_silhs=.false., grid_kind=stats_zt )
        4352             :
        4353           0 :             k = k + 1
        4354             :
        4355             :             ! The in-precip correlation of w and the hydrometeor in the
        4356             :             ! 2nd PDF component.
        4357           0 :             stats_metadata%icorr_w_hm_2(hm_idx) = k
        4358             :
        4359           0 :             call stat_assign( var_index=stats_metadata%icorr_w_hm_2(hm_idx), &
        4360             :                               var_name="corr_w_"//trim( hm_type(1:2) )//"_2", &
        4361             :                               var_description="Correlation (in-precip) " &
        4362             :                               // "of w and " &
        4363             :                               // hm_type(1:1)//"_"//trim( hm_type(2:2) ) &
        4364             :                               // " (2nd PDF component) [-]", &
        4365           0 :                               var_units="-", l_silhs=.false., grid_kind=stats_zt )
        4366             :
        4367           0 :             k = k + 1
        4368             :
        4369             :          enddo ! hm_idx = 1, hydromet_dim, 1
        4370             :
        4371             :       case ( 'corr_w_Ncn_i' )
        4372           0 :         stats_metadata%icorr_w_Ncn_1 = k
        4373             :
        4374             :          call stat_assign( var_index=stats_metadata%icorr_w_Ncn_1, &
        4375             :                            var_name="corr_w_Ncn_1", &
        4376             :                            var_description="corr_w_Ncn_1, Correlation of w and N_cn " &
        4377             :                            // "(1st PDF component)", &
        4378           0 :                            var_units="-", l_silhs=.false., grid_kind=stats_zt )
        4379             :
        4380           0 :          k = k + 1
        4381             :
        4382           0 :          stats_metadata%icorr_w_Ncn_2 = k
        4383             :
        4384             :          call stat_assign( var_index=stats_metadata%icorr_w_Ncn_2, &
        4385             :                            var_name="corr_w_Ncn_2", &
        4386             :                            var_description="corr_w_Ncn_2, Correlation of w and N_cn " &
        4387             :                            // "(2nd PDF component)", &
        4388           0 :                            var_units="-", l_silhs=.false., grid_kind=stats_zt )
        4389             :
        4390           0 :          k = k + 1
        4391             :
        4392             :       case ('corr_chi_eta_1_ca')
        4393           0 :         stats_metadata%icorr_chi_eta_1_ca = k
        4394             :
        4395             :         call stat_assign( var_index=stats_metadata%icorr_chi_eta_1_ca, &
        4396             :                           var_name="corr_chi_eta_1_ca", &
        4397             :                           var_description="corr_chi_eta_1_ca, Correlation of chi (s) and" &
        4398             :                           // " eta (t) (1st PDF component) found in the" &
        4399             :                           // " correlation array", var_units="-", &
        4400           0 :                           l_silhs=.false., grid_kind=stats_zt )
        4401           0 :         k = k + 1
        4402             :
        4403             :       case ('corr_chi_eta_2_ca')
        4404           0 :         stats_metadata%icorr_chi_eta_2_ca = k
        4405             :
        4406             :         call stat_assign( var_index=stats_metadata%icorr_chi_eta_2_ca, &
        4407             :                           var_name="corr_chi_eta_2_ca", &
        4408             :                           var_description="corr_chi_eta_2_ca, Correlation of chi (s) and" &
        4409             :                           // " eta (t) (2nd PDF component) found in the" &
        4410             :                           // " correlation array", var_units="-", &
        4411           0 :                           l_silhs=.false., grid_kind=stats_zt )
        4412           0 :         k = k + 1
        4413             :
        4414             :       ! Correlation of chi(s) and a hydrometeor (in-precip) for each PDF
        4415             :       ! component and hydrometeor type.
        4416             :       case ( 'corr_chi_hm_i' )
        4417             :
        4418           0 :          do hm_idx = 1, hydromet_dim, 1
        4419             :
        4420           0 :             hm_type = hydromet_list(hm_idx)
        4421             :
        4422             :             ! The in-precip correlation of chi and the hydrometeor in the
        4423             :             ! 1st PDF component.
        4424           0 :             stats_metadata%icorr_chi_hm_1(hm_idx) = k
        4425             :
        4426           0 :             call stat_assign( var_index=stats_metadata%icorr_chi_hm_1(hm_idx), &
        4427             :                               var_name="corr_chi_"//trim(hm_type(1:2))//"_1", &
        4428             :                               var_description="Correlation (in-precip) " &
        4429             :                               // "of chi (s) and " &
        4430             :                               // hm_type(1:1)//"_"//trim( hm_type(2:2) ) &
        4431             :                               // " (1st PDF component) [-]", &
        4432           0 :                               var_units="-", l_silhs=.false., grid_kind=stats_zt )
        4433             :
        4434           0 :             k = k + 1
        4435             :
        4436             :             ! The in-precip correlation of chi and the hydrometeor in the
        4437             :             ! 2nd PDF component.
        4438           0 :             stats_metadata%icorr_chi_hm_2(hm_idx) = k
        4439             :
        4440           0 :             call stat_assign( var_index=stats_metadata%icorr_chi_hm_2(hm_idx), &
        4441             :                               var_name="corr_chi_"//trim(hm_type(1:2))//"_2", &
        4442             :                               var_description="Correlation (in-precip) " &
        4443             :                               // "of chi (s) and " &
        4444             :                               // hm_type(1:1)//"_"//trim( hm_type(2:2) ) &
        4445             :                               // " (2nd PDF component) [-]", &
        4446           0 :                               var_units="-", l_silhs=.false., grid_kind=stats_zt )
        4447             :
        4448           0 :             k = k + 1
        4449             :
        4450             :          enddo ! hm_idx = 1, hydromet_dim, 1
        4451             :
        4452             :       case ( 'corr_chi_Ncn_i' )
        4453           0 :         stats_metadata%icorr_chi_Ncn_1 = k
        4454             :
        4455             :          call stat_assign( var_index=stats_metadata%icorr_chi_Ncn_1, &
        4456             :                            var_name="corr_chi_Ncn_1", &
        4457             :                            var_description="corr_chi_Ncn_1, Correlation of chi and N_cn " &
        4458             :                            // "(1st PDF component)", &
        4459           0 :                            var_units="-", l_silhs=.false., grid_kind=stats_zt )
        4460             :
        4461           0 :          k = k + 1
        4462             :
        4463           0 :          stats_metadata%icorr_chi_Ncn_2 = k
        4464             :
        4465             :          call stat_assign( var_index=stats_metadata%icorr_chi_Ncn_2, &
        4466             :                            var_name="corr_chi_Ncn_2", &
        4467             :                            var_description="corr_chi_Ncn_2, Correlation of chi and N_cn " &
        4468             :                            // "(2nd PDF component)", &
        4469           0 :                            var_units="-", l_silhs=.false., grid_kind=stats_zt )
        4470             :
        4471           0 :          k = k + 1
        4472             :
        4473             :       ! Correlation of eta(t) and a hydrometeor (in-precip) for each PDF
        4474             :       ! component and hydrometeor type.
        4475             :       case ( 'corr_eta_hm_i' )
        4476             :
        4477           0 :          do hm_idx = 1, hydromet_dim, 1
        4478             :
        4479           0 :             hm_type = hydromet_list(hm_idx)
        4480             :
        4481             :             ! The in-precip correlation of eta and the hydrometeor in the
        4482             :             ! 1st PDF component.
        4483           0 :             stats_metadata%icorr_eta_hm_1(hm_idx) = k
        4484             :
        4485           0 :             call stat_assign( var_index=stats_metadata%icorr_eta_hm_1(hm_idx), &
        4486             :                               var_name="corr_eta_"//trim(hm_type(1:2))//"_1", &
        4487             :                               var_description="Correlation (in-precip) " &
        4488             :                               // "of eta (t) and " &
        4489             :                               // hm_type(1:1)//"_"//trim( hm_type(2:2) ) &
        4490             :                               // " (1st PDF component) [-]", &
        4491           0 :                               var_units="-", l_silhs=.false., grid_kind=stats_zt )
        4492             :
        4493           0 :             k = k + 1
        4494             :
        4495             :             ! The in-precip correlation of eta and the hydrometeor in the
        4496             :             ! 2nd PDF component.
        4497           0 :             stats_metadata%icorr_eta_hm_2(hm_idx) = k
        4498             :
        4499           0 :             call stat_assign( var_index=stats_metadata%icorr_eta_hm_2(hm_idx), &
        4500             :                               var_name="corr_eta_"//trim(hm_type(1:2))//"_2", &
        4501             :                               var_description="Correlation (in-precip) " &
        4502             :                               // "of eta (t) and " &
        4503             :                               // hm_type(1:1)//"_"//trim( hm_type(2:2) ) &
        4504             :                               // " (2nd PDF component) [-]", &
        4505           0 :                               var_units="-", l_silhs=.false., grid_kind=stats_zt )
        4506             :
        4507           0 :             k = k + 1
        4508             :
        4509             :          enddo ! hm_idx = 1, hydromet_dim, 1
        4510             :
        4511             :       case ( 'corr_eta_Ncn_i' )
        4512             :
        4513           0 :          stats_metadata%icorr_eta_Ncn_1 = k
        4514             :
        4515             :          call stat_assign( var_index=stats_metadata%icorr_eta_Ncn_1, &
        4516             :                            var_name="corr_eta_Ncn_1", &
        4517             :                            var_description="corr_eta_Ncn_1, Correlation of eta and N_cn " &
        4518             :                            // "(1st PDF component)", &
        4519           0 :                            var_units="-", l_silhs=.false., grid_kind=stats_zt )
        4520             :
        4521           0 :          k = k + 1
        4522             :
        4523           0 :          stats_metadata%icorr_eta_Ncn_2 = k
        4524             :
        4525             :          call stat_assign( var_index=stats_metadata%icorr_eta_Ncn_2, &
        4526             :                            var_name="corr_eta_Ncn_2", &
        4527             :                            var_description="corr_eta_Ncn_2, Correlation of eta and N_cn " &
        4528             :                            // "(2nd PDF component)", &
        4529           0 :                            var_units="-", l_silhs=.false., grid_kind=stats_zt )
        4530             :
        4531           0 :          k = k + 1
        4532             :
        4533             :       ! Correlation of Ncn and a hydrometeor (in-precip) for each PDF
        4534             :       ! component and hydrometeor type.
        4535             :       case ( 'corr_Ncn_hm_i' )
        4536             :
        4537           0 :          do hm_idx = 1, hydromet_dim, 1
        4538             :
        4539           0 :             hm_type = hydromet_list(hm_idx)
        4540             :
        4541             :             ! The in-precip correlation of Ncn and the hydrometeor in the
        4542             :             ! 1st PDF component.
        4543           0 :             stats_metadata%icorr_Ncn_hm_1(hm_idx) = k
        4544             :
        4545           0 :             call stat_assign( var_index=stats_metadata%icorr_Ncn_hm_1(hm_idx), &
        4546             :                               var_name="corr_Ncn_"//trim(hm_type(1:2))//"_1", &
        4547             :                               var_description="Correlation (in-precip) " &
        4548             :                               // "of N_cn and " &
        4549             :                               // hm_type(1:1)//"_"//trim( hm_type(2:2) ) &
        4550             :                               // " (1st PDF component) [-]", &
        4551           0 :                               var_units="-", l_silhs=.false., grid_kind=stats_zt )
        4552             :
        4553           0 :             k = k + 1
        4554             :
        4555             :             ! The in-precip correlation of Ncn and the hydrometeor in the
        4556             :             ! 2nd PDF component.
        4557           0 :             stats_metadata%icorr_Ncn_hm_2(hm_idx) = k
        4558             :
        4559           0 :             call stat_assign( var_index=stats_metadata%icorr_Ncn_hm_2(hm_idx), &
        4560             :                               var_name="corr_Ncn_"//trim(hm_type(1:2))//"_2", &
        4561             :                               var_description="Correlation (in-precip) " &
        4562             :                               // "of N_cn and " &
        4563             :                               // hm_type(1:1)//"_"//trim( hm_type(2:2) ) &
        4564             :                               // " (2nd PDF component) [-]", &
        4565           0 :                               var_units="-", l_silhs=.false., grid_kind=stats_zt )
        4566             :
        4567           0 :             k = k + 1
        4568             :
        4569             :          enddo ! hm_idx = 1, hydromet_dim, 1
        4570             :
        4571             :       ! Correlation (in-precip) of two different hydrometeors (hmx and hmy)
        4572             :       ! for each PDF component and hydrometeor type.
        4573             :       case ( 'corr_hmx_hmy_i' )
        4574             :
        4575           0 :          do hmx_idx = 1, hydromet_dim, 1
        4576             :
        4577           0 :             hmx_type = hydromet_list(hmx_idx)
        4578             :
        4579           0 :             do hmy_idx = hmx_idx+1, hydromet_dim, 1
        4580             :
        4581           0 :                hmy_type = hydromet_list(hmy_idx)
        4582             :
        4583             :                ! The in-precip correlation of hmx and hmy in the 1st PDF
        4584             :                ! component.
        4585           0 :                stats_metadata%icorr_hmx_hmy_1(hmy_idx,hmx_idx) = k
        4586             :
        4587           0 :                call stat_assign( var_index=stats_metadata%icorr_hmx_hmy_1(hmy_idx,hmx_idx), &
        4588             :                                  var_name="corr_"//trim( hmx_type(1:2) )//"_" &
        4589             :                                  // trim( hmy_type(1:2) )//"_1", &
        4590             :                                  var_description="Correlation (in-precip) " &
        4591             :                                  // "of " &
        4592             :                                  // hmx_type(1:1)//"_"//trim( hmx_type(2:2) ) &
        4593             :                                  // " and " &
        4594             :                                  // hmy_type(1:1)//"_"//trim( hmy_type(2:2) ) &
        4595             :                                  // " (1st PDF component) [-]", &
        4596           0 :                                  var_units="-", l_silhs=.false., grid_kind=stats_zt )
        4597             :
        4598           0 :                k = k + 1
        4599             :
        4600             :                ! The in-precip correlation of hmx and hmy in the 2nd PDF
        4601             :                ! component.
        4602           0 :                stats_metadata%icorr_hmx_hmy_2(hmy_idx,hmx_idx) = k
        4603             :
        4604           0 :                call stat_assign( var_index=stats_metadata%icorr_hmx_hmy_2(hmy_idx,hmx_idx), &
        4605             :                                  var_name="corr_"//trim( hmx_type(1:2) )//"_" &
        4606             :                                  // trim( hmy_type(1:2) )//"_2", &
        4607             :                                  var_description="Correlation (in-precip) " &
        4608             :                                  // "of " &
        4609             :                                  // hmx_type(1:1)//"_"//trim( hmx_type(2:2) ) &
        4610             :                                  // " and " &
        4611             :                                  // hmy_type(1:1)//"_"//trim( hmy_type(2:2) ) &
        4612             :                                  // " (2nd PDF component) [-]", &
        4613           0 :                                  var_units="-", l_silhs=.false., grid_kind=stats_zt )
        4614             :
        4615           0 :                k = k + 1
        4616             :
        4617             :             enddo ! hmy_idx = hmx_idx+1, hydromet_dim, 1
        4618             :
        4619             :          enddo ! hmx_idx = 1, hydromet_dim, 1
        4620             :
        4621             :       ! Correlation (in-precip) of w and ln hm for each PDF component and
        4622             :       ! hydrometeor type.
        4623             :       case ( 'corr_w_hm_i_n' )
        4624             :
        4625           0 :          do hm_idx = 1, hydromet_dim, 1
        4626             :
        4627           0 :             hm_type = hydromet_list(hm_idx)
        4628             :
        4629             :             ! The in-precip correlation of w and ln hm in the 1st PDF
        4630             :             ! component.
        4631           0 :             stats_metadata%icorr_w_hm_1_n(hm_idx) = k
        4632             :
        4633           0 :             call stat_assign( var_index=stats_metadata%icorr_w_hm_1_n(hm_idx), &
        4634             :                               var_name="corr_w_"//trim(hm_type(1:2))//"_1_n", &
        4635             :                               var_description="Correlation (in-precip) " &
        4636             :                               // "of w and ln " &
        4637             :                               // hm_type(1:1)//"_"//trim( hm_type(2:2) ) &
        4638             :                               // " (1st PDF component) [-]", &
        4639           0 :                               var_units="-", l_silhs=.false., grid_kind=stats_zt )
        4640             :
        4641           0 :             k = k + 1
        4642             :
        4643             :             ! The in-precip correlation of w and ln hm in the 2nd PDF
        4644             :             ! component.
        4645           0 :             stats_metadata%icorr_w_hm_2_n(hm_idx) = k
        4646             :
        4647           0 :             call stat_assign( var_index=stats_metadata%icorr_w_hm_2_n(hm_idx), &
        4648             :                               var_name="corr_w_"//trim(hm_type(1:2))//"_2_n", &
        4649             :                               var_description="Correlation (in-precip) " &
        4650             :                               // "of w and ln " &
        4651             :                               // hm_type(1:1)//"_"//trim( hm_type(2:2) ) &
        4652             :                               // " (2nd PDF component) [-]", &
        4653           0 :                               var_units="-", l_silhs=.false., grid_kind=stats_zt )
        4654             :
        4655           0 :             k = k + 1
        4656             :
        4657             :          enddo ! hm_idx = 1, hydromet_dim, 1
        4658             :
        4659             :       case ( 'corr_w_Ncn_i_n' )
        4660             :
        4661           0 :          stats_metadata%icorr_w_Ncn_1_n = k
        4662             :
        4663             :          call stat_assign( var_index=stats_metadata%icorr_w_Ncn_1_n, &
        4664             :                            var_name="corr_w_Ncn_1_n", &
        4665             :                            var_description="corr_w_Ncn_1_n, Correlation of w and " &
        4666             :                            // "ln N_cn (1st PDF component)", &
        4667           0 :                            var_units="-", l_silhs=.false., grid_kind=stats_zt )
        4668             :
        4669           0 :          k = k + 1
        4670             :
        4671           0 :          stats_metadata%icorr_w_Ncn_2_n = k
        4672             :
        4673             :          call stat_assign( var_index=stats_metadata%icorr_w_Ncn_2_n, &
        4674             :                            var_name="corr_w_Ncn_2_n", &
        4675             :                            var_description="corr_w_Ncn_2_n, Correlation of w and " &
        4676             :                            // "ln N_cn (2nd PDF component)", &
        4677           0 :                            var_units="-", l_silhs=.false., grid_kind=stats_zt )
        4678             :
        4679           0 :          k = k + 1
        4680             :
        4681             :       ! Correlation (in-precip) of chi and ln hm for each PDF component and
        4682             :       ! hydrometeor type.
        4683             :       case ( 'corr_chi_hm_i_n' )
        4684             :
        4685           0 :          do hm_idx = 1, hydromet_dim, 1
        4686             :
        4687           0 :             hm_type = hydromet_list(hm_idx)
        4688             :
        4689             :             ! The in-precip correlation of chi and ln hm in the 1st PDF
        4690             :             ! component.
        4691           0 :             stats_metadata%icorr_chi_hm_1_n(hm_idx) = k
        4692             :
        4693           0 :             call stat_assign( var_index=stats_metadata%icorr_chi_hm_1_n(hm_idx), &
        4694             :                               var_name="corr_chi_"//trim(hm_type(1:2)) &
        4695             :                               // "_1_n", &
        4696             :                               var_description="Correlation (in-precip) " &
        4697             :                               // "of chi (s) and ln " &
        4698             :                               // hm_type(1:1)//"_"//trim( hm_type(2:2) ) &
        4699             :                               // " (1st PDF component) [-]", &
        4700           0 :                               var_units="-", l_silhs=.false., grid_kind=stats_zt )
        4701             :
        4702           0 :             k = k + 1
        4703             :
        4704             :             ! The in-precip correlation of chi(s) and ln hm in the 2nd PDF
        4705             :             ! component.
        4706           0 :             stats_metadata%icorr_chi_hm_2_n(hm_idx) = k
        4707             :
        4708           0 :             call stat_assign( var_index=stats_metadata%icorr_chi_hm_2_n(hm_idx), &
        4709             :                               var_name="corr_chi_"//trim(hm_type(1:2)) &
        4710             :                               // "_2_n", &
        4711             :                               var_description="Correlation (in-precip) " &
        4712             :                               // "of chi (s) and ln " &
        4713             :                               // hm_type(1:1)//"_"//trim( hm_type(2:2) ) &
        4714             :                               // " (2nd PDF component) [-]", &
        4715           0 :                               var_units="-", l_silhs=.false., grid_kind=stats_zt )
        4716             :
        4717           0 :             k = k + 1
        4718             :
        4719             :          enddo ! hm_idx = 1, hydromet_dim, 1
        4720             :
        4721             :       case ( 'corr_chi_Ncn_i_n' )
        4722             :
        4723           0 :          stats_metadata%icorr_chi_Ncn_1_n = k
        4724             :
        4725             :         call stat_assign( var_index=stats_metadata%icorr_chi_Ncn_1_n, &
        4726             :                            var_name="corr_chi_Ncn_1_n", &
        4727             :                            var_description="corr_chi_Ncn_1_n, Correlation of chi (s) and " &
        4728             :                            // "ln N_cn (1st PDF component)", &
        4729           0 :                            var_units="-", l_silhs=.false., grid_kind=stats_zt )
        4730             :
        4731           0 :          k = k + 1
        4732             :
        4733           0 :          stats_metadata%icorr_chi_Ncn_2_n = k
        4734             :
        4735             :          call stat_assign( var_index=stats_metadata%icorr_chi_Ncn_2_n, &
        4736             :                            var_name="corr_chi_Ncn_2_n", &
        4737             :                            var_description="corr_chi_Ncn_2_n, Correlation of chi (s) and " &
        4738             :                            // "ln N_cn (2nd PDF component)", &
        4739           0 :                            var_units="-", l_silhs=.false., grid_kind=stats_zt )
        4740             :
        4741           0 :          k = k + 1
        4742             :
        4743             :       ! Correlation (in-precip) of eta and ln hm for each PDF component and
        4744             :       ! hydrometeor type.
        4745             :       case ( 'corr_eta_hm_i_n' )
        4746             :
        4747           0 :          do hm_idx = 1, hydromet_dim, 1
        4748             :
        4749           0 :             hm_type = hydromet_list(hm_idx)
        4750             :
        4751             :             ! The in-precip correlation of eta and ln hm in the 1st PDF
        4752             :             ! component.
        4753           0 :             stats_metadata%icorr_eta_hm_1_n(hm_idx) = k
        4754             :
        4755           0 :             call stat_assign( var_index=stats_metadata%icorr_eta_hm_1_n(hm_idx), &
        4756             :                               var_name="corr_eta_"//trim( hm_type(1:2) ) &
        4757             :                               // "_1_n", &
        4758             :                               var_description="Correlation (in-precip) " &
        4759             :                               // "of eta (t) and ln " &
        4760             :                               // hm_type(1:1)//"_"//trim( hm_type(2:2) ) &
        4761             :                               // " (1st PDF component) [-]", &
        4762           0 :                               var_units="-", l_silhs=.false., grid_kind=stats_zt )
        4763             :
        4764           0 :             k = k + 1
        4765             :
        4766             :             ! The in-precip correlation of eta and ln hm in the 2nd PDF
        4767             :             ! component.
        4768           0 :             stats_metadata%icorr_eta_hm_2_n(hm_idx) = k
        4769             :
        4770           0 :             call stat_assign( var_index=stats_metadata%icorr_eta_hm_2_n(hm_idx), &
        4771             :                               var_name="corr_eta_"//trim( hm_type(1:2) ) &
        4772             :                               // "_2_n", &
        4773             :                               var_description="Correlation (in-precip) " &
        4774             :                               // "of eta(t) and ln " &
        4775             :                               // hm_type(1:1)//"_"//trim( hm_type(2:2) ) &
        4776             :                               // " (2nd PDF component) [-]", &
        4777           0 :                               var_units="-", l_silhs=.false., grid_kind=stats_zt )
        4778             :
        4779           0 :             k = k + 1
        4780             :
        4781             :          enddo ! hm_idx = 1, hydromet_dim, 1
        4782             :
        4783             :       case ( 'corr_eta_Ncn_i_n' )
        4784             :
        4785           0 :          stats_metadata%icorr_eta_Ncn_1_n = k
        4786             :
        4787             :          call stat_assign( var_index=stats_metadata%icorr_eta_Ncn_1_n, &
        4788             :                            var_name="corr_eta_Ncn_1_n", &
        4789             :                            var_description="corr_eta_Ncn_1_n, Correlation of eta (t) and " &
        4790             :                            // "ln N_cn (1st PDF component)", &
        4791           0 :                            var_units="-", l_silhs=.false., grid_kind=stats_zt )
        4792             :
        4793           0 :          k = k + 1
        4794             :
        4795           0 :          stats_metadata%icorr_eta_Ncn_2_n = k
        4796             :
        4797             :          call stat_assign( var_index=stats_metadata%icorr_eta_Ncn_2_n, &
        4798             :                            var_name="corr_eta_Ncn_2_n", &
        4799             :                            var_description="corr_eta_Ncn_2_n, Correlation of eta (t) and " &
        4800             :                            // "ln N_cn (2nd PDF component)", &
        4801           0 :                            var_units="-", l_silhs=.false., grid_kind=stats_zt )
        4802             :
        4803           0 :          k = k + 1
        4804             :
        4805             :       ! Correlation (in-precip) of ln Ncn and ln hm for each PDF component
        4806             :       ! and hydrometeor type.
        4807             :       case ( 'corr_Ncn_hm_i_n' )
        4808             :
        4809           0 :          do hm_idx = 1, hydromet_dim, 1
        4810             :
        4811           0 :             hm_type = hydromet_list(hm_idx)
        4812             :
        4813             :             ! The in-precip correlation of ln Ncn and ln hm in the 1st PDF
        4814             :             ! component.
        4815           0 :             stats_metadata%icorr_Ncn_hm_1_n(hm_idx) = k
        4816             :
        4817           0 :             call stat_assign( var_index=stats_metadata%icorr_Ncn_hm_1_n(hm_idx), &
        4818             :                               var_name="corr_Ncn_"//trim(hm_type(1:2)) &
        4819             :                               // "_1_n", &
        4820             :                               var_description="Correlation (in-precip) " &
        4821             :                               // "of ln N_cn and ln " &
        4822             :                               // hm_type(1:1)//"_"//trim( hm_type(2:2) ) &
        4823             :                               // " (1st PDF component) [-]", &
        4824           0 :                               var_units="-", l_silhs=.false., grid_kind=stats_zt )
        4825             :
        4826           0 :             k = k + 1
        4827             :
        4828             :             ! The in-precip correlation of ln Ncn and ln hm in the 2nd PDF
        4829             :             ! component.
        4830           0 :             stats_metadata%icorr_Ncn_hm_2_n(hm_idx) = k
        4831             :
        4832           0 :             call stat_assign( var_index=stats_metadata%icorr_Ncn_hm_2_n(hm_idx), &
        4833             :                               var_name="corr_Ncn_"//trim(hm_type(1:2)) &
        4834             :                               // "_2_n", &
        4835             :                               var_description="Correlation (in-precip) " &
        4836             :                               // "of ln N_cn and ln " &
        4837             :                               // hm_type(1:1)//"_"//trim( hm_type(2:2) ) &
        4838             :                               // " (2nd PDF component) [-]", &
        4839           0 :                               var_units="-", l_silhs=.false., grid_kind=stats_zt )
        4840             :
        4841           0 :             k = k + 1
        4842             :
        4843             :          enddo ! hm_idx = 1, hydromet_dim, 1
        4844             :
        4845             :       ! Correlation (in-precip) of ln hmx and ln hmy (hmx and hmy are two
        4846             :       ! different hydrometeors) for each PDF component and hydrometeor type.
        4847             :       case ( 'corr_hmx_hmy_i_n' )
        4848             :
        4849           0 :          do hmx_idx = 1, hydromet_dim, 1
        4850             :
        4851           0 :             hmx_type = hydromet_list(hmx_idx)
        4852             :
        4853           0 :             do hmy_idx = hmx_idx+1, hydromet_dim, 1
        4854             :
        4855           0 :                hmy_type = hydromet_list(hmy_idx)
        4856             :
        4857             :                ! The in-precip correlation of ln hmx and ln hmy in the 1st
        4858             :                ! PDF component.
        4859           0 :                stats_metadata%icorr_hmx_hmy_1_n(hmy_idx,hmx_idx) = k
        4860             :
        4861           0 :                call stat_assign( var_index=stats_metadata%icorr_hmx_hmy_1_n(hmy_idx,hmx_idx), &
        4862             :                                  var_name="corr_"//trim( hmx_type(1:2) )//"_" &
        4863             :                                  // trim( hmy_type(1:2) )//"_1_n", &
        4864             :                                  var_description="Correlation (in-precip) " &
        4865             :                                  // "of ln " &
        4866             :                                  // hmx_type(1:1)//"_"//trim( hmx_type(2:2) ) &
        4867             :                                  // " and ln " &
        4868             :                                  // hmy_type(1:1)//"_"//trim( hmy_type(2:2) ) &
        4869             :                                  // " (1st PDF component) [-]", &
        4870           0 :                                  var_units="-", l_silhs=.false., grid_kind=stats_zt )
        4871             :
        4872           0 :                k = k + 1
        4873             :
        4874             :                ! The in-precip correlation of ln hmx and ln hmy in the 2nd
        4875             :                ! PDF component.
        4876           0 :                stats_metadata%icorr_hmx_hmy_2_n(hmy_idx,hmx_idx) = k
        4877             :
        4878           0 :                call stat_assign( var_index=stats_metadata%icorr_hmx_hmy_2_n(hmy_idx,hmx_idx), &
        4879             :                                  var_name="corr_"//trim( hmx_type(1:2) )//"_" &
        4880             :                                  // trim( hmy_type(1:2) )//"_2_n", &
        4881             :                                  var_description="Correlation (in-precip) " &
        4882             :                                  // "of ln " &
        4883             :                                  // hmx_type(1:1)//"_"//trim( hmx_type(2:2) ) &
        4884             :                                  // " and ln " &
        4885             :                                  // hmy_type(1:1)//"_"//trim( hmy_type(2:2) ) &
        4886             :                                  // " (2nd PDF component) [-]", &
        4887           0 :                                  var_units="-", l_silhs=.false., grid_kind=stats_zt )
        4888             :
        4889           0 :                k = k + 1
        4890             :
        4891             :             enddo ! hmy_idx = hmx_idx+1, hydromet_dim, 1
        4892             :
        4893             :          enddo ! hmx_idx = 1, hydromet_dim, 1
        4894             :
        4895             :       ! Third-order mixed moment < w'^2 hm' >, where hm is a hydrometeor.
        4896             :       case ('wp2hmp')
        4897             :
        4898           0 :          do hm_idx = 1, hydromet_dim, 1
        4899             :
        4900           0 :             hm_type = hydromet_list(hm_idx)
        4901             :
        4902           0 :             stats_metadata%iwp2hmp(hm_idx) = k
        4903             :
        4904           0 :             if ( l_mix_rat_hm(hm_idx) ) then
        4905             :
        4906           0 :                call stat_assign( var_index=stats_metadata%iwp2hmp(hm_idx), &
        4907             :                                  var_name="wp2"//trim( hm_type(1:2) )//"p", &
        4908             :                                  var_description="Third-order moment < w'^2 " &
        4909             :                                  // hm_type(1:1)//"_"//trim( hm_type(2:2) ) &
        4910             :                                  // "' > [(m/s)^2 kg/kg]", &
        4911             :                                  var_units="(m/s)^2 kg/kg", &
        4912           0 :                                  l_silhs=.false., grid_kind=stats_zt )
        4913             :
        4914             :             else ! Concentration
        4915             :
        4916           0 :                call stat_assign( var_index=stats_metadata%iwp2hmp(hm_idx), &
        4917             :                                  var_name="wp2"//trim( hm_type(1:2) )//"p", &
        4918             :                                  var_description="Third-order moment < w'^2 " &
        4919             :                                  // hm_type(1:1)//"_"//trim( hm_type(2:2) ) &
        4920             :                                  // "' > [(m/s)^2 num/kg]", &
        4921             :                                  var_units="(m/s)^2 num/kg", &
        4922           0 :                                  l_silhs=.false., grid_kind=stats_zt )
        4923             :
        4924             :             endif ! l_mix_rat_hm(hm_idx)
        4925             :
        4926           0 :             k = k + 1
        4927             :
        4928             :          enddo ! hm_idx = 1, hydromet_dim, 1
        4929             :
        4930             :       case ('cloud_frac_refined')
        4931           0 :         stats_metadata%icloud_frac_refined = k
        4932             :         call stat_assign( var_index=stats_metadata%icloud_frac_refined, var_name="cloud_frac_refined", &
        4933             :                           var_description="cloud_frac_refined, Cloud fraction computed on " &
        4934             :                           // "refined grid", &
        4935           0 :                           var_units="-", l_silhs=.false., grid_kind=stats_zt )
        4936           0 :         k = k + 1
        4937             :
        4938             :       case ('rcm_refined')
        4939           0 :         stats_metadata%ircm_refined = k
        4940             :         call stat_assign( var_index=stats_metadata%ircm_refined, var_name="rcm_refined", &
        4941             :                           var_description="rcm_refined, Cloud water mixing ratio computed on " &
        4942             :                           // "refined grid &
        4943           0 :                           &[kg/kg]", var_units="kg/kg", l_silhs=.false., grid_kind=stats_zt)
        4944           0 :         k = k + 1
        4945             :
        4946             :       case ('hl_on_Cp_residual')
        4947           0 :         stats_metadata%ihl_on_Cp_residual = k
        4948             :         call stat_assign( var_index=stats_metadata%ihl_on_Cp_residual, var_name="hl_on_Cp_residual", &
        4949             :                           var_description="hl_on_Cp_residual, Residual change in HL/Cp from " &
        4950             :                           // "Morrison microphysics &
        4951             :                           &not due to sedimentation", &
        4952           0 :                           var_units="K", l_silhs=.true., grid_kind=stats_zt)
        4953           0 :         k = k + 1
        4954             :
        4955             :       case ('qto_residual')
        4956           0 :         stats_metadata%iqto_residual = k
        4957             :         call stat_assign( var_index=stats_metadata%iqto_residual, var_name="qto_residual", &
        4958             :                           var_description="qto_residual, Residual change in total water " &
        4959             :                           // "from Morrison &
        4960             :                           &microphysics not due to sedimentation", &
        4961           0 :                           var_units="kg/kg", l_silhs=.true., grid_kind=stats_zt)
        4962           0 :         k = k + 1
        4963             :
        4964             :       case ( 'sclrm' )
        4965           0 :         do j = 1, sclr_dim, 1
        4966           0 :           write(sclr_idx, * ) j
        4967           0 :           sclr_idx = adjustl(sclr_idx)
        4968           0 :         stats_metadata%isclrm(j) = k
        4969           0 :           call stat_assign( var_index=stats_metadata%isclrm(j), var_name="sclr"//trim(sclr_idx)//"m", &
        4970             :             var_description="passive scalar "//trim(sclr_idx), var_units="unknown", &
        4971           0 :             l_silhs=.false., grid_kind=stats_zt )
        4972           0 :           k = k + 1
        4973             :         end do
        4974             :
        4975             :       case ( 'sclrm_f' )
        4976           0 :         do j = 1, sclr_dim, 1
        4977           0 :           write(sclr_idx, * ) j
        4978           0 :           sclr_idx = adjustl(sclr_idx)
        4979           0 :         stats_metadata%isclrm_f(j) = k
        4980           0 :           call stat_assign( var_index=stats_metadata%isclrm_f(j), var_name="sclr"//trim(sclr_idx)//"m_f", &
        4981             :             var_description="passive scalar forcing "//trim(sclr_idx), var_units="unknown", &
        4982           0 :             l_silhs=.false., grid_kind=stats_zt )
        4983           0 :           k = k + 1
        4984             :         end do
        4985             :
        4986             :       case ( 'edsclrm' )
        4987           0 :         do j = 1, edsclr_dim, 1
        4988           0 :           write(sclr_idx, * ) j
        4989           0 :           sclr_idx = adjustl(sclr_idx)
        4990           0 :         stats_metadata%iedsclrm(j) = k
        4991           0 :           call stat_assign( var_index=stats_metadata%iedsclrm(j), var_name="edsclr"//trim(sclr_idx)//"m", &
        4992             :             var_description="passive scalar "//trim(sclr_idx), var_units="unknown", &
        4993           0 :             l_silhs=.false., grid_kind=stats_zt )
        4994           0 :           k = k + 1
        4995             :         end do
        4996             :
        4997             :       case ( 'edsclrm_f' )
        4998           0 :         do j = 1, edsclr_dim, 1
        4999           0 :           write(sclr_idx, * ) j
        5000           0 :           sclr_idx = adjustl(sclr_idx)
        5001           0 :         stats_metadata%iedsclrm_f(j) = k
        5002           0 :           call stat_assign( var_index=stats_metadata%iedsclrm_f(j), var_name="edsclr"//trim(sclr_idx)//"m_f", &
        5003             :             var_description="passive scalar forcing "//trim(sclr_idx), var_units="unknown", &
        5004           0 :             l_silhs=.false., grid_kind=stats_zt )
        5005           0 :           k = k + 1
        5006             :         end do
        5007             :
        5008             :       case default
        5009             :
        5010           0 :         write(fstderr,*) 'Error:  unrecognized variable in vars_zt:  ', trim( vars_zt(i) )
        5011           0 :         l_error = .true.  ! This will stop the run.
        5012             :
        5013             :       end select ! trim( vars_zt )
        5014             :
        5015             :
        5016             :     end do ! i=1,stats_zt%num_output_fields
        5017             :
        5018             :
        5019           0 :     return
        5020             :
        5021             :   end subroutine stats_init_zt
        5022             :
        5023             : !===============================================================================
        5024             :
        5025             : end module stats_zt_module

Generated by: LCOV version 1.14