SAMPLEDIST Sample from an arbitrary distribution
sampleDist(f,M,N,b) retruns an array of size X of random values sampled from the distribution defined by the probability density function referred to by handle f, over the range b = [min, max]. M is the threshold value for the proposal distribution, such that f(x) < M for all x in b.
sampleDist(...,true) also generates a histogram of the results with an overlay of the true pdf.
%Sample from a step function over [0,1]:
X = sampleDist(@(x)1.3*(x>=0&x<0.7)+0.3*(x>=0.7&x<=1),...
%Sample from a normal distribution over [-5,5]:
X = sampleDist(@(x) 1/sqrt(2*pi) *exp(-x.^2/2),...
Dmitry Savransky (2021). Simple Rejection Sampling (https://www.mathworks.com/matlabcentral/fileexchange/27590-simple-rejection-sampling), MATLAB Central File Exchange. Retrieved .
MATLAB Release Compatibility
Platform CompatibilityWindows macOS Linux
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!Start Hunting!