Index: trunk/NEMO/TOP_SRC/PISCES/p4zbio.F90
===================================================================
--- trunk/NEMO/TOP_SRC/PISCES/p4zbio.F90	(revision 1089)
+++ trunk/NEMO/TOP_SRC/PISCES/p4zbio.F90	(revision 1119)
@@ -15,5 +15,5 @@
    !!----------------------------------------------------------------------
    USE oce_trc         !
-   USE trp_trc         ! 
+   USE trc         ! 
    USE sms_pisces      ! 
    USE p4zsink         ! 
@@ -131,6 +131,5 @@
 
 # if defined key_trc_dia3d && defined key_kriest
-!!gm potential bug  hard coded index on trc3d
-      trc3d(:,:,:,11) = tra(:,:,:,jpcal) * xnegtr(:,:,:) * 1.e3 * rfact2r
+      trc3d(:,:,:,jp_pcs0_3d + 10) = tra(:,:,:,jpcal) * xnegtr(:,:,:) * 1.e3 * rfact2r
 # endif
       !
Index: trunk/NEMO/TOP_SRC/PISCES/p4zche.F90
===================================================================
--- trunk/NEMO/TOP_SRC/PISCES/p4zche.F90	(revision 1089)
+++ trunk/NEMO/TOP_SRC/PISCES/p4zche.F90	(revision 1119)
@@ -18,5 +18,5 @@
    !!----------------------------------------------------------------------
    USE oce_trc         !
-   USE trp_trc         !
+   USE trc         !
    USE sms_pisces      ! 
 
Index: trunk/NEMO/TOP_SRC/PISCES/p4zflx.F90
===================================================================
--- trunk/NEMO/TOP_SRC/PISCES/p4zflx.F90	(revision 1089)
+++ trunk/NEMO/TOP_SRC/PISCES/p4zflx.F90	(revision 1119)
@@ -19,5 +19,5 @@
    USE trc
    USE oce_trc         !
-   USE trp_trc
+   USE trc
    USE sms_pisces
    USE prtctl_trc
@@ -167,8 +167,8 @@
 # if defined key_trc_diaadd
             ! Save diagnostics
-            trc2d(ji,jj,1) = ( zfld - zflu ) * 1000.
-            trc2d(ji,jj,2) = ( zfld16 - zflu16 ) * 1000.
-            trc2d(ji,jj,3) = zkgco2(ji,jj)
-            trc2d(ji,jj,4) = atcco2 - zh2co3(ji,jj) / ( chemc(ji,jj,1) + rtrn )
+            trc2d(ji,jj,jp_pcs0_2d    ) = ( zfld - zflu ) * 1000.
+            trc2d(ji,jj,jp_pcs0_2d + 1) = ( zfld16 - zflu16 ) * 1000.
+            trc2d(ji,jj,jp_pcs0_2d + 2) = zkgco2(ji,jj)
+            trc2d(ji,jj,jp_pcs0_2d + 3) = atcco2 - zh2co3(ji,jj) / ( chemc(ji,jj,1) + rtrn )
 # endif
          END DO
@@ -209,18 +209,18 @@
       !! ** Purpose :   Initialization of atmospheric conditions
       !!
-      !! ** Method  :   Read the natext namelist and check the parameters
+      !! ** Method  :   Read the nampisext namelist and check the parameters
       !!      called at the first timestep (nittrc000)
-      !! ** input   :   Namelist natext
+      !! ** input   :   Namelist nampisext
       !!
       !!----------------------------------------------------------------------
 
-      NAMELIST/natext/ atcco2
+      NAMELIST/nampisext/ atcco2
 
       REWIND( numnat )                     ! read numnat
-      READ  ( numnat, natext )
+      READ  ( numnat, nampisext )
 
       IF(lwp) THEN                         ! control print
          WRITE(numout,*) ' '
-         WRITE(numout,*) ' Namelist parameters for air-sea exchange, natext'
+         WRITE(numout,*) ' Namelist parameters for air-sea exchange, nampisext'
          WRITE(numout,*) ' ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~'
          WRITE(numout,*) '    Atmospheric pCO2      atcco2      =', atcco2
Index: trunk/NEMO/TOP_SRC/PISCES/p4zint.F90
===================================================================
--- trunk/NEMO/TOP_SRC/PISCES/p4zint.F90	(revision 1089)
+++ trunk/NEMO/TOP_SRC/PISCES/p4zint.F90	(revision 1119)
@@ -14,5 +14,5 @@
    !!----------------------------------------------------------------------
    USE oce_trc         !
-   USE trp_trc
+   USE trc
    USE sms_pisces
 
Index: trunk/NEMO/TOP_SRC/PISCES/p4zlim.F90
===================================================================
--- trunk/NEMO/TOP_SRC/PISCES/p4zlim.F90	(revision 1089)
+++ trunk/NEMO/TOP_SRC/PISCES/p4zlim.F90	(revision 1119)
@@ -16,5 +16,5 @@
    USE trc
    USE oce_trc         !
