How does Simulink Selector block work to extract dimension MxN matrix into 1xN row vectors?
56 ビュー (過去 30 日間)
表示 古いコメント
Recently I was trying to take a 2x5 matrix signal and convert it into two 1x5 row vectors for further computation. To do so, I used the Simulink Selector block, and selected a 2 dimensional input (M of my MxN). Then to try and get just a row vector for dimension 1 and 2 respectively, I selected the Starting Index Option, and made sure that dimensional values were consistent (see image):

This setup works for the first row vector, but fails for the second row vector claiming the following error:

I eventually figured out how to split them into row vectors correctly via the following setup:

I am curious why the first setup works for the first row, but fails for the second row. Is this a bug, or do I have a fundamental misunderstanding of how this selector block is functioning? It seems odd that it would work in an inconsistent manner.
採用された回答
Fangjun Jiang
2018 年 9 月 24 日
Are you sure? I tried as your example and there is no error. The error happened in "Selector1" yet the dialog show "Selector2" and "Selector3".
3 件のコメント
Fangjun Jiang
2018 年 9 月 24 日
The problem lies in the second dimension. The input is 2x5, so for the second dimension, if you starts with 2 but the output size is 5, then it requires 2x6 input. If you change the size from 5 to 4, then the error disappears.
その他の回答 (0 件)
参考
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!