OpenFOAM
| OpenFOAM | |
| Тип |
Open Source Field Operation And Manipulation |
|---|---|
| Разработчик |
OpenCFD, Limited |
| Операционная система | |
| Последняя версия |
2.0.1 (2011-08-04) |
| Тестовая версия | |
| Лицензия | |
| Сайт | |
OpenFOAM(англ. Open Source Field Operation And Manipulation CFD ToolBox) — открытая интегрируемая платформа для численного моделирования задач механики сплошных сред.
Содержание |
[править] Общая характеристика
OpenFOAM — свободно распространяемый инструментарий вычислительной гидродинамики для операций с полями, скалярными, векторными и тензорными). На сегодняшний день является[источник не указан 572 дня] одним из «законченных» и известных приложений, предназначенных для FVM-вычислений.
Код OpenFOAM, разработан в Великобритании в компании OpenCFD, Limited, и используется многими промышленными предприятиями более 12 лет. Свое название и идеологию построения код берет от предшественника FOAM (Field Operation And Manipulation), который является закрытым и продолжает развиваться параллельно с OpenFOAM. Первоначально, программа предназначалась для прочностных расчетов и в результате многолетнего академического и промышленного развития на сегодняшний момент позволяет решать следующие задачи:
- Прочностные расчеты;
- Гидродинамика ньютоновских и неньютоновских вязких жидкостей как в несжимаемом, так и сжимаемом приближении с учётом конвективного теплообмена и действием сил гравитации. Для моделирования турбулентных течений возможно использование RANS-моделей, LES и DNS методов. Возможно решение дозвуковых, околозвуковых и сверхзвуковых задач;
- Задачи теплопроводности в твёрдом теле;
- Многофазные задачи, в том числе с описанием химических реакций компонент потока;
- Задачи, связанные с деформацией расчётной сетки;
- Сопряжённые задачи;
- Некоторые другие задачи, при математической постановке которых требуется решение дифференциальных уравнений в частных производных в условиях сложной геометрии среды;
- Распараллеливание расчёта как в кластерных, так и многопроцессорных системах.
В основе кода лежит набор библиотек, предоставляющих инструменты для решения систем дифференциальных уравнений в частных производных как в пространстве, так и во времени. Рабочим языком кода является ООП C++. В терминах данного языка большинство математических дифференциальных и тензорных операторов в программном коде (до трансляции в исполняемый файл) уравнений может быть представлено в удобочитаемой форме, а метод дискретизации и решения для каждого оператора может быть выбран уже пользователем в процессе расчёта. Таким образом, в коде полностью инкапсулируются и разделяются понятия расчетной сетки (метод дискретизации), дискретизации основных уравнений и методов решения алгебраических уравнений. Например, уравнение сохранения количества движения для ньютоновской несжимаемой жидкости без действия массовых сил:
может быть представлено в виде:
solve
(
fvm::ddt(rho, U)
+ fvm::div(rho, U, U)
- fvm::laplacian(mu, U)
==
- fvc::grad(p)
);
Вместе с кодом поставляется набор программ-«решателей», в которых реализованы различные математические модели механики сплошных сред.
[править] Связь со стандартами
Пакет OpenFOAM имеет множество утилит, которые позволяют конвертировать сторонние форматы в формат OpenFOAM. Для доступа к утилитам необходимо перейти в папку $FOAM_UTILITIES, это также можно сделать командой util[1].
| Конвертеры сетки | |
|---|---|
| ansysToFoam | конвертирует файл сетки ANSYS, полученный из I-DEAS, в формат OpenFOAM |
| cfx4ToFoam | конвертирует сетку CFX 4 в формат OpenFOAM |
| fluent3DMeshToFoam | конвертирует сетку Fluent в формат OpenFOAM |
| fluentMeshToFoam | конвертирует сетку Fluent в формат OpenFOAM, с поддержкой составных частей и изменением границ |
| foamMeshToFluent | записывает сетку OpenFOAM в Fluent формате |
| foamToStarMesh | считывает сетку OpenFOAM и записывает в PROSTAR(v4)bnd/cel/vrt формате |
| foamToSurface | считывает сетку OpenFOAM и записывает границы в виде плоскостей |
| gambitToFoam | конвертирует сетку GAMBIT в формат OpenFOAM |
| gmshToFoam | считывает .msh файл и записывает Gmsh |
| ideasUnvToFoam | конвертирует сетку I-Deas unv в формат OpenFOAM |
| kivaToFoam | конвертирует сетку KIVA в формат OpenFOAM |
| mshToFoam | конвертирует .msh Adventure system файл в формат OpenFOAM |
| netgenNeutralToFoam | конвертирует сетку Netgen v4.4 в формат OpenFOAM |
| plot3dToFoam | конвертирует сетку Plot3d (ascii/formatted формат) в формат OpenFOAM |
| sammToFoam | конвертирует сетку STAR-CD(v3) SAMM в формат OpenFOAM |
| star3ToFoam | конвертирует сетку STAR-CD(v3) PROSTAR в формат OpenFOAM |
| star4ToFoam | конвертирует сетку STAR-CD(v4) PROSTAR в формат OpenFOAM |
| tetgenToFoam | конвертирует .ele, .node и .face файлы, созданные в tetgen в формат OpenFOAM |
| Конвертеры результатов | |
|---|---|
| foamDataFluent | переводит данные OpenFOAM в Fluent формат |
| foamToEnsight | переводит данные OpenFOAM в EnSight формат |
| foamToEnsightParts | переводит данные OpenFOAM в EnSight формат. EnSight часть создается для каждой cellZone и каждого патча |
| foamToFieldview9 | записывает сетку OpenFOAM в Version 3.0 Fieldview-UNS (двоичный) формат |
| foamToGMV | переводит данные OpenFOAM в GMV формат |
| foamToTecplot360 | переводит данные OpenFOAM в Tecplot формат |
| foamToVTK | переводит данные OpenFOAM в VTK формат |
| smapToFoam | переводит данные STAR-CD SMAP в OpenFOAM формат |
[править] Связь с другими Open-source проектами
[править] Ссылки
- Официальный сайт
- Сайт обмена практическим опытом и использования свободного ПО в CAD/CAE
- Computational Fluid Dynamics
- Технологическая платформа программы «Университетский кластер»
- OpenFOAM wiki
[править] Примечания
|
|
|||||
|---|---|---|---|---|---|
| САПР (список) |
|
||||
| Расчёт механики |
|
||||
