Ignore:
Timestamp:
Apr 30, 2014 12:15:41 PM (7 years ago)
Author:
boeske
Message:

minor changes in profile data output of lsf tendencies, variables renamed

File:
1 edited

Legend:

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

    r1366 r1382  
    2020! Current revisions:
    2121! ------------------
    22 !
     22! Renamed variables which store large scale forcing tendencies
     23! pt_lsa -> td_lsa_lpt, pt_subs -> td_sub_lpt,
     24! q_lsa  -> td_lsa_q,   q_subs  -> td_sub_q,
     25! high|lowpt_lsa -> high|low_td_lsa_lpt, ...
    2326!
    2427! Former revisions:
     
    8184
    8285       USE arrays_3d,                                                          &
    83            ONLY:  p_surf, pt_lsa, pt_subs, pt_surf, q_lsa, q_subs, q_surf,     &
    84                   qsws_surf, shf_surf, time_surf, time_vert, ug_vert, vg_vert, &
    85                   wsubs_vert, zu
     86           ONLY:  p_surf, pt_surf, q_surf, qsws_surf, shf_surf, td_lsa_lpt,    &
     87                  td_lsa_q, td_sub_lpt, td_sub_q, time_surf, time_vert,        &
     88                  ug_vert, vg_vert, wsubs_vert, zu
    8689
    8790       USE control_parameters,                                                 &
     
    116119       REAL(wp) ::  lowvg_vert        !:
    117120       REAL(wp) ::  lowwsubs_vert     !:
    118        REAL(wp) ::  highpt_lsa        !:
    119        REAL(wp) ::  lowpt_lsa         !:
    120        REAL(wp) ::  highq_lsa         !:
    121        REAL(wp) ::  lowq_lsa          !:
    122        REAL(wp) ::  highpt_subs       !:
    123        REAL(wp) ::  lowpt_subs        !:
    124        REAL(wp) ::  highq_subs        !:
    125        REAL(wp) ::  lowq_subs         !:
     121       REAL(wp) ::  high_td_lsa_lpt   !:
     122       REAL(wp) ::  low_td_lsa_lpt    !:
     123       REAL(wp) ::  high_td_lsa_q     !:
     124       REAL(wp) ::  low_td_lsa_q      !:
     125       REAL(wp) ::  high_td_sub_lpt   !:
     126       REAL(wp) ::  low_td_sub_lpt    !:
     127       REAL(wp) ::  high_td_sub_q     !:
     128       REAL(wp) ::  low_td_sub_q      !:
    126129       REAL(wp) ::  r_dummy           !:
    127130
    128        ALLOCATE( p_surf(0:nlsf), pt_lsa(nzb:nzt+1,0:nlsf),                     &
    129                  pt_subs(nzb:nzt+1,0:nlsf), pt_surf(0:nlsf),                   &
    130                  q_lsa(nzb:nzt+1,0:nlsf), q_subs(nzb:nzt+1,0:nlsf),            &
    131                  q_surf(0:nlsf), qsws_surf(0:nlsf), shf_surf(0:nlsf),          &
     131       ALLOCATE( p_surf(0:nlsf), pt_surf(0:nlsf), q_surf(0:nlsf),              &
     132                 qsws_surf(0:nlsf), shf_surf(0:nlsf),                          &
     133                 td_lsa_lpt(nzb:nzt+1,0:nlsf), td_lsa_q(nzb:nzt+1,0:nlsf),     &
     134                 td_sub_lpt(nzb:nzt+1,0:nlsf), td_sub_q(nzb:nzt+1,0:nlsf),     &
    132135                 time_vert(0:nlsf), time_surf(0:nlsf),                         &
    133136                 ug_vert(nzb:nzt+1,0:nlsf), vg_vert(nzb:nzt+1,0:nlsf),         &
    134137                 wsubs_vert(nzb:nzt+1,0:nlsf) )
    135138
    136        p_surf = 0.0_wp; pt_lsa = 0.0; pt_subs = 0.0; pt_surf = 0.0_wp
    137        q_lsa = 0.0; q_subs = 0.0; q_surf = 0.0_wp; qsws_surf = 0.0_wp
    138        shf_surf = 0.0_wp; time_vert = 0.0_wp; time_surf = 0.0_wp;
    139        ug_vert = 0.0_wp; vg_vert = 0.0_wp; wsubs_vert = 0.0_wp
     139       p_surf = 0.0_wp; pt_surf = 0.0_wp; q_surf = 0.0_wp; qsws_surf = 0.0_wp
     140       shf_surf = 0.0_wp; time_vert = 0.0_wp; td_lsa_lpt = 0.0_wp
     141       td_lsa_q = 0.0_wp; td_sub_lpt = 0.0_wp; td_sub_q = 0.0_wp
     142       time_surf = 0.0_wp; ug_vert = 0.0_wp; vg_vert = 0.0_wp
     143       wsubs_vert = 0.0_wp
    140144
    141145!
     
    224228
    225229          READ ( finput, *, IOSTAT=ierrn ) lowheight, lowug_vert, lowvg_vert,  &
    226                                            lowwsubs_vert, lowpt_lsa,           &
    227                                            lowq_lsa, lowpt_subs, lowq_subs
     230                                           lowwsubs_vert, low_td_lsa_lpt,      &
     231                                           low_td_lsa_q, low_td_sub_lpt,       &
     232                                           low_td_sub_q
    228233          IF ( ierrn /= 0 )  THEN
    229234             message_string = 'errors in file LSF_DATA'
     
    233238          READ ( finput, *, IOSTAT=ierrn ) highheight, highug_vert,            &
    234239                                           highvg_vert, highwsubs_vert,        &
    235                                            highpt_lsa, highq_lsa,              &
    236                                            highpt_subs, highq_subs
     240                                           high_td_lsa_lpt, high_td_lsa_q,     &
     241                                           high_td_sub_lpt, high_td_sub_q
    237242     
    238243          IF ( ierrn /= 0 )  THEN
     
    244249          DO  k = nzb, nzt+1
    245250             IF ( highheight < zu(k) )  THEN
    246                 lowheight     = highheight
    247                 lowug_vert    = highug_vert
    248                 lowvg_vert    = highvg_vert
    249                 lowwsubs_vert = highwsubs_vert
    250                 lowpt_lsa     = highpt_lsa
    251                 lowq_lsa      = highq_lsa
    252                 lowpt_subs    = highpt_subs
    253                 lowq_subs     = highq_subs
     251                lowheight      = highheight
     252                lowug_vert     = highug_vert
     253                lowvg_vert     = highvg_vert
     254                lowwsubs_vert  = highwsubs_vert
     255                low_td_lsa_lpt = high_td_lsa_lpt
     256                low_td_lsa_q   = high_td_lsa_q
     257                low_td_sub_lpt = high_td_sub_lpt
     258                low_td_sub_q   = high_td_sub_q
    254259
    255260                ierrn = 0
    256261                READ ( finput, *, IOSTAT=ierrn ) highheight, highug_vert,      &
    257262                                                 highvg_vert, highwsubs_vert,  &
    258                                                  highpt_lsa, highq_lsa,        &
    259                                                  highpt_subs, highq_subs
     263                                                 high_td_lsa_lpt,              &
     264                                                 high_td_lsa_q,                &
     265                                                 high_td_sub_lpt, high_td_sub_q
    260266
    261267                IF ( ierrn /= 0 )  THEN
     
    273279             fac = (highheight-zu(k))/(highheight - lowheight)
    274280
    275              ug_vert(k,nt)    = fac*lowug_vert    + (1.0_wp-fac)*highug_vert
    276              vg_vert(k,nt)    = fac*lowvg_vert    + (1.0_wp-fac)*highvg_vert
    277              wsubs_vert(k,nt) = fac*lowwsubs_vert + (1.0_wp-fac)*highwsubs_vert
    278 
    279              pt_lsa(k,nt)     = fac*lowpt_lsa     + (1.0_wp-fac)*highpt_lsa
    280              q_lsa(k,nt)      = fac*lowq_lsa      + (1.0_wp-fac)*highq_lsa
    281              pt_subs(k,nt)    = fac*lowpt_subs    + (1.0_wp-fac)*highpt_subs
    282              q_subs(k,nt)     = fac*lowq_subs     + (1.0_wp-fac)*highq_subs
     281             ug_vert(k,nt)    = fac * lowug_vert                               &
     282                                + ( 1.0_wp - fac ) * highug_vert
     283             vg_vert(k,nt)    = fac * lowvg_vert                               &
     284                                + ( 1.0_wp - fac ) * highvg_vert
     285             wsubs_vert(k,nt) = fac * lowwsubs_vert                            &
     286                                + ( 1.0_wp - fac ) * highwsubs_vert
     287
     288             td_lsa_lpt(k,nt) = fac * low_td_lsa_lpt                           &
     289                                + ( 1.0_wp - fac ) * high_td_lsa_lpt
     290             td_lsa_q(k,nt)   = fac * low_td_lsa_q                             &
     291                                + ( 1.0_wp - fac ) * high_td_lsa_q
     292             td_sub_lpt(k,nt) = fac * low_td_sub_lpt                           &
     293                                + ( 1.0_wp - fac ) * high_td_sub_lpt
     294             td_sub_q(k,nt)   = fac * low_td_sub_q                             &
     295                                + ( 1.0_wp - fac ) * high_td_sub_q
    283296
    284297          ENDDO
     
    413426
    414427       USE arrays_3d,                                                          &
    415            ONLY:  pt_lsa, pt_subs, q_lsa, q_subs, tend, time_vert       
     428           ONLY:  td_lsa_lpt, td_lsa_q, td_sub_lpt, td_sub_q, tend, time_vert       
    416429       
    417430       USE control_parameters,                                                 &
     
    455468                DO  j = nys, nyn
    456469                   DO  k = nzb_u_inner(j,i)+1, nzt
    457                       tend(k,j,i) = tend(k,j,i) + pt_lsa(k,nt)                 &
    458                                     + fac * ( pt_lsa(k,nt+1) - pt_lsa(k,nt) )
     470                      tend(k,j,i) = tend(k,j,i) + td_lsa_lpt(k,nt) + fac *     &
     471                                    ( td_lsa_lpt(k,nt+1) - td_lsa_lpt(k,nt) )
    459472                   ENDDO
    460473                ENDDO
     
    466479                DO  j = nys, nyn
    467480                   DO  k = nzb_u_inner(j,i)+1, nzt
    468                       tend(k,j,i) = tend(k,j,i) + q_lsa(k,nt)                  &
    469                                     + fac * ( q_lsa(k,nt+1) - q_lsa(k,nt) )
     481                      tend(k,j,i) = tend(k,j,i) + td_lsa_q(k,nt) + fac *       &
     482                                    ( td_lsa_q(k,nt+1) - td_lsa_q(k,nt) )
    470483                   ENDDO
    471484                ENDDO
     
    485498                   DO  j = nys, nyn
    486499                      DO  k = nzb_u_inner(j,i)+1, nzt
    487                          tend(k,j,i) = tend(k,j,i) + pt_subs(k,nt) + fac *     &
    488                                        ( pt_subs(k,nt+1) - pt_subs(k,nt) )
     500                         tend(k,j,i) = tend(k,j,i) + td_sub_lpt(k,nt) + fac *  &
     501                                       ( td_sub_lpt(k,nt+1) - td_sub_lpt(k,nt) )
    489502                      ENDDO
    490503                   ENDDO
     
    496509                   DO  j = nys, nyn
    497510                      DO  k = nzb_u_inner(j,i)+1, nzt
    498                          tend(k,j,i) = tend(k,j,i) + q_subs(k,nt) + fac *      &
    499                                        ( q_subs(k,nt+1) - q_subs(k,nt) )
     511                         tend(k,j,i) = tend(k,j,i) + td_sub_q(k,nt) + fac *    &
     512                                       ( td_sub_q(k,nt+1) - td_sub_q(k,nt) )
    500513                      ENDDO
    501514                   ENDDO
     
    515528
    516529       USE arrays_3d,                                                          &
    517            ONLY:  pt_lsa, pt_subs, q_lsa, q_subs, tend, time_vert       
     530           ONLY:  td_lsa_lpt, td_lsa_q, td_sub_lpt, td_sub_q, tend, time_vert       
    518531       
    519532       USE control_parameters,                                                 &
     
    555568
    556569             DO  k = nzb_u_inner(j,i)+1, nzt
    557                 tend(k,j,i) = tend(k,j,i) + pt_lsa(k,nt)                       &
    558                               + fac * ( pt_lsa(k,nt+1) - pt_lsa(k,nt) )
     570                tend(k,j,i) = tend(k,j,i) + td_lsa_lpt(k,nt)                   &
     571                              + fac * ( td_lsa_lpt(k,nt+1) - td_lsa_lpt(k,nt) )
    559572             ENDDO
    560573
     
    562575
    563576             DO  k = nzb_u_inner(j,i)+1, nzt
    564                 tend(k,j,i) = tend(k,j,i) + q_lsa(k,nt)                        &
    565                               + fac * ( q_lsa(k,nt+1) - q_lsa(k,nt) )
     577                tend(k,j,i) = tend(k,j,i) + td_lsa_q(k,nt)                     &
     578                              + fac * ( td_lsa_q(k,nt+1) - td_lsa_q(k,nt) )
    566579             ENDDO
    567580
     
    577590
    578591                DO  k = nzb_u_inner(j,i)+1, nzt
    579                    tend(k,j,i) = tend(k,j,i) + pt_subs(k,nt) + fac *           &
    580                                  ( pt_subs(k,nt+1) - pt_subs(k,nt) )
     592                   tend(k,j,i) = tend(k,j,i) + td_sub_lpt(k,nt) + fac *        &
     593                                 ( td_sub_lpt(k,nt+1) - td_sub_lpt(k,nt) )
    581594                ENDDO
    582595 
     
    584597
    585598                DO  k = nzb_u_inner(j,i)+1, nzt
    586                    tend(k,j,i) = tend(k,j,i) + q_subs(k,nt) + fac *            &
    587                                  ( q_subs(k,nt+1) - q_subs(k,nt) )
     599                   tend(k,j,i) = tend(k,j,i) + td_sub_q(k,nt) + fac *          &
     600                                 ( td_sub_q(k,nt+1) - td_sub_q(k,nt) )
    588601                ENDDO
    589602
Note: See TracChangeset for help on using the changeset viewer.