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.
2021WP/KNL-01_Sibylle_RK3_stage1 (diff) – NEMO

Changes between Version 14 and Version 15 of 2021WP/KNL-01_Sibylle_RK3_stage1


Ignore:
Timestamp:
2021-03-02T21:11:16+01:00 (3 years ago)
Author:
techene
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • 2021WP/KNL-01_Sibylle_RK3_stage1

    v14 v15  
    226226}}} 
    227227 
    228 Has been tested and validated against an modified leap frog GYRE in the same configuration with the same namelist. 
     228Has been tested and validated against an modified leap frog GYRE in the same configuration with the same namelist.[[BR]] 
     229 
     230r14549 Allow RK3 time-stepping with 2D mode. [[BR]] 
     231Prepare forcings and barotropic 2D fields. dynspg_ts remains for 2D mode integration. dyn_vor_RK3 only computes 2D relative vorticity and metric term from 3D to 2D.  
     232stp_2D is called by stprk3 in single first. 
     233{{{ 
     234OCE 
     235 |--DYN 
     236     |-- dynspg_ts.F90 
     237         #remove k_only_ADV 
     238         PUBLIC dyn_drg_init      ! called by rk3ssh 
     239         !  Phase 1 : Coupling between general trend and barotropic estimates (1st step) 
     240         IF( kt == nit000 ) THEN  
     241            IF( .NOT.ln_bt_fw  .OR. ln_bt_av )   CALL ctl_stop( 'dyn_spg_ts: RK3 requires ln_bt_fw=T AND ln_bt_av=F')  
     242         ENDIF 
     243         !                          ! set values computed in RK3_ssh  
     244         zssh_frc(:,:) = sshe_rhs(:,:)  
     245         zu_frc(:,:) =   Ue_rhs(:,:)  
     246         zv_frc(:,:) =   Ve_rhs(:,:)  
     247         zCdU_u  (:,:) = CdU_u   (:,:)  
     248         zCdU_v  (:,:) = CdU_v   (:,:) 
     249         ! 
     250         IF( kt == nit000 .OR. .NOT. ln_linssh )   CALL dyn_cor_2D_init( Kmm )   ! Set zwz, the barotropic Coriolis force coefficient 
     251         ! Phase 3. update the general trend with the barotropic trend  
     252         IF(.NOT.ln_bt_av ) THEN                          !* Update Kaa barotropic external mode   
     253            uu_b(:,:,Kaa) = ua_e  (:,:)  
     254            pvv_b(:,:,Kaa) = va_e  (:,:)  
     255            pssh (:,:,Kaa) = ssha_e(:,:)  
     256         ENDIF 
     257         un_adv... 
     258         ubar... 
     259     |-- dynspg.F90 
     260         #remove k_only_ADV 
     261     |-- dynvor.F90 
     262         SUBROUTINE dyn_vor_3D( kt, Kmm, puu, pvv, Krhs )  
     263     |-- dynzdf.F90 
     264         zDt_2 = rDt * 0.5_wp # small cosmetic optim 
     265 |-- stprk3_stg.F90 
     266 |-- stp2d.F90 
     267 |-- stprk3.F90 
     268179           !>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> 
     269180           !  RK3 : single first external mode computation 
     270181           !<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<< 
     271182      
     272183           CALL stp_2D( kstp, Nbb, Nbb, Naa, Nrhs )   ! out: ssh, (uu_b,vv_b) and (un_adv,vn_adv) at Naa 
     273184      
     274185      
     275186           !>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> 
     276187           !  RK3 time integration 
     277188           !<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<< 
     278189      
     279190           ! Stage 1 : 
     280191           CALL stp_RK3_stg( 1, kstp, Nbb, Nbb, Nrhs, Naa ) 
     281192           ! 
     282193           Nrhs = Nnn   ;   Nnn  = Naa   ;   Naa  = Nrhs    ! Swap: Nbb unchanged, Nnn <==> Naa 
     283194           ! 
     284195           ! Stage 2 : 
     285196           CALL stp_RK3_stg( 2, kstp, Nbb, Nnn, Nrhs, Naa ) 
     286197           ! 
     287198           Nrhs = Nnn   ;   Nnn  = Naa   ;   Naa  = Nrhs    ! Swap: Nbb unchanged, Nnn <==> Naa 
     288199           ! 
     289200           ! Stage 3 : 
     290201           CALL stp_RK3_stg( 3, kstp, Nbb, Nnn, Nrhs, Naa ) 
     291202           ! 
     292203           Nrhs = Nbb   ;   Nbb  = Naa   ;   Naa  = Nrhs    ! Swap: Nnn unchanged, Nbb <==> Naa 
     293}}} 
    229294=== Documentation updates 
    230295