Ignore:
Timestamp:
Mar 20, 2014 8:40:49 AM (8 years ago)
Author:
raasch
Message:

ONLY-attribute added to USE-statements,
kind-parameters added to all INTEGER and REAL declaration statements,
kinds are defined in new module kinds,
old module precision_kind is removed,
revision history before 2012 removed,
comment fields (!:) to be used for variable explanations added to all variable declaration statements

File:
1 edited

Legend:

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

    r1310 r1320  
    2020! Current revisions:
    2121! -----------------
    22 !
     22! ONLY-attribute added to USE-statements,
     23! kind-parameters added to all INTEGER and REAL declaration statements,
     24! kinds are defined in new module kinds,
     25! revision history before 2012 removed,
     26! comment fields (!:) to be used for variable explanations added to
     27! all variable declaration statements
    2328!
    2429! Former revisions:
     
    2833! 1036 2012-10-22 13:43:42Z raasch
    2934! code put under GPL (PALM 3.9)
    30 !
    31 ! RCS Log replace by Id keyword, revision history cleaned up
    32 !
    33 ! Revision 1.11  2006/02/23 09:47:23  raasch
    34 ! *** empty log message ***
    3535!
    3636! Revision 1.1  1997/08/29 08:56:33  raasch
     
    6161    SUBROUTINE advec_w_up
    6262
    63        USE arrays_3d
    64        USE control_parameters
    65        USE grid_variables
    66        USE indices
     63       USE arrays_3d,                                                          &
     64           ONLY:  ddzw, tend, u, v, w
     65
     66       USE control_parameters,                                                 &
     67           ONLY:  u_gtrans, v_gtrans
     68
     69       USE grid_variables,                                                     &
     70           ONLY:  ddx, ddy
     71
     72       USE indices,                                                            &
     73           ONLY:  nxl, nxr, nyn, nys, nzb_w_inner, nzt
     74
     75       USE kinds
     76
    6777
    6878       IMPLICIT NONE
    6979
    70        INTEGER ::  i, j, k
    71        REAL    ::  ukomp, vkomp
     80       INTEGER(iwp) ::  i !:
     81       INTEGER(iwp) ::  j !:
     82       INTEGER(iwp) ::  k !:
     83
     84       REAL(wp) ::  ukomp !:
     85       REAL(wp) ::  vkomp !:
    7286
    7387
     
    7791!
    7892!--             x-direction
    79                 ukomp = 0.25 * ( u(k,j,i)   + u(k,j,i+1) + &
     93                ukomp = 0.25 * ( u(k,j,i)   + u(k,j,i+1) +                     &
    8094                                 u(k+1,j,i) + u(k+1,j,i+1) ) - u_gtrans
    8195                IF ( ukomp > 0.0 )  THEN
    82                    tend(k,j,i) = tend(k,j,i) - ukomp * &
     96                   tend(k,j,i) = tend(k,j,i) - ukomp *                         &
    8397                                         ( w(k,j,i) - w(k,j,i-1) ) * ddx
    8498                ELSE
    85                    tend(k,j,i) = tend(k,j,i) - ukomp * &
     99                   tend(k,j,i) = tend(k,j,i) - ukomp *                         &
    86100                                         ( w(k,j,i+1) - w(k,j,i) ) * ddx
    87101                ENDIF
    88102!
    89103!--             y-direction
    90                 vkomp = 0.25 * ( v(k,j,i) + v(k,j+1,i) + &
     104                vkomp = 0.25 * ( v(k,j,i) + v(k,j+1,i) +                       &
    91105                                 v(k+1,j,i) + v(k+1,j+1,i) ) - v_gtrans
    92106                IF ( vkomp > 0.0 )  THEN
    93                    tend(k,j,i) = tend(k,j,i) - vkomp * &
     107                   tend(k,j,i) = tend(k,j,i) - vkomp *                         &
    94108                                         ( w(k,j,i) - w(k,j-1,i) ) * ddy
    95109                ELSE
    96                    tend(k,j,i) = tend(k,j,i) - vkomp * &
     110                   tend(k,j,i) = tend(k,j,i) - vkomp *                         &
    97111                                         ( w(k,j+1,i) - w(k,j,i) ) * ddy
    98112                ENDIF
     
    100114!--             z-direction
    101115                IF ( w(k,j,i) > 0.0 )  THEN
    102                    tend(k,j,i) = tend(k,j,i) - w(k,j,i) * &
     116                   tend(k,j,i) = tend(k,j,i) - w(k,j,i) *                      &
    103117                                         ( w(k,j,i) - w(k-1,j,i) ) * ddzw(k)
    104118                ELSE
    105                    tend(k,j,i) = tend(k,j,i) - w(k,j,i) * &
     119                   tend(k,j,i) = tend(k,j,i) - w(k,j,i) *                      &
    106120                                         ( w(k+1,j,i) - w(k,j,i) ) * ddzw(k+1)
    107121                ENDIF
     
    119133    SUBROUTINE advec_w_up_ij( i, j )
    120134
    121        USE arrays_3d
    122        USE control_parameters
    123        USE grid_variables
    124        USE indices
     135       USE arrays_3d,                                                          &
     136           ONLY:  ddzw, tend, u, v, w
     137
     138       USE control_parameters,                                                 &
     139           ONLY:  u_gtrans, v_gtrans
     140
     141       USE grid_variables,                                                     &
     142           ONLY:  ddx, ddy
     143
     144       USE indices,                                                            &
     145           ONLY:  nzb_w_inner, nzt
     146
     147       USE kinds
     148
    125149
    126150       IMPLICIT NONE
    127151
    128        INTEGER ::  i, j, k
    129        REAL    ::  ukomp, vkomp
     152       INTEGER(iwp) ::  i !:
     153       INTEGER(iwp) ::  j !:
     154       INTEGER(iwp) ::  k !:
     155
     156       REAL(wp) ::  ukomp !:
     157       REAL(wp) ::  vkomp !:
    130158
    131159
     
    133161!
    134162!--       x-direction
    135           ukomp = 0.25 * ( u(k,j,i) + u(k,j,i+1) + u(k+1,j,i) + u(k+1,j,i+1) &
     163          ukomp = 0.25 * ( u(k,j,i) + u(k,j,i+1) + u(k+1,j,i) + u(k+1,j,i+1)   &
    136164                         ) - u_gtrans
    137165          IF ( ukomp > 0.0 )  THEN
    138              tend(k,j,i) = tend(k,j,i) - ukomp * &
     166             tend(k,j,i) = tend(k,j,i) - ukomp *                               &
    139167                                         ( w(k,j,i) - w(k,j,i-1) ) * ddx
    140168          ELSE
    141              tend(k,j,i) = tend(k,j,i) - ukomp * &
     169             tend(k,j,i) = tend(k,j,i) - ukomp *                               &
    142170                                         ( w(k,j,i+1) - w(k,j,i) ) * ddx
    143171          ENDIF
    144172!
    145173!--       y-direction
    146           vkomp = 0.25 * ( v(k,j,i) + v(k,j+1,i) + v(k+1,j,i) + v(k+1,j+1,i) &
     174          vkomp = 0.25 * ( v(k,j,i) + v(k,j+1,i) + v(k+1,j,i) + v(k+1,j+1,i)   &
    147175                         ) - v_gtrans
    148176          IF ( vkomp > 0.0 )  THEN
    149              tend(k,j,i) = tend(k,j,i) - vkomp * &
     177             tend(k,j,i) = tend(k,j,i) - vkomp *                               &
    150178                                         ( w(k,j,i) - w(k,j-1,i) ) * ddy
    151179          ELSE
    152              tend(k,j,i) = tend(k,j,i) - vkomp * &
     180             tend(k,j,i) = tend(k,j,i) - vkomp *                               &
    153181                                         ( w(k,j+1,i) - w(k,j,i) ) * ddy
    154182          ENDIF
     
    156184!--       z-direction
    157185          IF ( w(k,j,i) > 0.0 )  THEN
    158              tend(k,j,i) = tend(k,j,i) - w(k,j,i) * &
     186             tend(k,j,i) = tend(k,j,i) - w(k,j,i) *                            &
    159187                                         ( w(k,j,i) - w(k-1,j,i) ) * ddzw(k)
    160188          ELSE
    161              tend(k,j,i) = tend(k,j,i) - w(k,j,i) * &
     189             tend(k,j,i) = tend(k,j,i) - w(k,j,i) *                            &
    162190                                         ( w(k+1,j,i) - w(k,j,i) ) * ddzw(k+1)
    163191          ENDIF
Note: See TracChangeset for help on using the changeset viewer.