スキップしてメイン コンテンツに移動

Asymptoteの練習 無理関数の分岐

無理関数 $f(z)=\sqrt{z(z-1)}$ の分岐(branch cut)についての説明図。
以前にAblowitz & FokasのCOMPLEX VARIABLESという本で読んだ時にわかりやすいと思ったので載せておきます。

$z=r_1 e^{i\theta_1}$, $z-1= r_2e^{i\theta_2}$と置けば、$f(z)=\sqrt{r_1 r_2}\exp(\frac{i}{2}(\theta_1+\theta_2))$と表せる。$\Theta =\frac{1}{2}(\theta_1 + \theta_2)$と置けば、$f(z)=\sqrt{r_1 r_2}e^{i\Theta}$であるが、これを$0\leq \theta_i < 2\pi$ ($i=1,2$)の範囲で考えると、下図のように、矢印方向から$z$の実軸に近づくときに$\Theta$の値が図に書き込んだ値に近づく。

 $\mathrm{Re}\, z>1$や$\mathrm{Re}\, z<0$では実軸の上から近づいても下から近づいても$\Theta$の値が$\bmod 2\pi$で変わらないので、$f(z)$の値は連続であるが、$0<\mathrm{Re}\, z<1$においては実軸の上から近づけた$\Theta$の値と下から近づけた値とが$\bmod 2\pi$で一致しないため、$f(z)$はここで不連続となる。

さらに$2\pi \leq \theta_i < 4\pi$ $(i=1,2)$で同様のことを考えてみると、これら2枚のz平面をつなぎ合わせることで$f(z)$が1価正則となるような面(Riemann面)が構成出来る。

さらに、$-\pi \leq \theta_1 <\pi$, $0\leq \theta_2 <2\pi$とすれば、branch cutは$0$から負の実軸上を通り、$\infty$を通って$1$に至るような形になることが示せるという話。多くの本ではここまで細かく書いていないので、頭の悪い私には有りがたかったです。 さらに$z=u^2$なる変数変換を行なって$g(u)=f(u^2)=\sqrt{u^2(u^2 -1)}$とすれば、$u$平面で考えたときに$z=0$や$z=1$に対応する$u=0$や$u=1$における分岐点が解消されており、例えば$g$は$u=0$を除いた$u=0$の近傍で正則なので、$u=0$を中心とするLaurent展開が可能(puiseux展開)。





size(6cm);
defaultpen(fontsize(10pt));

dot((0,0));
dot((1,0));
label("$0$",(0,0),SW);
label("$1$",(1,0),SE);

real b=0.6;
draw((-b,0)--(1.05+b,0),Arrow(SimpleHead,7));
label("$\mathrm{Re} z$",(1.55,0),S);

pen dashed=linetype("4 4");
real r1 =0.2;
draw(arc((0,0),r1,0,360),dotted,ArcArrow(SimpleHead));
draw(arc((1,0),r1,0,360),dotted,ArcArrow(SimpleHead));

real a=0.6;
draw((0,a)--(0,-a),dashed);
draw((1,a)--(1,-a),dashed);
draw((0,0)--(1,0),1.2+black);
draw((0.5,a/2)--(0.5,0.02),0.3+black,Arrow(SimpleHead,5));
label("$\Theta =\frac{1}{2}\pi$",(0.5,a/2),N);
draw((0.5,-a/2)--(0.5,-0.02),0.3+black,Arrow(SimpleHead,5));
label("$\Theta =\frac{3}{2}\pi$",(0.5,-a/2),S);
draw((-0.35,a/2)--(-0.35,0.02),0.3+black,Arrow(SimpleHead,5));
label("$\Theta =\pi$",(-0.35,a/2),N);
draw((-0.35,-a/2)--(-0.35,-0.02),0.3+black,Arrow(SimpleHead,5));
label("$\Theta =\pi$",(-0.35,-a/2),S);
draw((1.35,a/2)--(1.35,0.02),0.3+black,Arrow(SimpleHead,5));
label("$\Theta =0$",(1.35,a/2),N);
draw((1.35,-a/2)--(1.35,-0.02),0.3+black,Arrow(SimpleHead,5));
label("$\Theta \equiv 0$",(1.35,-a/2),S);
label("$(\mathrm{mod}\,\, 2\pi)$",(1.35,-a/2)+(0.1,-a/2.5));

このブログの人気の投稿

定理環境をmdframedからtcolorboxへ乗り換え

