diff --git a/src/structure/parallel_structure.ts b/src/structure/parallel_structure.ts
index 2a17ac835199ca571973e200ee0defb87507914d..be5b634c472aef0919134ac799a9993d49f6e0ac 100644
--- a/src/structure/parallel_structure.ts
+++ b/src/structure/parallel_structure.ts
@@ -74,14 +74,7 @@ export class ParallelStructure extends Nub {
             this._result.globalLog.insert(new Message(MessageCode.ERROR_STRUCTURE_AU_MOINS_UNE));
             return this._result;
         }
-        const res = super.CalcSerie(rInit);
-
-        // check structures submergence for some discharge laws
-        for (const st of this.structures) {
-            st.checkSubmergence();
-        }
-
-        return res;
+        return super.CalcSerie(rInit);
     }
 
     /**
@@ -158,6 +151,11 @@ export class ParallelStructure extends Nub {
                 this.result.globalLog.addLog(r.globalLog);
         }
 
+        // check structures submergence for some discharge laws
+        for (const st of this.structures) {
+            st.checkSubmergence();
+        }
+
         return this.result;
     }
 
diff --git a/src/structure/structure.ts b/src/structure/structure.ts
index 951c1e259087875f0bd19e2d0c96af1336017328..c644f55be8f3d3b4c560e1e63669cd8627356c87 100644
--- a/src/structure/structure.ts
+++ b/src/structure/structure.ts
@@ -78,11 +78,11 @@ export abstract class Structure extends ChildNub {
     }
 
     /**
-     * méthode générique de vérification que l'ennoiemment est supérieur à une valeur donnée
-     * @param min valeur minimum de l'ennoiemment
+     * méthode générique de vérification que l'ennoiement est supérieur à une valeur donnée
+     * @param min valeur minimum de l'ennoiement
      */
     protected checkSubmergenceMin(min: number) {
-        const h2h1ratio = this.prms.h2.V / this.prms.h1.V;
+        const h2h1ratio = this.prms.h2.v / this.prms.h1.v;
         if (h2h1ratio < min) {
             this._result.resultElement.addMessage(new Message(
                 MessageCode.ERROR_STRUCTURE_SUBMERGENCE_LOWER_THAN,
@@ -95,7 +95,7 @@ export abstract class Structure extends ChildNub {
     }
 
     /**
-     * fonction appelée dans Calc() pour vérifier l'ennoiemment (cf. classes dérivées)
+     * fonction appelée dans Calc() pour vérifier l'ennoiement (cf. classes dérivées)
      */
     public checkSubmergence() {
     }
@@ -278,6 +278,12 @@ export abstract class Structure extends ChildNub {
         return super.Calc(sVarCalc, rInit);
     }
 
+    public CalcSerie(rInit?: number, resetDepending: boolean = true): Result {
+        const res = super.CalcSerie(rInit, resetDepending);
+        this.checkSubmergence();
+        return res;
+    }
+
     /**
      * Equation preprocessing
      * @return true if inverted discharge
diff --git a/src/structure/structure_weir_submerged.ts b/src/structure/structure_weir_submerged.ts
index f64e39cadb01b7f0127a0d6510e7d0212a23aad2..e5ef98b93eda645e7088d5c7c0a3602df3bc2c58 100644
--- a/src/structure/structure_weir_submerged.ts
+++ b/src/structure/structure_weir_submerged.ts
@@ -20,7 +20,7 @@ export class StructureWeirSubmerged extends RectangularStructure {
     }
 
     /**
-     * vérification que l'ennoiemment est supérieur à une valeur donnée
+     * vérification que l'ennoiement est supérieur à une valeur donnée
      */
     public checkSubmergence() {
         this.checkSubmergenceMin(0.6);
diff --git a/src/structure/structure_weir_submerged_larinier.ts b/src/structure/structure_weir_submerged_larinier.ts
index a2e21b1c7a3dbd65924081210a8d848b6f62d5d1..ca3843d0aad17b0befdef820deefd557640a8ff3 100644
--- a/src/structure/structure_weir_submerged_larinier.ts
+++ b/src/structure/structure_weir_submerged_larinier.ts
@@ -26,7 +26,7 @@ export class StructureWeirSubmergedLarinier extends RectangularStructure {
     }
 
     /**
-     * vérification que l'ennoiemment est supérieur à une valeur donnée
+     * vérification que l'ennoiement est supérieur à une valeur donnée
      */
     public checkSubmergence() {
         this.checkSubmergenceMin(0.5);