diff --git a/doc/paper/2023/simhydro/ajustement-for-paper.patch b/doc/paper/2023/simhydro/ajustement-for-paper.patch
new file mode 100644
index 0000000000000000000000000000000000000000..15779da7a946021d53de3c250987ef2a368385b3
--- /dev/null
+++ b/doc/paper/2023/simhydro/ajustement-for-paper.patch
@@ -0,0 +1,692 @@
+diff --git a/packages/linux.sh b/packages/linux.sh
+index 215047e..a19bfb6 100755
+--- a/packages/linux.sh
++++ b/packages/linux.sh
+@@ -76,11 +76,11 @@ mv ../pamhyr-src.tar.gz ./
+ 
+ echo " *** MAKE BIN PACKAGE"
+ 
+-OLD_PWD=$PWD
+-cd dist/
+-tar --xz -cf pamhyr-gnulinux-amd64.tar.xz pamhyr --checkpoint=.100
+-cd $OLD_PWD
++# OLD_PWD=$PWD
++# cd dist/
++# tar --xz -cf pamhyr-gnulinux-amd64.tar.xz pamhyr --checkpoint=.100
++# cd $OLD_PWD
+ 
+-mv dist/pamhyr-gnulinux-amd64.tar.xz ./
++# mv dist/pamhyr-gnulinux-amd64.tar.xz ./
+ 
+ echo " *** DONE"
+diff --git a/src/Model/Friction/Friction.py b/src/Model/Friction/Friction.py
+index 18167a8..5bf2302 100644
+--- a/src/Model/Friction/Friction.py
++++ b/src/Model/Friction/Friction.py
+@@ -170,6 +170,7 @@ class Friction(SQLSubModel):
+     @begin_strickler.setter
+     def begin_strickler(self, strickler):
+         self._begin_strickler = strickler
++        self._end_strickler = strickler # HACK: Only one Strickler
+         self._status.modified()
+ 
+     @property
+diff --git a/src/Model/Stricklers/Stricklers.py b/src/Model/Stricklers/Stricklers.py
+index baa484f..a5670d2 100644
+--- a/src/Model/Stricklers/Stricklers.py
++++ b/src/Model/Stricklers/Stricklers.py
+@@ -38,7 +38,7 @@ class Stricklers(SQLSubModel):
+         else:
+             self.id = id
+ 
+-        Stricklers._id_cnt = max(Stricklers._id_cnt + 1, self.id)
++        Stricklers._id_cnt = max(Stricklers._id_cnt + 1, id + 1)
+ 
+         self._name = name
+         self._comment = comment
+diff --git a/src/View/BoundaryCondition/translate.py b/src/View/BoundaryCondition/translate.py
+index c4ff8f8..172999a 100644
+--- a/src/View/BoundaryCondition/translate.py
++++ b/src/View/BoundaryCondition/translate.py
+@@ -29,9 +29,9 @@ _translate = QCoreApplication.translate
+ long_types = {
+     "ND": _translate("BoundaryCondition", "Not defined"),
+     "PC": _translate("BoundaryCondition", "Ponctual contribution"),
+-    "TZ": _translate("BoundaryCondition", "Time over Z"),
+-    "TD": _translate("BoundaryCondition", "Time over Discharge"),
+-    "ZD": _translate("BoundaryCondition", "Z over Discharge"),
++    "TZ": _translate("BoundaryCondition", "TimeZ"),
++    "TD": _translate("BoundaryCondition", "TimeDischarge"),
++    "ZD": _translate("BoundaryCondition", "ZDischarge"),
+     "SL": _translate("BoundaryCondition", "Solid"),
+ }
+ 
+diff --git a/src/View/Frictions/PlotStricklers.py b/src/View/Frictions/PlotStricklers.py
+index 71ff6e6..b9060bc 100644
+--- a/src/View/Frictions/PlotStricklers.py
++++ b/src/View/Frictions/PlotStricklers.py
+@@ -106,6 +106,8 @@ class PlotStricklers(APlot):
+                 )
+                 self.draw_frictions(lst, color="b")
+ 
++        self.canvas.axes.invert_xaxis()
++
+         self.canvas.figure.tight_layout()
+         self.canvas.figure.canvas.draw_idle()
+         if self.toolbar is not None:
+diff --git a/src/View/Frictions/Window.py b/src/View/Frictions/Window.py
+index 4af3b66..f46fae3 100644
+--- a/src/View/Frictions/Window.py
++++ b/src/View/Frictions/Window.py
+@@ -112,10 +112,10 @@ class FrictionsWindow(ASubMainWindow, ListedSubWindow):
+         )
+ 
+         table.setItemDelegateForColumn(
+-            3, self._delegate_stricklers
++            2, self._delegate_stricklers
+         )
+         table.setItemDelegateForColumn(
+-            4, self._delegate_stricklers
++            3, self._delegate_stricklers
+         )
+ 
+         table.setSelectionBehavior(QAbstractItemView.SelectRows)
+diff --git a/src/View/Frictions/translate.py b/src/View/Frictions/translate.py
+index 21981ab..82071e9 100644
+--- a/src/View/Frictions/translate.py
++++ b/src/View/Frictions/translate.py
+@@ -21,10 +21,10 @@ from PyQt5.QtCore import QCoreApplication
+ _translate = QCoreApplication.translate
+ 
+ table_headers = {
+-    "name": _translate("Frictions", "Name"),
++    # "name": _translate("Frictions", "Name"),
+     # "edge": _translate("Frictions", "Reach"),
+     "begin_kp": _translate("Frictions", "Begin kp (m)"),
+     "end_kp": _translate("Frictions", "End kp (m)"),
+-    "begin_strickler": _translate("Frictions", "Begin strickler"),
+-    "end_strickler": _translate("Frictions", "End strickler"),
++    "begin_strickler": _translate("Frictions", "Strickler"),
++    # "end_strickler": _translate("Frictions", "End strickler"),
+ }
+diff --git a/src/View/Geometry/PlotAC.py b/src/View/Geometry/PlotAC.py
+index fe6d933..e43f39e 100644
+--- a/src/View/Geometry/PlotAC.py
++++ b/src/View/Geometry/PlotAC.py
+@@ -67,18 +67,18 @@ class PlotAC(APlot):
+         gl = self.data.profile(selected_profile).names()
+ 
+         self.canvas.axes.set_xlabel(
+-            _translate("MainWindow_reach", "Abscisse en travers (m)"),
++            _translate("MainWindow_reach", "Transverse abscissa (m)"),
+             color='green', fontsize=12
+         )
+         self.canvas.axes.set_ylabel(
+-            _translate("MainWindow_reach", "Cote (m)"),
++            _translate("MainWindow_reach", "Height (m)"),
+             color='green', fontsize=12
+         )
+         self.canvas.figure.tight_layout()
+ 
+-        label_before_plot_selected = _translate("MainWindow_reach", "Profil précédent")
+-        label_plot_selected = _translate("MainWindow_reach", "Profil sélectionné")
+-        label_after_plot_selected = _translate("MainWindow_reach", "Profil suivant")
++        label_before_plot_selected = _translate("MainWindow_reach", "Previous cross-section")
++        label_plot_selected = _translate("MainWindow_reach", "Cross-section")
++        label_after_plot_selected = _translate("MainWindow_reach", "Next cross-section")
+         color_before_plot_selected = "k"  # 'grey'
+         color_plot_selected = 'b'
+         color_after_plot_selected = 'm'
+diff --git a/src/View/Geometry/PlotKPZ.py b/src/View/Geometry/PlotKPZ.py
+index eb7d5e2..64057aa 100644
+--- a/src/View/Geometry/PlotKPZ.py
++++ b/src/View/Geometry/PlotKPZ.py
+@@ -158,6 +158,8 @@ class PlotKPZ(APlot):
+             color='lightgrey'
+         )
+ 
++        self.canvas.axes.invert_xaxis()
++
+         self.canvas.figure.tight_layout()
+         self.canvas.figure.canvas.draw_idle()
+         if self.toolbar is not None:
+diff --git a/src/View/Geometry/Window.py b/src/View/Geometry/Window.py
+index 7776d73..1c8cb5d 100644
+--- a/src/View/Geometry/Window.py
++++ b/src/View/Geometry/Window.py
+@@ -111,7 +111,7 @@ class GeometryWindow(ASubMainWindow, ListedSubWindow):
+         self.ui.btn_sort_desc.triggered.connect(self.sort_descending)
+         self.ui.btn_move_up.triggered.connect(self.move_row_up)
+         self.ui.btn_move_down.triggered.connect(self.move_row_down)
+-        self.ui.btn_end_editing.triggered.connect(self.handleSave)
++        # self.ui.btn_end_editing.triggered.connect(self.handleSave)
+         self.ui.btn_add.triggered.connect(self.insert_row)
+         self.ui.btn_delete.triggered.connect(self.delete_rows)
+         self.ui.btn_edit.triggered.connect(self.edit_profile)
+diff --git a/src/View/Geometry/mainwindow_ui_reach.py b/src/View/Geometry/mainwindow_ui_reach.py
+index 897b698..60bcfa6 100644
+--- a/src/View/Geometry/mainwindow_ui_reach.py
++++ b/src/View/Geometry/mainwindow_ui_reach.py
+@@ -95,29 +95,29 @@ class Ui_MainWindow(object):
+         self.btn_edit.setIcon(icon_btn_edit)
+         self.toolBar.addAction(self.btn_edit)
+ 
+-        self.btn_copy_selected_profile = QtWidgets.QAction(self.widget)
+-        self.btn_copy_selected_profile.setObjectName("btn_copy_selected_profile")
+-        icon_btn_copy_selected_profile = QtGui.QIcon()
+-        icon_btn_copy_selected_profile.addPixmap(
+-            QtGui.QPixmap(f"{icon_path}gtk-copy.png"))
+-        self.btn_copy_selected_profile.setIcon(icon_btn_copy_selected_profile)
+-        self.toolBar.addAction(self.btn_copy_selected_profile)
+-
+-        self.btn_paste_selected_profile = QtWidgets.QAction(self.widget)
+-        self.btn_paste_selected_profile.setObjectName("btn_paste_selected_profile")
+-        icon_btn_paste_selected_profile = QtGui.QIcon()
+-        icon_btn_paste_selected_profile.addPixmap(
+-            QtGui.QPixmap(f"{icon_path}gtk-paste.png"))
+-        self.btn_paste_selected_profile.setIcon(icon_btn_paste_selected_profile)
+-        self.toolBar.addAction(self.btn_paste_selected_profile)
+-
+-        self.btn_duplicate_selected_profile = QtWidgets.QAction(self.widget)
+-        self.btn_duplicate_selected_profile.setObjectName("btn_duplicate_selected_profile")
+-        icon_btn_duplicate_selected_profile = QtGui.QIcon()
+-        icon_btn_duplicate_selected_profile.addPixmap(
+-            QtGui.QPixmap(f"{icon_path}gtk-dnd-multiple.png"))
+-        self.btn_duplicate_selected_profile.setIcon(icon_btn_duplicate_selected_profile)
+-        self.toolBar.addAction(self.btn_duplicate_selected_profile)
++        # self.btn_copy_selected_profile = QtWidgets.QAction(self.widget)
++        # self.btn_copy_selected_profile.setObjectName("btn_copy_selected_profile")
++        # icon_btn_copy_selected_profile = QtGui.QIcon()
++        # icon_btn_copy_selected_profile.addPixmap(
++        #     QtGui.QPixmap(f"{icon_path}gtk-copy.png"))
++        # self.btn_copy_selected_profile.setIcon(icon_btn_copy_selected_profile)
++        # self.toolBar.addAction(self.btn_copy_selected_profile)
++
++        # self.btn_paste_selected_profile = QtWidgets.QAction(self.widget)
++        # self.btn_paste_selected_profile.setObjectName("btn_paste_selected_profile")
++        # icon_btn_paste_selected_profile = QtGui.QIcon()
++        # icon_btn_paste_selected_profile.addPixmap(
++        #     QtGui.QPixmap(f"{icon_path}gtk-paste.png"))
++        # self.btn_paste_selected_profile.setIcon(icon_btn_paste_selected_profile)
++        # self.toolBar.addAction(self.btn_paste_selected_profile)
++
++        # self.btn_duplicate_selected_profile = QtWidgets.QAction(self.widget)
++        # self.btn_duplicate_selected_profile.setObjectName("btn_duplicate_selected_profile")
++        # icon_btn_duplicate_selected_profile = QtGui.QIcon()
++        # icon_btn_duplicate_selected_profile.addPixmap(
++        #     QtGui.QPixmap(f"{icon_path}gtk-dnd-multiple.png"))
++        # self.btn_duplicate_selected_profile.setIcon(icon_btn_duplicate_selected_profile)
++        # self.toolBar.addAction(self.btn_duplicate_selected_profile)
+ 
+         self.btn_sort_asc = QtWidgets.QAction(self.widget)
+         self.btn_sort_asc.setObjectName("btn_sort_asc")
+@@ -151,13 +151,13 @@ class Ui_MainWindow(object):
+         self.btn_move_down.setIcon(icon_btn_move_down)
+         self.toolBar.addAction(self.btn_move_down)
+ 
+-        self.btn_end_editing = QtWidgets.QAction(self.widget)
+-        self.btn_end_editing.setObjectName("btn_end_editing")
+-        icon_btn_save = QtGui.QIcon()
+-        icon_btn_save.addPixmap(
+-            QtGui.QPixmap(f"{icon_path}gtk-apply.png"))
+-        self.btn_end_editing.setIcon(icon_btn_save)
+-        self.toolBar.addAction(self.btn_end_editing)
++        # self.btn_end_editing = QtWidgets.QAction(self.widget)
++        # self.btn_end_editing.setObjectName("btn_end_editing")
++        # icon_btn_save = QtGui.QIcon()
++        # icon_btn_save.addPixmap(
++        #     QtGui.QPixmap(f"{icon_path}gtk-apply.png"))
++        # self.btn_end_editing.setIcon(icon_btn_save)
++        # self.toolBar.addAction(self.btn_end_editing)
+ 
+         self.verticalLayout.addLayout(self.horizontalLayout)
+         self.tableView = QtWidgets.QTableView(self.widget)
+@@ -314,30 +314,23 @@ class Ui_MainWindow(object):
+     def retranslateUi(self, MainWindow_reach):
+         _translate = QtCore.QCoreApplication.translate
+         self.name_reach = ""
+-        self.mainwindow_title = _translate("MainWindow_reach", "Jeu de sections du Bief")
++        self.mainwindow_title = _translate("MainWindow_reach", "Geometry reach edit")
+         MainWindow_reach.setWindowTitle(self.mainwindow_title + f"{self.name_reach}")
+-        self.text_section_order = _translate("MainWindow_reach", "\nOrdre des sections : "
+-                                                                 "Amont --> Aval")
+         # self.label_section_order.setText(f"{self.text_section_order}")
+         self.vertical_slider_value = ""
+-        self.vertical_slider_label.setText(_translate("MainWindow_reach", "Pk = ") + f"{self.vertical_slider_value}")
+-        self.btn_open.setToolTip(_translate("MainWindow_reach", " Importer une géométrie"))
+-        self.btn_add.setToolTip(_translate("MainWindow_reach", " Nouveau profil"))
+-        self.btn_delete.setToolTip(_translate("MainWindow_reach", " Supprimer le profil sélectionné"))
+-        self.btn_edit.setToolTip(_translate("MainWindow_reach", " Éditer le profil sélectionné"))
+-        self.btn_copy_selected_profile.setToolTip(_translate("MainWindow_reach", " Copier le profil sélectionné"))
+-        self.btn_paste_selected_profile.setToolTip(_translate("MainWindow_reach", "Coller le profil en fin de liste ("
+-                                                                                  "penser à modifier le Pk avant de "
+-                                                                                  "trier)"))
+-        self.btn_duplicate_selected_profile.setToolTip(
+-            _translate("MainWindow_reach", " Dupliquer la section sélectionnée"))
++        self.vertical_slider_label.setText(_translate("MainWindow_reach", "Kp = ") + f"{self.vertical_slider_value}")
++        self.btn_open.setToolTip(_translate("MainWindow_reach", " Import geometry"))
++        self.btn_add.setToolTip(_translate("MainWindow_reach", " New profile"))
++        self.btn_delete.setToolTip(_translate("MainWindow_reach", " Delete selected profile"))
++        self.btn_edit.setToolTip(_translate("MainWindow_reach", " Editer selected profile"))
++
+         self.btn_sort_asc.setToolTip(_translate("MainWindow_reach", " Trier les profils par ordre croissant des Pk"))
+         self.btn_sort_desc.setToolTip(_translate("MainWindow_reach", " Trier les profils par ordre décroissant des Pk"))
+         self.btn_move_up.setToolTip(_translate("MainWindow_reach", " Changer l'ordre des profils (en décalant le "
+                                                                    "profil sélectionné vers le haut)"))
+         self.btn_move_down.setToolTip(_translate("MainWindow_reach", " Changer l'ordre des profils (en décalant le "
+                                                                      "profil sélectionné vers le bas)"))
+-        self.btn_end_editing.setToolTip(_translate("MainWindow_reach", " Terminer l'édition"))
++        # self.btn_end_editing.setToolTip(_translate("MainWindow_reach", " Terminer l'édition"))
+         self.tableView_header = [_translate("MainWindow_reach", "Name"),
+                                  _translate("MainWindow_reach", "Kp (m)"),
+                                  _translate("MainWindow_reach", "Type")]
+diff --git a/src/View/InitialConditions/PlotDKP.py b/src/View/InitialConditions/PlotDKP.py
+index 58a8321..445cc08 100644
+--- a/src/View/InitialConditions/PlotDKP.py
++++ b/src/View/InitialConditions/PlotDKP.py
+@@ -71,6 +71,8 @@ class PlotDKP(APlot):
+                 color='b', marker='+', lw=1.
+             )
+ 
++        self.canvas.axes.invert_xaxis()
++
+         self.canvas.figure.tight_layout()
+         self.canvas.figure.canvas.draw_idle()
+         if self.toolbar is not None:
+diff --git a/src/View/InitialConditions/PlotDischarge.py b/src/View/InitialConditions/PlotDischarge.py
+index 1fe05de..0703c59 100644
+--- a/src/View/InitialConditions/PlotDischarge.py
++++ b/src/View/InitialConditions/PlotDischarge.py
+@@ -65,6 +65,8 @@ class PlotDischarge(APlot):
+                 color='r', lw=1.
+             )
+ 
++        self.canvas.axes.invert_xaxis()
++
+         self.canvas.figure.tight_layout()
+         self.canvas.figure.canvas.draw_idle()
+         if self.toolbar is not None:
+diff --git a/src/View/InitialConditions/translate.py b/src/View/InitialConditions/translate.py
+index 370d4a2..3fe45f7 100644
+--- a/src/View/InitialConditions/translate.py
++++ b/src/View/InitialConditions/translate.py
+@@ -21,11 +21,11 @@ from PyQt5.QtCore import QCoreApplication
+ _translate = QCoreApplication.translate
+ 
+ table_headers = {
+-    "name": _translate("LateralContribution", "Name"),
++    # "name": _translate("LateralContribution", "Name"),
+     "kp": _translate("LateralContribution", "KP (m)"),
+     # "speed": _translate("LateralContribution", "Speed (m/s)"),
+     "discharge": _translate("LateralContribution", "Discharge (m³/s)"),
+     "elevation": _translate("LateralContribution", "Elevation (m)"),
+     "height": _translate("LateralContribution", "Height (m)"),
+-    "comment": _translate("LateralContribution", "Comment"),
++    # "comment": _translate("LateralContribution", "Comment"),
+ }
+diff --git a/src/View/SedimentLayers/Edit/translate.py b/src/View/SedimentLayers/Edit/translate.py
+index fe9e44a..f9f02cb 100644
+--- a/src/View/SedimentLayers/Edit/translate.py
++++ b/src/View/SedimentLayers/Edit/translate.py
+@@ -6,7 +6,7 @@ _translate = QCoreApplication.translate
+ 
+ table_headers = {
+     "name": _translate("SedimentLayers", "Name"),
+-    "type": _translate("SedimentLayers", "Type"),
++    # "type": _translate("SedimentLayers", "Type"),
+     "height": _translate("Sedimentlayers", "Height"),
+     "d50": _translate("Sedimentlayers", "D50"),
+     "sigma": _translate("Sedimentlayers", "Sigma"),
+diff --git a/src/View/SedimentLayers/Reach/Plot.py b/src/View/SedimentLayers/Reach/Plot.py
+index a312a8c..5764abf 100644
+--- a/src/View/SedimentLayers/Reach/Plot.py
++++ b/src/View/SedimentLayers/Reach/Plot.py
+@@ -78,6 +78,8 @@ class Plot(APlot):
+                 color='grey' if i == len(z_sl) - 1 else None
+             )
+ 
++        self.canvas.axes.invert_xaxis()
++
+         self.canvas.figure.tight_layout()
+         self.canvas.figure.canvas.draw_idle()
+         if self.toolbar is not None:
+diff --git a/src/lang/fr.ts b/src/lang/fr.ts
+index 8034809..031f349 100644
+--- a/src/lang/fr.ts
++++ b/src/lang/fr.ts
+@@ -60,21 +60,6 @@
+         <source>Ponctual contribution</source>
+         <translation>Contributions ponctuelles</translation>
+     </message>
+-    <message>
+-        <location filename="../View/BoundaryCondition/translate.py" line="32"/>
+-        <source>Time over Z</source>
+-        <translation type="unfinished"></translation>
+-    </message>
+-    <message>
+-        <location filename="../View/BoundaryCondition/translate.py" line="33"/>
+-        <source>Time over Discharge</source>
+-        <translation type="unfinished"></translation>
+-    </message>
+-    <message>
+-        <location filename="../View/BoundaryCondition/translate.py" line="34"/>
+-        <source>Z over Discharge</source>
+-        <translation type="unfinished"></translation>
+-    </message>
+     <message>
+         <location filename="../View/BoundaryCondition/translate.py" line="39"/>
+         <source>Name</source>
+@@ -110,6 +95,21 @@
+         <source>Solid</source>
+         <translation type="unfinished">Solide</translation>
+     </message>
++    <message>
++        <location filename="../View/BoundaryCondition/translate.py" line="32"/>
++        <source>TimeZ</source>
++        <translation type="unfinished"></translation>
++    </message>
++    <message>
++        <location filename="../View/BoundaryCondition/translate.py" line="33"/>
++        <source>TimeDischarge</source>
++        <translation type="unfinished"></translation>
++    </message>
++    <message>
++        <location filename="../View/BoundaryCondition/translate.py" line="34"/>
++        <source>ZDischarge</source>
++        <translation type="unfinished"></translation>
++    </message>
+ </context>
+ <context>
+     <name>Checker</name>
+@@ -533,7 +533,7 @@
+     <message>
+         <location filename="../View/Frictions/translate.py" line="24"/>
+         <source>Name</source>
+-        <translation>Nom</translation>
++        <translation type="obsolete">Nom</translation>
+     </message>
+     <message>
+         <location filename="../View/Frictions/translate.py" line="26"/>
+@@ -548,12 +548,17 @@
+     <message>
+         <location filename="../View/Frictions/translate.py" line="28"/>
+         <source>Begin strickler</source>
+-        <translation>strickler de départ</translation>
++        <translation type="obsolete">strickler de départ</translation>
+     </message>
+     <message>
+         <location filename="../View/Frictions/translate.py" line="29"/>
+         <source>End strickler</source>
+-        <translation>Strickler de fin</translation>
++        <translation type="obsolete">Strickler de fin</translation>
++    </message>
++    <message>
++        <location filename="../View/Frictions/translate.py" line="28"/>
++        <source>Strickler</source>
++        <translation type="unfinished"></translation>
+     </message>
+ </context>
+ <context>
+@@ -587,7 +592,7 @@
+ <context>
+     <name>LateralContribution</name>
+     <message>
+-        <location filename="../View/InitialConditions/translate.py" line="24"/>
++        <location filename="../View/LateralContribution/translate.py" line="35"/>
+         <source>Name</source>
+         <translation>Nom</translation>
+     </message>
+@@ -602,7 +607,7 @@
+         <translation>Lit moyen</translation>
+     </message>
+     <message>
+-        <location filename="../View/InitialConditions/translate.py" line="30"/>
++        <location filename="../View/Stricklers/translate.py" line="31"/>
+         <source>Comment</source>
+         <translation>Commentaire</translation>
+     </message>
+@@ -1715,7 +1720,7 @@ sur le plan défini par les deux points nommés extrêmes </source>
+         <translation type="unfinished"></translation>
+     </message>
+ </context>
+-<context>
++<context encoding="UTF-8">
+     <name>MainWindow_reach</name>
+     <message>
+         <location filename="../View/Frictions/PlotStricklers.py" line="76"/>
+@@ -1723,7 +1728,7 @@ sur le plan défini par les deux points nommés extrêmes </source>
+         <translation></translation>
+     </message>
+     <message>
+-        <location filename="../View/Geometry/mainwindow_ui_reach.py" line="342"/>
++        <location filename="../View/Geometry/mainwindow_ui_reach.py" line="335"/>
+         <source>Kp (m)</source>
+         <translation>Pk (m)</translation>
+     </message>
+@@ -1778,68 +1783,47 @@ sur le plan défini par les deux points nommés extrêmes </source>
+         <translation type="unfinished"></translation>
+     </message>
+     <message>
+-        <location filename="../View/Geometry/mainwindow_ui_reach.py" line="317"/>
+-        <source>Jeu de sections du Bief</source>
+-        <translation type="unfinished"></translation>
+-    </message>
+-    <message>
+-        <location filename="../View/Geometry/mainwindow_ui_reach.py" line="319"/>
+-        <source>
+-Ordre des sections : Amont --&gt; Aval</source>
+-        <translation type="unfinished"></translation>
+-    </message>
+-    <message>
+-        <location filename="../View/Geometry/mainwindow_ui_reach.py" line="323"/>
+-        <source>Pk = </source>
+-        <translation type="unfinished"></translation>
+-    </message>
+-    <message>
+-        <location filename="../View/Geometry/mainwindow_ui_reach.py" line="325"/>
+-        <source> Nouveau profil</source>
+-        <translation type="unfinished"></translation>
+-    </message>
+-    <message>
+-        <location filename="../View/Geometry/mainwindow_ui_reach.py" line="334"/>
++        <location filename="../View/Geometry/mainwindow_ui_reach.py" line="327"/>
+         <source> Trier les profils par ordre croissant des Pk</source>
+         <translation type="unfinished"></translation>
+     </message>
+     <message>
+-        <location filename="../View/Geometry/mainwindow_ui_reach.py" line="341"/>
++        <location filename="../View/Geometry/mainwindow_ui_reach.py" line="334"/>
+         <source>Name</source>
+         <translation>Nom</translation>
+     </message>
+     <message>
+-        <location filename="../View/Geometry/mainwindow_ui_reach.py" line="343"/>
++        <location filename="../View/Geometry/mainwindow_ui_reach.py" line="336"/>
+         <source>Type</source>
+         <translation>Type</translation>
+     </message>
+     <message>
+-        <location filename="../View/Geometry/mainwindow_ui_reach.py" line="345"/>
++        <location filename="../View/Geometry/mainwindow_ui_reach.py" line="338"/>
+         <source>Alt+Z</source>
+         <translation type="unfinished"></translation>
+     </message>
+     <message>
+-        <location filename="../View/Geometry/mainwindow_ui_reach.py" line="348"/>
++        <location filename="../View/Geometry/mainwindow_ui_reach.py" line="341"/>
+         <source>Alt+E</source>
+         <translation type="unfinished"></translation>
+     </message>
+     <message>
+-        <location filename="../View/Geometry/mainwindow_ui_reach.py" line="351"/>
++        <location filename="../View/Geometry/mainwindow_ui_reach.py" line="344"/>
+         <source>Alt+R</source>
+         <translation type="unfinished"></translation>
+     </message>
+     <message>
+-        <location filename="../View/Geometry/mainwindow_ui_reach.py" line="355"/>
++        <location filename="../View/Geometry/mainwindow_ui_reach.py" line="348"/>
+         <source>Vue globale automatique (Alt+S)</source>
+         <translation type="unfinished"></translation>
+     </message>
+     <message>
+-        <location filename="../View/Geometry/mainwindow_ui_reach.py" line="359"/>
++        <location filename="../View/Geometry/mainwindow_ui_reach.py" line="352"/>
+         <source>Vue globale automatique (Alt+D)</source>
+         <translation type="unfinished"></translation>
+     </message>
+     <message>
+-        <location filename="../View/Geometry/mainwindow_ui_reach.py" line="363"/>
++        <location filename="../View/Geometry/mainwindow_ui_reach.py" line="356"/>
+         <source>Vue globale automatique (Alt+F)</source>
+         <translation type="unfinished"></translation>
+     </message>
+@@ -1889,68 +1873,33 @@ Seuls les 5 premiers seront édités.</source>
+         <source>Profil sélectionné</source>
+         <translation type="unfinished"></translation>
+     </message>
+-    <message encoding="UTF-8">
+-        <location filename="../View/Geometry/mainwindow_ui_reach.py" line="324"/>
+-        <source> Importer une géométrie</source>
+-        <translation type="unfinished"></translation>
+-    </message>
+-    <message encoding="UTF-8">
+-        <location filename="../View/Geometry/mainwindow_ui_reach.py" line="326"/>
+-        <source> Supprimer le profil sélectionné</source>
+-        <translation type="unfinished"></translation>
+-    </message>
+-    <message encoding="UTF-8">
+-        <location filename="../View/Geometry/mainwindow_ui_reach.py" line="327"/>
+-        <source> Éditer le profil sélectionné</source>
+-        <translation type="unfinished"></translation>
+-    </message>
+     <message encoding="UTF-8">
+         <location filename="../View/Geometry/mainwindow_ui_reach.py" line="328"/>
+-        <source> Copier le profil sélectionné</source>
+-        <translation type="unfinished"></translation>
+-    </message>
+-    <message encoding="UTF-8">
+-        <location filename="../View/Geometry/mainwindow_ui_reach.py" line="329"/>
+-        <source>Coller le profil en fin de liste (penser à modifier le Pk avant de trier)</source>
+-        <translation type="unfinished"></translation>
+-    </message>
+-    <message encoding="UTF-8">
+-        <location filename="../View/Geometry/mainwindow_ui_reach.py" line="332"/>
+-        <source> Dupliquer la section sélectionnée</source>
+-        <translation type="unfinished"></translation>
+-    </message>
+-    <message encoding="UTF-8">
+-        <location filename="../View/Geometry/mainwindow_ui_reach.py" line="335"/>
+         <source> Trier les profils par ordre décroissant des Pk</source>
+         <translation type="unfinished"></translation>
+     </message>
+     <message encoding="UTF-8">
+-        <location filename="../View/Geometry/mainwindow_ui_reach.py" line="336"/>
++        <location filename="../View/Geometry/mainwindow_ui_reach.py" line="329"/>
+         <source> Changer l&apos;ordre des profils (en décalant le profil sélectionné vers le haut)</source>
+         <translation type="unfinished"></translation>
+     </message>
+     <message encoding="UTF-8">
+-        <location filename="../View/Geometry/mainwindow_ui_reach.py" line="338"/>
++        <location filename="../View/Geometry/mainwindow_ui_reach.py" line="331"/>
+         <source> Changer l&apos;ordre des profils (en décalant le profil sélectionné vers le bas)</source>
+         <translation type="unfinished"></translation>
+     </message>
+     <message encoding="UTF-8">
+-        <location filename="../View/Geometry/mainwindow_ui_reach.py" line="340"/>
+-        <source> Terminer l&apos;édition</source>
+-        <translation type="unfinished"></translation>
+-    </message>
+-    <message encoding="UTF-8">
+-        <location filename="../View/Geometry/mainwindow_ui_reach.py" line="346"/>
++        <location filename="../View/Geometry/mainwindow_ui_reach.py" line="339"/>
+         <source>Vue isométrique (Alt+Z)</source>
+         <translation type="unfinished"></translation>
+     </message>
+     <message encoding="UTF-8">
+-        <location filename="../View/Geometry/mainwindow_ui_reach.py" line="349"/>
++        <location filename="../View/Geometry/mainwindow_ui_reach.py" line="342"/>
+         <source>Vue isométrique (Alt+E)</source>
+         <translation type="unfinished"></translation>
+     </message>
+     <message encoding="UTF-8">
+-        <location filename="../View/Geometry/mainwindow_ui_reach.py" line="352"/>
++        <location filename="../View/Geometry/mainwindow_ui_reach.py" line="345"/>
+         <source>Vue isométrique (Alt+R)</source>
+         <translation type="unfinished"></translation>
+     </message>
+@@ -1960,7 +1909,7 @@ Seuls les 5 premiers seront édités.</source>
+         <translation type="unfinished">Altitude (m)</translation>
+     </message>
+     <message>
+-        <location filename="../View/Geometry/PlotKPZ.py" line="66"/>
++        <location filename="../View/Geometry/PlotAC.py" line="73"/>
+         <source>Height (m)</source>
+         <translation type="unfinished">Hauteur (m)</translation>
+     </message>
+@@ -1969,6 +1918,56 @@ Seuls les 5 premiers seront édités.</source>
+         <source>Select destination file</source>
+         <translation type="unfinished"></translation>
+     </message>
++    <message>
++        <location filename="../View/Geometry/mainwindow_ui_reach.py" line="317"/>
++        <source>Geometry reach edit</source>
++        <translation type="unfinished"></translation>
++    </message>
++    <message>
++        <location filename="../View/Geometry/mainwindow_ui_reach.py" line="321"/>
++        <source>Kp = </source>
++        <translation type="unfinished"></translation>
++    </message>
++    <message>
++        <location filename="../View/Geometry/mainwindow_ui_reach.py" line="322"/>
++        <source> Import geometry</source>
++        <translation type="unfinished"></translation>
++    </message>
++    <message>
++        <location filename="../View/Geometry/mainwindow_ui_reach.py" line="323"/>
++        <source> New profile</source>
++        <translation type="unfinished"></translation>
++    </message>
++    <message>
++        <location filename="../View/Geometry/mainwindow_ui_reach.py" line="324"/>
++        <source> Delete selected profile</source>
++        <translation type="unfinished"></translation>
++    </message>
++    <message>
++        <location filename="../View/Geometry/mainwindow_ui_reach.py" line="325"/>
++        <source> Editer selected profile</source>
++        <translation type="unfinished"></translation>
++    </message>
++    <message>
++        <location filename="../View/Geometry/PlotAC.py" line="69"/>
++        <source>Transverse abscissa (m)</source>
++        <translation type="unfinished"></translation>
++    </message>
++    <message>
++        <location filename="../View/Geometry/PlotAC.py" line="79"/>
++        <source>Previous cross-section</source>
++        <translation type="unfinished"></translation>
++    </message>
++    <message>
++        <location filename="../View/Geometry/PlotAC.py" line="80"/>
++        <source>Cross-section</source>
++        <translation type="unfinished"></translation>
++    </message>
++    <message>
++        <location filename="../View/Geometry/PlotAC.py" line="81"/>
++        <source>Next cross-section</source>
++        <translation type="unfinished"></translation>
++    </message>
+ </context>
+ <context>
+     <name>Network</name>
+@@ -2071,7 +2070,7 @@ Seuls les 5 premiers seront édités.</source>
+     <message>
+         <location filename="../View/SedimentLayers/Edit/translate.py" line="9"/>
+         <source>Type</source>
+-        <translation type="unfinished">Type</translation>
++        <translation type="obsolete">Type</translation>
+     </message>
+     <message>
+         <location filename="../View/SedimentLayers/Reach/Profile/Window.py" line="68"/>
diff --git a/doc/paper/2023/simhydro/images/BC.png b/doc/paper/2023/simhydro/images/BC.png
new file mode 100644
index 0000000000000000000000000000000000000000..990383b7e1ca2153a77ee73892634b865698fc8b
Binary files /dev/null and b/doc/paper/2023/simhydro/images/BC.png differ
diff --git a/doc/paper/2023/simhydro/images/apply_sedi.png b/doc/paper/2023/simhydro/images/apply_sedi.png
new file mode 100644
index 0000000000000000000000000000000000000000..00b12edbc2d1eabf69de5a4ff557f2f7917bf3eb
Binary files /dev/null and b/doc/paper/2023/simhydro/images/apply_sedi.png differ
diff --git a/doc/paper/2023/simhydro/images/edit_sedi.png b/doc/paper/2023/simhydro/images/edit_sedi.png
new file mode 100644
index 0000000000000000000000000000000000000000..6124e3b93fe258db128a4fd988443f0e651040cf
Binary files /dev/null and b/doc/paper/2023/simhydro/images/edit_sedi.png differ
diff --git a/doc/paper/2023/simhydro/images/friction.png b/doc/paper/2023/simhydro/images/friction.png
new file mode 100644
index 0000000000000000000000000000000000000000..a02b0b306e2bf5b60a4ee39f49f7baecbe494e61
Binary files /dev/null and b/doc/paper/2023/simhydro/images/friction.png differ
diff --git a/doc/paper/2023/simhydro/images/geometry_saar.png b/doc/paper/2023/simhydro/images/geometry_saar.png
new file mode 100644
index 0000000000000000000000000000000000000000..b8d0e397b8412fe04bc24c72350fb7079073b73d
Binary files /dev/null and b/doc/paper/2023/simhydro/images/geometry_saar.png differ
diff --git a/doc/paper/2023/simhydro/images/geometry_saar_annoted.png b/doc/paper/2023/simhydro/images/geometry_saar_annoted.png
new file mode 100644
index 0000000000000000000000000000000000000000..f198ece5eb7bf88fce8a56fc4a909de88904bdd8
Binary files /dev/null and b/doc/paper/2023/simhydro/images/geometry_saar_annoted.png differ
diff --git a/doc/paper/2023/simhydro/images/init_Saar.png b/doc/paper/2023/simhydro/images/init_Saar.png
new file mode 100644
index 0000000000000000000000000000000000000000..450da3c1fa7939f6ceefbbd2364ef7e40f6d1794
Binary files /dev/null and b/doc/paper/2023/simhydro/images/init_Saar.png differ
diff --git a/doc/paper/2023/simhydro/images/network.png b/doc/paper/2023/simhydro/images/network.png
new file mode 100644
index 0000000000000000000000000000000000000000..2c0c2a530d9c1f4ba308b9258ddcc7997f1b8780
Binary files /dev/null and b/doc/paper/2023/simhydro/images/network.png differ
diff --git a/doc/paper/2023/simhydro/images/network_a.png b/doc/paper/2023/simhydro/images/network_a.png
new file mode 100644
index 0000000000000000000000000000000000000000..5e8b3853c64a090cd482d42ac07558ba4d164711
Binary files /dev/null and b/doc/paper/2023/simhydro/images/network_a.png differ
diff --git a/doc/paper/2023/simhydro/images/network_saar.png b/doc/paper/2023/simhydro/images/network_saar.png
new file mode 100644
index 0000000000000000000000000000000000000000..b7006c4ff280482f6b9d94b225416402b4ce205b
Binary files /dev/null and b/doc/paper/2023/simhydro/images/network_saar.png differ
diff --git a/doc/paper/2023/simhydro/images/results_hydro.png b/doc/paper/2023/simhydro/images/results_hydro.png
new file mode 100644
index 0000000000000000000000000000000000000000..3bc67a1ad50e59092ed591998280d8505fc1b158
Binary files /dev/null and b/doc/paper/2023/simhydro/images/results_hydro.png differ
diff --git a/doc/paper/2023/simhydro/images/results_sedi.png b/doc/paper/2023/simhydro/images/results_sedi.png
new file mode 100644
index 0000000000000000000000000000000000000000..4f6d77d7d1529cc28890964cf48a9a995f4c822a
Binary files /dev/null and b/doc/paper/2023/simhydro/images/results_sedi.png differ
diff --git a/doc/paper/2023/simhydro/images/solver_log.png b/doc/paper/2023/simhydro/images/solver_log.png
new file mode 100644
index 0000000000000000000000000000000000000000..d4325e1983f4573006f5f22ff55c716a55e3c5dd
Binary files /dev/null and b/doc/paper/2023/simhydro/images/solver_log.png differ
diff --git a/doc/paper/2023/simhydro/paper.odt b/doc/paper/2023/simhydro/paper.odt
new file mode 100644
index 0000000000000000000000000000000000000000..42dea463f8609c27a6da18c2424c4e58c6b42aed
Binary files /dev/null and b/doc/paper/2023/simhydro/paper.odt differ
diff --git a/doc/paper/2023/simhydro/paper.txt b/doc/paper/2023/simhydro/paper.txt
new file mode 100644
index 0000000000000000000000000000000000000000..9cca1e53c64d7e891f8971f20271d39772c11285
--- /dev/null
+++ b/doc/paper/2023/simhydro/paper.txt
@@ -0,0 +1,131 @@
+Pamhyr2: a graphical user interface for 1D hydro-sedimentary modelling of rivers 
+Pierre-Antoine Rouby1, Benoît Camenen, Lionel Pénard, Léa Kieffer, Théophile Terraz1
+INRAE, UR RiverLy, centre de Lyon-Grenoble, 5 rue de la Doua, CS20244, 69625, Villeurbanne, France.
+pierre-antoine.rouby@inrae.fr, benoit.camenen@inrae.fr, lionel.penard@inrae.fr, 
+lea.kieffer@inrae.fr, theophile.terraz@inrae.fr
+KEY WORDS
+1D modelling, sedimentary modelling, user interface
+Abstract
+In numerical river simulation, one-dimensional models are commonly used to study water level and discharge for large domains or long time series. These models are less time-consuming than two- and three-dimensional numerical models, and require fewer input parameters and allow ensemble runs. To build a one-dimensional hydraulic model, a pre- and post-processing tool is needed for creating reach geometry, specifying initial and boundary conditions, friction coefficients and other numerical parameters. Such a tool needs to ensure the consistency of the model and provide a user-friendly graphical user interface. In this article, we present Pamhyr2, the fully rebuilt version of the PAMHYR modelling platform. It is developed using Python, PyQt and Matplotlib. Pamhyr2 is free and open-source, multilingual, cross-platform (Linux, Windows) and is generic enough to accept various one-dimensional solvers. Pamhyr2 includes and enhances all the features from the previous version: multiple-reach modelling, geometry definition from cross-section data, initial and boundary conditions, friction coefficients, hydraulic structures, lateral inflow, punctual intake and the results visualization window. In addition, this version includes new features such as pollutants modelling, bed-load and bed evolution. We describe several windows: the creation of sedimentary layers in the river bed, the sediment characteristics for each layer, the sediment, and pollutant boundary conditions and the lateral inputs. These functionalities are illustrated with simple examples. We finally show the visualization windows for bed evolution. 
+1.	introduction
+Numerous tools are available to simulate river flow. Among them, one-dimensional (1D) numerical hydraulic models have the advantage of being accurate while being inexpensive in terms of computation time, making it possible to simulate long rivers over very long timescales. A lot of 1D numerical solvers for river hydraulics are available, including HEC-RAS2, Mike 113 and Mascaret4 for example. However, in order to investigate specific research issues it is essential to have the ability to edit the source code of numeric solvers and to have an ergonomic Graphical User Interace (GUI). Most of the widespread 1D modeling tools are either written with a proprietary source code (such as HEC-RAS and Mike 11) or are research tools with irregularly maintained GUI. On its side, INRAE has been developing two 1D solvers for over 40 years: Mage5 [5]  and RubarBE6. In parallel, a GUI named PAMHyR has been developed to enable modelers to build river models, parameterize calculations, launch Mage and RubarBE solvers and post-process the results [3].
+
+	PAMHyR, developed in Java since the end of 90s (originally named X-NT), it is written with the following constraints in mind: 
+    • Multi-platform Windows, Unix-like,
+    • no dependence on an external graphics library with a paid license for user, 
+    • generate as much code as possible from a UML diagram.
+Now, PAMHyR suffers from complexity due to highly specific interface, as well as a significant technological debt [4]: old external library no longer maintained, over dated project architecture, and numerous modifications by multiple developers (and internship) over short periods of time, with no vision of long-term maintainability. What's more, the software is only in French and the code is closed (the sources are not available), which is a hindrance to the notoriety of the software as well as to the vitality of development. In addition, no significant changes have been made in the application since 2016, even if PAMHyR is still often used for river modeling [2].
+INRAE needs a new tool to keep up with today’s technologies and with the development of its numerical solvers. In this paper we introduce the current work on the new graphical user interface Pamhyr2.
+2.	Objective
+2.1	History and need 
+PAMHyR is available for two solvers, with two different types of studies: Mage and RubarBE. These two different kinds of studies have mostly similar interfaces, but have their own specific features. They can both be used to: define reach geometry, boundary conditions, lateral inflows, overflows, friction, and structures. In addition, you can run the solver on the study you are editing, and view the solver's results. Firstly, although both Mage and RubarBE are multiple-reach compatible, only the Mage interface enables multiple-reach study editing. Secondly, many small details change from one interface to the next. In addition, the latest Mage features, for example, are not available for modeling in the interface.
+
+	A total overhaul of the Java code would be too much work, given the technological debt accumulated since the beginning of its development. Given the workload involved in modernizing PAMHyR, the decision is made to develop a new version of the software from scratch. This version should be equivalent to the Java version in terms of functionality, and add new features, notably the new Mage functionalities. The aim is also to have an interface that is more modern, more user-friendly, more flexible, available on multiple platforms and in different languages. The interface must also have a certain degree of generality and be able to adapt to different solvers without major changes to the interface. It is also important that the code is open to contributions, to keep the project as lively as possible.
+2.2	Technical choices
+From a technical point of view, choices were made on the basis of the above-mentioned objectives (modernity, maintainability, multiplatform, multilingual, user-friendliness, flexibility), as well as: the ease of learning the technology to facilitate contribution to the software, the popularity of the technology in the scientific community and the interoperability of this technology.
+
+	We chose Python7 as our programming language. It is a popular language in the scientific world, but also in many other fields, with lot of very active software libraries. Moreover, it is a simple and interpreted language, often recommended for beginners, and practiced by beginners and experienced developers. In addition, there is the PyQT8 software library that lets you use the Qt9 GUI library, which is ideal for this project. It is very popular and active, and available on many platforms (GNU/Linux, Windows, MacOS, Unix, BSD, Android, iOS). Qt also includes a number of tools for translating interfaces into different languages. Here we use the community version of Qt, with no paid features. For graphics and visualization, the choice fell on Matplotlib10, which is very popular in the scientific community and can be used to draw a wide variety of graphics. For saving studies, the choice was made to use SQLite11, unlike the previous version which used a text file formatted in XML. The advantages of a SQLite database, in addition to being supplied with Python, include ease of use, interoperability, fast, formal structuring by table and consistency checking between tables. We have chosen to version the database to allow it to evolve with the software, and to make it possible to add columns to tables or make other minor modifications to the database without breaking the compatibility of studies from previous versions. However, PAMHyR and Pamhyr2 study files will not be compatible anymore, and previous studies have to be recreated for this version.
+
+	This new version Pamhyr2 remains closely linked to the Mage solver with which it is supplied. But the ambition of flexibility and generalization gives us the opportunity to develop an interface that can be adapted to other solvers. There can be two solutions for using a solver with Pamhyr2: either the solver adapts to Pamhyr2, or Pamhyr2 adapts to the solver. So Pamhyr2 must integrate a generic output containing the study data that can be used by other solvers, which will be launched via an external executable, and then a generic result input that must be supplied by the solver. In addition, Pamhyr2 must be able to handle the execution and reading of results for specific solvers, and the addition of a solver to Pamhyr2 must be reasonably easy for the solver developer. We have opted for the free and open source software (FOSS) [6] license GPLv312, which guarantees freedom to access, study, modify, redistribute and share. In addition, it guarantees that Pamhyr2's code will remain free and is not allowed to be added any closed-source modifications. However, it will still be possible to use closed-source solvers, because solver is not a part of Pamhyr2.
+3.	DEVELOPMENTS
+3.1	New version of PAMHYR 
+Pamhyr2 currently features the following interfaces: Editing of river network, geometry, boundary conditions, lateral contribution, friction, initial conditions, solver numerical parameters, as well as the interface for launching a solver and displaying hydraulic and sediment results.
+3.1.1	River network
+The river network corresponds to the topology of the hydraulic network of the river. River network editing (Figure 1) is performed via a window featuring a graphical network area and two tables, one with a list of nodes (zone 3) and the other with a list of reaches (zone 2). The graphic area (zone 1) lets you add, delete and move nodes. It can also be used to link nodes in the network by arrows that represent reaches. The color of the node in the graphic area depends on whether it is a downstream, upstream or internal network node. If there is more than one reach, you can use this interface to select a reach, which will then be selected for editing in the following reach-dependent windows. It is also possible to deactivate reaches, in which case they will not be used for the solver run. Tables can be used to edit additional information on nodes and reaches, such as giving them names.
+
+
+
+Figure 1: River network window for a dummy river with 8 reaches, 2 upstream node (yellow), 1 downstream node (green) and 5 internal node (blue).
+
+3.1.2	Geometry
+Geometry editing (Figure 2) is linked to a reach; the reach used will be the last reach selected in the river network window. This window contains a table with the list of the reach’s cross-sections (zone 1) and three graphics. A top view based on the XY positions of the cross-sections’ points and guidelines (zone 2). A longitudinal view of all cross-sections with the height of the guidelines’ points for each profile (zone 3). Finally, a cross-sectional view is displayed (zone 4)  showing the selected cross-section with the previous and the following one in dotted line. Each cross-section is defined by a Kilometer Point (KP) and an optional name. The KP represents the longitudinal coordinate of the cross-section in the numerical solver. It is possible to add cross-sections and then select them to access an editing window, or to import cross-sections from file. Cross-section editing window takes the form of a table showing the raw data of the points that make up the cross-section, and a graph showing the current cross-section.
+
+
+
+Figure 2: Geometry window for Saar river on the unique reach of the Saar river study.
+
+3.1.3	Boundary conditions
+Boundary conditions (BC) are associated with a network node. There are three different types: hydrograph, water level chart or rating curve, in three different categories: Liquid, solid and suspension. Boundary conditions can be added, deleted and edited. Editing a BC (Figure 3) takes the form of a two-column table (the type of column varies according to the type of BC) and a graph representing the data. Data can be copied and pasted from a spreadsheet, or edited by hand.
+
+
+
+Figure 3: Edition window of the boundary conditions hydrograph for the Saar river upstream node.
+
+
+3.1.3	Lateral contribution
+The user interface for lateral contributions is similar to that for boundary conditions, except that it applies to a part of a reach between two KP, and not to a node.
+3.1.4	Friction
+Friction editing is linked to a reach, a friction coefficient is defined and then applied to a portion of the reach between two KP (Figure 4). Friction is defined by two Strickler coefficients, one for the river's main channel and one for the flood plain. The list of available Strickler coefficients is defined at the study level.
+
+
+
+Figure 4: The reach portions for friction coefficient edition window for the Saar study.
+
+3.1.5	Initial conditions
+The initial conditions (Figure 5) are also linked to the reach, corresponding to the water level and flow rate at the initial time of the simulation. These two values can be defined separately for each cross-section of the reach. It is also possible to use predefined functions to generate a water line and flow rate.
+
+
+
+Figure 5:  Initial conditions edition window for the Saar study and the Saar reach. Initial conditions initialized with minimal height of 3 meter and a constant flow rate of 100 m3/s.
+
+3.1.6	Running a solver
+Solver numerical parameters are defined using a key/value table specific to each type of solver known to Pamhyr2. You can select and run the desired solver from the list of configured solvers. Then a window appears with a text area where you can follow the progress of file export and solver output in Figure 6 (zone 3). You can also pause, stop or restart the solver using buttons (zone 1). Once the simulation has finished, you can open a solver trace file, and if the simulation has finished correctly, you can open the results using the “results” button (zone 2).
+
+
+
+Figure 6:  Solver log window for “Elargissement” tests case with a mage solver named “src”.
+
+3.1.7	Results processing and visualization
+The post processing window is made up of tables allowing you to select the reaches, profiles, and timestamps for visualizing the results. The results are presented in different tabs according to the type of data displayed. The Figure 7 shows hydraulic data with water level at a given reach, profile, and time. The graphs shown here are the same as those in the geometry window, with the addition of water level results at a given time.
+
+
+
+Figure 7: Hydraulics results window for “Elargissement” tests case with a Mage solver at timestamps 2113200.0 sec for reach R1 and cross-section at KP 427.7778.
+
+3.2	New features
+Some new features are already implemented in Pamhyr2. First of all, the software is multilingual with English and French currently available. An other very useful enhancement, is the possibility to use the “Ctrl+Z” or “Ctrl+Shift+Z” shortcuts to undo or redo the user actions.
+
+	Another novelty lies in the initial conditions window. Previously the water line could be generated by constant height or altitude. It is now possible to give a minimum height with an increasing function from downstream to upstream, thus avoiding physically unrealistic water holes and getting a little closer to a real and physically coherent water line (Figure 5).
+
+	An important new feature in this version is the presence of sediment layers. They can be defined as shown in Figure 8. Sediment layers can be applied separately for each cross-section (Figure 9). As with friction, they must first be defined and then applied to a profile. They can also be applied separately to each point of a cross-section. Layers are defined by a thickness, a median diameter (D50), a grain size sorting coefficient (Sigma) and a critical shear stress as described in Pierre Balayn PhD thesis [1]. The visualization of sedimentary results is currently done using a plot of the river profile, which shows the evolution of the bed bottom and the thickness of layers as a function of time (Figure 10).
+
+
+
+Figure 8: Sediment layers definition window for Saar study. This sediment layers has three layers (L1, L2 and F).
+
+
+
+
+Figure 9: Sediment layers defined in Figure 8 applied to the reach Saar.
+
+
+
+
+Figure 10: Sedimentary results window for “Elargissement” tests case at timestamps 2113200.0 sec for reach R1 and cross-section at KP 427.7778. This example has only two sediment layers.
+
+4.	Future work
+Old PAMHyR functionalities and additional functionalities, allowed the definition of structures, traps, suspended solids or dissolved pollutants in water, have yet to be developed. Additional options for visualizing results also need to be added. One possibility would be a graph generation tool that would allow the user to select x-axis and y-axis values, as well as the time range, to create a customized graph. We also planned an advanced feature with code-editing window to enable the user to define his own Matplotlib drawing function, which would be saved in the study. Presentation work is also planned to harmonize the application's icons and visuals (images, graphics, etc.). The aim is to make the application clearer and more user-friendly.
+
+	Supporting new solvers and generic solvers will also be an important part of the remaining work. To use any solver, we need to define a generic output format for Pamhyr2 that is simple enough to be given as solver input without major code modification, or that can be processed by a simple Python script (for example). The same applies to the results file that Pamhyr2 will have to read. The main candidates for these generic formats are :
+    • SQLite, because it is easy to use and the library is compatible with most programming languages,
+    • HDF513, a hierarchical file format widely used in scientific circles and compatible with many programming languages.
+
+	As the project progresses, it becomes more and more complicated to test all the functionalities by hand. A suite of tests and unit tests is needed to prevent regression bugs and ensure that the code remains maintainable. For the moment, no such test has been defined. Unit tests will have to be developed on the model and each sub-module will have to include tests, but higher-level functionalities will also have to be tested, such as the recording and playback of a complete study. It will be difficult to test the graphical part automatically, so tests will continue to be carried out manually.
+
+	Full documentation must also be provided to give users an overview of the features offered by Pamhyr2. This documentation must include descriptions of the configuration options, as well as explanations and examples of how to use each feature. In addition, this documentation must include a section for contributors and developers, with a technical presentation of the application, as well as a presentation of the translation, development and debugging tools available.
+
+	For translations into other languages than English and French, we hope that external contributors will take on this work. But no languages other are currently planned by the development team. The application packages are currently available for GNU/Linux and Windows. Under GNU/Linux, a “.tar.xz” archive is available for download. For Windows, this is an installer for application and a compatible version of Mage. An installer for GNU/Linux systems is a work in progress. There are many choices for creating an installer, but their scope depends on the distribution for which they are intended. “.deb”, for example, is intended for Debian distributions and their derivatives (Ubuntu, Linux Mint, and so on). We do not exclude other, more generic options.
+5.	Conclusion
+After a great deal of preparatory work, experimentation, technical selection, proof-of-concept and several months of development, Pamhyr2 is currently in version “v0.0.0”14 and contains almost 20,000 lines of Python code. It allows to create a minimal 1D hydro-sedimentary study, run a Mage simulation and visualize some of the results obtained, all with a more user-friendly interface. But the software is still unstable and under development, and many modifications and improvements are still to be made before it can really be used by everyone. Furthermore, even though many of the features of the original version of PAMHyR are already available (see 3.1 page 3), there are still many to be added to make Pamhyr2 a complete, useful and fully functional piece of software.
+ACKNOWLEDGEMENTS
+The results presented here partially come from the Pamhyr PITI project funded by the Carnot Eau & Environnement institute and the French National Research Agency. Carnot Eau & Environnement was accredited in March 2020 by the French Ministry of Research and Higher Education on the proposal of the Agence Nationale de la Recherche. The signatory members are INRAE, CNRS, Aix Marseille University, IFTS, INSA Lyon, IRD, Université de Montpellier and Université de Savoie Mont-Blanc.
+
+The authors thank Sylvain Coulibaly for his preparatory work and his technical choices.
+REFERENCES and Citations
+[1]	Balayn, P. (2001). Contribution à la modélisation numérique de l'évolution morphologique des cours d'eau aménagés lors de crues. Université Claude Bernard - Lyon 1
+[2]	Camenen, B., Faure, J. Décanis, S. Diéval, L. (2021) A 1D numerical tool for real time modelling of a complex river network, SimHydro 2021
+[3]	Faure, J. (2013). An Integrated Simulation platform - PAMHyR. In John Wiley & Sons, Inc. eBooks (pp. 245–252). https://doi.org/10.1002/9781118557891.ch21
+[4]	Faure, J. (2017). Développement d’Adis-TS. OSR4 | Action V.1. https://hal.science/hal-03749339
+[5]	Faure, J-B., (2019). Mage, Résolution des équations de Barré de St Venant 1D en réseaux complexes, Documentation théorique et mode d’emploi. Techreport (in French)
+[6]	Walt, S. 2007. Free/open source software development. In Proceedings of the the 6th joint meeting of the European software engineering conference and the ACM SIGSOFT symposium on The foundations of software engineering (ESEC-FSE '07). Association for Computing Machinery, New York, NY, USA, 459–468. https://doi.org/10.1145/1287624.1287689
+
diff --git a/src/Model/Stricklers/Stricklers.py b/src/Model/Stricklers/Stricklers.py
index 302862db2f3390828c103eba9e10871f008861b3..e18fd01d35cf2ffba5eaf41bc83e503c18dcb6ad 100644
--- a/src/Model/Stricklers/Stricklers.py
+++ b/src/Model/Stricklers/Stricklers.py
@@ -38,7 +38,7 @@ class Stricklers(SQLSubModel):
         else:
             self.id = id
 
-        Stricklers._id_cnt = max(Stricklers._id_cnt + 1, self.id)
+        Stricklers._id_cnt = max(Stricklers._id_cnt + 1, id + 1)
 
         self._name = name
         self._comment = comment
diff --git a/src/View/BoundaryCondition/translate.py b/src/View/BoundaryCondition/translate.py
index c4ff8f8815e620d75bbde9030d82224c43acb160..172999a7743c0837f1c22e2eca129f52efc7ff52 100644
--- a/src/View/BoundaryCondition/translate.py
+++ b/src/View/BoundaryCondition/translate.py
@@ -29,9 +29,9 @@ _translate = QCoreApplication.translate
 long_types = {
     "ND": _translate("BoundaryCondition", "Not defined"),
     "PC": _translate("BoundaryCondition", "Ponctual contribution"),
-    "TZ": _translate("BoundaryCondition", "Time over Z"),
-    "TD": _translate("BoundaryCondition", "Time over Discharge"),
-    "ZD": _translate("BoundaryCondition", "Z over Discharge"),
+    "TZ": _translate("BoundaryCondition", "TimeZ"),
+    "TD": _translate("BoundaryCondition", "TimeDischarge"),
+    "ZD": _translate("BoundaryCondition", "ZDischarge"),
     "SL": _translate("BoundaryCondition", "Solid"),
 }
 
diff --git a/src/View/Geometry/PlotAC.py b/src/View/Geometry/PlotAC.py
index fe6d933f4cf0420ff2a172a633b3ad0c5f877a93..e43f39e962d0170c2f029840388f2b941af77f4e 100644
--- a/src/View/Geometry/PlotAC.py
+++ b/src/View/Geometry/PlotAC.py
@@ -67,18 +67,18 @@ class PlotAC(APlot):
         gl = self.data.profile(selected_profile).names()
 
         self.canvas.axes.set_xlabel(
-            _translate("MainWindow_reach", "Abscisse en travers (m)"),
+            _translate("MainWindow_reach", "Transverse abscissa (m)"),
             color='green', fontsize=12
         )
         self.canvas.axes.set_ylabel(
-            _translate("MainWindow_reach", "Cote (m)"),
+            _translate("MainWindow_reach", "Height (m)"),
             color='green', fontsize=12
         )
         self.canvas.figure.tight_layout()
 
-        label_before_plot_selected = _translate("MainWindow_reach", "Profil précédent")
-        label_plot_selected = _translate("MainWindow_reach", "Profil sélectionné")
-        label_after_plot_selected = _translate("MainWindow_reach", "Profil suivant")
+        label_before_plot_selected = _translate("MainWindow_reach", "Previous cross-section")
+        label_plot_selected = _translate("MainWindow_reach", "Cross-section")
+        label_after_plot_selected = _translate("MainWindow_reach", "Next cross-section")
         color_before_plot_selected = "k"  # 'grey'
         color_plot_selected = 'b'
         color_after_plot_selected = 'm'
diff --git a/src/View/Geometry/Window.py b/src/View/Geometry/Window.py
index 7776d737389c564c89b4bb752cb0dfc600ddc7b8..1c8cb5da4fb18af85068426a9c77199300ac2162 100644
--- a/src/View/Geometry/Window.py
+++ b/src/View/Geometry/Window.py
@@ -111,7 +111,7 @@ class GeometryWindow(ASubMainWindow, ListedSubWindow):
         self.ui.btn_sort_desc.triggered.connect(self.sort_descending)
         self.ui.btn_move_up.triggered.connect(self.move_row_up)
         self.ui.btn_move_down.triggered.connect(self.move_row_down)
-        self.ui.btn_end_editing.triggered.connect(self.handleSave)
+        # self.ui.btn_end_editing.triggered.connect(self.handleSave)
         self.ui.btn_add.triggered.connect(self.insert_row)
         self.ui.btn_delete.triggered.connect(self.delete_rows)
         self.ui.btn_edit.triggered.connect(self.edit_profile)
diff --git a/src/View/Geometry/mainwindow_ui_reach.py b/src/View/Geometry/mainwindow_ui_reach.py
index f3bf00186d16082d3ab30365e3916d7d049bd870..ff0797abb82315050c198f4799fb20d9c9f34931 100644
--- a/src/View/Geometry/mainwindow_ui_reach.py
+++ b/src/View/Geometry/mainwindow_ui_reach.py
@@ -95,29 +95,29 @@ class Ui_MainWindow(object):
         self.btn_edit.setIcon(icon_btn_edit)
         self.toolBar.addAction(self.btn_edit)
 
-        self.btn_copy_selected_profile = QtWidgets.QAction(self.widget)
-        self.btn_copy_selected_profile.setObjectName("btn_copy_selected_profile")
-        icon_btn_copy_selected_profile = QtGui.QIcon()
-        icon_btn_copy_selected_profile.addPixmap(
-            QtGui.QPixmap(f"{icon_path}gtk-copy.png"))
-        self.btn_copy_selected_profile.setIcon(icon_btn_copy_selected_profile)
-        self.toolBar.addAction(self.btn_copy_selected_profile)
-
-        self.btn_paste_selected_profile = QtWidgets.QAction(self.widget)
-        self.btn_paste_selected_profile.setObjectName("btn_paste_selected_profile")
-        icon_btn_paste_selected_profile = QtGui.QIcon()
-        icon_btn_paste_selected_profile.addPixmap(
-            QtGui.QPixmap(f"{icon_path}gtk-paste.png"))
-        self.btn_paste_selected_profile.setIcon(icon_btn_paste_selected_profile)
-        self.toolBar.addAction(self.btn_paste_selected_profile)
-
-        self.btn_duplicate_selected_profile = QtWidgets.QAction(self.widget)
-        self.btn_duplicate_selected_profile.setObjectName("btn_duplicate_selected_profile")
-        icon_btn_duplicate_selected_profile = QtGui.QIcon()
-        icon_btn_duplicate_selected_profile.addPixmap(
-            QtGui.QPixmap(f"{icon_path}gtk-dnd-multiple.png"))
-        self.btn_duplicate_selected_profile.setIcon(icon_btn_duplicate_selected_profile)
-        self.toolBar.addAction(self.btn_duplicate_selected_profile)
+        # self.btn_copy_selected_profile = QtWidgets.QAction(self.widget)
+        # self.btn_copy_selected_profile.setObjectName("btn_copy_selected_profile")
+        # icon_btn_copy_selected_profile = QtGui.QIcon()
+        # icon_btn_copy_selected_profile.addPixmap(
+        #     QtGui.QPixmap(f"{icon_path}gtk-copy.png"))
+        # self.btn_copy_selected_profile.setIcon(icon_btn_copy_selected_profile)
+        # self.toolBar.addAction(self.btn_copy_selected_profile)
+
+        # self.btn_paste_selected_profile = QtWidgets.QAction(self.widget)
+        # self.btn_paste_selected_profile.setObjectName("btn_paste_selected_profile")
+        # icon_btn_paste_selected_profile = QtGui.QIcon()
+        # icon_btn_paste_selected_profile.addPixmap(
+        #     QtGui.QPixmap(f"{icon_path}gtk-paste.png"))
+        # self.btn_paste_selected_profile.setIcon(icon_btn_paste_selected_profile)
+        # self.toolBar.addAction(self.btn_paste_selected_profile)
+
+        # self.btn_duplicate_selected_profile = QtWidgets.QAction(self.widget)
+        # self.btn_duplicate_selected_profile.setObjectName("btn_duplicate_selected_profile")
+        # icon_btn_duplicate_selected_profile = QtGui.QIcon()
+        # icon_btn_duplicate_selected_profile.addPixmap(
+        #     QtGui.QPixmap(f"{icon_path}gtk-dnd-multiple.png"))
+        # self.btn_duplicate_selected_profile.setIcon(icon_btn_duplicate_selected_profile)
+        # self.toolBar.addAction(self.btn_duplicate_selected_profile)
 
         self.btn_sort_asc = QtWidgets.QAction(self.widget)
         self.btn_sort_asc.setObjectName("btn_sort_asc")
@@ -151,13 +151,13 @@ class Ui_MainWindow(object):
         self.btn_move_down.setIcon(icon_btn_move_down)
         self.toolBar.addAction(self.btn_move_down)
 
-        self.btn_end_editing = QtWidgets.QAction(self.widget)
-        self.btn_end_editing.setObjectName("btn_end_editing")
-        icon_btn_save = QtGui.QIcon()
-        icon_btn_save.addPixmap(
-            QtGui.QPixmap(f"{icon_path}gtk-apply.png"))
-        self.btn_end_editing.setIcon(icon_btn_save)
-        self.toolBar.addAction(self.btn_end_editing)
+        # self.btn_end_editing = QtWidgets.QAction(self.widget)
+        # self.btn_end_editing.setObjectName("btn_end_editing")
+        # icon_btn_save = QtGui.QIcon()
+        # icon_btn_save.addPixmap(
+        #     QtGui.QPixmap(f"{icon_path}gtk-apply.png"))
+        # self.btn_end_editing.setIcon(icon_btn_save)
+        # self.toolBar.addAction(self.btn_end_editing)
 
         self.verticalLayout.addLayout(self.horizontalLayout)
         self.tableView = QtWidgets.QTableView(self.widget)
@@ -314,30 +314,23 @@ class Ui_MainWindow(object):
     def retranslateUi(self, MainWindow_reach):
         _translate = QtCore.QCoreApplication.translate
         self.name_reach = ""
-        self.mainwindow_title = _translate("MainWindow_reach", "Jeu de sections du Bief")
+        self.mainwindow_title = _translate("MainWindow_reach", "Geometry reach edit")
         MainWindow_reach.setWindowTitle(self.mainwindow_title + f"{self.name_reach}")
-        self.text_section_order = _translate("MainWindow_reach", "\nOrdre des sections : "
-                                                                 "Amont --> Aval")
         # self.label_section_order.setText(f"{self.text_section_order}")
         self.vertical_slider_value = ""
-        self.vertical_slider_label.setText(_translate("MainWindow_reach", "Pk = ") + f"{self.vertical_slider_value}")
-        self.btn_open.setToolTip(_translate("MainWindow_reach", " Importer une géométrie"))
-        self.btn_add.setToolTip(_translate("MainWindow_reach", " Nouveau profil"))
-        self.btn_delete.setToolTip(_translate("MainWindow_reach", " Supprimer le profil sélectionné"))
-        self.btn_edit.setToolTip(_translate("MainWindow_reach", " Éditer le profil sélectionné"))
-        self.btn_copy_selected_profile.setToolTip(_translate("MainWindow_reach", " Copier le profil sélectionné"))
-        self.btn_paste_selected_profile.setToolTip(_translate("MainWindow_reach", "Coller le profil en fin de liste ("
-                                                                                  "penser à modifier le Pk avant de "
-                                                                                  "trier)"))
-        self.btn_duplicate_selected_profile.setToolTip(
-            _translate("MainWindow_reach", " Dupliquer la section sélectionnée"))
+        self.vertical_slider_label.setText(_translate("MainWindow_reach", "Kp = ") + f"{self.vertical_slider_value}")
+        self.btn_open.setToolTip(_translate("MainWindow_reach", " Import geometry"))
+        self.btn_add.setToolTip(_translate("MainWindow_reach", " New profile"))
+        self.btn_delete.setToolTip(_translate("MainWindow_reach", " Delete selected profile"))
+        self.btn_edit.setToolTip(_translate("MainWindow_reach", " Editer selected profile"))
+
         self.btn_sort_asc.setToolTip(_translate("MainWindow_reach", " Trier les profils par ordre croissant des Pk"))
         self.btn_sort_desc.setToolTip(_translate("MainWindow_reach", " Trier les profils par ordre décroissant des Pk"))
         self.btn_move_up.setToolTip(_translate("MainWindow_reach", " Changer l'ordre des profils (en décalant le "
                                                                    "profil sélectionné vers le haut)"))
         self.btn_move_down.setToolTip(_translate("MainWindow_reach", " Changer l'ordre des profils (en décalant le "
                                                                      "profil sélectionné vers le bas)"))
-        self.btn_end_editing.setToolTip(_translate("MainWindow_reach", " Terminer l'édition"))
+        # self.btn_end_editing.setToolTip(_translate("MainWindow_reach", " Terminer l'édition"))
         self.tableView_header = [_translate("MainWindow_reach", "Name"),
                                  _translate("MainWindow_reach", "Kp (m)"),
                                  _translate("MainWindow_reach", "Type")]
diff --git a/src/View/InitialConditions/translate.py b/src/View/InitialConditions/translate.py
index 370d4a22381ee73fe4c7ad5fbeb2c275158e94c9..3fe45f75b11802ea9de932796c68f2f8a17ebe51 100644
--- a/src/View/InitialConditions/translate.py
+++ b/src/View/InitialConditions/translate.py
@@ -21,11 +21,11 @@ from PyQt5.QtCore import QCoreApplication
 _translate = QCoreApplication.translate
 
 table_headers = {
-    "name": _translate("LateralContribution", "Name"),
+    # "name": _translate("LateralContribution", "Name"),
     "kp": _translate("LateralContribution", "KP (m)"),
     # "speed": _translate("LateralContribution", "Speed (m/s)"),
     "discharge": _translate("LateralContribution", "Discharge (m³/s)"),
     "elevation": _translate("LateralContribution", "Elevation (m)"),
     "height": _translate("LateralContribution", "Height (m)"),
-    "comment": _translate("LateralContribution", "Comment"),
+    # "comment": _translate("LateralContribution", "Comment"),
 }
diff --git a/src/View/Network/GraphWidget.py b/src/View/Network/GraphWidget.py
index 870792b84de7cef30efbf386e413d98d8b1876cc..f7b5acd05a75efd16bc732dc0c12329acbbfe7df 100644
--- a/src/View/Network/GraphWidget.py
+++ b/src/View/Network/GraphWidget.py
@@ -584,7 +584,7 @@ class GraphWidget(QGraphicsView):
                 if item:
                     item.update()
         except Exception as e:
-            logger.debug(str(e))
+            logger.warning(str(e))
 
     def selected_new_edge_src_node(self):
         """The current node item selected to add new edge
@@ -626,12 +626,15 @@ class GraphWidget(QGraphicsView):
         Returns:
             Nothing
         """
-        previous_edge = self._current_edge
-        self._current_edge = edge
-        self.graph.set_current_reach(edge.edge)
+        try:
+            previous_edge = self._current_edge
+            self._current_edge = edge
+            self.graph.set_current_reach(edge.edge)
 
-        if previous_edge:
-            previous_edge.update()
+            if previous_edge:
+                previous_edge.update()
+        except Exception as e:
+            logger.warning(str(e))
 
     def reset_selection(self):
         """Reset all the selected items
diff --git a/src/View/SedimentLayers/Edit/translate.py b/src/View/SedimentLayers/Edit/translate.py
index fe9e44a923ad21bf50cb1051e6868f82c16678a5..d3499e861249b6735c2ae0ed9e95f2d2409d3337 100644
--- a/src/View/SedimentLayers/Edit/translate.py
+++ b/src/View/SedimentLayers/Edit/translate.py
@@ -6,9 +6,9 @@ _translate = QCoreApplication.translate
 
 table_headers = {
     "name": _translate("SedimentLayers", "Name"),
-    "type": _translate("SedimentLayers", "Type"),
-    "height": _translate("Sedimentlayers", "Height"),
-    "d50": _translate("Sedimentlayers", "D50"),
-    "sigma": _translate("Sedimentlayers", "Sigma"),
-    "critical_constraint": _translate("Sedimentlayers", "Critical constraint"),
+    # "type": _translate("SedimentLayers", "Type"),
+    "height": _translate("SedimentLayers", "Height"),
+    "d50": _translate("SedimentLayers", "D50"),
+    "sigma": _translate("SedimentLayers", "Sigma"),
+    "critical_constraint": _translate("SedimentLayers", "Critical constraint"),
 }
diff --git a/src/View/SedimentLayers/Reach/Profile/translate.py b/src/View/SedimentLayers/Reach/Profile/translate.py
index 33e204b33552e41cece53621407ab7f0fbe3774c..99312b93c61719eb6dc73dd4b190dec38192a4c7 100644
--- a/src/View/SedimentLayers/Reach/Profile/translate.py
+++ b/src/View/SedimentLayers/Reach/Profile/translate.py
@@ -7,7 +7,7 @@ _translate = QCoreApplication.translate
 table_headers = {
     "x": _translate("SedimentLayers", "X (m)"),
     "y": _translate("SedimentLayers", "Y (m)"),
-    "z": _translate("SedimentLazers", "Z (m)"),
+    "z": _translate("SedimentLayers", "Z (m)"),
     "name": _translate("SedimentLayers", "Name"),
     "sl": _translate("SedimentLayers", "Sediment layers"),
 }
diff --git a/src/lang/fr.ts b/src/lang/fr.ts
index 68aec0c36dec860f2112883162f05677521cca91..a8dad28ed88b51856363576e23923ab286a2ac74 100644
--- a/src/lang/fr.ts
+++ b/src/lang/fr.ts
@@ -1,5 +1,6 @@
 <?xml version="1.0" encoding="utf-8"?>
-<!DOCTYPE TS><TS version="2.0" language="fr_FR" sourcelanguage="en_150">
+<!DOCTYPE TS>
+<TS version="2.1" language="fr_FR" sourcelanguage="en_150">
 <context>
     <name>About</name>
     <message>
@@ -60,21 +61,6 @@
         <source>Ponctual contribution</source>
         <translation>Contributions ponctuelles</translation>
     </message>
-    <message>
-        <location filename="../View/BoundaryCondition/translate.py" line="32"/>
-        <source>Time over Z</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../View/BoundaryCondition/translate.py" line="33"/>
-        <source>Time over Discharge</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../View/BoundaryCondition/translate.py" line="34"/>
-        <source>Z over Discharge</source>
-        <translation type="unfinished"></translation>
-    </message>
     <message>
         <location filename="../View/BoundaryCondition/translate.py" line="39"/>
         <source>Name</source>
@@ -92,23 +78,33 @@
     </message>
     <message>
         <location filename="../View/BoundaryCondition/Edit/translate.py" line="12"/>
-        <source>Discharge (m&#xb3;/s)</source>
-        <translation type="obsolete">Débit (m³/s)</translation>
-    </message>
-    <message encoding="UTF-8">
-        <location filename="../View/BoundaryCondition/Edit/translate.py" line="28"/>
         <source>Discharge (m³/s)</source>
-        <translation type="unfinished"></translation>
+        <translation type="obsolete">Débit (m³/s)</translation>
     </message>
     <message>
         <location filename="../View/BoundaryCondition/Edit/translate.py" line="30"/>
         <source>Solid (kg/s)</source>
-        <translation type="unfinished"></translation>
+        <translation>Solide (kg/s)</translation>
     </message>
     <message>
         <location filename="../View/BoundaryCondition/translate.py" line="35"/>
         <source>Solid</source>
-        <translation type="unfinished">Solide</translation>
+        <translation>Solide</translation>
+    </message>
+    <message>
+        <location filename="../View/BoundaryCondition/translate.py" line="32"/>
+        <source>TimeZ</source>
+        <translation>TempsHauteur</translation>
+    </message>
+    <message>
+        <location filename="../View/BoundaryCondition/translate.py" line="33"/>
+        <source>TimeDischarge</source>
+        <translation>TempsDébit</translation>
+    </message>
+    <message>
+        <location filename="../View/BoundaryCondition/translate.py" line="34"/>
+        <source>ZDischarge</source>
+        <translation>HauteurDébit</translation>
     </message>
 </context>
 <context>
@@ -116,7 +112,7 @@
     <message>
         <location filename="../Checker/Mage.py" line="41"/>
         <source>Mage network graph {mode} checker</source>
-        <translation type="unfinished"></translation>
+        <translation>Vérificateur {mode} graph reseaux hydraulique pour Mage</translation>
     </message>
     <message>
         <location filename="../Checker/Mage.py" line="42"/>
@@ -126,7 +122,7 @@
     <message>
         <location filename="../Checker/Study.py" line="32"/>
         <source>Study network reach checker</source>
-        <translation type="unfinished"></translation>
+        <translation>Vérificateur des biefs de l&apos;étude</translation>
     </message>
     <message>
         <location filename="../Checker/Study.py" line="33"/>
@@ -377,62 +373,62 @@
     <message>
         <location filename="../Model/Except.py" line="53"/>
         <source>Generic error message</source>
-        <translation type="unfinished"></translation>
+        <translation>Message d&apos;erreur générique</translation>
     </message>
     <message>
         <location filename="../Model/Except.py" line="59"/>
         <source>Undefined error message</source>
-        <translation type="unfinished"></translation>
+        <translation>Message d&apos;érreur non définie</translation>
     </message>
     <message>
         <location filename="../Model/Except.py" line="74"/>
         <source>Method not implemented</source>
-        <translation type="unfinished"></translation>
+        <translation>Méthode non implémenter</translation>
     </message>
     <message>
         <location filename="../Model/Except.py" line="99"/>
         <source>Method</source>
-        <translation type="unfinished"></translation>
+        <translation>Méthode</translation>
     </message>
     <message>
         <location filename="../Model/Except.py" line="99"/>
         <source>not implemented</source>
-        <translation type="unfinished"></translation>
+        <translation>Non implémenter</translation>
     </message>
     <message>
         <location filename="../Model/Except.py" line="99"/>
         <source>for class</source>
-        <translation type="unfinished"></translation>
+        <translation>pour classe</translation>
     </message>
     <message>
         <location filename="../Model/Except.py" line="96"/>
         <source>Not implemented method</source>
-        <translation type="unfinished"></translation>
+        <translation>Méthode non implémenter</translation>
     </message>
     <message>
         <location filename="../Model/Except.py" line="109"/>
         <source>FileFormatError</source>
-        <translation type="unfinished"></translation>
+        <translation>ErreurFormatDeFichier</translation>
     </message>
     <message>
         <location filename="../Model/Except.py" line="117"/>
         <source>Invalid file format:</source>
-        <translation type="unfinished"></translation>
+        <translation>Format de fichier invalide :</translation>
     </message>
     <message>
         <location filename="../Model/Except.py" line="123"/>
         <source>File format error</source>
-        <translation type="unfinished"></translation>
+        <translation>Erreur de format de fichier</translation>
     </message>
     <message>
         <location filename="../Model/Except.py" line="126"/>
         <source>Invalid file format</source>
-        <translation type="unfinished"></translation>
+        <translation>Format de fichier invalide</translation>
     </message>
     <message>
         <location filename="../Model/Except.py" line="129"/>
         <source>Invalid file</source>
-        <translation type="unfinished"></translation>
+        <translation>Fichier invalide</translation>
     </message>
     <message>
         <location filename="../Model/Except.py" line="129"/>
@@ -457,12 +453,12 @@
     <message>
         <location filename="../Model/Except.py" line="158"/>
         <source>Invalid clipboard data format:</source>
-        <translation type="unfinished"></translation>
+        <translation>Format des données du presse-papier invalide :</translation>
     </message>
     <message>
         <location filename="../Model/Except.py" line="172"/>
         <source>Clipboard format unknown</source>
-        <translation type="unfinished"></translation>
+        <translation>Presse-papier format inconnu</translation>
     </message>
 </context>
 <context>
@@ -587,7 +583,7 @@
 <context>
     <name>LateralContribution</name>
     <message>
-        <location filename="../View/InitialConditions/translate.py" line="24"/>
+        <location filename="../View/LateralContribution/translate.py" line="35"/>
         <source>Name</source>
         <translation>Nom</translation>
     </message>
@@ -602,7 +598,7 @@
         <translation>Lit moyen</translation>
     </message>
     <message>
-        <location filename="../View/InitialConditions/translate.py" line="30"/>
+        <location filename="../View/Stricklers/translate.py" line="31"/>
         <source>Comment</source>
         <translation>Commentaire</translation>
     </message>
@@ -703,13 +699,8 @@
     </message>
     <message>
         <location filename="../View/InitialConditions/translate.py" line="11"/>
-        <source>Discharge (m&#xb3;/s)</source>
-        <translation type="obsolete">Débit (m³/s)</translation>
-    </message>
-    <message encoding="UTF-8">
-        <location filename="../View/InitialConditions/translate.py" line="27"/>
         <source>Discharge (m³/s)</source>
-        <translation type="unfinished"></translation>
+        <translation type="obsolete">Débit (m³/s)</translation>
     </message>
 </context>
 <context>
@@ -1414,26 +1405,6 @@
         <source>Define initial conditions</source>
         <translation>Définire les conditions initiales</translation>
     </message>
-    <message encoding="UTF-8">
-        <location filename="../View/ui/MainWindow.ui" line="553"/>
-        <source>Édition des Tronçons</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message encoding="UTF-8">
-        <location filename="../View/ui/MainWindow.ui" line="667"/>
-        <source>Ouvrir une étude</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message encoding="UTF-8">
-        <location filename="../View/ui/MainWindow.ui" line="679"/>
-        <source>Enrégistrer étude en cours (Ctrl+S)</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message encoding="UTF-8">
-        <location filename="../View/ui/MainWindow.ui" line="694"/>
-        <source>Fermer étude en cours (Ctrl+F)</source>
-        <translation type="unfinished"></translation>
-    </message>
     <message>
         <location filename="../View/ui/SolverLog.ui" line="106"/>
         <source>results</source>
@@ -1457,67 +1428,67 @@
     <message>
         <location filename="../View/ui/MainWindow.ui" line="170"/>
         <source>&amp;Sediment</source>
-        <translation type="unfinished"></translation>
+        <translation>&amp;Sédiments</translation>
     </message>
     <message>
         <location filename="../View/ui/MainWindow.ui" line="891"/>
         <source>Sediment layers</source>
-        <translation type="unfinished"></translation>
+        <translation>Couche sédimentaires</translation>
     </message>
     <message>
         <location filename="../View/ui/MainWindow.ui" line="896"/>
         <source>Edit reach sediment layers</source>
-        <translation type="unfinished"></translation>
+        <translation>Éditer les couches sédimentaires</translation>
     </message>
     <message>
         <location filename="../View/ui/EditSedimentLayers.ui" line="66"/>
         <source>Add a new sediment layer</source>
-        <translation type="unfinished"></translation>
+        <translation>Ajouter une nouvelle couche sédimentaire</translation>
     </message>
     <message>
         <location filename="../View/ui/EditSedimentLayers.ui" line="81"/>
         <source>Delete selected sediment layer(s)</source>
-        <translation type="unfinished"></translation>
+        <translation>Supprimer une courche sédimentaire</translation>
     </message>
     <message>
         <location filename="../View/ui/EditSedimentLayers.ui" line="96"/>
         <source>Move up</source>
-        <translation type="unfinished"></translation>
+        <translation>Monter</translation>
     </message>
     <message>
         <location filename="../View/ui/EditSedimentLayers.ui" line="108"/>
         <source>Move down</source>
-        <translation type="unfinished"></translation>
+        <translation>Descendre</translation>
     </message>
     <message>
         <location filename="../View/ui/Results.ui" line="83"/>
         <source>Sediment</source>
-        <translation type="unfinished"></translation>
+        <translation>Sédiment</translation>
     </message>
     <message>
         <location filename="../View/ui/ProfileSedimentLayers.ui" line="89"/>
         <source>Edit sediment layers list</source>
-        <translation type="unfinished"></translation>
+        <translation>Éditer la liste des couches sédimentaires</translation>
     </message>
     <message>
         <location filename="../View/ui/ReachSedimentLayers.ui" line="38"/>
         <source>Apply sediment layers on all reach</source>
-        <translation type="unfinished"></translation>
+        <translation>Appliquer une liste de courches sédimentaires</translation>
     </message>
     <message>
         <location filename="../View/ui/ReachSedimentLayers.ui" line="80"/>
         <source>Edit profile</source>
-        <translation type="unfinished"></translation>
+        <translation>Éditer le profile</translation>
     </message>
     <message>
         <location filename="../View/ui/ReachSedimentLayers.ui" line="83"/>
         <source>Edit profile sediment layer</source>
-        <translation type="unfinished"></translation>
+        <translation>Éditer les couches sédimentaires du profile</translation>
     </message>
     <message>
         <location filename="../View/ui/ProfileSedimentLayers.ui" line="62"/>
         <source>Add sediment layers</source>
-        <translation type="unfinished"></translation>
+        <translation>Ajouter des couches</translation>
     </message>
     <message>
         <location filename="../View/ui/ProfileSedimentLayers.ui" line="65"/>
@@ -1527,7 +1498,7 @@
     <message>
         <location filename="../View/ui/ProfileSedimentLayers.ui" line="74"/>
         <source>Delete sediment layers</source>
-        <translation type="unfinished"></translation>
+        <translation>Supprimer couche sédimentaires</translation>
     </message>
     <message>
         <location filename="../View/ui/ProfileSedimentLayers.ui" line="77"/>
@@ -1539,8 +1510,28 @@
         <source>Edit sediment layers</source>
         <translation type="unfinished"></translation>
     </message>
+    <message>
+        <location filename="../View/ui/MainWindow.ui" line="553"/>
+        <source>Édition des Tronçons</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../View/ui/MainWindow.ui" line="667"/>
+        <source>Ouvrir une étude</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../View/ui/MainWindow.ui" line="679"/>
+        <source>Enrégistrer étude en cours (Ctrl+S)</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../View/ui/MainWindow.ui" line="694"/>
+        <source>Fermer étude en cours (Ctrl+F)</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
-<context encoding="UTF-8">
+<context>
     <name>MainWindowProfile</name>
     <message>
         <location filename="../View/Geometry/Profile/Window.py" line="83"/>
@@ -1550,7 +1541,7 @@
     <message>
         <location filename="../View/Geometry/Profile/Window.py" line="87"/>
         <source>(no name)</source>
-        <translation type="unfinished"></translation>
+        <translation type="unfinished">(sans nom)</translation>
     </message>
     <message>
         <location filename="../View/Geometry/Profile/Window.py" line="382"/>
@@ -1614,103 +1605,103 @@
         <source>Cote (m)</source>
         <translation type="unfinished"></translation>
     </message>
-    <message encoding="UTF-8">
+    <message>
         <location filename="../View/Geometry/Profile/Window.py" line="328"/>
         <source>Suppression les lignes incomplètes</source>
         <translation type="unfinished"></translation>
     </message>
-    <message encoding="UTF-8">
+    <message>
         <location filename="../View/Geometry/Profile/Window.py" line="328"/>
         <source>Supprimer les lignes des cellules non renseignées ?</source>
         <translation type="unfinished"></translation>
     </message>
-    <message encoding="UTF-8">
+    <message>
         <location filename="../View/Geometry/Profile/Window.py" line="371"/>
         <source>Suppression des noms répétés</source>
         <translation type="unfinished"></translation>
     </message>
-    <message encoding="UTF-8">
+    <message>
         <location filename="../View/Geometry/Profile/Window.py" line="382"/>
         <source>Etes-vous sûr de vouloir quitter ?</source>
         <translation type="unfinished"></translation>
     </message>
-    <message encoding="UTF-8">
-        <location filename="../View/Geometry/Profile/mainwindow_ui_profile.py" line="225"/>
+    <message>
+        <location filename="../View/Geometry/Profile/mainwindow_ui_profile.py" line="224"/>
         <source>Insérer un point</source>
         <translation type="unfinished"></translation>
     </message>
-    <message encoding="UTF-8">
-        <location filename="../View/Geometry/Profile/mainwindow_ui_profile.py" line="226"/>
+    <message>
+        <location filename="../View/Geometry/Profile/mainwindow_ui_profile.py" line="225"/>
         <source>Supprimer le/les point(s) sélectionnés</source>
         <translation type="unfinished"></translation>
     </message>
-    <message encoding="UTF-8">
-        <location filename="../View/Geometry/Profile/mainwindow_ui_profile.py" line="230"/>
+    <message>
+        <location filename="../View/Geometry/Profile/mainwindow_ui_profile.py" line="229"/>
         <source>Trier les points par ordre décroissant de X</source>
         <translation type="unfinished"></translation>
     </message>
-    <message encoding="UTF-8">
-        <location filename="../View/Geometry/Profile/mainwindow_ui_profile.py" line="235"/>
+    <message>
+        <location filename="../View/Geometry/Profile/mainwindow_ui_profile.py" line="234"/>
         <source>Trier les points par ordre décroissant de Y</source>
         <translation type="unfinished"></translation>
     </message>
-    <message encoding="UTF-8">
-        <location filename="../View/Geometry/Profile/mainwindow_ui_profile.py" line="237"/>
+    <message>
+        <location filename="../View/Geometry/Profile/mainwindow_ui_profile.py" line="236"/>
         <source>Décaler le point sélectionné vers le haut</source>
         <translation type="unfinished"></translation>
     </message>
-    <message encoding="UTF-8">
-        <location filename="../View/Geometry/Profile/mainwindow_ui_profile.py" line="239"/>
+    <message>
+        <location filename="../View/Geometry/Profile/mainwindow_ui_profile.py" line="238"/>
         <source>Décaler le point sélectionné vers le bas</source>
         <translation type="unfinished"></translation>
     </message>
-    <message encoding="UTF-8">
-        <location filename="../View/Geometry/Profile/mainwindow_ui_profile.py" line="241"/>
+    <message>
+        <location filename="../View/Geometry/Profile/mainwindow_ui_profile.py" line="240"/>
         <source>Exporter (dans un fichier) les points du profil au format tabulé</source>
         <translation type="unfinished"></translation>
     </message>
-    <message encoding="UTF-8">
-        <location filename="../View/Geometry/Profile/mainwindow_ui_profile.py" line="243"/>
+    <message>
+        <location filename="../View/Geometry/Profile/mainwindow_ui_profile.py" line="242"/>
         <source>Copier la sélection au format tabulé</source>
         <translation type="unfinished"></translation>
     </message>
-    <message encoding="UTF-8">
-        <location filename="../View/Geometry/Profile/mainwindow_ui_profile.py" line="245"/>
+    <message>
+        <location filename="../View/Geometry/Profile/mainwindow_ui_profile.py" line="244"/>
         <source>Coller la sélection depuis le presse-papier au format tabulé</source>
         <translation type="unfinished"></translation>
     </message>
-    <message encoding="UTF-8">
-        <location filename="../View/Geometry/Profile/mainwindow_ui_profile.py" line="247"/>
+    <message>
+        <location filename="../View/Geometry/Profile/mainwindow_ui_profile.py" line="246"/>
         <source>Vérifier la validité de la saisie et garder ou pas les modifications apportées</source>
         <translation type="unfinished"></translation>
     </message>
-    <message encoding="UTF-8">
-        <location filename="../View/Geometry/Profile/mainwindow_ui_profile.py" line="250"/>
+    <message>
+        <location filename="../View/Geometry/Profile/mainwindow_ui_profile.py" line="249"/>
         <source>Annuler toutes les modifications depuis la dernière validation</source>
         <translation type="unfinished"></translation>
     </message>
-    <message encoding="UTF-8">
-        <location filename="../View/Geometry/Profile/mainwindow_ui_profile.py" line="252"/>
+    <message>
+        <location filename="../View/Geometry/Profile/mainwindow_ui_profile.py" line="251"/>
         <source>Annuler toutes les modifications et revenir à l&apos;état initial</source>
         <translation type="unfinished"></translation>
     </message>
-    <message encoding="UTF-8">
-        <location filename="../View/Geometry/Profile/mainwindow_ui_profile.py" line="254"/>
-        <source>Ligne d&apos;eau : 
- <byte value="x9"/>Z : Cote (m) 
- <byte value="x9"/>A : Aire mouillée (mu00B2) 
- <byte value="x9"/>p : Périmètre mouillé (m) 
- <byte value="x9"/>L : Largeur au miroir (m)</source>
+    <message>
+        <location filename="../View/Geometry/Profile/mainwindow_ui_profile.py" line="253"/>
+        <source>Ligne d&apos;eau :
+ 	Z : Cote (m)
+ 	A : Aire mouillée (mu00B2)
+ 	p : Périmètre mouillé (m)
+ 	L : Largeur au miroir (m)</source>
         <translation type="unfinished"></translation>
     </message>
-    <message encoding="UTF-8">
-        <location filename="../View/Geometry/Profile/mainwindow_ui_profile.py" line="258"/>
+    <message>
+        <location filename="../View/Geometry/Profile/mainwindow_ui_profile.py" line="257"/>
         <source>&apos;Maj + Clic&apos; : Ligne d&apos;eau &amp; &apos;Ctrl + Clic&apos; : Sélectionner des points</source>
         <translation type="unfinished"></translation>
     </message>
-    <message encoding="UTF-8">
+    <message>
         <location filename="../View/Geometry/Profile/Table.py" line="142"/>
-        <source>Abscisse en travers calculée en projétant les points 
+        <source>Abscisse en travers calculée en projétant les points
 sur le plan défini par les deux points nommés extrêmes </source>
         <translation type="unfinished"></translation>
     </message>
@@ -1720,10 +1711,10 @@ sur le plan défini par les deux points nommés extrêmes </source>
     <message>
         <location filename="../View/Frictions/PlotStricklers.py" line="76"/>
         <source>Stricklers</source>
-        <translation></translation>
+        <translation>Stricklers</translation>
     </message>
     <message>
-        <location filename="../View/Geometry/mainwindow_ui_reach.py" line="342"/>
+        <location filename="../View/Geometry/mainwindow_ui_reach.py" line="335"/>
         <source>Kp (m)</source>
         <translation>Pk (m)</translation>
     </message>
@@ -1778,68 +1769,47 @@ sur le plan défini par les deux points nommés extrêmes </source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../View/Geometry/mainwindow_ui_reach.py" line="317"/>
-        <source>Jeu de sections du Bief</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../View/Geometry/mainwindow_ui_reach.py" line="319"/>
-        <source>
-Ordre des sections : Amont --&gt; Aval</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../View/Geometry/mainwindow_ui_reach.py" line="323"/>
-        <source>Pk = </source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../View/Geometry/mainwindow_ui_reach.py" line="325"/>
-        <source> Nouveau profil</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../View/Geometry/mainwindow_ui_reach.py" line="334"/>
+        <location filename="../View/Geometry/mainwindow_ui_reach.py" line="327"/>
         <source> Trier les profils par ordre croissant des Pk</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../View/Geometry/mainwindow_ui_reach.py" line="341"/>
+        <location filename="../View/Geometry/mainwindow_ui_reach.py" line="334"/>
         <source>Name</source>
         <translation>Nom</translation>
     </message>
     <message>
-        <location filename="../View/Geometry/mainwindow_ui_reach.py" line="343"/>
+        <location filename="../View/Geometry/mainwindow_ui_reach.py" line="336"/>
         <source>Type</source>
         <translation>Type</translation>
     </message>
     <message>
-        <location filename="../View/Geometry/mainwindow_ui_reach.py" line="345"/>
+        <location filename="../View/Geometry/mainwindow_ui_reach.py" line="338"/>
         <source>Alt+Z</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../View/Geometry/mainwindow_ui_reach.py" line="348"/>
+        <location filename="../View/Geometry/mainwindow_ui_reach.py" line="341"/>
         <source>Alt+E</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../View/Geometry/mainwindow_ui_reach.py" line="351"/>
+        <location filename="../View/Geometry/mainwindow_ui_reach.py" line="344"/>
         <source>Alt+R</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../View/Geometry/mainwindow_ui_reach.py" line="355"/>
+        <location filename="../View/Geometry/mainwindow_ui_reach.py" line="348"/>
         <source>Vue globale automatique (Alt+S)</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../View/Geometry/mainwindow_ui_reach.py" line="359"/>
+        <location filename="../View/Geometry/mainwindow_ui_reach.py" line="352"/>
         <source>Vue globale automatique (Alt+D)</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../View/Geometry/mainwindow_ui_reach.py" line="363"/>
+        <location filename="../View/Geometry/mainwindow_ui_reach.py" line="356"/>
         <source>Vue globale automatique (Alt+F)</source>
         <translation type="unfinished"></translation>
     </message>
@@ -1863,112 +1833,127 @@ Ordre des sections : Amont --&gt; Aval</source>
         <source>Discharge (m^3/s)</source>
         <translation>Débit (m³/s)</translation>
     </message>
-    <message encoding="UTF-8">
-        <location filename="../View/Geometry/Window.py" line="164"/>
-        <source>Édition des profils sélectionnés</source>
+    <message>
+        <location filename="../View/InitialConditions/PlotDKP.py" line="44"/>
+        <source>Elevation (m)</source>
+        <translation type="unfinished">Altitude (m)</translation>
+    </message>
+    <message>
+        <location filename="../View/Geometry/PlotAC.py" line="73"/>
+        <source>Height (m)</source>
+        <translation type="unfinished">Hauteur (m)</translation>
+    </message>
+    <message>
+        <location filename="../View/Plot/navigation_toolbar_2qt.py" line="146"/>
+        <source>Select destination file</source>
         <translation type="unfinished"></translation>
     </message>
-    <message encoding="UTF-8">
-        <location filename="../View/Geometry/Window.py" line="166"/>
-        <source>Vous avez sélectionné plus de 5 profils. 
-Seuls les 5 premiers seront édités.</source>
+    <message>
+        <location filename="../View/Geometry/PlotAC.py" line="69"/>
+        <source>Transverse abscissa (m)</source>
         <translation type="unfinished"></translation>
     </message>
-    <message encoding="UTF-8">
-        <location filename="../View/Geometry/Window.py" line="322"/>
-        <source>Profil N° : </source>
+    <message>
+        <location filename="../View/Geometry/PlotAC.py" line="79"/>
+        <source>Previous cross-section</source>
         <translation type="unfinished"></translation>
     </message>
-    <message encoding="UTF-8">
-        <location filename="../View/Geometry/PlotAC.py" line="179"/>
-        <source>Profil précédent</source>
+    <message>
+        <location filename="../View/Geometry/PlotAC.py" line="80"/>
+        <source>Cross-section</source>
         <translation type="unfinished"></translation>
     </message>
-    <message encoding="UTF-8">
-        <location filename="../View/Geometry/PlotAC.py" line="180"/>
-        <source>Profil sélectionné</source>
+    <message>
+        <location filename="../View/Geometry/PlotAC.py" line="81"/>
+        <source>Next cross-section</source>
         <translation type="unfinished"></translation>
     </message>
-    <message encoding="UTF-8">
-        <location filename="../View/Geometry/mainwindow_ui_reach.py" line="324"/>
-        <source> Importer une géométrie</source>
+    <message>
+        <location filename="../View/Geometry/mainwindow_ui_reach.py" line="317"/>
+        <source>Geometry reach edit</source>
         <translation type="unfinished"></translation>
     </message>
-    <message encoding="UTF-8">
-        <location filename="../View/Geometry/mainwindow_ui_reach.py" line="326"/>
-        <source> Supprimer le profil sélectionné</source>
+    <message>
+        <location filename="../View/Geometry/mainwindow_ui_reach.py" line="321"/>
+        <source>Kp = </source>
         <translation type="unfinished"></translation>
     </message>
-    <message encoding="UTF-8">
-        <location filename="../View/Geometry/mainwindow_ui_reach.py" line="327"/>
-        <source> Éditer le profil sélectionné</source>
+    <message>
+        <location filename="../View/Geometry/mainwindow_ui_reach.py" line="322"/>
+        <source> Import geometry</source>
         <translation type="unfinished"></translation>
     </message>
-    <message encoding="UTF-8">
-        <location filename="../View/Geometry/mainwindow_ui_reach.py" line="328"/>
-        <source> Copier le profil sélectionné</source>
+    <message>
+        <location filename="../View/Geometry/mainwindow_ui_reach.py" line="323"/>
+        <source> New profile</source>
         <translation type="unfinished"></translation>
     </message>
-    <message encoding="UTF-8">
-        <location filename="../View/Geometry/mainwindow_ui_reach.py" line="329"/>
-        <source>Coller le profil en fin de liste (penser à modifier le Pk avant de trier)</source>
+    <message>
+        <location filename="../View/Geometry/mainwindow_ui_reach.py" line="324"/>
+        <source> Delete selected profile</source>
         <translation type="unfinished"></translation>
     </message>
-    <message encoding="UTF-8">
-        <location filename="../View/Geometry/mainwindow_ui_reach.py" line="332"/>
-        <source> Dupliquer la section sélectionnée</source>
+    <message>
+        <location filename="../View/Geometry/mainwindow_ui_reach.py" line="325"/>
+        <source> Editer selected profile</source>
         <translation type="unfinished"></translation>
     </message>
-    <message encoding="UTF-8">
-        <location filename="../View/Geometry/mainwindow_ui_reach.py" line="335"/>
-        <source> Trier les profils par ordre décroissant des Pk</source>
+    <message>
+        <location filename="../View/Geometry/Window.py" line="164"/>
+        <source>Édition des profils sélectionnés</source>
         <translation type="unfinished"></translation>
     </message>
-    <message encoding="UTF-8">
-        <location filename="../View/Geometry/mainwindow_ui_reach.py" line="336"/>
-        <source> Changer l&apos;ordre des profils (en décalant le profil sélectionné vers le haut)</source>
+    <message>
+        <location filename="../View/Geometry/Window.py" line="166"/>
+        <source>Vous avez sélectionné plus de 5 profils.
+Seuls les 5 premiers seront édités.</source>
         <translation type="unfinished"></translation>
     </message>
-    <message encoding="UTF-8">
-        <location filename="../View/Geometry/mainwindow_ui_reach.py" line="338"/>
-        <source> Changer l&apos;ordre des profils (en décalant le profil sélectionné vers le bas)</source>
+    <message>
+        <location filename="../View/Geometry/Window.py" line="322"/>
+        <source>Profil N° : </source>
         <translation type="unfinished"></translation>
     </message>
-    <message encoding="UTF-8">
-        <location filename="../View/Geometry/mainwindow_ui_reach.py" line="340"/>
-        <source> Terminer l&apos;édition</source>
+    <message>
+        <location filename="../View/Geometry/PlotAC.py" line="179"/>
+        <source>Profil précédent</source>
         <translation type="unfinished"></translation>
     </message>
-    <message encoding="UTF-8">
-        <location filename="../View/Geometry/mainwindow_ui_reach.py" line="346"/>
-        <source>Vue isométrique (Alt+Z)</source>
+    <message>
+        <location filename="../View/Geometry/PlotAC.py" line="180"/>
+        <source>Profil sélectionné</source>
         <translation type="unfinished"></translation>
     </message>
-    <message encoding="UTF-8">
-        <location filename="../View/Geometry/mainwindow_ui_reach.py" line="349"/>
-        <source>Vue isométrique (Alt+E)</source>
+    <message>
+        <location filename="../View/Geometry/mainwindow_ui_reach.py" line="328"/>
+        <source> Trier les profils par ordre décroissant des Pk</source>
         <translation type="unfinished"></translation>
     </message>
-    <message encoding="UTF-8">
-        <location filename="../View/Geometry/mainwindow_ui_reach.py" line="352"/>
-        <source>Vue isométrique (Alt+R)</source>
+    <message>
+        <location filename="../View/Geometry/mainwindow_ui_reach.py" line="329"/>
+        <source> Changer l&apos;ordre des profils (en décalant le profil sélectionné vers le haut)</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../View/InitialConditions/PlotDKP.py" line="44"/>
-        <source>Elevation (m)</source>
-        <translation type="unfinished">Altitude (m)</translation>
+        <location filename="../View/Geometry/mainwindow_ui_reach.py" line="331"/>
+        <source> Changer l&apos;ordre des profils (en décalant le profil sélectionné vers le bas)</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../View/Geometry/PlotKPZ.py" line="66"/>
-        <source>Height (m)</source>
-        <translation type="unfinished">Hauteur (m)</translation>
+        <location filename="../View/Geometry/mainwindow_ui_reach.py" line="339"/>
+        <source>Vue isométrique (Alt+Z)</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
         <location filename="../View/Plot/PamhyrToolbar.py" line="148"/>
         <source>Select destination file</source>
         <translation type="unfinished"></translation>
     </message>
+    <message>
+        <location filename="../View/Geometry/mainwindow_ui_reach.py" line="345"/>
+        <source>Vue isométrique (Alt+R)</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>Network</name>
@@ -2028,7 +2013,7 @@ Seuls les 5 premiers seront édités.</source>
         <translation type="unfinished"></translation>
     </message>
 </context>
-<context encoding="UTF-8">
+<context>
     <name>Results</name>
     <message>
         <location filename="../View/Results/PlotXY.py" line="76"/>
@@ -2043,37 +2028,37 @@ Seuls les 5 premiers seront édités.</source>
     <message>
         <location filename="../View/Results/translate.py" line="24"/>
         <source>Reach name</source>
-        <translation type="unfinished"></translation>
+        <translation>Nom du bief</translation>
     </message>
     <message>
         <location filename="../View/Results/translate.py" line="28"/>
         <source>Name</source>
-        <translation type="unfinished">Nom</translation>
+        <translation>Nom</translation>
     </message>
     <message>
         <location filename="../View/Results/translate.py" line="29"/>
         <source>KP (m)</source>
-        <translation type="unfinished"></translation>
+        <translation>PK (m)</translation>
     </message>
     <message>
         <location filename="../View/Results/PlotH.py" line="132"/>
         <source>days</source>
-        <translation type="unfinished">jours</translation>
+        <translation>jours</translation>
     </message>
     <message>
         <location filename="../View/Results/PlotH.py" line="132"/>
         <source>day</source>
-        <translation type="unfinished">jour</translation>
+        <translation>jour</translation>
     </message>
     <message>
         <location filename="../View/Results/PlotH.py" line="75"/>
         <source>Time (s)</source>
-        <translation type="unfinished"></translation>
+        <translation>Temps (s)</translation>
     </message>
-    <message encoding="UTF-8">
+    <message>
         <location filename="../View/Results/PlotH.py" line="79"/>
         <source>Discharge (m³/s)</source>
-        <translation type="unfinished"></translation>
+        <translation type="obsolete">Débit (m³/s)</translation>
     </message>
 </context>
 <context>
@@ -2081,27 +2066,27 @@ Seuls les 5 premiers seront édités.</source>
     <message>
         <location filename="../View/SedimentLayers/Reach/Profile/Window.py" line="64"/>
         <source>(no name)</source>
-        <translation type="unfinished"></translation>
+        <translation>(sans nom)</translation>
     </message>
     <message>
         <location filename="../View/SedimentLayers/translate.py" line="8"/>
         <source>Name</source>
-        <translation type="unfinished">Nom</translation>
+        <translation>Nom</translation>
     </message>
     <message>
         <location filename="../View/SedimentLayers/Edit/translate.py" line="9"/>
         <source>Type</source>
-        <translation type="unfinished">Type</translation>
+        <translation type="obsolete">Type</translation>
     </message>
     <message>
         <location filename="../View/SedimentLayers/Reach/Profile/Window.py" line="68"/>
         <source>(no name - @kp)</source>
-        <translation type="unfinished"></translation>
+        <translation>(sans nom - @kp)</translation>
     </message>
     <message>
         <location filename="../View/SedimentLayers/Reach/Table.py" line="128"/>
         <source>Not defined</source>
-        <translation type="unfinished">Non définie</translation>
+        <translation>Non définie</translation>
     </message>
     <message>
         <location filename="../View/SedimentLayers/Reach/Profile/translate.py" line="8"/>
@@ -2116,33 +2101,17 @@ Seuls les 5 premiers seront édités.</source>
     <message>
         <location filename="../View/SedimentLayers/Reach/translate.py" line="10"/>
         <source>Sediment layers</source>
-        <translation type="unfinished"></translation>
+        <translation>Couche sédimentaires</translation>
     </message>
     <message>
         <location filename="../View/SedimentLayers/Reach/translate.py" line="9"/>
         <source>KP (m)</source>
-        <translation type="unfinished"></translation>
+        <translation>PK (m)</translation>
     </message>
     <message>
         <location filename="../View/SedimentLayers/translate.py" line="9"/>
         <source>Comment</source>
-        <translation type="unfinished">Commentaire</translation>
-    </message>
-</context>
-<context>
-    <name>SedimentLazers</name>
-    <message>
-        <location filename="../View/SedimentLayers/Reach/Profile/translate.py" line="10"/>
-        <source>Z (m)</source>
-        <translation type="unfinished"></translation>
-    </message>
-</context>
-<context>
-    <name>Sedimentlayers</name>
-    <message>
-        <location filename="../View/SedimentLayers/Edit/translate.py" line="10"/>
-        <source>Height</source>
-        <translation type="unfinished"></translation>
+        <translation>Commentaire</translation>
     </message>
     <message>
         <location filename="../View/SedimentLayers/Edit/translate.py" line="11"/>
@@ -2157,8 +2126,18 @@ Seuls les 5 premiers seront édités.</source>
     <message>
         <location filename="../View/SedimentLayers/Edit/translate.py" line="13"/>
         <source>Critical constraint</source>
+        <translation>Contrainte critique</translation>
+    </message>
+    <message>
+        <location filename="../View/SedimentLayers/Reach/Profile/translate.py" line="10"/>
+        <source>Z (m)</source>
         <translation type="unfinished"></translation>
     </message>
+    <message>
+        <location filename="../View/SedimentLayers/Edit/translate.py" line="10"/>
+        <source>Height</source>
+        <translation>Altitude</translation>
+    </message>
 </context>
 <context>
     <name>SolverParameters</name>
@@ -2346,42 +2325,42 @@ Seuls les 5 premiers seront édités.</source>
     <message>
         <location filename="../View/Plot/PamhyrToolbar.py" line="181"/>
         <source>Zoom</source>
-        <translation type="unfinished"></translation>
+        <translation>Zoom</translation>
     </message>
     <message>
         <location filename="../View/Plot/PamhyrToolbar.py" line="177"/>
         <source>Default view</source>
-        <translation type="unfinished"></translation>
+        <translation>Vue par défaut</translation>
     </message>
     <message>
         <location filename="../View/Plot/PamhyrToolbar.py" line="178"/>
         <source>Back to previous view</source>
-        <translation type="unfinished"></translation>
+        <translation>Retour a la vue précédente</translation>
     </message>
     <message>
         <location filename="../View/Plot/PamhyrToolbar.py" line="179"/>
         <source>Return to next view</source>
-        <translation type="unfinished"></translation>
+        <translation>Retour à la vue suivante</translation>
     </message>
     <message>
         <location filename="../View/Plot/PamhyrToolbar.py" line="180"/>
         <source>Axes panoramic</source>
-        <translation type="unfinished"></translation>
+        <translation>Axes panoramique</translation>
     </message>
     <message>
         <location filename="../View/Plot/PamhyrToolbar.py" line="183"/>
         <source>Isometric view (Shift+W)</source>
-        <translation type="unfinished"></translation>
+        <translation>Vue isométrique (Shift+W)</translation>
     </message>
     <message>
         <location filename="../View/Plot/PamhyrToolbar.py" line="184"/>
         <source>Auto scale view (Shift+X)</source>
-        <translation type="unfinished"></translation>
+        <translation>Vue automatique (Shift+X)</translation>
     </message>
     <message>
         <location filename="../View/Plot/PamhyrToolbar.py" line="182"/>
         <source>Save the figure</source>
-        <translation type="unfinished"></translation>
+        <translation>Sauvegarder la figure</translation>
     </message>
 </context>
 </TS>
diff --git a/tests_cases/Enlargement/Enlargement.pamhyr b/tests_cases/Enlargement/Enlargement.pamhyr
new file mode 100644
index 0000000000000000000000000000000000000000..12b3751da32b437e218fa5932fe18c75df6d416f
Binary files /dev/null and b/tests_cases/Enlargement/Enlargement.pamhyr differ