Matrix from Automation server workspace
GetFullMatrix([in] BSTR varname, [in] BSTR workspace,
[in, out] SAFEARRAY(double) *pr, [in, out] SAFEARRAY(double) *pi)
GetFullMatrix(varname As String, workspace As String,
[out] XReal As Double, [out] XImag As Double
[xreal ximag] = GetFullMatrix(h,'varname','workspace',zreal,zimag)
[xreal ximag] = GetFullMatrix(h,'varname','workspace',zreal,zimag) gets matrix stored in variable varname from the specified workspace of the server attached to handle h. The function returns the real part in xreal and the imaginary part in ximag. The values for workspace are base or global.
The zreal and zimag arguments are matrices of the same size as the real and imaginary matrices (xreal and ximag) returned from the server. The zreal and zimag matrices are commonly set to zero.
Use GetFullMatrix for values of type double only. Use GetVariable or GetWorkspaceData for other types.
For VBScript clients, use the GetWorkspaceData and PutWorkspaceData functions to pass numeric data to and from the MATLAB® workspace. These functions use the variant data type instead of the safearray data type used by GetFullMatrix and PutFullMatrix. VBScript does not support safearray.
This example uses a Visual Basic® .NET client to read data from a MATLAB Automation server:
Create the Visual Basic application. To control flow between MATLAB and the application, use the MsgBox command.
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)")
Open the MATLAB window and type:
In the Visual Basic application:
MatLab.GetFullMatrix("M", "base", XReal, XImag) i = 2 %0-based array j = 3 MsgBox("XReal(" & i + 1 & "," & j + 1 & ")" & _ " = " & XReal(i, j))
To close and terminate MATLAB, click Ok.