Main Content

User-Defined Functions

R2026b
Blocks that extend Simulink functionality with custom algorithms, such as MATLAB Function, C Function, and S-Function

Use blocks from the User-Defined Functions library to extend Simulink® modeling functionality by creating new types of blocks. You can implement block algorithms using MATLAB®, C/C++, and Fortran® code. Use these blocks when built-in blocks do not provide the specific computation or system behavior you need.

To add blocks from this library to your model, see Add Blocks to Models.

Blocks

C Caller blockC CallerIntegrate C code in Simulink
C Function blockC FunctionIntegrate and call external C/C++ code from a Simulink model
Fcn blockFcnApply specified expression to input
Function Caller blockFunction CallerCall a Simulink function
Initialize Function blockInitialize FunctionExecute subsystem on model initialize event
Interpreted MATLAB Function blockInterpreted MATLAB Function(To be removed) Apply MATLAB function or expression to input
Level-2 MATLAB S-Function blockLevel-2 MATLAB S-FunctionUse Level-2 MATLAB S-function in model
MATLAB Function block icon.MATLAB FunctionInclude MATLAB code in Simulink models
MATLAB System blockMATLAB SystemInclude System object in model
Python Code blockPython CodeIntegrate native Python code into a Simulink model (Since R2025a)
Reinitialize Function block iconReinitialize FunctionExecute subsystem on model or subsystem reinitialize event (Since R2022a)
Reset Function blockReset FunctionExecute subsystem on model reset event
S-Function blockS-FunctionInclude S-function in model
S-Function Builder blockS-Function BuilderIntegrate C or C++ code to create S-functions
Simulink Function blockSimulink FunctionDefine a function using Simulink blocks
Terminate Function blockTerminate FunctionExecute subsystem on model terminate event

Tools

Library BrowserFind and add blocks to model

Topics

Featured Examples