Ignore:
Timestamp:
Jan 18, 2011 4:19:48 PM (13 years ago)
Author:
suehring
Message:

Right computation of the pressure using Runge-Kutta weighting coefficients. Consideration of the pressure gradient during the time integration removed. Removed bugfix concerning velocity variances.

File:
1 edited

Legend:

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

    r668 r673  
    77! Current revisions:
    88! -----------------
    9 !
     9! weight_substep (moved from advec_ws) and weight_pres added.
     10! Allocate p_sub when using Multigrid or SOR solver.
     11! Call of ws_init moved behind the if requests.
    1012! Former revisions:
    1113! -----------------
     
    208210              w_2(nzb:nzt+1,nysg:nyng,nxlg:nxrg),  &
    209211              w_3(nzb:nzt+1,nysg:nyng,nxlg:nxrg) )
     212!
     213!-- Following array is required to buffer the perturbation pressure during
     214!-- Runge-Kutta 3rd order time integration.
     215    IF ( psolver == 'multigrid' .OR. psolver == 'sor' )  THEN
     216       ALLOCATE( p_sub(nzb:nzt+1,nysg:nyng,nxlg:nxrg) )
     217    ENDIF
    210218
    211219    IF ( timestep_scheme(1:5) /= 'runge' )  THEN
     
    425433
    426434    ENDIF
    427 
     435   
     436!
     437!-- Allocate arrays containing the RK coefficient for right evaluation of
     438!-- perturbation pressure and turbulent fluxes. At this point it is needed
     439!-- for right pressure correction during initialization. Further below
     440!-- the real values will be set.
     441    ALLOCATE (weight_substep(1:intermediate_timestep_count_max),           &
     442              weight_pres(1:intermediate_timestep_count_max) )
     443    weight_substep = 1.
     444    weight_pres = 1.
     445    intermediate_timestep_count = 1 ! needed for simulated_time=0
     446       
    428447!
    429448!-- Initialize model variables
     
    823842          IF ( precipitation )  precipitation_amount = 0.0
    824843       ENDIF
     844       
     845!
     846!--    Initialize quantities for special advections schemes
     847       CALL init_advec
    825848
    826849!
     
    13041327
    13051328!
    1306 !-- Initialize quantities for special advections schemes
    1307     CALL init_advec
    1308     IF ( momentum_advec == 'ws-scheme' .OR.  &
    1309          scalar_advec == 'ws-scheme' ) CALL ws_init
     1329!-- Initialize the ws-scheme.   
     1330    IF ( ws_scheme_sca .OR. ws_scheme_mom )  CALL ws_init       
     1331
     1332!
     1333!-- Setting weighting factors for right evaluation of perturbation pressure
     1334!-- and turbulent quantities during the RK substeps.               
     1335    IF ( TRIM(timestep_scheme) == 'runge-kutta-3' )  THEN    ! RK3       
     1336       weight_substep(1) = 0.166666666666666
     1337       weight_substep(2) = 0.3
     1338       weight_substep(3) = 0.533333333333333
     1339         
     1340       weight_pres(1) = 0.333333333333333
     1341       weight_pres(2) = 0.416666666666666
     1342       weight_pres(3) = 0.25         
     1343    ELSEIF ( TRIM(timestep_scheme) == 'runge-kutta-2' )  THEN  ! RK2       
     1344       weight_substep(1) = 0.5
     1345       weight_substep(2) = 0.5
     1346         
     1347       weight_pres(1) = 0.5
     1348       weight_pres(2) = 0.5         
     1349    ELSE                                                  ! Euler and Leapfrog       
     1350       weight_substep(1) = 1.0     
     1351       weight_pres(1) = 1.0                   
     1352    ENDIF
    13101353
    13111354!
Note: See TracChangeset for help on using the changeset viewer.