GetFullMatrix

Матрица из рабочей области сервера автоматизации

Резюме

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

GetFullMatrix([in] BSTR varname, [in] BSTR workspace,
    [in, out] SAFEARRAY(double) *pr, [in, out] SAFEARRAY(double) *pi)

Microsoft Visual Basic Client

GetFullMatrix(varname As String, workspace As String,
    [out] XReal As Double, [out] XImag As Double

Клиент MATLAB

[xreal ximag] = GetFullMatrix(h,'varname','workspace',zreal,zimag)

Описание

[xreal ximag] = GetFullMatrix(h,'varname','workspace',zreal,zimag) возвращает матрицу, сохраненную в переменной varname от заданного workspace сервера, подключенного к указателю h. Функция возвращает вещественную часть в xreal и воображаемая часть в ximag. Значения для workspace являются base или global.

The zreal и zimag аргументы являются матрицами того же размера, что и вещественные и мнимые матрицы (xreal и ximag) возвращается с сервера. The zreal и zimag матрицы обычно равны нулю.

Использовать GetFullMatrix для 2-D матриц со значениями type double только. Использовать GetVariable или GetWorkspaceData для других типов. Чтобы использовать матрицы более высоких размерностей, измените форму матрицы 2-D после получения ее из MATLAB®.

Для клиентов VBScript используйте GetWorkspaceData и PutWorkspaceData функции для передачи числовых данных в рабочее пространство MATLAB и из нее. Эти функции используют variant тип данных вместо safearray тип данных, используемых GetFullMatrix и PutFullMatrix. VBScript не поддерживает safearray.

Примеры

расширить все

В этом примере показано, как считать сложную двойную матрицу с сервера автоматизации MATLAB.

type getfullmatrix.vba
Dim MatLab As Object
Dim Result As String
Dim XReal(4, 4) As Double
Dim XImag(4, 4) As Double
Dim i, j As Integer

Set MatLab = CreateObject("matlab.application")
Result = MatLab.Execute("M = rand(5);")
MsgBox("In MATLAB, type" & vbCrLf & "M(3,4)")
x = MatLab.GetFullMatrix("M", "base", XReal, XImag)
' Display element (3,4). The array in VBA
' is 0-based.
i = 2
j = 3
MsgBox("XReal(" & i + 1 & "," & j + 1 & ")" & _
    " = " & XReal(i, j))

В этом примере показано, как считать сложную двойную матрицу с сервера автоматизации MATLAB.

type getfullmatrix.vb
Dim MatLab As Object
Dim Result As String
Dim XReal(4, 4) As Double
Dim XImag(4, 4) As Double
Dim i, j As Integer

MatLab = CreateObject("matlab.application")
Result = MatLab.Execute("M = rand(5);")
MsgBox("In MATLAB, type" & vbCrLf & "M(3,4)")
MatLab.GetFullMatrix("M", "base", XReal, XImag)
' Display element (3,4). The array in VB .NET
' is 0-based.
i = 2
j = 3
MsgBox("XReal(" & i + 1 & "," & j + 1 & ")" & _
    " = " & XReal(i, j))
Представлено до R2006a