Этот пример показывает, как использовать массивы MATLAB® в Python®.
Пакет matlab
обеспечивает новые типы данных Python, чтобы создать массивы, которые могут быть переданы функциям MATLAB. Пакет matlab
может создать массивы любого MATLAB числовой или логический тип от типов последовательности Python. Поддерживаются многомерные массивы MATLAB.
Создайте массив MATLAB в Python и вызовите функцию MATLAB на нем.
import matlab from production_server import client client_obj = client.MWHttpClient("http://localhost:9910") x = matlab.double([1,4,9,16,25]) print(client_obj.myArchive.sqrt(x)) [[1.0,2.0,3.0,4.0,5.0]]
Можно использовать matlab.double
, чтобы создать массив, удваивается, учитывая список Python, который содержит числа. Можно вызвать функцию MATLAB, такую как sqrt
на x
, и возвращаемое значение является другим массивом matlab.double
.
Создайте многомерный массив. Функция magic
возвращает 2D массив в осциллограф Python.
a = client_obj.myArchive.magic(6) print(a) [[35.0,1.0,6.0,26.0,19.0,24.0],[3.0,32.0,7.0,21.0,23.0,25.0], [31.0,9.0,2.0,22.0,27.0,20.0],[8.0,28.0,33.0,17.0,10.0,15.0], [30.0,5.0,34.0,12.0,14.0,16.0],[4.0,36.0,29.0,13.0,18.0,11.0]]
Вызовите функцию tril
, чтобы получить нижний треугольный фрагмент a
.
b = client_obj.myArchive.tril(a) print(b) [[35.0,0.0,0.0,0.0,0.0,0.0],[3.0,32.0,0.0,0.0,0.0,0.0], [31.0,9.0,2.0,0.0,0.0,0.0],[8.0,28.0,33.0,17.0,0.0,0.0], [30.0,5.0,34.0,12.0,14.0,0.0],[4.0,36.0,29.0,13.0,18.0,11.0]]