Импорт доменных и классов компонента

Необходимо хранить файлы модели Simscape™ (области и компоненты) в директориях пакета, как описано в Организации файлов Simscape. Как система класса MATLAB®, каждый пакет задает осциллограф (или пространство имен). Можно однозначно определить образцовое имя класса и получить доступ к нему с помощью полностью определенной ссылки. Например, можно получить доступ к классу модели предметной области electrical с помощью foundation.electrical.electrical.

В составных компонентах объявления члена класса включают пользовательские типы, то есть, классы компонента. Если вы не используете операторы import, доступ к именам классов компонента от различного осциллографа всегда требует полностью определенной ссылки. Например, библиотека Foundation блок Resistor:

foundation.electrical.elements.resistor

Механизм импорта предоставляет удобные средние значения доступу к классам, заданным в различных осциллографах со следующими преимуществами:

  • Предоставляет доступ к образцовым именам классов, заданным в других осциллографах без полностью определенной ссылки

  • Обеспечивает простое и явное представление зависимостей от других пакетов

Существует два типа синтаксиса для оператора import. Каждый - квалифицированный импорт, который импортирует определенный пакет или класс:

import package_or_class;

Другой является неполным импортом, который импортирует все подпакеты и классы под заданным пакетом:

import package.*;

Пакет или имя класса должны быть именем полного пути, начинающим с корня библиотеки (имя каталога пакета верхнего уровня) и содержащим имена подпакета по мере необходимости.

Необходимо поместить операторы import в начале файла Simscape. Осциллографом импортированных имен является целый файл Simscape, кроме раздела setup. Например, если вы используете следующий оператор import:

import foundation.electrical.elements.*;

в начале вашего файла компонента можно обратиться к библиотеке Foundation блок Resistor в другом месте в этом файле компонента непосредственно по наименованию:

rotorResistor = resistor(R = rotor_resistance);

Смотрите страницу с описанием import для специфических особенностей синтаксиса. Для примера использования операторов import в собственном компоненте смотрите пример Линии передачи. Чтобы просмотреть файл Simscape, откройте пример, затем дважды кликните Open the transmission line component library. В окне TransmissionLine_lib дважды кликните блок T-Section Transmission Line и затем, в диалоговом окне блока, нажмите Source code.

Похожие темы