Конфлюентная гипергеометрическая функция Куммера U
dsolve
может возвращать решения обыкновенных дифференциальных уравнений второго порядка в терминах функции Куммера U.
Решить это уравнение. Решатель возвращает результаты в терминах функции Kummer U и другой гипергеометрической функции.
syms t z y(z) dsolve(z^3*diff(y,2) + (z^2 + t)*diff(y) + z*y)
ans = (C4*hypergeom(1i/2, 1 + 1i, t/(2*z^2)))/z^1i +... (C3*kummerU(1i/2, 1 + 1i, t/(2*z^2)))/z^1i
В зависимости от его аргументов, kummerU
может вернуть с плавающей точкой или точные символьные результаты.
Вычислите функцию Kummer U для этих чисел. Поскольку эти числа не являются символическими объектами, вы получаете результаты с плавающей точкой.
A = [kummerU(-1/3, 2.5, 2) kummerU(1/3, 2, pi) kummerU(1/2, 1/3, 3*i)]
A = 0.8234 + 0.0000i 0.7284 + 0.0000i 0.4434 - 0.3204i
Вычислите функцию Kummer U для чисел, преобразованных в символические объекты. Для большинства символических (точных) чисел kummerU
возвращает неразрешенные символические вызовы.
symA = [kummerU(-1/3, 2.5, sym(2)) kummerU(1/3, 2, sym(pi)) kummerU(1/2, sym(1/3), 3*i)]
symA = kummerU(-1/3, 5/2, 2) kummerU(1/3, 2, pi) kummerU(1/2, 1/3, 3i)
Использовать vpa
для аппроксимации символьных результатов с необходимым количеством цифр.
vpa(symA,10)
ans = 0.8233667846 0.7284037305 0.4434362538 - 0.3204327531i
Функция Kummer U имеет специальные значения для некоторых параметров.
Если a
является отрицательным целым числом, функция Куммера U уменьшается до полинома.
syms a b z [kummerU(-1, b, z) kummerU(-2, b, z) kummerU(-3, b, z)]
ans = z - b b - 2*z*(b + 1) + b^2 + z^2 6*z*(b^2/2 + (3*b)/2 + 1) - 2*b - 6*z^2*(b/2 + 1) - 3*b^2 - b^3 + z^3
Если b = 2*a
функция Kummer U сводится к выражению, включающему модифицированную функцию Бесселя второго рода.
kummerU(a, 2*a, z)
ans = (z^(1/2 - a)*exp(z/2)*besselk(a - 1/2, z/2))/pi^(1/2)
Если a = 1
или a = b
функция Kummer U сводится к выражению, включающему неполную гамма-функцию.
kummerU(1, b, z)
ans = z^(1 - b)*exp(z)*igamma(b - 1, z)
kummerU(a, a, z)
ans = exp(z)*igamma(1 - a, z)
Если a = 0
, функция Kummer U 1
.
kummerU(0, a, z)
ans = 1
Многие функции, такие как diff
, int
, и limit
, может обрабатывать выражения, содержащие kummerU
.
Найдите первую производную функции Куммера U относительно z
.
syms a b z diff(kummerU(a, b, z), z)
ans = (a*kummerU(a + 1, b, z)*(a - b + 1))/z - (a*kummerU(a, b, z))/z
Найдите неопределенный интеграл функции Kummer U относительно z
.
int(kummerU(a, b, z), z)
ans = ((b - 2)/(a - 1) - 1)*kummerU(a, b, z) +... (kummerU(a + 1, b, z)*(a - a*b + a^2))/(a - 1) -... (z*kummerU(a, b, z))/(a - 1)
Найдите предел этой функции Kummer U.
limit(kummerU(1/2, -1, z), z, 0)
ans = 4/(3*pi^(1/2))
kummerU
возвращает результаты с плавающей точкой для числовых аргументов, которые не являются символьными объектами.
kummerU
действует поэлементно на нескалярных входах.
Все нескалярные аргументы должны иметь одинаковый размер. Если один или два входных параметров нескаляра, то kummerU
расширяет скаляры в векторы или матрицы того же размера, что и нескалярные аргументы, при этом все элементы равны соответствующему скаляру.
[1] Слейтер, Л. Дж. «Слияние гипергеометрических функций». Руководство по математическим функциям с формулами, графиками и математическими таблицами. (М. Абрамовиц и И. А. Штегун, эд.). Нью-Йорк: Дувр, 1972.