Execute

Выполните команду MATLAB в Сервере автоматизации

Резюме

Сигнатура метода IDL

BSTR Execute([in] BSTR command)

Microsoft Visual Basic Client

Execute(command As String) As String

Клиент MATLAB

result = Execute(h,'command')

Описание

result = Execute(h,'command') выполняет оператор MATLAB®, заданный command в Сервере автоматизации MATLAB, присоединенном к h. Чтобы вызвать функцию с аргументами, использовать Feval.

Сервер возвращает выходной параметр команды и любых предупреждающих сообщений MATLAB или сообщений об ошибке в result. Если вы отключаете команду MATLAB с точкой с запятой и нет никаких предупреждений или сообщений об ошибке, result может быть пустым.

Функции COM доступны в системах Microsoft® Windows® только.

Примеры

развернуть все

В этом примере показано, как выполнить команду на матрице MATLAB и возвратить результат Визуальному клиенту Basic®.NET. Пример создает матрицу в клиенте и изменяет содержимое в рабочем пространстве MATLAB.

type comexecute.vb
Dim Matlab As Object 
Dim data(6) As Double 
Dim B As Object 
B = Nothing 
Matlab = CreateObject("matlab.application") 
For i = 0 To 6 
    data(i) = i * 15 
Next i 
Matlab.PutWorkspaceData("A", "base", data) 
Matlab.Execute("A = A.*2;") 
Matlab.GetWorkspaceData("A", "base", B) 
MsgBox("Doubled second value of A = " & B(0, 1))

В этом примере показано, как выполнить команду на матрице MATLAB и возвратить результат клиенту VBA. Пример создает матрицу в клиенте и изменяет содержимое в рабочем пространстве MATLAB.

type comexecute.vba
Dim Matlab As Object 
Dim MATLAB_version As String 
Dim data(6) As Double 
Set Matlab = CreateObject("matlab.application") 
For i = 0 To 6 
    data(i) = i * 15 
Next i 
x = Matlab.PutWorkspaceData("A", "base", data) 
Matlab.Execute ("A = A.*2;") 
y = Matlab.GetWorkspaceData("A", "base", B) 
MsgBox ("Doubled second value of A = " & B(0, 1))

Советы

  • К отображаемому выводу от Execute в клиентском окне задайте выходную переменную, result.

  • Если существует ошибка, Execute функция возвращает сообщение об ошибке MATLAB с символами ??? предварительно ожидаемый к тексту.

Представлено до R2006a