Index: /trunk/LMDZ.COMMON/libf/dyn3d_common/dynredem.F90
===================================================================
--- /trunk/LMDZ.COMMON/libf/dyn3d_common/dynredem.F90	(revision 3509)
+++ /trunk/LMDZ.COMMON/libf/dyn3d_common/dynredem.F90	(revision 3510)
@@ -10,5 +10,5 @@
   USE netcdf, ONLY: NF90_CREATE, NF90_DEF_DIM, NF90_INQ_VARID, NF90_GLOBAL, &
                     NF90_CLOSE,  NF90_PUT_ATT, NF90_UNLIMITED, NF90_CLOBBER
-  USE dynredem_mod, ONLY: cre_var, put_var1, put_var2, put_char1, err, modname, fil
+  USE dynredem_mod, ONLY: cre_var, put_var1, put_var2, put_char1, err, modname, fil, int2fmtstr
   use netcdf95, only: NF95_PUT_VAR
   use control_mod, only : planet_type
@@ -44,35 +44,8 @@
   INTEGER :: iq,l
   INTEGER, PARAMETER :: length=100
-  INTEGER, PARAMETER :: ldscrpt = 28, ndscrpt = 42
+  INTEGER, PARAMETER :: ndscrpt = 42
+  INTEGER :: ldscrpt
   REAL :: tab_cntrl(length) ! run parameters
-  character(ndscrpt), dimension(ldscrpt), parameter :: dscrpt_tab_cntrl = (/ &
-      "(1)  Number of nodes along longitude      ", &
-      "(2)  Number of nodes along latitude       ", &
-      "(3)  Number of atmospheric layers         ", &
-      "(4)  Initial day                          ", &
-      "(5)  Radius of the planet                 ", &
-      "(6)  Rotation of the planet (rad/s)       ", &
-      "(7)  Gravity (m/s2)                       ", &
-      "(8)  Specific heat Cp (J.kg-1.K-1)        ", &
-      "(9)  = r/Cp (=kappa)                      ", &
-      "(10) Lenght of a sol (s)                  ", &
-      "(11) Dynamical time step (s)              ", &
-      "(12) Total energy                         ", &
-      "(13) Total pressure                       ", &
-      "(14) Total enstrophy                      ", &
-      "(15) Total enthalpy                       ", &
-      "(16) Total angular momentum               ", &
-      "(17) Reference pressure (Pa)              ", &
-      "(18) Reference surface pressure (Pa)      ", &
-      "(19) Longitude of center of zoom          ", &
-      "(20) Latitude of center of zoom           ", &
-      "(21) Zooming factor, along longitude      ", &
-      "(22) Zooming factor, along latitude       ", &
-      "(23) -                                    ", &
-      "(24) Extention (in longitude) of zoom     ", &
-      "(25) Extention (in latitude) of zoom      ", &
-      "(26) -                                    ", &
-      "(27) Stiffness factor of zoom in longitude", &
-      "(28) Stiffness factor of zoom in latitude "/)
+  character(ndscrpt), dimension(:), allocatable :: dscrpt_tab_cntrl
   INTEGER :: ierr
   CHARACTER(LEN=80) :: abort_message
@@ -109,10 +82,13 @@
     start_file_type="planeto"
     idecal = 4
+    ldscrpt = 28
   else
     if ( planet_type.eq."titan" ) then
       ! Titan inherited Earth-like start files with idecal=5
       write(lunout,*) trim(modname),' : Titan start file'
+      ldscrpt = 29
     else
       write(lunout,*) trim(modname),' : Earth-like start file'
+      ldscrpt = 32
     endif
     idecal = 5
@@ -120,4 +96,11 @@
 
   tab_cntrl(:)  = 0.
