Changeset 320


Ignore:
Timestamp:
May 19, 2009 11:20:03 AM (15 years ago)
Author:
letzel
Message:
  • Bugfix for timestep criterion in case of simulations with inhomogeneous plant canopy (timestep)
File:
1 edited

Legend:

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

    r318 r320  
    239239
    240240          IF ( dt_plant_canopy_l > 0.0 ) THEN
     241!
     242!--          Invert dt_plant_canopy_l and apply a security timestep factor 0.1
    241243             dt_plant_canopy_l = 0.1 / dt_plant_canopy_l
     244          ELSE
     245!
     246!--          In case of inhomogeneous plant canopy, some processors may have no
     247!--          canopy at all. Then use dt_max as dummy instead.
     248             dt_plant_canopy_l = dt_max
    242249          ENDIF
     250
    243251!
    244252!--       Determine the global minumum
     
    287295          stop_dt = .TRUE.
    288296
    289           WRITE( message_string, * ) 'Time step has reached minimum limit.',   &
    290                         '&dt      = ', dt_3d, ' s  Simulation is terminated.', &
    291                         '&old_dt  = ', old_dt, ' s',                           &
    292                         '&dt_u    = ', dt_u, ' s',                             &
    293                         '&dt_v    = ', dt_v, ' s',                             &
    294                         '&dt_w    = ', dt_w, ' s',                             &
    295                         '&dt_diff = ', dt_diff, ' s',                          &
    296                         '&u_max   = ', u_max, ' m/s   k=', u_max_ijk(1),       &
    297                         '  j=', u_max_ijk(2), '  i=', u_max_ijk(3),            &
    298                         '&v_max   = ', v_max, ' m/s   k=', v_max_ijk(1),       &
    299                         '  j=', v_max_ijk(2), '  i=', v_max_ijk(3),            &
    300                         '&w_max   = ', w_max, ' m/s   k=', w_max_ijk(1),       &
    301                         '  j=', w_max_ijk(2), '  i=', w_max_ijk(3)
     297          WRITE( message_string, * ) 'Time step has reached minimum limit.',  &
     298               '&dt              = ', dt_3d, ' s  Simulation is terminated.', &
     299               '&old_dt          = ', old_dt, ' s',                           &
     300               '&dt_u            = ', dt_u, ' s',                             &
     301               '&dt_v            = ', dt_v, ' s',                             &
     302               '&dt_w            = ', dt_w, ' s',                             &
     303               '&dt_diff         = ', dt_diff, ' s',                          &
     304               '&dt_plant_canopy = ', dt_plant_canopy, ' s',                  &
     305               '&u_max   = ', u_max, ' m/s   k=', u_max_ijk(1),               &
     306               '  j=', u_max_ijk(2), '  i=', u_max_ijk(3),                    &
     307               '&v_max   = ', v_max, ' m/s   k=', v_max_ijk(1),               &
     308               '  j=', v_max_ijk(2), '  i=', v_max_ijk(3),                    &
     309               '&w_max   = ', w_max, ' m/s   k=', w_max_ijk(1),               &
     310               '  j=', w_max_ijk(2), '  i=', w_max_ijk(3)
    302311          CALL message( 'timestep', 'PA0312', 0, 1, 0, 6, 0 )
    303312!
Note: See TracChangeset for help on using the changeset viewer.