Documentation

Variable-Size Data

Definition and differences for code generation

Blocks

MATLAB FunctionInclude MATLAB code in models that generate embeddable C code
MATLAB SystemInclude System object in model

Functions

coder.varsizeDeclare variable-size array

Topics

Code Generation for Variable-Size Arrays

Variable-size data is data whose size is not known at compile time or whose size can change at run time.

Control Support for Variable-Size Arrays in a MATLAB Function Block

Use the Ports and Data Manager to enable or disable variable-size data support in a MATLAB Function block

Declare Variable-Size Inputs and Outputs

Use the Ports and Data Manager to specify the size and upper bound of variable-size inputs and outputs.

Define Variable-Size Data for Code Generation

Choose a method for defining variable-size data.

Use Dynamic Memory Allocation for Variable-Size Arrays in a MATLAB Function Block

Generate C/C++ code that uses dynamic memory allocation.

Control Memory Allocation for Variable-Size Arrays in a MATLAB Function Block

Disable dynamic memory allocation or specify a dynamic memory allocation threshold for MATLAB Function blocks.

Specify Upper Bounds for Variable-Size Arrays

To avoid dynamic memory allocation, specify upper bounds for a variable-size array.

Incompatibilities with MATLAB in Variable-Size Support for Code Generation

Sometimes, the results for variable-size data in generated code are different than the results in MATLAB®.

Variable-Sizing Restrictions for Code Generation of Toolbox Functions

Some restrictions for variable-size data apply to multiple toolbox functions.

Use a Variable-Size Signal in a Filtering Algorithm

Simulate a model that uses a variable-size vector to store the values of a white noise signal.

Troubleshooting

Diagnose and Fix Variable-Size Data Errors

Troubleshoot size mismatch and upper bounds detection errors.

Was this topic helpful?