Et kraftig redskap

N? som vi har funnet ut hvordan rakettmotoren skal fungere er det p? tide ? regne ut hvor effektiv den er. Dette betyr at vi m? beregne bevegelsen til trilliarder av hydrogenpartikler inni motoren. Bli med og finn ut hvordan vi kan gj?re dette ved hjelp av en datamaskin og litt grunnleggende statistikk.

Kontoret v?rt p? Domum. Kilde: https://upload.wikimedia.org/wikipedia/commons/1/19/STS-128_ISS-20_Destiny_Canadarm2.jpg

Som vi tidligere har nevnt har Peder og jeg studert fysikk og astronomi i ett ?r n?. Her l?rte vi en ganske ny kunst som har endret verden de siste ti?rene: programmering. Programmering handler i bunn og grunn om ? bestemme hva en datamaskin skal gj?re. Dette har vi tenkt ? bruke til ? bestemme at datamaskinen skal fortelle oss hvor effektiv rakettmotoren v?r er. Men beregningene vi skal gjennomf?re er for tunge, selv for en datamaskin. Vi m? starte med ? forenkle problemstillingen v?r.

Som vi diskuterte i forrige blogginnlegg f?lger posisjonene til hydrogenpartiklene en uniform sannsynlighetsfordeling. Dette betyr at hvis vi deler forbrenningskammeret v?rt opp i mange bittesm? bokser er det n?yaktig like stor sannsynlighet for at en partikkel befinner seg i én boks som i hvilken som helst annen boks. Med andre ord: istedenfor ? simulere bevegelsen til alle partiklene i hele forbrenningskammeret, kan vi redusere problemet v?rt til ? beregne bevegelsen til en bitteliten andel partikler i en bitteliten boks. Deretter kan vi ta resultatet og multiplisere det opp til st?rrelsen av hele motoren, s? sitter vi igjen med n?yaktig det samme som vi ville f?tt dersom vi hadde simulert hele motoren p? én gang.

Istedenfor ? simulere hele forbrenningskammeret kan vi simulere en liten andel definert som en boks.

I tillegg vet vi at over tid vil det gjennomsnittlig v?re like mange partikler som forlater motoren og gir fra seg en kraft. Dermed holder det ? simulere motoren i et sv?rt kort tidsintervall. N? har vi forenklet problemet, s? n? er det bare ? starte opp datamaskinen.

Men hvordan i all verden skal vi lage en kn?ttliten virtuell boks fylt av virtuelle hydrogenmolekyler? Akkurat som i de fleste andre fysiske problemstillinger er det kun noen f? egenskaper vi trenger for ? utf?re en utregning. Vi trenger bare ? vite:

  1. Hvor befinner partikkelen seg?
  2. Hvilken hastighet har partikkelen?

Som vi forklarte i forrige innlegg, vet vi allerede posisjonen og hastigheten til partikkelen i starten. Da kan vi ta det v?rt korte tidsintervallet vi skal simulere og dele det opp i enda flere kn?ttsm? intervaller. Vi vet at strekningen en partikkel beveger seg over ett slikt tidsintervall er gitt ved

\(s = vt\)

der v er hastigheten til partikkelen og t er hvor lenge dette enda kortere tidsintervallet varer. Gj?r vi dette i hvert tidsintervall, finner vi ut hvor partikkelen befinner seg til enhver tid. Men som vi diskuterte i forrige innlegg er jo ikke hastigheten den samme hele tiden. N?r partikkelen treffer veggen, byttes fortegnet p? hastighetskomponenten som st?r normalt p? veggen. Vi m? alts? komme p? en m?te ? finne ut om partikkelen treffer veggen eller ikke.

La oss definere boksen til ? ha lengden L langs alle sidene sine Da kan vi ta utgangspunkt i sentrum i boksen og sjekke hver av komponentene til partikkelens posisjon. Er absoluttverdien til komponenten lik L/2, vet vi at partikkelen befinner seg p? veggen.

Partikkelen kolliderer n?r absoluttverdien av avstanden til sentrum er L/2.

Da kan vi bare snu hastighetskomponenten normalt p? veggen, og vipps, s? har vi simulert en fysisk korrekt partikkelkollisjon med veggen!

Dessverre har oppskriften v?r en begrensning som vi har glemt ? ta hensyn til. Vi regner bare ut hvor partikkelen befinner seg i bestemte tidspunkter t0, t1, t2, osv. Hva hvis partikkelen kolliderte mellom et av disse tidspunktene? Da ville ikke oppskriften v?r fanget det opp, og partikkelen ville forsvunnet ut av boksen! Her finnes det en lur l?sning: hvis vi heller sjekker om absoluttverdien til komponenten er st?rre enn L/2, vil vi alltid f? fanget det opp. Dette betyr at partikkelen ?egentlig? beveger seg litt utenfor veggen f?r den spretter tilbake, men siden vi bruker sv?rt sm? tidsintervaller, rekker ikke partikkelen ? komme seg langt nok vekk til at det vil v?re en merkbar forskjell fra en kollisjon rett p? veggen.

