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.
Changeset 6164 for branches/NERC – NEMO

Changeset 6164 for branches/NERC


Ignore:
Timestamp:
2015-12-23T18:42:01+01:00 (8 years ago)
Author:
jpalmier
Message:

JPALM -- 23-12-2015 -- 1_ adapt CFC in MEDUSA branch - now Working properly 2_ add diagnostics to Ideal tracer

Location:
branches/NERC/dev_r5518_NOC_MEDUSA_Stable/NEMOGCM
Files:
16 edited

Legend:

Unmodified
Added
Removed
  • branches/NERC/dev_r5518_NOC_MEDUSA_Stable/NEMOGCM/CONFIG/SHARED/field_def_bgc.xml

    r6057 r6164  
    226226       <field id="qintC14b"    long_name="Cumulative air-sea flux of Bomb C14"     unit="mol/m2"     /> 
    227227       <field id="fdecay"      long_name="Radiactive decay of Bomb C14"            unit="mol/m3"  grid_ref="grid_T_3D"  /> 
     228 
     229       <!-- IDTRA : variables available with key_idtra --> 
     230       <field id="qtrIDTRA"    long_name="Air-sea flux of Ideal Tracer"             unit="mol/m2/s"   /> 
     231       <field id="qintIDTRA"   long_name="Cumulative air-sea flux of Ideal Tracer"  unit="mol/m2"     /> 
     232       <field id="invIDTRA"    long_name="Vertical inventory"                       unit="mol/m2"     /> 
    228233 
    229234       <!-- MEDUSA additional diagnostics on T grid  --> 
     
    504509    </field_group> 
    505510 
     511    <field_group id="groupIDTRA_dia" > 
     512       <field field_ref="qtrIDTRA"    name="qtrIDTRA"  /> 
     513       <field field_ref="qintIDTRA"   name="qintIDTRA" /> 
     514       <field field_ref="invIDTRA"    name="invIDTRA"  /> 
     515    </field_group> 
     516 
     517    <field_group id="groupCFC" > 
     518       <field field_ref="CFC11"       name="CFC11"      /> 
     519    </field_group> 
     520 
     521    <field_group id="groupCFC_dia" > 
     522       <field field_ref="qtrCFC11"    name="qtrCFC11"  /> 
     523       <field field_ref="qintCFC11"   name="qintCFC11" /> 
     524    </field_group> 
     525 
    506526    <field_group id="groupMEDUSA_dia" > 
    507527      <field field_ref= "INVTN"      name="INVTN"      /> 
  • branches/NERC/dev_r5518_NOC_MEDUSA_Stable/NEMOGCM/CONFIG/SHARED/iodef_medusa_idtra.xml

    r6057 r6164  
    3737          <field_group group_ref="groupMEDUSA" /> 
    3838          <field_group group_ref="groupIDTRA" /> 
     39          <field_group group_ref="groupCFC" /> 
    3940        </file> 
    4041 
     
    4445          <field_group group_ref="groupMEDUSA_dms" />  
    4546          <field_group group_ref="groupMEDUSA_bas" />  
     47          <field_group group_ref="groupIDTRA_dia" /> 
     48          <field_group group_ref="groupCFC_dia" /> 
    4649        </file> 
    4750 
  • branches/NERC/dev_r5518_NOC_MEDUSA_Stable/NEMOGCM/CONFIG/SHARED/namelist_top_medusa_idtra_cfg

    r6057 r6164  
    3030   sn_tracer(14)  = 'ALK' , 'alkalinity                                      ',  'meq/m3'    ,  .false. ,  .true. 
    3131   sn_tracer(15)  = 'OXY' , 'dissolved oxygen                                ',  'mmolO2/m3' ,  .false. ,  .true. 
    32    sn_tracer(16)  = 'IDTRA','Ideal traceur concentration                     ',  'mmol/m3'   ,  .false. ,  .true.  !! if key_idtra else coment this line 
     32   sn_tracer(16)  = 'IDTRA','Ideal traceur concentration                     ',  'mmol/m3'   ,  .false. ,  .true. 
     33   sn_tracer(17)  = 'CFC11','CFC-11 Concentration                            ',  'umol/m3'   ,  .false. ,  .true. 
    3334/ 
    3435!----------------------------------------------------------------------- 
     
    7475&namtrc_dia       !   parameters for passive tracer additional diagnostics 
    7576!---------------------------------------------------------------------- 
    76    ln_diatrc     =  .false.   !  save additional diag. (T) or not (F) 
    7777   nn_writedia   =  1460     !  time step frequency for diagnostics 
    7878/ 
  • branches/NERC/dev_r5518_NOC_MEDUSA_Stable/NEMOGCM/NEMO/TOP_SRC/C14b/par_c14b.F90

    r5735 r6164  
    1111   USE par_pisces , ONLY : jp_pisces_trd   !: number of biological diag in PISCES 
    1212 
     13   USE par_medusa , ONLY : jp_medusa       !: number of tracers in MEDUSA 
     14   USE par_medusa , ONLY : jp_medusa_2d    !: number of 2D diag in MEDUSA 
     15   USE par_medusa , ONLY : jp_medusa_3d    !: number of 3D diag in MEDUSA 
     16   USE par_medusa , ONLY : jp_medusa_trd   !: number of biological diag in MEDUSA 
     17 
     18   USE par_idtra  , ONLY : jp_idtra        !: number of tracers in MEDUSA 
     19   USE par_idtra  , ONLY : jp_idtra_2d     !: number of tracers in MEDUSA 
     20   USE par_idtra  , ONLY : jp_idtra_3d     !: number of tracers in MEDUSA 
     21   USE par_idtra  , ONLY : jp_idtra_trd    !: number of tracers in MEDUSA 
     22 
    1323   USE par_cfc    , ONLY : jp_cfc          !: number of tracers in CFC 
    1424   USE par_cfc    , ONLY : jp_cfc_2d       !: number of 2D diag in CFC 
     
    1929   IMPLICIT NONE 
    2030 
    21    INTEGER, PARAMETER ::   jp_lb      =  jp_pisces     + jp_cfc     !: cum. number of pass. tracers 
    22    INTEGER, PARAMETER ::   jp_lb_2d   =  jp_pisces_2d  + jp_cfc_2d  !: 
    23    INTEGER, PARAMETER ::   jp_lb_3d   =  jp_pisces_3d  + jp_cfc_3d  !: 
    24    INTEGER, PARAMETER ::   jp_lb_trd  =  jp_pisces_trd + jp_cfc_trd !: 
     31   INTEGER, PARAMETER ::   jp_lb      =  jp_pisces     + jp_medusa     +   & 
     32                      jp_idtra      + jp_cfc                               !: cum. number of pass. tracers 
     33   INTEGER, PARAMETER ::   jp_lb_2d   =  jp_pisces_2d  + jp_medusa_2d  +   & 
     34                      jp_idtra_2d   + jp_cfc_2d  !: 
     35   INTEGER, PARAMETER ::   jp_lb_3d   =  jp_pisces_3d  + jp_medusa_3d  +   & 
     36                      jp_idtra_3d   + jp_cfc_3d  !: 
     37   INTEGER, PARAMETER ::   jp_lb_trd  =  jp_pisces_trd + jp_medusa_trd +   & 
     38                      jp_idtra_trd  + jp_cfc_trd !: 
    2539    
    2640#if defined key_c14b 
  • branches/NERC/dev_r5518_NOC_MEDUSA_Stable/NEMOGCM/NEMO/TOP_SRC/CFC/par_cfc.F90

    r5787 r6164  
    1515   USE par_pisces , ONLY : jp_pisces_trd   !: number of biological diag in PISCES 
    1616 
    17    USE par_medusa , ONLY : jp_medusa       !: number of tracers in PISCES 
    18    USE par_medusa , ONLY : jp_medusa_2d    !: number of 2D diag in PISCES 
    19    USE par_medusa , ONLY : jp_medusa_3d    !: number of 3D diag in PISCES 
    20    USE par_medusa , ONLY : jp_medusa_trd   !: number of biological diag in PISCES 
     17   USE par_medusa , ONLY : jp_medusa       !: number of tracers in MEDUSA 
     18   USE par_medusa , ONLY : jp_medusa_2d    !: number of 2D diag in MEDUSA 
     19   USE par_medusa , ONLY : jp_medusa_3d    !: number of 3D diag in MEDUSA 
     20   USE par_medusa , ONLY : jp_medusa_trd   !: number of biological diag in MEDUSA 
     21 
     22   USE par_idtra  , ONLY : jp_idtra        !: number of tracers in MEDUSA 
     23   USE par_idtra  , ONLY : jp_idtra_2d     !: number of tracers in MEDUSA 
     24   USE par_idtra  , ONLY : jp_idtra_3d     !: number of tracers in MEDUSA 
     25   USE par_idtra  , ONLY : jp_idtra_trd    !: number of tracers in MEDUSA 
    2126 
    2227   IMPLICIT NONE 
    2328 
    24    INTEGER, PARAMETER ::   jp_lc      =  jp_pisces     !: cumulative number of passive tracers 
    25    INTEGER, PARAMETER ::   jp_lc_2d   =  jp_pisces_2d  !: 
    26    INTEGER, PARAMETER ::   jp_lc_3d   =  jp_pisces_3d  !: 
    27    INTEGER, PARAMETER ::   jp_lc_trd  =  jp_pisces_trd !: 
     29   INTEGER, PARAMETER ::   jp_lc      =  jp_pisces     + jp_medusa     + & 
     30                      jp_idtra     !: cumulative number of passive tracers 
     31   INTEGER, PARAMETER ::   jp_lc_2d   =  jp_pisces_2d  + jp_medusa_2d  + & 
     32                      jp_idtra_2d !: 
     33   INTEGER, PARAMETER ::   jp_lc_3d   =  jp_pisces_3d  + jp_medusa_3d  + & 
     34                      jp_idtra_3d !: 
     35   INTEGER, PARAMETER ::   jp_lc_trd  =  jp_pisces_trd + jp_medusa_trd + & 
     36                      jp_idtra_trd !: 
    2837    
    2938#if defined key_cfc 
  • branches/NERC/dev_r5518_NOC_MEDUSA_Stable/NEMOGCM/NEMO/TOP_SRC/CFC/trcsms_cfc.F90

    r5735 r6164  
    1515   !!   cfc_init     :  sets constants for CFC surface forcing computation 
    1616   !!---------------------------------------------------------------------- 
     17   USE dom_oce       ! ocean space and time domain 
    1718   USE oce_trc       ! Ocean variables 
    1819   USE par_trc       ! TOP parameters 
     
    176177         !                                                  !----------------! 
    177178      END DO                                                !  end CFC loop  ! 
    178       ! 
     179         ! 
     180      IF( kt == nittrc000 ) THEN 
     181         DO jl = 1, jp_cfc    
     182             WRITE(NUMOUT,*) ' ' 
     183             WRITE(NUMOUT,*) 'CFC interpolation verification '  !! Jpalm   
     184             WRITE(NUMOUT,*) '################################## ' 
     185             WRITE(NUMOUT,*) ' ' 
     186               if (jl.EQ.1) then 
     187                   WRITE(NUMOUT,*) 'Traceur = CFC11: ' 
     188               elseif (jl.EQ.2) then 
     189                   WRITE(NUMOUT,*) 'Traceur = CFC12: ' 
     190               endif 
     191             WRITE(NUMOUT,*) 'nyear    = ', nyear 
     192             WRITE(NUMOUT,*) 'nmonth   = ', nmonth 
     193             WRITE(NUMOUT,*) 'iyear_beg= ', iyear_beg 
     194             WRITE(NUMOUT,*) 'iyear_end= ', iyear_end 
     195             WRITE(NUMOUT,*) 'p_cfc(iyear_beg)= ',p_cfc(iyear_beg, 1, jl) 
     196             WRITE(NUMOUT,*) 'p_cfc(iyear_end)= ',p_cfc(iyear_end, 1, jl) 
     197             WRITE(NUMOUT,*) 'Im1= ',im1 
     198             WRITE(NUMOUT,*) 'Im2= ',im2 
     199             WRITE(NUMOUT,*) 'zpp_cfc = ',zpp_cfc 
     200             WRITE(NUMOUT,*) ' ' 
     201         END DO   
     202      ENDIF 
     203        ! 
    179204      IF( lrst_trc ) THEN 
    180205         IF(lwp) WRITE(numout,*) 
  • branches/NERC/dev_r5518_NOC_MEDUSA_Stable/NEMOGCM/NEMO/TOP_SRC/IDTRA/par_idtra.F90

    r5726 r6164  
    2121   USE par_medusa , ONLY : jp_medusa_trd   !: number of biological diag in MEDUSA 
    2222 
     23   IMPLICIT NONE 
    2324 
    24    IMPLICIT NONE 
    25    PUBLIC 
    26  
    27    INTEGER, PUBLIC, PARAMETER ::   jp_lp      =  jp_pisces     + jp_medusa     !: cumulative number of passive tracers 
    28    INTEGER, PUBLIC, PARAMETER ::   jp_lp_2d   =  jp_pisces_2d  + jp_medusa_2d  !: 
    29    INTEGER, PUBLIC, PARAMETER ::   jp_lp_3d   =  jp_pisces_3d  + jp_medusa_3d  !: 
    30    INTEGER, PUBLIC, PARAMETER ::   jp_lp_trd  =  jp_pisces_trd + jp_medusa_trd !: 
     25   INTEGER, PARAMETER ::   jp_lp      =  jp_pisces     +  jp_medusa     !: cumulative number of passive tracers 
     26   INTEGER, PARAMETER ::   jp_lp_2d   =  jp_pisces_2d  +  jp_medusa_2d  !: 
     27   INTEGER, PARAMETER ::   jp_lp_3d   =  jp_pisces_3d  +  jp_medusa_3d  !: 
     28   INTEGER, PARAMETER ::   jp_lp_trd  =  jp_pisces_trd +  jp_medusa_trd !: 
    3129 
    3230#if defined key_idtra 
     
    3634   LOGICAL, PUBLIC, PARAMETER ::   lk_idtra     = .TRUE.      !: IDEAL-TRACER flag 
    3735   INTEGER, PUBLIC, PARAMETER ::   jp_idtra     =  1          !: number of passive tracers 
    38    INTEGER, PUBLIC, PARAMETER ::   jp_idtra_2d  =  0          !: additional 2d output arrays ('key_trc_diaadd') 
     36   INTEGER, PUBLIC, PARAMETER ::   jp_idtra_2d  =  3          !: additional 2d output arrays ('key_trc_diaadd') 
    3937   INTEGER, PUBLIC, PARAMETER ::   jp_idtra_3d  =  0          !: additional 3d output arrays ('key_trc_diaadd') 
    4038   INTEGER, PUBLIC, PARAMETER ::   jp_idtra_trd =  0          !: number of sms trends for IDEAL-TRACER 
  • branches/NERC/dev_r5518_NOC_MEDUSA_Stable/NEMOGCM/NEMO/TOP_SRC/IDTRA/trcini_idtra.F90

    r6046 r6164  
    4646      !!---------------------------------------------------------------------- 
    4747 
     48      IF(lwp) WRITE(numout,*) 
     49      IF(lwp) WRITE(numout,*) ' trc_ini_idtra: initialisation of Ideal Tracers model' 
     50      IF(lwp) WRITE(numout,*) ' ~~~~~~~~~~~' 
     51 
     52      IF( trc_sms_idtra_alloc() /= 0 )   CALL ctl_stop( 'STOP', 'trc_ini_idtra:unable to allocate CFC arrays' ) 
     53 
    4854 
    4955      ! Initialization of trn in case of  no restart 
    5056      !---------------------------------------------- 
     57      qtr_idtra(:,:,:) = 0._wp 
     58      inv_idtra(:,:,:) = 0._wp 
    5159      IF( .NOT. ln_rsttr ) THEN 
    5260         IF(lwp) THEN 
    5361            WRITE(numout,*) 
    54             WRITE(numout,*) 'Initialization de id-tracers ; No restart : ' 
     62            WRITE(numout,*) 'Initialization of id-tracers ; No restart : ' 
    5563            WRITE(numout,*) '                             ; Init field equal 1 at surface - zero elsewhere' 
     64            WRITE(numout,*) '                             ; qint idtra equal 0 ' 
    5665         ENDIF 
     66         qint_idtra(:,:,:) = 0._wp 
    5767         DO jn = jp_idtra0, jp_idtra1 
    5868             trn(:,:,:,jn) = 0.e0 
  • branches/NERC/dev_r5518_NOC_MEDUSA_Stable/NEMOGCM/NEMO/TOP_SRC/IDTRA/trcsms_idtra.F90

    r6046 r6164  
    2525   PRIVATE 
    2626 
    27    PUBLIC   trc_sms_idtra       ! called in ??? 
    28  
     27   PUBLIC   trc_sms_idtra        ! called in ??? 
     28   PUBLIC   trc_sms_idtra_alloc  ! called in ??? 
     29   ! 
    2930   INTEGER , PUBLIC    ::   nyear_res      ! restoring time constant (year) 
    3031   INTEGER , PUBLIC    ::   numnatm 
    3132   REAL(wp), PUBLIC    ::   FDEC 
     33   ! 
     34   REAL(wp), PUBLIC, ALLOCATABLE, SAVE, DIMENSION(:,:,:) ::   qtr_idtra  ! flux at surface 
     35   REAL(wp), PUBLIC, ALLOCATABLE, SAVE, DIMENSION(:,:,:) ::   qint_idtra ! cumulative flux  
     36   REAL(wp), PUBLIC, ALLOCATABLE, SAVE, DIMENSION(:,:,:) ::   inv_idtra  ! vertic. inventory 
     37 
    3238   !                          ! coefficients for conversion 
    3339   REAL(wp) ::  WTEMP 
     
    7581 
    7682      !!---------------------------------------------------------------------- 
    77       IF(lwp) WRITE(numout,*) '   - JPALM - verif :' 
    78       IF(lwp) WRITE(numout,*) '   ~~~~~~~~~~~~~~~~~' 
    79       IF(lwp) WRITE(numout,*) '   - idtra decay factor : ', FDEC 
     83      IF (kt == nittrc000) THEN 
     84         IF(lwp) WRITE(numout,*) '   - JPALM - verif :' 
     85         IF(lwp) WRITE(numout,*) '   ~~~~~~~~~~~~~~~~~' 
     86         IF(lwp) WRITE(numout,*) '   - idtra decay factor : ', FDEC 
     87      ENDIF 
     88 
     89         ! 
     90      inv_idtra(:,:,:) = 0.0                                        !! init the inventory 
     91      DO jl = 1, jp_idtra 
     92         jn = jp_idtra0 + jl - 1 
     93 
     94         DO jj = 1, jpj 
     95            DO ji = 1, jpi 
     96         !! First, a crude version. will be much inproved later. 
     97             qtr_idtra(ji,jj,jl)  = (1. - trb(ji,jj,1,jn)) * tmask(ji,jj,1) *   &  
     98                                  fse3t(ji,jj,1) / rdt             !! Air-sea Flux 
     99           ENDDO 
     100         ENDDO 
     101         tra(:,:,1,jn)      = tra(:,:,1,jn) + ( qtr_idtra(:,:,jl) *  & 
     102                            tmask(:,:,1) / fse3t(:,:,1) ) 
     103         qint_idtra(:,:,jl) = qint_idtra(:,:,jl) +                   &            
     104                              qtr_idtra(:,:,jl) * rdt              !! Cumulative Air-sea Flux 
    80105 
    81106 
    82          ! 
    83 DO jn = jp_idtra0, jp_idtra1 
    84  
    85         ! DO jj = 1, jpj 
    86         !    DO ji = 1, jpi 
    87                ! Surface concentrarion fixed to 1 (ideal tracer concentration unit) 
    88                trn(:,:,1,jn) = 1. 
    89                trb(:,:,1,jn) = 1. 
    90                ! 
    91         !    ENDDO 
    92         ! ENDDO 
    93  
     107         DO jk =1,jpk 
     108            inv_idtra(:,:,jl) = inv_idtra(:,:,jl) +                  & 
     109                     (trn(:,:,jk,jn) * fse3t(:,:,jk) * tmask(:,:,jk))  !! vertical inventory 
     110         ENDDO 
    94111! 
    95112!DECAY of OUR IDEALIZED TRACER 
     
    101118               !  IF (trn(ji,jj,jk,jn) > 0.0) THEN 
    102119                    WTEMP = trn(ji,jj,jk,jn) * (1. - FDEC ) 
    103                     tra(ji,jj,jk,jn) = tra(ji,jj,jk,jn) - WTEMP/rdt 
     120                    tra(ji,jj,jk,jn) = (tra(ji,jj,jk,jn) - WTEMP/rdt ) * & 
     121                                     tmask(ji,jj,jk) 
    104122               !  ENDIF  
    105123              ENDDO  
     
    107125         ENDDO 
    108126 
    109 ENDDO 
     127      ENDDO 
    110128    !! jn loop 
    111129! 
    112130 
    113 !!!!!! No added diagnostics to save here for idealize tracers... 
    114 !!%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 
    115 !! #if defined key_trc_diaadd 
    116 !!       ! Save diagnostics , just for TRI111 
    117 !! # if ! defined key_iomput 
    118 !!       trc2d(:,:,jp_idtra0_2d    ) = zpp_idtra(:,:) 
    119 !! # else 
    120 !! !           WRITE(NUMOUT,*) 'Iomput idtrasurf ' 
    121 !!       CALL iom_put( "TRISURF"  , zpp_idtra(:,:) ) 
    122 !! !      CALL iom_put( "TRISURF"  , xphem(:,:) ) 
    123 !! !           WRITE(NUMOUT,*) 'Iomputage ' 
    124 !!        CALL iom_put( "AGE"  , zage(:,:,:) ) 
    125 !! # endif 
    126 !! #endif 
    127 !! 
     131        ! 
     132      IF( lrst_trc ) THEN 
     133         IF(lwp) WRITE(numout,*) 
     134         IF(lwp) WRITE(numout,*) 'trc_sms_idtra : cumulated input function fields written in ocean restart file ',   & 
     135            &                    'at it= ', kt,' date= ', ndastp 
     136         IF(lwp) WRITE(numout,*) '~~~~' 
     137         DO jn = jp_idtra0, jp_idtra1 
     138            CALL iom_rstput( kt, nitrst, numrtw, 'qint_IDTRA', qint_idtra(:,:,jn) ) 
     139         END DO 
     140      ENDIF 
     141      ! 
     142      IF( lk_iomput ) THEN 
     143         CALL iom_put( "qtrIDTRA"  , qtr_idtra (:,:,1) ) 
     144         CALL iom_put( "qintIDTRA" , qint_idtra(:,:,1) ) 
     145         CALL iom_put( "invIDTRA" , inv_idtra(:,:,1) ) 
     146      ELSE 
     147         IF( ln_diatrc ) THEN 
     148            trc2d(:,:,jp_idtra0_2d    ) = qtr_idtra (:,:,1) 
     149            trc2d(:,:,jp_idtra0_2d + 1) = qint_idtra(:,:,1) 
     150            trc2d(:,:,jp_idtra0_2d + 2) = inv_idtra(:,:,1) 
     151         END IF 
     152      END IF 
     153      ! 
     154      IF( l_trdtrc ) THEN 
     155          DO jn = jp_idtra0, jp_idtra1 
     156            CALL trd_trc( tra(:,:,:,jn), jn, jptra_sms, kt )   ! save trends 
     157          END DO 
     158      END IF 
     159      ! 
     160      IF( nn_timing == 1 )  CALL timing_stop('trc_sms_idtra') 
     161      ! 
     162   END SUBROUTINE trc_sms_idtra 
    128163 
    129 !!      IF( l_trdtrc ) THEN 
    130 !!          DO jn = jp_idtra0, jp_idtra1 
    131 !!            zidtradtra(:,:,:) = tra(:,:,:,jn) 
    132 !!            CALL trd_mod_trc( zidtradtra, jn, jptrc_trd_sms, kt )   ! save trends 
    133 !!          END DO 
    134 !!      END IF 
     164   INTEGER FUNCTION trc_sms_idtra_alloc() 
     165      !!---------------------------------------------------------------------- 
     166      !!                     ***  ROUTINE trc_sms_idtra_alloc  *** 
     167      !!---------------------------------------------------------------------- 
     168      ALLOCATE( qtr_idtra (jpi,jpj,jp_idtra) ,     & 
     169         &      inv_idtra(jpi,jpj,jp_idtra)  ,     & 
     170         &      qint_idtra(jpi,jpj,jp_idtra) , STAT=trc_sms_idtra_alloc ) 
     171         ! 
     172      IF( trc_sms_idtra_alloc /= 0 ) CALL ctl_warn('trc_sms_idtra_alloc : failed to allocate arrays.') 
     173      ! 
     174   END FUNCTION trc_sms_idtra_alloc 
    135175 
    136    END SUBROUTINE trc_sms_idtra 
    137176#else 
    138177   !!---------------------------------------------------------------------- 
  • branches/NERC/dev_r5518_NOC_MEDUSA_Stable/NEMOGCM/NEMO/TOP_SRC/MEDUSA/par_medusa.F90

    r5726 r6164  
    1515   !! Software governed by the CeCILL licence (modipsl/doc/NEMO_CeCILL.txt) 
    1616   !!---------------------------------------------------------------------- 
     17   USE par_pisces , ONLY : jp_pisces       !: number of tracers in PISCES 
     18   USE par_pisces , ONLY : jp_pisces_2d    !: number of 2D diag in PISCES 
     19   USE par_pisces , ONLY : jp_pisces_3d    !: number of 3D diag in PISCES 
     20   USE par_pisces , ONLY : jp_pisces_trd   !: number of biological diag in PISCES 
    1721 
    1822   IMPLICIT NONE 
     23 
     24   INTEGER, PARAMETER ::   jp_lm      =  jp_pisces      !:  
     25   INTEGER, PARAMETER ::   jp_lm_2d   =  jp_pisces_2d   !: 
     26   INTEGER, PARAMETER ::   jp_lm_3d   =  jp_pisces_3d   !: 
     27   INTEGER, PARAMETER ::   jp_lm_trd  =  jp_pisces_trd  !: 
    1928 
    2029#if defined key_medusa 
     
    3645 
    3746   ! assign an index in trc arrays for each PTS prognostic variables 
    38    INTEGER, PUBLIC, PARAMETER ::   jpchn  =  1              !: non-diatom chlorophyll concentration 
    39    INTEGER, PUBLIC, PARAMETER ::   jpchd  =  2              !: diatom     chlorophyll concentration 
    40    INTEGER, PUBLIC, PARAMETER ::   jpphn  =  3              !: non-diatom concentration 
    41    INTEGER, PUBLIC, PARAMETER ::   jpphd  =  4              !: diatom     concentration 
    42    INTEGER, PUBLIC, PARAMETER ::   jpzmi  =  5              !: microzooplankton concentration 
    43    INTEGER, PUBLIC, PARAMETER ::   jpzme  =  6              !: mesozooplankton  concentration 
    44    INTEGER, PUBLIC, PARAMETER ::   jpdin  =  7              !: dissolved inorganic nitrogen concentration 
    45    INTEGER, PUBLIC, PARAMETER ::   jpsil  =  8              !: silicic acid concentration 
    46    INTEGER, PUBLIC, PARAMETER ::   jpfer  =  9              !: total iron concentration 
    47    INTEGER, PUBLIC, PARAMETER ::   jpdet  = 10              !: slow-sinking detritus concentration 
    48    INTEGER, PUBLIC, PARAMETER ::   jppds  = 11              !: diatom silicon concentration 
     47   INTEGER, PUBLIC, PARAMETER ::   jpchn  =  jp_lm + 1      !: non-diatom chlorophyll concentration 
     48   INTEGER, PUBLIC, PARAMETER ::   jpchd  =  jp_lm + 2      !: diatom     chlorophyll concentration 
     49   INTEGER, PUBLIC, PARAMETER ::   jpphn  =  jp_lm + 3      !: non-diatom concentration 
     50   INTEGER, PUBLIC, PARAMETER ::   jpphd  =  jp_lm + 4      !: diatom     concentration 
     51   INTEGER, PUBLIC, PARAMETER ::   jpzmi  =  jp_lm + 5      !: microzooplankton concentration 
     52   INTEGER, PUBLIC, PARAMETER ::   jpzme  =  jp_lm + 6      !: mesozooplankton  concentration 
     53   INTEGER, PUBLIC, PARAMETER ::   jpdin  =  jp_lm + 7      !: dissolved inorganic nitrogen concentration 
     54   INTEGER, PUBLIC, PARAMETER ::   jpsil  =  jp_lm + 8      !: silicic acid concentration 
     55   INTEGER, PUBLIC, PARAMETER ::   jpfer  =  jp_lm + 9      !: total iron concentration 
     56   INTEGER, PUBLIC, PARAMETER ::   jpdet  =  jp_lm + 10     !: slow-sinking detritus concentration 
     57   INTEGER, PUBLIC, PARAMETER ::   jppds  =  jp_lm + 11     !: diatom silicon concentration 
    4958# if defined key_roam 
    50    INTEGER, PUBLIC, PARAMETER ::   jpdtc  = 12              !: slow-sinking detritus carbon concentration 
    51    INTEGER, PUBLIC, PARAMETER ::   jpdic  = 13              !: dissolved inorganic carbon concentration 
    52    INTEGER, PUBLIC, PARAMETER ::   jpalk  = 14              !: alkalinity 
    53    INTEGER, PUBLIC, PARAMETER ::   jpoxy  = 15              !: dissolved oxygen concentration 
     59   INTEGER, PUBLIC, PARAMETER ::   jpdtc  =  jp_lm + 12     !: slow-sinking detritus carbon concentration 
     60   INTEGER, PUBLIC, PARAMETER ::   jpdic  =  jp_lm + 13     !: dissolved inorganic carbon concentration 
     61   INTEGER, PUBLIC, PARAMETER ::   jpalk  =  jp_lm + 14     !: alkalinity 
     62   INTEGER, PUBLIC, PARAMETER ::   jpoxy  =  jp_lm + 15     !: dissolved oxygen concentration 
    5463# endif 
    5564 
     
    6675 
    6776   ! Starting/ending PISCES do-loop indices (N.B. no PISCES : jpl_pcs < jpf_pcs the do-loop are never done) 
    68    INTEGER, PUBLIC, PARAMETER ::   jp_msa0     = 1              !: First index of MEDUSA passive tracers 
    69    INTEGER, PUBLIC, PARAMETER ::   jp_msa1     = jp_medusa      !: Last  index of MEDUSA passive tracers 
    70    INTEGER, PUBLIC, PARAMETER ::   jp_msa0_2d  = 1              !: First index of MEDUSA passive tracers 
    71    INTEGER, PUBLIC, PARAMETER ::   jp_msa1_2d  = jp_medusa_2d   !: Last  index of MEDUSA passive tracers 
    72    INTEGER, PUBLIC, PARAMETER ::   jp_msa0_3d  = 1              !: First index of MEDUSA passive tracers 
    73    INTEGER, PUBLIC, PARAMETER ::   jp_msa1_3d  = jp_medusa_3d   !: Last  index of MEDUSA passive tracers 
    74    INTEGER, PUBLIC, PARAMETER ::   jp_msa0_trd = 1              !: First index of MEDUSA passive tracers 
    75    INTEGER, PUBLIC, PARAMETER ::   jp_msa1_trd = jp_medusa_trd  !: Last  index of MEDUSA passive tracers 
     77   INTEGER, PUBLIC, PARAMETER ::   jp_msa0     = jp_lm     + 1              !: First index of MEDUSA passive tracers 
     78   INTEGER, PUBLIC, PARAMETER ::   jp_msa1     = jp_lm     + jp_medusa      !: Last  index of MEDUSA passive tracers 
     79   INTEGER, PUBLIC, PARAMETER ::   jp_msa0_2d  = jp_lm_2d  + 1              !: First index of MEDUSA passive tracers 
     80   INTEGER, PUBLIC, PARAMETER ::   jp_msa1_2d  = jp_lm_2d  + jp_medusa_2d   !: Last  index of MEDUSA passive tracers 
     81   INTEGER, PUBLIC, PARAMETER ::   jp_msa0_3d  = jp_lm_3d  + 1              !: First index of MEDUSA passive tracers 
     82   INTEGER, PUBLIC, PARAMETER ::   jp_msa1_3d  = jp_lm_3d  + jp_medusa_3d   !: Last  index of MEDUSA passive tracers 
     83   INTEGER, PUBLIC, PARAMETER ::   jp_msa0_trd = jp_lm_trd + 1              !: First index of MEDUSA passive tracers 
     84   INTEGER, PUBLIC, PARAMETER ::   jp_msa1_trd = jp_lm_trd + jp_medusa_trd  !: Last  index of MEDUSA passive tracers 
    7685 
    7786   !!====================================================================== 
  • branches/NERC/dev_r5518_NOC_MEDUSA_Stable/NEMOGCM/NEMO/TOP_SRC/MEDUSA/trcini_medusa.F90

    r6026 r6164  
    3838   !! JPALM (14/09/15) 
    3939   LOGICAL, PUBLIC ::                  & 
    40       ln_ccd = .TRUE. 
     40      ln_ccd = .FALSE. 
    4141 
    4242   INTEGER ::                          & 
  • branches/NERC/dev_r5518_NOC_MEDUSA_Stable/NEMOGCM/NEMO/TOP_SRC/MEDUSA/trcsed_medusa.F90

    r6026 r6164  
    4242   !! AXY (10/02/09) 
    4343   LOGICAL, PUBLIC ::                  & 
    44       bdustfer = .TRUE. 
     44      bdustfer = .FALSE. 
    4545   REAL(wp), PUBLIC ::                 & 
    4646      sedfeinput = 1.e-9_wp  ,         & 
  • branches/NERC/dev_r5518_NOC_MEDUSA_Stable/NEMOGCM/NEMO/TOP_SRC/trcini.F90

    r5726 r6164  
    103103 
    104104      IF( lk_pisces  )       CALL trc_ini_pisces       ! PISCES  bio-model 
     105      IF( lk_medusa  )       CALL trc_ini_medusa       ! MEDUSA  tracers 
     106      IF( lk_idtra   )       CALL trc_ini_idtra        ! Idealize tracers 
    105107      IF( lk_cfc     )       CALL trc_ini_cfc          ! CFC     tracers 
    106108      IF( lk_c14b    )       CALL trc_ini_c14b         ! C14 bomb  tracer 
    107109      IF( lk_my_trc  )       CALL trc_ini_my_trc       ! MY_TRC  tracers 
    108       IF( lk_medusa  )       CALL trc_ini_medusa       ! MEDUSA  tracers 
    109       IF( lk_idtra   )       CALL trc_ini_idtra        ! Idealize tracers 
    110110 
    111111      CALL trc_ice_ini                                 ! Tracers in sea ice 
  • branches/NERC/dev_r5518_NOC_MEDUSA_Stable/NEMOGCM/NEMO/TOP_SRC/trcnam.F90

    r5978 r6164  
    232232      ENDIF 
    233233      ! 
    234  
     234# if defined key_debug_medusa 
     235      CALL flush(numout) 
     236      IF (lwp) write (numout,*) '------------------------------' 
     237      IF (lwp) write (numout,*) 'Jpalm - debug' 
     238      IF (lwp) write (numout,*) 'CALL trc_nam_pisces  -- OK' 
     239      IF (lwp) write (numout,*) 'in trc_nam - just before CALL trc_nam_medusa' 
     240      IF (lwp) write (numout,*) ' ' 
     241# endif 
     242      ! 
     243      IF( lk_medusa  ) THEN   ;   CALL trc_nam_medusa      ! MEDUSA  tracers 
     244      ELSE                    ;   IF(lwp) WRITE(numout,*) '          MEDUSA not used' 
     245      ENDIF 
     246      ! 
     247# if defined key_debug_medusa 
     248      CALL flush(numout) 
     249      IF (lwp) write (numout,*) '------------------------------' 
     250      IF (lwp) write (numout,*) 'Jpalm - debug' 
     251      IF (lwp) write (numout,*) 'CALL trc_nam_medusa -- OK' 
     252      IF (lwp) write (numout,*) 'in trc_nam - just before CALL trc_nam_idtra' 
     253      IF (lwp) write (numout,*) ' ' 
     254# endif 
     255      ! 
     256      IF( lk_idtra   ) THEN   ;   CALL trc_nam_idtra       ! Idealize tracers 
     257      ELSE                    ;   IF(lwp) WRITE(numout,*) '          Idealize tracers not used' 
     258      ENDIF 
     259      ! 
     260# if defined key_debug_medusa 
     261      CALL flush(numout) 
     262      IF (lwp) write (numout,*) '------------------------------' 
     263      IF (lwp) write (numout,*) 'Jpalm - debug' 
     264      IF (lwp) write (numout,*) 'CALL trc_nam_idtra -- OK' 
     265      IF (lwp) write (numout,*) 'in trc_nam - just before CALL trc_nam_cfc' 
     266      IF (lwp) write (numout,*) ' ' 
     267# endif 
     268      ! 
    235269      IF( lk_cfc     ) THEN   ;   CALL trc_nam_cfc         ! CFC     tracers 
    236270      ELSE                    ;   IF(lwp) WRITE(numout,*) '          CFC not used' 
     
    244278      ELSE                    ;   IF(lwp) WRITE(numout,*) '          MY_TRC not used' 
    245279      ENDIF 
    246       ! 
    247 # if defined key_debug_medusa 
    248       CALL flush(numout) 
    249       IF (lwp) write (numout,*) '------------------------------' 
    250       IF (lwp) write (numout,*) 'Jpalm - debug' 
    251       IF (lwp) write (numout,*) 'CALL trc_nam_pisces - CFC - C14 - my_trc -- OK' 
    252       IF (lwp) write (numout,*) 'in trc_nam - just before CALL trc_nam_medusa' 
    253       IF (lwp) write (numout,*) ' ' 
    254 # endif 
    255       ! 
    256       IF( lk_medusa  ) THEN   ;   CALL trc_nam_medusa      ! MEDUSA  tracers 
    257       ELSE                    ;   IF(lwp) WRITE(numout,*) '          MEDUSA not used' 
    258       ENDIF 
    259       ! 
    260 # if defined key_debug_medusa 
    261       CALL flush(numout) 
    262       IF (lwp) write (numout,*) '------------------------------' 
    263       IF (lwp) write (numout,*) 'Jpalm - debug' 
    264       IF (lwp) write (numout,*) 'CALL trc_nam_medusa -- OK' 
    265       IF (lwp) write (numout,*) 'in trc_nam - just before CALL trc_nam_idtra' 
    266       IF (lwp) write (numout,*) ' ' 
    267 # endif 
    268       ! 
    269       IF( lk_idtra   ) THEN   ;   CALL trc_nam_idtra       ! Idealize tracers 
    270       ELSE                    ;   IF(lwp) WRITE(numout,*) '          Idealize tracers not used' 
    271       ENDIF 
    272       ! 
    273 # if defined key_debug_medusa 
    274       CALL flush(numout) 
    275       IF (lwp) write (numout,*) '------------------------------' 
    276       IF (lwp) write (numout,*) 'Jpalm - debug' 
    277       IF (lwp) write (numout,*) 'CALL trc_nam_idtra -- OK' 
    278       IF (lwp) write (numout,*) 'in trc_nam - CALL trc_nam OK' 
    279       IF (lwp) write (numout,*) ' ' 
    280 # endif 
    281       ! 
     280        
    282281      IF(lwp)   CALL flush(numout) 
    283282   END SUBROUTINE trc_nam 
  • branches/NERC/dev_r5518_NOC_MEDUSA_Stable/NEMOGCM/NEMO/TOP_SRC/trcrst.F90

    r6160 r6164  
    8585      ! except if we write tracer restart files every tracer time step or if a tracer restart file was writen at nitend - 2*nn_dttrc + 1 
    8686      IF( kt == nitrst - 2*nn_dttrc .OR. nstock == nn_dttrc .OR. ( kt == nitend - nn_dttrc .AND. .NOT. lrst_trc ) ) THEN 
    87          IF ( ln_rstdate ) THEN 
    88             !! JPALM -- 22-12-2015 -- modif to get the good date on restart trc file name 
    89             !!                     -- the condition to open the rst file is not the same than for the dynamic rst. 
    90             !!                     -- here it - for an obscure reason - is open 2 time-step before the restart writing process 
    91             !!                     instead of 1. 
    92             !!                     -- i am not sure if someone forgot +1 in the if loop condition as 
    93             !!                     it is writen in all comments nitrst - 2*nn_dttrc + 1 and the condition is nitrst - 2*nn_dttrc 
    94             !!                     -- nevertheless we didn't wanted to broke something already working  
    95             !!                     and just adapted the part we added. 
    96             !!                     -- So instead of calling ju2ymds( fjulday + (rdttra(1)) .... 
    97             !!                     we call ju2ymds( fjulday + (2*rdttra(1)) ..... 
    98             !!--------------------------------------------------------------------       
    99             CALL ju2ymds( fjulday + (2*rdttra(1)) / rday, iyear, imonth, iday, zsec ) 
    100             WRITE(clkt, '(i4.4,2i2.2)') iyear, imonth, iday 
    101          ELSE 
     87        ! IF ( ln_rstdate ) THEN 
     88        !    CALL ju2ymds( fjulday + rdttra(1) / rday, iyear, imonth, iday, zsec ) 
     89        !    WRITE(clkt, '(i4.4,2i2.2)') iyear, imonth, iday 
     90        ! ELSE 
    10291            ! beware of the format used to write kt (default is i8.8, that should be large enough) 
    10392            IF( nitrst > 1.0e9 ) THEN   ;   WRITE(clkt,*       ) nitrst 
    10493            ELSE                        ;   WRITE(clkt,'(i8.8)') nitrst 
    10594            ENDIF 
    106         ENDIF 
     95        ! ENDIF 
    10796         ! create the file 
    10897         IF(lwp) WRITE(numout,*) 
     
    211200      if (lwp) write (numout,'(a,3f15.5)') 'Sediment Ca ', & 
    212201         &        fq0, fq1, fq2 
    213       !! 
    214       !! AXY (07/07/15): read in temporally averaged fields for DMS 
    215       !!                 calculations 
    216       !! 
    217       IF( iom_varid( numrtr, 'B_DMS_CHN', ldstop = .FALSE. ) > 0 ) THEN 
    218          !! YES; in which case read them 
    219          !! 
    220          IF(lwp) WRITE(numout,*) ' MEDUSA averaged properties for DMS present - reading in ...' 
    221          CALL iom_get( numrtr, jpdom_autoglo, 'B_DMS_CHN',  zb_dms_chn(:,:)  ) 
    222          CALL iom_get( numrtr, jpdom_autoglo, 'N_DMS_CHN',  zn_dms_chn(:,:)  ) 
    223          CALL iom_get( numrtr, jpdom_autoglo, 'B_DMS_CHD',  zb_dms_chd(:,:)  ) 
    224          CALL iom_get( numrtr, jpdom_autoglo, 'N_DMS_CHD',  zn_dms_chd(:,:)  ) 
    225          CALL iom_get( numrtr, jpdom_autoglo, 'B_DMS_MLD',  zb_dms_mld(:,:)  ) 
    226          CALL iom_get( numrtr, jpdom_autoglo, 'N_DMS_MLD',  zn_dms_mld(:,:)  ) 
    227          CALL iom_get( numrtr, jpdom_autoglo, 'B_DMS_QSR',  zb_dms_qsr(:,:)  ) 
    228          CALL iom_get( numrtr, jpdom_autoglo, 'N_DMS_QSR',  zn_dms_qsr(:,:)  ) 
    229          CALL iom_get( numrtr, jpdom_autoglo, 'B_DMS_DIN',  zb_dms_din(:,:)  ) 
    230          CALL iom_get( numrtr, jpdom_autoglo, 'N_DMS_DIN',  zn_dms_din(:,:)  ) 
    231       ELSE 
    232          !! NO; in which case set them to zero 
    233          !! 
    234          IF(lwp) WRITE(numout,*) ' MEDUSA averaged properties for DMS absent - setting to zero ...' 
    235          zb_dms_chn(:,:)  = 0.0   !! CHN 
    236          zn_dms_chn(:,:)  = 0.0 
    237          zb_dms_chd(:,:)  = 0.0   !! CHD 
    238          zn_dms_chd(:,:)  = 0.0 
    239          zb_dms_mld(:,:)  = 0.0   !! MLD 
    240          zn_dms_mld(:,:)  = 0.0 
    241          zb_dms_qsr(:,:)  = 0.0   !! QSR 
    242          zn_dms_qsr(:,:)  = 0.0 
    243          zb_dms_din(:,:)  = 0.0   !! DIN 
    244          zn_dms_din(:,:)  = 0.0 
    245       ENDIF 
    246       !! 
    247       !! calculate stats on these fields 
    248       IF(lwp) WRITE(numout,*) ' MEDUSA averaged properties for DMS stats (min, max, sum) ...' 
    249       fq0 = MINVAL(zn_dms_chn(:,:)) 
    250       fq1 = MAXVAL(zn_dms_chn(:,:)) 
    251       fq2 = SUM(zn_dms_chn(:,:)) 
    252       if (lwp) write (numout,'(a,3f15.5)') 'DMS, CHN ', fq0, fq1, fq2 
    253       fq0 = MINVAL(zn_dms_chd(:,:)) 
    254       fq1 = MAXVAL(zn_dms_chd(:,:)) 
    255       fq2 = SUM(zn_dms_chd(:,:)) 
    256       if (lwp) write (numout,'(a,3f15.5)') 'DMS, CHD ', fq0, fq1, fq2 
    257       fq0 = MINVAL(zn_dms_mld(:,:)) 
    258       fq1 = MAXVAL(zn_dms_mld(:,:)) 
    259       fq2 = SUM(zn_dms_mld(:,:)) 
    260       if (lwp) write (numout,'(a,3f15.5)') 'DMS, MLD ', fq0, fq1, fq2 
    261       fq0 = MINVAL(zn_dms_qsr(:,:)) 
    262       fq1 = MAXVAL(zn_dms_qsr(:,:)) 
    263       fq2 = SUM(zn_dms_qsr(:,:)) 
    264       if (lwp) write (numout,'(a,3f15.5)') 'DMS, QSR ', fq0, fq1, fq2 
    265       fq0 = MINVAL(zn_dms_din(:,:)) 
    266       fq1 = MAXVAL(zn_dms_din(:,:)) 
    267       fq2 = SUM(zn_dms_din(:,:)) 
    268       if (lwp) write (numout,'(a,3f15.5)') 'DMS, DIN ', fq0, fq1, fq2 
    269  
    270202#endif 
    271203  
     
    349281      if (lwp) write (numout,'(a,3f15.5)') 'Sediment Ca ', & 
    350282         &        fq0, fq1, fq2 
    351       !! 
    352       !! AXY (07/07/15): write out temporally averaged fields for DMS 
    353       !!                 calculations 
    354       !! 
    355       IF(lwp) WRITE(numout,*) ' MEDUSA averaged properties for DMS - writing out ...' 
    356       CALL iom_rstput( kt, nitrst, numrtw, 'B_DMS_CHN',  zb_dms_chn(:,:)  ) 
    357       CALL iom_rstput( kt, nitrst, numrtw, 'N_DMS_CHN',  zn_dms_chn(:,:)  ) 
    358       CALL iom_rstput( kt, nitrst, numrtw, 'B_DMS_CHD',  zb_dms_chd(:,:)  ) 
    359       CALL iom_rstput( kt, nitrst, numrtw, 'N_DMS_CHD',  zn_dms_chd(:,:)  ) 
    360       CALL iom_rstput( kt, nitrst, numrtw, 'B_DMS_MLD',  zb_dms_mld(:,:)  ) 
    361       CALL iom_rstput( kt, nitrst, numrtw, 'N_DMS_MLD',  zn_dms_mld(:,:)  ) 
    362       CALL iom_rstput( kt, nitrst, numrtw, 'B_DMS_QSR',  zb_dms_qsr(:,:)  ) 
    363       CALL iom_rstput( kt, nitrst, numrtw, 'N_DMS_QSR',  zn_dms_qsr(:,:)  ) 
    364       CALL iom_rstput( kt, nitrst, numrtw, 'B_DMS_DIN',  zb_dms_din(:,:)  ) 
    365       CALL iom_rstput( kt, nitrst, numrtw, 'N_DMS_DIN',  zn_dms_din(:,:)  ) 
    366       !! 
    367       !! calculate stats on these fields 
    368       IF(lwp) WRITE(numout,*) ' MEDUSA averaged properties for DMS stats (min, max, sum) ...' 
    369       fq0 = MINVAL(zn_dms_chn(:,:)) 
    370       fq1 = MAXVAL(zn_dms_chn(:,:)) 
    371       fq2 = SUM(zn_dms_chn(:,:)) 
    372       if (lwp) write (numout,'(a,3f15.5)') 'DMS, CHN ', fq0, fq1, fq2 
    373       fq0 = MINVAL(zn_dms_chd(:,:)) 
    374       fq1 = MAXVAL(zn_dms_chd(:,:)) 
    375       fq2 = SUM(zn_dms_chd(:,:)) 
    376       if (lwp) write (numout,'(a,3f15.5)') 'DMS, CHD ', fq0, fq1, fq2 
    377       fq0 = MINVAL(zn_dms_mld(:,:)) 
    378       fq1 = MAXVAL(zn_dms_mld(:,:)) 
    379       fq2 = SUM(zn_dms_mld(:,:)) 
    380       if (lwp) write (numout,'(a,3f15.5)') 'DMS, MLD ', fq0, fq1, fq2 
    381       fq0 = MINVAL(zn_dms_qsr(:,:)) 
    382       fq1 = MAXVAL(zn_dms_qsr(:,:)) 
    383       fq2 = SUM(zn_dms_qsr(:,:)) 
    384       if (lwp) write (numout,'(a,3f15.5)') 'DMS, QSR ', fq0, fq1, fq2 
    385       fq0 = MINVAL(zn_dms_din(:,:)) 
    386       fq1 = MAXVAL(zn_dms_din(:,:)) 
    387       fq2 = SUM(zn_dms_din(:,:)) 
    388       if (lwp) write (numout,'(a,3f15.5)') 'DMS, DIN ', fq0, fq1, fq2 
    389       !!  
    390283#endif 
    391284 
  • branches/NERC/dev_r5518_NOC_MEDUSA_Stable/NEMOGCM/NEMO/TOP_SRC/trcsms.F90

    r5841 r6164  
    5151      ! 
    5252      IF( lk_pisces  )   CALL trc_sms_pisces ( kt )    ! main program of PISCES  
     53      IF( lk_medusa  )   CALL trc_sms_medusa ( kt )    ! MEDUSA  tracers 
     54      IF( lk_idtra   )   CALL trc_sms_idtra  ( kt )    ! radioactive decay of Id. tracer 
    5355      IF( lk_cfc     )   CALL trc_sms_cfc    ( kt )    ! surface fluxes of CFC 
    5456      IF( lk_c14b    )   CALL trc_sms_c14b   ( kt )    ! surface fluxes of C14 
    5557      IF( lk_my_trc  )   CALL trc_sms_my_trc ( kt )    ! MY_TRC  tracers 
    56       IF( lk_medusa  )   CALL trc_sms_medusa ( kt )    ! MEDUSA  tracers 
    57       IF( lk_idtra   )   CALL trc_sms_idtra  ( kt )    ! radioactive decay of Id. tracer 
    5858 
    5959      IF(ln_ctl) THEN      ! print mean trends (used for debugging) 
Note: See TracChangeset for help on using the changeset viewer.