Index: NEMO/branches/2019/dev_r11943_MERGE_2019/src/TOP/PISCES/P4Z/p4zprod.F90
===================================================================
--- NEMO/branches/2019/dev_r11943_MERGE_2019/src/TOP/PISCES/P4Z/p4zprod.F90	(revision 12275)
+++ NEMO/branches/2019/dev_r11943_MERGE_2019/src/TOP/PISCES/P4Z/p4zprod.F90	(revision 12281)
@@ -90,10 +90,10 @@
       !  Allocate temporary workspace
       !
-      zprorcan  (:,:,jpk) = 0._wp ; zprorcad  (:,:,jpk) = 0._wp ; zprofed (:,:,jpk) = 0._wp
-      zprofen   (:,:,jpk) = 0._wp ; zysopt    (:,:,jpk) = 0._wp
-      zpronewn  (:,:,jpk) = 0._wp ; zpronewd  (:,:,jpk) = 0._wp ; zprdia  (:,:,jpk) = 0._wp
-      zprbio    (:,:,jpk) = 0._wp ; zprdch    (:,:,jpk) = 0._wp ; zprnch  (:,:,jpk) = 0._wp 
-      zmxl_fac  (:,:,jpk) = 0._wp ; zmxl_chl  (:,:,jpk) = 0._wp 
-      zpligprod1(:,:,jpk) = 0._wp ; zpligprod2(:,:,jpk) = 0._wp 
+      zprorcan  (:,:,:) = 0._wp ; zprorcad  (:,:,:) = 0._wp ; zprofed (:,:,:) = 0._wp
+      zprofen   (:,:,:) = 0._wp ; zysopt    (:,:,:) = 0._wp
+      zpronewn  (:,:,:) = 0._wp ; zpronewd  (:,:,:) = 0._wp ; zprdia  (:,:,:) = 0._wp
+      zprbio    (:,:,:) = 0._wp ; zprdch    (:,:,:) = 0._wp ; zprnch  (:,:,:) = 0._wp 
+      zmxl_fac  (:,:,:) = 0._wp ; zmxl_chl  (:,:,:) = 0._wp 
+      zpligprod1(:,:,:) = 0._wp ; zpligprod2(:,:,:) = 0._wp 
 
       ! Computation of the optimal production
@@ -322,5 +322,5 @@
      !
      IF( ln_ligand ) THEN
-         zpligprod1(:,:,jpk) = 0._wp    ;    zpligprod2(:,:,jpk) = 0._wp
+         zpligprod1(:,:,:) = 0._wp    ;    zpligprod2(:,:,:) = 0._wp
          DO jk = 1, jpkm1
             DO jj = 1, jpj
@@ -353,6 +353,8 @@
        CALL iom_put( "PFeN"    , zprofen(:,:,:) * zfact * tmask(:,:,:)  ) ! biogenic iron production by nanophyto
        CALL iom_put( "PFeD"    , zprofed(:,:,:) * zfact * tmask(:,:,:)  ) ! biogenic iron production by  diatomes
-       CALL iom_put( "LPRODP"  , zpligprod1(:,:,:) * 1e9 * zfact * tmask(:,:,:) )
-       CALL iom_put( "LDETP"   , zpligprod2(:,:,:) * 1e9 * zfact * tmask(:,:,:) )
+       IF( ln_ligand ) THEN
+         CALL iom_put( "LPRODP"  , zpligprod1(:,:,:) * 1e9 * zfact * tmask(:,:,:) )
+         CALL iom_put( "LDETP"   , zpligprod2(:,:,:) * 1e9 * zfact * tmask(:,:,:) )
+       ENDIF
        CALL iom_put( "Mumax"   , zprmaxn(:,:,:) * tmask(:,:,:)  ) ! Maximum growth rate
        CALL iom_put( "MuN"     , zprbio(:,:,:) * xlimphy(:,:,:) * tmask(:,:,:) ) ! Realized growth rate for nanophyto
Index: NEMO/branches/2019/dev_r11943_MERGE_2019/src/TOP/PISCES/P4Z/p5zprod.F90
===================================================================
--- NEMO/branches/2019/dev_r11943_MERGE_2019/src/TOP/PISCES/P4Z/p5zprod.F90	(revision 12275)
+++ NEMO/branches/2019/dev_r11943_MERGE_2019/src/TOP/PISCES/P4Z/p5zprod.F90	(revision 12281)
@@ -99,14 +99,14 @@
       IF( ln_timing )   CALL timing_start('p5z_prod')
       !
