紙工作で立体射影をつくった話
はじめに
こんにちは堀川です!これは日曜数学アドベントカレンダー2022の17日目の記事です!
数日前、立体射影を作ってツイッタァで少しバズりました。
ちょっと制作物が気に入らなかったので作り直しました。
今日のアドベントカレンダーの記事では、この曲面模型と立体射影について話します!
立体射影って…何?
立体射影とは、(北極を除いて)球面と平面の各点を全単射で対応させるものです!球面と言っても2次元である必要はなく、一般の$${n}$$次元でOKです。最も単純な1次元球面(=円周)の場合は下図のようになります。
図を見て分かるように、円周上の1点と直線(1次元の平面に相当)上の1点が対応しているのが分かると思います。
2次元なら以下の図のようになります。
3次元では図が描けないですね。上記のような図を書くには4次元Euclid空間$${\mathbb{R}^4}$$に埋め込まれた3次元球面$${S^3}$$が必要になっていまうためです。しかし、立体射影を通じて3次元球面$${S^3}$$上の点を3次元Euclid空間$${\mathbb{R}^3}$$に写して可視化することはできます。これが嬉しい!(応用例は後述のMRPや多胞体の可視化です。)
一般の$${n}$$次元でも絵を描くことは難しいですが、もちろん数式を書くことはできます。球面上の点$${(x_1,\dots,x_{n+1})}$$から平面上への点$${(X_1,\dots,X_n)}$$への対応は以下の式で表されます。
$$
\begin{aligned}
X_1 &= \frac{x_1}{1-x_{n+1}} \\
&\vdots \\
X_n &= \frac{x_n}{1-x_{n+1}}
\end{aligned}
$$
平面上の点$${(X_1,\dots,X_n)}$$から球面上への点$${(x_1,\dots,x_{n+1})}$$への対応は以下の式で表されます。
$$
\begin{aligned}
x_1 &= \frac{2X_1}{{X_1}^2+\cdots+{X_n}^2+1} \\
&\vdots \\
x_n &= \frac{2X_n}{{X_1}^2+\cdots+{X_n}^2+1} \\
x_{n+1} &= \frac{{X_1}^2+\cdots+{X_n}^2-1}{{X_1}^2+\cdots+{X_n}^2+1}
\end{aligned}
$$
立体射影と私
さて、思い出話のコーナーです。私の日曜数学人生の隣にはいつも立体射影がありました。
第一回日曜数学会
立体射影を通じて実数や複素数の逆数が作図できます!(スライドp37がおすすめ)
第四回日曜数学会
立体射影を通じて、直方体の各頂点が反数・逆数・共役で対応付けられます。(スライドp41がおすすめ)
HackDay2016
リーマン球面上のメビウス変換を可視化する装置を作りました。球面ディスプレイの入力はHDMIで、立体射影に見立てて球面ディスプレイに射影していました。
Rotations.jlのメンテナンス
私はJulia周辺のOSS活動もしていまして、回転行列を扱うRotations.jlパッケージは2021年4月頃からメンテナンスしています。
単位四元数($${\simeq S^3}$$)で3次元回転を表すことができますが、$${SO(3)}$$は実3次元多様体なので四元数で表すと1次元分冗長です。これを立体射影で解決したものがMRP型(Modified Rodrigues parameter)です。
詳細はRotaitons.jlのドキュメントもご覧ください。
多胞体展開図
多胞体とは多面体を4次元に拡張したものです。多面体が3次元空間で多角形を組み合わせてできるように、多胞体は4次元空間で多面体を組み合わせてできます。さらに多胞体の組み立ての過程で各頂点が3次元球面上に配置できるので、立体射影を使って3次元Euclid空間に写すことができます。
立体射影を視覚的に使った動画として、Jos LeysさんのDimensionsも挙げておきます。私はこの動画で立体射影を知り、POV-Rayにも入門しました。とにかく凄い数学動画で、未見の方は是非にどうぞ!
紙を編む話
紙を編んで球面を作る
そんな立体射影を作りたくなりますよね!ちょうど最近、私の初めての論文がarXivに公開されたところでして、この理論を使えば紙を編んで曲面を作ることが出来ます。
それで完成した球面とその立体射影がこちらになります!
北極から光が伸び、格子点に沿って空けた球面上の穴から再び格子点に光が伸びる———我ながら面白いものを作りましたね。
制作過程では以下の写真のように、やはり紙を編んで作っています。
紙を編む理論
この理論で最も非自明なところは、最初の紙の切り出し形状の決定方法です。詳しく知りたい方は、以下の箇条書きからどうぞ!(全部読んでね♡)
理論の詳細について知りたい→arXivに公開した論文を読んで下さい!
理論をざっくり知りたい→Twitterに投稿した連ツイを読んで下さい!
実装を知りたい→GitHubに実装を公開しているのでどうぞ!
実行方法を知りたい→zennに記事を書いたのでどうぞ!
この理論を使って作った曲面は他にもあって、特にお気に入りなのが「懸垂面-常螺旋面の変形模型」です。
今後の予定
立体射影するときに球面を回転させると…$${SU(2)}$$によるメビウス変換の可視化になります!
球面の上部に穴が空いている都合で$${1/z}$$の変換(180°裏返す操作)までは動かせないですが、球面の回転に伴って等角写像が現れる様子は愉快です。
この球面の回転をストップモーションで撮影して動画にすることを構想しています。ご期待下さい!
プレゼント企画!
Twitter・Mastodonでプレゼント企画をします!「本記事を告知したTweetをRTしてくれたフォロワー」と「本記事を告知したTootをBoostしてくれたフォロワー」からそれぞれ抽選で5名ずつに球面制作キット(レーザー加工機で画用紙を切り出したもの)をプレゼントします!
締め切りは2022年12月31日の23時59分(日本時間)です!
ご応募お待ちしております!
注意事項
色は変更になる可能性がありますのでご了承ください。
日本国内のみの発送になります。
この記事が気に入ったらサポートをしてみませんか?