Main Content

psi

説明

psi(x) では xディガンマ関数を計算します。

psi(k,x) では xポリガンマ関数を計算します。これは、ディガンマ関数の x での k 階微分です。

数値入力のディガンマ関数とポリガンマ関数の計算

次の数字についてディガンマ関数とポリガンマ関数を計算します。これらの数値はシンボリック オブジェクトではないため、結果は浮動小数点数となります。

[psi(1/2) psi(2, 1/2) psi(1.34) psi(1, sin(pi/3))]
ans =
   -1.9635  -16.8288   -0.1248    2.0372

シンボリック入力のディガンマ関数とポリガンマ関数の計算

シンボリック オブジェクトに変換された数字のディガンマ関数とポリガンマ関数を計算します。

[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))

ディガンマ関数とポリガンマ関数の微分の計算

ディガンマ関数とポリガンマ関数を含む次の式の導関数を計算します。

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)

ディガンマ関数とポリガンマ関数の極限

ディガンマ関数とポリガンマ関数を含む式の極限を計算します。

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]

入力引数

すべて折りたたむ

入力。シンボリック数、変数、式、または配列、あるいは式として指定します。

入力。非負の整数またはベクトル、行列または非負の整数の多次元配列として指定します。x が非スカラーで、k がスカラーである場合、k は各要素が k と等しい x と同じ次元の非スカラーに拡張されます。xk が両方とも非スカラーの場合、これらは同じ次元でなければなりません。

詳細

すべて折りたたむ

ディガンマ関数

ディガンマ関数は、ガンマ関数の対数の 1 次導関数です。

ψ(x)=ddxlnΓ(x)=Γ(x)Γ(x)

ポリガンマ関数

k 階のポリガンマ関数は、ガンマ関数の対数の (k + 1) 階微分です。

ψ(k)(x)=dk+1dxk+1lnΓ(x)=dkdxkψ(x)

ヒント

  • シンボリック オブジェクトではない数値について psi を呼び出すと、MATLAB® 関数 psi が呼び出されます。この関数は引数として非負の実数 x を受け入れます。複素数のポリガンマ関数を計算する場合は、sym を使用してその数値をシンボリック オブジェクトに変換し、そのシンボリック オブジェクトに対して psi を呼び出します。

  • 関数 psi(0, x) は、関数 psi(x) と等価です。

バージョン履歴

R2011b で導入