-      zprorcan(:,:,jpk) = 0._wp ; zprorcap(:,:,jpk) = 0._wp ; zprorcad(:,:,jpk) = 0._wp
-      zcroissn(:,:,jpk) = 0._wp ; zcroissp(:,:,jpk) = 0._wp ; zcroissd(:,:,jpk) = 0._wp
-      zprofed (:,:,jpk) = 0._wp ; zprofep (:,:,jpk) = 0._wp ; zprofen (:,:,jpk) = 0._wp
-      zpronewn(:,:,jpk) = 0._wp ; zpronewp(:,:,jpk) = 0._wp ; zpronewd(:,:,jpk) = 0._wp
-      zproregn(:,:,jpk) = 0._wp ; zproregp(:,:,jpk) = 0._wp ; zproregd(:,:,jpk) = 0._wp 
-      zpropo4n(:,:,jpk) = 0._wp ; zpropo4p(:,:,jpk) = 0._wp ; zpropo4d(:,:,jpk) = 0._wp
-      zprdia  (:,:,jpk) = 0._wp ; zprpic  (:,:,jpk) = 0._wp ; zprbio  (:,:,jpk) = 0._wp
-      zprodopn(:,:,jpk) = 0._wp ; zprodopp(:,:,jpk) = 0._wp ; zprodopd(:,:,jpk) = 0._wp
-      zysopt  (:,:,jpk) = 0._wp 
-      zrespn  (:,:,jpk) = 0._wp ; zrespp  (:,:,jpk) = 0._wp ; zrespd  (:,:,jpk) = 0._wp 
+      zprorcan(:,:,:) = 0._wp ; zprorcap(:,:,:) = 0._wp ; zprorcad(:,:,:) = 0._wp
+      zcroissn(:,:,:) = 0._wp ; zcroissp(:,:,:) = 0._wp ; zcroissd(:,:,:) = 0._wp
+      zprofed (:,:,:) = 0._wp ; zprofep (:,:,:) = 0._wp ; zprofen (:,:,:) = 0._wp
+      zpronewn(:,:,:) = 0._wp ; zpronewp(:,:,:) = 0._wp ; zpronewd(:,:,:) = 0._wp
+      zproregn(:,:,:) = 0._wp ; zproregp(:,:,:) = 0._wp ; zproregd(:,:,:) = 0._wp 
+      zpropo4n(:,:,:) = 0._wp ; zpropo4p(:,:,:) = 0._wp ; zpropo4d(:,:,:) = 0._wp
+      zprdia  (:,:,:) = 0._wp ; zprpic  (:,:,:) = 0._wp ; zprbio  (:,:,:) = 0._wp
+      zprodopn(:,:,:) = 0._wp ; zprodopp(:,:,:) = 0._wp ; zprodopd(:,:,:) = 0._wp
+      zysopt  (:,:,:) = 0._wp 
+      zrespn  (:,:,:) = 0._wp ; zrespp  (:,:,:) = 0._wp ; zrespd  (:,:,:) = 0._wp 
 
       ! Computation of the optimal production
@@ -444,5 +444,5 @@
      !
      IF( ln_ligand ) THEN
-         zpligprod1(:,:,jpk) = 0._wp    ;    zpligprod2(:,:,jpk) = 0._wp             
+         zpligprod1(:,:,:) = 0._wp    ;    zpligprod2(:,:,:) = 0._wp             
          DO jk = 1, jpkm1
             DO jj = 1, jpj
@@ -478,6 +478,8 @@
        CALL iom_put( "PFeN"    , zprofen(:,:,:) * zfact * tmask(:,:,:)  ) ! biogenic iron production by nanophyto
        CALL iom_put( "PFeD"    , zprofed(:,:,:) * zfact * tmask(:,:,:)  ) ! biogenic iron production by  diatomes
-       CALL iom_put( "LPRODP"  , zpligprod1(:,:,:) * 1e9 * zfact * tmask(:,:,:) )
-       CALL iom_put( "LDETP"   , zpligprod2(:,:,:) * 1e9 * zfact * tmask(:,:,:) )
+       IF( ln_ligand ) THEN
+         CALL iom_put( "LPRODP"  , zpligprod1(:,:,:) * 1e9 * zfact * tmask(:,:,:) )
+         CALL iom_put( "LDETP"   , zpligprod2(:,:,:) * 1e9 * zfact * tmask(:,:,:) )
+       ENDIF
        CALL iom_put( "Mumax"   , zprmaxn(:,:,:) * tmask(:,:,:)  ) ! Maximum growth rate
        CALL iom_put( "MuP"     , zprpic(:,:,:) * xlimpic(:,:,:) * tmask(:,:,:) ) ! Realized growth rate for picophyto
Index: NEMO/branches/2019/dev_r11943_MERGE_2019/src/TOP/trcwri.F90
===================================================================
--- NEMO/branches/2019/dev_r11943_MERGE_2019/src/TOP/trcwri.F90	(revision 12275)
+++ NEMO/branches/2019/dev_r11943_MERGE_2019/src/TOP/trcwri.F90	(revision 12281)
@@ -47,9 +47,21 @@
       IF( ln_timing )   CALL timing_start('trc_wri')
       !
-      IF( l_offline .AND. kt == nittrc000 .AND. lwp ) THEN    ! WRITE root name in date.file for use by postpro
-         CALL dia_nam( clhstnam, nn_writetrc,' ' )
-         CALL ctl_opn( inum, 'date.file', 'REPLACE', 'FORMATTED', 'SEQUENTIAL', -1, numout, lwp, narea )
-         WRITE(inum,*) clhstnam
-         CLOSE(inum)
+      IF( l_offline ) THEN    ! WRITE root name in date.file for use by postpro
+         IF(  kt == nittrc000 .AND. lwp ) THEN    ! WRITE root name in date.file for use by postpro
+           CALL dia_nam( clhstnam, nn_writetrc,' ' )
+           CALL ctl_opn( inum, 'date.file', 'REPLACE', 'FORMATTED', 'SEQUENTIAL', -1, numout, lwp, narea )
+           WRITE(inum,*) clhstnam
+           CLOSE(inum)
+        ENDIF
+
+       ! Output of initial vertical scale factor
+       CALL iom_put( "e3t_0", e3t_0(:,:,:) )
+       CALL iom_put( "e3u_0", e3u_0(:,:,:) )
+       CALL iom_put( "e3v_0", e3v_0(:,:,:) )
+       !
+       CALL iom_put( "e3t" , e3t(:,:,:,Kmm) )
+       CALL iom_put( "e3u" , e3u(:,:,:,Kmm) )
+       CALL iom_put( "e3v" , e3v(:,:,:,Kmm) )
+       !
       ENDIF
       ! write the tracer concentrations in the file
