view rDiff/src/tests/calcl_nbin_pdf.m @ 3:29a698dc5c7e default tip

Merge multiple heads.
author Dave Bouvier <dave@bx.psu.edu>
date Mon, 27 Jan 2014 14:15:36 -0500
parents 0f80a5141704
children
line wrap: on
line source

function [RET]=calcl_nbin_pdf(VAL,R,P)
%uses formula used by matlab for compatability

RET=zeros(size(VAL,1),size(VAL,2));
IDX=VAL==round(VAL);
%RET(IDX) = exp(gammaln(R+VAL(IDX))-gammaln(VAL(IDX)+1)-gammaln(R)+R*log(P)+VAL(IDX)*log1p(-P));


nk = (gammaln(R + VAL(IDX)) - gammaln(VAL(IDX) + 1) - gammaln(R));
RET(IDX) = nk + (R.*log(P)) + (VAL(IDX).*log(1 - P));
RET(IDX) = exp(RET(IDX));