Библиотека разделена на три взаимосвязанные части:
Обеспечивает достаточно полный наборстатистических распределений, на котором могут быть построены статистические тесты более высокого уровня.
Первоначальный акцент делается на центральныеодномерныераспределения.. ОбаНепрерывный(какнормально)иФишеридискретный(какбиномиал&Пуассон) распределения предоставляются.
Предоставляетсявсеобъемлющее руководство, а также рядрабочих примеров, иллюстрирующих, как библиотека используется для проведения статистических тестов.
Обеспечивает небольшое количество высококачественныхспециальных функций, первоначально они были сосредоточены на функциях, используемых в статистических приложениях, наряду с функциями, используемыми втехническом отчете о расширениях библиотеки C++.
В настоящее время реализованы семейства функций: гамма, бета и амп; эрф функции наряду с неполными гамма и бета функциями (четыре варианта каждого) и все возможные обратные из них, плюс дигамма, различные факториальные функции, функции Бесселя, эллиптические интегралы, синусовые кардиналы (наряду с их гиперболическими вариантами), обратные гиперболические функции, полиномы Легрендра / Лагерра / Гермита и различные специальные силовые и логарифмические функции.
Все реализации являются полностью общими и поддерживают использование произвольных типов «реального числа», включаяBoost.Multiprecision, хотя они оптимизированы для использования с типами с известными (31) знаковыми и (или mantissa)размерами: обычно<float
>,<double
>или<long
double
>.
В разделеВнутренние инструментыпредставлены многие инструменты, необходимые для реализации математических специальных функций: надеюсь, их наличие побудит других авторов в будущем вносить больше специальных реализаций функций.
Некоторые инструменты теперь считаются проверенными, а их подписи стабильны и вряд ли изменятся.
Существует довольно полный набор корневых находок каккорневых находок без производных, так икорневых находок с производнымис поддержкой производных, и минимизация функций с использованием методаБрента.
ДругиеВнутренние инструментыв настоящее время все еще считаются экспериментальными: они представляют собой «обнаруженные детали реализации», интерфейсы и/или реализации которых могут изменяться без предварительного уведомления.
Есть помощники дляоценки бесконечных рядов,непрерывных фракцийирациональных приближений. Реализация алгоритма Ремезапозволяет найти минимальные рациональные приближения.
Существуют также (экспериментальные) классы дляманипулирования полиномами, длятестирования специальной функции против табулированных тестовых данныхи длябыстрого генерирования тестовых данныхи/или данных для вывода на внешнее графическое приложение.