Pytanie:
Jaka jest całkowita masa wysłana na orbitę w całej historii?
AlanSE
2013-07-17 03:31:35 UTC
view on stackexchange narkive permalink

Chciałbym znaleźć dobre oszacowanie całkowitej sumy ładunku, który ludzie umieścili w kosmosie, to znaczy przez wszystkie lata wszystkich programów kosmicznych i wszystkich typów ładunku, który osiągnął orbita. Oczywiście duża ich część szybko zużyła większą część swojej masy jako paliwo lub zejście z orbity, więc nie ma to fizycznego znaczenia.

Całkowitą liczbę orbitalnych startów każdego roku można znaleźć na Wikipedii.

orbital launches

Wynikałoby z tego, że gdybyś miał ładunek dla każdego z tych startów lub dobre oszacowanie średniego ładunku, mógłbyś znaleźć całkowitą masę, która została wysłany na orbitę nad historią ludzkości. Znalazłem jedno źródło, które podaje całkowitą liczbę startów orbitalnych na 5210, czyli według stanu na 2010 r. oczywistym podejściem jest określenie liczby startów i pomnożenie o jakąś ogólną masę ładunku, aby uzyskać oszacowanie. Jak dotąd jest to najlepsze, jakie mogę znaleźć w Internecie.

Jest problem z rakietami wojskowymi, polegający na tym, że kategorycznie nie mamy informacji o tych ładunkach. Wydaje się, że jest to mniej niż 1/3 uruchomień, więc nie powinno to powodować więcej błędów.

Znalazłem jedno źródło, które szacuje, że 255 ton było na orbitę w 2007 roku. Ten rok prawdopodobnie nie jest reprezentatywny.

