besseli

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

Синтаксис

I = besseli(nu,Z)
I = besseli(nu,Z,scale)

Описание

пример

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

пример

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

Примеры

свернуть все

Задайте область.

z = 0:0.01:5;

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

I = zeros(5,501);
for nu = 0:4
    I(nu+1,:) = besseli(nu,z);
end

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

plot(z,I)
axis([0 5 0 8])
grid on
legend('I_0','I_1','I_2','I_3','I_4','Location','NorthWest')
title('Modified Bessel Functions of the First Kind for $\nu \in [0,4]$','interpreter','latex')
xlabel('z','interpreter','latex')
ylabel('$I_\nu(z)$','interpreter','latex')

Вычислите масштабированную измененную Функцию Бесселя первого вида Iν(z)e-|Ре[Z]| для значений z в интервале [0,20] и для порядков ν между 0 и 3.

z = linspace(0,20);
scale = 1;
Is = zeros(4,100);
for nu = 0:3
  Is(nu+1,:) = besseli(nu,z,scale);
end

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

plot(z,Is)
legend('I_0','I_1','I_2','I_3')
title('Scaled Mod. Bessel Functions of the First Kind for $\nu \in \left[0, 3 \right]$','interpreter','latex')
xlabel('z','interpreter','latex')
ylabel('$e^{-|{z}|} \cdot I_\nu(z)$','interpreter','latex')

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

свернуть все

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

Пример: besseli(3,Z)

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

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

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

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

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

  • 0 (значение по умолчанию) — Никакое масштабирование

  • 1 — Масштабируйте вывод besseli exp(-abs(real(Z)))

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

Пример: besseli(nu,Z,1)

Больше о

свернуть все

Измененные функции Бесселя

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

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

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

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

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

Измененные Функции Бесселя второго доброго, обозначенного K ν (z), сформируйте второе решение, независимое от I ν (z), данный

Kν(z)=(π2)Iν(z)Iν(z)sin(νπ).

Можно вычислить измененные Функции Бесселя второго вида с помощью besselk.

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

Смотрите также

| | | |

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