MatlabInteractor¶
-
interface
MatlabInteractor
¶ Interacts with a session of MATLAB.
Author: Joshua Kaplan
Methods¶
eval¶
feval¶
-
public void
feval
(String functionName, Object... args)¶ Calls a MATLAB function with the name
functionName
, returning the result. Arguments to the function may be provided asargs
, but are not required if the function needs no arguments. The function arguments will be converted into MATLAB equivalents as appropriate. Importantly, this means that aString
will be converted to a MATLABchar
array, not a variable name.Parameters: - functionName – the name of the MATLAB function to call
- args – the arguments to the function
Throws:
getVariable¶
returningEval¶
-
public Object[]
returningEval
(String command, int nargout)¶ Evaluates a command in MATLAB, returning the result. This is equivalent to MATLAB’s
eval('command')
. In order for the result of this command to be returned the number of arguments to be returned must be specified bynargout
. This is equivalent in MATLAB to the number of variables placed on the left hand side of an expression. For example, in MATLAB theinmem
function may be used with either 1, 2, or 3 return values each resulting in a different behavior:M = inmem; [M, X] = inmem; [M, X, J] = inmem;
The returned
Object
array will be of lengthnargout
with each return argument placed into the corresponding array position. If the command cannot return the number of arguments specified bynargout
then an exception will be thrown.Parameters: - command – the command to be evaluated in MATLAB
- nargout – the number of arguments that will be returned from evaluating
command
Throws: Returns: result of MATLAB command, the length of the array will be
nargout
returningFeval¶
-
public Object[]
returningFeval
(String functionName, int nargout, Object... args)¶ Calls a MATLAB function with the name
functionName
, returning the result. Arguments to the function may be provided asargs
, but are not required if the function needs no arguments. The function arguments will be converted into MATLAB equivalents as appropriate. Importantly, this means that aString
will be converted to a MATLABchar
array, not a variable name. In order for the result of this function to be returned the number of arguments to be returned must be specified bynargout
. This is equivalent in MATLAB to the number of variables placed on the left hand side of an expression. For example, in MATLAB theinmem
function may be used with either 1, 2, or 3 return values each resulting in a different behavior:M = inmem; [M, X] = inmem; [M, X, J] = inmem;
The returned
Object
array will be of lengthnargout
with each return argument placed into the corresponding array position. If the function is not capable of returning the number of arguments specified bynargout
then an exception will be thrown.Parameters: - functionName – the name of the MATLAB function to call
- nargout – the number of arguments that will be returned by
functionName
- args – the arguments to the function
Throws: Returns: result of MATLAB function, the length of the array will be
nargout