+  allocate(dscrpt_tab_cntrl(ldscrpt))
+  dscrpt_tab_cntrl(1:5) = (/                        &
+      "(1)  Number of nodes along longitude      ", &
+      "(2)  Number of nodes along latitude       ", &
+      "(3)  Number of atmospheric layers         ", &
+      "(4)  Reference day                        ", &
+      "(5)  Reference year                       "/)
   tab_cntrl(1)  = REAL(iim)
   tab_cntrl(2)  = REAL(jjm)
@@ -128,4 +111,5 @@
     !tab_cntrl(4)=REAL(day_end)
     tab_cntrl(4)=REAL(iday_end)
+    dscrpt_tab_cntrl(4) = "(4)  Initial day                          "
   endif
   tab_cntrl(5)  = REAL(annee_ref)
@@ -150,4 +134,23 @@
   tab_cntrl(idecal+17)  = grossismx
   tab_cntrl(idecal+18)  = grossismy
+  dscrpt_tab_cntrl(idecal + 1:idecal + 18) = (/     &
+      int2fmtstr(idecal + 1)//" Radius of the planet                 ", &
+      int2fmtstr(idecal + 2)//" Rotation of the planet (rad/s)       ", &
+      int2fmtstr(idecal + 3)//" Gravity (m/s2)                       ", &
+      int2fmtstr(idecal + 4)//" Specific heat Cp (J.kg-1.K-1)        ", &
+      int2fmtstr(idecal + 5)//" = r/Cp (=kappa)                      ", &
+      int2fmtstr(idecal + 6)//" Lenght of a sol (s)                  ", &
+      int2fmtstr(idecal + 7)//" Dynamical time step (s)              ", &
+      int2fmtstr(idecal + 8)//" Total energy                         ", &
+      int2fmtstr(idecal + 9)//" Total pressure                       ", &
+      int2fmtstr(idecal + 10)//" Total enstrophy                      ", &
+      int2fmtstr(idecal + 11)//" Total enthalpy                       ", &
+      int2fmtstr(idecal + 12)//" Total angular momentum               ", &
+      int2fmtstr(idecal + 13)//" Reference pressure (Pa)              ", &
+      int2fmtstr(idecal + 14)//" Reference surface pressure (Pa)      ", &
+      int2fmtstr(idecal + 15)//" Longitude of center of zoom          ", &
+      int2fmtstr(idecal + 16)//" Latitude of center of zoom           ", &
+      int2fmtstr(idecal + 17)//" Zooming factor, along longitude      ", &
+      int2fmtstr(idecal + 18)//" Zooming factor, along latitude       "/)
 !
   IF ( fxyhypb )   THEN
@@ -158,4 +161,11 @@
     tab_cntrl(idecal+23) = taux
     tab_cntrl(idecal+24) = tauy
+    dscrpt_tab_cntrl(idecal + 19:idecal + 24) = (/  &
+      int2fmtstr(idecal + 19)//" 1.                                   ", &
+      int2fmtstr(idecal + 20)//" Extention (in longitude) of zoom     ", &
+      int2fmtstr(idecal + 21)//" Extention (in latitude) of zoom      ", &
+      int2fmtstr(idecal + 22)//" -                                    ", &
+      int2fmtstr(idecal + 23)//" Stiffness factor of zoom in longitude", &
+      int2fmtstr(idecal + 24)//" Stiffness factor of zoom in latitude "/)
   ELSE
     tab_cntrl(idecal+19) = 0.
@@ -166,4 +176,11 @@
     tab_cntrl(idecal+24) = 0.
     IF( ysinus )  tab_cntrl(idecal+22) = 1.
+    dscrpt_tab_cntrl(idecal + 19:idecal + 24) = (/  &
+      int2fmtstr(idecal + 19)//" -                                    ", &
+      int2fmtstr(idecal + 20)//" Extention (in longitude) of zoom     ", &
+      int2fmtstr(idecal + 21)//" Extention (in latitude) of zoom      ", &
+      int2fmtstr(idecal + 22)//" 1.                                   ", &
+      int2fmtstr(idecal + 23)//" Stiffness factor of zoom in longitude", &
+      int2fmtstr(idecal + 24)//" Stiffness factor of zoom in latitude "/)
   ENDIF
 
@@ -173,4 +190,8 @@
 ! start_time: start_time of simulation (not necessarily 0.)
     tab_cntrl(idecal+27) = start_time
+    dscrpt_tab_cntrl(idecal + 25:idecal + 27) = (/  &
+      "(30) Initial day                          ", &
+      "(31) Extention (in longitude) of zoom     ", &
+      "(32) Start time of simulation             "/)
   endif
 
@@ -303,4 +324,6 @@
   WRITE(lunout,*)TRIM(modname)//': iim,jjm,llm,iday_end',iim,jjm,llm,iday_end
   WRITE(lunout,*)TRIM(modname)//': rad,omeg,g,cpp,kappa',rad,omeg,g,cpp,kappa
+
+  deallocate(dscrpt_tab_cntrl)
 
 END SUBROUTINE dynredem0
@@ -428,3 +451,2 @@
 
 END SUBROUTINE dynredem1
-
Index: /trunk/LMDZ.COMMON/libf/dyn3d_common/dynredem_mod.F90
===================================================================
--- /trunk/LMDZ.COMMON/libf/dyn3d_common/dynredem_mod.F90	(revision 3509)
+++ /trunk/LMDZ.COMMON/libf/dyn3d_common/dynredem_mod.F90	(revision 3510)
@@ -6,5 +6,5 @@
                     NF90_DEF_VAR, NF90_CHAR
   PRIVATE
-  PUBLIC :: dynredem_write_u, dynredem_write_v, dynredem_read_u, err
+  PUBLIC :: dynredem_write_u, dynredem_write_v, dynredem_read_u, err, int2fmtstr
   PUBLIC :: cre_var, get_var1, put_var1, put_var2, put_char1, fil, modname, msg
   include "dimensions.h"
@@ -258,3 +258,28 @@
 !===============================================================================
 
+
+!===============================================================================
+!
+FUNCTION int2fmtstr(i) RESULT(fmtstr)
+!
+!===============================================================================
+! Conversion of an integer (0 < i < 100) to the formatted string needed for the
+! desccription of the 'controle' array
+!===============================================================================
+! Arguments:
+  integer, intent(in) :: i      !--- Input
+  character(4)        :: fmtstr !--- Output
+!===============================================================================
+  if (i < 1 .or. i > 99) call ABORT_gcm(modname,'Invalid integer given to int2fmtstr!',1)
+  write(fmtstr,'(i2)') i
+  if (len(trim(adjustl(fmtstr))) > 1) then
+    fmtstr = '('//trim(adjustl(fmtstr))//')'
+  else
+    fmtstr = '('//trim(adjustl(fmtstr))//') '
+  endif
+
+END FUNCTION int2fmtstr
+!
+!===============================================================================
+
 END MODULE dynredem_mod   
Index: /trunk/LMDZ.COMMON/libf/dyn3dpar/dynredem_p.F90
===================================================================
--- /trunk/LMDZ.COMMON/libf/dyn3dpar/dynredem_p.F90	(revision 3509)
+++ /trunk/LMDZ.COMMON/libf/dyn3dpar/dynredem_p.F90	(revision 3510)
@@ -10,5 +10,5 @@
   USE netcdf, ONLY: NF90_CREATE, NF90_DEF_DIM, NF90_INQ_VARID, NF90_GLOBAL,    &
                     NF90_CLOSE,  NF90_PUT_ATT, NF90_UNLIMITED, NF90_CLOBBER
-  USE dynredem_mod, ONLY: cre_var, put_var1, put_var2, put_char1, err, modname, fil
+  USE dynredem_mod, ONLY: cre_var, put_var1, put_var2, put_char1, err, modname, fil, int2fmtstr
   use netcdf95, only: NF95_PUT_VAR
   use control_mod, only : planet_type
@@ -44,35 +44,8 @@
   INTEGER :: iq,l
   INTEGER, PARAMETER :: length=100
-  INTEGER, PARAMETER :: ldscrpt = 28, ndscrpt = 42
+  INTEGER, PARAMETER :: ndscrpt = 42
+  INTEGER :: ldscrpt
   REAL :: tab_cntrl(length) ! run parameters
-  character(ndscrpt), dimension(ldscrpt), parameter :: dscrpt_tab_cntrl = (/ &
-      "(1)  Number of nodes along longitude      ", &
-      "(2)  Number of nodes along latitude       ", &
-      "(3)  Number of atmospheric layers         ", &
-      "(4)  Initial day                          ", &
-      "(5)  Radius of the planet                 ", &
-      "(6)  Rotation of the planet (rad/s)       ", &
-      "(7)  Gravity (m/s2)                       ", &
-      "(8)  Specific heat Cp (J.kg-1.K-1)        ", &
-      "(9)  = r/Cp (=kappa)                      ", &
-      "(10) Lenght of a sol (s)                  ", &
-      "(11) Dynamical time step (s)              ", &
-      "(12) Total energy                         ", &
-      "(13) Total pressure                       ", &
-      "(14) Total enstrophy                      ", &
-      "(15) Total enthalpy                       ", &
-      "(16) Total angular momentum               ", &
-      "(17) Reference pressure (Pa)              ", &
-      "(18) Reference surface pressure (Pa)      ", &
-      "(19) Longitude of center of zoom          ", &
-      "(20) Latitude of center of zoom           ", &
-      "(21) Zooming factor, along longitude      ", &
-      "(22) Zooming factor, along latitude       ", &
-      "(23) -                                    ", &
-      "(24) Extention (in longitude) of zoom     ", &
-      "(25) Extention (in latitude) of zoom      ", &
-      "(26) -                                    ", &
-      "(27) Stiffness factor of zoom in longitude", &
-      "(28) Stiffness factor of zoom in latitude "/)
+  character(ndscrpt), dimension(:), allocatable :: dscrpt_tab_cntrl
   INTEGER :: ierr
   CHARACTER(LEN=80) :: abort_message
@@ -110,10 +83,13 @@
     start_file_type="planeto"
     idecal = 4
+    ldscrpt = 28
   else
     if ( planet_type.eq."titan" ) then
       ! Titan inherited Earth-like start files with idecal=5
       write(lunout,*) trim(modname),' : Titan start file'
+      ldscrpt = 29
     else
       write(lunout,*) trim(modname),' : Earth-like start file'
+      ldscrpt = 32
     endif
     idecal = 5
@@ -121,4 +97,11 @@
 
   tab_cntrl(:)  = 0.
+  allocate(dscrpt_tab_cntrl(ldscrpt))
+  dscrpt_tab_cntrl(1:5) = (/                        &
+      "(1)  Number of nodes along longitude      ", &
+      "(2)  Number of nodes along latitude       ", &
+      "(3)  Number of atmospheric layers         ", &
+      "(4)  Reference day                        ", &
+      "(5)  Reference year                       "/)
   tab_cntrl(1)  = REAL(iim)
   tab_cntrl(2)  = REAL(jjm)
@@ -129,4 +112,5 @@
     !tab_cntrl(4)=REAL(day_end)
     tab_cntrl(4)=REAL(iday_end)
+    dscrpt_tab_cntrl(4) = "(4)  Initial day                          "
   endif
   tab_cntrl(5)  = REAL(annee_ref)
@@ -151,4 +135,23 @@
   tab_cntrl(idecal+17)  = grossismx
   tab_cntrl(idecal+18)  = grossismy
+  dscrpt_tab_cntrl(idecal + 1:idecal + 18) = (/     &
+      int2fmtstr(idecal + 1)//" Radius of the planet                 ", &
+      int2fmtstr(idecal + 2)//" Rotation of the planet (rad/s)       ", &
+      int2fmtstr(idecal + 3)//" Gravity (m/s2)                       ", &
+      int2fmtstr(idecal + 4)//" Specific heat Cp (J.kg-1.K-1)        ", &
+      int2fmtstr(idecal + 5)//" = r/Cp (=kappa)                      ", &
+      int2fmtstr(idecal + 6)//" Lenght of a sol (s)                  ", &
+      int2fmtstr(idecal + 7)//" Dynamical time step (s)              ", &
+      int2fmtstr(idecal + 8)//" Total energy                         ", &
+      int2fmtstr(idecal + 9)//" Total pressure                       ", &
+      int2fmtstr(idecal + 10)//" Total enstrophy                      ", &
+      int2fmtstr(idecal + 11)//" Total enthalpy                       ", &
+      int2fmtstr(idecal + 12)//" Total angular momentum               ", &
+      int2fmtstr(idecal + 13)//" Reference pressure (Pa)              ", &
+      int2fmtstr(idecal + 14)//" Reference surface pressure (Pa)      ", &
+      int2fmtstr(idecal + 15)//" Longitude of center of zoom          ", &
+      int2fmtstr(idecal + 16)//" Latitude of center of zoom           ", &
+      int2fmtstr(idecal + 17)//" Zooming factor, along longitude      ", &
+      int2fmtstr(idecal + 18)//" Zooming factor, along latitude       "/)
 !
   IF ( fxyhypb )   THEN
@@ -159,4 +162,11 @@
     tab_cntrl(idecal+23) = taux
     tab_cntrl(idecal+24) = tauy
+    dscrpt_tab_cntrl(idecal + 19:idecal + 24) = (/  &
+      int2fmtstr(idecal + 19)//" 1.                                   ", &
+      int2fmtstr(idecal + 20)//" Extention (in longitude) of zoom     ", &
+      int2fmtstr(idecal + 21)//" Extention (in latitude) of zoom      ", &
+      int2fmtstr(idecal + 22)//" -                                    ", &
+      int2fmtstr(idecal + 23)//" Stiffness factor of zoom in longitude", &
+      int2fmtstr(idecal + 24)//" Stiffness factor of zoom in latitude "/)
   ELSE
     tab_cntrl(idecal+19) = 0.
@@ -167,4 +177,11 @@
     tab_cntrl(idecal+24) = 0.
     IF( ysinus )  tab_cntrl(idecal+22) = 1.
+    dscrpt_tab_cntrl(idecal + 19:idecal + 24) = (/  &
+      int2fmtstr(idecal + 19)//" -                                    ", &
+      int2fmtstr(idecal + 20)//" Extention (in longitude) of zoom     ", &
+      int2fmtstr(idecal + 21)//" Extention (in latitude) of zoom      ", &
+      int2fmtstr(idecal + 22)//" 1.                                   ", &
+      int2fmtstr(idecal + 23)//" Stiffness factor of zoom in longitude", &
+      int2fmtstr(idecal + 24)//" Stiffness factor of zoom in latitude "/)
   ENDIF
 
@@ -174,4 +191,8 @@
 ! start_time: start_time of simulation (not necessarily 0.)
     tab_cntrl(idecal+27) = start_time
+    dscrpt_tab_cntrl(idecal + 25:idecal + 27) = (/  &
+      "(30) Initial day                          ", &
+      "(31) Extention (in longitude) of zoom     ", &
+      "(32) Start time of simulation             "/)
   endif
 
@@ -304,4 +325,6 @@
   WRITE(lunout,*)TRIM(modname)//': iim,jjm,llm,iday_end',iim,jjm,llm,iday_end
   WRITE(lunout,*)TRIM(modname)//': rad,omeg,g,cpp,kappa',rad,omeg,g,cpp,kappa
+
+  deallocate(dscrpt_tab_cntrl)
 
   endif ! of if (mpi_rank==0)
