数式処理ソフト DERIVE(デライブ) de ドライブ

50.複素関数(5)(留数、留数定理とその応用)

1.留数

「今回で、『DERIVE de ドライブ』も第50回を迎えることが出来た。いや、めでたい。これも、ともちゃんのおかげじゃな」
「えへん。どんな問題、じゃない、どんなモンダイ!」
「だいぶ、難渋した複素関数のシリーズもようやく、一応の終着駅が見えてきたの。
記念すべき第50回は、留数を使って定積分の値を計算するという方法を解説しよう」
「∫(x=0〜∞)(1/(1+x4))dx=π/(2√2)などね」
「うん、そうじゃのう。問題にもよりけりじゃが、複素関数、特に留数を使うと、エレガント、かつ、簡単にできることがあるのじゃな」
「じゃ、早く、『留数』さんを紹介してよ」
「ω(z)は、閉曲線上で積分すると、閉曲線内に特異点がなければ、コーシーの積分定理から、積分値は、ゼロになる。
しかし、特異点があるときは、一般には、ゼロにはならない。では、どうなるか。
ω(z)がz=z0に極を持つものとする。たとえば、ω(z)=1/(z+1)のようなものじゃな。z0=−1は、1位の極じゃ。
一般に、複素関数 ω(z)を特異点 z=z0でローラン展開すると、ω(z0)=Σan×(z−z0)n と書ける。
このとき、前回出てきた、ローラン展開では、係数、an=(1/2π#i)∫ω(s)/(s−z0)n+1 ds じゃった。
もし、ωが閉曲線の内部に他に極を持たなければ、n=-1として、直ちに、a-1×2π#i=∫ω(s)ds であることが分かる。
すなわち、右辺の定積分が左辺のa-1を元に計算できるということじゃ。
このようなa-1のことをω(z)のz0での留数というのじゃ。z0での留数を、Res(ω(z0))と書くこともある。
この、Resは、英語の『residue』(余り)ということから来ているようじゃな」

2.留数の応用(1)

「なんども引用して気が引けるのじゃが、ハンドブックにこのような例が載っている。
∫(原点を中心とする半径rの円)sin(z)/z4 dz の値を求めよ。どうじゃな」
「z=0がただ一つの極である。
sin(z)=z−z3/3!+z5/5!−+・・ なので、ω=1/z3−1/3!z+z/5!−+・・、これは、ローラン展開となっている。
これから、a-1=−1/6 であるので、∫(原点を中心とする半径rの円)sin(z)/z4 dz=−π#i/3 となる。
念のため、DERIVEで計算してみると、近似値しか計算できないけど、計算値は、- 1.047197551 #i となって、真値=-1.047197551 #i と一致するわ」

3.留数の求め方(1) (1位の極の留数)

「いちいち、ローラン展開を意識して考えるというのも面倒じゃないの」
「うん。留数のみを求めたいという、わがままな方向けに次のような簡単な求め方がある。
まずは、1位の極がある場合は、lim(z → z0)(z−z0)×ω(z)=a-1 、これは、ローラン展開を思い浮かべると納得じゃろう。
あるいは、ω(z)=f(z)/g(z) と書けた場合で、g(z0)=0、f(z0)≠0で正則とする。
このとき、g(z)=Σ(n=1〜)g(n)(z0)(z−z0)n/n! とテイラー展開できる。ここで、g(n)(z)は、g(z)の第n階微分を表すとものする。
すると、lim(z→z0)(z−z0)×f(z)/((z-z0)(g(1)(z0)+g(2)(z0)(z-z0)/2!+・・))=f(z0)/g(1)(z0)=a-1ということが分かる。
すなわち、a-1=f(z0)/g(1)(z0) ということじゃ」
「ふ〜ん。じゃ、∫(原点の回りの円)exp(−z2)/z dz は、そんな例ね」
「そうじゃな。この場合、z=0が1位の極で、lim(z→0)z×exp(−z2)/z=1 となるので、
∫(原点の回りの円)exp(−z2)/z dz =2π#i≒6.283185307 #i 、DERIVEで検算すると、近似値しか計算できないが、正しいようじゃな」
「すごいわ。∫(原点の回りの円)exp(−z)/sin(z) dz の場合は、どうなるかしら」
「分母の関数 g(z)=sin(z) で、留数=exp(−0)/cos(0)=1、なので、∫(原点の回りの円)exp(−z)/sin(z) dz=2π#i
DERIVEで近似計算すると、2.111648785×10^(-11) + 6.283185307 #i となるので、正しいであろうことが分かる」
「DERIVEで厳密な結果が求まりそうもないときは、まず、命令を実行するのじゃなくて、「命令式」というボタンを押すと、無理に計算しようとせずに次々と式を変形や代入できるのね。これは、便利!」
「∫(原点の回りの円)cos(z)/sin(z) dz にも使えるの?」
「同様に、cos(0)≠0より、留数=cos(0)/cos(0)=1 なので、∫(原点の回りの円)cos(z)/sin(z) dz=2π#i 」

4.留数の求め方(2) (高位の極の留数)

「z=z0が1位より大きい極となっている場合は、次のように留数を求めることができるのじゃな。
ωがz0でm位の極(m>1)を持つとする。すなわち、ω(z0)=Σ(n=-m〜∞)an×(z−z0)n で、ここで、a-m≠0 。
両辺に、(z−z0)mを掛けると、(z−z0)mω(z0)=Σ(n=-m〜∞)an×(z−z0)n+m 、右辺を具体的に書けば、
右辺=a-m+a-m+1(z−z0)+a-m+2(z−z0)2+・・a-1(z−z0)m-1+a0(z−z0)m+a1(z−z0)m+1+・・
右辺を zで(m−1)回、微分すると、(m-1)!a-1+m!a0(z−z0)+・・となるので、z → z0の極限を取ると、
a-1=1/(m-1)! ×lim(z → z0)dm-1/dzm-1((z-z0)mω(z)) という公式が得られる。
例として、ω(z)=exp(−z)/(sin(z))2 の z0=0の回りの周回積分を求めてご覧」
「z0=0が2位の極だから、公式で、m=2の場合に相当する。a-1=1/(1)! ×lim(z → 0)d/dz(z2ω(z))=-1
従って、周回積分値=−2π#i となる。DERIVEで検算すると近似値しか出ないけど、ま、ぴったりね」

5.留数定理

「今までは、特異点が1つしかない場合を考えてきたが、複数個の特異点がある場合にも留数の考え方は、有効じゃ。
複数の特異点を囲んだ閉曲線に沿った積分は、それぞれの留数の和×2π#iとして求められる。これを留数定理と呼んでいる」
「ハンドブックに具体例が載っているわね。ω(z)=(4-3z)/(z(z-1))、
ここで、特異点は、1位の極が z=0 とz=1の2点である。
積分路がC1の場合は、留数=lim(z→0)zω=−4、
積分路がC2の場合は、留数=lim(z→1)(z−1)ω=1
そして、積分路がC3の場合は、留数=−4+1=−3 となる。
従って、それぞれの小円の周回積分は、
C1について、−4×2π#i
C2について、1×2π#i
C3について、−3×2π#i となる」

「C3について、DERIVEで確かめてみよう。この場合は、円は、原点を中心とした半径1より大きい円とする。
計算すると、ただちに、−6π#i となった。これは、ともちゃんが留数で計算した値と一致するの。(当然ながら、ハンドブックの解答とも一致する。)」

6.定積分の計算(1)

「実関数の定積分への応用を勉強しよう。
一松信 著の「函数論入門」(培風館:昭和32年1月初版)(以下「一松本」という。)では、定積分への応用について、4つの場合に分けて解説している。
具体的には、
(1)複素平面上の閉曲線に沿う積分に変換する。
(2)適当な帰路を作って閉曲線にし、帰路に沿う積分は、別に求める。
(3)適当な帰路を作って閉曲線にし、往復の差から求める。
(4)適当な帰路を作って閉曲線にし、帰路に沿う積分が極限操作でゼロになることを利用する。
の4つである。
(1)の例として、同書の問1に次の問題が掲げてある。a>0、a≠1、として、∫(原点中心の半径1の周回積分)1/((z−a)(1−az))dz を求め、
それを利用して、∫(s=0〜2π)1/(1-2a cos(s)+a2) ds の値を求めよ」
「ω=1/((z−a)(1−az))では、z=a と z=1/a が1位の極である。a>1 の時は、原点中心の半径1の円内部には、z=1/a しか極はないので、
留数=lim(z → 1/a)(z−1/a)ω=1/(a2−1)、従って、周回積分の値=2π#i×1/(a2−1)
a<1 では、同様に、閉曲線内部では、z=a がただ1つの極である。留数=lim(z→a)(z−a)ω=1/(1−a2)、
従って、周回積分値=2π#i×1/(1−a2)、以上をまとめると、積分値=2π#i×1/(|a2−1|) である。
一方、周回積分値の式は、∫(#i/(- 2aCOS(s) + a^2 + 1) ds となるが、これは、問題の積分の値を J としたとき、J×#i である。
そして、J×#i=2π#i×1/(|a2−1|)であるから、J=2π/(|a2-1|)として、求められる」
「よ!、ともちゃん。大正解じゃ」
「でも、あれだよね。∫(s=0〜2π)1/(1-a cos(s)+a2) ds を求めたいときに、代わりに、1/((z−a)(1−az)) という複素函数を使えばいいということが思い浮かばないよね?」
「その点じゃが、例のハンドブック(「科学技術者のための数学ハンドブック」:Tai I. Chow 著:鈴木増雄・香取眞理・羽田野直道・野々村禎彦訳:朝倉書店)では、もう少し、具体的に、被積分関数のタイプで処方を分類してある。そこでは、三角関数の有理関数の積分(s=0〜2π)を求める方法が紹介されている。
有理関数をG(sin(s),cos(s))で表すと、z=exp(#i s)とおいて、sin(s)=(exp(#is)-exp(−#is))/2#i=(z-z-1)/2#i、dz=#i z ds、
cos(s)=(exp(#is)+exp(−#is))/2=(z+z-1)/2、となるので、G=G((z-z-1)/2#i,(z+z-1)/2)=ω(z)とすると、ωは、zの有理関数になる。
∫(s=0〜2π)G(sin(s),cos(s))ds=∫(原点中心の円)ω(z)dz/(#i z) が得られる」
「さっきの問題では、∫1/(1-2a cos(s)+a2)ds なので、被積分関数は、cos(s)=(z+z-1)/2 を使うと、z/((a - z)(az - 1)) となり、
上記の公式より、∫(原点中心の半径1の円)z/((a - z)(az - 1)) /(#i z)dz=#i∫1/((z-a)(az-1))dz、
これでも、a>1の場合は、留数=lim(z→1/a)(z-1/a)ω=#i/(1-a2)、積分値=2π#i×#i/(1-a2)=2π/(a2-1)、
また、a<1の場合は、留数=lim(z→a)(z-a)ω=#i/(a2-1)、積分値=2π#i×#i/(a2-1)=2π/(1-a2)、となり、
先ほどの答えと同じとなるのね」
「ということは、いろいろな問題を作ることができるのじゃな。ハンドブックでは、次のような問題が挙げられている。
∫(s=0〜2π)1/(3-2cos(s)+sin(s))dsを求めよ」
「∫(s=0〜2π)1/(3-2cos(s)+sin(s))ds=∫(2(1 + 2#i)/(5(z - 2 + #i)(z - 2/5 + #i/5)) dz、ここで、
被積分関数の分母のゼロ点は、2−#i、(2−#i)/5、これらは、それぞれ、1位の極である。
しかし、原点を中心とした半径1の内部には、(2−#i)/5の極のみがあるので、
留数=lim(z−(2−#i)/5)(2(1 + 2#i)/(5(z - 2 + #i)(z - 2/5 + #i/5))=−#i/2、従って、求める積分値は、2π#i×(−#i/2)=πとなるわ」
「これも、正解じゃ。ちみみに、DERIVEでも問題の定積分値は、厳密解として、πが求まるの」

7.定積分の計算(2)

「「一松本」の(2) 『適当な帰路を作って閉曲線にし、帰路に沿う積分は、別に求める』の例として、同書に記載の次の問題を考えよう。
∫(x=−∞〜∞)exp(−(x+#i a)2)dx、aは、実数。
まずは、この積分がaに依存しないことを明らかにした上で、∫(−∞〜∞)exp(-x2)cos(2ax)dx=(√π)exp(-a2)を示せ」
「左の図のように、複素平面上の4点、A(-h,0)、B(h,0)、C(h,#ia)、D(-h,#ia)を結ぶ閉曲線、ABCD上での線積分、∫exp(-z2)dzを考える。
なお、h>0の実数とする。被積分関数は、複素平面上の至るところ正則なので、当然、閉曲線内でも正則。
従って、この積分値は、ゼロに等しい。
以下、具体的に個別に4つの積分を計算する。

∫(A→B)=∫(x=-h〜h)exp(-x2)dx、∫(B→C)=∫(y=0〜a#i)exp(−(h+#i y)2)dy、
∫(C→D)=∫(x=h〜-h)exp(−(x+#ia)2)dx=−∫(x=-h〜h)exp(−(x+#ia)2)dx、
∫(D→A)=∫(y=#ia〜0)exp(−(h+#i y)2)dy=−∫(y=0〜#ia)exp(−(h+#i y)2)dy、
すると、0=∫(A→B)+∫(B→C)+∫(C→D)+∫(D→A)であるが、∫(B→C)+∫(D→A)=0なので、
∫(x=-h〜h)exp(-x2)dx=∫(x=-h〜h)exp(−(x+#ia)2)dx 、hは無限大の極限を取ることができるので、前半が証明できた。
後半は、∫(−∞〜∞)exp(-x2)cos(2ax)dx=∫exp(-x2)(exp(#i 2ax)+exp(-#i 2ax))/2 dx
=(1/2)(∫exp(-x2+2#iax)dx+∫exp(-x2-2#iax)dx)、
一方、前半より、∫(x=−∞〜∞)exp(−(x+#i a)2)dx=∫(x=−∞〜∞)exp(−x2)dx、この積分は、別途計算すると√πであることが分かる。
そして、左辺は、∫(x=−∞〜∞)exp(−(x+#i a)2)dx=exp(a2)∫exp(-x2-2#iax)dx と展開でき、
結局、∫exp(-x2-2#iax)dx=exp(-a2)√πとなる。aは、-aと置いても正しいので、∫exp(-x2+2#iax)dx=exp(-a2)√πでもある。
よって、∫(−∞〜∞)exp(-x2)cos(2ax)dx=(1/2)(exp(-a2)√π+exp(-a2)√π)=exp(-a2)√π」
「そのとおりじゃ。∫(−∞〜∞)f(x)dx という定積分は、いろいろな場面で必要になる。
ハンドブックでは、
f(x)が有理関数の分数式で、分母の次数が分子よりも2以上次数が大きく、実根を持たない時、∫f(z)dzで計算できることが証明されている。
なお、積分路は、下図のように取り、r → ∞の極限を取る。
このことは、「一松本」でも証明されているので、応用範囲が広いということであろう。
そうすると、この複素積分は、半円内にある、留数を元に計算できることが留数定理から分かる。
簡単な例として、∫(−∞〜∞)1/(x2+1)dx=πを計算してご覧」
「えーと。分母は、1+x2 で、分子は、1の有理関数なので、ハンドブックの方法が使える。
問題の積分の代わりに、∫(半円)1/(z2+1)dz を計算する。
rが十分大きいときは、1位の極、+#i が半円内の含まれる。もう一つの極、−#iは、範囲外である。
従って、−#iの留数=lim(z→#i)(z−#i)×1/(z2+1)=−#i/2、
よって、定積分の値は、−#i/2×2π#i=πとなる」
「OKじゃのう。
では、今回の1節で例示した、∫(0〜∞)1/(x4+1)dxを計算してみよう。
1/(x4+1)は、偶関数なので、(−∞〜∞)での積分値を計算した後に2で割ればよいことに注意する。
そうすると、ともちゃんがやったのと同じ考え方で、上半円内にある特異点は、z = - √2/2 + √2#i/2、z = √2/2 + √2#i/2 の2点である。
それぞれの点での留数は、(√2/8 - √2 #i/8)、(- √2/8 - √2 #i/8) であるので、2π#i×(√2/8 - √2 #i/8+- √2/8 - √2 #i/8)=(π√2)/2、
求める定積分値は、この半分なので、∫(0〜∞)1/(x4+1)dx=π/(2√2) となる。
なお、DERIVEで計算しても、同一値が得られる」

8.定積分の計算(3)

「『一松本』の3つ目、『適当な帰路を作って閉曲線にし、往復の差から求める』の例として、掲げているのが、
∫(-∞〜∞)1/(exp(x)+exp(-x))dx じゃ。もっとも、同書の脚注にあるように、不定積分、ATAN(exp(x))が容易に求まり、定積分値は、π/2じゃ。
ここでは、複素関数、z/(exp(z)+exp(- z))を考える。分母のゼロ点は、z = π#i/2 +n π#i、n=0、±1、2、・・である。
左図のような積分路に沿って、∫z/(exp(z)+exp(- z))dzを計算する。
長方形の閉曲線内の特異点は、π#i/2、3π#i/2、の2つの1位の極である。
留数は、π/4、−3π/4 であるので、積分値は、2π#i×(π/4−3π/4)=−π2#i
一方、∫A→B=∫(-h〜h)(x/(exp(x)+exp(-x)))dx
∫B→C=∫(0〜2π#i)((h+#iy)/(exp(h+#iy)+exp(h-#iy)))dy
∫C→D=∫(h〜-h)((x+2π#i)/(exp(x+2π#i)+exp(-x-2π#i)))dx=∫(-h〜h)((-x-2π#i)/(exp(x+2π#i)+exp(-x-2π#i)))dx
∫D→A=∫(2π#i〜0)((-h+#iy)/(exp(-h+#iy)+exp(-h-#iy)))dy=∫(0〜2π#i)((h-#iy)/(exp(-h+#iy)+exp(-h-#iy)))dy
ここで、∫B→C、∫D→Aは、h→∞で、ゼロになる。
また、∫C→Dの分母の exp(x+2π#i)=exp(x)、exp(-x-2π#i)=exp(-x)、なので、
∫C→D=∫(-h〜h)((-x)/(exp(x)+exp(-x)))dx−(2π#i)∫(-h〜h)(1/(exp(x)+exp(-x)))dx
よって、−π2#i=∫(-h〜h)(x/(exp(x)+exp(-x)))dx−∫(-h〜h)(x/(exp(x)+exp(-x)))dx−(2π#i)∫(-h〜h)(1/(exp(x)+exp(-x)))dx
ゆえに、∫(-h〜h)(1/(exp(x)+exp(-x)))dx=−π2#i/(−(2π#i))=π/2 となる」

9.定積分の計算(4)

「定積分の計算への応用として、最後の問題は、∫(-∞〜∞)f(x)×exp(#i m x)dx というフーリエ積分タイプの定積分じゃ。
ここで、『一松本』では、f(x)が分数式の形で、実根はなく、また、分母の次数が分子のそれよりも1次以上高次としたとき、
∫(-∞〜∞)f(x)×(cos(x)+#i sin(x))dx=2π#i×(∫f(z)exp(#i m z)dzの留数)となる。
積分経路は、左図のように取る。
証明は、前述の本などを参照して欲しい。
まず、∫(-∞〜∞)(cos(m x)/(x2+k2))dx、m=1、2、・・、k>0の実数とする」
「上の処方箋に従うと、求めたい定積分の代わりに、∫exp(#imz)/(z2+k2)dzを考える。
上半円内の極は、z=k #i のみである。留数は、(- #i exp(- km)/(2k)) なので、
∫(-∞〜∞)(exp(#i m x)/(x2+k2))dx=−2π#i×(- #i exp(- km)/(2k))
=πexp(- km)/k 、となるので、∫(-∞〜∞)(cos(m x)/(x2+k2))dx=πexp(- km)/k、∫(-∞〜∞)(sin(m x)/(x2+k2))dx=0 である」
「そのとおり。
これ以外に、実軸上に極のある場合などが、残ってしまったが、だいぶ、長くなってきたので、今回は、ここまでとしよう。
いや、ともちゃんもお疲れさんじゃった」

最終更新日 2008/10/30