diff --git a/src/structure/structure.ts b/src/structure/structure.ts index fcd0e5e12eeee7e89de207c6bd55614f3735aabf..c3effee93fa0176b5226db684b896cba39fd5cfb 100644 --- a/src/structure/structure.ts +++ b/src/structure/structure.ts @@ -33,6 +33,18 @@ export enum StructureFlowRegime { NULL, } +/** + * Type de jet : Sans objet (orifice), plongeant, de surface + */ +export enum StructureJetType { + /** Sans objet (orifice) */ + SO, + /** Plongeant */ + PLONGEANT, + /** De surface */ + SURFACE, +} + /** * classe de calcul sur la conduite distributrice */ @@ -212,4 +224,22 @@ export abstract class Structure extends Nub { return StructureFlowRegime.SUBMERGED; } } + + /** + * Give the Jet Type for weir flow + * Cf. Baudoin J.M., Burgun V., Chanseau M., Larinier M., Ovidio M., SremskiW., Steinbach P. et Voegtle B., 2014. + * Evaluer le franchissement des obstacles par les poissons. Principes et méthodes. Onema. 200 pages + */ + protected getJetType(): StructureJetType { + if (this.getFlowMode() === StructureFlowMode.WEIR) { + if (Math.abs(this.prms.h1.v - this.prms.h2.v) < 0.5 * this.prms.h1.v) { + return StructureJetType.SURFACE; + } else { + return StructureJetType.PLONGEANT; + } + } else { + return StructureJetType.SO; + } + } + } diff --git a/src/structure/structure_params.ts b/src/structure/structure_params.ts index 28ff720ad5f5dd5b8cd186ddbaf304f566ff9bd7..8740525ea3d4334f39b65c0c2c7f3f0ca25f8edf 100644 --- a/src/structure/structure_params.ts +++ b/src/structure/structure_params.ts @@ -1,7 +1,7 @@ import { Nub } from "../nub"; -import { ParamsEquation } from "../param/params-equation"; import { ParamDefinition } from "../param/param-definition"; import { ParamDomainValue } from "../param/param-domain"; +import { ParamsEquation } from "../param/params-equation"; /** * Common parameters of hydraulic structure equations