?? sgnt_vhp_1.m
字號:
function [Node] = sgnt_vhp_1(node)
[nr,nc]= size(node);
m = nc - 4;
for i=2:1:nr % -------------------------- 1 end
if node(i,m+2) > 0 & node(node(i,m+2),m+2) > 0 % -------- 2 end
parent_pt= node(i,m+2);
grandparent_pt= node(parent_pt,m+2);
wn = node(i,1:m);
wp = node(parent_pt,1:m);
wg = node(grandparent_pt,1:m);
dnp=sum((wn - wp).^2);
dng=sum((wn - wg).^2);
if dnp > dng % --------------------------- 3 end
% update np
temp = node(parent_pt,m+1);
node(parent_pt,m+1)= node(parent_pt,m+1)- node(i,m+1);
if node(parent_pt,m+1) <= 0 node(parent_pt,m+1) = 1; end
node(parent_pt,1:m)= (node(parent_pt,1:m).*temp - node(i,1:m)*node(i,m+1))/node(parent_pt,m+1);
% connect(n,ng)
if node(parent_pt,m+3) == i % node i is a first sibling (the most left sibling)
node(parent_pt,m+3) = node(i,m+4);
else % node i isn't a first sibling
jj = node(parent_pt,m+3);
while (jj > 0 & node(jj,m+4)~=i )
jj = node(jj,m+4);
end
if jj > 0
node(jj,m+4)= node(i,m+4);
end
end
node(i,m+2) = grandparent_pt; % 1
node(i,m+4) = node(grandparent_pt, m+3);
node(grandparent_pt, m+3) = i;
end % --------------------------- 3 end
end % -------- 2 end
end % -------------------------- 1 end
Node = node;
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -