public static IEnumerable<double> AsNormalize(this IEnumerable<double> source) { source.ShouldNotBeNull("source"); var sum = source.Sum(); if(Math.Abs(sum - 0.0) <= double.Epsilon) yield break; foreach(var v in source) yield return v / sum; }