
Végezzük el a számításokat python program segítségével;
import datetime
import numpy as np
G = 6.674e-11
AU = 1.5e11
def newton_method(p_0, tol, N, f, df):
index = 1
while index <= N:
p = p_0 - (f(p_0) / df(p_0))
if np.abs(p - p_0) < tol:
return p
index += 1
p_0 = p
print("Nem sikerült meghatározni a kért értéket...")
return False
def calc_mean_anomaly(m_sun, m_obj, a, tau, t_current):
mu = G * (m_sun + m_obj)
M = np.sqrt(mu / a**3) * ((t_current - tau).total_seconds())
return M
def calc_eccentric_anomaly(M, e):
def f(E, M=M, e=e):
return M - E + e * np.sin(E)
def df(E, e=e):
return -1 + e * np.cos(E)
p_0 = M
N = 10
tol = 1e-5
E = newton_method(p_0, tol, N, f, df)
return E
def calc_true_anomaly(e, E):
v = 2 * np.arctan(np.sqrt((1 + e) / (1 - e)) * np.tan(E / 2))
return v
def calc_position(a, e, v):
r = (a * (1 - e**2)) / (1 + e * np.cos(v))
x = r * np.cos(v)
y = r * np.sin(v)
return np.array([x, y, 0.0])
print("Égi mechanikai szimuláció - számolási mód (GUI nélkül)")
print("=" * 60)
t_current = datetime.datetime.now() + datetime.timedelta(days=1)
tau = datetime.datetime.now()
m_nap = 1.9891e30
bolygok = {
"MERCURY": {"m": 0.3302e24, "d": 4.879e6, "a": 57.9e9, "e": 0.205, "i": 7.0, "omega": 29.124},
"VENUS": {"m": 4.8685e24, "d": 12.104e6, "a": 108.2e9, "e": 0.007, "i": 3.4, "omega": 54.884},
"EARTH": {"m": 5.9736e24, "d": 12.756e6, "a": 149.6e9, "e": 0.017, "i": 0.0, "omega": 114.20783},
"MARS": {"m": 0.64171e24, "d": 6.792e6, "a": 227.9e9, "e": 0.094, "i": 1.9, "omega": 286.502},
"JUPITER": {"m": 1898e24, "d": 142.984e6, "a": 778.6e9, "e": 0.049, "i": 1.3, "omega": 273.867},
"SATURN": {"m": 568e24, "d": 120.536e6, "a": 1433.5e9, "e": 0.057, "i": 2.5, "omega": 339.392},
"URANUS": {"m": 86.8e24, "d": 51.118e6, "a": 2872.5e9, "e": 0.046, "i": 0.8, "omega": 96.998857},
"NEPTUNE": {"m": 102e24, "d": 49.528e6, "a": 4495.1e9, "e": 0.011, "i": 1.8, "omega": 276.336},
"PLUTO": {"m": 0.0146e24, "d": 2.370e6, "a": 5906.4e9, "e": 0.244, "i": 17.2, "omega": 113.834},
}
print(f"\nIdőbélyeg: {t_current}")
print(f"AU = {AU:.2e} méter")
print(f"G = {G:.3e} m³/kg·s²")
print("=" * 60)
print("\nNAP:")
print(f" Tömeg: {m_nap:.3e} kilogramm")
print(f" Átmérő: {1.39268e9:.3e} méter")
print(f" Pozíció: (0, 0, 0)")
for nev, b in bolygok.items():
if nev == "MERCURY":
magyar_nev = "Merkúr"
elif nev == "VENUS":
magyar_nev = "Vénusz"
elif nev == "EARTH":
magyar_nev = "Föld"
elif nev == "MARS":
magyar_nev = "Mars"
elif nev == "JUPITER":
magyar_nev = "Jupiter"
elif nev == "SATURN":
magyar_nev = "Szaturnusz"
elif nev == "URANUS":
magyar_nev = "Uránusz"
elif nev == "NEPTUNE":
magyar_nev = "Neptunusz"
elif nev == "PLUTO":
magyar_nev = "Plútó"
else:
magyar_nev = nev
print(f"\n{magyar_nev}:")
print(f" Tömeg: {b['m']:.3e} kilogramm")
print(f" Átmérő: {b['d']:.3e} méter")
print(f" Félnagy tengely: {b['a']:.3e} méter")
print(f" Excentricitás: {b['e']:.4f}")
print(f" Inklináció: {b['i']:.2f} fok")
print(f" Pericentrum argumentuma: {b['omega']:.3f} fok")
kozep_anomalia = calc_mean_anomaly(m_nap, b['m'], b['a'], tau, t_current)
print(f" Középanomália (M): {kozep_anomalia:.6f} radián")
excentrikus_anomalia = calc_eccentric_anomaly(kozep_anomalia, b['e'])
print(f" Excentrikus anomália (E): {excentrikus_anomalia:.6f} radián")
true_anomalia = calc_true_anomaly(b['e'], excentrikus_anomalia)
print(f" Valódi anomália (v): {true_anomalia:.6f} radián")
pozicio = calc_position(b['a'], b['e'], true_anomalia)
pozicio_au = pozicio / AU
print(f" Pozíció vektor (AU): {pozicio_au}")
print(f" Távolság a Naptól: {np.linalg.norm(pozicio_au):.6f} AU")
print("\n" + "=" * 60)
print("Számítás befejeződött.")
-----------------
Eredmény;
Égi mechanikai szimuláció - számolási mód (GUI nélkül)
============================================================
Időbélyeg: 2026-06-01 05:08:22.974445
AU = 1.50e+11 méter
G = 6.674e-11 m3/kg·s2
============================================================
NAP:
Tömeg: 1.989e+30 kilogramm
Átmérő: 1.393e+09 méter
Pozíció: (0, 0, 0)
Merkúr:
Tömeg: 3.302e+23 kilogramm
Átmérő: 4.879e+06 méter
Félnagy tengely: 5.790e+10 méter
Excentricitás: 0.2050
Inklináció: 7.00 fok
Pericentrum argumentuma: 29.124 fok
Középanomália (M): 0.071452 radián
Excentrikus anomália (E): 0.089846 radián
Valódi anomália (v): 0.110576 radián
Pozíció vektor (AU): [0.30531309 0.03389843 0. ]
Távolság a Naptól: 0.307189 AU
Vénusz:
Tömeg: 4.868e+24 kilogramm
Átmérő: 1.210e+07 méter
Félnagy tengely: 1.082e+11 méter
Excentricitás: 0.0070
Inklináció: 3.40 fok
Pericentrum argumentuma: 54.884 fok
Középanomália (M): 0.027970 radián
Excentrikus anomália (E): 0.028167 radián
Valódi anomália (v): 0.028365 radián
Pozíció vektor (AU): [0.71599787 0.02031482 0. ]
Távolság a Naptól: 0.716286 AU
Föld:
Tömeg: 5.974e+24 kilogramm
Átmérő: 1.276e+07 méter
Félnagy tengely: 1.496e+11 méter
Excentricitás: 0.0170
Inklináció: 0.00 fok
Pericentrum argumentuma: 114.208 fok
Középanomália (M): 0.017204 radián
Excentrikus anomália (E): 0.017502 radián
Valódi anomália (v): 0.017802 radián
Pozíció vektor (AU): [0.98022592 0.01745179 0. ]
Távolság a Naptól: 0.980381 AU
Mars:
Tömeg: 6.417e+23 kilogramm
Átmérő: 6.792e+06 méter
Félnagy tengely: 2.279e+11 méter
Excentricitás: 0.0940
Inklináció: 1.90 fok
Pericentrum argumentuma: 286.502 fok
Középanomália (M): 0.009150 radián
Excentrikus anomália (E): 0.010099 radián
Valódi anomália (v): 0.011098 radián
Pozíció vektor (AU): [1.37643852 0.01527595 0. ]
Távolság a Naptól: 1.376523 AU
Jupiter:
Tömeg: 1.898e+27 kilogramm
Átmérő: 1.430e+08 méter
Félnagy tengely: 7.786e+11 méter
Excentricitás: 0.0490
Inklináció: 1.30 fok
Pericentrum argumentuma: 273.867 fok
Középanomália (M): 0.001450 radián
Excentrikus anomália (E): 0.001524 radián
Valódi anomália (v): 0.001601 radián
Pozíció vektor (AU): [4.93631797 0.00790298 0. ]
Távolság a Naptól: 4.936324 AU
Szaturnusz:
Tömeg: 5.680e+26 kilogramm
Átmérő: 1.205e+08 méter
Félnagy tengely: 1.434e+12 méter
Excentricitás: 0.0570
Inklináció: 2.50 fok
Pericentrum argumentuma: 339.392 fok
Középanomália (M): 0.000580 radián
Excentrikus anomália (E): 0.000615 radián
Valódi anomália (v): 0.000651 radián
Pozíció vektor (AU): [9.01193486e+00 5.86933180e-03 0.00000000e+00]
Távolság a Naptól: 9.011937 AU
Uránusz:
Tömeg: 8.680e+25 kilogramm
Átmérő: 5.112e+07 méter
Félnagy tengely: 2.872e+12 méter
Excentricitás: 0.0460
Inklináció: 0.80 fok
Pericentrum argumentuma: 96.999 fok
Középanomália (M): 0.000204 radián
Excentrikus anomália (E): 0.000214 radián
Valódi anomália (v): 0.000224 radián
Pozíció vektor (AU): [1.82690996e+01 4.10029404e-03 0.00000000e+00]
Távolság a Naptól: 18.269100 AU
Neptunusz:
Tömeg: 1.020e+26 kilogramm
Átmérő: 4.953e+07 méter
Félnagy tengely: 4.495e+12 méter
Excentricitás: 0.0110
Inklináció: 1.80 fok
Pericentrum argumentuma: 276.336 fok
Pericentrum argumentuma: 113.834 fok
Középanomália (M): 0.000069 radián
Excentrikus anomália (E): 0.000092 radián
Valódi anomália (v): 0.000118 radián
Pozíció vektor (AU): [2.97682558e+01 3.50293242e-03 0.00000000e+00]
Távolság a Naptól: 29.768256 AU
============================================================
Számítás befejeződött.

** Process exited - Return Code: 0 ** Python3 Tkinter grafikus módban működik! A Python programok Tkinter alapú grafikus felülettel (GUI) történő futtatásához és fejlesztéséhez jelenleg a legjobb és legmodernebb AI asszisztensek a következők:Claude (Anthropic): Kiemelkedően jól érti a Python logikát, és nagyon tiszta, jól strukturált Tkinter kódot generál, amit könnyű közvetlenül futtatni.ChatGPT (OpenAI): A Code Interpreter (Advanced Data Analysis) funkciójával akár közvetlenül is tesztelheti és futtathatja a megírt szkripteket, így azonnali visszajelzést ad a hibákról.Gemini (Google): Kiválóan alkalmas komplett Tkinter alkalmazások megtervezésére és hibakeresésére. https://play.pyroom.app/playground
Nincsenek megjegyzések:
Megjegyzés küldése