-   USE trp_trc         ! 
+   USE trc         ! 
    USE sms_pisces      ! 
 
@@ -180,20 +180,20 @@
       !! ** Purpose :   Initialization of nutrient limitation parameters
       !!
-      !! ** Method  :   Read the natlim namelist and check the parameters
+      !! ** Method  :   Read the nampislim namelist and check the parameters
       !!      called at the first timestep (nittrc000)
       !!
-      !! ** input   :   Namelist natlim
+      !! ** input   :   Namelist nampislim
       !!
       !!----------------------------------------------------------------------
 
-      NAMELIST/natlim/ conc0, conc1, conc2, conc2m, conc3, conc3m,   &
+      NAMELIST/nampislim/ conc0, conc1, conc2, conc2m, conc3, conc3m,   &
          &             concnnh4, concdnh4, xksi1, xksi2, xkdoc, caco3r
 
       REWIND( numnat )                     ! read numnat
-      READ  ( numnat, natlim )
+      READ  ( numnat, nampislim )
 
       IF(lwp) THEN                         ! control print
          WRITE(numout,*) ' '
-         WRITE(numout,*) ' Namelist parameters for nutrient limitations, natlim'
+         WRITE(numout,*) ' Namelist parameters for nutrient limitations, nampislim'
          WRITE(numout,*) ' ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~'
          WRITE(numout,*) '    mean rainratio                            caco3r    =', caco3r
Index: trunk/NEMO/TOP_SRC/PISCES/p4zlys.F90
===================================================================
--- trunk/NEMO/TOP_SRC/PISCES/p4zlys.F90	(revision 1089)
+++ trunk/NEMO/TOP_SRC/PISCES/p4zlys.F90	(revision 1119)
@@ -19,5 +19,5 @@
    USE trc
    USE oce_trc         !
-   USE trp_trc
+   USE trc
    USE sms_pisces
    USE prtctl_trc
@@ -151,7 +151,7 @@
 
 # if defined key_trc_dia3d
-         trc3d(:,:,:,1) = hi(:,:,:)
-         trc3d(:,:,:,2) = zco3(:,:,:)
-         trc3d(:,:,:,3) = aksp(:,:,:) / calcon
+         trc3d(:,:,:,jp_pcs0_3d    ) = hi(:,:,:)
+         trc3d(:,:,:,jp_pcs0_3d + 1) = zco3(:,:,:)
+         trc3d(:,:,:,jp_pcs0_3d + 2) = aksp(:,:,:) / calcon
 # endif
       !
@@ -171,19 +171,19 @@
       !! ** Purpose :   Initialization of CaCO3 dissolution parameters
       !!
-      !! ** Method  :   Read the natcal namelist and check the parameters
+      !! ** Method  :   Read the nampiscal namelist and check the parameters
       !!      called at the first timestep (nittrc000)
       !!
-      !! ** input   :   Namelist natcal
+      !! ** input   :   Namelist nampiscal
       !!
       !!----------------------------------------------------------------------
 
-      NAMELIST/natcal/ kdca, nca
+      NAMELIST/nampiscal/ kdca, nca
 
       REWIND( numnat )                     ! read numnat
-      READ  ( numnat, natcal )
+      READ  ( numnat, nampiscal )
 
       IF(lwp) THEN                         ! control print
          WRITE(numout,*) ' '
-         WRITE(numout,*) ' Namelist parameters for CaCO3 dissolution, natcal'
+         WRITE(numout,*) ' Namelist parameters for CaCO3 dissolution, nampiscal'
          WRITE(numout,*) ' ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~'
          WRITE(numout,*) '    diss. rate constant calcite (per month)   kdca      =', kdca
Index: trunk/NEMO/TOP_SRC/PISCES/p4zmeso.F90
===================================================================
--- trunk/NEMO/TOP_SRC/PISCES/p4zmeso.F90	(revision 1089)
+++ trunk/NEMO/TOP_SRC/PISCES/p4zmeso.F90	(revision 1119)
@@ -16,5 +16,5 @@
    USE trc
    USE oce_trc         !
-   USE trp_trc         ! 
+   USE trc         ! 
    USE sms_pisces      ! 
    USE prtctl_trc
@@ -299,21 +299,21 @@
       !! ** Purpose :   Initialization of mesozooplankton parameters
       !!
-      !! ** Method  :   Read the natmes namelist and check the parameters
+      !! ** Method  :   Read the nampismes namelist and check the parameters
       !!      called at the first timestep (nittrc000)
       !!
-      !! ** input   :   Namelist natmes
+      !! ** input   :   Namelist nampismes
       !!
       !!----------------------------------------------------------------------
 
-      NAMELIST/natmes/ grazrat2,resrat2,mzrat2,xprefc, xprefp, &
+      NAMELIST/nampismes/ grazrat2,resrat2,mzrat2,xprefc, xprefp, &
          &             xprefz, xprefpoc, xkgraz2, epsher2, sigma2, unass2, grazflux
 
       REWIND( numnat )                     ! read numnat
