Commit 5e8000e2 authored by Mathias Chouet's avatar Mathias Chouet :spaghetti:
Browse files

Paramètres liables des structures parallèles: désignation directe de la structure enfant

Showing with 11 additions and 11 deletions
+11 -11
......@@ -261,7 +261,6 @@ export abstract class Nub extends ComputeNode implements IReferencedNub {
const hasUid = isStr ? false : "uid" in src;
// paramètres
for (const p of this._prms) {
// pour éviter d'ajouter le paramètre d'entrée dans le tableau résultat
const cond = hasUid ? p.uid !== src.uid : true;
......@@ -294,7 +293,6 @@ export abstract class Nub extends ComputeNode implements IReferencedNub {
}
// résultats complémentaires
const erIter = this._result.getIterableExtraResults(name);
if (erIter !== undefined) {
res.push({ name: this.addPrefix(`${this._result.name}.${name}`, prefix), value: erIter, nub: this });
......
......@@ -325,17 +325,11 @@ export class ParallelStructure extends Nub {
public getLinkableValues(src: any): any[] {
// paramètres liables de ce Nub
let res = super.getLinkableValues(src);
let i = 0;
for (const s of this._structures) {
// paramètres liables des Nub structures enfants
const l = s.getLinkableValues(src, `${i}.`, true);
// on remplace les nubs retournés par this (à cause du préfixe)
for (const lv of l) {
lv.nub = this;
}
res = res.concat(l);
const childStructureLinkableParams = s.getLinkableValues(src, undefined, true);
res = res.concat(childStructureLinkableParams);
i++;
}
return res;
......
......@@ -83,6 +83,13 @@ export abstract class Structure extends Nub {
return this._prms as StructureParams;
}
/**
* Returns the position or the current structure (starting at 0) in the parent ParallelStructure
*/
public findPositionInParent(): number {
return this.parent.getIndexForStructure(this);
}
/**
* Calcul de l'aire d'écoulement sur le seuil ou dans l'orifice
*/
......@@ -114,7 +121,8 @@ export abstract class Structure extends Nub {
this.prms.update_h1h2();
// Gestion du débit nul
const flagsNull = { ENUM_StructureFlowMode: StructureFlowMode.NULL, ENUM_StructureFlowRegime: StructureFlowRegime.NULL };
const flagsNull = { ENUM_StructureFlowMode: StructureFlowMode.NULL,
ENUM_StructureFlowRegime: StructureFlowRegime.NULL };
if (sVarCalc === "Q") {
if (this.prms.h1.v <= 0 || this.prms.Z1.v === this.prms.Z2.v || this.prms.W.v <= 0) {
return new Result(0, flagsNull);
......
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment