Диагностика расчётов

Диагностика расчётов: история последних 20 гидравлических расчётов и раскраска участков на карте по результату любого из них — падение давления или скорость воды.

Где найти
«Инструменты» (значок чемоданчика справа вверху) → Расчёты и диагностика → «Диагностика расчётов». То же — палитрой команд: Ctrl+K и начните набирать название.
Права
доступно всем, кто вошёл.
Читаю как

Возможности

  • Список последних 20 расчётов всех фрагментов города: номер, название, дата и время. Сверху — самый свежий.
  • Раскраска участков на карте по результату выбранного расчёта: «Падение давления» или «Скорость воды». Показатель переключается без повторной загрузки.
  • Щелчок по раскрашенному участку открывает карточку с результатами расчёта этого участка.
  • «Скачать результаты в Excel» (значок таблицы у показанного расчёта) — все участки расчёта с расходом, скоростью, потерями и напорами по подаче и обратке.
  • «Оставить на карте» — закрыть окно и продолжить работу с раскраской; шкала остаётся в легенде внизу слева.

Как это работает

Список берётся из таблицы calculation по дате расчёта, без отбора по фрагменту. Фрагмент в списке не подписан — ориентируйтесь по номеру и времени.

«Показать» загружает результаты участков из ut_out: одна строка на участок, значения — по подаче, а у участков только с обраткой — по обратке. На карту не идут участки внутренних схем узлов (они нарисованы в условных координатах) и участки без геометрии.

Цвет меняется плавно между четырьмя опорными точками: 0 — зелёный, 20 % максимума шкалы — жёлтый, 60 % — красный, максимум и выше — тёмно-красный.

Показатель Что красится Опорные точки
Падение давления общие потери напора на участке (ut_out.a17), м вод. ст. 0 · 1 · 3 · 5
Скорость воды скорость в трубе (ut_out.a10), м/с 0 · 0,6 · 1,8 · 3

Шкала одна для слоя карты, подсказки в окне и легенды: utils/calculationScale.ts. «Падение давления» — потери напора на участке в метрах водяного столба: участок с потерями 5 м и больше — тёмно-красный.

На карте одновременно показан один расчёт. Закрыли окно крестиком или «Закрыть» — раскраска снимается; после «Оставить на карте» — остаётся, пока не нажмёте «Убрать с карты».

Excel-файл calculation_<номер>_results.xlsx содержит все участки расчёта, включая участки внутренних схем: длина, внутренний диаметр, расход, скорость, удельные (мм/м) и полные (м) потери, пьезометрический и располагаемый напор в конце участка — по подаче и по обратке.

Что нужно для работы

  • Хотя бы один выполненный гидравлический расчёт («Расчёт» в панели инструментов).
  • Окно доступно всем, кто вошёл; отдельного права не нужно.

Шаги

  1. Откройте «Инструменты» и наберите в поиске «Диагностика расчётов» — пункт выделен рамкой.

    Пункт «Диагностика расчётов» в панели «Инструменты»

  2. Нажмите пункт — откроется окно.

    Окно «Диагностика расчётов»

  3. «Показать» у расчёта (последний — сверху) раскрашивает участки сети по его результату; кнопка меняется на «Убрать с карты». Раскрашивать можно один расчёт за раз.

    Диагностика расчётов: шаг 3

  4. Переключатель «Падение давления» / «Скорость воды» меняет показатель раскраски — шкала в подсказке рядом и в легенде карты.

    Диагностика расчётов: шаг 4

  5. «Оставить на карте» закрывает окно, раскраска остаётся: видно, где сеть работает на пределе. Снять её — снова открыть окно и нажать «Убрать с карты».

    Диагностика расчётов: шаг 5

Примеры

Плановый расчёт 808, фрагмент 74, −25 °C (копия базы Алматы): на карту выходят 1686 участков.

  • «Падение давления»: у 1570 участков потери меньше 1 м, у 102 — от 1 до 3 м, у 10 — от 3 до 5 м, у 4 — больше 5 м. Самый тёмный — участок 325697: 197,8 м, внутренний диаметр 100 мм, 43,3 т/ч, скорость 1,53 м/с, потери 8,6 м. Такой участок — первый кандидат на проверку диаметра в паспорте.
  • «Скорость воды»: 746 участков медленнее 0,6 м/с, 896 — от 0,6 до 1,8 м/с, 43 — от 1,8 до 3 м/с, 1 — быстрее 3 м/с (4,5 м/с — максимум расчёта).

Если не получается

  • «Расчётов нет» — в базе города нет ни одного расчёта; выполните расчёт фрагмента.
  • «Не удалось загрузить историю расчётов» — API недоступен; нажмите «Повторить» или значок обновления.
  • «Расчёт №… не загрузился на карту» — ошибка при загрузке результатов; прежняя раскраска при этом снимается.
  • Расчёт показан, но на карте ничего нет — у расчёта нет строк в ut_out (расчёт не завершился) или его фрагмент далеко от текущего вида: найдите фрагмент на карте.
  • «Ошибка выгрузки Excel» — результаты расчёта удалены или API недоступен.

Для администратора

  • Данные: calculation, ut_out, us_out базы города. Удаление расчёта (окно «Расчёты») убирает его и из этого списка.
  • Маршруты окна не проверяют роль сами: при выключенном AUTH_REQUIRED_GET результаты читаются без входа.

Для разработчика

  • API: GET /api/calculations/latest?limit=20, GET /api/calculations/{id}/results/geojson (участки и узлы со сводкой summary), GET /api/calculations/{id}/results/excel. Код — routers/calc.py, database/calculations.py; колонки ut_out — database/ut_out_columns.py.
  • Веб: components/CalculationDiagnosticsModal.vue; слой calculation-lines-layer и loadCalculation — stores/mapStore.ts; шкала — utils/calculationScale.ts; снятие слоя при закрытии — composables/useDialogMapOverlay.ts.
  • Тесты: tests/utils/calculationScale.spec.ts; API — test_hydraulic_thematic.py (GeoJSON результатов), test_backend_contracts.py.
Хотите увидеть эту функцию на своих данных?Покажем ТГИД на демонстрации и ответим на вопросы инженеров.
Запросить демо