Стабильный выпуск | 2019.1.0 (19 апреля 2019 г . [1] ) [±] |
---|---|
Операционная система | Linux , OS X , Unix , WSL |
Доступно в | C ++, Python |
Тип | Программное обеспечение для научного моделирования |
Лицензия | Стандартная общественная лицензия ограниченного применения GNU |
Интернет сайт | www |
Проект FEniCS - это набор бесплатных программных компонентов с открытым исходным кодом, общей целью которых является автоматическое решение дифференциальных уравнений . Компоненты обеспечивают научные вычислительные средства для работы с вычислительными сетками, конечно-элементных вариационных формулировок из обыкновенных и дифференциальных уравнений в частных и численной линейной алгебры . [2] [3]
Дизайн и комплектующие [ править ]
Проект FEniCS разработан как зонтичный проект для набора взаимодействующих компонентов. Основные компоненты: [4]
- UFL (Unified Form Language) - предметно-ориентированный язык, встроенный в Python для определения дискретизации конечных элементов дифференциальных уравнений в терминах вариационных форм конечных элементов;
- FIAT (Finite element Automatic Tabulator), конечный элемент FEniCS, модуль Python для генерации базисных функций конечных элементов произвольного порядка на симплексах ;
- FFC (FEniCS Form Compiler), компилятор для вариационных форм конечных элементов, принимающий код UFL в качестве входных данных и генерирующий выходные данные UFC;
- UFC (Unified Form-Assembly Code), интерфейс C ++, состоящий из низкоуровневых функций для оценки и сборки вариационных форм конечных элементов;
- Instant, модуль Python для встраивания кода C и C ++ в Python;
- DOLFIN, библиотека C ++ / Python, предоставляющая структуры данных и алгоритмы для сеток конечных элементов, автоматизированной сборки конечных элементов и числовой линейной алгебры.
DOLFIN, вычислительная высокопроизводительная бэкэнд C ++ для FEniCS, функционирует как основная среда решения проблем (как в C ++, так и в Python) и как пользовательский интерфейс. Его функциональные возможности интегрируют другую FENICS компоненты и ручка связь с внешними библиотеками , такими как PETSc , Trilinos и Эйген для численной линейной алгебры, ParMETIS и SCOTCH для разбиения сетки и MPI и OpenMP для распределенных вычислений.
История [ править ]
Проект FEniCS был инициирован в 2003 году в качестве исследовательского сотрудничества между Чикагским университетом и Технологическим университетом Чалмерса . Следующие учреждения в настоящее время или принимали активное участие в разработке проекта.
- Аргоннская национальная лаборатория
- Технологический университет Чалмерса
- Карлов университет [5]
- Делфтский технологический университет
- Королевский технологический институт
- Исследовательская лаборатория Simula
- Кембриджский университет
- Чикагский университет
- Люксембургский университет [5]
См. Также [ править ]
- Список пакетов программного обеспечения для конечных элементов
- Список программного обеспечения для численного анализа
- Использование графического интерфейса пользователя FEATool Multiphysics для настройки и решения мультифизических моделей FEniCS [6] [7]
Ссылки [ править ]
- ^ https://fenicsproject.org/download/
- ^ "Страница проекта FEniCS" . Проект FEniCS . Проверено 28 июля +2016 .
- ^ Андерс Логг; Кент-Андре Мардал; Гарт Н. Уэллс, ред. (2011). Автоматизированное решение дифференциальных уравнений методом конечных элементов . Springer. ISBN 978-3-642-23098-1.
- ^ «Основные компоненты проекта FEniCS» . Проект FEniCS . Архивировано из оригинала 4 ноября 2011 года . Проверено 8 декабря 2011 года .
- ^ a b Управляющие документы FEniCS. Проверено 28 июля +2016.
- ^ «Python FEM и мультифизическое моделирование с помощью FEniCS и FEATool» . featool.com . Проверено 28 июня 2017 .
- ^ Abali, Bilen Эмек (2017). Вычислительная реальность | SpringerLink . Современные структурированные материалы. 55 . DOI : 10.1007 / 978-981-10-2444-3 . ISBN 978-981-10-2443-6.
Внешние ссылки [ править ]
- Проект FEniCS на Bitbucket