Функция Бесселя первого рода
J = besselj( вычисляет функцию Бесселя первого рода
Jstart( z) для каждого элемента в массиве nu,Z)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.](../../examples/matlab/win64/PlotBesselFunctionsOfFirstKindExample_01.png)
Вычислите немасштабированное значение (J) и масштабированы (Js) функция Бесселя первого рода ) для комплексных значений 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')

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')

nu - Порядок уравненийПорядок уравнений, заданный как скаляр, вектор, матрица или многомерный массив. nu - вещественное число, указывающее порядок функции Бесселя первого рода. nu и Z должен быть одинакового размера, или один из них может быть скалярным.
Пример: besselj(3,0:5)
Типы данных: single | double
Z - Функциональный доменФункциональная область, заданная как скаляр, вектор, матрица или многомерный массив. besselj является действительным, где Z является положительным. nu и Z должен быть одинакового размера, или один из них может быть скалярным.
Пример: besselj(1,[1-1i 1+0i 1+1i])
Типы данных: single | double
Поддержка комплексного номера: Да
scale - Переключение на функцию масштабирования0 (по умолчанию) | 1Переключение на функцию масштабирования, заданную как одно из следующих значений:
0 (по умолчанию) - без масштабирования
1 - Масштабировать выход besselj около exp(-abs(imag(Z)))
На комплексной плоскости величина besselj быстро растет по мере того, как значение abs(imag(Z)) увеличивается, поэтому экспоненциальное масштабирование выходного сигнала полезно для больших значений abs(imag(Z)) где результаты в противном случае быстро теряют точность или переполняют пределы двойной точности.
Пример: besselj(3,0:5,1)
Это дифференциальное уравнение, где start- вещественная константа, называется уравнением Бесселя:
start2) y = 0.
Его решения известны как функции Бесселя.
Функции Бесселя первого рода, обозначенные Jstart( z) и J-start( z), образуют фундаментальный набор решений уравнения Бесселя для неинтегрирующих start. Jstart( z) определяется
! Γ (start+ k + 1).
Функции Бесселя второго рода, обозначенные Ystart( z), образуют второе решение уравнения Бесселя, линейно не зависящее от Jstart( z). Ystart( z) определяется как
Функции Бесселя второго рода можно вычислить с помощью bessely.
Функции Бесселя связаны с функциями Ганкеля, также называемыми функциями Бесселя третьего рода:
J, (z) − i, Y, (z).
z) =besselh, Jstart( z) являетсяbesselj, и Ystart( z) являетсяbessely. Функции Ганкеля также образуют фундаментальный набор решений уравнения Бесселя (см. besselh).
Эта функция полностью поддерживает массивы tall. Дополнительные сведения см. в разделе Массивы Tall.
Примечания и ограничения по использованию:
Всегда возвращает сложный результат.
Строгие вычисления с одной точностью не поддерживаются. В сгенерированном коде входы с одной точностью дают выходы с одной точностью. Однако переменные внутри функции могут иметь двойную точность.
Примечания и ограничения по использованию:
Всегда возвращает сложный результат.
Строгие вычисления с одной точностью не поддерживаются. В сгенерированном коде входы с одной точностью дают выходы с одной точностью. Однако переменные внутри функции могут иметь двойную точность.
Примечания и ограничения по использованию:
Заказ nu должно быть положительным, действительным, целым числом.
Аргумент Z должно быть реальным значением.
Синтаксис с тремя входами J = besselj(nu,Z,scale) не поддерживается.
Дополнительные сведения см. в разделе Запуск функций MATLAB на графическом процессоре (панель инструментов параллельных вычислений).
Эта функция полностью поддерживает распределенные массивы. Дополнительные сведения см. в разделе Запуск функций MATLAB с распределенными массивами (панель инструментов параллельных вычислений).
Имеется измененная версия этого примера. Открыть этот пример с помощью изменений?
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.