Можно присвоить значения любой структуре, подструктуре или полю в блоке MATLAB Function. Вот рекомендации:
Операция | Условия |
---|---|
Присвоение одной структуры другой структуре | Необходимо задать каждую структуру с таким же числом, типом и размером полей, как Simulink.Bus объекты в базовом рабочем пространстве или локально как неявные объявления структур (см. «Создание структур в блоках MATLAB function»). |
Присвойте одну структуру подструктуре отличной структуры и наоборот | Вы должны задать структуру с таким же числом, типом и размером полей, как и подструктура, либо как Simulink.Bus объекты в базовом рабочем пространстве или локально как неявные объявления структур. |
Присвоение элемента одной структуры элементу другой структуры | Элементы должны иметь одинаковый тип и размер. |
Например, в следующей таблице представлены допустимые и недопустимые назначения структуры, основанные на спецификациях для модели, описанной в Attach Bus Signals to Блоки MATLAB Function:
Назначение | Действительный или недопустимый? | Объяснение |
---|---|---|
outbus = mystruct ; | Действительный | Оба outbus и mystruct иметь одинаковое количество, тип и размер полей. Структура outbus определяется Simulink.Bus MainBus объекта и mystruct определяется локально, чтобы соответствовать свойствам поля MainBus . |
outbus = inbus ; | Действительный | Оба outbus и inbus определяются тем же самым Simulink.Bus объект, MainBus . |
outbus1 = inbus.ele3 ; | Действительный | Оба outbus1 и inbus.ele3 имеют одинаковый тип и размер, поскольку каждый из них определяется Simulink.Bus SubBus объекта . |
outbus1 = inbus ; | Инвалид | Структура outbus1 определяется другим Simulink.Bus объект, чем структура inbus . |