Scilab Reference Manual |
---|
trans_closure — transitive closure
g1 = trans_closure(g)
trans_closure returns as a new graph list g1 the transitive closure of the graph g. This graph must be directed and connected. If <name> if the name of graph g, <name>_trans_closure is the name of the transitive closure.
ta=[2 3 3 5 3 4 4 5 8]; he=[1 2 4 2 6 6 7 7 4]; g=make_graph('foo',1,8,ta,he); g('node_x')=[129 200 283 281 128 366 122 333]; g('node_y')=[61 125 129 189 173 135 236 249]; show_graph(g); g1=trans_closure(g); vv=1*ones(ta); aa=sparse([ta' he'],vv'); ta1=g1('tail'); he1=g1('head'); ww=1*ones(ta1); bb=sparse([ta1' he1'],ww'); dif=bb-aa; lim=size(ta1); edgecolor=0*ones(ta1); for i=1:lim(2) if dif(ta1(i),he1(i))==1 then edgecolor(i)=11; end; end; g1('edge_color')=edgecolor; x_message('Transitive closure of the graph'); show_graph(g1);
<< supernode | Nonlinear >> |