New URL for NEMO forge!   http://forge.nemo-ocean.eu

Since March 2022 along with NEMO 4.2 release, the code development moved to a self-hosted GitLab.
This present forge is now archived and remained online for history.
Changeset 3294 for trunk/NEMOGCM/NEMO/OPA_SRC/TRA/traadv_muscl2.F90 – NEMO

Ignore:
Timestamp:
2012-01-28T17:44:18+01:00 (12 years ago)
Author:
rblod
Message:

Merge of 3.4beta into the trunk

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/NEMOGCM/NEMO/OPA_SRC/TRA/traadv_muscl2.F90

    r2715 r3294  
    2323   USE diaptr          ! poleward transport diagnostics 
    2424   USE trc_oce         ! share passive tracers/Ocean variables 
     25   USE wrk_nemo        ! Memory Allocation 
     26   USE timing          ! Timing 
    2527 
    2628 
     
    4244CONTAINS 
    4345 
    44    SUBROUTINE tra_adv_muscl2( kt, cdtype, p2dt, pun, pvn, pwn,      & 
     46   SUBROUTINE tra_adv_muscl2( kt, kit000, cdtype, p2dt, pun, pvn, pwn,      & 
    4547      &                                         ptb, ptn, pta, kjpt ) 
    4648      !!---------------------------------------------------------------------- 
     
    5961      !!              IPSL, Sept. 2000 (http://www.lodyc.jussieu.fr/opa) 
    6062      !!---------------------------------------------------------------------- 
    61       USE wrk_nemo, ONLY:   wrk_in_use, wrk_not_released 
    62       USE oce     , ONLY:   zwx   => ua       , zwy   => va         ! (ua,va) used as 3D workspace 
    63       USE wrk_nemo, ONLY:   zslpx => wrk_3d_1 , zslpy => wrk_3d_2   ! 3D workspace 
     63      USE oce     , ONLY:   zwx   => ua    , zwy   => va         ! (ua,va) used as 3D workspace 
    6464      !! 
    6565      INTEGER                              , INTENT(in   ) ::   kt              ! ocean time-step index 
     66      INTEGER                              , INTENT(in   ) ::   kit000          ! first time step index 
    6667      CHARACTER(len=3)                     , INTENT(in   ) ::   cdtype          ! =TRA or TRC (tracer indicator) 
    6768      INTEGER                              , INTENT(in   ) ::   kjpt            ! number of tracers 
     
    7576      REAL(wp) ::   zv, z0v, zzwy, z0w        !   -      - 
    7677      REAL(wp) ::   ztra, zbtr, zdt, zalpha   !   -      - 
     78      REAL(wp), POINTER, DIMENSION(:,:,:) :: zslpx, zslpy 
    7779      !!---------------------------------------------------------------------- 
    78  
    79       IF( wrk_in_use(3, 1,2) ) THEN 
    80          CALL ctl_stop('tra_adv_muscl2: requested workspace arrays are unavailable')   ;   RETURN 
    81       ENDIF 
    82  
    83       IF( kt == nit000 )  THEN 
     80      ! 
     81      IF( nn_timing == 1 )  CALL timing_start('tra_adv_muscl2') 
     82      ! 
     83      CALL wrk_alloc( jpi, jpj, jpk, zslpx, zslpy ) 
     84      ! 
     85 
     86      IF( kt == kit000 )  THEN 
    8487         IF(lwp) WRITE(numout,*) 
    8588         IF(lwp) WRITE(numout,*) 'tra_adv_muscl2 : MUSCL2 advection scheme on ', cdtype 
     
    285288      END DO 
    286289      ! 
    287       IF( wrk_not_released(3, 1,2) )   CALL ctl_stop('tra_adv_muscl2: failed to release workspace arrays') 
     290      CALL wrk_dealloc( jpi, jpj, jpk, zslpx, zslpy ) 
     291      ! 
     292      IF( nn_timing == 1 )  CALL timing_stop('tra_adv_muscl2') 
    288293      ! 
    289294   END SUBROUTINE tra_adv_muscl2 
Note: See TracChangeset for help on using the changeset viewer.