-      READ  ( numnat, natmes )
+      READ  ( numnat, nampismes )
 
 
       IF(lwp) THEN                         ! control print
          WRITE(numout,*) ' ' 
-         WRITE(numout,*) ' Namelist parameters for mesozooplankton, natmes'
+         WRITE(numout,*) ' Namelist parameters for mesozooplankton, nampismes'
          WRITE(numout,*) ' ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~'
          WRITE(numout,*) '    zoo preference for phyto                  xprefc    =', xprefc
Index: trunk/NEMO/TOP_SRC/PISCES/p4zmicro.F90
===================================================================
--- trunk/NEMO/TOP_SRC/PISCES/p4zmicro.F90	(revision 1089)
+++ trunk/NEMO/TOP_SRC/PISCES/p4zmicro.F90	(revision 1119)
@@ -16,5 +16,5 @@
    USE trc
    USE oce_trc         !
-   USE trp_trc         ! 
+   USE trc         ! 
    USE sms_pisces      ! 
    USE prtctl_trc
@@ -229,20 +229,20 @@
       !! ** Purpose :   Initialization of microzooplankton parameters
       !!
-      !! ** Method  :   Read the natzoo namelist and check the parameters
+      !! ** Method  :   Read the nampiszoo namelist and check the parameters
       !!      called at the first timestep (nittrc000)
       !!
-      !! ** input   :   Namelist natzoo
+      !! ** input   :   Namelist nampiszoo
       !!
       !!----------------------------------------------------------------------
 
-      NAMELIST/natzoo/ grazrat,resrat,mzrat,xpref2c, xpref2p, &
+      NAMELIST/nampiszoo/ grazrat,resrat,mzrat,xpref2c, xpref2p, &
          &             xpref2d, xkgraz, epsher, sigma1, unass
 
       REWIND( numnat )                     ! read numnat
-      READ  ( numnat, natzoo )
+      READ  ( numnat, nampiszoo )
 
       IF(lwp) THEN                         ! control print
          WRITE(numout,*) ' '
-         WRITE(numout,*) ' Namelist parameters for microzooplankton, natzoo'
+         WRITE(numout,*) ' Namelist parameters for microzooplankton, nampiszoo'
          WRITE(numout,*) ' ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~'
          WRITE(numout,*) '    zoo preference for POC                    xpref2c    =', xpref2c
Index: trunk/NEMO/TOP_SRC/PISCES/p4zmort.F90
===================================================================
--- trunk/NEMO/TOP_SRC/PISCES/p4zmort.F90	(revision 1089)
+++ trunk/NEMO/TOP_SRC/PISCES/p4zmort.F90	(revision 1119)
@@ -16,5 +16,5 @@
    USE trc
    USE oce_trc         !
-   USE trp_trc         ! 
+   USE trc         ! 
    USE sms_pisces      ! 
    USE p4zsink
@@ -241,19 +241,19 @@
       !! ** Purpose :   Initialization of phytoplankton parameters
       !!
-      !! ** Method  :   Read the natmort namelist and check the parameters
+      !! ** Method  :   Read the nampismort namelist and check the parameters
       !!      called at the first timestep (nittrc000)
       !!
-      !! ** input   :   Namelist natmort
+      !! ** input   :   Namelist nampismort
       !!
       !!----------------------------------------------------------------------
 
-      NAMELIST/natmort/ wchl, wchld, mprat, mprat2, mpratm
+      NAMELIST/nampismort/ wchl, wchld, mprat, mprat2, mpratm
 
       REWIND( numnat )                     ! read numnat
-      READ  ( numnat, natmort )
+      READ  ( numnat, nampismort )
 
       IF(lwp) THEN                         ! control print
          WRITE(numout,*) ' '
-         WRITE(numout,*) ' Namelist parameters for phytoplankton mortality, natmort'
+         WRITE(numout,*) ' Namelist parameters for phytoplankton mortality, nampismort'
          WRITE(numout,*) ' ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~'
          WRITE(numout,*) '    quadratic mortality of phytoplankton      wchl      =', wchl
Index: trunk/NEMO/TOP_SRC/PISCES/p4zopt.F90
===================================================================
--- trunk/NEMO/TOP_SRC/PISCES/p4zopt.F90	(revision 1089)
+++ trunk/NEMO/TOP_SRC/PISCES/p4zopt.F90	(revision 1119)
@@ -15,5 +15,5 @@
    USE trc
    USE oce_trc         !
-   USE trp_trc
+   USE trc
    USE sms_pisces
 
@@ -255,5 +255,5 @@
 
 # if defined key_trc_diaadd
-      trc2d(:,:,11) = heup(:,:)
+      trc2d(:,:,jp_pcs0_2d + 10) = heup(:,:)
 # endif
       !
