Какое распределение отклонения вы хотите?
Вот техника, которая всегда работает, но не всегда самая эффективная. Кумулятивная функция распределения P (x) дает долю времени, когда значения падают ниже x. Таким образом, P (x) = 0 при наименьшем возможном значении x и P (x) = 1 при максимально возможном значении x. Каждое распределение имеет уникальный CDF, который кодирует все свойства распределения таким образом, что P (x) возрастает от 0 до 1. Если y - равномерное отклонение на отрезке [0,1], то x, удовлетворяющее P (x) = y будет присвоено в соответствии с вашим распределением. Чтобы сделать эту работу взаимодополняющей, вам просто нужен способ вычисления обратного P (x) для вашего распространения.
Meta.Numerics библиотека определяет большое количество часто используемых distrubtions (например, нормальное, логарифмически нормальное, экспоненциальное, хи квадрат, и т.д.) и имеет функции для вычисления CDF (Distribution.LeftProbability) и обратного ВПР (Distribution.InverseLeftProbability) каждого.
Для специализированных техник, которые бывают быстрыми для определенных распределений, например. техника Box-Muller для нормальных распределенных отклонений, см. книгу Numerical Recipies.
Это зависит от того, что вы хотите. –