JModelica 2.10 и Python 2 уже установлены с использованием стандартного двоичного установочного файла для JModelica до Windows. Кажется, это дает ограниченную среду Python. Здесь conda не используется, но pip включен.
Я сделал тестовую установку с Python 3 и PyFMI с использованием Miniconda, которая, кажется, действительно работает, и я хотел бы прокомментировать, если есть потенциальные проблемы проверить или может быть лучше сделано. Я не предпринял никаких шагов по удалению библиотек из Python 2, связанных с PyFMI, из установки JModelica. Я думаю, это может подождать.
Я сделал следующее в Windows 10:
- Стандартный Windows -установщик для JModelica 2.10 сделал некоторое время go.
Установите окружение Python 3 «сверху», используя conda, следующим образом:
a. Загрузите Miniconda для Python3 здесь https://docs.conda.io/en/latest/miniconda.html
b. Установите Miniconda3, и с этим вы получите Python 3.x и некоторые пакеты, но будьте осторожны на ранней стадии установки и сделайте выбор, чтобы установка не проходила по «пути». Есть два поля, и я решил оставить оба поля без отметки.
c. Может быть хорошо сначала обновить conda командой:
$conda update conda
d. Затем я создаю специальную среду "pyfmi" с Python 3 для дальнейшей установки PyFMI по команде
$conda create -n pyfmi python=3
e. Затем активируйте эту среду с помощью команды
$conda activate pyfmi
Теперь установите PyFMI в только что созданной активной среде conda "pyfmi" и некоторых других полезных библиотеках:
$conda config --add channels conda-forge
$conda install pyfmi
$conda install matplotlib
$conda install ipython
$conda install jupyter
Теперь вы можете деактивировать среду "pyfmi" и закрыть командное окно
В меню запуска Windows вы теперь найдете "кнопку" для Anaconda PowerShell ( и для Анаконды есть еще одна кнопка). Используйте первый, чтобы запустить командное окно, и отсюда вы можете сделать
$conda activate pyfmi
$ipython --pylab
Теперь вы можете загрузить предыдущий скомпилированный FMU и запустить его как обычно, но теперь в Python 3 окружения и команды:
$from pyfmi import load_fmu
$model=load_fmu(FMU_model)
Если вы хотите изменить модель и пересобрать, чтобы получить новый FMU, вы просто открываете новое окно команд для JModelica / pylab из меню «Пуск» Windows как обычно. Это означает, что вы в одном командном окне работаете в Python 2 с полной JModelica 2.10, а в другом командном окне - с Python 3 только с PyFMI. И вы можете работать с одной и той же папкой из обеих, если хотите, но также может быть лучше иметь отдельные папки.
Как сказано выше, эта установка дает возможность запустить один и тот же FMU как в Python2 с командным окном JModelica, так и в Python3 с командным окном pyfmi.
Я протестировал его с помощью нескольких сценариев и использовал model.simulate (), а также model.estimate ( ) и пока не обнаружил проблем.
Связанный пост PyFMI в среде Python 3 в Ubuntu 18.04