Index: trunk/NEMO/TOP_SRC/PISCES/p4zprod.F90
===================================================================
--- trunk/NEMO/TOP_SRC/PISCES/p4zprod.F90	(revision 1089)
+++ trunk/NEMO/TOP_SRC/PISCES/p4zprod.F90	(revision 1119)
@@ -15,5 +15,4 @@
    USE trc
    USE oce_trc         !
-   USE trp_trc         ! 
    USE sms_pisces      ! 
    USE prtctl_trc
@@ -376,13 +375,13 @@
 !   Supplementary diagnostics
 !   -------------------------
-      trc3d(:,:,:,4)  = etot(:,:,:)
-      trc3d(:,:,:,5)  = zprorca(:,:,:)  * zrfact2
-      trc3d(:,:,:,6)  = zprorcad(:,:,:) * zrfact2
-      trc3d(:,:,:,7)  = zpronew(:,:,:)  * zrfact2
-      trc3d(:,:,:,8)  = zpronewd(:,:,:) * zrfact2
-      trc3d(:,:,:,9)  = zprorcad(:,:,:) * zysopt(:,:,:) * zrfact2
-      trc3d(:,:,:,10) = zprofed(:,:,:) * zrfact2
+      trc3d(:,:,:,jp_pcs0_3d + 3)  = etot(:,:,:)
+      trc3d(:,:,:,jp_pcs0_3d + 4)  = zprorca(:,:,:)  * zrfact2
+      trc3d(:,:,:,jp_pcs0_3d + 5)  = zprorcad(:,:,:) * zrfact2
+      trc3d(:,:,:,jp_pcs0_3d + 6)  = zpronew(:,:,:)  * zrfact2
+      trc3d(:,:,:,jp_pcs0_3d + 7)  = zpronewd(:,:,:) * zrfact2
+      trc3d(:,:,:,jp_pcs0_3d + 8)  = zprorcad(:,:,:) * zysopt(:,:,:) * zrfact2
+      trc3d(:,:,:,jp_pcs0_3d + 9) = zprofed(:,:,:) * zrfact2
 #if ! defined key_kriest
-      trc3d(:,:,:,11) = zprofen(:,:,:) * zrfact2
+      trc3d(:,:,:,jp_pcs0_3d + 10) = zprofen(:,:,:) * zrfact2
 #endif
 #endif
@@ -403,20 +402,20 @@
       !! ** Purpose :   Initialization of phytoplankton production parameters
       !!
-      !! ** Method  :   Read the natprod namelist and check the parameters
+      !! ** Method  :   Read the nampisprod namelist and check the parameters
       !!      called at the first timestep (nittrc000)
       !!
-      !! ** input   :   Namelist natprod
+      !! ** input   :   Namelist nampisprod
       !!
       !!----------------------------------------------------------------------
 
-      NAMELIST/natprod/ pislope, pislope2, excret, excret2, chlcnm, chlcdm,   &
+      NAMELIST/nampisprod/ pislope, pislope2, excret, excret2, chlcnm, chlcdm,   &
          &              fecnm, fecdm, grosip
 
       REWIND( numnat )                     ! read numnat
-      READ  ( numnat, natprod )
+      READ  ( numnat, nampisprod )
 
       IF(lwp) THEN                         ! control print
          WRITE(numout,*) ' '
-         WRITE(numout,*) ' Namelist parameters for phytoplankton growth, natprod'
+         WRITE(numout,*) ' Namelist parameters for phytoplankton growth, nampisprod'
          WRITE(numout,*) ' ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~'
          WRITE(numout,*) '    mean Si/C ratio                           grosip    =', grosip
Index: trunk/NEMO/TOP_SRC/PISCES/p4zrem.F90
===================================================================
--- trunk/NEMO/TOP_SRC/PISCES/p4zrem.F90	(revision 1089)
+++ trunk/NEMO/TOP_SRC/PISCES/p4zrem.F90	(revision 1119)
@@ -16,5 +16,4 @@
    USE trc
    USE oce_trc         !
-   USE trp_trc         ! 
    USE sms_pisces      ! 
    USE prtctl_trc
@@ -409,19 +408,19 @@
       !! ** Purpose :   Initialization of remineralization parameters
       !!
-      !! ** Method  :   Read the natrem namelist and check the parameters
+      !! ** Method  :   Read the nampisrem namelist and check the parameters
       !!      called at the first timestep (nittrc000)
       !!
-      !! ** input   :   Namelist natrem
+      !! ** input   :   Namelist nampisrem
       !!
       !!----------------------------------------------------------------------
 
-      NAMELIST/natrem/ xremik, xremip, nitrif, xsirem, xlam1, oxymin
+      NAMELIST/nampisrem/ xremik, xremip, nitrif, xsirem, xlam1, oxymin
 
       REWIND( numnat )                     ! read numnat
-      READ  ( numnat, natrem )
+      READ  ( numnat, nampisrem )
 
       IF(lwp) THEN                         ! control print
          WRITE(numout,*) ' '
