Ignore:
Timestamp:
Oct 26, 2015 4:17:44 PM (6 years ago)
Author:
maronga
Message:

various bugfixes and modifications of the atmosphere-land-surface-radiation interaction. Completely re-written routine to calculate surface fluxes (surface_layer_fluxes.f90) that replaces prandtl_fluxes. Minor formatting corrections and renamings

File:
1 edited

Legend:

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

    r1683 r1691  
    1414! PALM. If not, see <http://www.gnu.org/licenses/>.
    1515!
    16 ! Copyright 1997-2014 Leibniz Universitaet Hannover
     16! Copyright 1997-2015 Leibniz Universitaet Hannover
    1717!--------------------------------------------------------------------------------!
    1818!
    1919! Current revisions:
    2020! -----------------
    21 !
     21! Added output of Obukhov length (ol) and radiative heating rates  for RRTMG.
     22! Formatting corrections.
    2223!
    2324! Former revisions:
     
    112113
    113114    USE arrays_3d,                                                             &
    114         ONLY:  dzw, e, nr, p, pt, q, qc, ql, ql_c, ql_v, ql_vp, qr, qsws,      &
     115        ONLY:  dzw, e, nr, ol, p, pt, q, qc, ql, ql_c, ql_v, ql_vp, qr, qsws,  &
    115116               rho, sa, shf, tend, ts, u, us, v, vpt, w, z0, z0h, zu, zw
    116117       
     
    162163    USE radiation_model_mod,                                                   &
    163164        ONLY:  rad_net, rad_net_av, rad_sw_in, rad_sw_in_av, rad_sw_out,       &
    164                rad_sw_out_av, rad_lw_in, rad_lw_in_av, rad_lw_out,             &
    165                rad_lw_out_av
     165               rad_sw_out_av, rad_sw_cs_hr, rad_sw_cs_hr_av, rad_sw_hr,        &
     166               rad_sw_hr_av, rad_lw_in, rad_lw_in_av, rad_lw_out,              &
     167               rad_lw_out_av, rad_lw_cs_hr, rad_lw_cs_hr_av, rad_lw_hr,        &
     168               rad_lw_hr_av
    166169
    167170    IMPLICIT NONE
     
    543546                IF ( mode == 'xy' )  level_z = zu
    544547
     548             CASE ( 'ol*_xy' )        ! 2d-array
     549                IF ( av == 0 ) THEN
     550                   DO  i = nxlg, nxrg
     551                      DO  j = nysg, nyng
     552                         local_pf(i,j,nzb+1) = ol(j,i)
     553                      ENDDO
     554                   ENDDO
     555                ELSE
     556                   DO  i = nxlg, nxrg
     557                      DO  j = nysg, nyng
     558                         local_pf(i,j,nzb+1) = ol_av(j,i)
     559                      ENDDO
     560                   ENDDO
     561                ENDIF
     562                resorted = .TRUE.
     563                two_d = .TRUE.
     564                level_z(nzb+1) = zu(nzb+1)
     565
    545566             CASE ( 'p_xy', 'p_xz', 'p_yz' )
    546567                IF ( av == 0 )  THEN
     
    937958                ENDIF
    938959
     960             CASE ( 'rad_lw_cs_hr_xy', 'rad_lw_cs_hr_xz', 'rad_lw_cs_hr_yz' )
     961                IF ( av == 0 )  THEN
     962                   to_be_resorted => rad_lw_cs_hr
     963                ELSE
     964                   to_be_resorted => rad_lw_cs_hr_av
     965                ENDIF
     966
     967             CASE ( 'rad_lw_hr_xy', 'rad_lw_hr_xz', 'rad_lw_hr_yz' )
     968                IF ( av == 0 )  THEN
     969                   to_be_resorted => rad_lw_hr
     970                ELSE
     971                   to_be_resorted => rad_lw_hr_av
     972                ENDIF
     973
    939974             CASE ( 'rad_sw_in_xy', 'rad_sw_in_xz', 'rad_sw_in_yz' )
    940975                IF ( av == 0 )  THEN
     
    949984                ELSE
    950985                   to_be_resorted => rad_sw_out_av
     986                ENDIF
     987
     988             CASE ( 'rad_sw_cs_hr_xy', 'rad_sw_cs_hr_xz', 'rad_sw_cs_hr_yz' )
     989                IF ( av == 0 )  THEN
     990                   to_be_resorted => rad_sw_cs_hr
     991                ELSE
     992                   to_be_resorted => rad_sw_cs_hr_av
     993                ENDIF
     994
     995             CASE ( 'rad_sw_hr_xy', 'rad_sw_hr_xz', 'rad_sw_hr_yz' )
     996                IF ( av == 0 )  THEN
     997                   to_be_resorted => rad_sw_hr
     998                ELSE
     999                   to_be_resorted => rad_sw_hr_av
    9511000                ENDIF
    9521001
     
    12271276!--                Exit the loop for layers beyond the data output domain
    12281277!--                (used for soil model)
    1229                    IF ( layer_xy .GT. nzt_do )  THEN
     1278                   IF ( layer_xy > nzt_do )  THEN
    12301279                      EXIT loop1
    12311280                   ENDIF
Note: See TracChangeset for help on using the changeset viewer.