Albert Einstein gravitációs elméletének (az általános relativitáselméletnek) az alapegyenlete az Einstein-egyenlet:
A program kiszámítja az Einstein-féle gravitációs állandót, ellenőrizzük hogy helyes volt-e a számítása;
Kappa = (8 * pi * G) / (c**4)
Adott energia impulzus értékek mellett, a gravitációs téregyenlettel írja le a téridő görbültségét.
-----------------------
import scipy.constants as const
import numpy as np
def einstein_gravitacios_allando():
"""
Kiszámítja az Einstein-féle gravitációs állandót (kappa = 8 * pi * G / c^4)
"""
G = const.G # Newton-féle gravitációs állandó (m^3 kg^-1 s^-2)
c = const.c # Fénysebesség (m/s)
pi = const.pi
# Einstein konstans kiszámítása
kappa = (8 * pi * G) / (c**4)
return kappa
def kiszamit_gorbulet(T_mu_nu):
"""
Kiszámítja az Einstein-tenzort (téridő görbületét) egy adott energia-impulzus tenzorból.
"""
kappa = einstein_gravitacios_allando()
# G_mu_nu = kappa * T_mu_nu
G_mu_nu = kappa * np.array(T_mu_nu)
return G_mu_nu, kappa
# --- Futtatható példa ---
if __name__ == "__main__":
# Példa: Egy egyszerűsített (4x4-es) energia-impulzus tenzor
# SI egységekben (J/m^3 vagy Pa)
pelda_energia_tenzor = [
[1.0e17, 0, 0, 0],
[0, 1.0e5, 0, 0],
[0, 0, 1.0e5, 0],
[0, 0, 0, 1.0e5]
]
gorbulet_tenzor, konstans = kiszamit_gorbulet(pelda_energia_tenzor)
# Javított mértékegység: N^-1 (vagy s^2 / (kg * m))
print(f"Einstein-féle gravitációs együttható (kappa): {konstans:.4e} N^-1\n")
print("Az Einstein-tenzor (görbület, m^-2) értékei az adott tömeg/energia mellett:")
print(gorbulet_tenzor)
--------------
Eredmény;
Az Einstein-tenzor (görbület, m^-2) értékei az adott tömeg/energia mellett:
[[2.07664744e-26 0.00000000e+00 0.00000000e+00 0.00000000e+00]
[0.00000000e+00 2.07664744e-38 0.00000000e+00 0.00000000e+00]
[0.00000000e+00 0.00000000e+00 2.07664744e-38 0.00000000e+00]
[0.00000000e+00 0.00000000e+00 0.00000000e+00 2.07664744e-38]]
Tehát számítása helyes!
Nincsenek megjegyzések:
Megjegyzés küldése