source: NEMO/branches/2019/dev_r11233_AGRIF-05_jchanut_vert_coord_interp/src/NST/agrif_all_update.F90 @ 11574

Last change on this file since 11574 was 11574, checked in by jchanut, 12 months ago

#2222, import changes from dev_r10973_AGRIF-01_jchanut_small_jpi_jpj (i.e. #2199)

  • Property svn:keywords set to Id
File size: 3.1 KB
Line 
1MODULE agrif_all_update
2   !!======================================================================
3   !!                   ***  MODULE  agrif_all_update  ***
4   !! AGRIF: Main update driver for ocean, ice and passive tracers
5   !!======================================================================
6   !! History :  4.0  !  2018-06  (J. Chanut)  Original code
7   !!----------------------------------------------------------------------
8#if defined key_agrif 
9   !!----------------------------------------------------------------------
10   !!   'key_agrif'                                              AGRIF zoom
11   !!----------------------------------------------------------------------
12   USE dom_oce
13   USE agrif_oce
14   USE agrif_oce_update
15#if defined key_top
16   USE agrif_top_update
17#endif
18#if defined key_si3
19   USE agrif_ice_update
20#endif
21
22   IMPLICIT NONE
23   PRIVATE
24
25   PUBLIC   Agrif_Update_All
26
27   !!----------------------------------------------------------------------
28   !! NEMO/NST 4.0 , NEMO Consortium (2018)
29   !! $Id$
30   !! Software governed by the CeCILL license (see ./LICENSE)
31   !!----------------------------------------------------------------------
32CONTAINS
33
34   SUBROUTINE Agrif_Update_All( )
35      !!----------------------------------------------------------------------
36      !!                 *** ROUTINE Agrif_Update_All ***
37      !!
38      !! ** Purpose :: Update nested grids for all components (Ocean, Sea Ice, TOP)
39      !!               Order of update matters here !
40      !!----------------------------------------------------------------------
41      IF (( .NOT.ln_agrif_2way ).OR.(Agrif_Root())) RETURN
42      !
43      IF (lwp.AND.lk_agrif_debug) Write(*,*) ' --> START AGRIF UPDATE from grid Number',Agrif_Fixed()
44      !
45      CALL Agrif_Update_ssh()                      ! Update sea level
46      !
47      IF (.NOT.ln_linssh) CALL Agrif_Update_vvl()  ! Update scale factors
48      !
49      CALL Agrif_Update_tra()                      ! Update temperature/salinity
50      !
51#if defined key_top
52      CALL Agrif_Update_Trc()                      ! Update passive tracers
53#endif
54      !
55      CALL Agrif_Update_dyn()                      ! Update dynamics
56      !
57! JC remove update because this precludes from perfect restartability
58!!      CALL Agrif_Update_tke()                  ! Update tke
59
60#if defined key_si3
61      CALL agrif_update_ice()                      ! Update sea ice
62#endif
63      IF (lwp.AND.lk_agrif_debug) Write(*,*) ' <-- END AGRIF UPDATE from grid Number',Agrif_Fixed()
64      !
65      Agrif_UseSpecialValueInUpdate = .FALSE.
66    END SUBROUTINE agrif_Update_All
67
68#else
69   !!----------------------------------------------------------------------
70   !!   Empty module                                          no AGRIF zoom
71   !!----------------------------------------------------------------------
72CONTAINS
73   SUBROUTINE Agrif_Update_all( )
74      WRITE(*,*)  'Agrif_Update_All : You should not have seen this print! error?'
75   END SUBROUTINE Agrif_Update_all
76#endif
77
78   !!======================================================================
79END MODULE agrif_all_update
80
Note: See TracBrowser for help on using the repository browser.