Дигамма-функция
psi(x)
psi(k,x)
psi(
вычисляет дигамма-функцию x
)x
.
psi(
вычисляет полигамма функцию k
,x
)x
, который является k
th производная дигамма-функции при x
.
Вычислите digamma и полигамма функции для этих чисел. Поскольку эти числа не являются символьными объектами, вы получаете результаты с плавающей точкой.
[psi(1/2) psi(2, 1/2) psi(1.34) psi(1, sin(pi/3))]
ans = -1.9635 -16.8288 -0.1248 2.0372
Вычислите digamma и полигамма функции для чисел, преобразованных в символьные объекты.
[psi(sym(1/2)), psi(1, sym(1/2)), psi(sym(1/4))]
ans = [ - eulergamma - 2*log(2), pi^2/2, - eulergamma - pi/2 - 3*log(2)]
Для некоторых символьных (точных) чисел psi
отвечает на неразрешенные символьные звонки.
psi(sym(sqrt(2)))
ans = psi(2^(1/2))
Вычислите производные этих выражений, содержащих полигамма функции и digamma.
syms x diff(psi(1, x^3 + 1), x) diff(psi(sin(x)), x)
ans = 3*x^2*psi(2, x^3 + 1) ans = cos(x)*psi(1, sin(x))
Расширьте выражения, содержащие дигамма-функции.
syms x expand(psi(2*x + 3)) expand(psi(x + 2)*psi(x))
ans = psi(x + 1/2)/2 + log(2) + psi(x)/2 +... 1/(2*x + 1) + 1/(2*x + 2) + 1/(2*x) ans = psi(x)/x + psi(x)^2 + psi(x)/(x + 1)
Вычислите пределы для выражений, содержащих полигамма функции и digamma.
syms x limit(x*psi(x), x, 0) limit(psi(3, x), x, inf)
ans = -1 ans = 0
Вычислите дигамма-функцию для элементов матричного M
и векторного V
.
M = sym([0 inf; 1/3 1/2]); V = sym([1, inf]); psi(M) psi(V)
ans = [ Inf, Inf] [ - eulergamma - (3*log(3))/2 - (pi*3^(1/2))/6, - eulergamma - 2*log(2)] ans = [ -eulergamma, Inf]
Вычислите полигамма функцию для элементов матричного M
и векторного V
. Функция psi
действует поэлементно на нескалярные входные параметры.
M = sym([0 inf; 1/3 1/2]); polyGammaM = [1 3; 2 2]; V = sym([1, inf]); polyGammaV = [6 6]; psi(polyGammaM,M) psi(polyGammaV,V)
ans = [ Inf, 0] [ - 26*zeta(3) - (4*3^(1/2)*pi^3)/9, -14*zeta(3)] ans = [ -720*zeta(7), 0]
Поскольку все элементы polyGammaV
имеют то же значение, можно заменить polyGammaV
скаляром того значения. psi
расширяет скаляр в нескалярное одного размера как V
и вычисляет результат.
V = sym([1, inf]); psi(6,V)
ans = [ -720*zeta(7), 0]
Вызов psi
для номера, который не является символьным объектом, вызывает функцию MATLAB® psi
. Эта функция принимает действительные неотрицательные аргументы x
. Если вы хотите вычислить полигамма функцию для комплексного числа, используйте sym
, чтобы преобразовать тот номер в символьный объект, и затем вызвать psi
для того символьного объекта.
psi(0, x)
эквивалентен psi(x)
.