Changeset 3853


Ignore:
Timestamp:
Aug 1, 2015, 3:44:52 PM (10 years ago)
Author:
dubos
Message:

Sync with DYNAMICO@339 - Kinnmark RK scheme

File:
1 edited

Legend:

Unmodified
Added
Removed
  • dynamico_lmdz/aquaplanet/ICOSAGCM/src/timeloop_gcm.f90

    r3844 r3853  
    66  PUBLIC :: init_timeloop, timeloop
    77
    8   INTEGER, PARAMETER :: euler=1, rk4=2, mlf=3
     8  INTEGER, PARAMETER :: euler=1, rk4=2, mlf=3, rk25=4
    99  INTEGER, PARAMETER :: itau_sync=10
     10  REAL(rstd), DIMENSION(4), PARAMETER :: coef_rk4 = (/ .25, 1./3., .5, 1. /)
     11  REAL(rstd), DIMENSION(5), PARAMETER :: coef_rk25 = (/ .25, 1./6., 3./8., .5, 1. /)
    1012
    1113  TYPE(t_message),SAVE :: req_ps0, req_mass0, req_theta_rhodz0, req_u0, req_q0
     
    9597        scheme=rk4
    9698        nb_stage=4
     99      CASE ('RK2.5')
     100        scheme=rk25
     101        nb_stage=5
    97102      CASE ('leapfrog_matsuno')
    98103        scheme=mlf
     
    254259          CALL euler_scheme(.TRUE.)
    255260       CASE (rk4)
    256           CALL rk_scheme(stage)
     261          CALL rk_scheme(stage, coef_rk4)
     262       CASE (rk25)
     263          CALL rk_scheme(stage, coef_rk25)
    257264       CASE (mlf)
    258265          CALL  leapfrog_matsuno_scheme(stage)
     
    394401    END SUBROUTINE Euler_scheme
    395402
    396     SUBROUTINE RK_scheme(stage)
     403    SUBROUTINE RK_scheme(stage,coef)
    397404      IMPLICIT NONE
    398405      INTEGER :: ind, stage
    399       REAL(rstd), DIMENSION(4), PARAMETER :: coef = (/ .25, 1./3., .5, 1. /)
     406      REAL(rstd), INTENT(IN) :: coef(:)
    400407      REAL(rstd) :: tau
    401408      INTEGER :: i,j,ij,l
Note: See TracChangeset for help on using the changeset viewer.