feat(wasserfoerderung): FI 5.008 planner engine with per-pump pressures
Los mantenedores suelen responder en 1 día
Nadie ha tomado este issue todavía.
Evaluación
- Dificultad
- 4/5
- Tiempo estimado
- 3-5 días
- Aptitud para principiantes
- 22/100
Línea de trabajo
Start from FörderstreckePlanner on the branch feat/wasserfoerderung-plan-a and the friction table it uses, then compare it with FI 5.008 Tab. 3. The golden tests should reproduce Abb. 22 (0/540/920/1260 m) and Abb. 23 (0/458/579 m). Done means those tests pass, plus new tests for downhill overpressure, an infeasible steep segment, a route shorter than one hose, and a partial last segment. The review comment on #150 holds context not in the payload and should be read first.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
Slice 1 of the Wasserförderung restart (#150). Domain only — no UI, no persistence, no sync. Analysis and rationale: see the review comment on #150.
Why
The planner on feat/wasserfoerderung-plan-a (FörderstreckePlanner) has problems in its hydraulics:
- Its friction table is optimistic compared with FI 5.008 Tab. 3: 1,0 vs. 1,2 bar/100 m at 800 l/min. At 8 bar / 1,5 bar it plans a 620 m flat leg where FI 5.008 Abb. 22 gives 540 m, so pumps end up ~15 % too far apart.
- On a descent
Cost()goes negative and the leg keeps extending. Nothing checks overpressure against the B hose's 16 bar. - It returns only counts and positions in metres. There are no per-pump pressures.
- The reserve is a unitless "3 % of budget" instead of a pressure in bar.
Scope
- Friction per FI 5.008 Tab. 3 (600/800/1000/1200 l/min), cited in the code.
- Inputs: Förderstrom, pump type / Ausgangsdruck (8 or 10 bar), min. Eingangsdruck, Sicherheitsreserve in bar, Warnschwelle, optional Einsatzstellenpumpe at the target.
- Input profile as Stützpunkte (Strecke m, Höhe m), interpolated to 20 m stations. Keep the branch's worst-interior-point crest check.
- Result per pump: role (Wasserentnahmestelle / Verstärkerpumpe / Einsatzstellenpumpe), station, Höhe, Eingangsdruck, Ausgangsdruck, section length / rise / B-20 count.
- Typed findings instead of exceptions where the plan is still usable: overpressure downhill, a segment that cannot be pumped at all, Restdruck at the target below the minimum, >1000 l/min → Doppelleitung.
- A partial last segment is charged pro rata, not as a full 20 m. Hose totals equal the sum of the sections.
Out of scope / open
- Offene Schaltreihe: model it correctly (every pump draws from a Faltbehälter) or leave it out. Re-checking only the last stretch is not enough.
- The DBV setting, reserve pump ratio and reserve hose rule need a cited source before they are shown as instructions.
Acceptance
- Golden tests reproduce FI 5.008 Abb. 22 (0/540/920/1260 m, 0/0/19,2/43,2 m, 8 bar, 800 l/min) and Abb. 23 (0/458/579 m, 0/14/19 m).
- Tests cover a downhill overpressure case, an infeasible steep segment, a route shorter than one hose, and a partial last segment.
🤖 Generated with Claude Code
- Lenguaje dominante
- C#
- Estrellas
- 1
- Forks
- 3
- Merge medio
- 4 h 49 min
- PR fusionados (30 d)
- 177
Preparar el entorno
- Sin Dockerfile ni archivo de Docker Compose
- Tiene una plantilla de pull request
- Leer la guía de contribución
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Más de CodeForFire/lagebuch
-
Stammdaten: in the Checkliste editor the PFLICHT header is not aligned with its columnPosiblemente ocupada @Saad-elnagar la tomó hace 1 día. Abiertobug ux
Dificultad 2/5 1-3 horas Aptitud para principiantes 78/100
CodeForFire/lagebuch#714 · 1 comentario ·
Los mantenedores suelen responder en 1 día
-
Stammdaten: on a phone the Fahrzeuge editor squeezes Wache and Funkrufname to nothingPosiblemente ocupada @Saad-elnagar la tomó hace 1 día. Abiertobug ux
Dificultad 2/5 1-3 horas Aptitud para principiantes 75/100
CodeForFire/lagebuch#713 · 1 comentario ·
Los mantenedores suelen responder en 1 día
-
enhancement
Dificultad 2/5 1-3 horas Aptitud para principiantes 62/100
CodeForFire/lagebuch#405 ·
Los mantenedores suelen responder en 1 día
-
documentation good first issue
Dificultad 2/5 1-3 horas Aptitud para principiantes 88/100
CodeForFire/lagebuch#349 ·
Los mantenedores suelen responder en 1 día
-
documentation good first issue
Dificultad 2/5 1-3 horas Aptitud para principiantes 88/100
CodeForFire/lagebuch#348 ·
Los mantenedores suelen responder en 1 día
Todos los issues de CodeForFire/lagebuch
Issues similares
-
bug effort:S P2
Dificultad 2/5 1-3 horas Aptitud para principiantes 76/100
nightscout/nocturne#2449 ·
Los mantenedores suelen responder en 1 día
-
area: client bug
Dificultad 2/5 1-3 horas Aptitud para principiantes 72/100
Los mantenedores suelen responder en 1 día
-
bug mcp misleading small
Dificultad 2/5 1-3 horas Aptitud para principiantes 70/100
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 82/100
-
enhancement
Dificultad 2/5 1-3 horas Aptitud para principiantes 72/100
hazeliscoding/gil-sweep#25 ·
Los mantenedores suelen responder en 1 día