Interpreted MATLAB Function

Apply MATLAB function or expression to input


User-Defined Functions


The Interpreted MATLAB Function block applies the specified MATLAB® function or expression to the input. The output of the function must match the output dimensions of the block or an error occurs.

Some valid expressions for this block are:

atan2(u(1), u(2))

    Note   This block is slower than the Fcn block because it calls the MATLAB parser during each integration step. Consider using built-in blocks (such as the Fcn block or the Math Function block) instead. Alternatively, you can write the function as a MATLAB S-function or MEX-file S-function, then access it using the S-Function block.

Data Type Support

The Interpreted MATLAB Function block accepts one real or complex input of type double and generates real or complex output of type double, depending on the setting of the Output signal type parameter.

Parameters and Dialog Box

MATLAB function

Specify the function or expression. If you specify a function only, it is not necessary to include the input argument in parentheses.

Output dimensions

Specify the dimensions of the signal output by this block. If the output dimensions are to be the same as the dimensions of the input signal, specify –1. Otherwise, enter the dimensions of the output signal, for example, 2 for a two-element vector. In either case, the output dimensions must match the dimensions of the value returned by the function or expression in the MATLAB function field.

Output signal type

Specify the output signal type of the block as real, complex, or auto. A value of auto sets the output type to be the same as the type of the input signal.

Collapse 2-D results to 1-D

Select this check box to output a 2-D array as a 1-D array containing the 2-D array's elements in column-major order.

Sample time


Direct Feedthrough


Sample Time

Inherited from the driving block

Scalar Expansion




Zero-Crossing Detection


Was this topic helpful?