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 14037 for NEMO/branches/2020/dev_r13333_KERNEL-08_techene_gm_HPG_SPG/src/SAS/nemogcm.F90 – NEMO

Ignore:
Timestamp:
2020-12-03T12:20:38+01:00 (3 years ago)
Author:
ayoung
Message:

Updated to trunk at 14020. Sette tests passed with change of results for configurations with non-linear ssh. Ticket #2506.

Location:
NEMO/branches/2020/dev_r13333_KERNEL-08_techene_gm_HPG_SPG
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • NEMO/branches/2020/dev_r13333_KERNEL-08_techene_gm_HPG_SPG

    • Property svn:externals
      •  

        old new  
        88 
        99# SETTE 
        10 ^/utils/CI/sette@13292        sette 
         10^/utils/CI/sette_wave@13990         sette 
  • NEMO/branches/2020/dev_r13333_KERNEL-08_techene_gm_HPG_SPG/src/SAS/nemogcm.F90

    r13286 r14037  
    22   !!====================================================================== 
    33   !!                       ***  MODULE nemogcm   *** 
    4    !! StandAlone Surface module : surface fluxes + sea-ice + iceberg floats 
     4   !! StandAlone Surface module : surface fluxes + sea-ice + iceberg floats + ABL 
    55   !!====================================================================== 
    66   !! History :  3.6  ! 2011-11  (S. Alderson, G. Madec) original code 
     
    5858 
    5959#if defined key_mpp_mpi 
     60   ! need MPI_Wtime 
    6061   INCLUDE 'mpif.h' 
    6162#endif 
     
    8384      !!---------------------------------------------------------------------- 
    8485      INTEGER ::   istp   ! time step index 
     86      REAL(wp)::   zstptiming   ! elapsed time for 1 time step 
    8587      !!---------------------------------------------------------------------- 
    8688      ! 
     
    9395#if defined key_agrif 
    9496      Kbb_a = Nbb; Kmm_a = Nnn; Krhs_a = Nrhs   ! agrif_oce module copies of time level indices 
    95       CALL Agrif_Declare_Var       !  "      "   "   "      "  DYN/TRA  
     97      CALL Agrif_Declare_Var       !  "      "   "   "      "  DYN/TRA 
    9698# if defined key_top 
    9799      CALL Agrif_Declare_Var_top   !  "      "   "   "      "  TOP 
     
    107109      !                            !==   time stepping   ==! 
    108110      !                            !-----------------------! 
     111      ! 
     112      !                                               !== set the model time-step  ==! 
     113      ! 
    109114      istp = nit000 
    110115      ! 
     
    124129      END DO 
    125130      ! 
    126 #else 
     131# else 
    127132      ! 
    128133      IF( .NOT.ln_diurnal_only ) THEN                 !==  Standard time-stepping  ==! 
    129134         ! 
    130135         DO WHILE( istp <= nitend .AND. nstop == 0 ) 
    131 #if defined key_mpp_mpi 
     136 
    132137            ncom_stp = istp 
    133             IF ( istp == ( nit000 + 1 ) ) elapsed_time = MPI_Wtime() 
    134             IF ( istp ==         nitend ) elapsed_time = MPI_Wtime() - elapsed_time 
    135 #endif 
     138            IF( ln_timing ) THEN 
     139               zstptiming = MPI_Wtime() 
     140               IF ( istp == ( nit000 + 1 ) ) elapsed_time = zstptiming 
     141               IF ( istp ==         nitend ) elapsed_time = zstptiming - elapsed_time 
     142            ENDIF 
     143             
    136144            CALL stp        ( istp )  
    137145            istp = istp + 1 
     146 
     147            IF( lwp .AND. ln_timing )   WRITE(numtime,*) 'timing step ', istp-1, ' : ', MPI_Wtime() - zstptiming 
     148 
    138149         END DO 
    139150         ! 
     
    305316         WRITE(numout,*) "       )  )       \) |`\ \)  '.   \      (   (   " 
    306317         WRITE(numout,*) "      (  (           \_/       '-._\      )   )  " 
    307          WRITE(numout,*) "       )  ) jgs                    `     (   (   " 
     318         WRITE(numout,*) "       )  ) jgs                     `    (   (   " 
    308319         WRITE(numout,*) "     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ " 
    309320         WRITE(numout,*) 
     
    355366      ! 
    356367      !                                      ! General initialization 
    357       IF( ln_timing    )   CALL timing_init     ! timing 
     368      IF( ln_timing    )   CALL timing_init ( 'timing_sas.output' ) 
    358369      IF( ln_timing    )   CALL timing_start( 'nemo_init') 
    359370 
     
    363374     CALL Agrif_Declare_Var_ini   !  "      "   "   "      "  DOM 
    364375#endif 
    365                            CALL dom_init( Nbb, Nnn, Naa, 'SAS') ! Domain 
     376                           CALL dom_init( Nbb, Nnn, Naa ) ! Domain 
    366377      IF( sn_cfctl%l_prtctl )   & 
    367378         &                 CALL prt_ctl_init        ! Print control 
    368379       
     380      IF( ln_rstart )      CALL rst_read_open 
    369381                           CALL day_init        ! model calendar (using both namelist and restart infos) 
    370       IF( ln_rstart )      CALL rst_read_open 
    371  
     382 
     383#if defined key_agrif 
     384      uu(:,:,:,:) = 0.0_wp   ;   vv(:,:,:,:) = 0.0_wp   ;   ts(:,:,:,:,:) = 0.0_wp   ! needed for interp done at initialization phase 
     385#endif  
    372386      !                                      ! external forcing  
    373387                           CALL sbc_init( Nbb, Nnn, Naa )  ! Forcings : surface module  
     
    480494      ierr =        dia_wri_alloc() 
    481495      ierr = ierr + dom_oce_alloc()          ! ocean domain 
    482       ierr = ierr + oce_alloc    ()          ! (tsn...) needed for agrif and/or SI3 and bdy 
     496      ierr = ierr + oce_alloc    ()          ! (ts...) needed for agrif and/or SI3 and bdy 
    483497      ierr = ierr + bdy_oce_alloc()          ! bdy masks (incl. initialization) 
    484498      ! 
Note: See TracChangeset for help on using the changeset viewer.