Файлы области и компонента содержат раздел объявления:
Раздел объявления файла области находится там, где вы задаете переменные Through и Across для области. При необходимости можно также задать параметры всей области.
Раздел объявления файла компонента, где вы задаете все переменные, параметры, узлы, входы и выходы, которые вам нужно описать связи и поведение компонента. Они называются декларациями представителей.
В порядок использования переменной, параметра и так далее, в других разделах файла компонента (таких как ветви, уравнения и так далее), вы должны сначала определить его в разделе объявления.
Раздел объявления файла Simscape™ может содержать одно или несколько объявлений представителей.
Термин | Определение |
---|---|
Представитель |
|
Класс представителя |
|
К объявлению представителей применяются следующие правила:
Как в MATLAB® class system, объявленные представители появляются в блоке объявлений:
<ModelClass> <Identifier> <MemberClass> % members here end ... end
В отличие от системы классов MATLAB, <MemberClass>
может взять на себя любой из доступных классов представителя и диктует класс представителя представителей, заданный в блоке.
Как и система классов MATLAB, каждый объявленный представитель связан с идентификатором MATLAB, <Identifier>
. В отличие от системы классов MATLAB, представители должны быть объявлены с правым значением.
<ModelClass> <Identifier> <MemberClass> <Identifier> = <Expression>; % more members end ... end
<Expression>
с правой стороны знака равенства (=
) - выражение MATLAB. Это может быть постоянное выражение или вызов функции MATLAB.
Класс MATLAB выражения ограничен классом объявляемого представителя. Кроме того, тип данных выражения диктует тип данных заявленного представителя.
В следующей таблице представлены сводные данные классов представителей.
Класс представителя | Применимые классы моделей | Класс выражения MATLAB | Значение выражения | Перезаписываемый |
---|---|---|---|---|
parameters | domain component | Численное значение с модулем | Значение по умолчанию | Да |
variables | domain component | Численное значение с модулем | Номинальное значение и начальное условие по умолчанию | Да |
inputs | component | Скаляр, вектор или матричное двойное значение с модулем или нетипизированное | Значение по умолчанию, если введено | Нет |
outputs | component | Скаляр, вектор или матричное двойное значение с модулем или нетипизированное | Значение по умолчанию, если введено | Нет |
nodes | component | Образец узла, сопоставленного с областью | Тип области | Нет |
components | component | Образец класса компонента | Компонент представителя, включенный в составную модель (см. Объявление компонентов представителя) | Нет |
В языке Simscape представители объявления, такие как параметры, переменные, входные и выходные параметры, представлены как значение со связанным модулем. Синтаксис значения с модулем по существу является синтаксисом массива ячеек с двумя членами с единицами измерения значения:
{ value , 'unit' }
где value
является действительной матрицей, включая скаляр, и unit
- допустимая строка модулей измерения, заданная в реестре модулей или 1
(без единиц). В зависимости от типа представителя могут применяться определенные ограничения. Для получения дополнительной информации см. соответствующие страницы с описанием.
Для примера так вы объявляете параметр как значение с модулем:
par1 = { value , 'unit' };
Как и в MATLAB, запятая не требуется, и этот синтаксис эквивалентен:
par1 = { value 'unit' };
Чтобы объявить бесчисленный параметр, можно либо использовать тот же синтаксис:
par1 = { value , '1' };
или опустить модуль измерения и использовать этот синтаксис:
par1 = value;
Однако внутренне этот параметр будет рассматриваться как массив ячеек с двумя членами с единичными значениями { value , '1' }
.