Code covered by the BSD License  

Highlights from
Generation of Random Variates

image thumbnail

Generation of Random Variates

by

 

generates random variates from over 870 univariate distributions

bintrnorm_pdf(nh, nn, c, b)
% bintrnorm_pdf.m - evaluates a Compound Binomial Truncated Normal Probability Density.
%   See "The Compounding of the Binomial and Generalized Beta Distributions",   
%   T. Gerstenkorn, Prob. and Statistical Inference, p.87, 1982. 
%
%   NORMALIZATION PUTS A COMPLICATED UPPER LIMIT ON 'c'.
%
%  Created by Jim Huntley,  08/09/11
%

function [pdf] = bintrnorm_pdf(nh, nn, c, b)

for jn = 1:size(nh,2) 
    sumk = 0;
    n = nh(jn);
    bcnndx = binomial_coef(nn,n);
    for jk = 1:nn-n
        k = jk - 1;
        sumk = sumk + binomial_coef(nn-n,k) * (-1)^k * (b*c^2)^((n+k)/2) * ...
               gamma((1+n+k)/2);
    end
    pdf(jn) = sumk * bcnndx / sqrt(pi);
end

return

Contact us