Конфлюэнтная гипергеометрическая функция Куммера U
dsolve может возвращать решения обыкновенных дифференциальных уравнений второго порядка в терминах функции Куммера U.
Решите это уравнение. Решатель возвращает результаты в терминах функции Куммера 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 может возвращать результаты с плавающей запятой или точные символьные результаты.
Вычислите функцию Куммера 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
Вычислите функцию Куммера 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Функция Куммера 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функция Куммера 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функция Куммера 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, функция Куммера 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.