Normal Quantile with Precision

版本 2.0.0.0 (3.2 KB) 作者: Zdravko Botev
computes the normal quantile function with high precision for extreme values in the tail
259.0 次下载
更新时间 2016/4/27

查看许可证

computes the quantile function of the standard normal distribution, truncated to the interval [l,u].
Method designed for precision in the tails. Inf values for vectors 'l' and 'u' accepted;
%Example: Suppose you desire the median of Z~N(0,1), truncated to Z>9;
norminvp(0.5,9,Inf) %our method
% in contrast, Matlab's default norminv.m fails
pl=normcdf(9); norminv(0.5*(1-pl)+pl)

Reference:
Botev, Z. I. (2016). "The normal law under linear restrictions:
simulation and estimation via minimax tilting". Journal of the Royal Statistical Society: Series B (Statistical Methodology). doi:10.1111/rssb.12162

For more information, see: https://en.wikipedia.org/wiki/Normal_distribution#Quantile_function

引用格式

Zdravko Botev (2024). Normal Quantile with Precision (https://www.mathworks.com/matlabcentral/fileexchange/53605-normal-quantile-with-precision), MATLAB Central File Exchange. 检索来源 .

MATLAB 版本兼容性
创建方式 R2015b
兼容任何版本
平台兼容性
Windows macOS Linux
类别
Help CenterMATLAB Answers 中查找有关 Numbers and Precision 的更多信息

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!
版本 已发布 发行说明
2.0.0.0

- updated the Newton method in "newton(p,l,u)" so that now the exit condition uses
relative error; previous version used absolute error criterion.

1.1.0.0

Vectorized the last update of the function.
If abs(x)>10^6, then there is no need for Newton iteration and the code now bypassed the
iteration;
Faster convergence of Newton's method using
the better initial guess of the root of nonlinear equation:
x=sqrt(l-2*reallog(1+p.*expm1(l/2-u/2)));
Corrected spelling mistake in title
Forgot to suppress output by adding a semicolon.

1.0.0.0

Uploaded better cover picture.
Added more tags.

Added reference to article.
Updated title: "Normal Quantile Function with Precision"