source: branches/CMIP5_IPSL/NEMO/TOP_SRC/par_trc.F90 @ 1830

Last change on this file since 1830 was 1830, checked in by cetlod, 11 years ago

Computation of additional diagnostics for PISCES model ( under CPP key key_diaar5 )

  • needed for AR5 outputs (vertical inventories, passive tracers at surface,… )
  • new output file with suffix dbio_T
  • Property svn:eol-style set to native
  • Property svn:keywords set to Id
File size: 4.1 KB
Line 
1MODULE par_trc
2   !!======================================================================
3   !!                        ***  par_trc  ***
4   !! TOP :   set the passive tracers parameters
5   !!======================================================================
6   !! History :    -   !  1996-01  (M. Levy)  original code
7   !!              -   !  1999-07  (M. Levy)  for LOBSTER1 or NPZD model
8   !!              -   !  2000-04  (O. Aumont, M.A. Foujols)  HAMOCC3 and P3ZD
9   !!             1.0  !  2004-03  (C. Ethe) Free form and module
10   !!             2.0  !  2007-12  (C. Ethe, G. Madec)  revised architecture
11   !!----------------------------------------------------------------------
12   !! NEMO/TOP 2.0 , LOCEAN-IPSL (2007)
13   !! $Id$
14   !! Software governed by the CeCILL licence (modipsl/doc/NEMO_CeCILL.txt)
15   !!----------------------------------------------------------------------
16   USE par_kind          ! kind parameters
17   !
18   USE par_lobster   ! LOBSTER model
19   USE par_pisces    ! PISCES  model
20   USE par_c14b      ! C14 bomb tracer
21   USE par_cfc       ! CFC 11 and 12 tracers
22   USE par_my_trc    ! user defined passive tracers
23
24   IMPLICIT NONE
25   PUBLIC
26
27   ! Passive tracers : Total size
28   ! ---------------               ! total number of passive tracers, of 2d and 3d output and trend arrays
29   INTEGER, PUBLIC, PARAMETER ::   jptra    =  jp_lobster    + jp_pisces     + jp_cfc     + jp_my_trc
30   INTEGER, PUBLIC, PARAMETER ::   jpdia2d  =  jp_lobster_2d + jp_pisces_2d  + jp_cfc_2d  + jp_my_trc_2d
31   INTEGER, PUBLIC, PARAMETER ::   jpdia3d  =  jp_lobster_3d + jp_pisces_3d  + jp_cfc_3d  + jp_my_trc_3d
32   !                     ! total number of sms diagnostic arrays
33   INTEGER, PUBLIC, PARAMETER ::   jpdiabio = jp_lobster_trd + jp_pisces_trd + jp_cfc_trd + jp_my_trc_trd
34   
35   !  1D configuration ("key_c1d")
36   ! -----------------
37# if defined key_c1d
38   LOGICAL, PUBLIC, PARAMETER ::   lk_trc_c1d   = .TRUE.   !: 1D pass. tracer configuration flag
39# else   
40   LOGICAL, PUBLIC, PARAMETER ::   lk_trc_c1d   = .FALSE.  !: 1D pass. tracer configuration flag
41# endif
42   ! Passive tracers : size for TRP trends diagnotics (used if 'key_trc_diatrd' defined)
43# if defined key_trc_diatrd
44   ! Passive tracers : size for TRP trends diagnotics (used if 'key_trc_diatrd' defined)
45   INTEGER, PARAMETER ::   jptrc_xad     =  1   !: x- horizontal advection
46   INTEGER, PARAMETER ::   jptrc_yad     =  2   !: y- horizontal advection
47   INTEGER, PARAMETER ::   jptrc_zad     =  3   !: z- vertical   advection
48   INTEGER, PARAMETER ::   jptrc_xdf     =  4   !: lateral       diffusion
49   INTEGER, PARAMETER ::   jptrc_ydf     =  5   !: lateral       diffusion
50   INTEGER, PARAMETER ::   jptrc_zdf     =  6   !: vertical diffusion (Kz)
51   INTEGER, PARAMETER ::   jptrc_sbc     =  7   !: surface boundary condition
52#if ! defined key_trcldf_eiv && ! defined key_trcdmp
53   INTEGER, PARAMETER ::   jpdiatrc      =  7  !: trends: 3*(advection + diffusion       ) + sbc
54#endif
55#if defined key_trcldf_eiv && defined key_trcdmp
56   INTEGER, PARAMETER ::   jptrc_xei     =  8   !: x- horiz. EIV advection
57   INTEGER, PARAMETER ::   jptrc_yei     =  9   !: y- horiz. EIV advection
58   INTEGER, PARAMETER ::   jptrc_zei     = 10   !: z- vert.  EIV advection
59   INTEGER, PARAMETER ::   jptrc_dmp     = 11   !: damping
60   INTEGER, PARAMETER ::   jpdiatrc      = 11   !: trends: 3*(advection + diffusion + eiv ) + sbc + damping
61#endif
62#if defined key_trcldf_eiv && ! defined key_trcdmp
63   INTEGER, PARAMETER ::   jptrc_xei     =  8   !: x- horiz. EIV advection
64   INTEGER, PARAMETER ::   jptrc_yei     =  9   !: y- horiz. EIV advection
65   INTEGER, PARAMETER ::   jptrc_zei     = 10   !: z- vert.  EIV advection
66   INTEGER, PARAMETER ::   jpdiatrc      = 10   !: trends: 3*(advection + diffusion + eiv ) + sbc
67#endif
68#if ! defined key_trcldf_eiv && defined key_trcdmp
69   INTEGER, PARAMETER ::   jptrc_dmp     =  8   !: damping
70   INTEGER, PARAMETER ::   jpdiatrc      =  8   !: trends: 3*(advection + diffusion       ) + sbc + damping
71#endif
72#endif
73
74   REAL(wp), PUBLIC  :: rtrn  = 1.e-15      !: truncation value     
75   !!======================================================================
76END MODULE par_trc
Note: See TracBrowser for help on using the repository browser.