auto pdf = new GeneralizedHyperbolicPDF!double(1.1, 1.1, 0.9, 1.1, 1.1);
auto x = pdf(0.1);
assert(x.isNormal);
import scid.calculus : integrate;
auto result = pdf.integrate(-double.infinity, double.infinity);
assert(fabs(result.value - 1) < result.error);
Generalized hyperbolic (generalized inverse Gaussian mixture of normals) PDF