digamma.m

来自「基于变分贝叶斯方法的状态空间模型学习程序」· M 代码 · 共 28 行

M
28
字号
%Calculates the digamma function.%%Loops on rows of a matrix - could be optimized better% %Matthew J. Beal GCNU 06/02/01function res=digamma(X);coef=[-1/12 1/120 -1/252 1/240 -1/132 691/32760 -1/12];krange = [1:7]';[n, m]=size(X);res=zeros(n,m);for i=1:n,  x=X(i,:);  y = ceil(max(0,6-x));    z = x + y;    logz = log(z);    res(i,:) = logz - .5./z + coef*exp(-2*krange*logz) ...      - (y>=1)./x - (y>=2)./(x+1) - (y>=3)./(x+2) - (y>=4)./(x+3) - ...      (y>=5)./(x+4) - (y>=6)./(x+5);end;

⌨️ 快捷键说明

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