(Not recommended) Apply specified expression to input
Fcn is not recommended. For more complicated expressions, use the MATLAB Function block. For less complicated expressions, consider replacing with blocks that model the same behavior.
u — The input to the block. If
is a vector,
u(i) represents the
element of the vector;
represents the first element.
Arithmetic operators (+ -
* / ^).
Relational operators (
== != > < >= <=) —
The expression returns 1 if the relation is true; otherwise, it returns
Logical operators (&& || !) — The expression returns 1 if the relation is true; otherwise, it returns 0.
Mathematical functions —
sign in MATLAB®),
The Fcn block does not support
fix. Use the Rounding Function block
to apply these rounding modes.
Workspace variables — Variable names that are not recognized in the
preceding list of items are passed to MATLAB for evaluation. Matrix or vector elements must be specifically
A(1,1) instead of
the first element in the matrix).
The Fcn block observes the following rules of operator precedence:
+ - (unary)
> < <= >=
The expression differs from a MATLAB expression in that the expression cannot perform matrix computations. Also, this block does not support the colon operator (:).
Block input can be a scalar or vector. The output is always a scalar. For vector
output, consider using the Math Function block. If a block input is
a vector and the function operates on input elements individually (for example, the
sin function), the block operates on only the first vector
You cannot tune the expression during simulation in Normal or Accelerator mode (see How Acceleration Modes Work), or in generated code. To implement tunable expressions, tune the expression outside the Fcn block. For example, use the Relational Operator block to evaluate the expression outside.
The Fcn block does not support custom storage classes. See Organize Parameter Data into a Structure by Using Struct Storage Class (Embedded Coder).
Expression— Specify the mathematical expression
Specify the mathematical expression to apply to the input. Expression components are listed above. The expression must be mathematically well-formed (uses matched parentheses, proper number of function arguments, and so on). The expression has restrictions on tunability (see Limitations).
|Type: character vector|
|Value: mathematical expression|
Sample time— Specify sample time in the block
Behavior changed in R2020a
The Fcn block is no longer available in the Simulink > User-Defined library and is not recommended. For more complicated expressions, use the MATLAB Function block. For less complicated expressions, consider replacing with blocks that model the same behavior.