Ignore:
Timestamp:
Jun 18, 2019 10:32:41 AM (5 years ago)
Author:
suehring
Message:

diagnostic output: Modularize diagnostic output, rename subroutines; formatting adjustments; allocate arrays only when required; add output of uu, vv, ww to enable variance calculation via temporal EC method; radiation: bugfix in masked data output; flow_statistics: Correct conversion to kinematic vertical scalar fluxes in case of pw-scheme and statistic regions

File:
1 edited

Legend:

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

    r4017 r4039  
    2525! -----------------
    2626! $Id$
     27! input of uu_av, vv_av, ww_av added
     28!
     29! 4017 2019-06-06 12:16:46Z schwenkel
    2730! bugfix for r3998, allocation of 3d temporary arrays of various dimensions revised
    2831!
     
    111114!>
    112115!> @todo: Revise max_pr_cs (profiles for chemistry)
     116!> @todo: Modularize reading of restart data for diagnostic quantities, which
     117!>        is not possible with the current module-interface structure
    113118!------------------------------------------------------------------------------!
    114119 MODULE read_restart_data_mod
     
    135140
    136141    USE diagnostic_output_quantities_mod,                                      &
    137         ONLY:  ti_av
     142        ONLY:  ti_av, uu_av, vv_av, ww_av
    138143
    139144    USE grid_variables,                                                        &
     
    15531558                   u_av(:,nysc-nbgp:nync+nbgp,nxlc-nbgp:nxrc+nbgp) =                               &
    15541559                      tmp_3d(:,nysf-nbgp:nynf+nbgp,nxlf-nbgp:nxrf+nbgp)
     1560                     
     1561                CASE ( 'uu_av' )
     1562                   IF ( .NOT. ALLOCATED( uu_av ) )  THEN
     1563                      ALLOCATE( uu_av(nzb:nzt+1,nys:nyn,nxl:nxr) )
     1564                   ENDIF
     1565                   IF ( k == 1 )  THEN
     1566                      ALLOCATE( tmp_3d_non_standard(nzb:nzt+1,nys_on_file:nyn_on_file,             &
     1567                                                    nxl_on_file:nxr_on_file) )
     1568                      READ ( 13 )  tmp_3d_non_standard
     1569                   ENDIF
     1570                   uu_av(:,nysc:nync,nxlc:nxrc) = tmp_3d_non_standard(:,nysf:nynf,nxlf:nxrf)
    15551571
    15561572                CASE ( 'u_m_l' )
     
    16141630                   v_av(:,nysc-nbgp:nync+nbgp,nxlc-nbgp:nxrc+nbgp) =                               &
    16151631                      tmp_3d(:,nysf-nbgp:nynf+nbgp,nxlf-nbgp:nxrf+nbgp)
     1632                     
     1633                CASE ( 'vv_av' )
     1634                   IF ( .NOT. ALLOCATED( vv_av ) )  THEN
     1635                      ALLOCATE( vv_av(nzb:nzt+1,nys:nyn,nxl:nxr) )
     1636                   ENDIF
     1637                   IF ( k == 1 )  THEN
     1638                      ALLOCATE( tmp_3d_non_standard(nzb:nzt+1,nys_on_file:nyn_on_file,             &
     1639                                                    nxl_on_file:nxr_on_file) )
     1640                      READ ( 13 )  tmp_3d_non_standard
     1641                   ENDIF
     1642                   vv_av(:,nysc:nync,nxlc:nxrc) = tmp_3d_non_standard(:,nysf:nynf,nxlf:nxrf)
    16161643
    16171644                CASE ( 'v_m_l' )
     
    16801707                   w_av(:,nysc-nbgp:nync+nbgp,nxlc-nbgp:nxrc+nbgp) =                               &
    16811708                      tmp_3d(:,nysf-nbgp:nynf+nbgp,nxlf-nbgp:nxrf+nbgp)
     1709                     
     1710                CASE ( 'ww_av' )
     1711                   IF ( .NOT. ALLOCATED( ww_av ) )  THEN
     1712                      ALLOCATE( ww_av(nzb:nzt+1,nys:nyn,nxl:nxr) )
     1713                   ENDIF
     1714                   IF ( k == 1 )  THEN
     1715                      ALLOCATE( tmp_3d_non_standard(nzb:nzt+1,nys_on_file:nyn_on_file,             &
     1716                                                    nxl_on_file:nxr_on_file) )
     1717                      READ ( 13 )  tmp_3d_non_standard
     1718                   ENDIF
     1719                   ww_av(:,nysc:nync,nxlc:nxrc) = tmp_3d_non_standard(:,nysf:nynf,nxlf:nxrf)
    16821720
    16831721                CASE ( 'w_m_l' )
Note: See TracChangeset for help on using the changeset viewer.