Объект портфолио
Порт расчётной программы напряжений на Qt 6
Унаследованная программа расчёта напряжений методом конечных элементов перенесена на C++20 и Qt 6: отдельное ядро, C API и 24 набора проверок. Внутренний инструмент, не клиентский заказ.
Задача и контекст
Программа расчёта напряжений методом конечных элементов живёт в Windows-среде 2000-х: интерфейс на MFC, автотестов нет, переносимой сборки нет. Заменить её готовым пакетом нельзя без смены методики, поэтому нужен пошаговый порт с проверкой на каждом этапе. Внутренний инструмент, не клиентский заказ.
Как было
Любая правка требовала сборки в старой среде и проверки глазами: сравнить новую версию расчёта с прежней было нечем. Добавить новый тип элемента или вынести ядро в другой интерфейс было невозможно, не переписав программу целиком.
Что сделано
Программа перенесена на C++20, Qt 6 и CMake. Ядро — сетка, элементы, решатель — отделено от интерфейса и общается через стабильный C API. Добавлены стержневые элементы frame, truss и cable, которых в исходной версии не было. Исходная сборка сохранена тегом legacy-msvc-build как эталон для сверки. Границу слоёв охраняет отдельный тест: расчёт проверяется без окна.
Результат в числах
24 набора проверок CTest вместо прежнего отсутствия автотестов. Стержень переменного сечения сверен с тремя независимыми источниками, расхождение — до 1e-13; аналитические решения сходятся до 5e-8. Объём порта зафиксирован в отчёте: MODELER — 88 файлов, PFPDLL — 43.
Ограничения
Этапы 1–3 технического задания закрыты, просмотрщик результатов — следующие этапы. Порт не добавляет проверок по нормам: сверка с аналитикой доказывает, что реализация считает заявленное, а не соответствие стандарту.
Что дальше
Следующий шаг — просмотрщик результатов и перенос оставшихся этапов по тому же порядку: сначала ядро с тестами, затем интерфейс поверх проверенного расчёта.
Ещё объекты
Все объекты →Расчет несущих конструкций этажерки 35
Поверочный расчёт этажерки 35: фактическая схема работы восстановлена по чертежам, включая связи и узлы, запас сравнён с требованиями норм. Результат — отчёт с перечнем элементов, которым нужно усиление.
Многофункциональный центр
Проверка несущей способности железобетонного каркаса МФЦ: торговые, офисные и технические зоны с разными нагрузками в одном каркасе. Проверены продавливание, трещиностойкость и диафрагмы, выдан перечень зон под перепланировку.
Расчёт несущего каркаса фабрики обуви
Поверочный расчёт стального каркаса действующей фабрики: схема восстановлена по чертежам и обмеру, проверены прочность, устойчивость и соединения под фактические нагрузки. Результат — отчёт с запасом по группам элементов.
Материалы
Статьи по теме
Роль в проекте
Объект закрыт услугой Инженерное ПО. Там состав работы и границы применимости.
Нужен похожий объект?
Пришлите исходные данные — уточним состав работы и ответим по срокам.