Vi sjekker om absoluttverdien av posisjonskomponentene fra sentrum er st?rre enn L/2.

Med dette som utgangspunkt klarer vi ? finne svar p? v?re to sp?rsm?l: hvor partikkelen befinner seg og hvilken hastighet den har. N? kommer vi til den vanskelige delen. For ? finne ut hvor mye kraft vi f?r fra rakettmotoren, m? vi vite hvor mye kraft som kommer fra partiklene som forlater forbrenningskammeret. Vi m? alts? lage oss et lite hull de kan komme seg ut fra og regne ut kraften de dytter p? raketten med. La oss si at hullet er kvadratisk med sidelengde L/2. ? faktisk lage dette hullet vil gj?re oppskriften v?r mye vanskeligere enn den er fra f?r.

Boksen med et hull som har sidelengder L/2 i bunnen.

Men akkurat som tidligere kan vi gj?re noen lure triks for ? f? en enklere utregning. Vi vet jo tross alt at partiklene er uniformt fordelt i boksen. Dette betyr at det er akkurat like stor sannsynlighet for at partiklene treffer hvor som helst p? hvilken som helst av veggene. S? istedenfor ? faktisk lage det lille hullet og telle opp partiklene som slipper ut herfra, kan vi bare telle opp hver gang partiklene treffer en av veggene. Det er 6 vegger i en boks, s? 1/6 av antall partikler som treffer alle veggene vil treffe p? veggen hvor hullet er plassert. Siden hver side i hullet har lengde L/2, er arealet av hullet 1/4 av arealet til hele veggen. Dermed f?r vi at antall partikler som forlater boksen blir (1/6)*(1/4) = 1/24 av antall partikler som treffer alle veggene.

S? kan vi regne ut kraften normalt p? veggen fra hver av disse partiklene, og gange den ogs? med faktoren (1/24). Da f?r vi en formel som ser slik ut:

\(F_{Hull} = \frac{1}{24}F_{Vegger} = \frac{1}{24} \Sigma f\)

Der FHull er kraften fra partiklene beveger seg ut av hullet, FVegger, er den totale kraften fra partiklene p? alle veggene og f er kraften fra hver partikkel normalt p? veggen den treffer. Σ betyr at vi summerer opp alle f-ene.

S?, n? har vi regnet ut hvor mange partikler som forlater boksen og hvor mye kraft de gir fra seg. Hvor blir det n? av partikkelen som har forlatt boksen? Igjen ligger svaret i en lur bruk av statistikk: istedenfor ? faktisk simulere at partikkelen forsvinner fra boksen, kan vi bare telle den opp, regne ut kraften den gir fra seg og la den fortsette bevegelsen iboksen. Hvorfor? Fordi vi har en drivstoffkilde som hele tiden sender inn like mye drivstoff som det slipper ut av boksen. Siden posisjonene til partiklene er uniformt fordelt, vil de fortsette ? ha den samme uniforme fordelingen sin s? lenge vi lar de samme partiklene sprette rundt selv om de "egentlig" har forlatt boksen. Det blir alts? akkurat det samme som om vi skulle ha byttet ut partikkelen som forsvant ut med en ny partikkel.

Med denne oppskriften finner vi ut hvor mange partikler som forlater boksen og hvor stor kraft de gir fra seg. Siden vi vet at alle partiklene er hydrogenmolekyler, kan vi bare gange antall partikler som forlater boksen med massen til et hydrogenmolekyl for ? finne ut hvor mange kilogram drivstoff en slik liten boks bruker. En oppskrift som dette kalles p? mer formelt, matematisk spr?k for en algoritme.

Peder og jeg har n? oversatt algoritmen til programkode og brukt den til ? beregne kraften og drivstofforbruket til en slik liten boks som vi har introdusert. Det neste vi m? gj?re er ? finne ut hva som skal til for ? komme seg ut av Domums gravitasjonsfelt, og bruke dette til ? bestemme hvor stor forbrenningskammeret m? v?re og hvor mye drivstoff vi trenger. F?lg med videre for ? finne ut hvordan det g?r!

Av William Eivik Olsen
Publisert 16. sep. 2018 20:39 - Sist endret 17. sep. 2018 19:46

Logg inn for ? kommentere