-         WRITE(numout,*) ' Namelist parameters for remineralization, natrem'
+         WRITE(numout,*) ' Namelist parameters for remineralization, nampisrem'
          WRITE(numout,*) ' ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~'
          WRITE(numout,*) '    remineralisation rate of POC              xremip    =', xremip
Index: trunk/NEMO/TOP_SRC/PISCES/p4zsed.F90
===================================================================
--- trunk/NEMO/TOP_SRC/PISCES/p4zsed.F90	(revision 1089)
+++ trunk/NEMO/TOP_SRC/PISCES/p4zsed.F90	(revision 1119)
@@ -17,5 +17,4 @@
    USE trc
    USE oce_trc         !
-   USE trp_trc
    USE sms_pisces
    USE lib_mpp
@@ -316,6 +315,6 @@
       DO jj = 1,jpj
          DO ji = 1,jpi
-            trc2d(ji,jj,13) = znitrpot(ji,jj,1) * 1.e-7 * fse3t(ji,jj,1) * 1.e+3 / rfact2
-            trc2d(ji,jj,12) = zirondep(ji,jj,1) * 1.e+3 * rfact2r * fse3t(ji,jj,1)
+            trc2d(ji,jj,jp_pcs0_2d + 11) = zirondep(ji,jj,1) * 1.e+3 * rfact2r * fse3t(ji,jj,1)
+            trc2d(ji,jj,jp_pcs0_2d + 12) = znitrpot(ji,jj,1) * 1.e-7 * fse3t(ji,jj,1) * 1.e+3 / rfact2
          END DO
       END DO
@@ -454,13 +453,13 @@
       REAL(wp), DIMENSION(jpi,jpj,12)    ::   zdustmo
 
-      NAMELIST/natsms/ bdustfer, briver, bndepo, bsedinput, sedfeinput, dustsolub
+      NAMELIST/nampissed/ bdustfer, briver, bndepo, bsedinput, sedfeinput, dustsolub
 
 
       REWIND( numnat )                     ! read numnat
-      READ  ( numnat, natsms )
+      READ  ( numnat, nampissed )
 
       IF(lwp) THEN
          WRITE(numout,*) ' '
-         WRITE(numout,*) ' Namelist : natsms '
+         WRITE(numout,*) ' Namelist : nampissed '
          WRITE(numout,*) ' ~~~~~~~~~~~~~~~~~ '
          WRITE(numout,*) '    Dust input from the atmosphere           bdustfer  = ', bdustfer
Index: trunk/NEMO/TOP_SRC/PISCES/p4zsink.F90
===================================================================
--- trunk/NEMO/TOP_SRC/PISCES/p4zsink.F90	(revision 1089)
+++ trunk/NEMO/TOP_SRC/PISCES/p4zsink.F90	(revision 1119)
@@ -12,5 +12,4 @@
    USE trc
    USE oce_trc         !
-   USE trp_trc
    USE sms_pisces
    USE prtctl_trc
@@ -279,16 +278,16 @@
 #    if defined key_trc_dia3d
       zrfact2 = 1.e3 * rfact2r
-      trc2d(:,:, 5)   = sinking (:,:,iksed+1) * zrfact2
-      trc2d(:,:, 6)   = sinking2(:,:,iksed+1) * zrfact2
-      trc2d(:,:, 7)   = sinkfer (:,:,iksed+1) * zrfact2
-      trc2d(:,:, 9)   = sinksil (:,:,iksed+1) * zrfact2
-      trc2d(:,:,10)   = sinkcal (:,:,iksed+1) * zrfact2
-      trc3d(:,:,:,12) = sinking (:,:,:)       * zrfact2
-      trc3d(:,:,:,13) = sinking2(:,:,:)       * zrfact2
-      trc3d(:,:,:,14) = sinksil (:,:,:)       * zrfact2
-      trc3d(:,:,:,15) = sinkcal (:,:,:)       * zrfact2
-      trc3d(:,:,:,16) = znum3d  (:,:,:)
-      trc3d(:,:,:,17) = wsbio3  (:,:,:)
-      trc3d(:,:,:,18) = wsbio4  (:,:,:)
+      trc2d(:,:,  jp_pcs0_2d + 4)   = sinking (:,:,iksed+1) * zrfact2
+      trc2d(:,:,  jp_pcs0_2d + 5)   = sinking2(:,:,iksed+1) * zrfact2
+      trc2d(:,:,  jp_pcs0_2d + 6)   = sinkfer (:,:,iksed+1) * zrfact2
+      trc2d(:,:,  jp_pcs0_2d + 8)   = sinksil (:,:,iksed+1) * zrfact2
+      trc2d(:,:,  jp_pcs0_2d + 9)   = sinkcal (:,:,iksed+1) * zrfact2
+      trc3d(:,:,:,jp_pcs0_3d + 11) = sinking (:,:,:)       * zrfact2
+      trc3d(:,:,:,jp_pcs0_3d + 12) = sinking2(:,:,:)       * zrfact2
+      trc3d(:,:,:,jp_pcs0_3d + 13) = sinksil (:,:,:)       * zrfact2
+      trc3d(:,:,:,jp_pcs0_3d + 14) = sinkcal (:,:,:)       * zrfact2
+      trc3d(:,:,:,jp_pcs0_3d + 15) = znum3d  (:,:,:)
+      trc3d(:,:,:,jp_pcs0_3d + 16) = wsbio3  (:,:,:)
+      trc3d(:,:,:,jp_pcs0_3d + 17) = wsbio4  (:,:,:)
 #    endif
       !
