Domanda:
Qual è la massa totale inviata in orbita in tutta la storia?
AlanSE
2013-07-17 03:31:35 UTC
view on stackexchange narkive permalink

Vorrei trovare una buona stima della somma totale del carico utile che gli esseri umani hanno immesso nello spazio, ovvero nel corso di tutti gli anni, tutti i programmi spaziali e tutti i tipi di carico utile che hanno raggiunto orbita. Ovviamente una grossa frazione di questi ha rapidamente speso più della loro massa come propellente o deorbita, quindi non ha alcuna interpretazione di significato fisico.

Il numero totale di lanci orbitali ogni anno può essere trovato su Wikipedia.

orbital launches

Ne consegue che se avessi il carico utile per ciascuno di questi lanci, o una buona stima del carico utile medio, potresti trovare la massa totale che è stata mandato in orbita sulla storia umana. Ho trovato una fonte che fornisce il numero totale di lanci orbitali come 5.210, che credo sia del 2010. Un approccio ovvio è prendere il numero di lanci e moltiplicare da una massa di carico utile generico per ottenere una stima. Finora questo è il meglio che posso trovare online.

C'è il problema dei lanci militari, in quanto categoricamente non disponiamo di informazioni su quei carichi utili. Questi sembrano essere meno di 1/3 dei lanci, quindi non dovrebbe introdurre più errori di questo.

Ho trovato una fonte che stima che 255 tonnellate fossero messo in orbita nel 2007. Quell'anno probabilmente non è rappresentativo.

Se tu fossi disposto a fare il legwork, il [Launch Log] (http://planet4589.org/space/log/launch.html) mantenuto da Jonathan McDowell è abbastanza completo, e almeno ti darà un'idea dello specifico veicolo di lancio e (in alcuni casi) carico utile.
Sappiamo anche pubblicamente * sapere * di tutti i lanci militari? E conti i lanci falliti? Payload disorbiti in poche ore o giorni?
@gerrit Poiché la premessa di partenza è che stiamo contando le cose che in seguito sono uscite dall'orbita, sembra che sia abbastanza ovvio includere tutto ciò che ha completato un'orbita completa. Tra l'entrata nello spazio e l'entrata in orbita ... sarebbe meno ovvio, ma li escluderei. In realtà, sono sorpreso che tu non abbia menzionato lanci che vanno da terra a un'orbita diversa da LEO, che è tecnicamente molto più difficile da affrontare. In ogni caso, ci si chiede se la categoria si avvicinerà al margine di errore per cominciare.
Penso che questa sia una domanda trattabile. Dopotutto, la risposta è solo un singolo numero. I dettagli dietro quel numero potrebbero essere raccolti in un foglio di calcolo o in una sintesi e collegati a un piccolo riassunto qui. Tuttavia, potrei aggiungere una data aggiornata alla domanda. Questo è davvero il tipo di domanda che è utile qui credo.
Tre risposte:
#1
+23
dotancohen
2014-11-02 21:48:37 UTC
view on stackexchange narkive permalink

Usando i link nella risposta e nei commenti di Erik, ho messo insieme questo.

  #! / usr / bin / python3 "" "(C) 2014 Dotan Cohen Questo programma è un software libero: tu può ridistribuirlo e / o modificarlo secondo i termini della GNU General Public License versione 3.http: //www.gnu.org/licenses/gpl-3.0.html "" "import reimport timeimport urllib.request da 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) per il collegamento in year_links: launches = get_year_launches (link) per launch_url in launches: year_launches.append (launch_url) for launch in year_launches: time.sleep (0.1) # Sii gentile con il server total_mass + = get_launch_mass (launch) print ("Total mass:% i KG"% (total_mass,)) return 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') per il link nei link: link = str (link) se 'doc_chr' nel link: 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') per il collegamento nei collegamenti: link = str (collegamento) se 'doc_sdat' nel collegamento: 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)) eccetto Eccezione : pass return massif __name__ == '__main__': main ()  

Il codice ha impiegato 54 minuti per essere eseguito, ecco l'output:

Massa totale : 10500435 KG

Il codice visita un sito web che elenca i lanci per anno e dalla pagina di ogni anno visita la pagina web dedicata di ogni lancio. Da lì il codice trova la cella della tabella "Mass". Quindi estrae il testo della cella successiva, estrae il primo numero intero e lo aggiunge alla massa totale corrente. Python!

Poiché la risposta è nel codice, può essere periodicamente rieseguita quando si verificano nuovi lanci e quando i dettagli dei vecchi lanci vengono rivisti.

Aggiornamento 25 dicembre 2017:

Massa totale: 13367669 KG

Aggiornamento 23 dicembre 2019:

  $ time ./mass.py Massa totale: 14466896 KGreal 199m30.311sutente 26m51.576ssys 0m38.556s  
Non tutti gli oggetti in questa pagina che vengono lanciati in orbita hanno una massa elencata.
Ah, è passato quasi un anno e non ho ancora provato la zuppa. OK, un buon promemoria. Il tempo di esecuzione di ~ 1 ora attende principalmente il sito Web o è molto locale? Inoltre, la maggior parte della massa di un razzo è combustibile, quindi non si applicherebbe a "mandato in orbita". La massa secca degli stadi superiori talvolta raggiunge un'orbita reale. C'è qualche possibilità di scomporlo in questo modo?
@uhoh: Non ho cronometrato i componenti, ma l'aggiunta di timer allo sleep (piacevole per i siti web) e alle richieste http sarebbe abbastanza semplice. Se riesci a trovare una fonte di dati affidabile per le masse che menzioni, la codificherò.
#2
+6
Erik
2013-07-20 10:51:48 UTC
view on stackexchange narkive permalink

Ecco una parte della risposta: un elenco cronologico di tutti i lanci orbitali e i tentativi di lancio per ogni anno. L'altra parte è probabilmente incrociare questo con il carico utile che ogni missione ha consegnato in orbita.

Sì, questa è la metà. Ma non ho visto * nessun * elenco di voli con carichi utili. Forse l'unica opzione è accoppiare l'elenco dei voli con un elenco dei veicoli di lancio e utilizzare la capacità nota dei veicoli di lancio. Anche se l'elenco fosse incompleto, un rappresentante del numero di voli per un dato carico utile consentirebbe una stima decente del carico utile medio, ma non ho * visto * proprio questa natura di dati.
L'elenco che ho collegato fornisce carichi utili e di solito anche massa. Ad esempio: http://space.skyrocket.de/doc_sdat/elektro-l.htm per la prima missione nel 2011: http://space.skyrocket.de/doc_chr/lau2011.htm.
#3
+5
phil1008
2018-01-01 04:01:18 UTC
view on stackexchange narkive permalink

Mio figlio ha modificato il programma per scaricare i dati ogni anno e riportare anche il numero di lanci con massa di carico utile sconosciuta. Ho corretto i dati utilizzando:

$$ m_ {estim} = m_ {known} * {n \ over n-n_ {unknown}} $$

Dove:

$ m_ {estim} $ è la stima della massa lanciata in un dato anno

$ n $ è il numero di lanci nell'anno

$ n_ {unknown} $ è il numero di lanci di cui non conosciamo la massa del carico utile durante l'anno

$ m_ {known} $ è la massa del carico utile totale per quei lanci che elencano la massa del carico utile in un anno.

Con questo fattore di correzione, il conteggio totale per tutti gli anni diventa 17.976.052 kg.



Questa domanda e risposta è stata tradotta automaticamente dalla lingua inglese. Il contenuto originale è disponibile su stackexchange, che ringraziamo per la licenza cc by-sa 3.0 con cui è distribuito.
Loading...