source: branches/NERC/dev_r5518_NOC_MEDUSA_Stable/NEMOGCM/NEMO/TOP_SRC/AGE/trcini_age.F90 @ 6715

Last change on this file since 6715 was 6715, checked in by jpalmier, 5 years ago

JPALM — 16-06-2016 — MEDUSA branch update :

— pass co2 flux and dms_surf through restart for atm coupling.
— introduce CFC cycle for dynamic evolution comparison
— add Tim Graham Age tracer
— include MEDUSA Q10 modif
— svn-key removed
— still need debug stage

  • Property svn:executable set to *
File size: 3.1 KB
Line 
1MODULE trcini_age
2   !!======================================================================
3   !!                         ***  MODULE trcini_age  ***
4   !! TOP :   initialisation of the AGE tracer
5   !!======================================================================
6   !! History :   2.0  !  2007-12  (G. Nurser, G. Madec, C. Ethe ) Original code
7   !!----------------------------------------------------------------------
8#if defined key_age
9   !!----------------------------------------------------------------------
10   !!   'key_age'                                               AGE tracer
11   !!----------------------------------------------------------------------
12   !! trc_ini_age   : MY_TRC model initialisation
13   !!----------------------------------------------------------------------
14   USE oce_trc
15   USE trc
16   USE trcsms_age
17
18   IMPLICIT NONE
19   PRIVATE
20
21   PUBLIC   trc_ini_age   ! called by trcini.F90 module
22
23   !!----------------------------------------------------------------------
24   !! NEMO/TOP 3.3 , NEMO Consortium (2010)
25   !! $Id$
26   !! Software governed by the CeCILL licence     (NEMOGCM/NEMO_CeCILL.txt)
27   !!----------------------------------------------------------------------
28CONTAINS
29
30   SUBROUTINE trc_ini_age
31      !!----------------------------------------------------------------------
32      !!                     ***  trc_ini_age  *** 
33      !!
34      !! ** Purpose :   initialization for AGE model
35      !!
36      !!----------------------------------------------------------------------
37
38      IF(lwp) WRITE(numout,*)
39      IF(lwp) WRITE(numout,*) ' trc_ini_age: passive tracer age'
40      IF(lwp) WRITE(numout,*) ' ~~~~~~~~~~~~~~'
41
42      rryear  = 1._wp / ( nyear_len(1) * rday )    ! recip number of seconds in one year
43
44      !! BUG in s-coordinate this does not work!
45      nlb_age = MINLOC( gdepw_1d, mask = gdepw_1d > rn_age_depth, dim = 1 ) ! shallowest W level Below age_depth
46                                                                            !  = shallowest T level wholly below age_depth
47
48      nl_age  = nlb_age - 1                                                 ! deepest    W level Above age_depth
49                                                                            !  = T level surrounding age_depth
50
51      nla_age = nl_age - 1                                                   ! deepest    T level wholly above age_depth
52
53      frac_kill_age = ( rn_age_depth - gdepw_1d(nl_age) ) / e3t_1d(nl_age)      ! fraction of level nl_age above age_depth
54      frac_add_age  = 1._wp -  frac_kill_age                                    ! fraction of level nl_age below age_depth
55
56     
57      IF( .NOT. ln_rsttr ) trn(:,:,:,jp_age0:jp_age1) = 0.
58      !
59   END SUBROUTINE trc_ini_age
60
61#else
62   !!----------------------------------------------------------------------
63   !!   Dummy module                                        No AGE model
64   !!----------------------------------------------------------------------
65CONTAINS
66   SUBROUTINE trc_ini_age             ! Empty routine
67   END SUBROUTINE trc_ini_age
68#endif
69
70   !!======================================================================
71END MODULE trcini_age
Note: See TracBrowser for help on using the repository browser.