sdo.OperatingPointSetup class

Пакет: sdo

Настройте расчет установившейся рабочей точки

Синтаксис

OpPointSetup = sdo.OperatingPointSetup(opSpec,inputsToUse,statesToUse)
OpPointSetup = sdo.OperatingPointSetup(___,[findopOpts])

Описание

Рабочая точка динамической системы задает состояния и входные сигналы корневого уровня модели в определенное время. Для примера в модели автомобильного двигателя такие переменные, как скорость вращения двигателя, положение дросселя, температура двигателя и окружающие атмосферные условия, обычно описывают рабочую точку.

Установившаяся рабочая точка модели, также называемая условием равновесия или обрезки, включает переменные состояния, которые не изменяются со временем. Модель может иметь несколько установившихся рабочих точек. Для примера простой демпфированный маятник имеет две установившиеся рабочие точки, в которых положение маятника не изменяется со временем.

Использование sdo.OperatingPointSetup установить модель в установившееся состояние как часть оптимизации или оценки модели. Этот шаг полезен, когда вы выполняете оптимизацию или оценку, используя данные, измеренные, когда система находилась в ненулевом установившемся состоянии. Подбор состояния модели к состоянию системы, используемый для набора данных, помогает уменьшить переходные процессы модели и улучшает результаты.

Вам нужен Simulink® Управляйте Design™ тулбоксом, чтобы использовать sdo.OperatingPointSetup.

Конструкция

OpPointSetup = sdo.OperatingPointSetup(opSpec,inputsToUse,statesToUse) создает sdo.OperatingPointSetup объект, использующий спецификации рабочей точки opSpec, входы inputsToUse, и состояния statesToUse.

OpPointSetup = sdo.OperatingPointSetup(___,[findopOpts]) создает sdo.OperatingPointSetup объект с использованием дополнительных аргументов, заданных с помощью findopOpts.

Входные параметры

расширить все

Спецификации рабочей точки, заданные как объект спецификации рабочей точки или пустые []. Использовать operspec (Simulink Control Design), чтобы создать opSpec объект.

Также свойство sdo.operatingPointSetup объект. Дополнительные сведения см. в разделе OperatingPointSpec.

Входы для настройки рабочей точки, заданные как вектор индексов, массив ячеек с блоком путями или пустые [].

Можно задать входы для использования как:

  • Вектор индексов. Для примера можно использовать входной параметр inputsToUse как:

    inputsToUse = [2 3]

  • Массив ячеек из блочных путей. Для примера можно использовать входной параметр inputsToUse как:

    inputsToUse = {'modelname/in2','modelname/in3'}

  • Пустой массив [] если вы не хотите использовать какой-либо из входов.

Когда вход поставляется данными эксперимента в оценке параметра, этот вход не должен включаться в inputsToUse.

Также свойство sdo.operatingPointSetup объект. Для получения дополнительной информации смотрите UseOperatingPointInputs.

Состояния, используемые для настройки рабочей точки, заданные как вектор индексов, массив ячеек с блоком путями или пустые [].

Можно задать состояния для использования в качестве:

  • Вектор индексов. Если вы задаете statesToUse как вектор индексов, состояния должны быть в том же порядке, что и состояния в opSpec. Для примера можно использовать входной параметр statesToUse как:

    statesToUse = [2 3]

  • Массив ячеек из блочных путей. Для примера можно использовать входной параметр statesToUse как:

    statesToUse = {'modelname/in2','modelname/in3'}

  • Пустой массив [] если вы не используете ни одно из состояний.

Также свойство sdo.OperatingPointSetup объект. Дополнительные сведения см. в разделе UseOperatingPointStates.

Опции обрезки для поиска рабочей точки из спецификации, заданные как findopOptions набор опций. Используйте findopOptions (Simulink Control Design) для создания findopOpts набор опций.

Также свойство sdo.OperatingPointSetup объект. Для получения дополнительной информации см. FindopOptions.

Свойства

расширить все

Спецификация рабочей точки для модели Simulink, заданная как объект спецификации рабочей точки или пустая [].

