Index: branches/2012/dev_MERGE_2012/NEMOGCM/NEMO/TOP_SRC/PISCES/trcnam_pisces.F90
===================================================================
--- branches/2012/dev_MERGE_2012/NEMOGCM/NEMO/TOP_SRC/PISCES/trcnam_pisces.F90	(revision 3677)
+++ branches/2012/dev_MERGE_2012/NEMOGCM/NEMO/TOP_SRC/PISCES/trcnam_pisces.F90	(revision 3680)
@@ -1,5 +1,5 @@
 MODULE trcnam_pisces
    !!======================================================================
-   !!                      ***  MODULE trcnam_lobster  ***
+   !!                      ***  MODULE trcnam_pisces  ***
    !! TOP :   initialisation of some run parameters for PISCES bio-model
    !!======================================================================
@@ -9,5 +9,5 @@
    !!             2.0  !  2007-12  (C. Ethe, G. Madec) from trcnam.pisces.h90
    !!----------------------------------------------------------------------
-#if defined key_pisces
+#if defined key_pisces || defined key_pisces_reduced
    !!----------------------------------------------------------------------
    !!   'key_pisces'   :                                   PISCES bio-model
@@ -19,4 +19,5 @@
    USE trc             ! TOP variables
    USE sms_pisces      ! sms trends
+   USE trdmod_trc_oce
    USE iom             ! I/O manager
 
@@ -48,64 +49,26 @@
       !!
       INTEGER :: jl, jn
-      TYPE(DIAG), DIMENSION(jp_pisces_2d) :: pisdia2d
-      TYPE(DIAG), DIMENSION(jp_pisces_3d) :: pisdia3d
+      TYPE(DIAG), DIMENSION(jp_pisces_2d)  :: pisdia2d
+      TYPE(DIAG), DIMENSION(jp_pisces_3d)  :: pisdia3d
+      TYPE(DIAG), DIMENSION(jp_pisces_trd) :: pisdiabio
+      CHARACTER(LEN=20)   ::   clname
       !!
-      NAMELIST/nampisbio/ nrdttrc, wsbio, xkmort, ferat3, wsbio2
-#if defined key_kriest
-      NAMELIST/nampiskrp/ xkr_eta, xkr_zeta, xkr_mass_min, xkr_mass_max
+      NAMELIST/nampisdia/ pisdia3d, pisdia2d     ! additional diagnostics
+#if defined key_pisces_reduced
+      NAMELIST/nampisdbi/ pisdiabio
 #endif
-      NAMELIST/nampisdia/ pisdia3d, pisdia2d     ! additional diagnostics
-      NAMELIST/nampisdmp/ ln_pisdmp, nn_pisdmp, ln_pisclo
 
       !!----------------------------------------------------------------------
 
       IF(lwp) WRITE(numout,*)
-      IF(lwp) WRITE(numout,*) ' trc_nam_pisces : read PISCES namelists'
+      clname = 'namelist_pisces'
+#if defined key_pisces
+      IF(lwp) WRITE(numout,*) ' trc_nam_pisces : read PISCES namelist'
+#else
+      IF(lwp) WRITE(numout,*) ' trc_nam_pisces : read LOBSTER namelist'
+#endif
       IF(lwp) WRITE(numout,*) ' ~~~~~~~~~~~~~~'
+      CALL ctl_opn( numnatp, TRIM( clname ), 'OLD', 'FORMATTED', 'SEQUENTIAL', -1, numout, .FALSE. )
 
