Функция Бесселя второго рода
Y = bessely(
вычисляет функцию Бесселя второго рода
Y ν (z) для каждого элемента в массиве Znu
,Z
).
Определите область.
z = 0:0.1:20;
Вычислим первые пять функций Бесселя второго рода. Каждая строка Y
содержит значения одного порядка функции, вычисленные в точках в z
.
Y = zeros(5,201); for i = 0:4 Y(i+1,:) = bessely(i,z); end
Постройте график всех функций на том же рисунке.
plot(z,Y) axis([-0.1 20.2 -2 0.6]) grid on legend('Y_0','Y_1','Y_2','Y_3','Y_4','Location','Best') title('Bessel Functions of the Second Kind for $\nu \in [0, 4]$','interpreter','latex') xlabel('z','interpreter','latex') ylabel('$Y_\nu(z)$','interpreter','latex')
Вычислим немасштабированный (Y
) и масштабированный (Ys
) Бессельская функция второго рода для комплексных чисел .
x = -10:0.35:10; y = x'; z = x + 1i*y; scale = 1; Y = bessely(2,z); Ys = bessely(2,z,scale);
Сравните графики мнимой части масштабированных и немасштабированных функций. Для больших значений abs(imag(z))
немасштабированная функция быстро переполняет пределы двойной точности и перестает быть вычисляемой. Масштабированная функция удаляет это доминирующее экспоненциальное поведение из вычисления и, таким образом, имеет большую область значений вычисляемости по сравнению с немасштабированной функцией.
surf(x,y,imag(Y)) title('Bessel Function of the Second Kind','interpreter','latex') xlabel('real(z)','interpreter','latex') ylabel('imag(z)','interpreter','latex')
surf(x,y,imag(Ys)) title('Scaled Bessel Function of the Second Kind','interpreter','latex') xlabel('real(z)','interpreter','latex') ylabel('imag(z)','interpreter','latex')
nu
- Порядок уравненияПорядок уравнения, заданный как скаляр, вектор, матрица или многомерный массив. nu
является вещественным числом, которое задает порядок функции Бесселя второго рода. nu
и Z
должен быть того же размера, или один из них может быть скалярным.
Пример: bessely(3,0:5)
Типы данных: single
| double
Z
- Функциональная областьФункциональная область, заданная как скалярный, векторный, матричный или многомерный массив. bessely
является реальным, где Z
положительно. nu
и Z
должен быть того же размера, или один из них может быть скалярным.
Пример: bessely(1,[1-1i 1+0i 1+1i])
Типы данных: single
| double
Поддержка комплексного числа: Да
scale
- Переключение на функцию масштабирования0
(по умолчанию) | 1
Переключение на масштабную функцию, заданное как одно из следующих значений:
0
(по умолчанию) - Без масштабирования
1
- Масштабируйте выходные данные bessely
по exp(-abs(imag(Z)))
На комплексной плоскости величина bessely
быстро растет как значение abs(imag(Z))
увеличивается, поэтому экспоненциальное масштабирование выхода полезно для больших значений abs(imag(Z))
где результаты в противном случае быстро теряют точность или переполняют пределы двойной точности.
Пример: bessely(3,0:5,1)
Это дифференциальное уравнение, где ν является действительной константой, называется уравнением Бесселя:
Его решения известны как функции Бесселя.
Функции Бесселя первого рода, обозначенные J ν (z) и J - ν (z), образуют фундаментальный набор решений уравнения Бесселя для нецелочисленных ν. J ν (z) определяется как
Вычислить функции Бесселя первого рода можно используя besselj
.
Функции Бесселя второго рода, обозначенные Y ν (z), образуют второе решение уравнения Бесселя, линейно независимое от J ν (z). Y ν (z) определяется как
Функции Бесселя связаны с функциями Ханкеля, также называемыми функциями Бесселя третьего рода:
является besselh
, J ν (z) besselj
, и Y ν (z) bessely
. Функции Ханкеля также образуют фундаментальный набор решений уравнения Бесселя (см. besselh
).
Эта функция полностью поддерживает длинные массивы. Для получения дополнительной информации см. Раздел «Длинные массивы»
Указания и ограничения по применению:
Всегда возвращает комплексный результат.
Строгие расчеты с одной точностью не поддерживаются. В сгенерированном коде входы с одной точностью приводят к выходам с одной точностью. Однако переменные внутри функции могут быть с двойной точностью.
Указания и ограничения по применению:
Всегда возвращает комплексный результат.
Строгие расчеты с одной точностью не поддерживаются. В сгенерированном коде входы с одной точностью приводят к выходам с одной точностью. Однако переменные внутри функции могут быть с двойной точностью.
Указания и ограничения по применению:
The порядка <reservedrangesplaceholder0>
должно быть положительным, вещественным, целым значением.
Аргумент Z
должно быть положительным вещественным значением.
Синтаксис трех входных J = bessely(nu,Z,scale)
не поддерживается.
Для получения дополнительной информации смотрите Запуск функций MATLAB на графическом процессоре (Parallel Computing Toolbox).
Эта функция полностью поддерживает распределенные массивы. Для получения дополнительной информации смотрите Запуск функций MATLAB с распределенными массивами (Parallel Computing Toolbox).
У вас есть измененная версия этого примера. Вы хотите открыть этот пример с вашими правками?
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.