diff --git a/src/base.ts b/src/base.ts
index 068ce95cedc2f01654d9bb5005fff9ddbdb45a17..183cd2b7a99731f0b5082f521f165b4b16becd34 100644
--- a/src/base.ts
+++ b/src/base.ts
@@ -23,9 +23,11 @@ export class Debug {
      * Affiche un message dans la console si le flag this.DBG est à true
      * @param s Message à afficher dans la console
      */
-    public debug(s: any) {
+    public debug(...args: any[]) {
         // tslint:disable-next-line:no-console
-        if (this._DBG) { console.log(s); }
+        if (this._DBG) {
+            console.log(...args);
+        }
     }
 
     get DBG() { return this._DBG; }
diff --git a/src/compute-node.ts b/src/compute-node.ts
index 023de3bba04d7b5b6b9108ff007fd311fde96ff6..d7364f71a916decd11d5575cd694b95e3ca829e6 100644
--- a/src/compute-node.ts
+++ b/src/compute-node.ts
@@ -44,6 +44,7 @@ export abstract class ComputeNode extends JalhydObject implements IDebug {
         super();
         this._debug = new Debug(dbg);
         this._prms = prms;
+        this.debug("PARAMS", prms);
         if (!this._prms.calculabilityDefined) {
             this._prms.resetParametersCalculability();
         }
@@ -78,8 +79,8 @@ export abstract class ComputeNode extends JalhydObject implements IDebug {
     }
 
     // interface IDebug
-    public debug(s: any) {
-        this._debug.debug(s);
+    public debug(...args: any[]) {
+        this._debug.debug(...args);
     }
 
     public get DBG(): boolean {
diff --git a/src/nub.ts b/src/nub.ts
index 99e2c66a4b7016ba2870259cca89a9b92d5f34ab..654ef1a671e43fd198bcc03a297093311323cba7 100644
--- a/src/nub.ts
+++ b/src/nub.ts
@@ -37,7 +37,7 @@ export abstract class Nub extends ComputeNode implements IReferencedNub {
     public abstract Equation(sVarCalc: string): Result;
 
     /**
-     * Calcul d'une équation quelque soit l'inconnue à calculer
+     * Calcul d'une équation quelle que soit l'inconnue à calculer
      * @param sVarCalc nom de la variable à calculer
      * @param rInit valeur initiale de la variable à calculer dans le cas de la dichotomie
      * @param rPrec précision de calcul
diff --git a/src/nub_factory.ts b/src/nub_factory.ts
index e8a5458f60404b792ea11fb00241b6d4c7d015c1..f2f80c47367b6079f1aade05b45452305382a4cf 100644
--- a/src/nub_factory.ts
+++ b/src/nub_factory.ts
@@ -52,8 +52,8 @@ export class NubFactory {
     /**
      * créé un Nub et l'ajoute à la session
      */
-    public createSessionNub(p: Props | {}): SessionNub {
-        const res = this.newSessionNub(p);
+    public createSessionNub(p: Props | {}, dbg: boolean = false): SessionNub {
+        const res = this.newSessionNub(p, dbg);
         this._session.push(res);
         return res;
     }
@@ -157,9 +157,9 @@ export class NubFactory {
         throw new Error(`NubFactory.deleteSessionNub() : le SessionNub (uid ${sn.uid}) à supprimer n'a pas été trouvé`);
     }
 
-    private newSessionNub(p: Props | {}): SessionNub {
+    private newSessionNub(p: Props | {}, dbg: boolean = false): SessionNub {
         const params = p instanceof Props ? p : new Props(p);
-        const nub = this.createNub(params);
+        const nub = this.createNub(params, dbg);
         return new SessionNub(nub, params);
     }
 
@@ -242,8 +242,9 @@ export class NubFactory {
      * @param calcType type de Nub
      * @param nodeType sous type de Nub
      * @param params paramètres supplémentaires spécifiques
+     * @param dbg activer débogage
      */
-    private createNub(params: Props): Nub {
+    private createNub(params: Props, dbg: boolean = false): Nub {
         const calcType: CalculatorType = params.getPropValue("calcType");
         const nodeType: ComputeNodeType = params.getPropValue("nodeType");
 
@@ -257,7 +258,7 @@ export class NubFactory {
                         1e-6, // Viscosité dynamique Nu
                     );
 
-                    return new ConduiteDistrib(prms);
+                    return new ConduiteDistrib(prms, dbg);
                 }
 
             case CalculatorType.LechaptCalmon:
@@ -270,15 +271,15 @@ export class NubFactory {
                         2, // paramètre M du matériau
                         5.33// paramètre N du matériau
                     );
-                    return new LechaptCalmon(prms);
+                    return new LechaptCalmon(prms, dbg);
                 }
 
             case CalculatorType.SectionParametree:
-                return new SectionParametree(this.createSection(nodeType));
+                return new SectionParametree(this.createSection(nodeType), dbg);
 
             case CalculatorType.RegimeUniforme:
                 const sect: acSection = this.createSection(nodeType);
-                const ru = new RegimeUniforme(sect);
+                const ru = new RegimeUniforme(sect, dbg);
                 return ru;
 
             case CalculatorType.CourbeRemous:
@@ -290,7 +291,7 @@ export class NubFactory {
                         5,  // Dx=Pas d'espace
                         MethodeResolution.EulerExplicite
                     );
-                    return new CourbeRemous(prms);
+                    return new CourbeRemous(prms, dbg);
                 }
 
             case CalculatorType.PabDimensions:
@@ -301,7 +302,7 @@ export class NubFactory {
                         0.5,    // Tirant d'eau Y
                         2       // Volume V
                     );
-                    return new PabDimension(prms);
+                    return new PabDimension(prms, dbg);
                 }
 
             case CalculatorType.PabPuissance:
@@ -312,7 +313,7 @@ export class NubFactory {
                         0.5,    // Volume V (m3)
                         588.6   // Puissance dissipée PV (W/m3)
                     );
-                    return new PabPuissance(prms);
+                    return new PabPuissance(prms, dbg);
                 }
 
             case CalculatorType.Structure:
@@ -326,7 +327,7 @@ export class NubFactory {
                         102, // Z1
                         101.5 // Z2
                     );
-                    return new ParallelStructure(prms);
+                    return new ParallelStructure(prms, dbg);
                 }
 
             case CalculatorType.Dever:
@@ -336,7 +337,7 @@ export class NubFactory {
                         10,  // BR : largeur du cours d'eau
                         99   // ZR : cote du lit du cours d'eau
                     );
-                    return new Dever(prms);
+                    return new Dever(prms, dbg);
                 }
 
             case CalculatorType.Cloisons:
@@ -349,7 +350,7 @@ export class NubFactory {
                             1,      // Largeur des bassins (m)
                             1,      // Profondeur moyenne (m)
                             0.5     // Hauteur de chute (m)
-                        )
+                        ), dbg
                     );
                 }