public double Quantile(double q) // Currently supports only these two { if (originalDistribution.GetType() == typeof(Normal)) { return(((Normal)originalDistribution).InverseCumulativeDistribution(q)); } if (originalDistribution.GetType() == typeof(GEV)) { return(((GEV)originalDistribution).InverseCumulativeDistribution(q)); } else { throw new NotImplementedException($"Quantile function not defined for wrapped distribution type: {originalDistribution.GetType()}"); } }