Можно задать Системные объекты из Редактора MATLAB® с помощью опций вставки кода. Когда вы выбираете эти опции, редактор MATLAB добавляет предопределенные свойства, методы, состояния, входные параметры или выходные параметры к вашей Системе object™. Используйте эти инструменты, чтобы создать и изменить Системные объекты быстрее и увеличить точность путем сокращения опечаток.
Чтобы получить доступ к опциям редактирования Системного объекта, создайте новый Системный объект или откройте существующий.
Чтобы добавить предопределенный код к вашему Системному объекту, выберите код из соответствующего меню. Например, когда вы нажимаете Insert Property> Numeric, MATLAB Editor добавляет следующий код:
properties(Nontunable)
Property
end
Редактор MATLAB вставляет новое свойство с именем по умолчанию Property
, который можно переименовать. Если у вас есть существующая группа свойств с атрибутом Nontunable
, редактор MATLAB вставляет новое свойство в ту группу. Если у вас нет группы свойства, редактор MATLAB создает один с правильным атрибутом.
Вставьте опции
Свойства | Свойства Системного объекта: Числовой, Логический, Перечисление, Положительное Целое число, Настраиваемое Числовой, Частный, Защищенный, и Пользовательский. Когда вы выбираете Enumeration или Custom Properties, отдельное диалоговое окно открывается, чтобы вести вас в создании этих свойств. |
Методы | Методы обычно используются в определениях Системного объекта. Редактор MATLAB создает только структуру метода. Вы задаете действия того метода. Меню Insert Method организует методы категориями, такими как Алгоритм, Вводы и выводы, и Свойства и состояния. Когда вы выбираете метод из меню, редактор MATLAB вставляет шаблон метода в ваш код Системного объекта. В этом примере, выбор Insert Method> высвобождают средства, вводит следующий код: function releaseImpl(obj) % Release resources, such as file handles end Если метод из меню Insert Method присутствует в коде Системного объекта, тот метод показывают заштрихованный в меню Insert Method: |
Состояния | Свойства, содержащие атрибут |
Вводы / Выходные параметры | Вводы, выходные параметры и связанные методы, те, которые Подтверждают входные параметры и Запрещают входные изменения размера. Когда вы выбираете ввод или вывод, редактор MATLAB вводит заданный код в методе function y = stepImpl(obj,u,u2) % Implement algorithm. Calculate y as a function of % input u and discrete states. y = u; end |
Откройте новый или существующий Системный объект.
В редакторе MATLAB выберите Insert Property> Enumeration.
В диалоговом окне Enumeration войдите:
Имя свойства с TemperatureUnit
.
Имя перечисления с TemperatureUnitValues
.
Выберите Create новый флажок перечисления.
Удалите существующие перечислимые величины с - (минус) кнопка.
Добавьте три перечислимые величины с + (плюс) кнопка и следующие значения:
Fahrenheit
Celsius
Kelvin
Выберите Fahrenheit
как значение по умолчанию путем нажатия на Default.
Диалоговое окно теперь смотрит как показано:
Чтобы создать это перечисление и связанный класс, нажмите Insert.
В редакторе MATLAB создается дополнительный файл класса с определением перечисления. Сохраните файл определения класса перечисления как TemperatureUnitValues.m
m.
classdef TemperatureUnitValues < int32 enumeration Fahrenheit (0) Celsius (1) Kelvin (2) end end
В определении класса Системного объекта был добавлен следующий код:
properties(Nontunable)
TemperatureUnit (1, 1) TemperatureUnitValues = TemperatureUnitValues.Fahrenheit
end
Для получения дополнительной информации о перечислениях смотрите Предельные Значения свойств к Конечному Списку.
Откройте новый или существующий Системный объект.
В редакторе MATLAB выберите Insert Property> Custom Property.
В диалоговом окне Custom Property, под Атрибутами Системного объекта, выбирают Nontunable. Под MATLAB Атрибуты свойств выберите Constant. Покиньте GetAccess как public
. SetAccess отображается серым, потому что свойства постоянного типа не могут быть установлены с помощью методов Системного объекта.
Нажмите Insert, и следующий код введен в определение Системного объекта:
properties(Nontunable, Constant)
Property
end
Замените Property
на свое свойство.
properties(Nontunable, Constant)
FreezingPointFahrenheit = 32;
end
Откройте новый или существующий Системный объект.
В редакторе MATLAB выберите Insert Method> входные параметры Validate.
Редактор MATLAB вводит этот код в Системный объект:
function validateInputsImpl(obj,u) % Validate inputs to the step method at initialization end