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.
trcnam_medusa.F90 in branches/NERC/dev_r5518_NOC_MEDUSA_Stable/NEMOGCM/NEMO/TOP_SRC/MEDUSA – NEMO

source: branches/NERC/dev_r5518_NOC_MEDUSA_Stable/NEMOGCM/NEMO/TOP_SRC/MEDUSA/trcnam_medusa.F90 @ 5931

Last change on this file since 5931 was 5931, checked in by jpalmier, 8 years ago

JPALM --26-11-2015 -- Update MEDUSA diagnostics with iom_use

File size: 86.2 KB
Line 
1MODULE trcnam_medusa
2   !!======================================================================
3   !!                      ***  MODULE trcnam_medusa  ***
4   !! TOP :   initialisation of some run parameters for MEDUSA bio-model
5   !!======================================================================
6   !! History :   2.0  !  2007-12  (C. Ethe, G. Madec) Original code
7   !!              -   !  2008-08  (K. Popova) adaptation for MEDUSA
8   !!              -   !  2008-11  (A. Yool) continuing adaptation for MEDUSA
9   !!              -   !  2010-03  (A. Yool) updated for branch inclusion
10   !!              -   !  2011-04  (A. Yool) updated for ROAM project
11   !!              -   !  2013-05  (A. Yool) renamed (from trclsm) for v3.5
12   !!----------------------------------------------------------------------
13#if defined key_medusa
14   !!----------------------------------------------------------------------
15   !!   'key_medusa'   :                                       MEDUSA model
16   !!----------------------------------------------------------------------
17   !! trc_nam_medusa      : MEDUSA model initialisation
18   !!----------------------------------------------------------------------
19   USE oce_trc         ! Ocean variables
20   USE par_trc         ! TOP parameters
21   USE trc             ! TOP variables
22   USE sms_medusa      ! sms trends
23   USE iom             ! I/O manager
24   USE trc_nam_dia     ! JPALM 13-11-2015 -- if iom_use for diag
25
26   !! AXY (04/02/14): necessary to find NaNs on HECTOR
27   USE, INTRINSIC :: ieee_arithmetic 
28
29   IMPLICIT NONE
30   PRIVATE
31
32   PUBLIC   trc_nam_medusa   ! called by trcnam.F90 module
33
34   !!* Substitution
35#  include "domzgr_substitute.h90"
36   !!----------------------------------------------------------------------
37   !! NEMO/TOP 2.0 , LOCEAN-IPSL (2007)
38   !! $Id$
39   !! Software governed by the CeCILL licence (modipsl/doc/NEMO_CeCILL.txt)
40   !!----------------------------------------------------------------------
41
42CONTAINS
43
44   SUBROUTINE trc_nam_medusa
45      !!----------------------------------------------------------------------
46      !!                     ***  trc_nam_medusa  *** 
47      !!
48      !! ** Purpose :   read MEDUSA namelist
49      !!
50      !! ** input   :   file 'namelist.trc.sms' containing the following
51      !!             namelist: natbio, natopt, and natdbi ("key_trc_diabio")
52      !!
53      !! ekp: namelist nabio contains ALL parameters of the ecosystem
54      !!      point sourses and sinks PLUS sediment exchange
55      !!      dia_bio - used by Lobster to output all point terms
56      !!                (sourses and sinks of bio)
57      !!      dia_add - additional diagnostics for biology such as
58      !!                primary production (2d depth integrated field or 3d)
59      !!----------------------------------------------------------------------
60      !!
61      INTEGER            :: ji,jj,jk
62      REAL(wp)           :: fthk, fdep, fdep1
63      REAL(wp)           :: q1, q2, q3
64      !
65      NAMELIST/natbio/ xxi,xaln,xald,jphy,xvpn,xvpd,          &
66      &    xsin0,xnsi0,xuif,jliebig,                          &
67      &    xthetam,xthetamd,xnln,xnld,xsld,xfln,xfld,         &
68      &  xgmi,xgme,xkmi,xkme,xphi,xbetan,xbetac,xkc,          &
69      &    xpmipn,xpmid,xpmepn,xpmepd,xpmezmi,xpmed,          &
70      &  xmetapn,xmetapd,xmetazmi,xmetazme,                   &
71      &  jmpn,xmpn,xkphn,jmpd,xmpd,xkphd,jmzmi,xmzmi,xkzmi,   &
72      &    jmzme,xmzme,xkzme,jmd,jsfd,xmd,xmdc,               &
73      &  xthetapn,xthetapd,xthetazmi,xthetazme,xthetad,       &
74      &    xrfn,xrsn,vsed,xhr,                                &
75      &  jiron,xfe_mass,xfe_sol,xfe_sed,xLgT,xk_FeL,xk_sc_Fe, &
76      &  jexport,jfdfate,jrratio,jocalccd,xridg_r0,           &
77      &    xfdfrac1,xfdfrac2,xfdfrac3,                        &
78      &    xcaco3a,xcaco3b,xmassc,xmassca,xmasssi,xprotca,    &
79      &    xprotsi,xfastc,xfastca,xfastsi,                    &
80      &  jorgben,jinorgben,xsedn,xsedfe,xsedsi,xsedc,xsedca,  &
81      &    xburial,                                           &
82      &  jriver_n,jriver_si,jriver_c,jriver_alk,jriver_dep,   &
83      &    friver_dep,                                        &
84      &  xsdiss,                                              &
85      &  vsed,xhr,                                            &
86      &  sedlam,sedlostpoc,jpkb,jdms,jdms_input,jdms_model
87#if defined key_roam
88      NAMELIST/natroam/ xthetaphy,xthetazoo,xthetanit,        &
89      &    xthetarem,xo2min,                                  &
90      &    f3_pH,f3_h2co3,f3_hco3,f3_co3,f3_omcal,f3_omarg,   &
91      &    f2_ccd_cal,f2_ccd_arg
92#endif
93      NAMELIST/natopt/xkg0,xkr0,xkgp,xkrp,xlg,xlr,rpig
94      INTEGER :: jl, jn
95      INTEGER :: ios                 ! Local integer output status for namelist read
96      TYPE(DIAG), DIMENSION(jp_medusa_2d)  :: meddia2d
97      TYPE(DIAG), DIMENSION(jp_medusa_3d)  :: meddia3d
98      TYPE(DIAG), DIMENSION(jp_medusa_trd) :: meddiabio
99      CHARACTER(LEN=32)   ::   clname
100      !!
101      NAMELIST/nammeddia/ meddia3d, meddia2d     ! additional diagnostics
102
103      !!----------------------------------------------------------------------
104
105      IF(lwp) WRITE(numout,*)
106      clname = 'namelist_medusa'
107      IF(lwp) WRITE(numout,*) ' trc_nam_medusa: read MEDUSA namelist'
108      IF(lwp) WRITE(numout,*) ' ~~~~~~~~~~~~~~'
109# if defined key_debug_medusa
110      CALL flush(numout)
111# endif
112
113
114      CALL ctl_opn( numnatp_ref, TRIM( clname )//'_ref', 'OLD', 'FORMATTED', 'SEQUENTIAL', -1, numout, .FALSE. )
115      CALL ctl_opn( numnatp_cfg, TRIM( clname )//'_cfg', 'OLD', 'FORMATTED', 'SEQUENTIAL', -1, numout, .FALSE. )
116      IF(lwm) CALL ctl_opn( numonp     , 'output.namelist.pis' , 'UNKNOWN', 'FORMATTED', 'SEQUENTIAL', -1, numout, .FALSE. )
117
118# if defined key_debug_medusa
119      CALL flush(numout)
120      IF (lwp) write (numout,*) '------------------------------'
121      IF (lwp) write (numout,*) 'Jpalm - debug'
122      IF (lwp) write (numout,*) 'open namelist_medusa -- OK'
123      IF (lwp) write (numout,*) 'Now, read namilists inside :'
124      IF (lwp) write (numout,*) ' '
125# endif
126      !
127# if defined key_debug_medusa
128      CALL flush(numout)
129# endif
130      !
131# if defined key_debug_medusa
132      IF (lwp) write (numout,*) '------------------------------'
133      IF (lwp) write (numout,*) 'Jpalm - debug'
134      IF (lwp) write (numout,*) 'Just before reading namelist_medusa :: nammeddia'
135      IF (lwp) write (numout,*) ' '
136      CALL flush(numout)
137# endif
138
139     IF( ( .NOT.lk_iomput .AND. ln_diatrc ) .OR. ( ln_diatrc .AND. lk_medusa ) ) THEN
140         !
141         ! Namelist nammeddia
142         ! -------------------
143         REWIND( numnatp_ref )              ! Namelist nammeddia in reference namelist : MEDUSA diagnostics
144         READ  ( numnatp_ref, nammeddia, IOSTAT = ios, ERR = 901)
145901      IF( ios /= 0 ) CALL ctl_nam ( ios , 'nammeddia in reference namelist', lwp )
146
147         REWIND( numnatp_cfg )              ! Namelist nammeddia in configuration namelist : MEDUSA diagnostics
148         READ  ( numnatp_cfg, nammeddia, IOSTAT = ios, ERR = 902 )
149902      IF( ios /= 0 ) CALL ctl_nam ( ios , 'nammeddia in configuration namelist', lwp )
150         IF(lwm) WRITE ( numonp, nammeddia )
151
152# if defined key_debug_medusa
153         IF (lwp) write (numout,*) '------------------------------'
154         IF (lwp) write (numout,*) 'Jpalm - debug'
155         IF (lwp) write (numout,*) 'reading namelist_medusa :: nammeddia OK'
156         IF (lwp) write (numout,*) 'Check number of variable in nammeddia:'
157         IF (lwp) write (numout,*) 'jp_medusa_2d: ',jp_medusa_2d ,'jp_medusa_3d: ',jp_medusa_3d
158         IF (lwp) write (numout,*) ' '
159         CALL flush(numout)
160# endif
161         DO jl = 1, jp_medusa_2d
162            jn = jp_msa0_2d + jl - 1
163# if defined key_debug_medusa
164            IF (lwp) write (numout,*) 'Check what is readden in nammeddia: -- 2D'
165            IF (lwp) write (numout,*) jl,'meddia2d-sname: ',meddia2d(jl)%sname 
166            IF (lwp) write (numout,*) jl,'meddia2d-lname: ',meddia2d(jl)%lname 
167            IF (lwp) write (numout,*) jl,'meddia2d-units: ',meddia2d(jl)%units 
168            CALL flush(numout)
169# endif
170            ctrc2d(jn) = meddia2d(jl)%sname
171            ctrc2l(jn) = meddia2d(jl)%lname
172            ctrc2u(jn) = meddia2d(jl)%units
173         END DO
174
175         DO jl = 1, jp_medusa_3d
176            jn = jp_msa0_3d + jl - 1
177# if defined key_debug_medusa
178            IF (lwp) write (numout,*) 'Check what is readden in nammeddia: -- 3D'
179            IF (lwp) write (numout,*) jl,'meddia3d-sname: ',meddia3d(jl)%sname 
180            IF (lwp) write (numout,*) jl,'meddia3d-lname: ',meddia3d(jl)%lname
181            IF (lwp) write (numout,*) jl,'meddia3d-units: ',meddia3d(jl)%units
182            CALL flush(numout)
183# endif
184            ctrc3d(jn) = meddia3d(jl)%sname
185            ctrc3l(jn) = meddia3d(jl)%lname
186            ctrc3u(jn) = meddia3d(jl)%units
187         END DO
188
189         IF(lwp) THEN                   ! control print
190# if defined key_debug_medusa
191            IF (lwp) write (numout,*) '------------------------------'
192            IF (lwp) write (numout,*) 'Jpalm - debug'
193            IF (lwp) write (numout,*) 'Var name assignation OK'
194            IF (lwp) write (numout,*) 'next check var names'
195            IF (lwp) write (numout,*) ' '
196            CALL flush(numout)
197# endif
198            WRITE(numout,*)
199            WRITE(numout,*) ' Namelist : natadd'
200            DO jl = 1, jp_medusa_3d
201               jn = jp_msa0_3d + jl - 1
202               WRITE(numout,*) '  3d diag nb : ', jn, '    short name : ', ctrc3d(jn), &
203                 &             '  long name  : ', ctrc3l(jn), '   unit : ', ctrc3u(jn)
204            END DO
205            WRITE(numout,*) ' '
206
207            DO jl = 1, jp_medusa_2d
208               jn = jp_msa0_2d + jl - 1
209               WRITE(numout,*) '  2d diag nb : ', jn, '    short name : ', ctrc2d(jn), &
210                 &             '  long name  : ', ctrc2l(jn), '   unit : ', ctrc2u(jn)
211            END DO
212            WRITE(numout,*) ' '
213         ENDIF
214         !
215      ENDIF   
216         !
217# if defined key_debug_medusa
218            CALL flush(numout)
219# endif
220
221      ! 1.4 namelist natbio : biological parameters
222      ! -------------------------------------------
223     
224      xxi         = 0.
225      xaln        = 0.
226      xald        = 0.
227      jphy        = 0
228      xvpn        = 0.
229      xvpd        = 0.
230      xthetam     = 0.
231      xthetamd    = 0.
232!!
233      xsin0       = 0.
234      xnsi0       = 0.
235      xuif        = 0.
236!!
237      jliebig     = 0
238      xnln        = 0.
239      xnld        = 0.
240      xsld        = 0.
241      xfln        = 0.
242      xfld        = 0.
243!!
244      xgmi        = 0.
245      xgme        = 0.
246      xkmi        = 0.
247      xkme        = 0.
248      xphi    = 0.
249      xbetan      = 0.
250      xbetac      = 0.
251      xkc         = 0.
252      xpmipn      = 0.
253      xpmid       = 0.
254      xpmepn      = 0.
255      xpmepd      = 0.
256      xpmezmi     = 0.
257      xpmed       = 0.
258!!
259      xmetapn     = 0.
260      xmetapd     = 0.
261      xmetazmi    = 0.
262      xmetazme    = 0.
263!!
264      jmpn        = 0
265      xmpn        = 0.
266      xkphn       = 0.
267      jmpd        = 0
268      xmpd        = 0.
269      xkphd       = 0.
270      jmzmi       = 0
271      xmzmi       = 0.
272      xkzmi       = 0.
273      jmzme       = 0
274      xmzme       = 0.
275      xkzme       = 0.
276!!
277      jmd         = 0
278      jsfd        = 0
279      xmd         = 0.
280      xmdc        = 0.
281!!
282      xthetapn    = 0.
283      xthetapd    = 0.
284      xthetazmi   = 0.
285      xthetazme   = 0.
286      xthetad     = 0.
287      xrfn        = 0.
288      xrsn        = 0.  !: (NOT USED HERE; RETAINED FOR LOBSTER)
289!!
290      jiron       = 0
291      xfe_mass    = 0.
292      xfe_sol     = 0.
293      xfe_sed     = 0.
294      xLgT        = 0.
295      xk_FeL     = 0.
296      xk_sc_Fe    = 0.
297!!
298      jexport     = 0
299      jfdfate     = 0
300      jrratio     = 0
301      jocalccd    = 0
302      xridg_r0    = 0.
303      xfdfrac1   = 0.
304      xfdfrac2   = 0.
305      xfdfrac3   = 0.
306      xcaco3a    = 0.
307      xcaco3b    = 0.
308      xmassc     = 0.
309      xmassca    = 0.
310      xmasssi    = 0.
311      xprotca    = 0.
312      xprotsi    = 0.
313      xfastc     = 0.
314      xfastca    = 0.
315      xfastsi    = 0.
316!!
317      jorgben     = 0
318      jinorgben   = 0
319      xsedn       = 0.
320      xsedfe      = 0.
321      xsedsi      = 0.
322      xsedc       = 0.
323      xsedca      = 0.
324      xburial     = 0.
325!!
326      jriver_n    = 0
327      jriver_si   = 0
328      jriver_c    = 0
329      jriver_alk  = 0
330      jriver_dep  = 1
331!!
332      xsdiss     = 0.
333!!
334      vsed        = 0.
335      xhr         = 0.
336!!
337      sedlam     = 0.
338      sedlostpoc  = 0.
339      jpkb    = 0.
340      jdms        = 0
341      jdms_input  = 0
342      jdms_input  = 3
343           
344      !REWIND(numnatm)
345      !READ(numnatm,natbio)
346         ! Namelist natbio
347         ! -------------------
348         REWIND( numnatp_ref )              ! Namelist natbio in reference namelist : MEDUSA diagnostics
349         READ  ( numnatp_ref, natbio, IOSTAT = ios, ERR = 903)
350903      IF( ios /= 0 ) CALL ctl_nam ( ios , 'natbio in reference namelist', lwp )
351
352         REWIND( numnatp_cfg )              ! Namelist natbio in configuration namelist : MEDUSA diagnostics
353         READ  ( numnatp_cfg, natbio, IOSTAT = ios, ERR = 904 )
354904      IF( ios /= 0 ) CALL ctl_nam ( ios , 'natbio in configuration namelist', lwp )
355         IF(lwm) WRITE ( numonp, natbio )
356
357!! Primary production and chl related quantities
358!!       xxi         :  conversion factor from gC to mmolN
359!!       xaln        :  Chl-a specific initial slope of P-I curve for non-diatoms
360!!       xald        :  Chl-a specific initial slope of P-I curve for diatoms
361!!       jphy        :  phytoplankton T-dependent growth switch
362!!       xvpn        :  maximum growth rate for non-diatoms
363!!       xvpd        :  maximum growth rate for diatoms
364!!       xthetam     :  maximum Chl to C ratio for non-diatoms     
365!!       xthetamd    :  maximum Chl to C ratio for diatoms     
366!!
367!! Diatom silicon parameters
368!!       xsin0       :  minimum diatom Si:N ratio
369!!       xnsi0       :  minimum diatom N:Si ratio
370!!       xuif        :  hypothetical growth ratio at infinite Si:N ratio
371!!
372!! Nutrient limitation
373!!       jliebig     :  Liebig nutrient uptake switch
374!!       xnln        :  half-sat constant for DIN uptake by non-diatoms
375!!       xnld        :  half-sat constant for DIN uptake by diatoms
376!!       xsl         :  half-sat constant for Si uptake by diatoms
377!!       xfld        :  half-sat constant for Fe uptake by diatoms 
378!!       xfln        :  half-sat constant for Fe uptake by non-datoms
379!!
380!! Grazing
381!!       xgmi        :  microzoo maximum growth rate
382!!       xgme        :  mesozoo maximum growth rate
383!!       xkmi        :  microzoo grazing half-sat parameter
384!!       xkme        :  mesozoo grazing half-sat parameter
385!!       xphi        :  micro/mesozoo grazing inefficiency
386!!       xbetan      :  micro/mesozoo N assimilation efficiency
387!!       xbetac      :  micro/mesozoo C assimilation efficiency
388!!       xkc         :  micro/mesozoo net C growth efficiency
389!!       xpmipn      :  grazing preference of microzoo for non-diatoms
390!!       xpmid       :  grazing preference of microzoo for diatoms
391!!       xpmepn      :  grazing preference of mesozoo for non-diatoms
392!!       xpmepd      :  grazing preference of mesozoo for diatoms
393!!       xpmezmi     :  grazing preference of mesozoo for microzoo
394!!       xpmed       :  grazing preference of mesozoo for detritus
395!!
396!! Metabolic losses
397!!       xmetapn     :  non-diatom metabolic loss rate
398!!       xmetapd     :  diatom     metabolic loss rate
399!!       xmetazmi    :  microzoo   metabolic loss rate
400!!       xmetazme    :  mesozoo    metabolic loss rate
401!!
402!! Mortality/Remineralisation
403!!       jmpn        :  non-diatom mortality functional form
404!!       xmpn        :  non-diatom mortality rate
405!!       xkphn       :  non-diatom mortality half-sat constant
406!!       jmpd        :  diatom     mortality functional form
407!!       xmpd        :  diatom mortality rate
408!!       xkphd       :  diatom mortality half-sat constant
409!!       jmzmi       :  microzoo   mortality functional form
410!!       xmzmi       :  microzoo mortality rate
411!!       xkzmi       :  microzoo mortality half-sat constant
412!!       jmzme       :  mesozoo    mortality functional form
413!!       xmzme       :  mesozoo mortality rate
414!!       xkzme       :  mesozoo mortality half-sat constant
415!!
416!! Remineralisation
417!!       jmd         :  detritus T-dependent remineralisation switch
418!!       jsfd        :  accelerate seafloor detritus remin. switch
419!!       xmd         :  detrital nitrogen remineralisation rate
420!!       xmdc        :  detrital carbon remineralisation rate
421!!
422!! Stochiometric ratios
423!!       xthetapn    :  non-diatom C:N ratio
424!!       xthetapd    :  diatom C:N ratio
425!!       xthetazmi   :  microzoo C:N ratio
426!!       xthetazme   :  mesozoo C:N ratio
427!!       xthetad     :  detritus C:N ratio
428!!       xrfn        :  phytoplankton Fe:N ratio
429!!  xrsn        :  diatom Si:N ratio (*NOT* used)
430!!
431!! Iron parameters
432!!       jiron       :  iron scavenging submodel switch
433!!       xfe_mass    :  iron atomic mass
434!!  xfe_sol     :  aeolian iron solubility
435!!  xfe_sed     :  sediment iron input
436!!  xLgT      :  total ligand concentration (umol/m3)
437!!  xk_FeL       :  dissociation constant for (Fe + L)
438!!  xk_sc_Fe    :  scavenging rate of "free" iron
439!! 
440!! Fast-sinking detritus parameters
441!!       jexport     :  fast detritus remineralisation switch
442!!       jfdfate     :  fate of fast detritus at seafloor switch
443!!       jrratio     :  rain ratio switch
444!!       jocalccd    :  CCD switch
445!!       xridg_r0    :  Ridgwell rain ratio coefficient
446!!       xfdfrac1    :  fast-sinking fraction of diatom nat. mort. losses
447!!       xfdfrac2    :  fast-sinking fraction of meszooplankton mort. losses
448!!       xfdfrac3    :  fast-sinking fraction of diatom silicon grazing losses
449!!       xcaco3a     :  polar (high latitude) CaCO3 fraction
450!!       xcaco3b     :  equatorial (low latitude) CaCO3 fraction
451!!       xmassc      :  organic C mass:mole ratio, C106 H175 O40 N16 P1
452!!       xmassca     :  calcium carbonate mass:mole ratio, CaCO3
453!!       xmasssi     :  biogenic silicon mass:mole ratio, (H2SiO3)n
454!!       xprotca     :  calcium carbonate protection ratio
455!!       xprotsi     :  biogenic silicon protection ratio
456!!       xfastc      :  organic C remineralisation length scale
457!!       xfastca     :  calcium carbonate dissolution length scale
458!!       xfastsi     :  biogenic silicon dissolution length scale
459!!
460!! Benthic
461!!       jorgben     :  does   organic detritus go to the benthos?
462!!       jinorgben   :  does inorganic detritus go to the benthos?
463!!       xsedn       :  organic   nitrogen sediment remineralisation rate
464!!       xsedfe      :  organic   iron     sediment remineralisation rate
465!!       xsedsi      :  inorganic silicon  sediment dissolution      rate
466!!       xsedc       :  organic   carbon   sediment remineralisation rate
467!!       xsedca      :  inorganic carbon   sediment dissolution      rate
468!!       xburial     :  burial rate of seafloor detritus
469!!
470!! Riverine inputs
471!!       jriver_n    :  riverine N          input?
472!!       jriver_si   :  riverine Si         input?
473!!       jriver_c    :  riverine C          input?
474!!       jriver_alk  :  riverine alkalinity input?
475!!       jriver_dep  :  depth of riverine   input?
476!!
477!! Miscellaneous
478!!       xsdiss      :  diatom frustule dissolution rate
479!!
480!! Gravitational sinking     
481!!       vsed        :  detritus gravitational sinking rate
482!!       xhr         :  coeff for Martin's remineralisation profile
483!!
484!! Additional parameters
485!!       sedlam      :  time coeff of POC in sediments
486!!      sedlostpoc   :  sediment geol loss for POC
487!!       jpkb        :  vertical layer for diagnostic of the vertical flux
488!!                      NOTE that in LOBSTER it is a first vertical layers where
489!!                      biology is active 
490!!
491!! UKESM1 - new diagnostics  !! Jpalm
492!!       jdms        :  include dms diagnostics
493!!  jdms_input  :  use instant (0) or diel-avg (1) inputs
494!!       jdms_model  :  choice of DMS model passed to atmosphere
495!!                      1 = ANDR, 2 = SIMO, 3 = ARAN, 4 = HALL
496!!
497      IF(lwp) THEN
498!!
499!! AXY (08/11/13): compilation key notification
500         WRITE(numout,*) '=== Compilation keys'
501#if defined key_roam
502         WRITE(numout,*)     &
503         &   ' key_roam                                                               = ACTIVE'
504#else
505         WRITE(numout,*)     &
506         &   ' key_roam                                                               = INACTIVE'
507#endif       
508#if defined key_axy_carbchem
509         WRITE(numout,*)     &
510         &   ' key_axy_carbchem                                                       = ACTIVE'
511#else
512         WRITE(numout,*)     &
513         &   ' key_axy_carbchem                                                       = INACTIVE'
514#endif       
515#if defined key_mocsy
516         WRITE(numout,*)     &
517         &   ' key_mocsy                                                              = ACTIVE'
518#else
519         WRITE(numout,*)     &
520         &   ' key_mocsy                                                              = INACTIVE'
521#endif       
522#if defined key_avgqsr_medusa
523         WRITE(numout,*)     &
524         &   ' key_avgqsr_medusa                                                      = ACTIVE'
525#else
526         WRITE(numout,*)     &
527         &   ' key_avgqsr_medusa                                                      = INACTIVE'
528#endif       
529#if defined key_bs_axy_zforce
530         WRITE(numout,*)     &
531         &   ' key_bs_axy_zforce                                                      = ACTIVE'
532#else
533         WRITE(numout,*)     &
534         &   ' key_bs_axy_zforce                                                      = INACTIVE'
535#endif       
536#if defined key_bs_axy_yrlen
537         WRITE(numout,*)     &
538         &   ' key_bs_axy_yrlen                                                       = ACTIVE'
539#else
540         WRITE(numout,*)     &
541         &   ' key_bs_axy_yrlen                                                       = INACTIVE'
542#endif       
543#if defined key_deep_fe_fix
544         WRITE(numout,*)     &
545         &   ' key_deep_fe_fix                                                        = ACTIVE'
546#else
547         WRITE(numout,*)     &
548         &   ' key_deep_fe_fix                                                        = INACTIVE'
549#endif       
550#if defined key_axy_nancheck
551         WRITE(numout,*)     &
552         &   ' key_axy_nancheck                                                       = ACTIVE'
553#else
554         WRITE(numout,*)     &
555         &   ' key_axy_nancheck                                                       = INACTIVE'
556#endif       
557# if defined key_axy_pi_co2
558         WRITE(numout,*)     &
559         &   ' key_axy_pi_co2                                                         = ACTIVE'
560#else
561         WRITE(numout,*)     &
562         &   ' key_axy_pi_co2                                                         = INACTIVE'
563# endif
564# if defined key_debug_medusa
565         WRITE(numout,*)     &
566         &   ' key_debug_medusa                                                       = ACTIVE'
567#else
568         WRITE(numout,*)     &
569         &   ' key_debug_medusa                                                       = INACTIVE'
570# endif
571         WRITE(numout,*) ' '
572
573         WRITE(numout,*) 'natbio'
574         WRITE(numout,*) ' '
575!!
576!! Primary production and chl related quantities
577         WRITE(numout,*) '=== Primary production'
578         WRITE(numout,*)     &
579         &   ' conversion factor from gC to mmolN,                        xxi         =', xxi
580         WRITE(numout,*)     &
581         &   ' Chl-a specific initial slope of P-I curve for non-diatoms, xaln        = ', xaln
582         WRITE(numout,*)     &
583         &   ' Chl-a specific initial slope of P-I curve for diatoms,     xald        = ', xald
584         if (jphy.eq.1) then
585            WRITE(numout,*) &
586            &   ' phytoplankton growth is *temperature-dependent*            jphy        = ', jphy
587         elseif (jphy.eq.0) then
588            WRITE(numout,*) &
589            &   ' phytoplankton growth is *temperature-independent*          jphy        = ', jphy
590         endif
591         WRITE(numout,*)     &
592         &   ' maximum growth rate for non-diatoms,                       xvpn        = ', xvpn
593         WRITE(numout,*)     &
594         &   ' maximum growth rate for diatoms,                           xvpn        = ', xvpd
595         WRITE(numout,*)     &
596         &   ' maximum Chl to C ratio for non-diatoms,                    xthetam     = ', xthetam
597         WRITE(numout,*)     &
598         &   ' maximum Chl to C ratio for diatoms,                        xthetamd    = ', xthetamd
599!!
600!! Diatom silicon parameters
601         WRITE(numout,*) '=== Diatom silicon parameters'
602         WRITE(numout,*)     &
603         &   ' minimum diatom Si:N ratio,                                 xsin0       = ', xsin0
604         WRITE(numout,*)     &
605         &   ' minimum diatom N:Si ratio,                                 xnsi0       = ', xnsi0
606         WRITE(numout,*)     &
607         &   ' hypothetical growth ratio at infinite Si:N ratio,          xuif        = ', xuif
608!!
609!! Nutrient limitation
610         WRITE(numout,*) '=== Nutrient limitation'
611         if (jliebig.eq.1) then
612            WRITE(numout,*) &
613            &   ' nutrient uptake is a Liebig Law (= most limiting) function jliebig     = ', jliebig
614         elseif (jliebig.eq.0) then
615            WRITE(numout,*) &
616            &   ' nutrient uptake is a multiplicative function               jliebig     = ', jliebig
617         endif
618         WRITE(numout,*)     &
619         &   ' half-sat constant for DIN uptake by non-diatoms,           xnln        = ', xnln
620         WRITE(numout,*)     &
621         &   ' half-sat constant for DIN uptake by diatoms,               xnld        = ', xnld
622         WRITE(numout,*)     &
623         &   ' half-sat constant for Si uptake by diatoms,                xsld        = ', xsld
624         WRITE(numout,*)     &
625         &   ' half-sat constant for Fe uptake by non-diatoms,            xfln        = ', xfln
626         WRITE(numout,*)     &
627         &   ' half-sat constant for Fe uptake by diatoms,                xfld        = ', xfld
628!!
629!! Grazing
630         WRITE(numout,*) '=== Zooplankton grazing'
631         WRITE(numout,*)     &
632         &   ' microzoo maximum growth rate,                              xgmi        = ', xgmi
633         WRITE(numout,*)     &
634         &   ' mesozoo maximum growth rate,                               xgme        = ', xgme
635         WRITE(numout,*)     &
636         &   ' microzoo grazing half-sat parameter,                       xkmi        = ', xkmi
637         WRITE(numout,*)     &
638         &   ' mesozoo grazing half-sat parameter,                        xkme        = ', xkme
639         WRITE(numout,*)     &
640         &   ' micro/mesozoo grazing inefficiency,                        xphi        = ', xphi
641         WRITE(numout,*)     &
642         &   ' micro/mesozoo N assimilation efficiency,                   xbetan      = ', xbetan
643         WRITE(numout,*)     &
644         &   ' micro/mesozoo C assimilation efficiency,                   xbetac      = ', xbetan
645         WRITE(numout,*)     &
646         &   ' micro/mesozoo net C growth efficiency,                     xkc         = ', xkc
647         WRITE(numout,*)     &
648         &   ' grazing preference of microzoo for non-diatoms,            xpmipn      = ', xpmipn
649         WRITE(numout,*)     &
650         &   ' grazing preference of microzoo for detritus,               xpmid       = ', xpmid
651         WRITE(numout,*)     &
652         &   ' grazing preference of mesozoo for non-diatoms,             xpmepn      = ', xpmepn
653         WRITE(numout,*)     &
654         &   ' grazing preference of mesozoo for diatoms,                 xpmepd      = ', xpmepd
655         WRITE(numout,*)     &
656         &   ' grazing preference of mesozoo for microzoo,                xpmezmi     = ', xpmezmi
657         WRITE(numout,*)     &
658         &   ' grazing preference of mesozoo for detritus,                xpmed       = ', xpmed
659!!
660!! Metabolic losses
661         WRITE(numout,*) '=== Metabolic losses'
662         WRITE(numout,*)     &
663         &   ' non-diatom metabolic loss rate,                            xmetapn     = ', xmetapn
664         WRITE(numout,*)     &
665         &   ' diatom     metabolic loss rate,                            xmetapd     = ', xmetapd
666         WRITE(numout,*)     &
667         &   ' microzoo   metabolic loss rate,                            xmetazmi    = ', xmetazmi
668         WRITE(numout,*)     &
669         &   ' mesozoo    metabolic loss rate,                            xmetazme    = ', xmetazme
670!!
671!! Mortality losses
672         WRITE(numout,*) '=== Mortality losses'
673         if (jmpn.eq.1) then
674            WRITE(numout,*)     &
675            &   ' non-diatom mortality functional form,            LINEAR    jmpn        = ', jmpn
676         elseif (jmpn.eq.2) then
677            WRITE(numout,*)     &
678            &   ' non-diatom mortality functional form,         QUADRATIC    jmpn        = ', jmpn
679         elseif (jmpn.eq.3) then
680            WRITE(numout,*)     &
681            &   ' non-diatom mortality functional form,        HYPERBOLIC    jmpn        = ', jmpn
682         elseif (jmpn.eq.4) then
683            WRITE(numout,*)     &
684            &   ' non-diatom mortality functional form,           SIGMOID    jmpn        = ', jmpn
685         endif
686         WRITE(numout,*)     &
687         &   ' non-diatom mortality rate,                                 xmpn        = ', xmpn
688         WRITE(numout,*)     &
689         &   ' non-diatom mortality half-sat constant                     xkphn       = ', xkphn
690         if (jmpd.eq.1) then
691            WRITE(numout,*)     &
692            &   ' diatom mortality functional form,                LINEAR    jmpd        = ', jmpd
693         elseif (jmpd.eq.2) then
694            WRITE(numout,*)     &
695            &   ' diatom mortality functional form,             QUADRATIC    jmpd        = ', jmpd
696         elseif (jmpd.eq.3) then
697            WRITE(numout,*)     &
698            &   ' diatom mortality functional form,            HYPERBOLIC    jmpd        = ', jmpd
699         elseif (jmpd.eq.4) then
700            WRITE(numout,*)     &
701            &   ' diatom mortality functional form,               SIGMOID    jmpd        = ', jmpd
702         endif
703         WRITE(numout,*)     &
704         &   ' diatom mortality rate,                                     xmpd        = ', xmpd
705         WRITE(numout,*)     &
706         &   ' diatom mortality half-sat constant                         xkphd       = ', xkphd
707         if (jmzmi.eq.1) then
708            WRITE(numout,*)     &
709            &   ' microzoo mortality functional form,              LINEAR    jmzmi       = ', jmzmi
710         elseif (jmzmi.eq.2) then
711            WRITE(numout,*)     &
712            &   ' microzoo mortality functional form,           QUADRATIC    jmzmi       = ', jmzmi
713         elseif (jmzmi.eq.3) then
714            WRITE(numout,*)     &
715            &   ' microzoo mortality functional form,          HYPERBOLIC    jmzmi       = ', jmzmi
716         elseif (jmzmi.eq.4) then
717            WRITE(numout,*)     &
718            &   ' microzoo mortality functional form,             SIGMOID    jmzmi       = ', jmzmi
719         endif
720         WRITE(numout,*)     &
721         &   ' microzoo mortality rate,                                   xmzmi       = ', xmzmi
722         WRITE(numout,*)     &
723         &   ' mesozoo mortality half-sat constant,                       xkzmi       = ', xkzmi
724         if (jmzme.eq.1) then
725            WRITE(numout,*)     &
726            &   ' mesozoo mortality functional form,               LINEAR    jmzme       = ', jmzme
727         elseif (jmzme.eq.2) then
728            WRITE(numout,*)     &
729            &   ' mesozoo mortality functional form,            QUADRATIC    jmzme       = ', jmzme
730         elseif (jmzme.eq.3) then
731            WRITE(numout,*)     &
732            &   ' mesozoo mortality functional form,           HYPERBOLIC    jmzme       = ', jmzme
733         elseif (jmzme.eq.4) then
734            WRITE(numout,*)     &
735            &   ' mesozoo mortality functional form,              SIGMOID    jmzme       = ', jmzme
736         endif
737         WRITE(numout,*)     &
738         &   ' mesozoo mortality rate,                                    xmzme       = ', xmzme
739         WRITE(numout,*)     &
740         &   ' mesozoo mortality half-sat constant,                       xkzme       = ', xkzme
741!!
742!! Remineralisation
743         WRITE(numout,*) '=== Remineralisation'
744         if (jmd.eq.1) then
745            WRITE(numout,*) &
746            &   ' detritus remineralisation is *temperature-dependent*       jmd         = ', jmd
747         elseif (jmd.eq.0) then
748            WRITE(numout,*) &
749            &   ' detritus remineralisation is *temperature-independent*     jmd         = ', jmd
750         endif
751         if (jsfd.eq.1) then
752            WRITE(numout,*) &
753            &   ' detritus seafloor remineralisation is *accelerated*        jsfd        = ', jsfd
754         else
755            WRITE(numout,*) &
756            &   ' detritus seafloor remineralisation occurs at same rate     jsfd        = ', jsfd
757         endif
758         WRITE(numout,*)     &
759         &   ' detrital nitrogen remineralisation rate,                   xmd         = ', xmd
760         WRITE(numout,*)     &
761         &   ' detrital carbon remineralisation rate,                     xmdc        = ', xmdc
762!!
763!! Stochiometric ratios
764         WRITE(numout,*) '=== Stoichiometric ratios'
765         WRITE(numout,*)     &
766         &   ' non-diatom C:N ratio,                                      xthetapn    = ', xthetapn
767         WRITE(numout,*)     &
768         &   ' diatom C:N ratio,                                          xthetapd    = ', xthetapd
769         WRITE(numout,*)     &
770         &   ' microzoo C:N ratio,                                        xthetazmi   = ', xthetazmi
771         WRITE(numout,*)     &
772         &   ' mesozoo C:N ratio,                                         xthetazme   = ', xthetazme
773         WRITE(numout,*)     &
774         &   ' detritus C:N ratio,                                        xthetad     = ', xthetad
775         WRITE(numout,*)     &
776         &   ' phytoplankton Fe:N ratio,                                  xrfn        = ', xrfn
777         WRITE(numout,*)     &
778         &   ' diatom Si:N ratio,                                         xrsn        = ', xrsn
779!!   
780!! Iron parameters
781         WRITE(numout,*) '=== Iron parameters'
782         if (jiron.eq.1) then
783            WRITE(numout,*)     &
784            &   ' Dutkiewicz et al. (2005) iron scavenging                   jiron       = ', jiron
785         elseif (jiron.eq.2) then
786            WRITE(numout,*)     &
787            &   ' Moore et al. (2004) iron scavenging                        jiron       = ', jiron
788         elseif (jiron.eq.3) then
789            WRITE(numout,*)     &
790            &   ' Moore et al. (2008) iron scavenging                        jiron       = ', jiron
791         elseif (jiron.eq.4) then
792            WRITE(numout,*)     &
793            &   ' Galbraith et al. (2010) iron scavenging                    jiron       = ', jiron
794         else
795            WRITE(numout,*)     &
796            &   ' There is **no** iron scavenging                            jiron       = ', jiron
797         endif
798         WRITE(numout,*)     &
799         &   ' iron atomic mass,                                          xfe_mass    = ', xfe_mass
800         WRITE(numout,*)     &
801         &   ' aeolian iron solubility,                                   xfe_sol     = ', xfe_sol
802         WRITE(numout,*)     &
803         &   ' sediment iron input,                                       xfe_sed     = ', xfe_sed
804         WRITE(numout,*)     &
805         &   ' total ligand concentration (umol/m3),                      xLgT        = ', xLgT
806         WRITE(numout,*)     &
807         &   ' dissociation constant for (Fe + L),                        xk_FeL      = ', xk_FeL
808         WRITE(numout,*)     &
809         &   ' scavenging rate for free iron,                             xk_sc_Fe    = ', xk_sc_Fe
810!!
811!! Fast-sinking detritus parameters
812         WRITE(numout,*) '=== Fast-sinking detritus'
813         if (jexport.eq.1) then
814            WRITE(numout,*) &
815            &   ' fast-detritus remin. uses Dunne et al. (2007; ballast)     jexport     = ', jexport
816         elseif (jexport.eq.2) then
817            WRITE(numout,*) &
818            &   ' fast-detritus remin. uses Martin et al. (1987)             jexport     = ', jexport
819         elseif (jexport.eq.2) then
820            WRITE(numout,*) &
821            &   ' fast-detritus remin. uses Henson et al. (2011)             jexport     = ', jexport
822         endif
823         if (jfdfate.eq.1) then
824            WRITE(numout,*) &
825            &   ' fast-detritus reaching seafloor becomes slow-detritus      jfdfate     = ', jfdfate
826         elseif (jfdfate.eq.0) then
827            WRITE(numout,*) &
828            &   ' fast-detritus reaching seafloor instantly remineralised    jfdfate     = ', jfdfate
829         endif
830#if defined key_roam
831         if (jrratio.eq.0) then
832            WRITE(numout,*) &
833            &   ' Dunne et al. (2005) rain ratio submodel                    jrratio     = ', jrratio
834         elseif (jrratio.eq.1) then
835            WRITE(numout,*) &
836            &   ' Ridgwell et al. (2007) rain ratio submodel (surface omega) jrratio     = ', jrratio
837         elseif (jrratio.eq.2) then
838            WRITE(numout,*) &
839            &   ' Ridgwell et al. (2007) rain ratio submodel (3D omega)      jrratio     = ', jrratio
840         endif
841#else         
842         jrratio = 0
843         WRITE(numout,*) &
844         &   ' Dunne et al. (2005) rain ratio submodel                    jrratio     = ', jrratio
845#endif         
846#if defined key_roam
847         if (jocalccd.eq.0) then
848            WRITE(numout,*) &
849            &   ' Default, fixed CCD used                                    jocalccd    = ', jocalccd
850         elseif (jocalccd.eq.1) then
851            WRITE(numout,*) &
852            &   ' Calculated, dynamic CCD used                               jocalccd    = ', jocalccd
853         endif
854#else         
855         jocalccd = 0
856         WRITE(numout,*) &
857         &   ' Default, fixed CCD used                                    jocalccd    = ', jocalccd
858#endif
859         WRITE(numout,*)     &
860         &   ' Ridgwell rain ratio coefficient,                           xridg_r0    = ', xridg_r0
861         WRITE(numout,*)     &
862         &   ' fast-sinking fraction of diatom nat. mort. losses,         xfdfrac1    = ', xfdfrac1
863         WRITE(numout,*)     &
864         &   ' fast-sinking fraction of mesozooplankton mort. losses,     xfdfrac2    = ', xfdfrac2
865         WRITE(numout,*)     &
866         &   ' fast-sinking fraction of diatom silicon grazing losses,    xfdfrac3    = ', xfdfrac3
867         WRITE(numout,*)     &
868         &   ' polar (high latitude) CaCO3 fraction,                      xcaco3a     = ', xcaco3a
869         WRITE(numout,*)     &
870         &   ' equatorial (low latitude) CaCO3 fraction,                  xcaco3b     = ', xcaco3b
871         WRITE(numout,*)     &
872         &   ' organic C mass:mole ratio, C106 H175 O40 N16 P1,           xmassc      = ', xmassc
873         WRITE(numout,*)     &
874         &   ' calcium carbonate mass:mole ratio, CaCO3,                  xmassca     = ', xmassca
875         WRITE(numout,*)     &
876         &   ' biogenic silicon mass:mole ratio, (H2SiO3)n,               xmasssi     = ', xmasssi
877         WRITE(numout,*)     &
878         &   ' calcium carbonate protection ratio,                        xprotca     = ', xprotca
879         WRITE(numout,*)     &
880         &   ' biogenic silicon protection ratio,                         xprotsi     = ', xprotsi
881         WRITE(numout,*)     &
882         &   ' organic C remineralisation length scale,                   xfastc      = ', xfastc
883         WRITE(numout,*)     &
884         &   ' calcium carbonate dissolution length scale,                xfastca     = ', xfastca
885         WRITE(numout,*)     &
886         &   ' biogenic silicon dissolution length scale,                 xfastsi     = ', xfastsi
887!!
888!! Benthos parameters
889         WRITE(numout,*) '=== Benthos parameters'
890         WRITE(numout,*)     &
891         &   ' does   organic detritus go to the benthos?,                jorgben     = ', jorgben
892         WRITE(numout,*)     &
893         &   ' does inorganic detritus go to the benthos?,                jinorgben   = ', jinorgben
894!!
895!! Some checks on parameters related to benthos parameters
896         if (jorgben.eq.1 .and. jsfd.eq.1) then
897            !! slow detritus going to benthos at an accelerated rate
898            WRITE(numout,*) '  === WARNING! ==='
899            WRITE(numout,*) '  jsfd *and* jorgben are active - please check that you wish this'
900            WRITE(numout,*) '  === WARNING! ==='
901         endif
902         if (jorgben.eq.1 .and. jfdfate.eq.1) then
903            !! fast detritus going to benthos but via slow detritus
904            WRITE(numout,*) '  === WARNING! ==='
905            WRITE(numout,*) '  jfdfate *and* jorgben are active - please check that you wish this'
906            WRITE(numout,*) '  === WARNING! ==='
907         endif
908         if (jorgben.eq.0 .and. jinorgben.eq.1) then
909            !! inorganic fast detritus going to benthos but organic fast detritus is not
910            WRITE(numout,*) '  === WARNING! ==='
911            WRITE(numout,*) '  jinorgben is active but jorgben is not - please check that you wish this'
912            WRITE(numout,*) '  === WARNING! ==='
913         endif
914         WRITE(numout,*)     &
915         &   ' organic   nitrogen sediment remineralisation rate,         xsedn       = ', xsedn
916         WRITE(numout,*)     &
917         &   ' organic   iron     sediment remineralisation rate,         xsedfe      = ', xsedfe
918         WRITE(numout,*)     &
919         &   ' inorganic silicon  sediment remineralisation rate,         xsedsi      = ', xsedsi
920         WRITE(numout,*)     &
921         &   ' organic   carbon   sediment remineralisation rate,         xsedc       = ', xsedc
922         WRITE(numout,*)     &
923         &   ' inorganic carbon   sediment remineralisation rate,         xsedca      = ', xsedca
924         WRITE(numout,*)     &
925         &   ' burial rate of seafloor detritus,                          xburial     = ', xburial
926!!
927!! Riverine inputs
928         WRITE(numout,*) '=== Riverine inputs'
929         if (jriver_n.eq.0) then
930            WRITE(numout,*)     &
931            &   ' *no* riverine N input,                                     jriver_n    = ', jriver_n
932         elseif (jriver_n.eq.1) then
933            WRITE(numout,*)     &
934            &   ' riverine N concentrations specified,                       jriver_n    = ', jriver_n
935         elseif (jriver_n.eq.2) then
936            WRITE(numout,*)     &
937            &   ' riverine N inputs specified,                               jriver_n    = ', jriver_n
938         endif
939         if (jriver_si.eq.0) then
940            WRITE(numout,*)     &
941            &   ' *no* riverine Si input,                                    jriver_si   = ', jriver_si
942         elseif (jriver_si.eq.1) then
943            WRITE(numout,*)     &
944            &   ' riverine Si concentrations specified,                      jriver_si   = ', jriver_si
945         elseif (jriver_si.eq.2) then
946            WRITE(numout,*)     &
947            &   ' riverine Si inputs specified,                              jriver_si   = ', jriver_si
948         endif
949         if (jriver_c.eq.0) then
950            WRITE(numout,*)     &
951            &   ' *no* riverine C input,                                     jriver_c    = ', jriver_c
952         elseif (jriver_c.eq.1) then
953            WRITE(numout,*)     &
954            &   ' riverine C concentrations specified,                       jriver_c    = ', jriver_c
955         elseif (jriver_c.eq.2) then
956            WRITE(numout,*)     &
957            &   ' riverine C inputs specified,                               jriver_c    = ', jriver_c
958         endif
959         if (jriver_alk.eq.0) then
960            WRITE(numout,*)     &
961            &   ' *no* riverine alkalinity input,                            jriver_alk  = ', jriver_alk
962         elseif (jriver_alk.eq.1) then
963            WRITE(numout,*)     &
964            &   ' riverine alkalinity concentrations specified,              jriver_alk  = ', jriver_alk
965         elseif (jriver_alk.eq.2) then
966            WRITE(numout,*)     &
967            &   ' riverine alkalinity inputs specified,                      jriver_alk  = ', jriver_alk
968         endif
969         !! AXY (19/07/12): prevent (gross) stupidity on part of user
970         if (jriver_dep.lt.1.or.jriver_dep.ge.jpk) then
971            jriver_dep = 1
972         endif
973         WRITE(numout,*)     &
974         &   ' riverine input applied to down to depth k = ...            jriver_dep  = ', jriver_dep
975!!
976!! Miscellaneous
977         WRITE(numout,*) '=== Miscellaneous'
978         WRITE(numout,*)     &
979         &   ' diatom frustule dissolution rate,                          xsdiss      = ', xsdiss
980!!
981!! Gravitational sinking     
982         WRITE(numout,*) '=== Gravitational sinking'
983         WRITE(numout,*)     &
984         &   ' detritus gravitational sinking rate,                       vsed        = ', vsed
985         WRITE(numout,*)     & 
986         &   ' coefficient for Martin et al. (1987) remineralisation,     xhr         = ', xhr
987!!
988!! Non-Medusa parameters
989         WRITE(numout,*) '=== Non-Medusa parameters'
990         WRITE(numout,*)     & 
991         &   ' time coeff of POC in sediments,                            sedlam      = ', sedlam
992         WRITE(numout,*)     &
993         &   ' Sediment geol loss for POC,                                sedlostpoc  = ', sedlostpoc
994         WRITE(numout,*)     &
995         &   ' Vert layer for diagnostic of vertical flux,                jpkp        = ', jpkb
996!!
997!! UKESM1 - new diagnostics  !! Jpalm; AXY (08/07/15)
998         WRITE(numout,*) '=== UKESM1-related parameters'
999         WRITE(numout,*)     &
1000         &   ' include DMS diagnostic?,                                   jdms        = ', jdms
1001         if (jdms_input .eq. 0) then
1002            WRITE(numout,*)     &
1003            &   ' use instant (0) or diel-avg (1) inputs,                    jdms_input  = instantaneous'
1004         else
1005            WRITE(numout,*)     &
1006            &   ' use instant (0) or diel-avg (1) inputs,                    jdms_input  = diel-average'
1007         endif
1008    if (jdms_model .eq. 1) then
1009            WRITE(numout,*)     &
1010            &   ' choice of DMS model passed to atmosphere,                  jdms_model  = Anderson et al. (2001)'
1011    elseif (jdms_model .eq. 2) then
1012            WRITE(numout,*)     &
1013            &   ' choice of DMS model passed to atmosphere,                  jdms_model  = Simo & Dachs (2002)'
1014    elseif (jdms_model .eq. 3) then
1015            WRITE(numout,*)     &
1016            &   ' choice of DMS model passed to atmosphere,                  jdms_model  = Aranami & Tsunogai (2004)'
1017    elseif (jdms_model .eq. 4) then
1018            WRITE(numout,*)     &
1019            &   ' choice of DMS model passed to atmosphere,                  jdms_model  = Halloran et al. (2010)'
1020         endif
1021!!
1022      ENDIF
1023!!
1024!! Key depth positions (with thanks to Andrew Coward for bug-fixing this bit)
1025      DO jk = 1,jpk
1026         !! level thickness
1027         fthk  = e3t_1d(jk)
1028         !! level depth (top of level)
1029         fdep  = gdepw_1d(jk)
1030         !! level depth (bottom of level)
1031         fdep1 = fdep + fthk
1032         !!
1033         if (fdep.lt.100.0.AND.fdep1.gt.100.0) then        !  100 m
1034            i0100 = jk
1035         elseif (fdep.lt.150.0.AND.fdep1.gt.150.0) then    !  150 m (for BASIN)
1036            i0150 = jk
1037         elseif (fdep.lt.200.0.AND.fdep1.gt.200.0) then    !  200 m
1038            i0200 = jk
1039         elseif (fdep.lt.500.0.AND.fdep1.gt.500.0) then    !  500 m
1040            i0500 = jk
1041         elseif (fdep.lt.1000.0.AND.fdep1.gt.1000.0) then  ! 1000 m
1042            i1000 = jk
1043         elseif (fdep1.lt.1100.0) then                     ! 1100 m (for Moore et al. sedimentary iron)
1044            i1100 = jk
1045         endif
1046      enddo
1047      !!
1048      IF(lwp) THEN
1049          WRITE(numout,*) '=== Position of key depths'
1050          WRITE(numout,*)     & 
1051          &   ' jk position of  100 m horizon                              i0100       = ', i0100
1052          WRITE(numout,*)     &
1053          &   ' jk position of  150 m horizon                              i0150       = ', i0150
1054          WRITE(numout,*)     & 
1055          &   ' jk position of  200 m horizon                              i0200       = ', i0200
1056          WRITE(numout,*)     & 
1057          &   ' jk position of  500 m horizon                              i0500       = ', i0500
1058          WRITE(numout,*)     & 
1059          &   ' jk position of 1000 m horizon                              i1000       = ', i1000
1060          WRITE(numout,*)     & 
1061          &   ' jk position of 1100 m horizon [*]                          i1100       = ', i1100
1062          WRITE(numout,*) 'Got here ' , SIZE(friver_dep)
1063          CALL flush(numout)
1064      ENDIF
1065
1066#if defined key_roam
1067
1068      ! 1.4b namelist natroam : ROAM parameters
1069      ! ---------------------------------------
1070     
1071      xthetaphy = 0.
1072      xthetazoo = 0.
1073      xthetanit = 0.
1074      xthetarem = 0.
1075      xo2min    = 0.
1076
1077      !READ(numnatm,natroam)
1078         ! Namelist natroam
1079         ! -------------------
1080         REWIND( numnatp_ref )              ! Namelist natroam in reference namelist : MEDUSA diagnostics
1081         READ  ( numnatp_ref, natroam, IOSTAT = ios, ERR = 905)
1082905      IF( ios /= 0 ) CALL ctl_nam ( ios , 'natroam in reference namelist', lwp )
1083
1084         REWIND( numnatp_cfg )              ! Namelist natroam in configuration namelist : MEDUSA diagnostics
1085         READ  ( numnatp_cfg, natroam, IOSTAT = ios, ERR = 906 )
1086906      IF( ios /= 0 ) CALL ctl_nam ( ios , 'natroam in configuration namelist', lwp )
1087         IF(lwm) WRITE ( numonp, natroam )
1088
1089!! ROAM carbon, alkalinity and oxygen cycle parameters
1090!!       xthetaphy :  oxygen evolution/consumption by phytoplankton
1091!!       xthetazoo :  oxygen consumption by zooplankton
1092!!       xthetanit :  oxygen consumption by nitrogen remineralisation
1093!!       xthetarem :  oxygen consumption by carbon remineralisation
1094!!       xo2min    :  oxygen minimum concentration
1095
1096      IF(lwp) THEN
1097          WRITE(numout,*) 'natroam'
1098          WRITE(numout,*) ' '
1099!!
1100!! ROAM carbon, alkalinity and oxygen cycle parameters
1101          WRITE(numout,*) '=== ROAM carbon, alkalinity and oxygen cycle parameters'
1102          WRITE(numout,*)     &
1103          &   ' oxygen evolution/consumption by phytoplankton              xthetaphy   = ', xthetaphy
1104          WRITE(numout,*)     &
1105          &   ' oxygen consumption by zooplankton                          xthetazoo   = ', xthetazoo
1106          WRITE(numout,*)     &
1107          &   ' oxygen consumption by nitrogen remineralisation            xthetanit   = ', xthetanit
1108          WRITE(numout,*)     &
1109          &   ' oxygen consumption by carbon remineralisation              xthetarem   = ', xthetarem
1110          WRITE(numout,*)     &
1111          &   ' oxygen minimum concentration                               xo2min      = ', xo2min
1112       ENDIF
1113
1114#endif
1115
1116      CALL flush(numout)
1117
1118      ! 1.5 namelist natopt : parameters for optic
1119      ! ------------------------------------------
1120
1121      xkg0  = 0.
1122      xkr0  = 0.
1123      xkgp  = 0.
1124      xkrp  = 0.
1125      xlg   = 0.
1126      xlr   = 0.
1127      rpig  = 0.
1128
1129      !READ(numnatm,natopt)
1130         ! Namelist natopt
1131         ! -------------------
1132         REWIND( numnatp_ref )              ! Namelist natopt in reference namelist : MEDUSA diagnostics
1133         READ  ( numnatp_ref, natopt, IOSTAT = ios, ERR = 907)
1134907      IF( ios /= 0 ) CALL ctl_nam ( ios , 'natopt in reference namelist', lwp )
1135
1136         REWIND( numnatp_cfg )              ! Namelist natopt in configuration namelist : MEDUSA diagnostics
1137         READ  ( numnatp_cfg, natopt, IOSTAT = ios, ERR = 908 )
1138908      IF( ios /= 0 ) CALL ctl_nam ( ios , 'natopt in configuration namelist', lwp )
1139         IF(lwm) WRITE ( numonp, natopt )
1140
1141      IF(lwp) THEN
1142         WRITE(numout,*) 'natopt'
1143         WRITE(numout,*) ' '
1144         WRITE(numout,*) ' green   water absorption coeff  xkg0  = ',xkg0
1145         WRITE(numout,*) ' red water absorption coeff      xkr0  = ',xkr0
1146         WRITE(numout,*) ' pigment red absorption coeff    xkrp  = ',xkrp
1147         WRITE(numout,*) ' pigment green absorption coeff  xkgp  = ',xkgp
1148         WRITE(numout,*) ' green chl exposant              xlg   = ',xlg
1149         WRITE(numout,*) ' red   chl exposant              xlr   = ',xlr
1150         WRITE(numout,*) ' chla/chla+phea ratio            rpig  = ',rpig
1151         WRITE(numout,*) ' '
1152
1153      ENDIF
1154
1155      IF(lwp) THEN
1156         WRITE(numout,*) 'NaN check'
1157         WRITE(numout,*) ' '
1158         q1 = -1.
1159         q2 = 0.
1160         q3 = log(q1)
1161         write (numout,*) 'q3 = ', q3
1162         if ( ieee_is_nan( q3 ) ) then
1163            write (numout,*) 'NaN detected'
1164         else
1165            write (numout,*) 'NaN not detected'
1166         endif
1167         WRITE(numout,*) ' '
1168       ENDIF
1169
1170   END SUBROUTINE trc_nam_medusa
1171   
1172   SUBROUTINE trc_nam_iom_medusa
1173    !!---------------------------------------------------------------------
1174      !!                     ***  ROUTINE trc_nam_iom_medusa  ***
1175      !!
1176      !! ** Purpose : read all diag requested in iodef file through iom_use
1177      !!              So it is done only once
1178      !!            ** All diagnostic MEDUSA could asked are registered in
1179      !!            the med_diag type with a boolean value
1180      !!            So if required, one diagnostic will be true.
1181      !!
1182      !!---------------------------------------------------------------------
1183      !!
1184      !!
1185      !!----------------------------------------------------------------------           
1186      !! Variable conventions
1187      !!----------------------------------------------------------------------
1188      !!
1189      IF iom_use("INVTN") THEN
1190          med_diag%INVTN%dgsave = .TRUE.
1191      ELSE
1192          med_diag%INVTN%dgsave = .FALSE.
1193      ENDIF
1194      IF  iom_use("INVTSI") THEN
1195          med_diag%INVTSI%dgsave = .TRUE.
1196      ELSE
1197          med_diag%INVTSI%dgsave = .FALSE.
1198      ENDIF
1199      IF  iom_use("INVTFE") THEN
1200          med_diag%INVTFE%dgsave = .TRUE.
1201      ELSE
1202          med_diag%INVTFE%dgsave = .FALSE.
1203      ENDIF
1204      IF  iom_use("PRN") THEN
1205          med_diag%PRN%dgsave = .TRUE.
1206      ELSE
1207          med_diag%PRN%dgsave = .FALSE.
1208      ENDIF
1209      IF  iom_use("MPN") THEN
1210          med_diag%MPN%dgsave = .TRUE.
1211      ELSE
1212          med_diag%MPN%dgsave = .FALSE.
1213      ENDIF
1214      IF  iom_use("PRD") THEN
1215          med_diag%PRD%dgsave = .TRUE.
1216      ELSE
1217          med_diag%PRD%dgsave = .FALSE.
1218      ENDIF
1219      IF  iom_use("MPD") THEN
1220          med_diag%MPD%dgsave = .TRUE.
1221      ELSE
1222          med_diag%MPD%dgsave = .FALSE.
1223      ENDIF
1224      IF  iom_use("DSED") THEN
1225          med_diag%DSED%dgsave = .TRUE.
1226      ELSE
1227          med_diag%DSED%dgsave = .FALSE.
1228      ENDIF
1229      IF  iom_use("OPAL") THEN
1230          med_diag%OPAL%dgsave = .TRUE.
1231      ELSE
1232          med_diag%OPAL%dgsave = .FALSE.
1233      ENDIF
1234      IF  iom_use("OPALDISS") THEN
1235          med_diag%OPALDISS%dgsave = .TRUE.
1236      ELSE
1237          med_diag%OPALDISS%dgsave = .FALSE.
1238      ENDIF
1239      IF  iom_use("GMIPn") THEN
1240          med_diag%GMIPn%dgsave = .TRUE.
1241      ELSE
1242          med_diag%GMIPn%dgsave = .FALSE.
1243      ENDIF
1244      IF  iom_use("GMID") THEN
1245          med_diag%GMID%dgsave = .TRUE.
1246      ELSE
1247          med_diag%GMID%dgsave = .FALSE.
1248      ENDIF
1249      IF  iom_use("MZMI") THEN
1250          med_diag%MZMI%dgsave = .TRUE.
1251      ELSE
1252          med_diag%MZMI%dgsave = .FALSE.
1253      ENDIF
1254      IF  iom_use("GMEPN") THEN
1255          med_diag%GMEPN%dgsave = .TRUE.
1256      ELSE
1257          med_diag%GMEPN%dgsave = .FALSE.
1258      ENDIF
1259      IF  iom_use("GMEPD") THEN
1260          med_diag%GMEPD%dgsave = .TRUE.
1261      ELSE
1262          med_diag%GMEPD%dgsave = .FALSE.
1263      ENDIF
1264      IF  iom_use("GMEZMI") THEN
1265          med_diag%GMEZMI%dgsave = .TRUE.
1266      ELSE
1267          med_diag%GMEZMI%dgsave = .FALSE.
1268      ENDIF
1269      IF  iom_use("GMED") THEN
1270          med_diag%GMED%dgsave = .TRUE.
1271      ELSE
1272          med_diag%GMED%dgsave = .FALSE.
1273      ENDIF
1274      IF  iom_use("MZME") THEN
1275          med_diag%MZME%dgsave = .TRUE.
1276      ELSE
1277          med_diag%MZME%dgsave = .FALSE.
1278      ENDIF
1279      IF  iom_use("DEXP") THEN
1280          med_diag%DEXP%dgsave = .TRUE.
1281      ELSE
1282          med_diag%DEXP%dgsave = .FALSE.
1283      ENDIF
1284      IF  iom_use("DETN") THEN
1285          med_diag%DETN%dgsave = .TRUE.
1286      ELSE
1287          med_diag%DETN%dgsave = .FALSE.
1288      ENDIF
1289      IF  iom_use("MDET") THEN
1290          med_diag%MDET%dgsave = .TRUE.
1291      ELSE
1292          med_diag%MDET%dgsave = .FALSE.
1293      ENDIF
1294      IF  iom_use("AEOLIAN") THEN
1295          med_diag%AEOLIAN%dgsave = .TRUE.
1296      ELSE
1297          med_diag%AEOLIAN%dgsave = .FALSE.
1298      ENDIF
1299      IF  iom_use("BENTHIC") THEN
1300          med_diag%BENTHIC%dgsave = .TRUE.
1301      ELSE
1302          med_diag%BENTHIC%dgsave = .FALSE.
1303      ENDIF
1304      IF  iom_use("SCAVENGE") THEN
1305          med_diag%SCAVENGE%dgsave = .TRUE.
1306      ELSE
1307          med_diag%SCAVENGE%dgsave = .FALSE.
1308      ENDIF
1309      IF  iom_use("PN_JLIM") THEN
1310          med_diag%PN_JLIM%dgsave = .TRUE.
1311      ELSE
1312          med_diag%PN_JLIM%dgsave = .FALSE.
1313      ENDIF
1314      IF  iom_use("PN_NLIM") THEN
1315          med_diag%PN_NLIM%dgsave = .TRUE.
1316      ELSE
1317          med_diag%PN_NLIM%dgsave = .FALSE.
1318      ENDIF
1319      IF  iom_use("PN_FELIM") THEN
1320          med_diag%PN_FELIM%dgsave = .TRUE.
1321      ELSE
1322          med_diag%PN_FELIM%dgsave = .FALSE.
1323      ENDIF
1324      IF  iom_use("PD_JLIM") THEN
1325          med_diag%PD_JLIM%dgsave = .TRUE.
1326      ELSE
1327          med_diag%PD_JLIM%dgsave = .FALSE.
1328      ENDIF
1329      IF  iom_use("PD_NLIM") THEN
1330          med_diag%PD_NLIM%dgsave = .TRUE.
1331      ELSE
1332          med_diag%PD_NLIM%dgsave = .FALSE.
1333      ENDIF
1334      IF  iom_use("PD_FELIM") THEN
1335          med_diag%PD_FELIM%dgsave = .TRUE.
1336      ELSE
1337          med_diag%PD_FELIM%dgsave = .FALSE.
1338      ENDIF
1339      IF  iom_use("PD_SILIM") THEN
1340          med_diag%PD_SILIM%dgsave = .TRUE.
1341      ELSE
1342          med_diag%PD_SILIM%dgsave = .FALSE.
1343      ENDIF
1344      IF  iom_use("PDSILIM2") THEN
1345          med_diag%PDSILIM2%dgsave = .TRUE.
1346      ELSE
1347          med_diag%PDSILIM2%dgsave = .FALSE.
1348      ENDIF
1349      IF  iom_use("SDT__100") THEN
1350          med_diag%SDT__100%dgsave = .TRUE.
1351      ELSE
1352          med_diag%SDT__100%dgsave = .FALSE.
1353      ENDIF
1354      IF  iom_use("SDT__200") THEN
1355          med_diag%SDT__200%dgsave = .TRUE.
1356      ELSE
1357          med_diag%SDT__200%dgsave = .FALSE.
1358      ENDIF
1359      IF  iom_use("SDT__500") THEN
1360          med_diag%SDT__500%dgsave = .TRUE.
1361      ELSE
1362          med_diag%SDT__500%dgsave = .FALSE.
1363      ENDIF
1364      IF  iom_use("SDT_1000") THEN
1365          med_diag%SDT_1000%dgsave = .TRUE.
1366      ELSE
1367          med_diag%SDT_1000%dgsave = .FALSE.
1368      ENDIF
1369      IF  iom_use("TOTREG_N") THEN
1370          med_diag%TOTREG_N%dgsave = .TRUE.
1371      ELSE
1372          med_diag%TOTREG_N%dgsave = .FALSE.
1373      ENDIF
1374      IF  iom_use("TOTRG_SI") THEN
1375          med_diag%TOTRG_SI%dgsave = .TRUE.
1376      ELSE
1377          med_diag%TOTRG_SI%dgsave = .FALSE.
1378      ENDIF
1379      IF  iom_use("REG__100") THEN
1380          med_diag%REG__100%dgsave = .TRUE.
1381      ELSE
1382          med_diag%REG__100%dgsave = .FALSE.
1383      ENDIF
1384      IF  iom_use("REG__200") THEN
1385          med_diag%REG__200%dgsave = .TRUE.
1386      ELSE
1387          med_diag%REG__200%dgsave = .FALSE.
1388      ENDIF
1389      IF  iom_use("REG__500") THEN
1390          med_diag%REG__500%dgsave = .TRUE.
1391      ELSE
1392          med_diag%REG__500%dgsave = .FALSE.
1393      ENDIF
1394      IF  iom_use("REG_1000") THEN
1395          med_diag%REG_1000%dgsave = .TRUE.
1396      ELSE
1397          med_diag%REG_1000%dgsave = .FALSE.
1398      ENDIF
1399      IF  iom_use("FASTN") THEN
1400          med_diag%FASTN%dgsave = .TRUE.
1401      ELSE
1402          med_diag%FASTN%dgsave = .FALSE.
1403      ENDIF
1404      IF  iom_use("FASTSI") THEN
1405          med_diag%FASTSI%dgsave = .TRUE.
1406      ELSE
1407          med_diag%FASTSI%dgsave = .FALSE.
1408      ENDIF
1409      IF  iom_use("FASTFE") THEN
1410          med_diag%FASTFE%dgsave = .TRUE.
1411      ELSE
1412          med_diag%FASTFE%dgsave = .FALSE.
1413      ENDIF
1414      IF  iom_use("FASTC") THEN
1415          med_diag%FASTC%dgsave = .TRUE.
1416      ELSE
1417          med_diag%FASTC%dgsave = .FALSE.
1418      ENDIF
1419      IF  iom_use("FASTCA") THEN
1420          med_diag%FASTCA%dgsave = .TRUE.
1421      ELSE
1422          med_diag%FASTCA%dgsave = .FALSE.
1423      ENDIF
1424      IF  iom_use("FDT__100") THEN
1425          med_diag%FDT__100%dgsave = .TRUE.
1426      ELSE
1427          med_diag%FDT__100%dgsave = .FALSE.
1428      ENDIF
1429      IF  iom_use("FDT__200") THEN
1430          med_diag%FDT__200%dgsave = .TRUE.
1431      ELSE
1432          med_diag%FDT__200%dgsave = .FALSE.
1433      ENDIF
1434      IF  iom_use("FDT__500") THEN
1435          med_diag%FDT__500%dgsave = .TRUE.
1436      ELSE
1437          med_diag%FDT__500%dgsave = .FALSE.
1438      ENDIF
1439      IF  iom_use("FDT_1000") THEN
1440          med_diag%FDT_1000%dgsave = .TRUE.
1441      ELSE
1442          med_diag%FDT_1000%dgsave = .FALSE.
1443      ENDIF
1444      IF  iom_use("RG__100F") THEN
1445          med_diag%RG__100F%dgsave = .TRUE.
1446      ELSE
1447          med_diag%RG__100F%dgsave = .FALSE.
1448      ENDIF
1449      IF  iom_use("RG__200F") THEN
1450          med_diag%RG__200F%dgsave = .TRUE.
1451      ELSE
1452          med_diag%RG__200F%dgsave = .FALSE.
1453      ENDIF
1454      IF  iom_use("RG__500F") THEN
1455          med_diag%RG__500F%dgsave = .TRUE.
1456      ELSE
1457          med_diag%RG__500F%dgsave = .FALSE.
1458      ENDIF
1459      IF  iom_use("RG_1000F") THEN
1460          med_diag%RG_1000F%dgsave = .TRUE.
1461      ELSE
1462          med_diag%RG_1000F%dgsave = .FALSE.
1463      ENDIF
1464      IF  iom_use("FDS__100") THEN
1465          med_diag%FDS__100%dgsave = .TRUE.
1466      ELSE
1467          med_diag%FDS__100%dgsave = .FALSE.
1468      ENDIF
1469      IF  iom_use("FDS__200") THEN
1470          med_diag%FDS__200%dgsave = .TRUE.
1471      ELSE
1472          med_diag%FDS__200%dgsave = .FALSE.
1473      ENDIF
1474      IF  iom_use("FDS__500") THEN
1475          med_diag%FDS__500%dgsave = .TRUE.
1476      ELSE
1477          med_diag%FDS__500%dgsave = .FALSE.
1478      ENDIF
1479      IF  iom_use("FDS_1000") THEN
1480          med_diag%FDS_1000%dgsave = .TRUE.
1481      ELSE
1482          med_diag%FDS_1000%dgsave = .FALSE.
1483      ENDIF
1484      IF  iom_use("RGS_100F") THEN
1485          med_diag%RGS_100F%dgsave = .TRUE.
1486      ELSE
1487          med_diag%RGS_100F%dgsave = .FALSE.
1488      ENDIF
1489      IF  iom_use("RGS_200F") THEN
1490          med_diag%RGS_200F%dgsave = .TRUE.
1491      ELSE
1492          med_diag%RGS_200F%dgsave = .FALSE.
1493      ENDIF
1494      IF  iom_use("RGS_500F") THEN
1495          med_diag%RGS_500F%dgsave = .TRUE.
1496      ELSE
1497          med_diag%RGS_500F%dgsave = .FALSE.
1498      ENDIF
1499      IF  iom_use("RGS1000F") THEN
1500          med_diag%RGS1000F%dgsave = .TRUE.
1501      ELSE
1502          med_diag%RGS1000F%dgsave = .FALSE.
1503      ENDIF
1504      IF  iom_use("REMINN") THEN
1505          med_diag%REMINN%dgsave = .TRUE.
1506      ELSE
1507          med_diag%REMINN%dgsave = .FALSE.
1508      ENDIF
1509      IF  iom_use("REMINSI") THEN
1510          med_diag%REMINSI%dgsave = .TRUE.
1511      ELSE
1512          med_diag%REMINSI%dgsave = .FALSE.
1513      ENDIF
1514      IF  iom_use("REMINFE") THEN
1515          med_diag%REMINFE%dgsave = .TRUE.
1516      ELSE
1517          med_diag%REMINFE%dgsave = .FALSE.
1518      ENDIF
1519      IF  iom_use("REMINC") THEN
1520          med_diag%REMINC%dgsave = .TRUE.
1521      ELSE
1522          med_diag%REMINC%dgsave = .FALSE.
1523      ENDIF
1524      IF  iom_use("REMINCA") THEN
1525          med_diag%REMINCA%dgsave = .TRUE.
1526      ELSE
1527          med_diag%REMINCA%dgsave = .FALSE.
1528      ENDIF
1529      IF  iom_use("SEAFLRN") THEN
1530          med_diag%SEAFLRN%dgsave = .TRUE.
1531      ELSE
1532          med_diag%SEAFLRN%dgsave = .FALSE.
1533      ENDIF
1534      IF  iom_use("SEAFLRSI") THEN
1535          med_diag%SEAFLRSI%dgsave = .TRUE.
1536      ELSE
1537          med_diag%SEAFLRSI%dgsave = .FALSE.
1538      ENDIF
1539      IF  iom_use("SEAFLRFE") THEN
1540          med_diag%SEAFLRFE%dgsave = .TRUE.
1541      ELSE
1542          med_diag%SEAFLRFE%dgsave = .FALSE.
1543      ENDIF
1544      IF  iom_use("SEAFLRC") THEN
1545          med_diag%SEAFLRC%dgsave = .TRUE.
1546      ELSE
1547          med_diag%SEAFLRC%dgsave = .FALSE.
1548      ENDIF
1549      IF  iom_use("SEAFLRCA") THEN
1550          med_diag%SEAFLRCA%dgsave = .TRUE.
1551      ELSE
1552          med_diag%SEAFLRCA%dgsave = .FALSE.
1553      ENDIF
1554      IF  iom_use("MED_QSR") THEN
1555          med_diag%MED_QSR%dgsave = .TRUE.
1556      ELSE
1557          med_diag%MED_QSR%dgsave = .FALSE.
1558      ENDIF
1559      IF  iom_use("MED_XPAR") THEN
1560          med_diag%MED_XPAR%dgsave = .TRUE.
1561      ELSE
1562          med_diag%MED_XPAR%dgsave = .FALSE.
1563      ENDIF
1564      IF  iom_use("INTFLX_N") THEN
1565          med_diag%INTFLX_N%dgsave = .TRUE.
1566      ELSE
1567          med_diag%INTFLX_N%dgsave = .FALSE.
1568      ENDIF
1569      IF  iom_use("INTFLX_SI") THEN
1570          med_diag%INTFLX_SI%dgsave = .TRUE.
1571      ELSE
1572          med_diag%INTFLX_SI%dgsave = .FALSE.
1573      ENDIF
1574      IF  iom_use("INTFLX_FE") THEN
1575          med_diag%INTFLX_FE%dgsave = .TRUE.
1576      ELSE
1577          med_diag%INTFLX_FE%dgsave = .FALSE.
1578      ENDIF
1579      IF  iom_use("INT_PN") THEN
1580          med_diag%INT_PN%dgsave = .TRUE.
1581      ELSE
1582          med_diag%INT_PN%dgsave = .FALSE.
1583      ENDIF
1584      IF  iom_use("INT_PD") THEN
1585          med_diag%INT_PD%dgsave = .TRUE.
1586      ELSE
1587          med_diag%INT_PD%dgsave = .FALSE.
1588      ENDIF
1589      IF  iom_use("ML_PRN") THEN
1590          med_diag%ML_PRN%dgsave = .TRUE.
1591      ELSE
1592          med_diag%ML_PRN%dgsave = .FALSE.
1593      ENDIF
1594      IF  iom_use("ML_PRD") THEN
1595          med_diag%ML_PRD%dgsave = .TRUE.
1596      ELSE
1597          med_diag%ML_PRD%dgsave = .FALSE.
1598      ENDIF
1599      IF  iom_use("OCAL_CCD") THEN
1600          med_diag%OCAL_CCD%dgsave = .TRUE.
1601      ELSE
1602          med_diag%OCAL_CCD%dgsave = .FALSE.
1603      ENDIF
1604      IF  iom_use("OCAL_LVL") THEN
1605          med_diag%OCAL_LVL%dgsave = .TRUE.
1606      ELSE
1607          med_diag%OCAL_LVL%dgsave = .FALSE.
1608      ENDIF
1609      IF  iom_use("FE_0000") THEN
1610          med_diag%FE_0000%dgsave = .TRUE.
1611      ELSE
1612          med_diag%FE_0000%dgsave = .FALSE.
1613      ENDIF
1614      IF  iom_use("FE_0100") THEN
1615          med_diag%FE_0100%dgsave = .TRUE.
1616      ELSE
1617          med_diag%FE_0100%dgsave = .FALSE.
1618      ENDIF
1619      IF  iom_use("FE_0200") THEN
1620          med_diag%FE_0200%dgsave = .TRUE.
1621      ELSE
1622          med_diag%FE_0200%dgsave = .FALSE.
1623      ENDIF
1624      IF  iom_use("FE_0500") THEN
1625          med_diag%FE_0500%dgsave = .TRUE.
1626      ELSE
1627          med_diag%FE_0500%dgsave = .FALSE.
1628      ENDIF
1629      IF  iom_use("FE_1000") THEN
1630          med_diag%FE_1000%dgsave = .TRUE.
1631      ELSE
1632          med_diag%FE_1000%dgsave = .FALSE.
1633      ENDIF
1634      IF  iom_use("MED_XZE") THEN
1635          med_diag%MED_XZE%dgsave = .TRUE.
1636      ELSE
1637          med_diag%MED_XZE%dgsave = .FALSE.
1638      ENDIF
1639      IF  iom_use("WIND") THEN
1640          med_diag%WIND%dgsave = .TRUE.
1641      ELSE
1642          med_diag%WIND%dgsave = .FALSE.
1643      ENDIF
1644      IF  iom_use("ATM_PCO2") THEN
1645          med_diag%ATM_PCO2%dgsave = .TRUE.
1646      ELSE
1647          med_diag%ATM_PCO2%dgsave = .FALSE.
1648      ENDIF
1649      IF  iom_use("OCN_PH") THEN
1650          med_diag%OCN_PH%dgsave = .TRUE.
1651      ELSE
1652          med_diag%OCN_PH%dgsave = .FALSE.
1653      ENDIF
1654      IF  iom_use("OCN_PCO2") THEN
1655          med_diag%OCN_PCO2%dgsave = .TRUE.
1656      ELSE
1657          med_diag%OCN_PCO2%dgsave = .FALSE.
1658      ENDIF
1659      IF  iom_use("OCNH2CO3") THEN
1660          med_diag%OCNH2CO3%dgsave = .TRUE.
1661      ELSE
1662          med_diag%OCNH2CO3%dgsave = .FALSE.
1663      ENDIF
1664      IF  iom_use("OCN_HCO3") THEN
1665          med_diag%OCN_HCO3%dgsave = .TRUE.
1666      ELSE
1667          med_diag%OCN_HCO3%dgsave = .FALSE.
1668      ENDIF
1669      IF  iom_use("OCN_CO3") THEN
1670          med_diag%OCN_CO3%dgsave = .TRUE.
1671      ELSE
1672          med_diag%OCN_CO3%dgsave = .FALSE.
1673      ENDIF
1674      IF  iom_use("CO2FLUX") THEN
1675          med_diag%CO2FLUX%dgsave = .TRUE.
1676      ELSE
1677          med_diag%CO2FLUX%dgsave = .FALSE.
1678      ENDIF
1679      IF  iom_use("OM_CAL") THEN
1680          med_diag%OM_CAL%dgsave = .TRUE.
1681      ELSE
1682          med_diag%OM_CAL%dgsave = .FALSE.
1683      ENDIF
1684      IF  iom_use("OM_ARG") THEN
1685          med_diag%OM_ARG%dgsave = .TRUE.
1686      ELSE
1687          med_diag%OM_ARG%dgsave = .FALSE.
1688      ENDIF
1689      IF  iom_use("TCO2") THEN
1690          med_diag%TCO2%dgsave = .TRUE.
1691      ELSE
1692          med_diag%TCO2%dgsave = .FALSE.
1693      ENDIF
1694      IF  iom_use("TALK") THEN
1695          med_diag%TALK%dgsave = .TRUE.
1696      ELSE
1697          med_diag%TALK%dgsave = .FALSE.
1698      ENDIF
1699      IF  iom_use("KW660") THEN
1700          med_diag%KW660%dgsave = .TRUE.
1701      ELSE
1702          med_diag%KW660%dgsave = .FALSE.
1703      ENDIF
1704      IF  iom_use("ATM_PP0") THEN
1705          med_diag%ATM_PP0%dgsave = .TRUE.
1706      ELSE
1707          med_diag%ATM_PP0%dgsave = .FALSE.
1708      ENDIF
1709      IF  iom_use("O2FLUX") THEN
1710          med_diag%O2FLUX%dgsave = .TRUE.
1711      ELSE
1712          med_diag%O2FLUX%dgsave = .FALSE.
1713      ENDIF
1714      IF  iom_use("O2SAT") THEN
1715          med_diag%O2SAT%dgsave = .TRUE.
1716      ELSE
1717          med_diag%O2SAT%dgsave = .FALSE.
1718      ENDIF
1719      IF  iom_use("CAL_CCD") THEN
1720          med_diag%CAL_CCD%dgsave = .TRUE.
1721      ELSE
1722          med_diag%CAL_CCD%dgsave = .FALSE.
1723      ENDIF
1724      IF  iom_use("ARG_CCD") THEN
1725          med_diag%ARG_CCD%dgsave = .TRUE.
1726      ELSE
1727          med_diag%ARG_CCD%dgsave = .FALSE.
1728      ENDIF
1729      IF  iom_use("SFR_OCAL") THEN
1730          med_diag%SFR_OCAL%dgsave = .TRUE.
1731      ELSE
1732          med_diag%SFR_OCAL%dgsave = .FALSE.
1733      ENDIF
1734      IF  iom_use("SFR_OARG") THEN
1735          med_diag%SFR_OARG%dgsave = .TRUE.
1736      ELSE
1737          med_diag%SFR_OARG%dgsave = .FALSE.
1738      ENDIF
1739      IF  iom_use("N_PROD") THEN
1740          med_diag%N_PROD%dgsave = .TRUE.
1741      ELSE
1742          med_diag%N_PROD%dgsave = .FALSE.
1743      ENDIF
1744      IF  iom_use("N_CONS") THEN
1745          med_diag%N_CONS%dgsave = .TRUE.
1746      ELSE
1747          med_diag%N_CONS%dgsave = .FALSE.
1748      ENDIF
1749      IF  iom_use("C_PROD") THEN
1750          med_diag%C_PROD%dgsave = .TRUE.
1751      ELSE
1752          med_diag%C_PROD%dgsave = .FALSE.
1753      ENDIF
1754      IF  iom_use("C_CONS") THEN
1755          med_diag%C_CONS%dgsave = .TRUE.
1756      ELSE
1757          med_diag%C_CONS%dgsave = .FALSE.
1758      ENDIF
1759      IF  iom_use("O2_PROD") THEN
1760          med_diag%O2_PROD%dgsave = .TRUE.
1761      ELSE
1762          med_diag%O2_PROD%dgsave = .FALSE.
1763      ENDIF
1764      IF  iom_use("O2_CONS") THEN
1765          med_diag%O2_CONS%dgsave = .TRUE.
1766      ELSE
1767          med_diag%O2_CONS%dgsave = .FALSE.
1768      ENDIF
1769      IF  iom_use("O2_ANOX") THEN
1770          med_diag%O2_ANOX%dgsave = .TRUE.
1771      ELSE
1772          med_diag%O2_ANOX%dgsave = .FALSE.
1773      ENDIF
1774      IF  iom_use("RR_0100") THEN
1775          med_diag%RR_0100%dgsave = .TRUE.
1776      ELSE
1777          med_diag%RR_0100%dgsave = .FALSE.
1778      ENDIF
1779      IF  iom_use("RR_0500") THEN
1780          med_diag%RR_0500%dgsave = .TRUE.
1781      ELSE
1782          med_diag%RR_0500%dgsave = .FALSE.
1783      ENDIF
1784      IF  iom_use("RR_1000") THEN
1785          med_diag%RR_1000%dgsave = .TRUE.
1786      ELSE
1787          med_diag%RR_1000%dgsave = .FALSE.
1788      ENDIF
1789      IF  iom_use("IBEN_N") THEN
1790          med_diag%IBEN_N%dgsave = .TRUE.
1791      ELSE
1792          med_diag%IBEN_N%dgsave = .FALSE.
1793      ENDIF
1794      IF  iom_use("IBEN_FE") THEN
1795          med_diag%IBEN_FE%dgsave = .TRUE.
1796      ELSE
1797          med_diag%IBEN_FE%dgsave = .FALSE.
1798      ENDIF
1799      IF  iom_use("IBEN_C") THEN
1800          med_diag%IBEN_C%dgsave = .TRUE.
1801      ELSE
1802          med_diag%IBEN_C%dgsave = .FALSE.
1803      ENDIF
1804      IF  iom_use("IBEN_SI") THEN
1805          med_diag%IBEN_SI%dgsave = .TRUE.
1806      ELSE
1807          med_diag%IBEN_SI%dgsave = .FALSE.
1808      ENDIF
1809      IF  iom_use("IBEN_CA") THEN
1810          med_diag%IBEN_CA%dgsave = .TRUE.
1811      ELSE
1812          med_diag%IBEN_CA%dgsave = .FALSE.
1813      ENDIF
1814      IF  iom_use("OBEN_N") THEN
1815          med_diag%OBEN_N%dgsave = .TRUE.
1816      ELSE
1817          med_diag%OBEN_N%dgsave = .FALSE.
1818      ENDIF
1819      IF  iom_use("OBEN_FE") THEN
1820          med_diag%OBEN_FE%dgsave = .TRUE.
1821      ELSE
1822          med_diag%OBEN_FE%dgsave = .FALSE.
1823      ENDIF
1824      IF  iom_use("OBEN_C") THEN
1825          med_diag%OBEN_C%dgsave = .TRUE.
1826      ELSE
1827          med_diag%OBEN_C%dgsave = .FALSE.
1828      ENDIF
1829      IF  iom_use("OBEN_SI") THEN
1830          med_diag%OBEN_SI%dgsave = .TRUE.
1831      ELSE
1832          med_diag%OBEN_SI%dgsave = .FALSE.
1833      ENDIF
1834      IF  iom_use("OBEN_CA") THEN
1835          med_diag%OBEN_CA%dgsave = .TRUE.
1836      ELSE
1837          med_diag%OBEN_CA%dgsave = .FALSE.
1838      ENDIF
1839      IF  iom_use("BEN_N") THEN
1840          med_diag%BEN_N%dgsave = .TRUE.
1841      ELSE
1842          med_diag%BEN_N%dgsave = .FALSE.
1843      ENDIF
1844      IF  iom_use("BEN_FE") THEN
1845          med_diag%BEN_FE%dgsave = .TRUE.
1846      ELSE
1847          med_diag%BEN_FE%dgsave = .FALSE.
1848      ENDIF
1849      IF  iom_use("BEN_C") THEN
1850          med_diag%BEN_C%dgsave = .TRUE.
1851      ELSE
1852          med_diag%BEN_C%dgsave = .FALSE.
1853      ENDIF
1854      IF  iom_use("BEN_SI") THEN
1855          med_diag%BEN_SI%dgsave = .TRUE.
1856      ELSE
1857          med_diag%BEN_SI%dgsave = .FALSE.
1858      ENDIF
1859      IF  iom_use("BEN_CA") THEN
1860          med_diag%BEN_CA%dgsave = .TRUE.
1861      ELSE
1862          med_diag%BEN_CA%dgsave = .FALSE.
1863      ENDIF
1864      IF  iom_use("RUNOFF") THEN
1865          med_diag%RUNOFF%dgsave = .TRUE.
1866      ELSE
1867          med_diag%RUNOFF%dgsave = .FALSE.
1868      ENDIF
1869      IF  iom_use("RIV_N") THEN
1870          med_diag%RIV_N%dgsave = .TRUE.
1871      ELSE
1872          med_diag%RIV_N%dgsave = .FALSE.
1873      ENDIF
1874      IF  iom_use("RIV_SI") THEN
1875          med_diag%RIV_SI%dgsave = .TRUE.
1876      ELSE
1877          med_diag%RIV_SI%dgsave = .FALSE.
1878      ENDIF
1879      IF  iom_use("RIV_C") THEN
1880          med_diag%RIV_C%dgsave = .TRUE.
1881      ELSE
1882          med_diag%RIV_C%dgsave = .FALSE.
1883      ENDIF
1884      IF  iom_use("RIV_ALK") THEN
1885          med_diag%RIV_ALK%dgsave = .TRUE.
1886      ELSE
1887          med_diag%RIV_ALK%dgsave = .FALSE.
1888      ENDIF
1889      IF  iom_use("DETC") THEN
1890          med_diag%DETC%dgsave = .TRUE.
1891      ELSE
1892          med_diag%DETC%dgsave = .FALSE.
1893      ENDIF
1894      IF  iom_use("SDC__100") THEN
1895          med_diag%SDC__100%dgsave = .TRUE.
1896      ELSE
1897          med_diag%SDC__100%dgsave = .FALSE.
1898      ENDIF
1899      IF  iom_use("SDC__200") THEN
1900          med_diag%SDC__200%dgsave = .TRUE.
1901      ELSE
1902          med_diag%SDC__200%dgsave = .FALSE.
1903      ENDIF
1904      IF  iom_use("SDC__500") THEN
1905          med_diag%SDC__500%dgsave = .TRUE.
1906      ELSE
1907          med_diag%SDC__500%dgsave = .FALSE.
1908      ENDIF
1909      IF  iom_use("SDC_1000") THEN
1910          med_diag%SDC_1000%dgsave = .TRUE.
1911      ELSE
1912          med_diag%SDC_1000%dgsave = .FALSE.
1913      ENDIF
1914      IF  iom_use("INVTC") THEN
1915          med_diag%INVTC%dgsave = .TRUE.
1916      ELSE
1917          med_diag%INVTC%dgsave = .FALSE.
1918      ENDIF
1919      IF  iom_use("INVTALK") THEN
1920          med_diag%INVTALK%dgsave = .TRUE.
1921      ELSE
1922          med_diag%INVTALK%dgsave = .FALSE.
1923      ENDIF
1924      IF  iom_use("INVTO2") THEN
1925          med_diag%INVTO2%dgsave = .TRUE.
1926      ELSE
1927          med_diag%INVTO2%dgsave = .FALSE.
1928      ENDIF
1929      IF  iom_use("LYSO_CA") THEN
1930          med_diag%LYSO_CA%dgsave = .TRUE.
1931      ELSE
1932          med_diag%LYSO_CA%dgsave = .FALSE.
1933      ENDIF
1934      IF  iom_use("COM_RESP") THEN
1935          med_diag%COM_RESP%dgsave = .TRUE.
1936      ELSE
1937          med_diag%COM_RESP%dgsave = .FALSE.
1938      ENDIF
1939      IF  iom_use("PN_LLOSS") THEN
1940          med_diag%PN_LLOSS%dgsave = .TRUE.
1941      ELSE
1942          med_diag%PN_LLOSS%dgsave = .FALSE.
1943      ENDIF
1944      IF  iom_use("PD_LLOSS") THEN
1945          med_diag%PD_LLOSS%dgsave = .TRUE.
1946      ELSE
1947          med_diag%PD_LLOSS%dgsave = .FALSE.
1948      ENDIF
1949      IF  iom_use("ZI_LLOSS") THEN
1950          med_diag%ZI_LLOSS%dgsave = .TRUE.
1951      ELSE
1952          med_diag%ZI_LLOSS%dgsave = .FALSE.
1953      ENDIF
1954      IF  iom_use("ZE_LLOSS") THEN
1955          med_diag%ZE_LLOSS%dgsave = .TRUE.
1956      ELSE
1957          med_diag%ZE_LLOSS%dgsave = .FALSE.
1958      ENDIF
1959      IF  iom_use("ZI_MES_N") THEN
1960          med_diag%ZI_MES_N%dgsave = .TRUE.
1961      ELSE
1962          med_diag%ZI_MES_N%dgsave = .FALSE.
1963      ENDIF
1964      IF  iom_use("ZI_MES_D") THEN
1965          med_diag%ZI_MES_D%dgsave = .TRUE.
1966      ELSE
1967          med_diag%ZI_MES_D%dgsave = .FALSE.
1968      ENDIF
1969      IF  iom_use("ZI_MES_C") THEN
1970          med_diag%ZI_MES_C%dgsave = .TRUE.
1971      ELSE
1972          med_diag%ZI_MES_C%dgsave = .FALSE.
1973      ENDIF
1974      IF  iom_use("ZI_MESDC") THEN
1975          med_diag%ZI_MESDC%dgsave = .TRUE.
1976      ELSE
1977          med_diag%ZI_MESDC%dgsave = .FALSE.
1978      ENDIF
1979      IF  iom_use("ZI_EXCR") THEN
1980          med_diag%ZI_EXCR%dgsave = .TRUE.
1981      ELSE
1982          med_diag%ZI_EXCR%dgsave = .FALSE.
1983      ENDIF
1984      IF  iom_use("ZI_RESP") THEN
1985          med_diag%ZI_RESP%dgsave = .TRUE.
1986      ELSE
1987          med_diag%ZI_RESP%dgsave = .FALSE.
1988      ENDIF
1989      IF  iom_use("ZI_GROW") THEN
1990          med_diag%ZI_GROW%dgsave = .TRUE.
1991      ELSE
1992          med_diag%ZI_GROW%dgsave = .FALSE.
1993      ENDIF
1994      IF  iom_use("ZE_MES_N") THEN
1995          med_diag%ZE_MES_N%dgsave = .TRUE.
1996      ELSE
1997          med_diag%ZE_MES_N%dgsave = .FALSE.
1998      ENDIF
1999      IF  iom_use("ZE_MES_D") THEN
2000          med_diag%ZE_MES_D%dgsave = .TRUE.
2001      ELSE
2002          med_diag%ZE_MES_D%dgsave = .FALSE.
2003      ENDIF
2004      IF  iom_use("ZE_MES_C") THEN
2005          med_diag%ZE_MES_C%dgsave = .TRUE.
2006      ELSE
2007          med_diag%ZE_MES_C%dgsave = .FALSE.
2008      ENDIF
2009      IF  iom_use("ZE_MESDC") THEN
2010          med_diag%ZE_MESDC%dgsave = .TRUE.
2011      ELSE
2012          med_diag%ZE_MESDC%dgsave = .FALSE.
2013      ENDIF
2014      IF  iom_use("ZE_EXCR") THEN
2015          med_diag%ZE_EXCR%dgsave = .TRUE.
2016      ELSE
2017          med_diag%ZE_EXCR%dgsave = .FALSE.
2018      ENDIF
2019      IF  iom_use("ZE_RESP") THEN
2020          med_diag%ZE_RESP%dgsave = .TRUE.
2021      ELSE
2022          med_diag%ZE_RESP%dgsave = .FALSE.
2023      ENDIF
2024      IF  iom_use("ZE_GROW") THEN
2025          med_diag%ZE_GROW%dgsave = .TRUE.
2026      ELSE
2027          med_diag%ZE_GROW%dgsave = .FALSE.
2028      ENDIF
2029      IF  iom_use("MDETC") THEN
2030          med_diag%MDETC%dgsave = .TRUE.
2031      ELSE
2032          med_diag%MDETC%dgsave = .FALSE.
2033      ENDIF
2034      IF  iom_use("GMIDC") THEN
2035          med_diag%GMIDC%dgsave = .TRUE.
2036      ELSE
2037          med_diag%GMIDC%dgsave = .FALSE.
2038      ENDIF
2039      IF  iom_use("GMEDC") THEN
2040          med_diag%GMEDC%dgsave = .TRUE.
2041      ELSE
2042          med_diag%GMEDC%dgsave = .FALSE.
2043      ENDIF
2044      IF  iom_use("BASIN_01") THEN
2045          med_diag%BASIN_01%dgsave = .TRUE.
2046      ELSE
2047          med_diag%BASIN_01%dgsave = .FALSE.
2048      ENDIF
2049      IF  iom_use("BASIN_02") THEN
2050          med_diag%BASIN_02%dgsave = .TRUE.
2051      ELSE
2052          med_diag%BASIN_02%dgsave = .FALSE.
2053      ENDIF
2054      IF  iom_use("BASIN_03") THEN
2055          med_diag%BASIN_03%dgsave = .TRUE.
2056      ELSE
2057          med_diag%BASIN_03%dgsave = .FALSE.
2058      ENDIF
2059      IF  iom_use("BASIN_04") THEN
2060          med_diag%BASIN_04%dgsave = .TRUE.
2061      ELSE
2062          med_diag%BASIN_04%dgsave = .FALSE.
2063      ENDIF
2064      IF  iom_use("BASIN_05") THEN
2065          med_diag%BASIN_05%dgsave = .TRUE.
2066      ELSE
2067          med_diag%BASIN_05%dgsave = .FALSE.
2068      ENDIF
2069      IF  iom_use("BASIN_06") THEN
2070          med_diag%BASIN_06%dgsave = .TRUE.
2071      ELSE
2072          med_diag%BASIN_06%dgsave = .FALSE.
2073      ENDIF
2074      IF  iom_use("BASIN_07") THEN
2075          med_diag%BASIN_07%dgsave = .TRUE.
2076      ELSE
2077          med_diag%BASIN_07%dgsave = .FALSE.
2078      ENDIF
2079      IF  iom_use("BASIN_08") THEN
2080          med_diag%BASIN_08%dgsave = .TRUE.
2081      ELSE
2082          med_diag%BASIN_08%dgsave = .FALSE.
2083      ENDIF
2084      IF  iom_use("BASIN_09") THEN
2085          med_diag%BASIN_09%dgsave = .TRUE.
2086      ELSE
2087          med_diag%BASIN_09%dgsave = .FALSE.
2088      ENDIF
2089      IF  iom_use("BASIN_10") THEN
2090          med_diag%BASIN_10%dgsave = .TRUE.
2091      ELSE
2092          med_diag%BASIN_10%dgsave = .FALSE.
2093      ENDIF
2094      IF  iom_use("BASIN_11") THEN
2095          med_diag%BASIN_11%dgsave = .TRUE.
2096      ELSE
2097          med_diag%BASIN_11%dgsave = .FALSE.
2098      ENDIF
2099      IF  iom_use("BASIN_12") THEN
2100          med_diag%BASIN_12%dgsave = .TRUE.
2101      ELSE
2102          med_diag%BASIN_12%dgsave = .FALSE.
2103      ENDIF
2104      IF  iom_use("BASIN_13") THEN
2105          med_diag%BASIN_13%dgsave = .TRUE.
2106      ELSE
2107          med_diag%BASIN_13%dgsave = .FALSE.
2108      ENDIF
2109      IF  iom_use("BASIN_14") THEN
2110          med_diag%BASIN_14%dgsave = .TRUE.
2111      ELSE
2112          med_diag%BASIN_14%dgsave = .FALSE.
2113      ENDIF
2114      IF  iom_use("BASIN_15") THEN
2115          med_diag%BASIN_15%dgsave = .TRUE.
2116      ELSE
2117          med_diag%BASIN_15%dgsave = .FALSE.
2118      ENDIF
2119      IF  iom_use("BASIN_16") THEN
2120          med_diag%BASIN_16%dgsave = .TRUE.
2121      ELSE
2122          med_diag%BASIN_16%dgsave = .FALSE.
2123      ENDIF
2124      IF  iom_use("BASIN_17") THEN
2125          med_diag%BASIN_17%dgsave = .TRUE.
2126      ELSE
2127          med_diag%BASIN_17%dgsave = .FALSE.
2128      ENDIF
2129      IF  iom_use("BASIN_18") THEN
2130          med_diag%BASIN_18%dgsave = .TRUE.
2131      ELSE
2132          med_diag%BASIN_18%dgsave = .FALSE.
2133      ENDIF
2134      IF  iom_use("BASIN_19") THEN
2135          med_diag%BASIN_19%dgsave = .TRUE.
2136      ELSE
2137          med_diag%BASIN_19%dgsave = .FALSE.
2138      ENDIF
2139      IF  iom_use("BASIN_20") THEN
2140          med_diag%BASIN_20%dgsave = .TRUE.
2141      ELSE
2142          med_diag%BASIN_20%dgsave = .FALSE.
2143      ENDIF
2144      IF  iom_use("BASIN_21") THEN
2145          med_diag%BASIN_21%dgsave = .TRUE.
2146      ELSE
2147          med_diag%BASIN_21%dgsave = .FALSE.
2148      ENDIF
2149      IF  iom_use("BASIN_22") THEN
2150          med_diag%BASIN_22%dgsave = .TRUE.
2151      ELSE
2152          med_diag%BASIN_22%dgsave = .FALSE.
2153      ENDIF
2154      IF  iom_use("BASIN_23") THEN
2155          med_diag%BASIN_23%dgsave = .TRUE.
2156      ELSE
2157          med_diag%BASIN_23%dgsave = .FALSE.
2158      ENDIF
2159      IF  iom_use("BASIN_24") THEN
2160          med_diag%BASIN_24%dgsave = .TRUE.
2161      ELSE
2162          med_diag%BASIN_24%dgsave = .FALSE.
2163      ENDIF
2164      IF  iom_use("BASIN_25") THEN
2165          med_diag%BASIN_25%dgsave = .TRUE.
2166      ELSE
2167          med_diag%BASIN_25%dgsave = .FALSE.
2168      ENDIF
2169      IF  iom_use("BASIN_26") THEN
2170          med_diag%BASIN_26%dgsave = .TRUE.
2171      ELSE
2172          med_diag%BASIN_26%dgsave = .FALSE.
2173      ENDIF
2174      IF  iom_use("BASIN_27") THEN
2175          med_diag%BASIN_27%dgsave = .TRUE.
2176      ELSE
2177          med_diag%BASIN_27%dgsave = .FALSE.
2178      ENDIF
2179      IF  iom_use("BASIN_28") THEN
2180          med_diag%BASIN_28%dgsave = .TRUE.
2181      ELSE
2182          med_diag%BASIN_28%dgsave = .FALSE.
2183      ENDIF
2184      IF  iom_use("BASIN_29") THEN
2185          med_diag%BASIN_29%dgsave = .TRUE.
2186      ELSE
2187          med_diag%BASIN_29%dgsave = .FALSE.
2188      ENDIF
2189      IF  iom_use("BASIN_30") THEN
2190          med_diag%BASIN_30%dgsave = .TRUE.
2191      ELSE
2192          med_diag%BASIN_30%dgsave = .FALSE.
2193      ENDIF
2194      IF  iom_use("BASIN_31") THEN
2195          med_diag%BASIN_31%dgsave = .TRUE.
2196      ELSE
2197          med_diag%BASIN_31%dgsave = .FALSE.
2198      ENDIF
2199      IF  iom_use("BASIN_32") THEN
2200          med_diag%BASIN_32%dgsave = .TRUE.
2201      ELSE
2202          med_diag%BASIN_32%dgsave = .FALSE.
2203      ENDIF
2204      IF  iom_use("BASIN_33") THEN
2205          med_diag%BASIN_33%dgsave = .TRUE.
2206      ELSE
2207          med_diag%BASIN_33%dgsave = .FALSE.
2208      ENDIF
2209      IF  iom_use("BASIN_34") THEN
2210          med_diag%BASIN_34%dgsave = .TRUE.
2211      ELSE
2212          med_diag%BASIN_34%dgsave = .FALSE.
2213      ENDIF
2214      IF  iom_use("BASIN_35") THEN
2215          med_diag%BASIN_35%dgsave = .TRUE.
2216      ELSE
2217          med_diag%BASIN_35%dgsave = .FALSE.
2218      ENDIF
2219      IF  iom_use("BASIN_36") THEN
2220          med_diag%BASIN_36%dgsave = .TRUE.
2221      ELSE
2222          med_diag%BASIN_36%dgsave = .FALSE.
2223      ENDIF
2224      IF  iom_use("BASIN_37") THEN
2225          med_diag%BASIN_37%dgsave = .TRUE.
2226      ELSE
2227          med_diag%BASIN_37%dgsave = .FALSE.
2228      ENDIF
2229      IF  iom_use("BASIN_38") THEN
2230          med_diag%BASIN_38%dgsave = .TRUE.
2231      ELSE
2232          med_diag%BASIN_38%dgsave = .FALSE.
2233      ENDIF
2234      IF  iom_use("BASIN_39") THEN
2235          med_diag%BASIN_39%dgsave = .TRUE.
2236      ELSE
2237          med_diag%BASIN_39%dgsave = .FALSE.
2238      ENDIF
2239      IF  iom_use("BASIN_40") THEN
2240          med_diag%BASIN_40%dgsave = .TRUE.
2241      ELSE
2242          med_diag%BASIN_40%dgsave = .FALSE.
2243      ENDIF
2244      IF  iom_use("BASIN_41") THEN
2245          med_diag%BASIN_41%dgsave = .TRUE.
2246      ELSE
2247          med_diag%BASIN_41%dgsave = .FALSE.
2248      ENDIF
2249      IF  iom_use("BASIN_42") THEN
2250          med_diag%BASIN_42%dgsave = .TRUE.
2251      ELSE
2252          med_diag%BASIN_42%dgsave = .FALSE.
2253      ENDIF
2254      IF  iom_use("BASIN_43") THEN
2255          med_diag%BASIN_43%dgsave = .TRUE.
2256      ELSE
2257          med_diag%BASIN_43%dgsave = .FALSE.
2258      ENDIF
2259      IF  iom_use("BASIN_44") THEN
2260          med_diag%BASIN_44%dgsave = .TRUE.
2261      ELSE
2262          med_diag%BASIN_44%dgsave = .FALSE.
2263      ENDIF
2264      IF  iom_use("BASIN_45") THEN
2265          med_diag%BASIN_45%dgsave = .TRUE.
2266      ELSE
2267          med_diag%BASIN_45%dgsave = .FALSE.
2268      ENDIF
2269      IF  iom_use("INT_ZMI") THEN
2270          med_diag%INT_ZMI%dgsave = .TRUE.
2271      ELSE
2272          med_diag%INT_ZMI%dgsave = .FALSE.
2273      ENDIF
2274      IF  iom_use("INT_ZME") THEN
2275          med_diag%INT_ZME%dgsave = .TRUE.
2276      ELSE
2277          med_diag%INT_ZME%dgsave = .FALSE.
2278      ENDIF
2279      IF  iom_use("INT_DET") THEN
2280          med_diag%INT_DET%dgsave = .TRUE.
2281      ELSE
2282          med_diag%INT_DET%dgsave = .FALSE.
2283      ENDIF
2284      IF  iom_use("INT_DTC") THEN
2285          med_diag%INT_DTC%dgsave = .TRUE.
2286      ELSE
2287          med_diag%INT_DTC%dgsave = .FALSE.
2288      ENDIF
2289      IF  iom_use("DMS_SURF") THEN
2290          med_diag%DMS_SURF%dgsave = .TRUE.
2291      ELSE
2292          med_diag%DMS_SURF%dgsave = .FALSE.
2293      ENDIF
2294      IF  iom_use("DMS_ANDR") THEN
2295          med_diag%DMS_ANDR%dgsave = .TRUE.
2296      ELSE
2297          med_diag%DMS_ANDR%dgsave = .FALSE.
2298      ENDIF
2299      IF  iom_use("DMS_SIMO") THEN
2300          med_diag%DMS_SIMO%dgsave = .TRUE.
2301      ELSE
2302          med_diag%DMS_SIMO%dgsave = .FALSE.
2303      ENDIF
2304      IF  iom_use("DMS_ARAN") THEN
2305          med_diag%DMS_ARAN%dgsave = .TRUE.
2306      ELSE
2307          med_diag%DMS_ARAN%dgsave = .FALSE.
2308      ENDIF
2309      IF  iom_use("DMS_HALL") THEN
2310          med_diag%DMS_HALL%dgsave = .TRUE.
2311      ELSE
2312          med_diag%DMS_HALL%dgsave = .FALSE.
2313      ENDIF
2314      IF  iom_use("TPP3") THEN
2315          med_diag%TPP3%dgsave = .TRUE.
2316      ELSE
2317          med_diag%TPP3%dgsave = .FALSE.
2318      ENDIF
2319      IF  iom_use("DETFLUX3") THEN
2320          med_diag%DETFLUX3%dgsave = .TRUE.
2321      ELSE
2322          med_diag%DETFLUX3%dgsave = .FALSE.
2323      ENDIF
2324      IF  iom_use("REMIN3N") THEN
2325          med_diag%REMIN3N%dgsave = .TRUE.
2326      ELSE
2327          med_diag%REMIN3N%dgsave = .FALSE.
2328      ENDIF
2329      IF  iom_use("PH3") THEN
2330          med_diag%PH3%dgsave = .TRUE.
2331      ELSE
2332          med_diag%PH3%dgsave = .FALSE.
2333      ENDIF
2334      IF  iom_use("OM_CAL3") THEN
2335          med_diag%OM_CAL3%dgsave = .TRUE.
2336      ELSE
2337          med_diag%OM_CAL3%dgsave = .FALSE.
2338      ENDIF
2339      !!
2340      !!
2341   END SUBROUTINE   trc_nam_iom_medusa
2342   
2343#else
2344   !!----------------------------------------------------------------------
2345   !!  Dummy module :                                             No MEDUSA
2346   !!----------------------------------------------------------------------
2347CONTAINS
2348   SUBROUTINE trc_nam_medusa                      ! Empty routine
2349   END  SUBROUTINE  trc_nam_medusa
2350#endif 
2351
2352   !!======================================================================
2353END MODULE trcnam_medusa
Note: See TracBrowser for help on using the repository browser.