@@ -308,8 +307,8 @@
       !!                Kriest parameterization only
       !!
-      !! ** Method  :   Read the natkriest namelist and check the parameters
+      !! ** Method  :   Read the nampiskrs namelist and check the parameters
       !!      called at the first timestep (nittrc000)
       !!
-      !! ** input   :   Namelist natkriest
+      !! ** input   :   Namelist nampiskrs
       !!
       !!----------------------------------------------------------------------
@@ -319,16 +318,14 @@
       REAL(wp) ::   zmin, zmax, zl, zr, xacc
 
-      NAMELIST/natkrsize/ xkr_sfact, xkr_stick ,  &
+      NAMELIST/nampiskrs/ xkr_sfact, xkr_stick ,  &
          &                xkr_nnano, xkr_ndiat, xkr_nmeso, xkr_naggr
 
       !!----------------------------------------------------------------------
-      !                               ! natkriest : kriest parameters
-      !                               ! -----------------------------
-      REWIND( numnat )                     ! read natkriest
-      READ  ( numnat, natkrsize )
+      REWIND( numnat )                     ! read nampiskrs
+      READ  ( numnat, nampiskrs )
 
       IF(lwp) THEN
          WRITE(numout,*)
-         WRITE(numout,*) ' Namelist : natkrsize'
+         WRITE(numout,*) ' Namelist : nampiskrs'
          WRITE(numout,*) '    Sinking factor                           xkr_sfact    = ', xkr_sfact
          WRITE(numout,*) '    Stickiness                               xkr_stick    = ', xkr_stick
@@ -594,12 +591,12 @@
       END DO
 
-# if defined key_trc_dia3d
+# if defined key_trc_diaadd
       zrfact2 = 1.e3 * rfact2r
-      trc2d(:,:, 5) = sinking (:,:,iksed+1) * zrfact2
-      trc2d(:,:, 6) = sinking2(:,:,iksed+1) * zrfact2
-      trc2d(:,:, 7) = sinkfer (:,:,iksed+1) * zrfact2
-      trc2d(:,:, 8) = sinkfer2(:,:,iksed+1) * zrfact2
-      trc2d(:,:, 9) = sinksil (:,:,iksed+1) * zrfact2
-      trc2d(:,:,10) = sinkcal (:,:,iksed+1) * zrfact2
+      trc2d(:,:, jp_pcs0_2d + 4) = sinking (:,:,iksed+1) * zrfact2
+      trc2d(:,:, jp_pcs0_2d + 5) = sinking2(:,:,iksed+1) * zrfact2
+      trc2d(:,:, jp_pcs0_2d + 6) = sinkfer (:,:,iksed+1) * zrfact2
+      trc2d(:,:, jp_pcs0_2d + 7) = sinkfer2(:,:,iksed+1) * zrfact2
+      trc2d(:,:, jp_pcs0_2d + 8) = sinksil (:,:,iksed+1) * zrfact2
+      trc2d(:,:, jp_pcs0_2d + 9) = sinkcal (:,:,iksed+1) * zrfact2
 # endif
       !
Index: trunk/NEMO/TOP_SRC/PISCES/par_pisces.F90
===================================================================
--- trunk/NEMO/TOP_SRC/PISCES/par_pisces.F90	(revision 1089)
+++ trunk/NEMO/TOP_SRC/PISCES/par_pisces.F90	(revision 1119)
@@ -10,10 +10,16 @@
    !! Software governed by the CeCILL licence (modipsl/doc/NEMO_CeCILL.txt)
    !!----------------------------------------------------------------------
-   USE par_lobster, ONLY : jp_lobster   !: number of tracers in LOBSTER
+   USE par_lobster, ONLY : jp_lobster      !: number of tracers in LOBSTER
+   USE par_lobster, ONLY : jp_lobster_2d   !: number of 2D diag in LOBSTER
+   USE par_lobster, ONLY : jp_lobster_3d   !: number of 3D diag in LOBSTER
+   USE par_lobster, ONLY : jp_lobster_trd  !: number of biological diag in LOBSTER
 
    IMPLICIT NONE
    PUBLIC
 
