![]() |
![]() ![]() ![]() ![]() ![]() |
![]() |
Owen's T functionBoost , Math Toolkit 2.5.0 , Chapter 6. Special Functions
|
Microsoft Visual C++ версия 12.0 |
GNU C++ версия 5.1.0 |
GNU C++ версия 5.1.0 |
Солнечный компилятор версии 0x5130 |
|
---|---|---|---|---|
Оуэнс Т (средние малые значения) |
Макс = 4.37ε (Средний = 0.973ε) |
Макс = 0ε (Средний = 0ε) |
Макс = 3,34ε (Средний = 0,942ε) |
Макс = 3,34ε (Средний = 0,91ε) |
Оуэнс Т (большие и разнообразные значения) |
Макс = 3.78ε (Средний = 0.621ε) |
Макс = 0ε (Средний = 0ε) |
Макс = 49ε (Средний = 2.16ε) |
Макс = 24,5ε (Средний = 1,38ε) |
Тестовые данные генерировались алгоритмами Patefield и Tandy T1 и T4, а также предлагаемой эталонной рутиной T7.
atan(a)
>(т.е. аннулирование),Поверх встроенных типов и диапазона тестируемых ошибок меньше 10 std::numeric_limits
Однако существовал целый домен (большойh, маленькийa), где невозможно было генерировать какие-либо надежные значения теста (все методы были отклонены по той или иной причине).
Существуют также два набора тестов здравомыслия: значения пятен вычисляются с использованиемWolfram Mathematicaи. Проект R для статистических вычислений.
Эта функция была предложена и оценена. Дональд. B. Owen, Tables for computing bivariate normal probabilities, Ann. Math. Статист., 27, 1075-1090 (1956).
Алгоритмы Patefield, M. and Tandy, D. "Fast and accurate Calculation of Owen's T-Function", Journal of Statistical Software, 5 (5), 1 - 25 (2000) адаптированы для C++ с произвольным RealType.
Алгоритм Patefield-Tandy предоставляет шесть методов эвалуализации (T1-T6); лучший метод выбирается в соответствии со значениямиaиh. См. оригинал статьи и источник вowens_t.hppдля деталей.
Алгоритм Patefield-Tandy точен примерно до 20 десятичных знаков, поэтому для типов с большей точностью мы используем:
Используя вышеупомянутый алгоритм и тип с 100-десятичной цифрой, были получены результаты с точностью до 80 десятичных мест в трудной области, гдеблизок к 1, и более 95 десятичных мест в другом месте.
Статья Owen's T function раздела Math Toolkit 2.5.0 Chapter 6. Special Functions может быть полезна для разработчиков на c++ и boost.
Материалы статей собраны из открытых источников, владелец сайта не претендует на авторство. Там где авторство установить не удалось, материал подаётся без имени автора. В случае если Вы считаете, что Ваши права нарушены, пожалуйста, свяжитесь с владельцем сайта.
:: Главная :: Chapter 6. Special Functions ::
реклама |