#include <boost/math/distributions/exponential.hpp>
template <class RealType = double,
          class Policy   = policies::policy<> >
class exponential_distribution;
typedef exponential_distribution<> exponential;
template <class RealType, class Policy>
class exponential_distribution
{
public:
   typedef RealType value_type;
   typedef Policy   policy_type;
   exponential_distribution(RealType lambda = 1);
   RealType lambda()const;
};
экспоненциальное распределениепредставляет собойнепрерывное распределение вероятностейс PDF:

Он часто используется для моделирования времени между независимыми событиями, которые происходят с постоянной средней скоростью.
Следующий график показывает, как меняется распределение для различных значений параметра скорости лямбда:

exponential_distribution(RealType lambda = 1);
ПостроеноЭкспоненциальное распределениес параметромлямбда. Ламбда определяется как взаимный параметр шкалы.
Требуется lambda >0, иначе вызываетdomain_error.
RealType lambda()const;
Функция доступа возвращает лямбда-параметр распределения.
Поддерживаются всеобычные функции доступа, не являющиеся членами, которые являются общими для всех распределений:Кумулятивная функция распределения,Функция плотности вероятности,Количественная,Функция опасности,Кумулятивная функция опасности,среднее,средний,режим,дисперсия,стандартное отклонение,перекос,куртоз,куртоз_избыток,диапазониподдержка.
Доменом случайной переменной является [0, +∞].
Экспоненциальное распределение реализуется с точки зрения стандартных библиотечных функций<exp>,<log>,<log1p>и<expm1>и как таковое должно иметь очень низкие показатели ошибок.
В следующей таблице λ является параметром лямбда распределения,xявляется случайной вариацией,pявляется вероятностью иq = 1-p.
(См. также справочную документацию по связаннымЭкстремальным распределениям.)