2013-06-21 3 views
3

Знаете ли вы, есть ли библиотека C для обработки FMU и запускать симуляции, включая хороший решатель?Библиотека C/C++ для обработки FMU

Насколько я знаю, что есть:

  • FMUSDK из QTronic
  • FMI Библиотека из Modelon

Оба могут открыть FMU,, но только пусть работает FMU для совместного моделирования с простой решатель Эйлера.

Библиотеки, включая хорошую обработку разрывов решателя, но не в C, являются:

  • PyFMI из Modelon: Для Python
  • JFMY от Птолемея: Для Java (не уверен, если это включает в себя хороший решатель)

ответ

4

Я не думаю, что FMUSDK действительно поддерживается, поэтому библиотека FMI, вероятно, является лучшим выбором между этими двумя.

Чтобы улучшить решение, вам, вероятно, придется соединить библиотеку FMI с решателем, таким как Sundials, и выяснить, как сшить эти два вместе. Обратите внимание: это именно то, что сделал Modelon с библиотекой PyFMI. Хотя это библиотека Python, я подозреваю, что вы, вероятно, можете найти относительно простой способ интеграции в проект, отличный от Python, если вы сможете использовать C-код для их интеграции (что, по-видимому, вы есть).

Я подозреваю, что вызов PyFMI с C будет проще, чем сшивание FMIL вместе с Sundials по своему усмотрению.

+0

Спасибо, Майкл. Согласен. Повторное использование PyFMI в C/C++ будет само по себе проектом. Немного о записи: как можно назвать Python из C? – Koldo

+0

Привет, Майкл. О вопросе «Как сделать совместное моделирование с двумя FMU-моделями» модели предназначены для обмена моделью и для совместного имитации, поскольку две модели основаны на Modelica, а третья - моделирование CFD. – Koldo

 Смежные вопросы

  • Нет связанных вопросов^_^