use ffi;
use types::Rng;
pub fn gaussian(r: &Rng, sigma: f64) -> f64 {
unsafe { ffi::gsl_ran_gaussian(ffi::FFI::unwrap(r), sigma) }
}
pub fn gaussian_pdf(x: f64, sigma: f64) -> f64 {
unsafe { ffi::gsl_ran_gaussian_pdf(x, sigma) }
}
pub fn gaussian_ziggurat(r: &Rng, sigma: f64) -> f64 {
unsafe { ffi::gsl_ran_gaussian_ziggurat(ffi::FFI::unwrap(r), sigma) }
}
pub fn gaussian_ratio_method(r: &Rng, sigma: f64) -> f64 {
unsafe { ffi::gsl_ran_gaussian_ratio_method(ffi::FFI::unwrap(r), sigma) }
}
pub fn ugaussian(r: &Rng) -> f64 {
unsafe { ffi::gsl_ran_ugaussian(ffi::FFI::unwrap(r)) }
}
pub fn ugaussian_pdf(x: f64) -> f64 {
unsafe { ffi::gsl_ran_ugaussian_pdf(x) }
}
pub fn ugaussian_ratio_method(r: &Rng) -> f64 {
unsafe { ffi::gsl_ran_ugaussian_ratio_method(ffi::FFI::unwrap(r)) }
}
pub fn gaussian_P(x: f64, sigma: f64) -> f64 {
unsafe { ffi::gsl_cdf_gaussian_P(x, sigma) }
}
pub fn gaussian_Q(x: f64, sigma: f64) -> f64 {
unsafe { ffi::gsl_cdf_gaussian_Q(x, sigma) }
}
pub fn gaussian_Pinv(P: f64, sigma: f64) -> f64 {
unsafe { ffi::gsl_cdf_gaussian_Pinv(P, sigma) }
}
pub fn gaussian_Qinv(Q: f64, sigma: f64) -> f64 {
unsafe { ffi::gsl_cdf_gaussian_Qinv(Q, sigma) }
}
pub fn ugaussian_P(x: f64) -> f64 {
unsafe { ffi::gsl_cdf_ugaussian_P(x) }
}
pub fn ugaussian_Q(x: f64) -> f64 {
unsafe { ffi::gsl_cdf_ugaussian_Q(x) }
}
pub fn ugaussian_Pinv(P: f64) -> f64 {
unsafe { ffi::gsl_cdf_ugaussian_Pinv(P) }
}
pub fn ugaussian_Qinv(Q: f64) -> f64 {
unsafe { ffi::gsl_cdf_ugaussian_Qinv(Q) }
}