An error occurred while loading the file. Please try again.
-
Grand Francois authored68dc481a
/// <reference path="../node_modules/@types/jasmine/index.d.ts" />
import { Result } from "../src/base";
import { RegimeUniforme } from "../src/regime_uniforme";
import { ParamsSectionCirc, cSnCirc } from "../src/section/section_circulaire";
import { precDist, equalEpsilon } from "./nubtest";
function check(val1: Result, val2: number) {
// expect(val1).toBeCloseTo(val2);
expect(equalEpsilon(val1.vCalc, val2)).toBeTruthy("expected " + val2 + ", got " + val1.vCalc);
}
describe('Class RegimeUniforme / section circulaire :', () => {
describe('pas de débordement : ', () => {
it('Diamètre should be 6.001', () => {
let paramSect = new ParamsSectionCirc(undefined, // diamètre
0.6613, // tirant d'eau
40, // Ks=Strickler
1.2, // Q=Débit
0.001, // If=pente du fond
precDist, // précision
1 // YB= hauteur de berge
// YCL=Condition limite en cote à l'amont ou à l'aval
);
let sect = new cSnCirc(undefined, paramSect);
let ru = new RegimeUniforme(sect);
check(ru.Calc("D", 1e-8), 6.001);
});
it('Ks should be 40.003', () => {
let paramSection = new ParamsSectionCirc(6, // diamètre
0.6613, // tirant d'eau
undefined, // Ks=Strickler
1.2, // Q=Débit
0.001, // If=pente du fond
precDist, // précision
1 // YB= hauteur de berge
// YCL=Condition limite en cote à l'amont ou à l'aval
);
let sect = new cSnCirc(undefined, paramSection);
let ru = new RegimeUniforme(sect);
check(ru.Calc("Ks", 1e-8), 40.003);
});
it('If should be 0.001', () => {
let paramSection = new ParamsSectionCirc(6, // diamètre
0.6613, // tirant d'eau
40, // Ks=Strickler
1.2, // Q=Débit
undefined, // If=pente du fond
precDist, // précision
1 // YB= hauteur de berge
// YCL=Condition limite en cote à l'amont ou à l'aval
);
let sect = new cSnCirc(undefined, paramSection);
let ru = new RegimeUniforme(sect);
check(ru.Calc("If"), 0.001);
});
it('Q should be 1.2', () => {
let paramSection = new ParamsSectionCirc(6, // diamètre
0.6613, // tirant d'eau
40, // Ks=Strickler
undefined, // Q=Débit
0.001, // If=pente du fond
7172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140
precDist, // précision
1 // YB= hauteur de berge
// YCL=Condition limite en cote à l'amont ou à l'aval
);
let sect = new cSnCirc(undefined, paramSection);
let ru = new RegimeUniforme(sect);
check(ru.Calc("Q"), 1.2);
});
it('Y should be 0.6613', () => {
let paramSection = new ParamsSectionCirc(6, // diamètre
undefined, // tirant d'eau
40, // Ks=Strickler
1.2, // Q=Débit
0.001, // If=pente du fond
precDist, // précision
1 // YB= hauteur de berge
// YCL=Condition limite en cote à l'amont ou à l'aval
);
let sect = new cSnCirc(undefined, paramSection);
let ru = new RegimeUniforme(sect);
check(ru.Calc("Y"), 0.6613);
});
});
describe('débordement : ', () => {
it('Diamètre should be 2', () => {
let paramSect = new ParamsSectionCirc(undefined, // diamètre
2, // tirant d'eau
13.551, // Ks=Strickler
1.2, // Q=Débit
0.001, // If=pente du fond
precDist, // précision
1 // YB= hauteur de berge
// YCL=Condition limite en cote à l'amont ou à l'aval
);
let sect = new cSnCirc(undefined, paramSect);
let ru = new RegimeUniforme(sect);
check(ru.Calc("D", 1e-8), 2);
});
it('Ks should be 13.551', () => {
let paramSection = new ParamsSectionCirc(2, // diamètre
2, // tirant d'eau
undefined, // Ks=Strickler
1.2, // Q=Débit
0.001, // If=pente du fond
precDist, // précision
1 // YB= hauteur de berge
// YCL=Condition limite en cote à l'amont ou à l'aval
);
let sect = new cSnCirc(undefined, paramSection);
let ru = new RegimeUniforme(sect);
check(ru.Calc("Ks", 1e-8), 13.551);
});
it('If should be 0.001', () => {
let paramSection = new ParamsSectionCirc(2, // diamètre
2, // tirant d'eau
13.551, // Ks=Strickler
1.2, // Q=Débit
undefined, // If=pente du fond
precDist, // précision
1 // YB= hauteur de berge
141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182
// YCL=Condition limite en cote à l'amont ou à l'aval
);
let sect = new cSnCirc(undefined, paramSection);
let ru = new RegimeUniforme(sect);
check(ru.Calc("If"), 0.001);
});
it('Q should be 1.2', () => {
let paramSection = new ParamsSectionCirc(2, // diamètre
2, // tirant d'eau
13.551, // Ks=Strickler
undefined, // Q=Débit
0.001, // If=pente du fond
precDist, // précision
1 // YB= hauteur de berge
// YCL=Condition limite en cote à l'amont ou à l'aval
);
let sect = new cSnCirc(undefined, paramSection);
let ru = new RegimeUniforme(sect);
check(ru.Calc("Q"), 1.2);
});
it('Y should be 2', () => {
let paramSection = new ParamsSectionCirc(2, // diamètre
undefined, // tirant d'eau
13.551, // Ks=Strickler
1.2, // Q=Débit
0.001, // If=pente du fond
precDist, // précision
1 // YB= hauteur de berge
// YCL=Condition limite en cote à l'amont ou à l'aval
);
let sect = new cSnCirc(undefined, paramSection);
let ru = new RegimeUniforme(sect);
check(ru.Calc("Y"), 2);
});
});
});