Отобразите информацию о модели

Отсортированные списки модели дисплея

В режиме GUI отладчик Отсортированная панель Списка отображает списки блоков для корневой системы моделей и каждой невиртуальной подсистемы. Каждый список перечисляет блоки, которые подсистемы содержат отсортированный согласно их вычислительным зависимостям, алфавитному порядку и другим правилам блочной сортировки. В режиме командной строки можно использовать slist команда, чтобы отобразить отсортированные списки модели.

---- Sorted list for 'vdp' [9 nonvirtual blocks, directFeed=0]
  0:0    'vdp/x1' (Integrator)
  0:1    'vdp/Out1' (Outport)
  0:2    'vdp/x2' (Integrator)
  0:3    'vdp/Out2' (Outport)
  0:4    'vdp/Scope' (Scope)
  0:5    'vdp/Fcn' (Fcn)
  0:6    'vdp/Product' (Product)
  0:7    'vdp/Mu' (Gain)
  0:8    'vdp/Sum' (Sum)

Эти отображения включают индекс блока для каждой команды. Можно использовать их, чтобы определить блок IDs блоков моделей. Некоторые команды отладчика принимают блок IDs как аргументы.

Идентификация блоков в алгебраических циклах

Если блок принадлежит алгебраическому списку, slist команда отображает алгебраический идентификатор цикла в записи для блока в отсортированном списке. Идентификатор имеет форму

algId=s#n

где s индекс подсистемы, содержащей алгебраический цикл и n индекс алгебраического цикла в подсистеме. Например, следующая запись для блока Integrator указывает, что участвует в первом алгебраическом цикле на корневом уровне модели.

0:1 'test/ss/I1' (Integrator, tid=0) [algId=0#1, discontinuity]

Когда отладчик запускается, можно использовать ashow команда в интерфейсе командной строки отладчика, чтобы подсветить блоки и линии, которые составляют алгебраический цикл. Смотрите Отображающиеся Алгебраические Циклы для получения дополнительной информации.

Отобразите блок

Чтобы определить блок в схеме моделей, которая соответствует конкретному индексу, введите bshow s:b в командной строке, где s:b индекс блока. bshow команда открывает систему, содержащую блок (при необходимости), и выбирает блок в системном окне.

Отображение невиртуальных систем модели

systems команда отображает список невиртуальных систем в модели, которую вы отлаживаете. Например, sldemo_clutch модель содержит следующие системы:

open_system('sldemo_clutch')
set_param(gcs, 'OptimizeBlockIOStorage','off')
sldebug sldemo_clutch
(sldebug @0): %----------------------------------------------------------------%
[TM = 0                      ] simulate(sldemo_clutch)
(sldebug @0): >> systems
 0   'sldemo_clutch'
 1   'sldemo_clutch/Locked'
 2   'sldemo_clutch/Unlocked'

Примечание

systems команда не перечисляет подсистемы, которые являются чисто графическими. Таким образом, подсистемы, которые диаграмма модели представляет как блоки Subsystem, но которые решены как часть родительской системы. не перечислены. В моделях Simulink® корневая система и инициированные или включенные подсистемы являются истинными системами. Все другие подсистемы являются виртуальными (то есть, графическими), и не появляйтесь в листинге от systems команда.

Отображение невиртуальных блоков модели

slist команда отображает список невиртуальных блоков в модели. Листинг группирует блоки системой. Например, следующая последовательность команд производит список невиртуальных блоков в Ван дер Поле (vdp) модель в качестве примера.

sldebug vdp
%----------------------------------------------------------------%
[TM = 0                      ] simulate(vdp)
sldebug @0): >> slist

---- Sorted list for 'vdp' [9 nonvirtual blocks, directFeed=0]
  0:0    'vdp/x1' (Integrator)
  0:1    'vdp/Out1' (Outport)
  0:2    'vdp/x2' (Integrator)
  0:3    'vdp/Out2' (Outport)
  0:4    'vdp/Scope' (Scope)
  0:5    'vdp/Fcn' (Fcn)
  0:6    'vdp/Product' (Product)
  0:7    'vdp/Mu' (Gain)
  0:8    'vdp/Sum' (Sum)

Примечание

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

Отображение блоков с потенциальными нулевыми пересечениями

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

(sldebug @0): >> zclist
  0  0:4:0    F  HitCross  'sldemo_clutch/Friction Mode Logic/Lockup 
Detection/Velocities Match'
  1  0:4:1    F
  2  0:10:0    F  Abs  'sldemo_clutch/Friction Mode Logic/Lockup 
Detection/Required Friction for Lockup/Abs'
  3  0:12:0    F  RelationalOperator  'sldemo_clutch/Friction Mode 
Logic/Lockup Detection/Required Friction for Lockup/Relational Operator'
  4  0:19:0    F  Abs  'sldemo_clutch/Friction Mode Logic/Break Apart 
Detection/Abs'
  5  0:20:0    F  RelationalOperator  'sldemo_clutch/Friction Mode 
Logic/Break Apart Detection/Relational Operator'
  6  2:3:0    F  Signum  'sldemo_clutch/Unlocked/slip direction'

Отображение алгебраических циклов

ashow команда подсвечивает заданный алгебраический цикл или алгебраический цикл, который содержит заданный блок. Чтобы подсветить заданный алгебраический цикл, введите  ashow s#n, где s индекс системы (см. Блоки Идентификации в Алгебраических Циклах), который содержит цикл и n индекс цикла в системе. Чтобы отобразить цикл, который содержит в настоящее время выбранный блок, введите ashow gcb. Чтобы показать цикл, который содержит заданный блок, введите  ashow s:b, где s:b индекс блока. Чтобы очистить выделение алгебраического цикла от диаграммы модели, введите ashow clear.

Отображение состояния отладчика

В режиме GUI отладчик отображает настройки различных параметров отладки, такие как условные точки останова, в его панели Состояния. В режиме командной строки, status команда отображает настройки отладчика. Например, следующая последовательность команд отображает начальные параметры настройки отладки для vdp модель:

sim('vdp', 'StopTime', '10', 'debug', 'on')
%----------------------------------------------------------------%
[TM = 0                      ] simulate(vdp)
(sldebug @0): >> status
%----------------------------------------------------------------%
Current simulation time                    : 0.0 (MajorTimeStep)
Solver needs reset                         : no
Solver derivatives cache needs reset       : no
Zero crossing signals cache needs reset    : no
Default command to execute on return/enter : ""
Break at zero crossing events              : disabled
Break on solver error                      : disabled
Break on failed integration step           : disabled
Time break point                           : disabled
Break on non-finite (NaN,Inf) values       : disabled
Break on solver reset request              : disabled
Display level for disp, trace, probe       : 1 (i/o, states)
Solver trace level                         : 0
Algebraic loop tracing level               : 0
Animation Mode                             : off
Execution Mode                             : Normal
Display level for etrace                   : 0 (disabled)
Break points                               : none installed
Display points                             : none installed
Trace points                               : none installed

Связанные примеры

Больше о