Een satelliet in een baan om de aarde heeft ongeveer 7,8 km / s als baansnelheid nodig.
Van alle satellieten in een baan om de aarde die ooit zijn gelanceerd en die iemand heeft of had de hoogste snelheid?
Reacties
- 11 km / s is ontsnappingssnelheid. Alles wat zo snel boven de atmosfeer beweegt, zal niet in een gesloten baan zijn. De baansnelheid is een factor $ \ sqrt {2} $ kleiner, ongeveer 7,8 km / s. Ik vermoed dat het antwoord op je vraag net iets minder is dan ontsnappingssnelheid – een maanmissie, of een satelliet die opzettelijk in een zeer elliptische baan is geplaatst, of een satelliet die bedoeld was om de ontsnappingssnelheid te bereiken, maar een boosterfout had.
- FWIW als je ‘ het hebt over snelheid in (gesloten) baan, denk ik dat je ‘ op zoek bent naar een satelliet die de meest elliptische baan heeft met het laagste perigeum, en de hoogste snelheid zal perigeum zijn. Ik ‘ weet helaas niet wat dat is.
Antwoord
Als we alleen naar cirkelvormige lage banen om de aarde kijken:
height speed period km m/s hours:min:sec 200 7789.1 1:28:21 300 7730.5 1:30:22 400 7673.2 1:32:24 500 7617.2 1:34:28 600 7562.3 1:36:32 700 7508.7 1:38:37 800 7456.1 1:40:43 900 7404.7 1:42:50 1000 7354.3 1:44:21
De laagste baan heeft de hoogste snelheid. Maar banen onder de 400 km vervallen erg snel, 300 km binnen 6 maanden, 200 km in ongeveer een dag.
Nu kijken we naar elliptische banen:
min at min max at max height speed height speed period km m/s km m/s hours:min:sec 400 7701.3 500 7589.2 1:33:26 400 7728.9 600 7507.1 1:34:28 400 7755.9 700 7426.9 1:35:30 400 7782.5 800 7348.4 1:36:32 400 7834.3 1000 7196.6 1:38:37 400 9127.0 10000 3774.9 3:26:26 400 10521.9 100000 669.8 37:11:36 400 10677.8 200000 350.3 96:10:06 400 10762.3 400000 179.3 259:31:25
Dus een zeer elliptische baan heeft de hoogste snelheid, maar alleen wanneer deze op minimale hoogte dichtbij de aarde is. Maar de periode wordt veel langer en de gemiddelde snelheid is lager. De laatste lijn is een elliptische baan naar de maan en terug. Dit snelheidsrecord staat op naam van de Apollo-missies. (Voor de eenvoud werd de baan berekend zonder de invloed van de maan.)
Alle banen werden berekend met behulp van deze webpagina door Bernd Leitenberger. Het is alleen beschikbaar in het Duits.
Reacties
- Bedankt voor het bewerken van de referentie!
- @ called2voyage Bedankt voor herinnert me eraan een referentie op te nemen.
Answer
Het berekenen van de snelheid van alle ruimtevoorwerpen op het perigeum kan de antwoord. Na het verwerken van de nieuwste openbare satellietcatalogus van Celestrak, zijn de objecten met de hoogste orbitale snelheid op perigeum:
Object Name SSN# Type Country Apogee (km) Perigee(km) Velocity(m/s) DELTA 2 R/B(2) 22051 R/B US 359918.0 185.0 10929.8 PEGASUS R/B(2) 33404 R/B US 219611.0 247.0 10818.1 FALCON HEAVY R/B 44187 R/B US 88505.0 329.0 10542.2 FALCON 9 R/B 44050 R/B US 66488.0 232.0 10521.5 DELTA 2 R/B(2) 30799 R/B US 85277.0 377.0 10489.9 FALCON 9 R/B 43179 R/B US 48084.0 237.0 10372.5 FALCON 9 R/B 40426 R/B US 62208.0 406.0 10346.8 FALCON 9 R/B 45921 R/B US 45359.0 239.0 10341.4 EQUATOR S 25068 PAY GER 67160.0 470.0 10325.4
Je kunt de satcat downloaden als een csv via deze link , en je kunt dit Python-codefragment hieronder gebruiken om het bestand te verwerken en de snelheden te berekenen.
Ik hoop dat dit nuttig is! Manny
import pandas as pd import math mu = 3.986004418e14 pi = math.pi # Computes the SMA from the orbital period def getSMAfromPeriodMinutes(periodMinutes): # Gravitational parameter periodSeconds = periodMinutes*60 SMA_m = (((periodSeconds**2)*mu)/(4*(pi**2)))**(1/3) return SMA_m # p is Perigee in km, a is SMA in m def getPerigeeSpeed(p, a): x = mu*((2/(p*1000 + 6371000))-(1/a)) return math.sqrt(x) def getSatcat(): """ Gets the public satellite catalog from Celestrak Returns a pandas dataframe of the catalog """ df = pd.read_csv(r"C:\satcat.csv") return df if __name__ == "__main__": df = getSatcat(); # Limit to objects that orbit the Earth only, to exclude some objects that might # orbit about the Earth-Moon barycenter, Sun, etc... # Read the format documentation at http://celestrak.com/satcat/satcat-format.php df = df[df["ORBIT_CENTER"]=="EA"] # drop rows with empty perigee fields df = df.dropna(subset=["PERIGEE"]) # drops rows with objects that have decayed df = df[df["DECAY_DATE"].isna()] # drop rows with 0 perigee from the file (re-entered) df = df[df["PERIGEE"]>0] # compute the SMA df["SMA_m"] = df.apply(lambda row: getSMAfromPeriodMinutes(row["PERIOD"]), axis=1) # compute the speed at perigee df["v_PERIGEE"] = df.apply(lambda row: getPerigeeSpeed(row["PERIGEE"], row["SMA_m"]), axis=1) print(df[["v_PERIGEE"]].idxmax())
Reacties
- ” SSN 43470 – QUEQIAO – 10.761 km / s – Perigeum: 395 km – Apogee: 383.110 km ” De snelheid klopt niet, het is 7672,7 en 7686,2 m / s.
- @Uwe Bedankt voor uw aandacht. De bovenstaande code bevatte een fout, deze is nu gecorrigeerd. Ik heb geen aandacht besteed aan het feit dat QUEQIAO-, LONGJIANG 1- en LONGJIANG 2-gegevens worden geleverd door Celestrak met het midden van de baan als het Aarde-Maan-barycentrum, wat de automatisering verkeerd maakt. Ik heb de resultaten en de code aangepast aan lichamen die de aarde observeren en niet het aardse maanzwaartepunt of de zon, of iets anders … Nogmaals bedankt …
- ” 67160.0 470.0 10325.4 ” ziet er goed uit, ik krijg 10326,2 m / s. Een heel klein verschil.
- Geen pakket, geen programmeertaal, alleen deze pagina: bernd-leitenberger.de/orbits.shtml voor de controleert en om de cijfers voor mijn antwoord te krijgen.
- Voor iedereen die geïnteresseerd is in het gebruik van Manny ‘ s code die ze hier zo nuttig hebben verstrekt, ben je misschien geïnteresseerd in weet dat de licentie die wordt gebruikt voor hedendaagse Stack Exchange-gebruikersinhoud, zoals Manny ‘ s antwoord, compatibel is met GPL v3: creativecommons.org / share-your-work / license-considerations / … . Zorg ervoor dat je Manny vermeldt als je hun code gebruikt!
Antwoord
Ik heb een Python-script geschreven om wat te berekenen omloopperiodes en snelheden. Ik heb astropie-eenheden gebruikt om te rekenen met afstanden in m of km, massas in kg en de zwaartekrachtconstante in m ^ 3 / kg s ^ 2. De resultaten in m / s en tijdseenheden uren, minuten en seconden. Als de eenheden van de resultaten onjuist zijn, kunnen de getallen ook onjuist zijn.
De resultaten voor cirkelbanen van 200 tot 1000 km hoogte:
height radius speed period 200 km 6567.4 km 7790.6 m / s 1 h 28 min 16.7 s 300 km 6667.4 km 7732.0 m / s 1 h 30 min 18.1 s 400 km 6767.4 km 7674.6 m / s 1 h 32 min 20.5 s 500 km 6867.4 km 7618.5 m / s 1 h 34 min 23.7 s 600 km 6967.4 km 7563.7 m / s 1 h 36 min 27.9 s 700 km 7067.4 km 7510.0 m / s 1 h 38 min 33.0 s 800 km 7167.4 km 7457.4 m / s 1 h 40 min 38.9 s 900 km 7267.4 km 7405.9 m / s 1 h 42 min 45.7 s 1000 km 7367.4 km 7355.5 m / s 1 h 44 min 53.4 s
Elliptische banen van 500 tot 400.000 km maximale afstand, minimale afstand 400 km:
height semi mayor axis min speed max speed period 500 km 6817.4 km 7590.5 m / s 7702.7 m / s 1 h 33 min 22.0 s 600 km 6867.4 km 7508.4 m / s 7730.3 m / s 1 h 34 min 23.7 s 700 km 6917.4 km 7428.1 m / s 7757.4 m / s 1 h 35 min 25.7 s 800 km 6967.4 km 7349.6 m / s 7784.0 m / s 1 h 36 min 27.9 s 900 km 7017.4 km 7272.8 m / s 7810.1 m / s 1 h 37 min 30.3 s 1000 km 7067.4 km 7197.7 m / s 7835.8 m / s 1 h 38 min 33.0 s 5000 km 9067.4 km 5115.7 m / s 8593.0 m / s 2 h 23 min 12.9 s 10000 km 11567.4 km 3774.6 m / s 9129.1 m / s 3 h 26 min 21.3 s 50000 km 31567.4 km 1231.3 m / s 10255.4 m / s 15 h 30 min 17.5 s 100000 km 56567.4 km 669.6 m / s 10523.9 m / s 37 h 11 min 33.9 s 200000 km 106567.4 km 350.2 m / s 10679.8 m / s 96 h 10 min 16.5 s 400000 km 206567.4 km 179.3 m / s 10764.3 m / s 259 h 32 min 17.6 s
Het Python-script
import numpy as np import matplotlib.pyplot as plt from astropy import units as u from astropy import constants as c def secToHMS(timePeriod) : # converting seconds to hours, minutes and seconds tP2 = timePeriod.to(u.s).value # integer division // does not work with units rest = tP2 // 60 secs = (tP2 % 60) * u.s #setting the proper unit hours = (rest // 60) * u.h mins = (rest % 60) * u.min return (hours, mins, secs) # orbital period of circular and elliptical orbits def orbitalPeriod(semi_mayor_axis, GMbody) : result = np.sqrt(semi_mayor_axis**3 / GMbody) * 2.0 * np.pi return result def orbitalspeed(radius, GMbody) : # only for circular orbits rad_m = radius.to(u.m) # converting orbit radius from km to m result = np.sqrt(GMbody / rad_m) return result def VisVivaSpeed(radius, semi_mayor_axis, GMbody) : rad_m = radius.to(u.m) # converting orbit radius from km to m sma = semi_mayor_axis.to(u.m) # semi_mayor_axis from km to m result = np.sqrt(GMbody * (2.0 / rad_m - 1.0 / sma)) return result dia_earth_a = 12756.27 * u.km # equatorial Earth diameter dia_earth_p = 12713.5 * u.km # polar Earth diameter rad_earth_a = 0.5 * dia_earth_a # equatorial Earth radius rad_earth_p = 0.5 * dia_earth_p # polar Earth radius rad_earth_ap = (rad_earth_a + rad_earth_p) * 0.5 # mean of equator and polar radius m_earth = 5.97e24 * u.kg # mass of Earth m_e = c.M_earth G = c.G # gravitaional constant GMe = c.GM_earth # product of G with the mass of Earth print(m_earth, m_e, G, GMe) print() print(" height radius speed period") # circular orbits from 200 up to 1000 km, steps 100 km for i in range(200, 1001, 100) : h = i * u.km # converting integer height to float with unit km a = h + rad_earth_ap # distance to earth center t4 = orbitalPeriod(a, GMe) t5 = secToHMS(t4) v = orbitalspeed(a, GMe) print(format(h, "5.0f"), format(a, "7.1f"), format(v, "7.1f"), format(t5[0], "2.0f"), format(t5[1], "2.0f"), format(t5[2], "4.1f")) print() print(" height semi mayor axis min speed max speed period") for i in (500, 600, 700, 800, 900, 1000, 5000, 10000, 50000, 100000, 200000, 400000) : h = i * u.km # converting integer height to float with unit km d_max = h + rad_earth_ap # maximum distance to earth center d_min = 400 * u.km + rad_earth_ap # minimum distance to earth center a = (d_max + d_min) * 0.5 # semi mayor axis t4 = orbitalPeriod(a, GMe) t5 = secToHMS(t4) v_min = VisVivaSpeed(d_max, a, GMe) # minimal speed at maximal distance v_max = VisVivaSpeed(d_min, a, GMe) # maximal speed at minimal distance print(format(h, "6.0f"), format(a, "9.1f"), format(v_min, "8.1f"), format(v_max, "8.1f"), format(t5[0], "4.0f"), format(t5[1], "2.0f"), format(t5[2], "4.1f"))