Toggle navigation
Egison
ドキュメント
デモ
オンライン・デモ
ポーカーの役判定
麻雀の上がり判定
双子素数の列挙
ツリー
グラフ
3-SATを解く乱択アルゴリズム
時系列データ解析
オンライン・ツール
オンライン Egison
オンライン・チュートリアル
数式処理
ブログ
コミュニティ
極座標のホッジラプラシアン
2017年11月20日
以下の数式が正しいことをホッジラプラシアンを展開することにより確かめます。
`Delta = d delta + delta d`
`u_(x x) + u_(y y) = u_(r r) + (1 / r) u_r + (1 / r^2) u_(theta theta)`
declare symbol r, θ: MathExpr -- Parameters and metrics def N : Integer := 2 def x : Vector MathExpr := [|r, θ|] def g_i_j : Matrix MathExpr := [| [| 1, 0 |], [| 0, r^2 |] |]_i_j def g~i~j : Matrix MathExpr := [| [| 1, 0 |], [| 0, 1 / r^2 |] |]~i~j -- Hodge Laplacian def d (A: Tensor MathExpr) : Tensor MathExpr := !(flip ∂/∂) x A def hodge (A: Tensor MathExpr) : Tensor MathExpr := let k := dfOrder A in withSymbols [i, j] (sqrt (M.det g_#_#)) * (foldl (.) ((ε' N k)_(i_1)..._(i_N) . A..._(j_1)..._(j_k)) (map 1#g~(i_$1)~(j_$1) [1..k])) def δ (A: Tensor MathExpr) : Tensor MathExpr := let k := dfOrder A in -1^(N * (k + 1) + 1) * (hodge (d (hodge A))) def Δ (A: Tensor MathExpr) : Tensor MathExpr := match (dfOrder A) as integer with | #0 -> δ (d A) | #N -> d (δ A) | _ -> d (δ A) + δ (d A) def f : MathExpr := function (r, θ) assertEqual "Laplacian" (Δ f) ((-1 / r^2) * ((∂/∂ (∂/∂ f θ) θ) + r * (∂/∂ f r) + (r^2 * (∂/∂ (∂/∂ f r) r))))
リンク
Egison 数学ノート目次に戻る
This website in other langauge:
English
,
日本語