max_propagate_messages.m

来自「The BNL toolbox is a set of Matlab funct」· M 代码 · 共 25 行

M
25
字号
function [septable,cliquetable,schaal]=max_propagate_messages(order,septable, cliquetable)
numb_clqs=length(order);
a=size(cliquetable.pots{1});
N=a(end);
schaal=0;
for i=1:numb_clqs
    e=order(i);
    for j=i+1:numb_clqs
        k=order(j);
        if ~isempty(septable.ind{e,k})
            %marginalize  
            
            septable.old_pots{e,k}=septable.pots{e,k};
            septable.pots{e,k}=franks_max_marginalize_pot(cliquetable.pots{e},septable.proj{e,k},septable.dim{e,k});
            septable.pots{k,e}=septable.pots{e,k};
            %absorb
            lambda=pot_division(septable.pots{e,k},septable.old_pots{e,k});
            cliquetable.pots{k}=cliquetable.pots{k}.*replicate_pot(lambda,septable.abs{e,k},cliquetable.dim{k});
            
            %normalize cliques
            [cliquetable.pots{k},sch]=franksnormalize(cliquetable.pots{k},N,1);
            schaal=schaal+sch;
        end
    end
end

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?