/// <summary> /// Create a truncated Gamma from untruncated (shape, scale) and bounds /// </summary> /// <param name="shape"></param> /// <param name="scale"></param> /// <param name="lowerBound"></param> /// <param name="upperBound"></param> public TruncatedGamma(double shape, double scale, double lowerBound, double upperBound) { LowerBound = lowerBound; UpperBound = upperBound; if (lowerBound == upperBound) { this.Gamma = Gamma.PointMass(lowerBound); } else { this.Gamma = Gamma.FromShapeAndScale(shape, scale); } }