Jeśli chcesz wykonać legwork, [Dziennik uruchomienia] (http://planet4589.org/space/log/launch.html) prowadzony przez Jonathana McDowella jest dość kompletny i przynajmniej da ci wyobrażenie o konkretnym pojazd startowy i (w niektórych przypadkach) ładunek.
Czy w ogóle publicznie * wiemy * o wszystkich startach wojskowych? Czy liczysz nieudane uruchomienia? Ładunki, które zdeforbowały w ciągu godzin lub dni?
@gerrit Ponieważ założeniem wyjściowym jest to, że liczymy rzeczy, które później wyszły z orbity, wydaje się, że wszystko, co zakończyło pełną orbitę, jest dość oczywiste do uwzględnienia. Pomiędzy wejściem w kosmos a wejściem na orbitę ... byłoby to mniej oczywiste, ale wykluczyłabym je. Właściwie jestem zaskoczony, że nie wspomniał pan o startach przechodzących z ziemi na orbitę inną niż LEO, z którą technicznie znacznie trudniej sobie poradzić. W każdym przypadku można się zastanawiać, czy kategoria na początku zbliży się do granicy błędu.
Myślę, że to łatwe pytanie. W końcu odpowiedź to tylko jedna liczba. Szczegóły tej liczby można zebrać w arkuszu kalkulacyjnym lub streszczeniu i połączyć z małym podsumowaniem tutaj. Mogę jednak dodać aktualną datę do pytania. Myślę, że to jest naprawdę przydatne pytanie.
Trzy odpowiedzi:
#1
+23
dotancohen
2014-11-02 21:48:37 UTC
view on stackexchange narkive permalink

Korzystając z linków w odpowiedzi i komentarzach Erika, połączyłem to razem.

  #! / usr / bin / python3 "" "(C) 2014 Dotan Cohen Ten program jest wolnym oprogramowaniem: ty mogą go rozpowszechniać i / lub modyfikować zgodnie z warunkami Powszechnej Licencji Publicznej GNU w wersji 3. http://www.gnu.org/licenses/gpl-3.0.html "" "import reimport timeimport urllib.requestfrom bs4 import BeautifulSoupdef main ( ): year_links = [] year_launches = [] total_mass = 0 start_url = 'http://space.skyrocket.de/directories/chronology.htm' year_links = get_year_links (start_url) dla linku w year_links: launches = get_year_launches (link) dla launch_url w launches: year_launches.append (launch_url) do uruchomienia w year_launches: time.sleep (0.1) # Bądź miły dla serwera total_mass + = get_launch_mass (launch) print ("Masa całkowita:% i KG"% (total_mass,)) powrót Truedef get_year_links (start_url): year_links = [] html = urllib.request.urlopen (start_url) .read () parsed_pag e = BeautifulSoup (html) links = parsed_page.find_all ('a') dla linków w linkach: link = str (link) if 'doc_chr' w linku: tmp_link = link [link.find ('"') + 1:] tmp_link = tmp_link [: tmp_link.find ('"')] year_links.append (tmp_link) return year_linksdef get_year_launches (year_link): year_launches = [] url = 'http://space.skyrocket.de/' + year_link [3: ] html = urllib.request.urlopen (url) .read () parsed_page = BeautifulSoup (html) links = parsed_page.find_all („a”) dla linków w linkach: link = str (link) if „doc_sdat” w linku: tmp_link = link [link.find ('"') + 1:] tmp_link = tmp_link [: tmp_link.find ('"')] year_launches.append (tmp_link) return year_launchesdef get_launch_mass (launch_url): mass = 0 try: url = ' http://space.skyrocket.de/ '+ launch_url [3:] html = urllib.request.urlopen (url) .read () parsed_page = BeautifulSoup (html)
for pre_mass_element in parsed_page.find_all (text = 'Mass:'): mass_element = pre_mass_element.find_next () mass = int (re.search (r '(\ d +)', mass_element.text) .group (0)) z wyjątkiem wyjątku : pass return massif __name__ == '__main__': main ()  

Wykonanie kodu zajęło 54 minuty, oto wynik:

Całkowita masa : 10500435 KG

Kod odwiedza witrynę internetową, która zawiera listę uruchomień według roku, a ze strony każdego roku odwiedza dedykowaną stronę internetową każdego uruchomienia. Stamtąd kod znajduje komórkę tabeli „Masa”. Następnie wyodrębnia tekst z następnej komórki, wyciąga pierwszą liczbę całkowitą i dodaje ją do bieżącej masy całkowitej. Python!

Ponieważ odpowiedź jest w kodzie, można ją okresowo uruchamiać ponownie w miarę pojawiania się nowych uruchomień i poprawiania szczegółów starych.

Aktualizacja 25 grudnia 2017:

Masa całkowita: 13367669 kg

Aktualizacja 23 grudnia 2019 roku:

  $ czas ./mass.py Masa całkowita: 14466896 KGreal 199m30.311suser 26m51.576ssys 0m38.556s  
Nie każda pozycja na tej stronie, która została wystrzelona na orbitę, ma podaną masę.
Aha, minął już prawie rok, a ja jeszcze nie próbowałem zupy. OK, dobre przypomnienie. Czy czas działania ~ 1 godzina przeważnie czeka na stronę internetową, czy też dużo tego lokalnie? Ponadto większość masy rakiety to paliwo, więc nie ma to zastosowania do „wysłania na orbitę”. Sucha masa górnych stopni dociera czasem na prawdziwą orbitę. Czy jest jakaś szansa, żeby to w ten sposób zepsuć?
@uhoh: Nie ustawiłem czasu komponentów, ale dodanie timerów do uśpienia (przyjemne dla stron internetowych) i żądań http byłoby dość proste. Jeśli znajdziesz wiarygodne źródło danych o masach, o których wspominasz, zakoduję je.
#2
+6
Erik
2013-07-20 10:51:48 UTC
view on stackexchange narkive permalink

Oto część odpowiedzi: chronologiczna lista wszystkich startów orbitalnych i prób wystrzelenia w każdym roku. Drugą częścią jest prawdopodobnie przekroczenie tego ładunku podczas każdej misji dostarczanej na orbitę.

Tak, to połowa. Ale nie widziałem * żadnej * listy lotów z ładunkiem. Być może jedyną opcją jest powiązanie listy lotów z listą rakiet nośnych i wykorzystanie znanej pojemności rakiet nośnych. Nawet jeśli lista byłaby niekompletna, reprezentatywna liczba lotów dla danego ładunku pozwoliłaby na przyzwoite oszacowanie średniej ładowności, ale po prostu nie widziałem * takiej natury danych w ogóle.
Ta lista, którą połączyłem, zawiera ładunki, a zwykle także masę. Na przykład: http://space.skyrocket.de/doc_sdat/elektro-l.htm dla pierwszej misji w 2011 roku: http://space.skyrocket.de/doc_chr/lau2011.htm.
#3
+5
phil1008
2018-01-01 04:01:18 UTC
view on stackexchange narkive permalink

Mój syn zmodyfikował program, aby co roku wyrzucał dane, a także podawał liczbę uruchomień z nieznaną masą ładunku. Poprawiłem dane, używając:

$$ m_ {oszacowanie} = m_ {znane} * {n \ ponad n-n_ {nieznane}} $$

Gdzie:

$ m_ {oszacowanie} $ to szacunkowa liczba uruchomień w danym roku

$ n $ to liczba uruchomień w roku

$ n_ {nieznane} $ to liczba uruchomień, podczas których nie znamy masy ładunku w ciągu roku

$ m_ {znane} $ to całkowita masa ładunku dla tych uruchomień, które podają masę ładunku w roku.

Przy tym współczynniku korygującym, całkowita suma dla wszystkich lat wynosi 17 976 052 kg.



To pytanie i odpowiedź zostało automatycznie przetłumaczone z języka angielskiego.Oryginalna treść jest dostępna na stackexchange, za co dziękujemy za licencję cc by-sa 3.0, w ramach której jest rozpowszechniana.
Loading...