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

Cyclic Hankel Functions

Boost , Math Toolkit 2.5.0 , Hankel Functions

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
Synopsis
template <class T1, class T2>
std::complex<calculated-result-type> cyl_hankel_1(T1 v, T2 x);
template <class T1, class T2, class Policy>
std::complex<calculated-result-type> cyl_hankel_1(T1 v, T2 x, const Policy&);
template <class T1, class T2>
std::complex<calculated-result-type> cyl_hankel_2(T1 v, T2 x);
template <class T1, class T2, class Policy>
std::complex<calculated-result-type> cyl_hankel_2(T1 v, T2 x, const Policy&);
Description

Функцииcyl_hankel_1иcyl_hankel_2возвращают результатфункции Ханкеляпервого и второго рода соответственно:

cyl_hankel_1(v, x) = Hv(1)(x) = Jv(x) + i Yv(x)

cyl_hankel_2(v, x) = Hv(2)(x) = Jv(x) - i Yv(x)

где:

Jv(x)является Бесселевой функцией первого рода, аYv(x)является Бесселевой функцией второго рода.

Тип возврата этих функций вычисляется с использованиемправил расчета типа результата, когда T1 и T2 являются различными типами. Функции также оптимизированы для относительно распространенного случая, когда T1 является целым числом.

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

Обратите внимание, что хотя аргументы в пользу этих функций являются реальными значениями, результаты являются сложными. Это означает, что функции могут быть реализованы только на типах<float>,<double>и<longdouble>. Функции также были расширены для работы во всем диапазонеvиx(в отличие отcyl_bessel_jиcyl_neumann).

Performance

Эти функции, как правило, более эффективны, чем два отдельных вызова базовых функций Бесселя, поскольку внутренне Бесселя J и Y можно вычислить одновременно.

Testing

Существует всего несколько точечных тестов для выполнения всей специальной обработки корпуса - основная часть тестирования выполняется на функциях Бесселя, на которых они основаны.

Accuracy

cyl_bessel_jиcyl_neumann.

Implementation

Дляx< 0используются следующие формулы отражения:

В противном случае реализация является тривиальной с точки зрения функций Бесселя J и Y.

Заметим, однако, что функции Ханкеля вычисляют функции Бесселя J и Y одновременно, и поэтому один вызов функции Ханкеля более эффективен, чем два вызова функции Бесселя. Исключением является случай, когдапротивявляется небольшое положительное целое число, и в этом случае используются обычные процедуры функции Бесселя для целого порядка.


PrevUpHomeNext

Статья Cyclic Hankel Functions раздела Math Toolkit 2.5.0 Hankel Functions может быть полезна для разработчиков на c++ и boost.




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



:: Главная :: Hankel Functions ::


реклама


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

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