log_sum.m

来自「隐马尔可夫链模型和例程(包括前向、后向算法、Viterbi解码以及为了减少概率数」· M 代码 · 共 37 行

M
37
字号
function Ls=log_sum(Lx)

[row col]=size(Lx);

% case of scalar
if (row==1) && (col==1)
    Ls=Lx;
    return;
end

% case of row vector
if row==1
    Ls=log_sum(Lx(:));
    return
end

% case of column vector
if col==1
    if row==2
        Ls=log_add(Lx(1),Lx(2));
        return;
    else
        Lx1=Lx(1:floor(row/2));
        Lx2=Lx(floor(row/2)+1:end);
        Ls=log_add(log_sum(Lx1),log_sum(Lx2));
        return;
    end
end

% case of matrix
Ls=zeros(1,col);
for c=1:col
    Ls(c)=log_sum(Lx(:,c));
end

return;

⌨️ 快捷键说明

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