Карта сайта Kansoftware
НОВОСТИУСЛУГИРЕШЕНИЯКОНТАКТЫ
Разработка программного обеспечения

Cauchy-Lorentz Distribution

Boost , Math Toolkit 2.5.0 , Distributions

Boost C++ Libraries

...one of the most highly regarded and expertly designed C++ library projects in the world. Herb Sutter and Andrei Alexandrescu, C++ Coding Standards

PrevUpHomeNext
#include <boost/math/distributions/cauchy.hpp>
template <class RealType = double,
          class Policy   = policies::policy<> >
class cauchy_distribution;
typedef cauchy_distribution<> cauchy;
template <class RealType, class Policy>
class cauchy_distribution
{
public:
   typedef RealType  value_type;
   typedef Policy    policy_type;
   cauchy_distribution(RealType location = 0, RealType scale = 1);
   RealType location()const;
   RealType scale()const;
};

Распределение Коши-Лоренцаназван в честь Августина Коши и Хендрика Лоренца. Этонепрерывное распределение вероятностейсфункцией распределения вероятностей PDF, приведенной:

Параметр местоположения x0  является местоположением пика распределения (режим распределения), в то время как параметр масштаба γ   определяет половину ширины PDF на половине максимальной высоты. Если местоположение равно нулю, а шкала 1, то результатом является стандартное распределение Коши.

Распределение важно в физике, поскольку оно является решением дифференциального уравнения, описывающего форсированный резонанс, в то время как в спектроскопии это описание формы линии спектральных линий.

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

На следующем графике показано, как параметр формы (масштаба) изменяет распределение:

Member Functions
cauchy_distribution(RealType location = 0, RealType scale = 1);

Построение распределения Коши с параметром местоположенияместоположениеми параметром масштабамасштаб. Когда эти параметры принимают значения по умолчанию (местоположение = 0, шкала = 1), то результатом является стандартное распределение Коши.

Требуется масштабирование >0, иначе вызываетdomain_error.

RealType location()const;

Возвращает параметр местоположения распределения.

RealType scale()const;

Возвращает масштабный параметр распределения.

Non-member Accessors

Поддерживаются всеобычные функции доступа, не являющиеся членами, которые являются общими для всех распределений:Функция кумулятивного распределения,Функция плотности вероятности,Количественная,Функция опасности,Кумулятивная функция опасности,среднее,средний,режим,дисперсия,стандартное отклонение,перекос,куртоз,куртоз_избыток,диапазониподдержка.

Обратите внимание, что распределение Коши не имеет среднего, стандартного отклонения и т.д. См.математически неопределенную функциюдля контроля того, должны ли они не компилироваться с BOOST_. STATIC_ASSERTION_FAILURE, который является по умолчанию.

В качестве альтернативы, функцииозначают,стандартное отклонение,дисперсию,перекос,куртозикуртоз_избыток, и все они возвращаютдомен_ошибка, если их вызвать.

Доменом случайной переменной является [-[max_value], +[min_value]].

Accuracy

Дистрибутив Коши реализован с точки зрения стандартных функций библиотеки<tan>и<atan>и как таковой должен иметь очень низкие показатели ошибок.

Implementation

В следующей таблице x0является параметром местоположения распределения, γ   является его параметром масштаба,xявляется случайной вариацией,pявляется вероятностью иq = 1-p.

Функция

Записки об осуществлении

pdf

Используя соотношение: pdf = 1 / (π * γ * (1 + (x - x0) / γ)2)

cdf и его дополнение

Cdf обычно задается:

p = 0,5 + atan(x)/π

Но это страдает от ошибки отмены как x ->-∞. Для<x< 0>:

atan(x) = -π/2 - atan(1/x)

Заменяя вышесказанное, получаем:

p = -atan(1/x) ; x< 0

Таким образом, процедура заключается в вычислении cdf для -fabs(x) с использованием приведенной выше формулы. Обратите внимание, что для учета параметров местоположения и масштаба вы должны заменить (x - x0) / & #947; & #160; для x в вышеупомянутом.

Эта процедура дает меньшее изpиq, поэтому результат может потребовать вычитания из 1 в зависимости от того, хотим мы дополнения или нет, и является лиxменьше, чем x0или нет.

квантиль

Та же самая процедура используется независимо от того, исходим ли мы из вероятности или ее дополнения. Сначала аргументpсводится к диапазону [-0,5, 0,5], затем для получения результата используется отношение

x = x0& #177; & #947; & #160; / tan(π * p)

. Добавляем ли мы или вычитаем из x0, определяется тем, начинаем ли мы с дополнения или нет.

режим

Параметр местоположения.

References

PrevUpHomeNext

Статья Cauchy-Lorentz Distribution раздела Math Toolkit 2.5.0 Distributions может быть полезна для разработчиков на c++ и boost.




Материалы статей собраны из открытых источников, владелец сайта не претендует на авторство. Там где авторство установить не удалось, материал подаётся без имени автора. В случае если Вы считаете, что Ваши права нарушены, пожалуйста, свяжитесь с владельцем сайта.



:: Главная :: Distributions ::


реклама


©KANSoftWare (разработка программного обеспечения, создание программ, создание интерактивных сайтов), 2007
Top.Mail.Ru

Время компиляции файла: 2024-08-30 11:47:00
2025-05-20 05:44:16/0.0069441795349121/0