{ "cells": [ { "cell_type": "markdown", "id": "57e930b3", "metadata": {}, "source": [ "# 球面上の曲率2形式\n", "\n", "リーマンテンソルは、クリストッフェル記号から直接計算することも、\n", "接続1形式の曲率として組み立てることもできます。カルタンの第2構造方程式は\n", "\n", "$$\\Omega^i{}_j=d\\omega^i{}_j+\\omega^i{}_k\\wedge\\omega^k{}_j,$$\n", "\n", "であり、$\\Omega^i{}_j=\\tfrac12R^i{}_{jkl}\\,dx^k\\wedge dx^l$ です。\n" ] }, { "cell_type": "markdown", "id": "4bd52b1e", "metadata": {}, "source": [ "## $S^2$ 上の丸い計量\n", "\n", "半径 $r$、座標 $(\\theta,\\phi)$ の球面に対して、計量は\n", "\n", "$$g_{ij}=\\operatorname{diag}(r^2,r^2\\sin^2\\theta).$$\n" ] }, { "cell_type": "code", "execution_count": 1, "id": "88960f0b", "metadata": {}, "outputs": [], "source": [ "declare symbol r, θ, φ : MathValue\n", "\n", "def x : Vector MathValue := [| θ, φ |]\n", "def g_i_j : Matrix MathValue :=\n", " [| [| r ^ 2, 0 |], [| 0, r ^ 2 * (sin θ) ^ 2 |] |]_i_j\n", "def g~i~j : Matrix MathValue :=\n", " [| [| 1 / r ^ 2, 0 |]\n", " , [| 0, 1 / (r ^ 2 * (sin θ) ^ 2) |] |]~i~j\n" ] }, { "cell_type": "code", "execution_count": 2, "id": "6844e309", "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": "03fa8f6f", "metadata": {}, "source": [ "## リーマンテンソルの直接計算\n", "\n", "レヴィ・チヴィタ接続は、計量適合性と捩率がゼロであることから得られます。\n", "Egisonでは、重複する記号添字によって $m$ に関する縮約を実行します。\n" ] }, { "cell_type": "code", "execution_count": 3, "id": "615f7c34", "metadata": {}, "outputs": [], "source": [ "def Γ_j_l_k : Tensor MathValue :=\n", " (1 / 2) *\n", " (∂/∂ g_j_l x~k + ∂/∂ g_j_k x~l - ∂/∂ g_k_l x~j)\n", "\n", "def Γ~i_k_l : Tensor MathValue :=\n", " withSymbols [j] g~i~j . Γ_j_l_k\n", "\n", "def R~i_j_k_l : Tensor MathValue := withSymbols [m]\n", " ∂/∂ Γ~i_j_l x~k - ∂/∂ Γ~i_j_k x~l\n", " + Γ~m_j_l . Γ~i_m_k - Γ~m_j_k . Γ~i_m_l\n" ] }, { "cell_type": "code", "execution_count": 4, "id": "7e5120b3", "metadata": {}, "outputs": [ { "data": { "text/html": [ "$\\begin{pmatrix} 0 & \\sin(θ)^{2} \\\\ -1 & 0 \\\\ \\end{pmatrix}_{\\;\\#}^{\\#\\;}$" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "R~#_#_1_2\n" ] }, { "cell_type": "markdown", "id": "eb3fafe1", "metadata": {}, "source": [ "## カルタンの曲率形式\n", "\n", "クリストッフェル記号の最後の添字を1形式の添字とみなします。外微分により\n", "形式添字が1つ加わり、`antisymmetrize` によって結果を2形式へ射影します。\n" ] }, { "cell_type": "code", "execution_count": 5, "id": "74ecd7e6", "metadata": {}, "outputs": [], "source": [ "def d (t : Tensor MathValue) : Tensor MathValue :=\n", " !(flip ∂/∂) x t\n", "\n", "def ω~i_j : Matrix MathValue := Γ~i_j_#\n", "\n", "def Ω~i_j : Tensor MathValue := withSymbols [k]\n", " antisymmetrize (d ω~i_j + ω~i_k ∧ ω~k_j)\n" ] }, { "cell_type": "code", "execution_count": 6, "id": "5756ae5b", "metadata": {}, "outputs": [ { "data": { "text/html": [ "$\\begin{pmatrix} 0 & \\frac{1}{2} \\sin(θ)^{2} \\\\ \\frac{-1}{2} & 0 \\\\ \\end{pmatrix}_{\\;\\#}^{\\#\\;}$" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "Ω~#_#_1_2\n" ] }, { "cell_type": "markdown", "id": "27e4ae5e", "metadata": {}, "source": [ "曲率形式の成分は、対応するリーマンテンソルの直接計算による成分の半分です。\n", "これは\n", "$\\Omega^i{}_j=\\tfrac12R^i{}_{jkl}dx^k\\wedge dx^l$ が要求する通りです。\n", "したがって2つの計算経路は一致しますが、それぞれ異なる幾何学的な見方を\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 }