При интеграции скомпилированного MATLAB® функции в Python® приложение, ваш код должен инициализировать MATLAB Runtime:
Вызовите initialize_runtime()
функция, которая позволяет вам предоставить список опций запуска в MATLAB Runtime.
Используйте initialize()
функция каждого скомпилированного пакета в приложении. При первом вызове функции загружается и запускается MATLAB Runtime.
Примечание
В Mac OS X необходимо передать опции MATLAB Runtime в mwpython
команда при запуске Python. Использование -mlstartup
далее следует разделенный запятыми список опций MATLAB Runtime. MATLAB Runtime переданы в initialize_runtime()
игнорируются.
MATLAB Runtime имеет две опции запуска, которые можно задать:
-nojvm
- отключить Java® Виртуальная машина, которая включена по умолчанию. Это может помочь улучшить эффективность MATLAB Runtime.
-nodisplay
- на Linux®запустите MATLAB Runtime без функций отображения.
Эти опции задаются перед инициализацией скомпилированных функций MATLAB. Вы делаете это, позвонив в initialize_runtime()
метод сгенерированного пакета Python с опциями MATLAB Runtime. Список опций MATLAB Runtime передается как список строк. Например, чтобы запустить среду MATLAB Runtime для пакета addmatrix
без отображения и без Java Virtual Machine:
import addmatrix addmatrix.initialize_runtime(['-nojvm', '-nodisplay'])
Если ваше приложение использует несколько пакетов Python, вы вызываете initialize_runtime()
только из одного пакета. Первый вызов устанавливает опции времени выполнения для сеанса MATLAB Runtime. Любые последующие вызовы игнорируются.
Чтобы вызвать скомпилированную функцию MATLAB, загрузите ее в MATLAB Runtime. Сделайте это, позвонив в initialize()
метод сгенерированного пакета Python. The initialize()
метод возвращает объект, который может использоваться для вызова скомпилированных функций MATLAB в пакете. Например, чтобы запустить MATLAB Runtime и загрузить функции MATLAB в addmatrix
пакет, использование:
import addmatrix myAdder = addmatrix.initialize()
Примечание
Если на initialize_runtime()
функция не вызывается перед вызовом initialize()
функция MATLAB Runtime запускается без опций запуска.
Примечание
Вы не можете импортировать matlab.engine
после импорта вашего компонента. Для получения дополнительной информации о matlab.engine
, см. Start and Остановка MATLAB Engine для Python.