Changeset 3311


Ignore:
Timestamp:
Oct 5, 2018 12:34:56 PM (3 years ago)
Author:
raasch
Message:

Stokes drift is regarded in timestep calculation, check if ocean mode is used for invalid combinations

Location:
palm/trunk/SOURCE
Files:
2 edited

Legend:

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

    r3303 r3311  
    2525! -----------------
    2626! $Id$
     27! check if ocean mode is used for invalid combinations
     28!
     29! 3303 2018-10-03 12:04:15Z raasch
    2730! salinity allowed to be switched off
    2831!
     
    543546
    544547    USE control_parameters,                                                    &
    545         ONLY:  coupling_char, coupling_mode, message_string, use_top_fluxes
    546 
    547     IMPLICIT NONE
    548 
     548        ONLY:  coupling_char, coupling_mode, initializing_actions,             &
     549               message_string, use_top_fluxes
     550
     551    USE pmc_interface,                                                         &
     552        ONLY:  nested_run
     553
     554    IMPLICIT NONE
     555
     556
     557!
     558!-- Check for invalid combinations
     559    IF ( nested_run )  THEN
     560       message_string = 'ocean mode not allowed for nesting'
     561       CALL message( 'ocean_check_parameters', 'PA0510', 1, 2, 0, 6, 0 )
     562    ENDIF
     563
     564    IF ( TRIM( initializing_actions ) == 'cyclic_fill' )  THEN
     565       message_string = 'ocean mode does not allow cyclic-fill initialization'
     566       CALL message( 'ocean_check_parameters', 'PA0511', 1, 2, 0, 6, 0 )
     567    ENDIF
    549568
    550569!
     
    557576!--    Check whether an (uncoupled) atmospheric run has been declared as an
    558577!--    ocean run (this setting is done via palmrun-option -y)
    559        message_string = 'ocean = .F. does not allow coupling_char = "' //      &
     578       message_string = 'ocean mode does not allow coupling_char = "' //       &
    560579                        TRIM( coupling_char ) // '" set by palmrun-option "-y"'
    561        CALL message( 'check_parameters', 'PA0317', 1, 2, 0, 6, 0 )
     580       CALL message( 'ocean_check_parameters', 'PA0317', 1, 2, 0, 6, 0 )
    562581
    563582    ENDIF
     
    592611          message_string = 'salinityflux must not be set for ocean run ' //    &
    593612                           'without salinity'
    594           CALL message( 'check_parameters', 'PA0509', 1, 2, 0, 6, 0 )
     613          CALL message( 'ocean_check_parameters', 'PA0509', 1, 2, 0, 6, 0 )
    595614       ENDIF
    596615    ENDIF
  • palm/trunk/SOURCE/timestep.f90

    r3274 r3311  
    2525! -----------------
    2626! $Id$
     27! Stokes drift is regarded in timestep calculation
     28!
     29! 3274 2018-09-24 15:42:55Z knoop
    2730! Modularization of all bulk cloud physics code components
    2831!
     
    136139
    137140    USE arrays_3d,                                                             &
    138         ONLY:  dzu, dzw, kh, km, u, v, w
     141        ONLY:  dzu, dzw, kh, km, u, u_stokes_zu, v, v_stokes_zu, w
    139142
    140143    USE control_parameters,                                                    &
     
    278281             DO  k = nzb+1, nzt
    279282                dt_u_l = MIN( dt_u_l, ( dx     /                               &
    280                                  ( ABS( u(k,j,i) - u_gtrans ) + 1.0E-10_wp ) ) )
     283                                 ( ABS( u(k,j,i) - u_gtrans + u_stokes_zu(k) ) &
     284                                   + 1.0E-10_wp ) ) )
    281285                dt_v_l = MIN( dt_v_l, ( dy     /                               &
    282                                  ( ABS( v(k,j,i) - v_gtrans ) + 1.0E-10_wp ) ) )
     286                                 ( ABS( v(k,j,i) - v_gtrans + v_stokes_zu(k) ) &
     287                                   + 1.0E-10_wp ) ) )
    283288                dt_w_l = MIN( dt_w_l, ( dzu(k) /                               &
    284289                                 ( ABS( w(k,j,i) )            + 1.0E-10_wp ) ) )
Note: See TracChangeset for help on using the changeset viewer.