An error occurred while loading the file. Please try again.
-
Mathias Chouet authored
merged cParamsCanal and ParamsSection Structures are now only defined by their LoiDebit (no more StructureType) Session : fixed serialization of lately registered Nubs Sections are now defined by a CalculatorType and a NodeType fixed bug in findFirstSingleParameter added tests for session serialisation
7b6e5403
import { Result } from "../util/result";
import { RectangularStructure } from "./rectangular_structure";
import { RectangularStructureParams } from "./rectangular_structure_params";
import { Structure, StructureFlowMode, StructureFlowRegime } from "./structure";
import { LoiDebit } from "./structure_props";
export { RectangularStructureParams };
/**
* Equation de la fente noyé
* d'après Larinier, M., Travade, F., Porcher, J.-P., Gosset, C., 1992.
* Passes à poissons : expertise et conception des ouvrages de franchissement
*/
export class StructureWeirSubmergedLarinier extends RectangularStructure {
constructor(prms: RectangularStructureParams, dbg: boolean = false) {
super(prms, dbg);
this._loiDebit = LoiDebit.WeirSubmergedLarinier;
}
/**
* Calcul analytique Q = f(Cd, L, h1, h2, W) seuil dénoyé
* @param sVarCalc Variable à calculer (doit être "Q")
*/
public Equation(sVarCalc: string): Result {
Structure.CheckEquation(sVarCalc);
const data = this.getResultData();
const v = this.prms.Cd.v * this.prms.L.v * Structure.R2G
* this.prms.h1.v * Math.sqrt(this.prms.h1.v - this.prms.h2.v);
return new Result(v, this, data);
}
protected getFlowRegime() {
return StructureFlowRegime.SUBMERGED;
}
protected getFlowMode() {
return StructureFlowMode.WEIR;
}
}