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.
trcice.F90 in branches/2015/dev_r5171_CNRS_LIM3_seaicebgc/NEMOGCM/NEMO/TOP_SRC – NEMO

source: branches/2015/dev_r5171_CNRS_LIM3_seaicebgc/NEMOGCM/NEMO/TOP_SRC/trcice.F90 @ 5185

Last change on this file since 5185 was 5185, checked in by vancop, 9 years ago

TOP ice routines 2

File size: 3.8 KB
Line 
1MODULE trcice
2   !!======================================================================
3   !!                         ***  MODULE trcice  ***
4   !! TOP :   Manage the communication between TOP and sea ice
5   !!======================================================================
6   !! History :  3.5  ! 2013    (M. Vancoppenolle, O. Aumont, G. Madec), original code
7   !!----------------------------------------------------------------------
8#if defined key_top
9   !!----------------------------------------------------------------------
10   !!   'key_top'                                                TOP models
11   !!----------------------------------------------------------------------
12   !!   trc_ice   :  Call the appropriate sea ice tracer subroutine
13   !!----------------------------------------------------------------------
14
15   USE oce_trc         ! shared variables between ocean and passive tracers
16   USE trc             ! passive tracers common variables
17!  USE trcrst          ! passive tracers restart
18   USE trcnam          ! Namelist read
19!  USE trcice_cfc      ! CFC      initialisation
20   USE trcice_pisces   ! PISCES   initialisation
21!  USE trcice_c14b     ! C14 bomb initialisation
22!  USE trcice_my_trc   ! MY_TRC   initialisation
23!  USE trcdta          ! initialisation form files
24!  USE daymod          ! calendar manager
25!  USE zpshde          ! partial step: hor. derivative   (zps_hde routine)
26!  USE prtctl_trc      ! Print control passive tracers (prt_ctl_trc_init routine)
27!  USE trcsub       ! variables to substep passive tracers
28!  USE in_out_manager 
29   
30   IMPLICIT NONE
31   PRIVATE
32   
33   PUBLIC   trc_ice_ini ! called by trc_init
34
35CONTAINS
36   
37   SUBROUTINE trc_ice_ini
38      !!---------------------------------------------------------------------
39      !!                     ***  ROUTINE trc_ice_ini ***
40      !!
41      !! ** Purpose :   Communication between TOP and sea ice
42      !!
43      !! ** Method  : -
44      !!           
45      !!---------------------------------------------------------------------
46      INTEGER ::   jk, jn, jl    ! dummy loop indices
47      INTEGER :: ios                              ! Local integer output status for namelist read
48
49      NAMELIST/namtrc_ice/ nn_ice_tr
50      !
51      IF(lwp) WRITE(numout,*)
52      IF(lwp) WRITE(numout,*) 'trc_ice_ini : Initialize sea ice tracer boundary condition'
53      IF(lwp) WRITE(numout,*) '~~~~~~~~~~~~~'
54
55      IF( nn_timing == 1 )  CALL timing_start('trc_ice_ini')
56
57      IF(lwp) THEN
58         WRITE(numout,*) ' '
59         WRITE(numout,*) ' sea ice tracers option (nn_ice_tr) : ', nn_ice_tr
60         WRITE(numout,*) ' '
61      ENDIF
62      !
63      REWIND( numnat_ref )              ! Namelist namtrc_dta in reference namelist : Passive tracer input data
64      READ  ( numnat_ref, namtrc_ice, IOSTAT = ios, ERR = 901)
65 901  IF( ios /= 0 ) CALL ctl_nam ( ios , ' namtrc_ice in reference namelist ', lwp )
66
67      trc_i(:,:,:) = 0.0d0 ! by default
68      trc_o(:,:,:) = 0.0d0 ! by default
69
70      IF ( nn_ice_tr == 1 ) THEN
71         IF( lk_pisces  )       CALL trc_ice_ini_pisces       ! PISCES  bio-model
72         ! to be written
73         !IF( lk_cfc     )       CALL trc_ice_ini_cfc          ! CFC     tracers
74         !IF( lk_c14b    )       CALL trc_ice_ini_c14b         ! C14 bomb  tracer
75         !IF( lk_my_trc  )       CALL trc_ice_ini_my_trc       ! MY_TRC  tracers
76      ENDIF
77
78      IF( nn_timing == 1 )   CALL timing_stop('trc_ice_ini')
79      !
80   END SUBROUTINE trc_ice_ini
81
82#else
83   !!----------------------------------------------------------------------
84   !!  Empty module :                                     No passive tracer
85   !!----------------------------------------------------------------------
86CONTAINS
87   SUBROUTINE trc_ice_ini                   ! Dummy routine   
88   END SUBROUTINE trc_ice_ini
89#endif
90
91   !!======================================================================
92END MODULE trcice
Note: See TracBrowser for help on using the repository browser.