MATLAB Answers

Is there a way to force Simulink to treat a 3x3x1 matrix as 3D instead of a 2D 3x3 matrix?

5 views (last 30 days)
Guy Squillace
Guy Squillace on 13 Feb 2020
I have a portion of code that sizes a matrix x as 3x3xn, where n can vary between simulations. If I have n>1 I can index values as y1 = x(:,:,1), y2 = x(:,:,2) and so on. If n = 1, then x is rtated as a 3x3 matrixand indexing x(:,:,1) produces an index out of bounds error because there is no third dimension. Is there a way to force x to always have three dimensions?


Sign in to comment.

Answers (1)

Siriniharika Katukam
Siriniharika Katukam on 18 Feb 2020
I tried the following code and didn’t find any error.
x = rand(3,3,1);
if you try accessing x(:,:,2), then only you get the error you encountered.


Sign in to comment.





Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!