diff --git a/spec/structure/structure_test.ts b/spec/structure/structure_test.ts
index eccab9a24be49fe170c871c04b11625a70f09c8c..f0a004c7419146f61bcbe1fc9c1a62da10fd12e8 100644
--- a/spec/structure/structure_test.ts
+++ b/spec/structure/structure_test.ts
@@ -31,13 +31,6 @@ export class StructureTest extends Structure {
         return new Result(this.prms.Z1.v - this.prms.Z2.v - this.prms.ZDV.v, this, data);
     }
 
-    /**
-     * Calcul de l'aire d'écoulement sur le seuil ou dans l'orifice
-     */
-    public calcA(): number {
-        return Math.min(Math.max(this.prms.h1.v, this.prms.h2.v), this.prms.W.v);
-    }
-
 }
 
 /* Test structure with :
diff --git a/src/structure/dever.ts b/src/structure/dever.ts
index e79b7ccdd97f88d7d6b03c5990774b86fb24d456..382fb33a71f63c43686b1281e85a4698cc8da734 100644
--- a/src/structure/dever.ts
+++ b/src/structure/dever.ts
@@ -50,8 +50,6 @@ export class Dever extends ParallelStructure {
             r.resultElement.values.V = QT / (this.prms.BR.v * (this.prms.Z1.v - this.prms.ZR.v));
             // Energie cinétique dans le cours d'eau amont
             r.resultElement.values.Ec = r.resultElement.values.V * r.resultElement.values.V / (2 * 9.81);
-            // Calcul du rapport des aires sur les seuils et de l'aire du cours d'eau amont
-            const rA: number = this.calcA() / (this.prms.BR.v * (this.prms.Z1.v - this.prms.ZR.v));
             // Calcul de Cv
             this.bZcorrected = false;
             const Q0 = super.CalcQ().vCalc;
@@ -112,18 +110,6 @@ export class Dever extends ParallelStructure {
         };
     }
 
-    /**
-     * Calcul de la somme des aires des ouvrages.
-     * @note N.B. : doit être appelé après calcul si le calcul porte sur Z1 ou
-     */
-    private calcA(): number {
-        let A: number = 0;
-        for (const st of this.structures) {
-            A += st.calcA();
-        }
-        return A;
-    }
-
     /**
      * Calcul du facteur de la correction du coefficient de débit dû à la vitesse d'approche
      * @param rA Rapport entre l'aire d'écoulement des seuils et l'aire de la section amont
diff --git a/src/structure/rectangular_structure.ts b/src/structure/rectangular_structure.ts
index 366124d123b2fa245e768c637c5477c7d792e99c..ae113b2652883a1a932553fea0257139a5a4e940 100644
--- a/src/structure/rectangular_structure.ts
+++ b/src/structure/rectangular_structure.ts
@@ -22,13 +22,6 @@ export abstract class RectangularStructure extends Structure {
         return this._prms as RectangularStructureParams;
     }
 
-    /**
-     * Calcul de l'aire d'écoulement sur le seuil ou dans l'orifice
-     */
-    public calcA(): number {
-            return Math.min(Math.max(this.prms.h1.v, this.prms.h2.v), this.W) * this.prms.L.v;
-    }
-
     /**
      * paramétrage de la calculabilité des paramètres
      */
diff --git a/src/structure/structure.ts b/src/structure/structure.ts
index e4a37bf453c26a2e084f54382acb2fd0e64390ad..7dfef65ed2506a657332710ce9b97726e85d6420 100644
--- a/src/structure/structure.ts
+++ b/src/structure/structure.ts
@@ -125,11 +125,6 @@ export abstract class Structure extends ChildNub {
         return undefined;
     }
 
