UNPKG

jalhyd

Version:

JaLHyd, a Javascript Library for Hydraulics

261 lines 8.49 kB
import { SectionType } from "../../internal_modules"; import { Nub } from "../../internal_modules"; import { ParamDefinition } from "../../internal_modules"; import { Result } from "../../internal_modules"; import { ParamsSection } from "../../internal_modules"; /** * Gestion commune pour les différents types de section. * Comprend les formules pour la section rectangulaire pour gérer les débordements */ export declare abstract class acSection extends Nub { [key: string]: any; private static _availableSectionTypes; get prms(): ParamsSection; get HautCritique(): Result; /** * true si la section est fermée (on considère alors qu'il existe une fente de Preissmann) */ protected bSnFermee: boolean; protected arCalcGeo: { [key: string]: number; }; private _hautCritique; /** * Tableau contenant les données dépendantes du tirant d'eau this->rY. * * Les clés du tableau peuvent être : * - S : la surface hydraulique * - P : le périmètre hydraulique * - R : le rayon hydraulique * - B : la largeur au miroir * - J : la perte de charge * - Fr : le nombre de Froude * - dP : la dérivée de P par rapport Y * - dR : la dérivée de R par rapport Y * - dB : la dérivée de B par rapport Y */ private arCalc; private Y_old; private Calc_old; /** * flag de débuggage pour Newton */ private _newtonDbg; private _indentCalc; /** * Construction de la classe. * Calcul des hauteurs normale et critique */ constructor(prms: ParamsSection, dbg?: boolean); static get availableSectionTypes(): { id: string; value: SectionType; }[]; get nodeType(): SectionType; protected set nodeType(nt: SectionType); /** * Forwards to parent, that has vsibility over * all the parameters, including the Section ones */ get calculatedParam(): ParamDefinition; /** * Forwards to parent, that has vsibility over * all the parameters, including the Section ones */ set calculatedParam(p: ParamDefinition); clone(): acSection; /** * Efface toutes les données calculées pour forcer le recalcul * @param bGeo Réinitialise les données de géométrie aussi */ Reset(bGeo?: boolean): void; debug(m: string): void; /** * The parent is the Nub that holds the parameter to calculate; * ask it to perform calculation and copy its result to local * result, to facilitate values reading by targetting modules * (used by triggerChainCalculation) */ CalcSerie(rInit?: number): Result; /** * Calcul des données à la section * effectue un reset du cache des résultats * @param sDonnee Clé de la donnée à calculer (voir this->arCalc) * @param rY valeur de Y à utiliser * @return la donnée calculée */ CalcSection(sDonnee: string, rY?: number): Result; /** * Proxy to parent SectionNub, to compute non-hydraulic variables * @param sVarCalc * @param rInit */ Calc(sVarCalc?: string, rInit?: number): Result; Equation(sVarCalc: string): Result; protected setParametersCalculability(): void; /** * calcul des données à la section dépendant de Y */ protected calcFromY(sDonnee: string, rY?: number): Result; /** * Calcul des données uniquement dépendantes de la géométrie de la section * @param sDonnee Clé de la donnée à calculer (voir this->arCalcGeo) * @return la donnée calculée */ protected CalcGeo(sDonnee: string): Result; /** * Calcul de la surface hydraulique. * @return La surface hydraulique */ protected abstract Calc_S(): Result; protected Calc_dS(): Result; /** * Calcul de la surface hydraulique en cas de débordement * @param Y hauteur d'eau au delà de la berge */ protected Calc_S_Debordement(Y: number): Result; /** * Calcul du périmètre hydraulique. * @return Le périmètre hydraulique */ protected abstract Calc_P(): Result; /** * Calcul du périmètre hydraulique en cas de débordement * @param Y hauteur d'eau au dela de la berge */ protected Calc_P_Debordement(Y: number): Result; /** * Calcul de dérivée du périmètre hydraulique par rapport au tirant d'eau. * @return dP */ protected abstract Calc_dP(): Result; /** * Calcul de dérivée du périmètre hydraulique par rapport au tirant d'eau en cas de débordement * @return la dérivée du périmètre hydraulique par rapport au tirant d'eau en cas de débordement */ protected Calc_dP_Debordement(): Result; /** * Calcul de la largeur au miroir. * @return La largeur au miroir */ protected abstract Calc_B(): Result; /** * Calcul de la largeur au miroir en cas de débordement * @return La largeur au miroir en cas de débordement */ protected Calc_B_Debordement(): Result; /** * Calcul de dérivée de la largeur au miroir par rapport au tirant d'eau. * @return dB */ protected abstract Calc_dB(): Result; /** * Calcul de dérivée de la largeur au miroir par rapport au tirant d'eau en cas de débordement * @return la dérivée de la largeur au miroir par rapport au tirant d'eau en cas de débordement */ protected Calc_dB_Debordement(): Result; /** * Calcul de la distance du centre de gravité de la section à la surface libre * multiplié par la surface hydraulique * @return S x Yg */ protected Calc_SYg(): Result; /** * Calcul de la dérivée distance du centre de gravité de la section à la surface libre * multiplié par la surface hydraulique * @return S x Yg */ protected Calc_dSYg(): Result; /** * Calcul de l'angle Alpha entre la surface libre et le fond pour les sections circulaires. * @return Angle Alpha pour une section circulaire, 0 sinon. */ protected Calc_Alpha(): Result; /** * Calcul de la dérivée de l'angle Alpha entre la surface libre et le fond pour les sections circulaires. * @return Dérivée de l'angle Alpha pour une section circulaire, 0 sinon. */ protected Calc_dAlpha(): Result; /** * Mémorise les données hydrauliques en cours ou les restitue * @param bMem true pour mémorisation, false pour restitution */ private Swap; private calcIndent; /** * Calcul de la dérivée surface hydraulique en cas de débordement * @return La dérivée de la surface hydraulique en cas de débordement */ private Calc_dS_Debordement; /** * Calcul du rayon hydraulique. * @return Le rayon hydraulique */ private Calc_R; /** * Calcul de dérivée du rayon hydraulique par rapport au tirant d'eau. * @return dR */ private Calc_dR; /** * Calcul de la perte de charge par la formule de Manning-Strickler. * @return La perte de charge */ private Calc_J; /** * Calcul du nombre de Froude. * @return Le nombre de Froude */ private Calc_Fr; /** * Calcul de dy/dx */ private Calc_dYdX; /** * Calcul de la vitesse moyenne. * @return Vitesse moyenne */ private Calc_V; /** * Calcul de la charge spécifique. * @return Charge spécifique */ private Calc_Hs; /** * Calcul de la charge spécifique critique. * @return Charge spécifique critique */ private Calc_Hsc; /** * Calcul du tirant d'eau critique. * @return tirant d'eau critique */ protected Calc_Yc(init?: number): Result; /** * Calcul du tirant d'eau normal. * @return tirant d'eau normal */ private Calc_Yn; /** * Calcul du tirant d'eau correspondant. * @return tirant d'eau correpondant */ private Calc_Ycor; /** * Calcul du tirant d'eau conjugué. * @return tirant d'eau conjugué */ private Calc_Ycon; /** * Calcul de la contrainte de cisaillement. * @return contrainte de cisaillement */ private Calc_Tau0; /** * Calcul de l'impulsion hydraulique. * @return Impulsion hydraulique */ private Calc_Imp; hasProperty(key: string): boolean; } //# sourceMappingURL=section_type.d.ts.map