Initialize Function - Execute subsystem on model initialize event - Simulink (original) (raw)
Main Content
Execute subsystem on model initialize event
Libraries:
Simulink / User-Defined Functions
Description
The Initialize Function block is a preconfigured Subsystem block that executes on a model initialize event. By default, theInitialize Function block includes:
- An Event Listener block with the Event type set to
Initialize
- A Constant block with the Constant value set to
0
- A State Writer block with noState owner block set
Use this block when you need to initialize a task based on an event. For example,Initialize Function block inside a Simulink model referenced by aModel block is triggered when the Model block receives a function-call control signal at its initialize port. For more information about the modeling patterns using Initialize Function block, see Common Uses of the Initialize Function Block. This block allows you to schedule and control the initialization of a task in a model.
Customize the contents of the Initialize Function block by, for example, replacing the Constant block with source blocks that generate the state value for the State Writer block and specifying aState owner block for the State Writer block.
Conditionally executed subsystems with output ports are fully supported withinInitialize Function blocks. For a list of unsupported blocks and features, see Initialize, Reinitialize, Reset, and Terminate Function Limitations.
The input and output ports of a component containing Initialize Function and Terminate Function blocks must connect toInport and Outport blocks, respectively.
The code generated from this block is part of the model_initialize
function that is called once at the beginning of model execution.
You can select an Initialize Function, Reinitialize Function, Reset Function, or Terminate Function block or a corresponding state owner block to highlight blocks related to it. To show a related block in an open diagram or new tab, pause on the ellipsis that appears after selection. Then, select Related Blocks from the action bar. When multiple blocks correspond to the selected block, a list of related blocks opens. You can filter the list of related blocks by entering a search term in the text box. After you select a related block from the list, window focus goes to the open diagram or new tab that shows the related block.
Examples
Block Characteristics
Data Types | Booleana | busa | doublea | enumerateda | fixed pointa | halfa | integera | singlea | stringa |
---|---|---|---|---|---|---|---|---|
Direct Feedthrough | no | |||||||
Multidimensional Signals | yesa | |||||||
Variable-Size Signals | no | |||||||
Zero-Crossing Detection | no | |||||||
a Actual data type or capability support depends on block implementation. |
Extended Capabilities
Actual code generation support depends on block implementation.
Actual data type support depends on block implementation.
Version History
You can define variant control variables in the mask or model workspaces to control active variants in the Initialize Function block, provided the Generate preprocessor conditionals parameter isoff
.