ufind

Найдите неопределенные переменные в модели Simulink

Синтаксис

uvars = ufind('mdl')
[uvars,pathinfo] = ufind('mdl')
uvars = ufind(usys_1,usys_2,...)

Описание

uvars = ufind ('mdl') находит блоки Пространства Неопределенных Состояний в Simulink® модели mdl. Оно возвращает структуру uvars который содержит все неопределенные переменные, сопоставленные с блоками Пространства Неопределенных Состояний. Каждая неопределенная переменная является ureal, umargin или ultidyn объект и указан по имени в uvars.

[uvars,pathinfo] = ufind('mdl') возвращает массив ячеек pathinfoкоторый содержит пути к блокам Пространства Неопределенных Состояний и соответствующим неопределенным переменным в блоке. Первый столбец pathinfo перечисляет пути блоков через иерархию модели, а во втором столбце перечисляются неопределенные переменные, связанные с блоком. Использование pathinfo чтобы убедиться, что все блоки Пространства Неопределенных Состояний в модели mdl были идентифицированы.

uvars = ufind(usys_1,usys_2,...) собирает все неопределенные переменные, на которые ссылается неопределенная модель usys_n. usys_n можно uss или ufrd модели. Используйте этот синтаксис как альтернативу запросу самой модели, когда вы знаете неопределенные модели, которые используют блоки Пространства Неопределенных Состояний.

ufind могут найти блоки Пространства Неопределенных Состояний внутри Маскированных Подсистем, Библиотечных Ссылок и Моделей-ссылок, но не внутри Accelerated Моделей-ссылок. ufind ошибки, если то же имя неопределенной переменной имеет другие определения в модели. Для примера, если ваша модель содержит два блока Пространства Неопределенных Состояний, где неопределенные системные переменные определяют одну и ту же неопределенную переменную 'unc_par" как ultidyn('unc_par',[1 1]) и ureal('unc_par',5), такая ошибка происходит.

Примеры

Найдите все блоки Secintain State Space и неопределенные переменные в модели Simulink:

  1. Откройте модель Simulink.

    open_system('usim_model')
    

    Модель, как показано на следующем рисунке, содержит три блока Unmodeled Plant Dynamics, Plant и Sensor Gain. Эти блоки зависят от трех неопределенных переменных с именем input_unc, unc_pole и sensor_gain.

  2. Использование ufind найти все блоки Пространства Неопределенных Состояний и неопределенные переменные в модели.

    [uvars,pathinfo] = ufind('usim_model')
    
  3. Тип uvars для просмотра структуры uvars. MATLAB® возвращает следующий результат:

    uvars = 
    
          input_unc: [1x1 ultidyn]
        sensor_gain: [1x1 ureal]
           unc_pole: [1x1 ureal]
    

    Каждая неопределенная переменная является ureal или ultidyn объект и указан по имени в uvars.

  4. Просмотрите пути блоков пространства неопределенных состояний и переменные неопределенных состояний.

    1. Тип pathinfo(:,1) чтобы просмотреть пути блоков пространства неопределенных состояний в модели. MATLAB возвращает следующий результат:

      ans = 
      
          'usim_model/Plant'
          'usim_model/Sensor Gain'
          'usim_model/Unmodeled Plant Dynamics'
      
    2. Тип pathinfo(:,2) чтобы просмотреть неопределенные переменные, на которые ссылается каждый блок Firetain State Space. MATLAB возвращает следующие результаты:

      ans = 
      
          'unc_pole'
          'sensor_gain'
          'input_unc'
      

См. также

|

Введенный в R2009b