Использовать operspec (Simulink Control Design), чтобы создать спецификации рабочих точек для вашей модели Simulink и создать объект спецификации рабочих точек, opSpec. Для примера, для компонентов спецификации, связанных с состояниями, можно изменить Known, SteadyState, Min, Max, dxMin, и dxMax.

Можно изменить спецификации рабочей точки с помощью записи через точку. Для примера, если opSpec является объектом спецификации рабочей точки, opSpec.States(1).x обращается к значениям состояний первой модели.

Для получения дополнительной информации о спецификациях рабочей точки см. operspec (Simulink Control Design).

Входы для настройки рабочей точки, заданные как вектор индексов, массив ячеек с блоком путями или пустые [].

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

Можно задать входы для использования как:

  • Вектор индексов. Для примера можно использовать свойство UseOperatingPointInputs для определения входов, используемых в качестве:

    OpPointSetup.UseOperatingPointInputs = [2 3]
    где OpPointSetup является sdo.OperatingPointSetup объект.

  • Массив ячеек из блочных путей. Для примера можно использовать свойство UseOperatingPointInputs для определения входов, используемых в качестве:

    OpPointSetup.UseOperatingPointInputs = {'modelname/in2','modelname/in3'}
    где OpPointSetup является sdo.OperatingPointSetup объект.

  • Пустой массив [] если вы не хотите использовать какой-либо из входов.

Состояния, используемые для настройки рабочей точки, заданные как вектор индексов, массив ячеек с блоком путями или пустые [].

Использование UseOperatingPointStates для определения состояний в рабочей точке, которая будет применяться к модели.

Можно задать состояния для использования в качестве:

  • Вектор индексов. Если вы задаете UseOperatingPointStates как вектор индексов, состояния должны быть в том же порядке, как и состояния в OperatingPointSpec.Для примера можно использовать свойство UseOperatingPointStates для определения состояний, используемых в качестве:

    OpPointSetup.UseOperatingPointStates = [2 3]
    где, OpPointSetup является sdo.OperatingPointSetup объект.

  • Массив ячеек из блочных путей. Для примера можно использовать свойство UseOperatingPointStates для определения состояний, используемых в качестве:

    OpPointSetup.UseOperatingPointStates = {'modelname/in2','modelname/in3'}
    где, OpPointSetup является sdo.OperatingPointSetup объект.

  • Пустой массив [] если вы не используете ни одно из состояний.

Опции обрезки для поиска рабочей точки из спецификации, заданные как findopOptions набор опций.

Используйте findopOptions (Simulink Control Design) для создания FindopOptions набор опций для расчета рабочей точки. Для получения дополнительной информации см. findopOptions (Simulink Control Design).

Копировать семантику

Указатель. Чтобы узнать, как классы handle влияют на операции копирования, см. раздел «Копирование объектов».

Примеры

свернуть все

В данном примере рассмотрим модель Simulink 'PopulationModel' который моделирует простую экологию, где рост населения организма ограничивается пропускной способностью окружения.

Настройте свое требование или эксперимент, а затем задайте установившийся объект рабочей точки OpPointSetup. Объект спецификации рабочей точки создается с помощью operspec. Использование sdo.OperatingPointSetup для создания объекта рабочей точки.

opSpec = operspec('PopulationModel');
inputsToUse = [];
statesToUse = 1;
OpPointSetup = sdo.OperatingPointSetup(opSpec,inputsToUse,statesToUse)
OpPointSetup = 
  OperatingPointSetup with properties:

         OperatingPointSpec: [1x1 opcond.OperatingSpec]
    UseOperatingPointInputs: []
    UseOperatingPointStates: 1
              FindopOptions: []

Передайте объект рабочей точки OpPointSetup к вашей целевой функции, и включать OpPointSetup в функции вызова на sim метод sdo.SimulationTest объект. The sim метод вычисляет установившуюся рабочую точку и применяет ее к модели. В частности, он применяет входы рабочей точки, указанные в UseOperatingPointInputs, и применяет состояния рабочей точки, указанные в UseOperatingPointStates. Затем выполните оценку или оптимизацию по вашему требованию.

Введенный в R2018a