sltrace.Graph

Предоставьте информацию о трассировке как график для структурного анализа

Описание

sltrace.Graph объектно-ориентированная память, прослеживающая информацию, сгенерированную sltrace функция.

Создание

Можно создать sltrace.Graph объект с помощью sltrace функция.

Свойства

развернуть все

Трассировка графика с ребрами и узлами, возвращенными как digraph объект. Узел в графике решен портом блока на пути к трассировке и показывается 'NodeIndex'. Для каждого узла, TraceGraph.Nodes предоставляет таблице больше деталей, включая Block, PortNumber и PortType. Если 'BlockPath' установлен в 'on' \in sltrace, затем Block столбец TraceGraph.Nodes таблица покажется Simulink.BlockPath.

TraceGraph.Edges показывает таблицу, которая содержит EndNodes из digraph объект и Segments между ними. Segments массив указателей сегмента, которые соединяются вместе, чтобы сформировать линию между двумя блоками. Если EndNodes принадлежите тому же блоку, их Segments отмечен как 'Internal'. Если конечные узлы от пар блока без установления соединения, таких как пара, сформированная 'From' и 'Goto', затем их Segments отмечен как 'Hidden'.

Блоки при трассировке пути в виде массива указателей блока или Simulink.BlockPath объекты. При трассировке в направлении источника исходные блоки возвращены в g.SrcBlocks. При трассировке в направлении места назначения целевые блоки возвращены в g.DstBlocks.

Функции объекта

highlightПодсветите результаты трассировки
removeHighlightУдалите подсвеченные результаты трассировки

Примеры

свернуть все

В этом примере показано, как проследить от первого импорта блока vdp/x1 ко всем источникам.

open_system('vdp')
G = sltrace('vdp/x1', 'Source','Port', 1, 'TraceAll','on');

Подсветите результаты трассировки и постройте график трассировки.

highlight(G)

plot(G.TraceGraph)

Figure contains an axes object. The axes object contains an object of type graphplot.

Подсветите блок vdp/Scope и линия, соединяющаяся с импортом vdp/Scope.

bh = get_param('vdp/Scope','Handle');
inportH = get_param('vdp/Scope','PortHandles').Inport;
lh = get_param(inportH,'line');
highlight(G,[bh, lh])

Удалите выделение.

removeHighlight(G)

Введенный в R2021b