Ignore:
Timestamp:
Jul 14, 2016 3:35:18 PM (5 years ago)
Author:
hellstea
Message:

Bug in vertical nesting mode corrected

File:
1 edited

Legend:

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

    r1933 r1964  
    1919! Current revisions:
    2020! ------------------
    21 !
     21! Bugfix: erroneous setting of nest_bound_l/r/s/n = .TRUE. for vertical nesting mode removed.
    2222!
    2323! Former revisions:
     
    10991099!
    11001100!-- Setting of flags for inflow/outflow/nesting conditions.
    1101     IF ( nesting_mode == 'vertical' .AND. nest_domain )  THEN
    1102        IF ( nxl == 0 )  THEN
     1101    IF ( pleft == MPI_PROC_NULL )  THEN
     1102       IF ( bc_lr == 'dirichlet/radiation' )  THEN
     1103          inflow_l  = .TRUE.
     1104       ELSEIF ( bc_lr == 'radiation/dirichlet' )  THEN
     1105          outflow_l = .TRUE.
     1106       ELSEIF ( bc_lr == 'nested' )  THEN
    11031107          nest_bound_l = .TRUE.
    11041108       ENDIF
    1105     ELSE
    1106        IF ( pleft == MPI_PROC_NULL )  THEN
    1107           IF ( bc_lr == 'dirichlet/radiation' )  THEN
    1108              inflow_l  = .TRUE.
    1109           ELSEIF ( bc_lr == 'radiation/dirichlet' )  THEN
    1110              outflow_l = .TRUE.
    1111           ELSEIF ( bc_lr == 'nested' )  THEN
    1112              nest_bound_l = .TRUE.
    1113           ENDIF
    1114        ENDIF
    11151109    ENDIF
    11161110 
    1117     IF ( nesting_mode == 'vertical' .AND. nest_domain )  THEN
    1118        IF ( nxr == nx )  THEN
     1111    IF ( pright == MPI_PROC_NULL )  THEN
     1112       IF ( bc_lr == 'dirichlet/radiation' )  THEN
     1113          outflow_r = .TRUE.
     1114       ELSEIF ( bc_lr == 'radiation/dirichlet' )  THEN
     1115          inflow_r  = .TRUE.
     1116       ELSEIF ( bc_lr == 'nested' )  THEN
    11191117          nest_bound_r = .TRUE.
    11201118       ENDIF
    1121     ELSE
    1122        IF ( pright == MPI_PROC_NULL )  THEN
    1123           IF ( bc_lr == 'dirichlet/radiation' )  THEN
    1124              outflow_r = .TRUE.
    1125           ELSEIF ( bc_lr == 'radiation/dirichlet' )  THEN
    1126              inflow_r  = .TRUE.
    1127           ELSEIF ( bc_lr == 'nested' )  THEN
    1128              nest_bound_r = .TRUE.
    1129           ENDIF
    1130        ENDIF
    1131     ENDIF
    1132 
    1133     IF ( nesting_mode == 'vertical' .AND. nest_domain )  THEN
    1134        IF ( nys == 0 )  THEN
     1119    ENDIF
     1120
     1121    IF ( psouth == MPI_PROC_NULL )  THEN
     1122       IF ( bc_ns == 'dirichlet/radiation' )  THEN
     1123          outflow_s = .TRUE.
     1124       ELSEIF ( bc_ns == 'radiation/dirichlet' )  THEN
     1125          inflow_s  = .TRUE.
     1126       ELSEIF ( bc_ns == 'nested' )  THEN
    11351127          nest_bound_s = .TRUE.
    11361128       ENDIF
    1137     ELSE
    1138        IF ( psouth == MPI_PROC_NULL )  THEN
    1139           IF ( bc_ns == 'dirichlet/radiation' )  THEN
    1140              outflow_s = .TRUE.
    1141           ELSEIF ( bc_ns == 'radiation/dirichlet' )  THEN
    1142              inflow_s  = .TRUE.
    1143           ELSEIF ( bc_ns == 'nested' )  THEN
    1144              nest_bound_s = .TRUE.
    1145           ENDIF
    1146        ENDIF
    1147     ENDIF
    1148 
    1149     IF ( nesting_mode == 'vertical' .AND. nest_domain )  THEN
    1150        IF ( nyn == ny )  THEN
     1129    ENDIF
     1130
     1131    IF ( pnorth == MPI_PROC_NULL )  THEN
     1132       IF ( bc_ns == 'dirichlet/radiation' )  THEN
     1133          inflow_n  = .TRUE.
     1134       ELSEIF ( bc_ns == 'radiation/dirichlet' )  THEN
     1135          outflow_n = .TRUE.
     1136       ELSEIF ( bc_ns == 'nested' )  THEN
    11511137          nest_bound_n = .TRUE.
    1152        ENDIF
    1153     ELSE
    1154        IF ( pnorth == MPI_PROC_NULL )  THEN
    1155           IF ( bc_ns == 'dirichlet/radiation' )  THEN
    1156              inflow_n  = .TRUE.
    1157           ELSEIF ( bc_ns == 'radiation/dirichlet' )  THEN
    1158              outflow_n = .TRUE.
    1159           ELSEIF ( bc_ns == 'nested' )  THEN
    1160              nest_bound_n = .TRUE.
    1161           ENDIF
    11621138       ENDIF
    11631139    ENDIF
Note: See TracChangeset for help on using the changeset viewer.