ОпенМДАО
OpenMDAO — это высокопроизводительная вычислительная платформа с открытым исходным кодом для системного анализа и междисциплинарной оптимизации, написанная на языке программирования Python .
Проект OpenMDAO в первую очередь ориентирован на поддержку оптимизации на основе градиента с помощью аналитических производных, позволяющих исследовать большие пространства проектирования с сотнями или тысячами проектных переменных, но инфраструктура также имеет ряд функций параллельных вычислений , которые могут работать с оптимизацией без градиента. смешанно-целочисленное нелинейное программирование и традиционное проектирование освоения космоса.
Платформа OpenMDAO предназначена для помощи в объединении отдельных частей программного обеспечения для целей комбинированного анализа. Он позволяет пользователям комбинировать инструменты анализа (или коды проектирования) из разных дисциплин на разных уровнях точности и управлять взаимодействием между ними. OpenMDAO специально разработан для управления потоком данных (фактическими данными) и рабочим процессом (какой код когда запускается) в сочетании с алгоритмами оптимизации и другими передовыми методами решения. [1]
Разработкой OpenMDAO занимается Исследовательский центр Гленна НАСА .
Функции
[ редактировать ]- Библиотека встроенных решателей и оптимизаторов
- Инструменты для метамоделирования
- Возможности записи данных
- Поддержка аналитических производных инструментов
- Поддержка высокопроизводительных компьютерных кластеров и распределенных вычислений.
- Расширяемая библиотека плагинов
Приложения
[ редактировать ]Мотивация НАСА в поддержке проекта OpenMDAO проистекает из требований нетрадиционных концепций самолетов, таких как распределенная двигательная установка Turbo-Electric . Хотя НАСА фокусируется на анализе аэрокосмических приложений, сама структура является общей и не привязана к какой-либо дисциплине.
Рамочная структура
[ редактировать ]OpenMDAO предназначен для отделения потока информации (потока данных) от процесса выполнения анализа (рабочего процесса). Это достигается с помощью четырех конкретных конструкций: Компонент, Сборка, Драйвер и Рабочий процесс.
Построение моделей системы начинается с упаковки (или написания с нуля) различных кодов анализа в качестве Компонентов. Группа компонентов связана внутри сборки, определяя поток данных между ними. После создания потока данных можно выбрать конкретные драйверы (оптимизаторы, решатели, планирование экспериментов и т. д.) и настроить рабочий процесс, чтобы точно определить, как следует решить проблему.
OpenMDAO также включает в себя графический пользовательский интерфейс (GUI) на базе веб-браузера для визуального построения, выполнения и оптимизации моделей.
См. также
[ редактировать ]Внешние ссылки
[ редактировать ]Примечания
[ редактировать ]- ^ Дж. С. Грей, Дж. Т. Хван, JRRA Мартинс, К. Т. Мур и Б. А. Нейлор. OpenMDAO: платформа с открытым исходным кодом для междисциплинарного проектирования, анализа и оптимизации. Структурная и междисциплинарная оптимизация, 2019. doi:10.1007/s00158-019-02211-z.