Main Content

Start and StopMATLABEngine forPython

StartMATLABEngine forPython

  • Start Python®at the operating system prompt.

  • Import thematlab.enginepackage into your Python session.

  • Start a new MATLAB®process by callingstart_matlab. Thestart_matlabfunction returns a Python object,eng, which enables you to pass data and call functions executed by MATLAB.

import matlab.engine eng = matlab.engine.start_matlab()

Run Multiple Engines

Start each engine separately. Each engine starts and communicates with its own MATLAB process.

eng1 = matlab.engine.start_matlab() eng2 = matlab.engine.start_matlab()

Stop Engine

Call either theexitor thequitfunction.

eng.quit()

If you exit Python with an engine still running, then Python automatically stops the engine and its MATLAB process.

Start Engine with Startup Options

Start the engine and pass the options as an input argument string tomatlab.engine.start_matlab. For example, start MATLAB with the desktop.

eng = matlab.engine.start_matlab("-desktop")

You can define multiple startup options with a single string. For example, start the desktop and set the numeric display format toshort.

eng = matlab.engine.start_matlab("-desktop -r 'format short'")

You also can start the desktop after you start the engine.

import matlab.engine eng = matlab.engine.start_matlab() eng.desktop(nargout=0)

Start Engine Asynchronously

Start the engine asynchronously. While MATLAB starts, you can enter commands at the Python command line.

import matlab.engine future = matlab.engine.start_matlab(background=True)

Create the MATLAB instance so you can perform computations in MATLAB.

eng = future.result()

See Also

Related Topics