Changeset 10743 for NEMO/branches/2019/dev_r10721_KERNEL-02_Storkey_Coward_IMMERSE_first_steps/src/OCE/step.F90
- Timestamp:
- 2019-03-12T12:06:29+01:00 (5 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
NEMO/branches/2019/dev_r10721_KERNEL-02_Storkey_Coward_IMMERSE_first_steps/src/OCE/step.F90
r10364 r10743 44 44 45 45 PUBLIC stp ! called by nemogcm.F90 46 PUBLIC update_pointers ! called by nemo_init 46 47 47 48 !!---------------------------------------------------------------------- … … 276 277 !!jc2: dynnxt must be the latest call. e3t_b are indeed updated in that routine 277 278 CALL tra_nxt ( kstp ) ! finalize (bcs) tracer fields at next time step and swap 278 CALL dyn_nxt ( kstp ) ! finalize (bcs) velocities at next time step and swap (always called after tra_nxt)279 CALL dyn_nxt ( kstp, Nm1, Np1, uu(:,:,:,Nnn), vv(:,:,:,Nnn), e3t(:,:,:,Nnn), e3u(:,:,:,Nnn), e3v(:,:,:,Nnn) ) ! 279 280 CALL ssh_swp ( kstp ) ! swap of sea surface height 280 IF(.NOT.ln_linssh) CALL dom_vvl_sf_swp( kstp ) ! swap of vertical scale factors 281 ! 282 ! Swap time levels 283 Nrhs = Nm1 284 Nm1 = Nnn 285 Nnn = Np1 286 Np1 = Nrhs 287 ! 288 ! Update temporary pointers 289 CALL update_pointers() 290 ! 291 ! Note that 2-time-level indices don't need to be swapped because both "before" and "now" fields are derived in dom_vvl_sf_swp 292 IF(.NOT.ln_linssh) CALL dom_vvl_sf_swp( kstp, Nm1, Nnn, Nm1_2lev, Nnn_2lev ) ! interpolate vertical scale factors for Nnn time level 281 293 ! 282 294 IF( ln_diahsb ) CALL dia_hsb ( kstp ) ! - ML - global conservation diagnostics … … 329 341 END SUBROUTINE stp 330 342 343 SUBROUTINE update_pointers 344 !!---------------------------------------------------------------------- 345 !! *** ROUTINE update_pointers *** 346 !! 347 !! ** Purpose : Associate temporary pointer arrays. 348 !! For IMMERSE development phase only - to be deleted 349 !! 350 !! ** Method : 351 !!---------------------------------------------------------------------- 352 353 ub => uu(:,:,:,Nm1); un => uu(:,:,:,Nnn); ua => uu(:,:,:,Np1) 354 vb => vv(:,:,:,Nm1); vn => vv(:,:,:,Nnn); va => vv(:,:,:,Np1) 355 356 e3t_b => e3t(:,:,:,Nm1); e3t_n => e3t(:,:,:,Nnn); e3t_a => e3t(:,:,:,Np1) 357 e3u_b => e3u(:,:,:,Nm1); e3u_n => e3u(:,:,:,Nnn); e3u_a => e3u(:,:,:,Np1) 358 e3v_b => e3v(:,:,:,Nm1); e3v_n => e3v(:,:,:,Nnn); e3v_a => e3v(:,:,:,Np1) 359 360 e3f_n => e3f(:,:,:) 361 362 e3w_b => e3w (:,:,:,Nm1_2lev); e3w_n => e3w (:,:,:,Nnn_2lev) 363 e3uw_b => e3uw(:,:,:,Nm1_2lev); e3uw_n => e3uw(:,:,:,Nnn_2lev) 364 e3vw_b => e3vw(:,:,:,Nm1_2lev); e3vw_n => e3vw(:,:,:,Nnn_2lev) 365 366 END SUBROUTINE update_pointers 367 331 368 !!====================================================================== 332 369 END MODULE step
Note: See TracChangeset
for help on using the changeset viewer.