追記:2016/05/02 以前に掲載していた定理環境のマクロでは、カウンターが変化しないような記述をしてしまっていたので、全面的に書き換えました。 追記:2016/06/06 tcolorboxのオプションを追加できるように書き直しをしました( tcolorboxを使った定理環境 )。 LaTeXの話です。 これまで定理環境の修飾にmdframed.styを利用してきました。 mdframedを用いた定理環境の修飾(platex+dvipdfmx, tikz) しかし上の投稿で用いた記述をしていると、定理環境がページの下部にきたとき、まれに以下のように環境が新しいページに送られてしまい変なところで改ページが起こります。 TeX-LaTeX Stack Exchangeでも同様の不具合が報告されていて、mdframed.styの作者が回答して解決しているようなのですが、私の場合は上手く行きませんでした。タイトル部分の位置の計算に問題があるようです。 そういう訳で、mdframed.styよりも高い表現力を持つtcolorbox.styには興味を持っていました。今回は、mdframed.styで記述していた部分を、ソースの変更無しにtcolorboxで置き換えてみたので、その紹介をします。 tcolorbox.styで置き換えた結果は次のようになりました。 見た目はほとんど変わっていません。中のboxは別のtcolorbox環境です。 この定理環境のソースコードは次のようになります。 \usepackage{tcolorbox} \usepackage{varwidth} \tcbuselibrary{breakable} \tcbuselibrary{skins} \definecolor{frameinnercolor}{RGB}{49,44,44} \newcounter{theorem} \numberwithin{theorem}{section}% numberwithinはamsmath.styで定義されている \newenvironment{theorem}[2][]{% %#1 = タイトル, #2 = 定理環境名 \refstepcounter{theorem}% \newtcolorbox{...

OpenCv-PythonとpdfLaTeXで自炊pdfファイルの位置調整

この記事は TeX & LaTeX Advent Calendar 2021 の11日目の記事です. 10日目は t_kemmochi さん,12日目は yukishita さんです.   動機  書籍の自炊にブックエッジスキャナーの AvisionのFB2280E を利用しています。書籍を裁断せずに1ページずつスキャンを行うため、本の開き具合などの要因で本の序盤、中盤、終盤で得られるスキャン画像の位置ずれが大きくなります。以前からpdfLaTeXを利用して位置調整をしていたのですが、OpenCvを利用して自動化できそうだったので試してみました。 やること 本記事では、pdf化した文書画像の版面(文字の印刷された部分の意味で使います)を半自動的に計算してpdfの画像の位置調整をするために、OpenCvとpdfLaTeXを利用する方法を解説します。手順としては Pythonの画像認識用ライブラリであるOpenCvを利用して版面を計算する。 テンプレートエンジンライブラリのJinja2を使って画像のバウンディングボックスなどを記述したLaTeXファイルを作成する。 pdfLaTeXでpdfを読み込み、位置の調整されたpdfを作成する。 という流れになっています。作業環境としては、 Visual Studio CodeをRemove - WSL拡張機能と併用 しています。PythonやそのライブラリはWSL上のUbuntuにインストールし、他にもpdfファイルを他のファイル形式にするためにpoppler-utilsなんかもインストールしました。 参考記事 OpenCvを利用した文書画像のレイアウト解析については ブログSomething Like Programming内の記事 Document Layout Analysis githubリポジトリ rbaguila/document-layout-analysis OpenCv-Pythonチュートリアル を参考にしました。 pdfLaTeXがpdf加工に使えるという話と、pdfpagesパッケージの存在は doraTeXさんのブログTeX Alchemist Onlineの記事 pdfTeX による見開きPDFの結合・分割 で知ったように思います。 画像pdfをpdfpagesで取り込む ま...

定理を再掲したときに定理番号も揃える(amsmathのtagと似た挙動の定理環境を作る).

LaTeXの話題です.amsmath.styで定義されているtagコマンドは,数式環境の式番号部分を自由な文字列で置き換えることができるようになっています.下に例を挙げます. この画像を生成するLaTeXのコードは次のようになります. \documentclass[a4paper,dvipdfmx,uplatex]{jsarticle} \usepackage[dvipdfmx,bookmarks=true,bookmarksnumbered=true,% ,colorlinks=true,linkcolor=blue]{hyperref}% \usepackage{showkeys} \usepackage{amsmath} \numberwithin{equation}{section} \begin{document} \section{amsmath.styに含まれるtagコマンドの挙動} \begin{equation} \label{eq:euler} e^{i\theta}=\cos\theta +i\sin\theta \end{equation} \eqref{eq:euler} \section{amsmath.styに含まれるtagコマンドの挙動の検証} \begin{equation} \label{eq:euler2} \tag{\ref{eq:euler}} e^{i\theta}=\cos\theta +i\sin\theta \end{equation} \eqref{eq:euler2} \end{document} 最初のequation環境にeq:eulerというlabelをつけ,第2のequation環境ではtagコマンドを使って数式番号部分に¥ref{eq:euler}と書くことで,実際に表示される式番号が第1のequation環境のものと同じになっています.この第2のequation環境にはeq:euler2というlabelを付けており,これを¥eqref{eq:euler2}と参照すると表示される番号は第1のequation環境のものであるにも関わらず,リンクをクリックすると第2のequation環境にジャンプします. このような現象が起こるのは,上記のファイルをタイプセット...