1
$\begingroup$

The radii r is drawn from a cut-off log-normal distribution, which has a following probability density function:

pdf=((sqrt(2).*exp(-0.5*((log(r/rch)).^2)))./((sqrt(pi.*(sigma_nd.^2)).*r).*(erf((log(rmax/rch))./sqrt(2.*(sigma_nd.^2)))-erf((log(rmin/rch))./sqrt(2.*(sigma_nd.^2))))));

rch, sigma_nd, rmax, and rmin are all constants.

It is also shown in the following snapshot: enter image description here

1 Answers 1

1

In general, if you cutoff a pdf at $r_{min}$ and $r_{max}$ the pdf stays the same, except that you need to normalize it back to one. This means that you have to divide by the probability mass in that interval, which is the cdf at $r_{max}$ minus the cdf at $r_{min}$. I don't have Matlab here at the moment, but in octave the command is

lognormal_pdf(r)./(lognormal_cdf(rmax) - lognormal_cdf(rmin))

Since the denominator does not depend on $r$, the cdf is

lognormal_cdf(r)./(lognormal_cdf(rmax) - lognormal_cdf(rmin))
  • 0
    I am not sure what your goal is here. If you want to sample from the truncated distribution, then you can sample from the untruncated one and throw away everything that is not inside the truncation borders. However, that might take very long until you have enough samples. The other option is to use the inverse cdf of the lognormal distribution (actually works for every distribution). I am not sure whether it is available in matlab. Say $a=cdf(r_{min})$ and $b = cdf(r_{max})$, then sample $u\sim U[0,1]$ and use $icdf((u-a)/(b-a))$. That gives you samples from the truncated distribution.2011-12-18
  • 1
    Sorry, I don't get your question. The cdf of what? Of the truncated log-normal? The cdf of that is cdf(r)/(cdf(rmax)-cdf(rmin)).2011-12-19