Задайте LMIs с редактором LMI графический интерфейс пользователя

Редактор LMI lmiedit графический интерфейс пользователя (GUI) должен задать системы LMI прямым символьным способом. Ввод

lmiedit

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

Более подробно, чтобы задать вашу систему LMI,

  1. Объявите каждую матричную переменную (имя и структура) в верхней половине рабочего листа. Структура характеризуется ее типом (S для симметричной диагонали блока, R для неструктурированного и G для других структур) и дополнительной матрицей “структуры”. Эта матрица содержит определенную информацию о структуре и соответствует второму аргументу lmivar (см. Определение Переменных LMI для деталей).

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

  2. Задайте LMIs как MATLAB® выражения в более низкой половине рабочего листа. Например, LMI

    (ATX+XAXBBTXI)<0

    вводится путем ввода

    [a'*x+x*a x*b; b'*x -1] < 0
    

    если x имя, данное матричной переменной X в верхней половине рабочего листа. Лево-и правые стороны LMIs должны быть допустимыми выражениями MATLAB.

Если система LMI полностью задана, следующие задачи могут быть выполнены путем нажатия соответствующей кнопки:

  • Визуализируйте последовательность lmivar/lmiterm команды должны были описать эту систему LMI (view commands кнопка). С другой стороны, система LMI, заданная конкретной последовательностью lmivar/lmiterm команды могут быть отображены как выражение MATLAB путем нажатия на описывание... кнопок.

    Новички могут использовать это средство в качестве учебного введения в lmivar и lmiterm команды.

  • Сохраните символьное описание системы LMI (save кнопка). Это описание может быть перезагружено позже путем нажатия кнопки загрузки.

  • Считайте последовательность lmivar/lmiterm команды из файла (кнопка считывания). Можно затем нажать, описывают матричные переменные или описывают LMIs, чтобы визуализировать символьное выражение системы LMI, заданной этими командами. Файл должен описать одну систему LMI, но может в противном случае содержать любую последовательность команд MATLAB.

    Эта функция полезна для валидации кода и отладки.

    Напишите в файле последовательность lmivar/lmiterm команды должны были описать конкретную систему LMI (запишите кнопку).

    Это полезно, чтобы разработать код и моделировать функции MATLAB на основе LMI Lab.

  • Сгенерируйте внутреннее представление системы LMI нажатием, создают. Результат написан в переменной MATLAB, названной в честь системы LMI (если “имя системы LMI” определяется к mylmi, внутреннее представление написано в переменной MATLAB mylmi). Обратите внимание на то, что все связанные с LMI данные должны быть заданы в рабочем пространстве MATLAB на данном этапе.

    Внутреннее представление может быть передано непосредственно решателям LMI или любой другой функции LMI Lab.

Горячие клавиши

Как с lmiterm, можно использовать различные ярлыки при вводе выражений LMI на клавиатуре. Например, нулевые блоки могут быть введены просто как 0 и не должен быть определен размеры. Точно так же единичная матрица может быть введена как 1 без определения размеров. Наконец, верхние диагональные блоки LMI не должны быть полностью заданы. Скорее можно только ввести (*) вместо каждого такого блока.

Ограничения

Хотя довольно общий, lmiedit не так гибко как lmiterm и нижеследующие ограничения должны иметься в виду:

  • Круглые скобки не могут использоваться вокруг матричных переменных. Например, выражение

    (a*x+b)'*c + c'*(a*x+b)
    

    недопустимо, когда x является именем переменной. В отличие от этого,

    (a+b)'*x + x'*(a+b)
    

    совершенно допустимо.

  • Циклы и if операторы проигнорированы.

  • При превращении lmiterm команды в символьное описание системы LMI, ошибка выпущена если первый аргумент lmiterm не может быть оценен. Используйте LMI и идентификаторы переменных, предоставленные newlmi и lmivar избегать таких трудностей.

Как lmivar и lmiterm Управляют Представлением LMI

Пользователи, знакомые с MATLAB, могут задаться вопросом как lmivar и lmiterm физически обновите внутреннее представление LMISYS начиная с LMISYS не аргумент к этим функциям. На самом деле все обновление выполняется через глобальные переменные для максимальной скорости. Эти глобальные переменные инициализируются setlmis, очищенный getlmis, и не отображаются в рабочей области. Даже при том, что этот артефакт прозрачен с точки зрения пользователя, быть уверенным:

  • Вызов getlmis только однажды и после завершенного определения системы LMI.

  • Воздержитесь от использования команды clear global прежде чем системное описание LMI заканчивается getlmis.

Похожие темы