The FIND block in Simulink is fixed size, but labeled as variable
古いコメントを表示
I pass the vector [0; 0; 2; 0; 0; 2; 0; 0] (8x1) into the FIND block in Simulink. According to the documentation, the output should be the indices of the non-zero elements in the vector. This, by definition, would be a variable size, and the output is shown as variable size (thick dashed line instead of thin solid line). However, the size is 8 and not 2 as I expect it. The output is padded with 0's, so it is [3; 6; 0; 0; 0; 0; 0; 0].
The next step in my simulation is to pass it into an Embedded Matlab script. I configure the input port to be variable size, but when I run it, I get the error "Data is inferred as a variable size matrix, while its specified type is something else."
I tried using a selector block to pick out the first 2 values, but the output is exactly the same - variable size and padded with zeros.
Any advice on how to get the output of FIND into an EML script in Simulink successfully?
採用された回答
その他の回答 (0 件)
カテゴリ
ヘルプ センター および File Exchange で Event Functions についてさらに検索
製品
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!