В файле домена необходимо объявить переменные Through и Across, связанные с доменом. Эти переменные характеризуют поток энергии и обычно приходят парами, один Через и один Поперек. Simscape™ язык не требует наличия одинакового количества переменных Through и Across в определении домена, но настоятельно рекомендуется. Дополнительные сведения см. в разделе Основные принципы моделирования физических сетей.
variables начинает блок объявления Across variables, который завершается end ключевое слово. Этот блок содержит объявления для всех переменных Across, связанных с доменом. Определение класса модели домена может содержать несколько переменных Across, объединенных в один variables блок. Этот блок является обязательным.
Каждая переменная определяется как значение с единицей измерения:
variables
domain_across_var1 = {value,'unit'};
end
value - начальное значение. unit - допустимая строка единиц, определенная в реестре единиц. Дополнительные сведения см. в разделе Объявление области механического вращения.
Можно указать диапазоны инициализации для переменных области Поперек, например, чтобы исключить отрицательные значения для давления или температуры. Синтаксис совпадает с синтаксисом переменных компонентов:
variables
domain_across_var1 = {{value,'unit'},imin={value,'unit'},imax={value,'unit'}};
end
Дополнительные сведения см. в разделе Диапазон инициализации переменных.
Сквозные переменные семантически отличаются тем, что их значения должны балансировать в узле: для каждой сквозной переменной сумма всех её значений, перетекающих в точку ветвления, равна сумме всех её значений, вытекающих. Поэтому файл домена должен содержать отдельный блок объявления для его переменных Through с Balancing атрибут имеет значение true.
variables(Balancing = true) начинается блок определения сквозных переменных, который завершается end ключевое слово. Этот блок содержит объявления для всех переменных Through, связанных с доменом. Определение класса модели домена может содержать несколько переменных Through, объединенных в один variables(Balancing = true) блок. Этот блок является обязательным.
variables(Balancing = true)
domain_through_var1 = {value,'unit'};
end