Ignore:
Timestamp:
Mar 22, 2007 9:54:05 AM (15 years ago)
Author:
raasch
Message:

preliminary update for changes concerning non-cyclic boundary conditions

File:
1 edited

Legend:

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

    r73 r75  
    55! -----------------
    66! checking for negative q and limiting for positive values,
    7 ! z0 removed from arguments in calls of diffusion_u/v/w,
    8 ! subroutine names changed to .._noopt, .._cache, and .._vector
     7! z0 removed from arguments in calls of diffusion_u/v/w, uxrp, vynp eliminated,
     8! subroutine names changed to .._noopt, .._cache, and .._vector,
     9! moisture renamed humidity
    910!
    1011! Former revisions:
     
    102103!-- global communication
    103104    CALL calc_mean_pt_profile( pt, 4 )
    104     IF ( moisture )  CALL calc_mean_pt_profile( vpt, 44 )
     105    IF ( humidity )  CALL calc_mean_pt_profile( vpt, 44 )
    105106
    106107!
     
    117118!
    118119!-- u-tendency terms with no communication
    119     DO  i = nxl, nxr+uxrp
     120    DO  i = nxl, nxr
    120121       DO  j = nys, nyn
    121122!
     
    186187!-- v-tendency terms with no communication
    187188    DO  i = nxl, nxr
    188        DO  j = nys, nyn+vynp
     189       DO  j = nys, nyn
    189190!
    190191!--       Tendency terms
     
    273274          ENDIF
    274275          CALL coriolis( i, j, 3 )
    275           IF ( .NOT. moisture )  THEN
     276          IF ( .NOT. humidity )  THEN
    276277             CALL buoyancy( i, j, pt, 3, 4 )
    277278          ELSE
     
    410411!
    411412!-- If required, compute prognostic equation for total water content / scalar
    412     IF ( moisture  .OR.  passive_scalar )  THEN
     413    IF ( humidity  .OR.  passive_scalar )  THEN
    413414
    414415       CALL cpu_log( log_point(29), 'q/s-equation', 'start' )
     
    550551             IF ( scalar_advec == 'bc-scheme'  .AND.  &
    551552                  .NOT. use_upstream_for_tke )  THEN
    552                 IF ( .NOT. moisture )  THEN
     553                IF ( .NOT. humidity )  THEN
    553554                   CALL diffusion_e( i, j, ddzu, dd2zu, ddzw, diss, e, km, &
    554555                                     l_grid, pt, rif, tend, zu )
     
    575576                IF ( tsc(2) == 2.0  .AND.  timestep_scheme(1:8) == 'leapfrog' )&
    576577                THEN
    577                    IF ( .NOT. moisture )  THEN
     578                   IF ( .NOT. humidity )  THEN
    578579                      CALL diffusion_e( i, j, ddzu, dd2zu, ddzw, diss, e_m, &
    579580                                        km_m, l_grid, pt_m, rif_m, tend, zu )
     
    583584                   ENDIF
    584585                ELSE
    585                    IF ( .NOT. moisture )  THEN
     586                   IF ( .NOT. humidity )  THEN
    586587                      CALL diffusion_e( i, j, ddzu, dd2zu, ddzw, diss, e, km, &
    587588                                        l_grid, pt, rif, tend, zu )
     
    661662!-- global communication
    662663    CALL calc_mean_pt_profile( pt, 4 )
    663     IF ( moisture )  CALL calc_mean_pt_profile( vpt, 44 )
     664    IF ( humidity )  CALL calc_mean_pt_profile( vpt, 44 )
    664665    IF ( .NOT. constant_diffusion )  CALL production_e_init
    665666
     
    669670!$OMP PARALLEL private (i,j,k)
    670671!$OMP DO
    671     DO  i = nxl, nxr+uxrp       ! Additional levels for non cyclic boundary
    672        DO  j = nys, nyn+vynp    ! conditions are included
     672    DO  i = nxl, nxr
     673       DO  j = nys, nyn
    673674!
    674675!--       Tendency terms for u-velocity component
     
    789790             ENDIF
    790791             CALL coriolis( i, j, 3 )
    791              IF ( .NOT. moisture )  THEN
     792             IF ( .NOT. humidity )  THEN
    792793                CALL buoyancy( i, j, pt, 3, 4 )
    793794             ELSE
     
    881882!--          If required, compute prognostic equation for total water content /
    882883!--          scalar
    883              IF ( moisture  .OR.  passive_scalar )  THEN
     884             IF ( humidity  .OR.  passive_scalar )  THEN
    884885
    885886!
     
    954955                IF ( tsc(2) == 2.0  .AND.  timestep_scheme(1:8) == 'leapfrog' )&
    955956                THEN
    956                    IF ( .NOT. moisture )  THEN
     957                   IF ( .NOT. humidity )  THEN
    957958                      CALL diffusion_e( i, j, ddzu, dd2zu, ddzw, diss, e_m, &
    958959                                        km_m, l_grid, pt_m, rif_m, tend, zu )
     
    962963                   ENDIF
    963964                ELSE
    964                    IF ( .NOT. moisture )  THEN
     965                   IF ( .NOT. humidity )  THEN
    965966                      CALL diffusion_e( i, j, ddzu, dd2zu, ddzw, diss, e, km, &
    966967                                        l_grid, pt, rif, tend, zu )
     
    10321033!-- global communication
    10331034    CALL calc_mean_pt_profile( pt, 4 )
    1034     IF ( moisture )  CALL calc_mean_pt_profile( vpt, 44 )
     1035    IF ( humidity )  CALL calc_mean_pt_profile( vpt, 44 )
    10351036
    10361037!
     
    10681069!
    10691070!-- Prognostic equation for u-velocity component
    1070     DO  i = nxl, nxr+uxrp
     1071    DO  i = nxl, nxr
    10711072       DO  j = nys, nyn
    10721073          DO  k = nzb_u_inner(j,i)+1, nzt
     
    10851086    IF ( timestep_scheme(1:5) == 'runge' )  THEN
    10861087       IF ( intermediate_timestep_count == 1 )  THEN
    1087           DO  i = nxl, nxr+uxrp
     1088          DO  i = nxl, nxr
    10881089             DO  j = nys, nyn
    10891090                DO  k = nzb_u_inner(j,i)+1, nzt
     
    10941095       ELSEIF ( intermediate_timestep_count < &
    10951096                intermediate_timestep_count_max )  THEN
    1096           DO  i = nxl, nxr+uxrp
     1097          DO  i = nxl, nxr
    10971098             DO  j = nys, nyn
    10981099                DO  k = nzb_u_inner(j,i)+1, nzt
     
    11401141!-- Prognostic equation for v-velocity component
    11411142    DO  i = nxl, nxr
    1142        DO  j = nys, nyn+vynp
     1143       DO  j = nys, nyn
    11431144          DO  k = nzb_v_inner(j,i)+1, nzt
    11441145             v_p(k,j,i) = ( 1.0-tsc(1) ) * v_m(k,j,i) + tsc(1) * v(k,j,i) +    &
     
    11571158       IF ( intermediate_timestep_count == 1 )  THEN
    11581159          DO  i = nxl, nxr
    1159              DO  j = nys, nyn+vynp
     1160             DO  j = nys, nyn
    11601161                DO  k = nzb_v_inner(j,i)+1, nzt
    11611162                   tv_m(k,j,i) = tend(k,j,i)
     
    11661167                intermediate_timestep_count_max )  THEN
    11671168          DO  i = nxl, nxr
    1168              DO  j = nys, nyn+vynp
     1169             DO  j = nys, nyn
    11691170                DO  k = nzb_v_inner(j,i)+1, nzt
    11701171                   tv_m(k,j,i) = -9.5625 * tend(k,j,i) + 5.3125 * tv_m(k,j,i)
     
    12061207    ENDIF
    12071208    CALL coriolis( 3 )
    1208     IF ( .NOT. moisture )  THEN
     1209    IF ( .NOT. humidity )  THEN
    12091210       CALL buoyancy( pt, 3, 4 )
    12101211    ELSE
     
    13551356!
    13561357!-- If required, compute prognostic equation for total water content / scalar
    1357     IF ( moisture  .OR.  passive_scalar )  THEN
     1358    IF ( humidity  .OR.  passive_scalar )  THEN
    13581359
    13591360       CALL cpu_log( log_point(29), 'q/s-equation', 'start' )
     
    14931494       IF ( scalar_advec == 'bc-scheme'  .AND.  .NOT. use_upstream_for_tke )  &
    14941495       THEN
    1495           IF ( .NOT. moisture )  THEN
     1496          IF ( .NOT. humidity )  THEN
    14961497             CALL diffusion_e( ddzu, dd2zu, ddzw, diss, e, km, l_grid, pt, &
    14971498                               rif, tend, zu )
     
    15161517          ENDIF
    15171518          IF ( tsc(2) == 2.0  .AND.  timestep_scheme(1:8) == 'leapfrog' )  THEN
    1518              IF ( .NOT. moisture )  THEN
     1519             IF ( .NOT. humidity )  THEN
    15191520                CALL diffusion_e( ddzu, dd2zu, ddzw, diss, e_m, km_m, l_grid, &
    15201521                                  pt_m, rif_m, tend, zu )
     
    15241525             ENDIF
    15251526          ELSE
    1526              IF ( .NOT. moisture )  THEN
     1527             IF ( .NOT. humidity )  THEN
    15271528                CALL diffusion_e( ddzu, dd2zu, ddzw, diss, e, km, l_grid, pt, &
    15281529                                  rif, tend, zu )
Note: See TracChangeset for help on using the changeset viewer.