besselj

Функция Бесселя первого рода

Описание

пример

J = besselj(nu,Z) вычисляет функцию Бесселя первого рода J ν (z) для каждого элемента в массиве Z.

пример

J = besselj(nu,Z,scale) определяет, следует ли экспоненциально масштабировать функцию Бесселя первого рода, чтобы избежать переполнения или потери точности. Если scale является 1, затем выход besselj масштабируется по фактору exp(-abs(imag(Z))).

Примеры

свернуть все

Определите область.

z = 0:0.1:20;

Вычислим первые пять функций Бесселя первого рода. Каждая строка J содержит значения одного порядка функции, вычисленные в точках в z.

J = zeros(5,201);
for i = 0:4
    J(i+1,:) = besselj(i,z);
end

Постройте график всех функций на том же рисунке.

plot(z,J)
grid on
legend('J_0','J_1','J_2','J_3','J_4','Location','Best')
title('Bessel Functions of the First Kind for $\nu \in [0, 4]$','interpreter','latex')
xlabel('z','interpreter','latex')
ylabel('$J_\nu(z)$','interpreter','latex')

Figure contains an axes. The axes with title Bessel Functions of the First Kind for $\nu \in [0, 4]$ contains 5 objects of type line. These objects represent J_0, J_1, J_2, J_3, J_4.

Вычислим немасштабированный (J) и масштабированный (Js) Функция Бесселя первого рода J2(z) для комплексных чисел z.

x = -10:0.3:10;
y = x';
z = x + 1i*y;
scale = 1;
J = besselj(2,z);
Js = besselj(2,z,scale);

Сравните графики мнимой части масштабированных и немасштабированных функций. Для больших значений abs(imag(z))немасштабированная функция быстро переполняет пределы двойной точности и перестает быть вычисляемой. Масштабированная функция удаляет это доминирующее экспоненциальное поведение из вычисления и, таким образом, имеет большую область значений вычисляемости по сравнению с немасштабированной функцией.

surf(x,y,imag(J))
title('Bessel Function of the First Kind','interpreter','latex')
xlabel('real(z)','interpreter','latex')
ylabel('imag(z)','interpreter','latex')

Figure contains an axes. The axes with title Bessel Function of the First Kind contains an object of type surface.

surf(x,y,imag(Js))
title('Scaled Bessel Function of the First Kind','interpreter','latex')
xlabel('real(z)','interpreter','latex')
ylabel('imag(z)','interpreter','latex')

Figure contains an axes. The axes with title Scaled Bessel Function of the First Kind contains an object of type surface.

Входные параметры

свернуть все

Порядок уравнения, заданный как скаляр, вектор, матрица или многомерный массив. nu является вещественным числом, которое задает порядок функции Бесселя первого рода. nu и Z должен быть того же размера, или один из них может быть скалярным.

Пример: besselj(3,0:5)

Типы данных: single | double

Функциональная область, заданная как скалярный, векторный, матричный или многомерный массив. besselj является реальным, где Z положительно. nu и Z должен быть того же размера, или один из них может быть скалярным.

Пример: besselj(1,[1-1i 1+0i 1+1i])

Типы данных: single | double
Поддержка комплексного числа: Да

Переключение на масштабную функцию, заданное как одно из следующих значений:

  • 0 (по умолчанию) - Без масштабирования

  • 1 - Масштабируйте выходные данные besselj по exp(-abs(imag(Z)))

На комплексной плоскости величина besselj быстро растет как значение abs(imag(Z)) увеличивается, поэтому экспоненциальное масштабирование выхода полезно для больших значений abs(imag(Z)) где результаты в противном случае быстро теряют точность или переполняют пределы двойной точности.

Пример: besselj(3,0:5,1)

Подробнее о

свернуть все

Функции Бесселя

Это дифференциальное уравнение, где ν является действительной константой, называется уравнением Бесселя:

z2d2ydz2+zdydz+(z2ν2)y=0.

Его решения известны как функции Бесселя.

Функции Бесселя первого рода, обозначенные J ν (z) и J - ν (z), образуют фундаментальный набор решений уравнения Бесселя для нецелочисленных ν. J ν (z) определяется как

Jν(z)=(z2)ν(k=0)(z24)kk!Γ(ν+k+1).

Функции Бесселя второго рода, обозначенные Y ν (z), образуют второе решение уравнения Бесселя, линейно независимое от J ν (z). Y ν (z) определяется как

Yν(z)=Jν(z)cos(νπ)Jν(z)sin(νπ).

Вычислить функции Бесселя второго рода можно используя bessely.

Совет

Функции Бесселя связаны с функциями Ханкеля, также называемыми функциями Бесселя третьего рода:

Hν(1)(z)=Jν(z)+iYν(z)Hν(2)(z)=Jν(z)iYν(z).

Hν(K)(z) является besselh, J ν (z) являетсяbesselj, и Y ν (z) bessely. Функции Ханкеля также образуют фундаментальный набор решений уравнения Бесселя (см. besselh).

Расширенные возможности

..

См. также

| | |

Представлено до R2006a