Ignore:
Timestamp:
Apr 8, 2014 3:21:23 PM (10 years ago)
Author:
heinze
Message:

REAL constants provided with KIND-attribute

File:
1 edited

Legend:

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

    r1321 r1353  
    2020! Current revisions:
    2121! -----------------
    22 !
     22! REAL constants provided with KIND-attribute
    2323!
    2424! Former revisions:
     
    8989       IF ( .NOT. ALLOCATED( w_subs )) THEN
    9090          ALLOCATE( w_subs(nzb:nzt+1) )
    91           w_subs = 0.0
     91          w_subs = 0.0_wp
    9292       ENDIF
    9393
     
    102102!--   using the given gradients
    103103      i = 1
    104       gradient = 0.0
    105       ws_surface = 0.0
     104      gradient = 0.0_wp
     105      ws_surface = 0.0_wp
    106106     
    107107
     
    110110         IF ( i < 11 ) THEN
    111111            IF ( subs_vertical_gradient_level(i) < zu(k)  .AND. &
    112                  subs_vertical_gradient_level(i) >= 0.0 )  THEN
    113                gradient = subs_vertical_gradient(i) / 100.0
     112                 subs_vertical_gradient_level(i) >= 0.0_wp )  THEN
     113               gradient = subs_vertical_gradient(i) / 100.0_wp
    114114               subs_vertical_gradient_level_i(i) = k - 1
    115115               i = i + 1
    116116            ENDIF
    117117         ENDIF
    118          IF ( gradient /= 0.0 )  THEN
     118         IF ( gradient /= 0.0_wp )  THEN
    119119            IF ( k /= 1 )  THEN
    120120               w_subs(k) = w_subs(k-1) + dzu(k) * gradient
    121121            ELSE
    122                w_subs(k) = ws_surface   + 0.5 * dzu(k) * gradient
     122               w_subs(k) = ws_surface   + 0.5_wp * dzu(k) * gradient
    123123            ENDIF
    124124         ELSE
     
    130130!--   In case of no given gradients for the subsidence/ascent velocity,
    131131!--   choose zero gradient
    132       IF ( subs_vertical_gradient_level(1) == -9999999.9 )  THEN
    133          subs_vertical_gradient_level(1) = 0.0
     132      IF ( subs_vertical_gradient_level(1) == -9999999.9_wp )  THEN
     133         subs_vertical_gradient_level(1) = 0.0_wp
    134134      ENDIF
    135135
     
    171171          DO  j = nys, nyn
    172172             DO  k = nzb_s_inner(j,i)+1, nzt
    173                 IF ( w_subs(k) < 0.0 ) THEN    ! large-scale subsidence
     173                IF ( w_subs(k) < 0.0_wp ) THEN    ! large-scale subsidence
    174174                   tendency(k,j,i) = tendency(k,j,i) - w_subs(k) *  &
    175175                                     ( var(k+1,j,i) - var(k,j,i) ) * ddzu(k+1)
     
    187187
    188188       DO  k = nzb, nzt
    189           IF ( w_subs(k) < 0.0 ) THEN      ! large-scale subsidence
     189          IF ( w_subs(k) < 0.0_wp ) THEN      ! large-scale subsidence
    190190             var_mod(k) = var_init(k) - dt_3d * w_subs(k) *  &
    191191                               ( var_init(k+1) - var_init(k) ) * ddzu(k+1)
     
    195195!--   At the upper boundary, the initial profile is shifted with aid of
    196196!--   the gradient tmp_grad. (This is ok if the gradients are linear.)
    197       IF ( w_subs(nzt) < 0.0 ) THEN
     197      IF ( w_subs(nzt) < 0.0_wp ) THEN
    198198         tmp_grad = ( var_init(nzt+1) - var_init(nzt) ) * ddzu(nzt+1)
    199199         var_mod(nzt+1) = var_init(nzt+1) -  &
     
    203203
    204204      DO  k = nzt+1, nzb+1, -1
    205          IF ( w_subs(k) >= 0.0 ) THEN  ! large-scale ascent
     205         IF ( w_subs(k) >= 0.0_wp ) THEN  ! large-scale ascent
    206206            var_mod(k) = var_init(k) - dt_3d * w_subs(k) *  &
    207207                               ( var_init(k) - var_init(k-1) ) * ddzu(k)
     
    213213
    214214
    215       IF ( w_subs(nzb+1) >= 0.0 ) THEN
     215      IF ( w_subs(nzb+1) >= 0.0_wp ) THEN
    216216         var_mod(nzb) = var_init(nzb)
    217217      ENDIF
     
    253253!--    Influence of w_subsidence on the current tendency term
    254254       DO  k = nzb_s_inner(j,i)+1, nzt
    255           IF ( w_subs(k) < 0.0 ) THEN      ! large-scale subsidence
     255          IF ( w_subs(k) < 0.0_wp ) THEN      ! large-scale subsidence
    256256             tendency(k,j,i) = tendency(k,j,i) - w_subs(k) *  &
    257257                               ( var(k+1,j,i) - var(k,j,i) ) * ddzu(k+1)
     
    269269
    270270          DO  k = nzb, nzt
    271              IF ( w_subs(k) < 0.0 ) THEN      ! large-scale subsidence
     271             IF ( w_subs(k) < 0.0_wp ) THEN      ! large-scale subsidence
    272272                var_mod(k) = var_init(k) - dt_3d * w_subs(k) *  &
    273273                                  ( var_init(k+1) - var_init(k) ) * ddzu(k+1)
     
    277277!--       At the upper boundary, the initial profile is shifted with aid of
    278278!--       the gradient tmp_grad. (This is ok if the gradients are linear.)
    279           IF ( w_subs(nzt) < 0.0 ) THEN
     279          IF ( w_subs(nzt) < 0.0_wp ) THEN
    280280             tmp_grad = ( var_init(nzt+1) - var_init(nzt) ) * ddzu(nzt+1)
    281281             var_mod(nzt+1) = var_init(nzt+1) -  &
     
    285285
    286286          DO  k = nzt+1, nzb+1, -1
    287              IF ( w_subs(k) >= 0.0 ) THEN  ! large-scale ascent
     287             IF ( w_subs(k) >= 0.0_wp ) THEN  ! large-scale ascent
    288288                var_mod(k) = var_init(k) - dt_3d * w_subs(k) *  &
    289289                                   ( var_init(k) - var_init(k-1) ) * ddzu(k)
     
    295295
    296296
    297           IF ( w_subs(nzb+1) >= 0.0 ) THEN
     297          IF ( w_subs(nzb+1) >= 0.0_wp ) THEN
    298298             var_mod(nzb) = var_init(nzb)
    299299          ENDIF
Note: See TracChangeset for help on using the changeset viewer.