Приложение предназначено для парсинга K-файлов геофизической модели (для программы "Логос Прочность"), проведения расчетов и автоматической генерации CD-файлов. С его помощью можно быстро и без ошибок выделить блоки по element_solid, определить напряженности, сгруппировать их и подготовить данные к моделированию.
-
Чтение и анализ K-файла (сбор элементов по слоям)
-
Автоматическое определение и расчет напряженности по каждому element_solid
-
Группировка элементов
-
Генерация корректного .cd, пригодного для импорта в "Логос Прочность"
-
Асинхронная обработка с помощью потоков
-
GUI-обёртка для удобного использования
-
Поддержка сборки под .app для macOS и .exe для windows
Проект был реализован как практическое задание с целью ускорить работу с K/CD-файлами в программе "Логос Прочность"
Логика работы построена на следующем:
-
Чтение входящего .k файла и сбор узлов (*NODE) и элементов (*ELEMENT_SOLID)
-
Фильтрация элементов по подобласти
-
Выделение "параллелепипеда" от возможного объекта сверху и нахождение высоты грунта ("параллелепипеда")
-
Отбор id слоев по порядку от 0 по координатам
-
Отбор элементов, которые принадлежат слою
-
Выполнение математических вычислений, сбор данных в требуемом формате (формат, который способна прочитать программа "Логос Прочность") и запись во временный файл _debug.txt
-
Вставка во входящий .cd файл данных из _debug.txt (для корректной работы .txt переводится в .cd, а по завершению блока кода выполняется обратное действие) и получение конечного файла -_output.cd, который в дальнейшем открывается программой "Логос Прочность"
-
tkinter
-
PyInstaller
-
PyYAML
Сравнение временных зависимостей вертикальной скорости точки поверхности массива до и после обработки входных данных показывает существенное уменьшение амплитуды остаточных колебаний точки поверхности, связанных с задаваемой в алгоритме динамической релаксации точностью определения поля напряжений в подобласти сплошной среды.
До обработки входного файла амплитуда колебаний координаты (вертикальной скорости) составляет порядка 2⋅10-3. После задания начального поля напряжений амплитуда колебаний уменьшается до величины порядка 2⋅10-4
Таким образом, амплитуда остаточных колебаний уменьшается примерно в 8–10 раз. Кроме того, на графике после обработки наблюдается более быстрое затухание колебаний и отсутствие выраженных переходных процессов, что свидетельствует о ускоренном выходе системы в стационарное состояние.







