Скалярное расширение является методом преобразования скалярных данных, чтобы совпадать с размерностями векторных или матричных данных. Например, в этом присвоении, скалярное расширение преобразовывает значение 1 к вектору или матрице, где все элементы равняются 1:
A = 1;
Скалярное расширение поддерживается только в графиках Stateflow®, которые используют C в качестве языка действия.
Предположим, что у вас есть функциональная подпись yy = f(uu)
, где формальные аргументы yy
и uu
являются скалярами. Примите, что у вас есть вызов функции y = f(u)
. Правила скалярного расширения для вызовов функции с одним выводом следуют.
Выведите y | Введите u | Результат |
---|---|---|
Скаляр | Скаляр | Никакое скалярное расширение не происходит. |
Вектор или матрица | Скаляр | Скалярное расширение происходит для f(u) , чтобы совпадать с размерностями y . |
Вектор или матрица | Вектор или матрица | Скалярное расширение происходит так, чтобы y[i] = f(u[i]) . |
Скаляр | Вектор или матрица | Сообщение об ошибке предупреждает вас к несоответствию размера. |
Для функций с несколькими выходными параметрами те же правила применяются за исключением случая, где выходные параметры и входные параметры вызова функции являются всеми векторами или матрицами. В этом случае скалярное расширение не происходит, и сообщение об ошибке предупреждает вас к несоответствию размера.
Правила скалярного расширения применяются ко всем функциям, которые вы используете в диаграммах Stateflow:
Функции MATLAB®
Графические функции
Функции Simulink®
Функции таблицы истинности