-   INTEGER, PUBLIC, PARAMETER ::   jp_l  = jp_lobster      !: cumulative number of already defined TRC
+   INTEGER, PUBLIC, PARAMETER ::   jp_l      = jp_lobster      !: cumulative number of already defined TRC
+   INTEGER, PUBLIC, PARAMETER ::   jp_l_2d   = jp_lobster_2d   !:
+   INTEGER, PUBLIC, PARAMETER ::   jp_l_3d   = jp_lobster_3d   !:
+   INTEGER, PUBLIC, PARAMETER ::   jp_l_trd  = jp_lobster_trd  !:
 
 #if defined key_pisces  &&  defined key_kriest
@@ -107,6 +113,13 @@
 
    ! Starting/ending PISCES do-loop indices (N.B. no PISCES : jpl_pcs < jpf_pcs the do-loop are never done)
-   INTEGER, PUBLIC, PARAMETER ::   jp_pcs0 = jp_l + 1           !: First index of CFC passive tracers
-   INTEGER, PUBLIC, PARAMETER ::   jp_pcs1 = jp_l + jp_pisces   !: Last  index of CFC passive tracers
+   INTEGER, PUBLIC, PARAMETER ::   jp_pcs0     = jp_l + 1                  !: First index of PISCES tracers
+   INTEGER, PUBLIC, PARAMETER ::   jp_pcs1     = jp_l + jp_pisces          !: Last  index of PISCES tracers
+   INTEGER, PUBLIC, PARAMETER ::   jp_pcs0_2d  = jp_l_2d + 1               !: First index of 2D diag
+   INTEGER, PUBLIC, PARAMETER ::   jp_pcs1_2d  = jp_l_2d + jp_pisces_2d    !: Last  index of 2D diag
+   INTEGER, PUBLIC, PARAMETER ::   jp_pcs0_3d  = jp_l_3d + 1               !: First index of 3D diag
+   INTEGER, PUBLIC, PARAMETER ::   jp_pcs1_3d  = jp_l_3d + jp_pisces_3d    !: Last  index of 3d diag
+   INTEGER, PUBLIC, PARAMETER ::   jp_pcs0_trd = jp_l_trd + 1              !: First index of bio diag
+   INTEGER, PUBLIC, PARAMETER ::   jp_pcs1_trd = jp_l_trd + jp_pisces_trd  !: Last  index of bio diag
+
 
    !!======================================================================
Index: trunk/NEMO/TOP_SRC/PISCES/trcini_pisces.F90
===================================================================
--- trunk/NEMO/TOP_SRC/PISCES/trcini_pisces.F90	(revision 1089)
+++ trunk/NEMO/TOP_SRC/PISCES/trcini_pisces.F90	(revision 1119)
@@ -20,5 +20,4 @@
    USE trc
    USE oce_trc         ! ocean variables
-   USE trp_trc         !
    USE p4zche 
    USE lib_mpp
Index: trunk/NEMO/TOP_SRC/PISCES/trclsm_pisces.F90
===================================================================
--- trunk/NEMO/TOP_SRC/PISCES/trclsm_pisces.F90	(revision 1089)
+++ trunk/NEMO/TOP_SRC/PISCES/trclsm_pisces.F90	(revision 1119)
@@ -45,11 +45,27 @@
       !!                       natkriest ("key_kriest")
       !!----------------------------------------------------------------------
-      CHARACTER (len=32) ::   clname
+      CHARACTER (len=32) ::  clname
+      INTEGER            ::  jn
       !!
-      NAMELIST/natbio/ part, nrdttrc, wsbio, xkmort, ferat3, wsbio2
+#if defined key_trc_diaadd
+      ! definition of additional diagnostic as a structure
+      TYPE DIAG
+         CHARACTER(len = 20)  :: snamedia   !: short name
+         CHARACTER(len = 80 ) :: lnamedia   !: long name
+         CHARACTER(len = 20 ) :: unitdia    !: unit
+      END TYPE DIAG
 
+      TYPE(DIAG) , DIMENSION(jp_pisces_2d) :: pisdia2d
+      TYPE(DIAG) , DIMENSION(jp_pisces_3d) :: pisdia3d
+#endif
+
+      NAMELIST/nampisbio/ part, nrdttrc, wsbio, xkmort, ferat3, wsbio2
 #if defined key_kriest
-      NAMELIST/natkrpar/xkr_eta, xkr_zeta, xkr_mass_min, xkr_mass_max
+      NAMELIST/nampiskrp/xkr_eta, xkr_zeta, xkr_mass_min, xkr_mass_max
 #endif
+#if defined key_trc_diaadd
+      NAMELIST/nampisdia/nwritedia, pisdia3d, pisdia2d     ! additional diagnostics
+#endif
+
       !!----------------------------------------------------------------------
 
@@ -62,14 +78,11 @@
       !                               ! ----------------------
       clname ='namelist_pisces'
-      CALL ctlopn( numnat, clname, 'OLD', 'FORMATTED', 'SEQUENTIAL',   &
-         &           1, numout, .FALSE., 1 )
+      CALL ctlopn( numnat, clname, 'OLD', 'FORMATTED', 'SEQUENTIAL', 1, numout, .FALSE., 1 )
 
