{ "cells": [ { "cell_type": "markdown", "id": "19ade685", "metadata": {}, "source": [ "# 2次元球面のオイラー形式\n", "\n", "向き付けられた階数2の接束のオイラー類は、曲率2形式によって表されます。\n", "丸い球面に対しては\n", "\n", "$$\\int_{S^2} e(TS^2)=\\chi(S^2)=2.$$\n", "\n", "となります。埋め込みから計量を計算し、接続を正規直交枠へ変換してから、\n", "カルタンの曲率方程式を適用します。\n" ] }, { "cell_type": "markdown", "id": "cb1398a8", "metadata": {}, "source": [ "## 埋め込みと誘導計量\n", "\n", "半径 $r$ の球面を $(\\theta,\\phi)$ でパラメーター表示します。計量を\n", "入力として与えるのではなく、座標接ベクトル同士の内積から導きます。\n" ] }, { "cell_type": "code", "execution_count": 1, "id": "61d9b620", "metadata": {}, "outputs": [], "source": [ "declare symbol r, θ, φ : MathValue\n", "\n", "def x : Vector MathValue := [| θ, φ |]\n", "def X : Vector MathValue :=\n", " [| r * sin θ * cos φ\n", " , r * sin θ * sin φ\n", " , r * cos θ |]\n", "\n", "def e_i_j : Matrix MathValue := ∂/∂ X_j x~i\n", "def g_i_j : Matrix MathValue :=\n", " generateTensor (\\[a, b] -> V.* e_a_# e_b_#) [2, 2]\n", "def g~i~j : Matrix MathValue := M.inverse g_#_#\n" ] }, { "cell_type": "code", "execution_count": 2, "id": "cf446863", "metadata": {}, "outputs": [ { "data": { "text/html": [ "$\\begin{pmatrix} r^{2} & 0 \\\\ 0 & \\sin(θ)^{2} r^{2} \\\\ \\end{pmatrix}_{\\#\\#}^{\\;\\;}$" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "g_#_#\n" ] }, { "cell_type": "markdown", "id": "47571e36", "metadata": {}, "source": [ "## レヴィ・チヴィタ接続と正規直交枠\n", "\n", "対角な多脚場(vielbein)は、座標基底を $r$ と $r\\sin\\theta$ で\n", "スケール変換します。\n", "枠の変換 $A$ のもとで、接続は\n", "\n", "$$\\omega=A^{-1}\\omega_0A+A^{-1}dA.$$\n" ] }, { "cell_type": "code", "execution_count": 3, "id": "f85393f5", "metadata": {}, "outputs": [], "source": [ "def Γ_i_j_k : Tensor MathValue :=\n", " (1 / 2) *\n", " (∂/∂ g_i_k x~j + ∂/∂ g_i_j x~k - ∂/∂ g_j_k x~i)\n", "\n", "def Γ~i_j_k : Tensor MathValue := withSymbols [m]\n", " g~i~m . Γ_m_j_k\n", "\n", "def A : Matrix MathValue :=\n", " [| [| 1 / r, 0 |], [| 0, 1 / (r * sin θ) |] |]\n", "\n", "def d (t : Tensor MathValue) : Tensor MathValue :=\n", " !(flip ∂/∂) x t\n", "\n", "def ω0~i_j : Matrix MathValue := Γ~i_j_#\n", "def ω~i_j : Tensor MathValue := withSymbols [a, b]\n", " (M.inverse A)~i_a . ω0~a_b . A~b_j\n", " + (M.inverse A)~i_a . d A~a_j\n" ] }, { "cell_type": "markdown", "id": "9dcaffe7", "metadata": {}, "source": [ "## 曲率とオイラー形式\n", "\n", "カルタンの第2方程式から $\\Omega$ が得られます。2次元では、\n", "パフィアン(Pfaffian)は2つの非対角な曲率成分の差に帰着します。\n" ] }, { "cell_type": "code", "execution_count": 4, "id": "5da2150b", "metadata": {}, "outputs": [], "source": [ "def Ω~i_j : Tensor MathValue := withSymbols [k]\n", " antisymmetrize (d ω~i_j + ω~i_k ∧ ω~k_j)\n", "\n", "def eulerForm : Tensor MathValue :=\n", " (1 / (4 * π)) * withSymbols [t1, t2]\n", " (Ω~1_2_t1_t2 - Ω~2_1_t1_t2)\n" ] }, { "cell_type": "code", "execution_count": 5, "id": "33080a0d", "metadata": {}, "outputs": [ { "data": { "text/html": [ "$\\begin{pmatrix} 0 & \\frac{1}{4} \\sin(θ) π^{-1} \\\\ \\frac{-1}{4} \\sin(θ) π^{-1} & 0 \\\\ \\end{pmatrix}$" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "eulerForm\n" ] }, { "cell_type": "markdown", "id": "74af171b", "metadata": {}, "source": [ "上三角側のテンソル成分は\n", "\n", "$$e_{12}=\\frac{\\sin\\theta}{4\\pi}.$$\n", "\n", "です。完全な反対称テンソルは $e_{12}$ と $e_{21}$ の両方を保持するため、\n", "対応する向き付き微分形式の密度は\n", "\n", "$$e(TS^2)=\\frac{\\sin\\theta}{2\\pi}\\,d\\theta\\wedge d\\phi.$$\n", "\n", "となります。したがって\n", "\n", "$$\\int_0^{2\\pi}\\!\\int_0^\\pi\n", " \\frac{\\sin\\theta}{2\\pi}\\,d\\theta\\,d\\phi=2,$$\n", "\n", "となり、球面のオイラー標数が得られます。半径は相殺されるため、オイラー数が\n", "計量の大きさに依存するのではなく、位相的な量であることが分かります。\n" ] } ], "metadata": { "kernelspec": { "display_name": "Egison", "language": "egison", "name": "egison" }, "language_info": { "codemirror_mode": "egison", "file_extension": ".egi", "mimetype": "text/x-egison", "name": "egison" } }, "nbformat": 4, "nbformat_minor": 5 }