function jt = collect_evidence( cX, jtree, caller, ns ) % step 1. %disp(cX.id); cX.mark = 1; jtree{1}{cX.id}.mark = 1; % step 2. unmarkedNBs = find_unbs( cX, jtree ); for c=unmarkedNBs, cluster = jtree{1}{c}; jtree = collect_evidence( cluster, jtree, cX, ns ); end; % step 3. if ~isempty(caller), jtree = onemsgpass( cX.id, caller.id, jtree, ns ); end; jt = jtree;