-      !                               ! natbio : biological parameters
-      !                               ! ------------------------------
-      REWIND( numnat )                     ! read natbio
-      READ  ( numnat, natbio )
+      REWIND( numnat )                    
+      READ  ( numnat, nampisbio )
 
       IF(lwp) THEN                         ! control print
-         WRITE(numout,*) ' Namelist : natbio'
+         WRITE(numout,*) ' Namelist : nampisbio'
          WRITE(numout,*) '    part of calcite not dissolved in guts     part      =', part
          WRITE(numout,*) '    frequence pour la biologie                nrdttrc   =', nrdttrc
@@ -82,5 +95,5 @@
 #if defined key_kriest
 
-      !                               ! natkrpar : kriest parameters
+      !                               ! nampiskrp : kriest parameters
       !                               ! -----------------------------
       xkr_eta      = 0.62        
@@ -90,9 +103,9 @@
 
       REWIND( numnat )                     ! read natkriest
-      READ  ( numnat, natkrpar )
+      READ  ( numnat, nampiskrp )
 
       IF(lwp) THEN
          WRITE(numout,*)
-         WRITE(numout,*) ' Namelist : natkrpar'
+         WRITE(numout,*) ' Namelist : nampiskrp'
          WRITE(numout,*) '    Sinking  exponent                        xkr_eta      = ', xkr_eta
          WRITE(numout,*) '    N content exponent                       xkr_zeta     = ', xkr_zeta
@@ -108,4 +121,59 @@
 #endif
       !
+#if defined key_trc_diaadd
+
+      ! Namelist namlobdia
+      ! -------------------
+      nwritedia = 10                   ! default values
+
+      DO jn = jp_pcs0_2d, jp_pcs1_2d
+         WRITE(ctrc2d(jn),'("2D_",I1)') jn                      ! short name
+         WRITE(ctrc2l(jn),'("2D DIAGNOSTIC NUMBER ",I2)') jn    ! long name
+         ctrc2u(jn) = ' '                                       ! units
+      END DO
+      !                                 ! 3D output arrays
+      DO jn = jp_pcs0_3d, jp_pcs1_3d
+         WRITE(ctrc3d(jn),'("3D_",I1)') jn                      ! short name
+         WRITE(ctrc3l(jn),'("3D DIAGNOSTIC NUMBER ",I2)') jn    ! long name
+         ctrc3u(jn) = ' '                                       ! units
+      END DO
+
+      REWIND( numnat )               ! read natrtd
+      READ  ( numnat, nampisdia )
+
+      DO jn = jp_pcs0_2d, jp_pcs1_2d
+         ctrc2d(jn) = pisdia2d(jn)%snamedia
+         ctrc2l(jn) = pisdia2d(jn)%lnamedia
+         ctrc2u(jn) = pisdia2d(jn)%unitdia
+      END DO
+
+      DO jn = jp_pcs0_3d, jp_pcs1_3d
+         ctrc3d(jn) = pisdia3d(jn)%snamedia
+         ctrc3l(jn) = pisdia3d(jn)%lnamedia
+         ctrc3u(jn) = pisdia3d(jn)%unitdia
+      END DO
+
+      IF(lwp) THEN                   ! control print
+         WRITE(numout,*)
+         WRITE(numout,*) ' Namelist : natadd'
+         WRITE(numout,*) '    frequency of outputs for additional arrays nwritedia = ', nwritedia
+         DO jn = jp_pcs0_3d, jp_pcs1_3d
+            WRITE(numout,*) '   3d output field No : ',jn
+            WRITE(numout,*) '   short name         : ', TRIM(ctrc3d(jn))
+            WRITE(numout,*) '   long name          : ', TRIM(ctrc3l(jn))
+            WRITE(numout,*) '   unit               : ', TRIM(ctrc3u(jn))
+            WRITE(numout,*) ' '
+         END DO
+
+         DO jn = jp_pcs0_2d, jp_pcs1_2d
+            WRITE(numout,*) '   2d output field No : ',jn
+            WRITE(numout,*) '   short name         : ', TRIM(ctrc2d(jn))
+            WRITE(numout,*) '   long name          : ', TRIM(ctrc2l(jn))
+            WRITE(numout,*) '   unit               : ', TRIM(ctrc2u(jn))
+            WRITE(numout,*) ' '
+         END DO
+      ENDIF
+#endif
+
    END SUBROUTINE trc_lsm_pisces
 
Index: trunk/NEMO/TOP_SRC/PISCES/trcsms_pisces.F90
===================================================================
--- trunk/NEMO/TOP_SRC/PISCES/trcsms_pisces.F90	(revision 1089)
+++ trunk/NEMO/TOP_SRC/PISCES/trcsms_pisces.F90	(revision 1119)
@@ -14,5 +14,5 @@
    !!----------------------------------------------------------------------
    USE oce_trc         !
-   USE trp_trc
+   USE trc
    USE sms_pisces
    USE lbclnk
