Что вычисляет этот калькулятор
Инструмент строит таблицу функций Кельвина первого рода berv(x) и beiv(x) для выбранного порядка (степени) v на заданном диапазоне значений x. Эти функции представляют собой действительную и мнимую части функции Бесселя Jv, вычисленной для повёрнутого аргумента \(x\cdot e^{i3\pi/4}\). Они встречаются в задачах, связанных с сопротивлением переменному току (скин-эффект), теплопроводностью в цилиндрах и в целом ряде других физических и инженерных приложений.
Как пользоваться
Введите четыре параметра: порядок v (обычно 0, 1, 2…), начальное значение Начальное значение x, шаг Шаг, прибавляемый в каждой строке, и количество строк таблицы Количество строк. По умолчанию x пробегает значения от −7 до +7 с шагом 0,2 (71 строка). Результат — таблица со столбцами x, berv(x), beiv(x).
Разбор формулы
Ряд имеет вид
$$\mathrm{ber}_v(x) + i\,\mathrm{bei}_v(x) = \left(\frac{x}{2}\right)^{v} e^{\,3v\pi i/4} \sum_{k=0}^{\infty} \frac{\left(\frac{i\,x^{2}}{4}\right)^{k}}{k!\,\Gamma(v+k+1)}$$Вычисление выполняется через рекуррентное соотношение для комплексных членов: каждый следующий член равен предыдущему, умноженному на \(\frac{i\,x^{2}/4}{k(v+k)}\). Это избавляет от повторного вычисления степеней и факториалов. Гамма-функция для действительного v рассчитывается по приближению Ланцоша. Суммирование прекращается, когда очередной член становится пренебрежимо малым по сравнению с накопленной суммой.
Пример расчёта (v = 0, x = 2)
Ряды дают
$$\mathrm{ber}_0(2) \approx 1 - 0{,}25 + 0{,}001736 - \dots \approx 0{,}75173$$и
$$\mathrm{bei}_0(2) \approx 1 - 0{,}027778 + 0{,}0000694 \approx 0{,}97229,$$что совпадает со стандартными таблицами (\(\mathrm{ber}_0(2)=0{,}7517\), \(\mathrm{bei}_0(2)=0{,}9723\)).
Частые вопросы
Может ли v быть нецелым? Да. Гамма-функция работает с любым действительным v. Для отрицательных x при нецелом v множитель \(\left(\frac{x}{2}\right)^{v}\) многозначен — используется главная ветвь.
Почему при v=0 значения симметричны? Ряд для v=0 содержит только чётные степени x, поэтому \(\mathrm{ber}_0(-x)=\mathrm{ber}_0(x)\) и \(\mathrm{bei}_0(-x)=\mathrm{bei}_0(x)\).
А что с очень большими x? Ряд хорошо сходится при умеренных значениях \(|x|\). При \(|x| > 20\) требуется много членов, и устойчивее было бы использовать асимптотическое разложение; для наилучшей точности оставайтесь в пределах диапазона по умолчанию.