OpenFOAM 5.0

2 недели ago admin 0

26 июля вышла новая значительная версия пакета OpenFOAM, развиваемого и поддерживаемого под эгидой некоммерческой организации The OpenFOAM Foundation. В соответствии с текущей стратегией выпуска новых версий, данный выпуск является срезом ветки для разработчиков OpenFOAM-dev.

Проект представляет собой платформу для численного решения уравнений в частных производных методом конечного объёма, которая распространяется под лицензией GPLv3 и включает в себя как набор библиотек, позволяющих написать собственные программы для решения уравнений в частных производных (на языке C++), так и множество готовых решателей и утилит, предназначенных в основном для численного моделирования различных задач механики сплошных сред.

Основные изменения:

  • Реализован новый алгоритм трассировки лагранжевых частиц, основанный на использовании локальных барицентрических координат, что существенно улучшает точность построения траектории частицы и предотвращает возникновение ошибок, связанных с «потерей» частиц на «плохих» расчётных сетках. Стоит отметить, что данная работа была проведена благодаря добровольным пожертвованиям, собранным The OpenFOAM Foundation в 2017 году.
  • Добавлена возможность генерации модельных волн на поверхности жидкости (как граничное условие на входе в расчётную область). Моделирование волн необходимо, в частности, для различных задач судостроения.
  • Реализована новая технология декомпозиции для параллельных расчётов, благодаря которой данные параллельного расчёта от разных процессов записываются в один файл. В предыдущих версиях OpenFOAM для каждого процесса с номером N создавался свой каталог с именем «processorN», куда и производилась запись от процесса N; в результате при большом числе процессов могли возникнуть проблемы записи, связанные в т. ч. со слишком большим количеством открытых файлов. Данный метод работы в параллельном режиме (называемый collated) не включён по умолчанию. Отметим, что имеется возможность работы ввода-вывода в многопоточном режиме (multithreading).
  • Добавлена возможность автодополнения по TAB опций решателей и утилит.
  • Увеличена надёжность работы многофазных решателей в задачах с входными/выходными границами.
  • Добавлены новые модели для вязких сред и новая модель горения.
  • Улучшены сеточные генераторы snappyHexMesh и blockMesh.

>>> Подробности


Source: linux.org.ru