I den f?rste fasen av et slikt prosjekt er ting alltid litt vanskelig, ting tar tid og det blir mye testing og feiling. Vi m? nemlig kj?re gjennom tusenvis av simuleringer f?r vi kan v?re heeeelt 100% sikre p? at dette faktisk kommer til ? fungere i praksis. Dette er ikke noe sm?tteri. For en rakett er dyr. Og det er drivstoff og.
Det f?rste jeg n? har gjort er rett og slett ? pr?ve ? simulere rakettmotoren p? datamaskinen. Dette gj?r jeg ved hjelp av programmering. Jeg skriver kode. Det som ser ut slik som dette:
Programmeringsspr?ket jeg bruker heter Python. Ja, som i slangen. Og det er slik det f?les av og til og, n?r du f?r feilmelding p? feilmelding og overhodet ikke kan finne feilen - da er det litt som ? bli kvelt av en pytonslange. Det ser veldig avansert og vanskelig ut, og det er det rett og slett til tider og, det skal jeg ikke legge skjul p?. Men mye er heller ikke s? ille - og viktigst av alt er det et helt fantastisk verkt?y som gir deg en verden av muligheter.
F?rst og fremst vil jeg bare forklare prinsippet bak simuleringen av denne rakettmotoren; Se for deg en boks med seks like store sideflater, en kube. Denne bokser fyller vi med gasspartikler - i dette tilfellet hydrogenmolekyler, H2. Fra kjemien vet vi at partiklene i en gass har h?y temperatur (Jeg regner med 10 000 K) og dermed h?y hastighet, og jeg m? simulere disse hastighetene. Heldigvis har forskere f?r meg (takk) funnet ut at partiklene i en gass mer eller mindre f?lger en fast sannsynlighetsfordeling. Denne sannsynlighetsfordelingen kalles Gaussisk, eller normalfordeling. Hva dette betyr er lettere ? vise med en figur enn ? forklare.
Denne sannsynlighetsfordelingen g?r ut p? at de m?lte verdiene vil fordele seg symmetrisk rundt en middelverdi (toppen). For hastighetene til hydrogenpartiklene, vil alts? toppen av kurven v?re gjennomsnittet av hastighetene, mens mengden partikler med hastigheter b?de st?rre og mindre enn dette vil vises som jevnt fordelt p? hver siden av toppen, som et veldig fint fjell. Eller en kirkeklokke. Tenk p? det, s? husker du det lett.
Okei, s? da har vi en boks, og vi har hydrogenmolekyler som suser rundt inni. Disse vil p? et eller annet tidspunkt, selvf?lgelig kollidere med en av de seks veggene i boksen (eller hverandre, men det ser vi litt bort i fra her for enkelthetens skyld). Kollisjonene som da oppst?r vil v?re av typen elastiske kollisjoner. Dvs. at b?de den kinetiske energien og bevegelsesmengden vil v?re bevart (samme f?r og etter kollisjonen), slik som illustrert under.
N? har du kanskje falt litt av her, skulle ikke jeg liksom simulere en rakettmotor? Og jo, her kommer det; Vi har en boks med partikler med normalfordelte hastigheter som vi kjenner til. Det jeg n? gj?r er at jeg velger meg et omr?de p? den ene veggen i boksen, ogs? kj?rer jeg en l?kke i programmet mitt som teller opp antall ganger en partikkel treffer dette omr?det. Tanken bak simuleringen min er alts? n? at jeg kan bruke dette antallet av partikler som treffer det riktige omr?det til ? regne ut hastigheten raketten min vil f?! Vi kjenner alle til uttrykket for bevegelsesmenge, p = mv, i tillegg til Newtons 3. lov, kraft = motkraft. I og med at jeg n? summerer opp antall partikler som treffer the golden area (og kjenner massen og hastigheten til disse) kan jeg regne ut den samlede bevegelsesmengden, deretter bruke det faktum at det er elastiske kollisjoner og til slutt p?f?re Newtons 3. lov, og beregne hastigheten. Dette ble litt mye p? en gang, jeg vet. Sagt med andre ord - den samlede bevegelsesmengden til antallet partikler jeg har summert opp vil alts? v?re lik bevegelsesmengden raketten min vil f?! For ? gj?re det litt visuelt tar vi n? dette golden area og gj?r det om til et hull. Simuleringen min ser da slik ut:
Ser du sammenhengen?? Gir ting kaaanskje litt mer mening? Det h?per jeg, i hvert fall. For med et visst antall slike bokser (kommer tilbake til dette) med et visst antall partikler i hver, la oss si 105, kan jeg n? faktisk simulere en helt realistisk rakettmotor. Og det er det jeg skal gj?re n?.
Det jeg ?nsker ? finne ut i denne simuleringen, er hvor stor motor, og dermed drivstoff, raketten egentlig kommer til ? trenge. Den trenger drivstoff til ? komme seg ut av gravitasjonsfeltet v?rt, i tillegg til sm? "boosts" underveis for ? styres i riktig retning. F?rst trenger jeg unnslipningshastigheten hos v?r kj?re planet Odraing. Om du lurer p? hvordan den beregnes, s? er det ved hjelp av kinetisk og potensiell energi. Det er den hastigheten som trengs for at den kinetiske energien til raketten skal bli st?rre enn den potensielle, slik at raketten blir fri fra gravitasjonspotensialet til IKEA. Setter vi uttrykket for kinetisk og potensiell energi lik hverandre og mikser og trikser litt, f?r vi:
\({1 \over 2}mv^2 = -G{mM\over R}\)
\(v = {\sqrt{2GM \over R}}\)
vesc ≈ 15380 m/s
Jeg kan n? bruke den utregnede bevegelsesmengden for ? beregne akselerasjonen raketten vil f?. Akselerasjonen beregnes som vanlig ut fra Newtons 2. lov: F = ma ? a = F/m, og kraften i bevegelsesretning vil v?re gitt av endringen i bevegelsesmengde, \({dp \over dt}\), som egentlig er den mest generelle versjonen av Newtons 2. lov (h?per du l?rte noe nytt n?). Ved ? telle antall partikler som forlater den kj?re boksen min, s? kan jeg beregne tapet av drivstoff tilsvarende ?kningen i akselerasjon. Og n? er vi godt p? vei. Men jeg m? n? finne ut hvordan jeg skal f? raketten min til ? akselerere opp til Odraings unnslipningshastighet p? under 20 minutter. Helst en god del under. Og n?r denne raketten er ferdigbygd, vil bare raketten i seg selv, f?r vi fyller p? med drivstoff, veie 1 tonn. S? nei, det er ikke sm?tteri vi jobber med her.
Etter ? ha skrevet ferdig s? og si hele koden for simuleringen av denne rakettmotoren, gjenstod det en god del pr?ving og en enda st?rre del feiling. For st?rrelsen p? én enkelt boks, valgte jeg sidekantene til ? v?re 10-6 m og temperaturen fastsatte jeg som nevnt til 10 000 K. N? skulle alle innstillingene mine v?re riktige, og det eneste jeg trengte ? finne ut av var hvor mange slike sm? bokser jeg ville trenge i rakettmotoren, og hvor mange kilo drivstoff som m? med for ? n? unnslippningshastigheten. F?rst til disse boksene. Alts? snakker vi 100 bokser? 1000? 100 000? Neida. Jeg m?tte jammen meg opp i hele 1013 bokser f?r ting begynte ? gi mening. Men det var ikke det mest sjokkerende. Hva med drivstoff, sp?r du? Mer drivstoff enn vekten p? raketten, h?res ikke det litt rart ut? Neida. Hva med 10 ganger s? mye? Fortsatt nei. TJUEFEM TUSEN KILO MED DRIVSTOFF. S? mye m? jeg faktisk opp i for ? n? v?r kj?re unnslipningshastighet. Ganske s? helspr?tt. Men det er faktisk realiteten.
Som jeg startet med ? si - dette er ikke noe sm?tteri.
Vi blogges!