Changeset 1249


Ignore:
Timestamp:
Nov 6, 2013 10:45:47 AM (8 years ago)
Author:
heinze
Message:

remove call of user module, reformatting

Location:
palm/trunk/SOURCE
Files:
2 edited

Legend:

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

    r1242 r1249  
    2020! Current revisions:
    2121! ------------------
    22 !
     22! remove call of user module
     23! reformatting
    2324!
    2425! Former revisions:
     
    5152       USE interfaces
    5253       USE pegrid
    53        USE user
    5454
    5555       IMPLICIT NONE
    5656
    57        INTEGER :: finput = 90, ierrn, k, t
    58        CHARACTER (100):: chmess
    59        CHARACTER(1) :: hash
    60        REAL :: r_dummy, fac
    61        REAL :: highheight, highug_vert, highvg_vert, highwsubs_vert
    62        REAL :: lowheight, lowug_vert, lowvg_vert, lowwsubs_vert
     57       INTEGER ::  finput = 90, ierrn, k, t
     58       CHARACTER (100)::  chmess
     59       CHARACTER(1) ::  hash
     60       REAL ::  r_dummy, fac
     61       REAL ::  highheight, highug_vert, highvg_vert, highwsubs_vert
     62       REAL ::  lowheight, lowug_vert, lowvg_vert, lowwsubs_vert
    6363
    6464       ALLOCATE( p_surf(0:nlsf), pt_surf(0:nlsf), q_surf(0:nlsf),         &
     
    7272
    7373
    74        OPEN (finput, FILE='LSF_DATA', STATUS='OLD', &
    75               FORM='FORMATTED', IOSTAT=ierrn)
    76 
    77        IF (ierrn /= 0 ) THEN
     74       OPEN ( finput, FILE='LSF_DATA', STATUS='OLD', &
     75              FORM='FORMATTED', IOSTAT=ierrn )
     76
     77       IF ( ierrn /= 0 ) THEN
    7878          message_string = 'file LSF_DATA does not exist'
    7979          CALL message( 'ls_forcing', 'PA0368', 1, 2, 0, 6, 0 )
     
    8383!
    8484!--    First three lines of LSF_DATA contain header
    85        READ( finput, FMT='(a100)', IOSTAT=ierrn ) chmess
    86        READ( finput, FMT='(a100)', IOSTAT=ierrn ) chmess
    87        READ( finput, FMT='(a100)', IOSTAT=ierrn ) chmess
    88 
    89        IF (ierrn /= 0 ) THEN
     85       READ ( finput, FMT='(a100)', IOSTAT=ierrn ) chmess
     86       READ ( finput, FMT='(a100)', IOSTAT=ierrn ) chmess
     87       READ ( finput, FMT='(a100)', IOSTAT=ierrn ) chmess
     88
     89       IF ( ierrn /= 0 ) THEN
    9090          message_string = 'errors in file LSF_DATA'
    9191          CALL message( 'ls_forcing', 'PA0369', 1, 2, 0, 6, 0 )
     
    9999       DO WHILE ( time_surf(t) < end_time )
    100100          t = t + 1
    101           READ( finput, *, IOSTAT = ierrn ) time_surf(t), shf_surf(t), &
     101          READ ( finput, *, IOSTAT = ierrn ) time_surf(t), shf_surf(t), &
    102102                                             qsws_surf(t), pt_surf(t),  &
    103103                                             q_surf(t), p_surf(t)
    104104
    105           IF ( ierrn < 0 ) THEN
    106             WRITE( message_string, * ) 'No time dependend surface variables ',&
     105          IF ( ierrn < 0 )  THEN
     106            WRITE ( message_string, * ) 'No time dependend surface variables ',&
    107107                              'in&LSF_DATA for end of run found'
    108108
     
    112112
    113113
    114        IF ( time_surf(1) > end_time ) THEN
    115           WRITE( message_string, * ) 'No time dependend surface variables in ',  &
     114       IF ( time_surf(1) > end_time )  THEN
     115          WRITE ( message_string, * ) 'No time dependend surface variables in ',&
    116116                                     '&LSF_DATA for end of run found - ',  &
    117117                                     'lsf_surf is set to FALSE'
     
    123123!--    Go to the end of the list with surface variables
    124124       DO WHILE ( ierrn == 0 )
    125           READ (finput, *, IOSTAT = ierrn) r_dummy
     125          READ ( finput, *, IOSTAT = ierrn ) r_dummy
    126126       ENDDO
    127127
     
    130130
    131131       t = 0
    132        DO WHILE (time_vert(t) < end_time)
     132       DO WHILE ( time_vert(t) < end_time )
    133133          t = t + 1
    134134          hash = "#"
     
    138138!--       from there onwards the profiles will be read
    139139          DO WHILE ( .NOT. ( hash == "#" .AND. ierrn == 0 ) )
    140              READ( finput, *, IOSTAT=ierrn ) hash, time_vert(t)
    141              IF ( ierrn < 0 ) THEN
     140             READ ( finput, *, IOSTAT=ierrn ) hash, time_vert(t)
     141             IF ( ierrn < 0 )  THEN
    142142                WRITE( message_string, * ) 'No time dependend vertical profiles',&
    143143                                 ' in&LSF_DATA for end of run found'
     
    148148          IF ( t == 1 .AND. time_vert(t) > end_time ) EXIT
    149149
    150           READ( finput, *, IOSTAT=ierrn ) lowheight, lowug_vert, lowvg_vert, &
    151                                           lowwsubs_vert
    152           IF (ierrn /= 0 ) THEN
     150          READ ( finput, *, IOSTAT=ierrn ) lowheight, lowug_vert, lowvg_vert, &
     151                                           lowwsubs_vert
     152          IF ( ierrn /= 0 ) THEN
    153153             message_string = 'errors in file LSF_DATA'
    154154             CALL message( 'nudging', 'PA0369', 1, 2, 0, 6, 0 )
    155155          ENDIF
    156156
    157           READ( finput, *, IOSTAT=ierrn ) highheight, highug_vert, highvg_vert, &
    158                                           highwsubs_vert
     157          READ ( finput, *, IOSTAT=ierrn ) highheight, highug_vert, highvg_vert, &
     158                                           highwsubs_vert
    159159     
    160           IF (ierrn /= 0 ) THEN
     160          IF ( ierrn /= 0 ) THEN
    161161             message_string = 'errors in file LSF_DATA'
    162162             CALL message( 'nudging', 'PA0369', 1, 2, 0, 6, 0 )
     
    165165
    166166          DO  k = nzb, nzt+1
    167              IF ( highheight < zu(k) ) THEN
     167             IF ( highheight < zu(k) )  THEN
    168168                lowheight     = highheight
    169169                lowug_vert    = highug_vert
     
    172172
    173173                ierrn = 0
    174                 READ( finput, *, IOSTAT=ierrn ) highheight, highug_vert, &
    175                                                 highvg_vert, highwsubs_vert
    176 
    177                 IF (ierrn /= 0 ) THEN
     174                READ ( finput, *, IOSTAT=ierrn ) highheight, highug_vert, &
     175                                                 highvg_vert, highwsubs_vert
     176
     177                IF ( ierrn /= 0 ) THEN
    178178                   message_string = 'errors in file LSF_DATA'
    179179                   CALL message( 'nudging', 'PA0369', 1, 2, 0, 6, 0 )
     
    194194       ENDDO
    195195
    196        IF ( time_vert(1) > end_time ) THEN
    197           WRITE( message_string, * ) 'Time dependent large scale profile ',&
    198                             'forcing from&LSF_DATA sets in after end of ' ,&
    199                             'simulation - lsf_vert is set to FALSE'
     196       IF ( time_vert(1) > end_time )  THEN
     197          WRITE ( message_string, * ) 'Time dependent large scale profile ',&
     198                             'forcing from&LSF_DATA sets in after end of ' ,&
     199                             'simulation - lsf_vert is set to FALSE'
    200200          CALL message( 'ls_forcing', 'PA0373', 0, 0, 0, 6, 0 )
    201201          lsf_vert = .FALSE.
     
    216216       USE interfaces
    217217       USE pegrid
    218        USE user
    219218
    220219       IMPLICIT NONE
     
    230229          t = t + 1
    231230       ENDDO
    232        IF ( time /= time_surf(t) ) THEN
     231       IF ( time /= time_surf(t) )  THEN
    233232         t = t - 1
    234233       ENDIF
     
    252251       USE interfaces
    253252       USE pegrid
    254        USE user
    255253
    256254       IMPLICIT NONE
     
    266264          t = t + 1
    267265       ENDDO
    268        IF ( time /= time_vert(t) ) THEN
     266       IF ( time /= time_vert(t) )  THEN
    269267         t = t - 1
    270268       ENDIF
    271269
    272        fac = (time-time_vert(t)) / (time_vert(t+1)-time_vert(t))
     270       fac = ( time-time_vert(t) ) / ( time_vert(t+1)-time_vert(t) )
    273271
    274272       ug     = ug_vert(:,t) + fac * ( ug_vert(:,t+1) - ug_vert(:,t) )
    275273       vg     = vg_vert(:,t) + fac * ( vg_vert(:,t+1) - vg_vert(:,t) )
    276274
    277        IF ( large_scale_subsidence ) THEN
     275       IF ( large_scale_subsidence )  THEN
    278276          w_subs = wsubs_vert(:,t) + fac * ( wsubs_vert(:,t+1) - wsubs_vert(:,t) )
    279277       ENDIF
  • palm/trunk/SOURCE/nudging.f90

    r1242 r1249  
    2020! Current revisions:
    2121! ------------------
    22 !
     22! remove call of user module
     23! reformatting
    2324!
    2425! Former revisions:
     
    5556       USE interfaces
    5657       USE pegrid
    57        USE user
    5858
    5959       IMPLICIT NONE
     
    7979
    8080       t = 0
    81        OPEN (finput, FILE='NUDGING_DATA', STATUS='OLD', &
    82               FORM='FORMATTED', IOSTAT=ierrn)
    83 
    84        IF (ierrn /= 0 ) THEN
     81       OPEN ( finput, FILE='NUDGING_DATA', STATUS='OLD', &
     82              FORM='FORMATTED', IOSTAT=ierrn )
     83
     84       IF ( ierrn /= 0 ) THEN
    8585          message_string = 'file NUDGING_DATA does not exist'
    8686          CALL message( 'nudging', 'PA0365', 1, 2, 0, 6, 0 )
     
    9898          DO WHILE ( .NOT. ( hash == "#" .AND. ierrn == 0 ) )
    9999         
    100             READ( finput, *, IOSTAT=ierrn ) hash, timenudge(t)
    101             IF ( ierrn < 0 ) EXIT rloop
     100            READ ( finput, *, IOSTAT=ierrn ) hash, timenudge(t)
     101            IF ( ierrn < 0 )  EXIT rloop
    102102
    103103          ENDDO
    104104
    105105          ierrn = 0
    106           READ( finput, *, IOSTAT=ierrn ) lowheight, lowtnudge, lowunudge,   &
    107                                           lowvnudge, lowwnudge , lowptnudge, &
    108                                           lowqnudge
    109 
    110           IF (ierrn /= 0 ) THEN
     106          READ ( finput, *, IOSTAT=ierrn ) lowheight, lowtnudge, lowunudge,   &
     107                                           lowvnudge, lowwnudge , lowptnudge, &
     108                                           lowqnudge
     109
     110          IF ( ierrn /= 0 ) THEN
    111111             message_string = 'errors in file NUDGING_DATA'
    112112             CALL message( 'nudging', 'PA0366', 1, 2, 0, 6, 0 )
     
    114114
    115115          ierrn = 0
    116           READ( finput, *, IOSTAT=ierrn ) highheight, hightnudge, highunudge,   &
    117                                           highvnudge, highwnudge , highptnudge, &
    118                                           highqnudge
    119 
    120           IF (ierrn /= 0 ) THEN
     116          READ ( finput, *, IOSTAT=ierrn ) highheight, hightnudge, highunudge,   &
     117                                           highvnudge, highwnudge , highptnudge, &
     118                                           highqnudge
     119
     120          IF ( ierrn /= 0 ) THEN
    121121             message_string = 'errors in file NUDGING_DATA'
    122122             CALL message( 'nudging', 'PA0366', 1, 2, 0, 6, 0 )
     
    124124
    125125          DO  k = nzb, nzt+1
    126              IF ( highheight < zu(k) ) THEN
     126             IF ( highheight < zu(k) )  THEN
    127127                lowheight  = highheight
    128128                lowtnudge  = hightnudge
     
    134134 
    135135                ierrn = 0
    136                 READ( finput, *, IOSTAT=ierrn )  highheight , hightnudge , &
    137                                                  highunudge , highvnudge , &
    138                                                  highwnudge , highptnudge, &
    139                                                  highqnudge
    140                 IF (ierrn /= 0 ) THEN
     136                READ ( finput, *, IOSTAT=ierrn )  highheight , hightnudge , &
     137                                                  highunudge , highvnudge , &
     138                                                  highwnudge , highptnudge, &
     139                                                  highqnudge
     140                IF (ierrn /= 0 )  THEN
    141141                   message_string = 'errors in file NUDGING_DATA'
    142142                   CALL message( 'nudging', 'PA0366', 1, 2, 0, 6, 0 )
     
    147147!--          Interpolation of prescribed profiles in space
    148148
    149              fac = (highheight-zu(k))/(highheight - lowheight)
    150 
    151              tnudge(k,t)  = fac * lowtnudge + (1-fac) * hightnudge
    152              unudge(k,t)  = fac * lowunudge + (1-fac) * highunudge
    153              vnudge(k,t)  = fac * lowvnudge + (1-fac) * highvnudge
    154              wnudge(k,t)  = fac * lowwnudge + (1-fac) * highwnudge
    155              ptnudge(k,t) = fac * lowptnudge + (1-fac) * highptnudge
    156              qnudge(k,t)  = fac * lowqnudge + (1-fac) * highqnudge
     149             fac = ( highheight - zu(k) ) / ( highheight - lowheight )
     150
     151             tnudge(k,t)  = fac * lowtnudge + ( 1 - fac ) * hightnudge
     152             unudge(k,t)  = fac * lowunudge + ( 1 - fac ) * highunudge
     153             vnudge(k,t)  = fac * lowvnudge + ( 1 - fac ) * highvnudge
     154             wnudge(k,t)  = fac * lowwnudge + ( 1 - fac ) * highwnudge
     155             ptnudge(k,t) = fac * lowptnudge + ( 1 - fac ) * highptnudge
     156             qnudge(k,t)  = fac * lowqnudge + ( 1 - fac ) * highqnudge
    157157          ENDDO
    158158
    159159       ENDDO rloop
    160160
    161        CLOSE( finput )
     161       CLOSE ( finput )
    162162
    163163!
     
    185185       USE pegrid
    186186       USE statistics
    187        USE user
    188187
    189188       IMPLICIT NONE
     
    297296       USE pegrid
    298297       USE statistics
    299        USE user
    300298
    301299       IMPLICIT NONE
     
    312310         t = t+1
    313311       ENDDO
    314        IF ( time /= timenudge(1) ) THEN
     312       IF ( time /= timenudge(1) )  THEN
    315313         t = t-1
    316314       ENDIF
     
    328326
    329327                currtnudge = MAX( dt_3d, tnudge(k,t) * dtp + tnudge(k,t+1) * dtm )
    330 
    331                 !IF ((myid ==0 .AND. k==2) .AND. (i==1 .AND. j==1)) THEN
    332                 !  PRINT*, time, dt_3d, intermediate_timestep_count, currtnudge, dtp, dtm
    333                 !ENDIF
    334328
    335329                tend(k,j,i) = tend(k,j,i) - ( hom(k,1,1,0) - &
Note: See TracChangeset for help on using the changeset viewer.