exponenta event banner

getGoal

Оценка цели настройки переменной в указанной точке проектирования

Описание

При настройке контроллеров для нескольких рабочих условий, varyingGoal позволяет настраивать цели настройки в зависимости от точки проектирования. Использовать getGoal для оценки цели переменной в конкретной точке проектирования или для определенных значений переменных выборки.

TG = getGoal(VG,'index',k) возвращает эффективную цель настройки в k-й расчетный пункт. Абсолютный индекс k относительно массивов значений параметров в Parameters свойство изменяющейся цели VG. Если указано VG.SamplingGrid, то k относительно сетки точек проектирования в этом свойстве.

пример

TG = getGoal(VG,'index',k1,k2,...) возвращает эффективную цель настройки в точке проектирования с координатами (k1,k2,...). Эти координаты являются индексами в многомерных массивах в VG.Parameters и VG.SamplingGrid. Этот синтаксис полезен в том случае, если сетка проектирования включает несколько переменных планирования.

пример

TG = getGoal(VG,'value',x1,x2,...) возвращает эффективную цель настройки в точке проектирования, значения переменных планирования которой (x1,x2,...). Этот синтаксис используется только в том случае, если указаны точки конструкции в VG.SamplingGrid. Например, если VG.SamplingGrid задание сетки точек проектирования (a,b), то TG = getGoal(VG,'value',-1,3) возвращает цель настройки в точке проектирования (a,b) = (-1,3). Если (x1,x2,...) не соответствует ни одной точке в VG.SamplingGrid, то getGoal возвращает ближайшую точку в относительном смысле.

Примеры

свернуть все

Предположим, что для настройки контроллера используется следующая сетка точек проектирования 5 на 5.

[alpha,V] = ndgrid(linspace(0,20,5),linspace(700,1300,5));

Создание цели настройки переменной, определяющей коэффициенты усиления и поля фазы для сигнала с именем 'u' которые различаются по сетке точек проектирования.

[GM,PM] = ndgrid(linspace(7,20,5),linspace(45,70,5));
FH = @(gm,pm) TuningGoal.Margins('u',gm,pm);
VG = varyingGoal(FH,GM,PM);

Используйте сетку, чтобы указать SamplingGrid имущество VG.

VG.SamplingGrid = struct('alpha',alpha,'V',V);

Оценить эту переменную цель конструирования в (alpha,V) = (5,1150). Этот момент является вторым alpha значение и четвертый V значение, чтобы можно было индексировать в varyingGoal использование (k1,k2) = (2,4).

TGi = getGoal(VG,'index',2,4);

Потому что у вас есть конкретный (alpha,V) значения, для которых требуется цель настройки, можно использовать вместо индексирования.

TGv = getGoal(VG,'value',5,1150)
TGv = 
  Margins with properties:

      GainMargin: 10.2500
     PhaseMargin: 63.7500
    ScalingOrder: 0
           Focus: [0 Inf]
        Location: {'u'}
          Models: 17
        Openings: {0x1 cell}
            Name: ''

Входные аргументы

свернуть все

Изменяющаяся цель настройки, указанная как varyingGoal объект. VG фиксирует изменение цели настройки по сетке точек проектирования для настройки по расписанию усиления (см. tunableSurface).

Индексировать в сетку расчетной точки, заданную как целое число. Можно указать один целочисленный индекс, k, или несколько индексов k1,k2,....

Если вы предоставляете один индекс, k, то getGoal удовольствия k как линейный индекс в массивы параметров VG.Parameters или структуры VG.SamplingGrid задающие точки проектирования.

  • Если VG варьируется по 1-D сетке выборки (одна переменная планирования), затем TG = getGoal(VG,'index',k) возвращает цель настройки для kтретья запись в VG.Parameters.

  • Если VG варьируется в зависимости от двух или более переменных планирования, затем TG = getGoal(VG,'index',k) возвращает значение k-й элемент в этой сетке, определяемый линейным индексированием. (См. раздел Индексирование массива.)

При наличии нескольких индексов k1,k2,..., то getGoal обрабатывает их как индексы в многомерных массивах VG.Parameters или VG.SamplingGrid.

Значение переменной в конструкторской точке, указанное как скаляр. Использовать входные данные x1,x2,..., чтобы получить цель настройки для конкретного набора значений переменных планирования. Введите столько значений, сколько имеется переменных планирования в системе. Например, если рабочие условия описаны двумя переменными планирования (a,b), затем использовать (x1,x2) для указания (a,b) значение, при котором требуется извлечь цель настройки.

Выходные аргументы

свернуть все

Цель настройки в указанной точке проектирования, возвращаемая как TuningGoal объект. Если какой-либо из параметров цели настройки равен NaN в указанной точке проектирования, затем TG = []. (см. varyingGoal).

См. также

|

Представлен в R2017b