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 5666 for branches/UKMO/2015_CO6_CO5_shelfdiagnostic/NEMOGCM/NEMO/OPA_SRC/step.F90 – NEMO

Ignore:
Timestamp:
2015-08-04T14:45:33+02:00 (9 years ago)
Author:
deazer
Message:

Upgraded branch to VERSION 3 6 STABLE

File:
1 edited

Legend:

Unmodified
Added
Removed
  • branches/UKMO/2015_CO6_CO5_shelfdiagnostic/NEMOGCM/NEMO/OPA_SRC/step.F90

    r5422 r5666  
    8383      IF ( kstp == (nit000 + 1) ) lk_agrif_fstep = .FALSE. 
    8484# if defined key_iomput 
    85       IF( Agrif_Nbstepint() == 0 )   CALL iom_swap( "nemo" ) 
     85      IF( Agrif_Nbstepint() == 0 )   CALL iom_swap( cxios_context ) 
    8686# endif 
    8787#endif 
    8888                             indic = 0           ! reset to no error condition 
    8989      IF( kstp == nit000 ) THEN 
    90                       CALL iom_init( "nemo" )      ! iom_put initialization (must be done after nemo_init for AGRIF+XIOS+OASIS) 
    91          IF( ln_crs ) CALL iom_init( "nemo_crs" )  ! initialize context for coarse grid 
     90         ! must be done after nemo_init for AGRIF+XIOS+OASIS 
     91                      CALL iom_init(      cxios_context          )  ! iom_put initialization 
     92         IF( ln_crs ) CALL iom_init( TRIM(cxios_context)//"_crs" )  ! initialize context for coarse grid 
    9293      ENDIF 
    9394 
    9495      IF( kstp /= nit000 )   CALL day( kstp )         ! Calendar (day was already called at nit000 in day_init) 
    95                              CALL iom_setkt( kstp - nit000 + 1, "nemo"     )   ! say to iom that we are at time step kstp 
    96       IF( ln_crs     )       CALL iom_setkt( kstp - nit000 + 1, "nemo_crs" )   ! say to iom that we are at time step kstp 
     96                             CALL iom_setkt( kstp - nit000 + 1,      cxios_context          )   ! tell iom we are at time step kstp 
     97      IF( ln_crs     )       CALL iom_setkt( kstp - nit000 + 1, TRIM(cxios_context)//"_crs" )   ! tell iom we are at time step kstp 
    9798 
    9899      !>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> 
     
    100101      !<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<< 
    101102      IF( lk_tide    )   CALL sbc_tide( kstp ) 
    102       IF( lk_bdy     )   CALL bdy_dta ( kstp, time_offset=+1 )   ! update dynamic & tracer data at open boundaries 
    103  
     103      IF( lk_bdy     )  THEN 
     104         IF( ln_apr_dyn) CALL sbc_apr( kstp )   ! bdy_dta needs ssh_ib  
     105                         CALL bdy_dta ( kstp, time_offset=+1 )   ! update dynamic & tracer data at open boundaries 
     106      ENDIF 
    104107                         CALL sbc    ( kstp )         ! Sea Boundary Condition (including sea-ice) 
    105108                                                      ! clem: moved here for bdy ice purpose 
     109      !>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> 
     110      ! Update stochastic parameters and random T/S fluctuations 
     111      !>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> 
     112                        CALL sto_par( kstp )          ! Stochastic parameters 
    106113 
    107114      !>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> 
     
    145152      ! 
    146153      IF( lk_ldfslp ) THEN                            ! slope of lateral mixing 
     154         IF(ln_sto_eos ) CALL sto_pts( tsn )          ! Random T/S fluctuations 
    147155                         CALL eos( tsb, rhd, gdept_0(:,:,:) )               ! before in situ density 
    148156         IF( ln_zps .AND. .NOT. ln_isfcav)                               & 
     
    162170      IF( lk_traldf_eiv )   CALL ldf_eiv( kstp )      ! eddy induced velocity coefficient 
    163171#endif 
    164 #if defined key_traldf_c3d && key_traldf_smag 
     172#if defined key_traldf_c3d && defined key_traldf_smag 
    165173                          CALL ldf_tra_smag( kstp )      ! eddy induced velocity coefficient 
    166174#  endif 
    167 #if defined key_dynldf_c3d && key_dynldf_smag 
     175#if defined key_dynldf_c3d && defined key_dynldf_smag 
    168176                          CALL ldf_dyn_smag( kstp )      ! eddy induced velocity coefficient 
    169177#  endif 
     
    180188          ! Note that the computation of vertical velocity above, hence "after" sea level 
    181189          ! is necessary to compute momentum advection for the rhs of barotropic loop: 
     190            IF(ln_sto_eos ) CALL sto_pts( tsn )                             ! Random T/S fluctuations 
    182191                            CALL eos    ( tsn, rhd, rhop, fsdept_n(:,:,:) ) ! now in situ density for hpg computation 
    183192            IF( ln_zps .AND. .NOT. ln_isfcav)                               & 
     
    218227      IF( lk_floats  )      CALL flo_stp( kstp )         ! drifting Floats 
    219228      IF( lk_diahth  )      CALL dia_hth( kstp )         ! Thermocline depth (20 degres isotherm depth) 
    220       IF( .NOT. lk_cpl )    CALL dia_fwb( kstp )         ! Fresh water budget diagnostics 
     229      IF( .NOT. ln_cpl )    CALL dia_fwb( kstp )         ! Fresh water budget diagnostics 
    221230      IF( lk_diadct  )      CALL dia_dct( kstp )         ! Transports 
    222231      IF( lk_diaar5  )      CALL dia_ar5( kstp )         ! ar5 diag 
     
    261270         IF( ln_zdfnpc   )   CALL tra_npc( kstp )                ! update after fields by non-penetrative convection 
    262271                             CALL tra_nxt( kstp )                ! tracer fields at next time step 
     272            IF( ln_sto_eos ) CALL sto_pts( tsn )                 ! Random T/S fluctuations 
    263273                             CALL eos    ( tsa, rhd, rhop, fsdept_n(:,:,:) )  ! Time-filtered in situ density for hpg computation 
    264274            IF( ln_zps .AND. .NOT. ln_isfcav)                                & 
     
    271281      ELSE                                                  ! centered hpg  (eos then time stepping) 
    272282         IF ( .NOT. lk_dynspg_ts ) THEN                     ! eos already called in time-split case 
     283            IF( ln_sto_eos ) CALL sto_pts( tsn )    ! Random T/S fluctuations 
    273284                             CALL eos    ( tsn, rhd, rhop, fsdept_n(:,:,:) )  ! now in situ density for hpg computation 
    274285         IF( ln_zps .AND. .NOT. ln_isfcav)                                   & 
     
    346357      ! Coupled mode 
    347358      !<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<< 
    348       IF( lk_cpl           )   CALL sbc_cpl_snd( kstp )     ! coupled mode : field exchanges 
     359      IF( lk_oasis         )   CALL sbc_cpl_snd( kstp )     ! coupled mode : field exchanges 
    349360      ! 
    350361#if defined key_iomput 
    351362      IF( kstp == nitend .OR. indic < 0 ) THEN  
    352                       CALL iom_context_finalize( "nemo"     ) ! needed for XIOS+AGRIF 
    353          IF( ln_crs ) CALL iom_context_finalize( "nemo_crs" ) !  
     363                      CALL iom_context_finalize(      cxios_context          ) ! needed for XIOS+AGRIF 
     364         IF( ln_crs ) CALL iom_context_finalize( trim(cxios_context)//"_crs" ) !  
    354365      ENDIF 
    355366#endif 
Note: See TracChangeset for help on using the changeset viewer.