-
-      !                               ! Open the namelist file
-      !                               ! ----------------------
-      CALL ctl_opn( numnatp, 'namelist_pisces', 'OLD', 'FORMATTED', 'SEQUENTIAL', -1, numout, .FALSE. )
-
-      REWIND( numnatp )                    
-      READ  ( numnatp, nampisbio )
-
-      IF(lwp) THEN                         ! control print
-         WRITE(numout,*) ' Namelist : nampisbio'
-         WRITE(numout,*) '    frequence pour la biologie                nrdttrc   =', nrdttrc
-         WRITE(numout,*) '    POC sinking speed                         wsbio     =', wsbio
-         WRITE(numout,*) '    half saturation constant for mortality    xkmort    =', xkmort
-         WRITE(numout,*) '    Fe/C in zooplankton                       ferat3    =', ferat3
-         WRITE(numout,*) '    Big particles sinking speed               wsbio2    =', wsbio2
-      ENDIF
-
-#if defined key_kriest
-
-      !                               ! nampiskrp : kriest parameters
-      !                               ! -----------------------------
-      xkr_eta      = 0.62        
-      xkr_zeta     = 1.62        
-      xkr_mass_min = 0.0002     
-      xkr_mass_max = 1.      
-
-      REWIND( numnatp )                     ! read natkriest
-      READ  ( numnatp, nampiskrp )
-
-      IF(lwp) THEN
-         WRITE(numout,*)
-         WRITE(numout,*) ' Namelist : nampiskrp'
-         WRITE(numout,*) '    Sinking  exponent                        xkr_eta      = ', xkr_eta
-         WRITE(numout,*) '    N content exponent                       xkr_zeta     = ', xkr_zeta
-         WRITE(numout,*) '    Minimum mass for Aggregates              xkr_mass_min = ', xkr_mass_min
-         WRITE(numout,*) '    Maximum mass for Aggregates              xkr_mass_max = ', xkr_mass_max
-         WRITE(numout,*)
-     ENDIF
-
-
-     ! Computation of some variables
-     xkr_massp = 5.7E-6 * 7.6 * xkr_mass_min**xkr_zeta
-
-#endif
       !
       IF( .NOT.lk_iomput .AND. ln_diatrc ) THEN
@@ -162,15 +125,43 @@
       ENDIF
 
-      REWIND( numnatp )
-      READ  ( numnatp, nampisdmp )
+#if defined key_pisces_reduced
 
-      IF(lwp) THEN                         ! control print
-         WRITE(numout,*)
-         WRITE(numout,*) ' Namelist : nampisdmp'
-         WRITE(numout,*) '    Relaxation of tracer to glodap mean value             ln_pisdmp      =', ln_pisdmp
-         WRITE(numout,*) '    Frequency of Relaxation                               nn_pisdmp      =', nn_pisdmp
-         WRITE(numout,*) '    Restoring of tracer to initial value  on closed seas  ln_pisclo      =', ln_pisclo
-         WRITE(numout,*) ' '
-      ENDIF
+      IF( ( .NOT.lk_iomput .AND. ln_diabio ) .OR. lk_trdmld_trc ) THEN
+         !
+         ! Namelist nampisdbi
+         ! -------------------
+         DO jl = 1, jp_pisces_trd
+            IF(     jl <  10 ) THEN   ;   WRITE (pisdiabio(jl)%sname,'("BIO_",I1)') jl      ! short name
+            ELSEIF (jl < 100 ) THEN   ;   WRITE (pisdiabio(jl)%sname,'("BIO_",I2)') jl
+            ELSE                      ;   WRITE (pisdiabio(jl)%sname,'("BIO_",I3)') jl
+            ENDIF
+            WRITE(pisdiabio(jl)%lname,'("BIOLOGICAL TREND NUMBER ",I2)') jl                 ! long name
+            pisdiabio(jl)%units = 'mmoleN/m3/s '                                            ! units
+         END DO
+
+         REWIND( numnatp )
+         READ  ( numnatp, nampisdbi )
+
+         DO jl = 1, jp_pisces_trd
+            jn = jp_pcs0_trd + jl - 1
+            ctrbio(jl) = pisdiabio(jl)%sname
+            ctrbil(jl) = pisdiabio(jl)%lname
+            ctrbiu(jl) = pisdiabio(jl)%units
+         END DO
+
+         IF(lwp) THEN                   ! control print
+            WRITE(numout,*)
+            WRITE(numout,*) ' Namelist : nampisdbi'
+            DO jl = 1, jp_pisces_trd
+               jn = jp_pcs0_trd + jl - 1
+               WRITE(numout,*) '  biological trend No : ', jn, '    short name : ', ctrbio(jn), &
+                 &             '  long name  : ', ctrbio(jn), '   unit : ', ctrbio(jn)
+            END DO
+            WRITE(numout,*) ' '
+         END IF
+         !
+      END IF
+
+#endif
 
    END SUBROUTINE trc_nam_pisces
