Я хочу переместить массив в stateflow на один элемент.Shift array in stateflow
В MATLAB, я хотел бы использовать circshift или этот код:
>> x = [1:5]
x =
1 2 3 4 5
>> x(2:end) = x(1:end-1)
x =
1 1 2 3 4
>> x(1) = 0 % New Value
x =
0 1 2 3 4
Как я могу это реализовать на языке Stateflow действий. Встроенная функция matlab невозможна из-за цели в реальном времени.
Я попытался это:
{x[2:end] = x[1:end-1];
x[1] = 0;}
но то синтаксическая ошибка. Для цикла должен быть также возможен, но то странно мне в MATLAB :-)
Заранее спасибо
Функция MATLAB (что вы называете встроенным MATLAB) возможна для цели в реальном времени. Фактически, это именно то, для чего они предназначены. – am304
@ am304, согласовано. Вы также можете рассмотреть возможность использования [MATLAB в качестве языка действия] (http://www.mathworks.com/help/stateflow/ug/modify-the-action-language-for-a-chart.html) для вашей диаграммы Stateflow, поскольку ['circshift' поддерживает генерацию кода] (http://www.mathworks.com/help/coder/ug/functions-supported-for-code-generation--alphabetical-list.html) –