mATLAB. Системный класс

Пакет: mATLAB

Базовый класс для Системных объектов

Описание

mATLAB. Система является базовым классом для Системных объектов. В вашем файле определения класса необходимо разделить объект на подклассы от этого базового класса (или от другого класса, который выводит от этого базового класса). Разделение на подклассы позволяет вам использовать методы реализации и обслуживания, предоставленные этим базовым классом, чтобы создать ваш объект. Введите этот синтаксис как первую строку вашего файла определения класса, чтобы непосредственно наследоваться MATLAB. Системный базовый класс, где ObjectName является именем вашего объекта:

classdef ObjectName < matlab.System

Примечание

Необходимо установить Access = protected для каждого метода matlab.System, который вы используете в своем коде.

Методы

allowModelReferenceDiscreteSampleTimeInheritanceImplСостояние наследования частоты дискретизации модели - ссылки для дискретных частот дискретизации
getDiscreteStateImplЗначения свойств дискретного состояния
getGlobalNamesImplГлобальная переменная называет для блока MATLAB System
getHeaderImplЗаголовок для отображения Системного объекта
getImpulseResponseLengthImplЗадайте длину входных эффектов для подсистем потока данных
getInputDimensionConstraintImplЗадайте входные ограничения размерности для подсистем потока данных
getInputNamesImplИмена входных портов блока MATLAB System
getNumInputsImplКоличество входных параметров к Системному объекту
getNumOutputsImplКоличество выходных параметров от Системного объекта
getOutputDimensionConstraintImplВыходные Define ограничения размерности для подсистем потока данных
getOutputNamesImplИмена выходных портов блока MATLAB System
getPropertyGroupsImplГруппы свойства для отображения Системного объекта
getSimulateUsingImplУкажите, что значение для Моделирует параметр использования
infoImplИнформация о Системном объекте
isDiscreteStateSpecificationMutableImplУправляйте, могут ли дискретные состояния изменить тип данных
isInactivePropertyImplСостояние неактивного свойства
isInputComplexityMutableImplУстановите, может ли входная сложность Системного объекта измениться
isInputDataTypeMutableImplУстановите, может ли тип входных данных Системного объекта измениться
isInputSizeLockedImplСостояние заблокированного входного размера
isInputSizeMutableImplУстановите, может ли входной размер Системного объекта измениться
isTunablePropertyDataTypeMutableImplУстановите, могут ли настраиваемые свойства изменить тип данных
loadObjectImplЗагрузите Системный объект из файла MAT
processInputSpecificationChangeImplВыполните действия, когда введенный размер, сложность или тип данных изменятся
processTunedPropertiesImplДействие, когда настраиваемые свойства изменяются
releaseImplВысвободите средства
resetImplСбросьте состояния Системного объекта
saveObjectImplСохраните Системный объект в файле MAT
setPropertiesУстановите значения свойств с помощью пар "имя-значение" при создании Системного объекта
setupImplИнициализируйте Системный объект
showFiSettingsImplВидимость вкладки типа данных фиксированной точки для Системных объектов
showSimulateUsingImplВидимость параметра Simulate using
stepImplSystem вывод и состояние обновляет уравнения
supportsMultipleInstanceImplОбъект Support System в Simulink Для Каждой подсистемы
validateInputsImplПодтвердите входные параметры к Системному объекту
validatePropertiesImplПодтвердите значения свойств Системного объекта

Атрибуты

Можно применить атрибуты к Системе object™ класс и свойства. Чтобы узнать больше об атрибутах, см. Атрибуты класса или Атрибуты свойств.

Атрибут класса

Эта таблица показывает атрибуты, что можно обратиться к классу Системного объекта MATLAB®.

Название атрибутаОписание
StrictDefaults

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

  • isInputSizeMutableImpl

  • isInputComplexityMutableImpl

  • isInputDataTypeMutableImpl

  • isTunablePropertyDataTypeMutableImpl

  • isDiscreteStateDataTypeMutableImpl

По умолчанию эти методы возвращают true. Когда вы добавляете этот атрибут класса, эти методы возвращают false по умолчанию. Заставляя эти методы возвратить false, заданные аспекты входных параметров, настраиваемых свойств или дискретных состояний не могут измениться. Можно всегда реализовывать эти методы индивидуально. Индивидуально настраиваемые методы более приоритетны по сравнению с атрибутом StrictDefaults.

Для Системных объектов, используемых в Simulink®, этот атрибут только ограничивает входные изменения размера, потому что Simulink уже ограничивает сложность и тип данных для настраиваемых свойств, входных параметров и состояний.

Задайте значение атрибута класса в круглых скобках, сопровождаемых именем класса, например:

classdef (StrictDefaults) MySystemObject < matlab.System

Атрибуты свойств

Можно применить следующие атрибуты к любому свойству пользовательского Системного объекта.

NontunableИспользуйте Nontunable, чтобы препятствовать тому, чтобы пользователь изменил то значение свойства, в то время как объект используется. По умолчанию все свойства являются настраиваемыми. Атрибут Nontunable полезен, чтобы заблокировать вниз свойство, которое имеет побочные эффекты, когда изменено. Этот атрибут также полезен для блокировки значения свойства, принятого, чтобы быть постоянным во время обработки. Необходимо всегда задавать свойства, которые влияют на количество портов ввода или вывода как Nontunable.
ЛогическийИспользуйте Logical, чтобы ограничить значение свойства логическим, скалярным значением. Любое скалярное значение, которое может быть преобразовано в логическое, также допустимо, такой как 0 или 1.
PositiveIntegerИспользуйте PositiveInteger, чтобы ограничить значение свойства положительным целочисленным значением.
DiscreteStateИспользуйте DiscreteState, чтобы отметить свойство, таким образом, он отобразит свое значение состояния, когда вы будете использовать метод getDiscreteState.

Примеры

свернуть все

Создайте простой Системный объект, AddOne, который разделяет на подклассы от matlab.System Система. Вы помещаете этот код в файл MATLAB, AddOne.m m.

classdef AddOne < matlab.System
% ADDONE Compute an output value that increments the input by one

    methods (Access = protected)
       % stepImpl method is called when the object is called.
       function y = stepImpl(~,x)
          y = x + 1;
       end    
    end
end

Используйте этот объект путем создания экземпляра AddOne, обеспечения входного параметра и выполнения объекта.

hAdder = AddOne;
x = 1;
hAdder(x);

Присвойте атрибут Nontunable свойству InitialValue, которое вы задаете в своем файле определения класса.

properties (Nontunable)
   InitialValue
end
Была ли эта тема полезной?