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.

Аргументы zreal и zimag являются матрицами, одного размера, когда действительные и мнимые матрицы (xreal и ximag) возвратились из сервера. zreal и матрицы zimag обычно обнуляются.

Используйте GetFullMatrix для 2D матриц со значениями типа double только. Используйте GetVariable или GetWorkspaceData для других типов. Чтобы использовать выше размерные матрицы, измените форму 2D матрицы после получения его от 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