-    /**
-     * Calcul de l'aire d'écoulement sur le seuil ou dans l'orifice
-     */
-    public abstract calcA(): number;
-
     /**
      * Calcul d'une équation quelle que soit l'inconnue à calculer.
      * Gestion du débit nul et de l'inversion de débit
diff --git a/src/structure/structure_kivi.ts b/src/structure/structure_kivi.ts
index bd6ce28c58dafa8c7133420e348f3c6cc43e9cdb..77c7cb1986161dda7555ee9781194aaede72a589 100644
--- a/src/structure/structure_kivi.ts
+++ b/src/structure/structure_kivi.ts
@@ -53,14 +53,7 @@ export class StructureKivi extends Structure {
 
     }
 
-    /**
-     * Calcul de l'aire d'écoulement sur le seuil ou dans l'orifice
-     */
-    public calcA(): number {
-        return Math.max(this.prms.h1.v, this.prms.h2.v) * this.prms.L.v;
-    }
-
-    protected getFlowRegime(): StructureFlowRegime {
+     protected getFlowRegime(): StructureFlowRegime {
         if (this.prms.h2.v > 0) {
             return StructureFlowRegime.SUBMERGED;
         } else {
diff --git a/src/structure/structure_orifice_free.ts b/src/structure/structure_orifice_free.ts
index 3c803d7af7af2d39362c1fc67b51a9473a4d8bff..058c822ea09b6d5f228486f7e1083ecf7bad10d5 100644
--- a/src/structure/structure_orifice_free.ts
+++ b/src/structure/structure_orifice_free.ts
@@ -48,10 +48,6 @@ export class StructureOrificeFree extends Structure {
         return new Result(v, this, data);
     }
 
-    public calcA(): number {
-        return this.prms.S.v;
-    }
-
     protected getFlowRegime() {
         return StructureFlowRegime.FREE;
     }
diff --git a/src/structure/structure_orifice_submerged.ts b/src/structure/structure_orifice_submerged.ts
index f1dd43558685a24d05885c17d43d85c41cd8e421..df3878b2141c6d0fc8f33de905e5649b8d8b5a64 100644
--- a/src/structure/structure_orifice_submerged.ts
+++ b/src/structure/structure_orifice_submerged.ts
@@ -34,10 +34,6 @@ export class StructureOrificeSubmerged extends Structure {
         return new Result(v, this, data);
     }
 
-    public calcA(): number {
-        return this.prms.S.v;
-    }
-
     protected getFlowRegime() {
         return StructureFlowRegime.SUBMERGED;
     }
diff --git a/src/structure/structure_triangular_trunc_weir.ts b/src/structure/structure_triangular_trunc_weir.ts
index b313099e74aa7ed1284578a4796e91daa5499f44..0f03975e2a84d8aff0ea16a54af2d8f21d0bdc5f 100644
--- a/src/structure/structure_triangular_trunc_weir.ts
+++ b/src/structure/structure_triangular_trunc_weir.ts
@@ -43,20 +43,6 @@ export class StructureTriangularTruncWeirFree extends Structure {
         return new Result(Q, this, data);
     }
 
-    /**
-     * Calcul de l'aire d'écoulement sur le seuil
-     */
-    public calcA(): number {
-        if (this.prms.Z1.v <= this.prms.ZT.v) {
-            const h: number = Math.max(this.prms.h1.v, this.prms.h2.v);
-            return h * h * this.prms.BT.v / (this.prms.ZT.v - this.prms.ZDV.v);
-        } else {
-            const Z: number = Math.max(this.prms.Z1.v, this.prms.Z2.v);
-            return this.prms.BT.v * (this.prms.ZT.v - this.prms.ZDV.v)
-                + 2 * this.prms.BT.v * (Z - this.prms.ZT.v);
-        }
-    }
-
     protected getFlowRegime() {
         if (this.prms.Z2.v <= this.prms.ZDV.v) {
             return StructureFlowRegime.FREE;
diff --git a/src/structure/structure_triangular_weir.ts b/src/structure/structure_triangular_weir.ts
index d8b203616fe2bdcc1c460da7f3db75e2e2aed565..eeb8cdeb8a7ebc7e66fd16adf0c55cbb689bfe4a 100644
--- a/src/structure/structure_triangular_weir.ts
+++ b/src/structure/structure_triangular_weir.ts
@@ -39,13 +39,6 @@ export class StructureTriangularWeir extends Structure {
         return new Result(Q, this, data);
     }
 
-    /**
-     * Calcul de l'aire d'écoulement sur le seuil
-     */
-    public calcA(): number {
-        return Math.pow(Math.max(this.prms.h1.v, this.prms.h2.v), 2) * this.getTanFromDegrees(this.prms.alpha2.v);
-    }
-
     protected getFlowRegime() {
         if (this.prms.Z2.v <= this.prms.ZDV.v) {
             return StructureFlowRegime.FREE;