cmsbounds

Determine bounds on a distribution given the first few moments

You are now following this Submission

usage: [x,y]=cmsbounds(m)

Given a sequence M of the first 2*n raw moments of a distribution, CMSBOUNDS calculates arrays X and Y of length n and n+1 respectively such that Y(i) <= F(X(i)) <= Y(i+1) for any distribution F with the given moments M (Chebyshev-Markov-Stieltjes inequalities).

The raw moments are M(k) = E[X^k] = Integral of x^k dF(x).

Example: Normal distribution

mu=0;
sig=1;
n=20;
M(1)=mu;
M(2)=sig^2+mu^2;
for k=3:2*n
M(k)=mu*M(k-1)+(k-1)*sig^2*M(k-2);
end;
[x,y] = cmsbounds(M) % returns 1x20 and 1x21 arrays
all(normcdf(x,mu,sig)<=y(2:end)) % true
all(normcdf(x,mu,sig)>=y(1:end-1)) % true

See the help file for further details of the theory and algorithm.

Cite As

Ben Petschel (2026). cmsbounds (https://in.mathworks.com/matlabcentral/fileexchange/25115-cmsbounds), MATLAB Central File Exchange. Retrieved .

General Information

MATLAB Release Compatibility

  • Compatible with any release

Platform Compatibility

  • Windows
  • macOS
  • Linux
Version Published Release Notes Action
1.0.0.0