Fixed the inverse Gaussian Cumulative Distribution Function. Return -Inf/Inf if input is equal to

0/1.
time-shift
Stéphane Adjemian (Charybdis) 2011-12-23 11:16:06 +01:00
parent a09779f218
commit b9d47ae42e
1 changed files with 8 additions and 0 deletions

View File

@ -112,6 +112,14 @@ template<typename T> T icdf( const T uniform )
tmp_ = tmp*sqrt(2*M_PI)*exp(.5*gaussian*gaussian);
gaussian = gaussian - tmp_/(1+.5*gaussian*tmp_);
}
if ( uniform==0)
{
gaussian = -INFINITY;
}
if ( uniform==1)
{
gaussian = INFINITY;
}
return(gaussian);
}