logsum_simple.m

来自「Matlab工具包补充算发」· M 代码 · 共 24 行

M
24
字号
function result = logsum(logv)len = length(logv);if (len<2);  error('Subroutine logsum cannot sum less than 2 terms.');end;% First two termsif (logv(2)<logv(1)),  result = logv(1) + log( 1 + exp( logv(2)-logv(1) ) );else,  result = logv(2) + log( 1 + exp( logv(1)-logv(2) ) );end;% Remaining termsfor (i=3:len),  term = logv(i);  if (result<term),    result = term   + log( 1 + exp( result-term ) );  else,    result = result + log( 1 + exp( term-result ) );  end;    end

⌨️ 快捷键说明

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