jalhyd
Version:
JaLHyd, a Javascript Library for Hydraulics
261 lines • 8.49 kB
TypeScript
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 {
[]: 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: {
[]: 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