Skip to content

Instantly share code, notes, and snippets.

@certik
Created February 8, 2011 07:07
Show Gist options
  • Save certik/816019 to your computer and use it in GitHub Desktop.
Save certik/816019 to your computer and use it in GitHub Desktop.
$ python examples/advanced/relativity.py
Initial metric:
⎡ ν(r) ⎤
⎢-ℯ 0 0 0 ⎥
⎢ ⎥
⎢ λ(r) ⎥
⎢ 0 ℯ 0 0 ⎥
⎢ ⎥
⎢ 2 ⎥
⎢ 0 0 r 0 ⎥
⎢ ⎥
⎢ 2 2 ⎥
⎣ 0 0 0 r ⋅sin (θ)⎦
----------------------------------------
Christoffel symbols:
d
──(ν(r))
dr
Γ⁰₁₀ = ────────
2
d
──(ν(r))
dr
Γ⁰₀₁ = ────────
2
d -λ(r) ν(r)
──(ν(r))⋅ℯ ⋅ℯ
dr
Γ¹₀₀ = ─────────────────────
2
d
──(λ(r))
dr
Γ¹₁₁ = ────────
2
-λ(r)
Γ¹₂₂ = -r⋅ℯ
2 -λ(r)
Γ¹₃₃ = -r⋅sin (θ)⋅ℯ
1
Γ²₂₁ = ─
r
1
Γ²₁₂ = ─
r
Γ²₃₃ = -cos(θ)⋅sin(θ)
cos(θ)
Γ³₂₃ = ──────
sin(θ)
cos(θ)
Γ³₃₂ = ──────
sin(θ)
1
Γ³₁₃ = ─
r
1
Γ³₃₁ = ─
r
----------------------------------------
Ricci tensor:
2 2
d -λ(r) ν(r) d -λ(r) ν(r) d -λ(r) ν(r
─────(ν(r))⋅ℯ ⋅ℯ ──(ν(r)) ⋅ℯ ⋅ℯ ──(ν(r))⋅ℯ ⋅ℯ
dr dr dr dr
R₀₀ = ──────────────────────── + ────────────────────── + ────────────────────
2 4 r
) d d -λ(r) ν(r)
──(λ(r))⋅──(ν(r))⋅ℯ ⋅ℯ
dr dr
─ - ──────────────────────────────
4
2 2
d d d d d
─────(ν(r)) ──(λ(r)) ──(λ(r))⋅──(ν(r)) ──(ν(r))
dr dr dr dr dr dr
R₁₁ = - ─────────── + ──────── + ───────────────── - ─────────
2 r 4 4
d -λ(r) d -λ(r)
r⋅──(λ(r))⋅ℯ r⋅──(ν(r))⋅ℯ
-λ(r) dr dr
R₂₂ = 1 - ℯ + ───────────────── - ─────────────────
2 2
2 d -λ(r) 2 d
r⋅sin (θ)⋅──(λ(r))⋅ℯ r⋅sin (θ)⋅──(ν(r)
2 2 -λ(r) dr dr
R₃₃ = sin (θ) - sin (θ)⋅ℯ + ───────────────────────── - ─────────────────
2 2
-λ(r)
)⋅ℯ
────────
----------------------------------------
Solve Einstein's equations:
Traceback (most recent call last):
File "examples/advanced/relativity.py", line 221, in <module>
main()
File "examples/advanced/relativity.py", line 214, in main
l = dsolve(e, lam(r))
File "/home/ondrej/repos/sympy/sympy/solvers/ode.py", line 401, in dsolve
hints = classify_ode(eq, func, dict=True)
File "/home/ondrej/repos/sympy/sympy/solvers/ode.py", line 746, in classify_ode
r = _nth_linear_match(reduced_eq, func, order)
File "/home/ondrej/repos/sympy/sympy/solvers/ode.py", line 2182, in _nth_linear_match
terms[len(f.args[1:])] += c
KeyError: 2
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment