import epsilon from "./epsilon.js";
import inverseErrorFunction from "./inverse_error_function.js";
/**
* [Probit](http://en.wikipedia.org/wiki/Probit) 是 cumulativeStdNormalProbability() 的反函数,
* 也被称为正态分位数函数。
*
* 它返回与均值相差的标准差数量,表示在正态分布中可以找到第 p 个分位数的位置。
* 例如,probit(0.5 + 0.6827/2) ≈ 1,因为 68.27% 的值通常分布在均值上下 1 个标准差范围内。
*
* @param {number} p
* @returns {number} probit
*/
function probit(p) {
if (p === 0) {
p = epsilon;
} else if (p >= 1) {
p = 1 - epsilon;
}
return Math.sqrt(2) * inverseErrorFunction(2 * p - 1);
}
export default probit;