UNPKG

jalhyd

Version:

JaLHyd, a Javascript Library for Hydraulics

134 lines 4.52 kB
import { ChildNub } from "../internal_modules"; import { ParamDefinition } from "../internal_modules"; import { Result } from "../internal_modules"; import { StructureParams } from "../internal_modules"; import { LoiDebit } from "../internal_modules"; import { Nub } from "../internal_modules"; /** * Flow mode: weir or orifice flow */ export declare enum StructureFlowMode { /** Weir flow */ WEIR = 0, /** Orifice flow */ ORIFICE = 1, /** Zéro flow */ NULL = 2 } /** * Flow regime: free flow, partially submerged or submerged */ export declare enum StructureFlowRegime { /** Free flow (unsubmerged) */ FREE = 0, /** Partially submerged flow */ PARTIAL = 1, /** Submerged flow */ SUBMERGED = 2, /** Zéro flow */ NULL = 3 } /** Type de jet : Sans objet (orifice), plongeant, de surface */ export declare enum StructureJetType { /** Plongeant */ PLONGEANT = 0, /** De surface */ SURFACE = 1, /** Sans objet (orifice) */ SO = 2 } /** * classe de calcul sur la conduite distributrice */ export declare abstract class Structure extends ChildNub { /** * Test générique si VarCalc="Q" pour l'utilisation de Equation */ static CheckEquation(sVarCalc: string): void; /** * calcul du pourcentage d'ennoiement arrondi à l'unité */ computeSubmergencePercentage(H2?: number): number; /** * calcul du pourcentage d'ennoiement arrondi à l'unité (version statique) */ static computeSubmergencePercentage(h1: number, h2: number): number; /** * 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(res: Result, min: number): void; /** * fonction appelée dans Calc() pour vérifier l'ennoiement (cf. classes dérivées) */ checkSubmergence(res: Result): void; static filterResultsOnSubmergenceError(res: Result): boolean; /** Constante utile : Racine de 2g */ protected static readonly R2G: number; /** Peut-on calculer ZDV ? */ protected _isZDVcalculable: boolean; private _loiDebit; constructor(prms: StructureParams, dbg?: boolean); /** * true si la structure est une vanne levante * @see StructureVanLevLarinier * @see StructureVanLevVillemonte */ protected get isVanneLevante(): boolean; get isZDVcalculable(): boolean; /** * paramètres castés au bon type */ get prms(): StructureParams; get W(): number; get loiDebit(): LoiDebit; protected setLoiDebit(ld: LoiDebit): void; setParent(p: Nub): void; private updateStructureType; /** * Returns the nth visible parameter (used in nghyd/PabTable) */ getNthVisibleParam(n: number): ParamDefinition; /** * Calcul d'une équation quelle que soit l'inconnue à calculer. * Gestion du débit nul et de l'inversion de débit * @param sVarCalc nom de la variable à calculer * @param rInit valeur initiale de la variable à calculer dans le cas de la dichotomie */ Calc(sVarCalc: string, rInit?: number): Result; /** * Equation preprocessing * @return true if inverted discharge */ Equation(sVarCalc: string): Result; /** * Function to implement for the stage discharge equation of hydraulic structure */ protected abstract CalcQ(): Result; protected getResultData(): { ENUM_StructureFlowMode: StructureFlowMode; ENUM_StructureFlowRegime: StructureFlowRegime; ENUM_StructureJetType: StructureJetType; }; /** * paramétrage de la calculabilité des paramètres */ protected setParametersCalculability(): void; /** * Give the flow mode : weir or orifice flow */ protected getFlowMode(): StructureFlowMode; /** * Give the flow regime for a rectangular section : free, partially submerged or submerged flow */ protected getFlowRegime(): StructureFlowRegime; /** * Give the Jet Type for weir flow * Cf. Baudoin J.M., Burgun V., Chanseau M., Larinier M., Ovidio M., Sremski W., Steinbach P. et Voegtle B., 2014. * Evaluer le franchissement des obstacles par les poissons. Principes et méthodes. Onema. 200 pages */ protected getJetType(): StructureJetType; protected exposeResults(): void; getFirstAnalyticalParameter(): ParamDefinition; } //# sourceMappingURL=structure.d.ts.map