MATLAB: Save a value to variable (Simulink)

simulinksubmatrix

Hi,
I am using the Submatrix block in Simulink, in which I select the output matrix to contain all the rows of the input matrix and the first x columns (using the "Ending column: index" parameter). I would like though to choose x (the number of columns) according to some other calculations taking place in my algorithm. The Submatrix block, however, does not offer the option to pass its parameters as inputs.
Any idea of how I could achieve that? A possible solution would be if I could save the value of x to a variable and then give the variable name for the Ending column index parameter… Is there any way to do that?

Best Answer

Use the Selector block:
You will be able to select rows or columns using a signal.
Based your description, the Index Option "Starting and ending indices (port)" should allow you to select a variable number of columns.
If you are not familiar with variable-size signals, I also recommend going through the "Working with Variable-Size Signals" section of the documentation: