Simulering av rakketoppskytninger

Det ? skyte opp raketter er en kostbar aff?re. SpaceX som de siste ?rene har jobbet hardt for ? gj?re rakkettoppskytning mer kostnadseffektivt lister fortsatt prisen for en LEO (Low Earth Orbit) til $62 millioner. Og i tillegg til dette kommer prisen av lasten. Derfor er det sv?rt vanlig ? simulere rakettoppskytninger f?r man skrur inn en eneste skrue.

Mange faktorer

Det er mange faktorer som spiller p? en rakettoppskytning fra jorden. Det er jordens tyngdekraft, luftmotstand, jordas rotasjon, v?rforhold, og mye mer. Hvor n?yaktig man vil gj?re en simulering kommer derfor an p? hvor mange av disse faktorene du velger ? implementere i smulasjonen. Selv har jeg valgt ? kun simulere jordas tyngdekraft og rotasjon. Til tross for at dette ikke gir et 100% realistisk bilde av hvordan det faktisk vil g? n?r jeg skyter opp raketten vil det fortsatt gi en pekepinn p? hvor mye drivstoff jeg trenger, og hvor lang tid det vil ta ? f? raketten i bane.

Hvordan simulere en rakettoppskytning?

National Aerospace Snake Association
NASA: National Aeronautics and Snake Administration

Selvom det kan virke naturlig ? simulere en rakettoppskytning visuelt, krever det s?pass mye arbeid at det n?dvendigvis ikke l?nner seg. Det man har behov for er dataen, i forhold til hvilke krefter som virker, hvilken p?virkning de har, hvor mye drivstoff man bruker osv. Her er python er ypperlig verkt?y. Og nei, ikke slangen, men programmeringsspr?ket. Jeg kommer ikke til ? g? i s? stor detalj i forhold til programmeringen i denne bloggen, men det er verdt ? merke seg hvilket programmeringsspr?k jeg bruker ihvertfall.

I Python kan vi legge inn alle variabler, krefter og utregninger, s? vil prosessoren kverne seg gjennom beregningene med mange millioner utregninger i sekundet, og gi oss et svar som hadde tatt dager ? regne ut for h?nd p? bare f? sekunder.

V?r oppskytning

Jeg har alts? en satelitt p? 100 kg som jeg trenger ? f? i bane rundt planeten min. Raketten i seg selv veier 1000 kg og i tillegg til dette kommer vekten av drvstoffet. Dette er en sv?rt liten rakett sammenlignet med for eksempel Saturn V som ble brukt til Appollo-oppdragene. Denne veide 2,970,000 kg! Men med tanke p? at vi skal sende opp noe som ikke veier stort mer enn gjennomsnittsmannen krever ikke vi raketter i slike proposjoner og n?yer oss fint med v?r beskjedne variant.

Ting ? merke seg er at jeg heller ikke simulerer det at raketten flyr i en bue slik du ser i diagrammet til h?yre hentet fra NASA. Dette gj?r at jeg i simuleringen ender med et lavere drivstofforbruk enn jeg hadde f?tt ved en faktisk oppskytning, men igjen er denne aktuelle simuleringen kun ? anse som en pekepinn. Det er ogs? verdt ? merke seg at jeg ikke faktisk simulerer en forbrenningsmotor, men regner heller p? den kinetiske energien H2-partikler har ved 10,000 Kelvin (9 726.85 Celsius). Dette er en bra nok tiln?rming for mine form?l.

V?r planet

Vi befinner oss p? planeten Tellis, og det er st?rrelsen og massen p? denne som bestemmer hva som kreves for ? forlate denne. Som jeg snakket om i forrige blogginnlegg skaper en masse i rommet en s?kalt gravitasjonsbr?nn. For ? komme oss ut av Tellis sin gravitasjonsbr?nn m? vi n? unnslipningshastigheten. Unnslipningshastigheten regnes fra det punktet man "starter" fra, for eksempel planetens overflate. Da kan man finne ut hvor h?y hastighet man m? f? for ? unnslippe planetens tyngdefelt.

Formelen for unnslipningshastighet er \(v_{esc}=\sqrt{\frac{2GM}{r}}\). Hvor M er planetens masse, r er avstanden man starter fra planetens sentrum og G er gravitasjonskonstanten \(6.67408 * 10^{-11} \space m^3kg^{-1} s^{-2}\).

Tellis har en masse p? \(1.037 e^{-5}\) solmasser, og en radius p? 9607.9 km. Dette resulterer i en unnslipningshastighet fra planetens overflate p? \(16,925.77 m/s\). Til sammenligning er jordas unnslipningshastighet p? \(11,186 m/s\). Tellis er alts? betydelig tyngre enn jorda, men det er ingenting en stor nok rakett ikke kan sl?!

Ettersom planeten er tyngre enn jorda vil den ogs? naturligvis ha st?rre tyngdekraft. Tyngdekraften kan vi regne ut med Newtons gravitasjonsformel som sier at \(F = G \frac{m_1m_2}{r^2}\), hvor mer planetens masse og m2 er det tyngdekraften virker p? sin masse. Vi vet ogs? at \(F = m*a\) og slik kan vi finne tyngdeakselerasjonen til planeten ved ? sette de to uttrykkene for kraften lik hverandre. I den andre ligningen vil m v?re objektets masse, alts? m2.

\(G\frac{m_1m_2}{r^2} = m_2 * a\)

Da finner vi at tyngdeakselerasjonen til Tellis er 14.65. Eller ca 1.5 ganger jordas tyngdekraft.

 

What's in the box?

For ? forenkle beregningene og begrense utregningshastigheten startet jeg med ? regne p? drivstoffet som en stor mengde sm? bokser som alle ville oppf?re seg tiln?rmet likt. Dette gjorde at jeg kun trengte ? finne de spesifikke verdiene for en enkelt boks, og kunne deretter skallere dette opp til antall bokser som tilsvarte n?dvendig mengde drivstoff.

En slik boks med 100 partikler (animert i en br?kdel av faktisk hastighet) ville sett slik ut: 

Deretter kan vi programmere inn at det er et hull i boksen p? den ene siden. Dette er ? anse som rakettmotorens dyse og det er her partiklene vil forlate rakettmotoren. N?r en partikkel forlater raketten vil den ha en viss bevegelsesmengde, og for at rakettens bevegelsesmengde skal v?re bevart m? den f? h?yere hastighet. Dette snakket jeg om i forrige blogginnlegg som du kan lese her.

Jeg kan da simulere en slik boks i ett sekund og telle hvor mange partikler som forlater hullet i den perioden. For ? forenkle beregningene ytterligere antar jeg at i det n?yaktige ?yeblikket en partikkel unnslipper vil en annen partikkel komme inn slik at totalt antall partikler per boks alltid er konstant inntil alt drivstoffet er oppbrukt.

I en boks med 1000 partikler simulert i 0.000001 sekunder (En miliontedel av et sekund) unnslipper det 273,019 partikler! Dette vil si at hvert eneste sekund flyr det 273,019,000,000 partikler ut av en boks som til enhver tid har kun 1000 partikler. Men det er ikke n?dvendigvis antall partikler jeg er interessert i, det er heller hvilken bevegelsesmengde de har. Og jeg er kun interessert i bevegelsesmengden i rakettenes flyveretning, da det er den eneste bevegelsesmengden som faktisk vil gi fremdrift. Jeg finner at hver boks med 1000 partikler vil gi en bevegelsesmengde p? \(5.76016314814 * 10 ^{(-18)} \space kg * m/s\) hvert miliontedels sekund, eller \(5.76016314814 * 10 ^{(-12)} \space kg * m/s\) hvert sekund.

Hvis vi snur p? det vil dette si at hver boks vil gi en rakett p? 1000 kg en ekstra hastighet p? \(5.76 * 10 ^{(-15)} \space \frac{m}{s}\) hvert sekund.

Dette er ufattelig lite, og vi trenger med andre ord veldig mange bokser.

Hvor mange bokser?

Her traff jeg en vegg. Og s?nt skjer i forskning, det er ikke alltid man klarer alt, og her var alts? min grense. Jeg har pr?vd, og pr?vd, og pr?vd ? finne ut hvordan balansen skal v?re mellom antall bokser (alts? st?rrelsen p? motoren) og mengden drivstoff, men jeg f?r alts? ikke raketten min til ? ta av.

Det er i slike stunder det er greit ? ha andre forskere og kollegaer rundt seg. Jeg skal ta en prat med den andre forskerne p? huset i l?pet av uken og finne ut hva jeg har gjort galt, for det ? sende opp en rakett jeg ikke vet hvor mye drivstoff skal bruke t?r jeg rett og slett ikke. Kommer med en oppdatering om noen dager n?r jeg har riktig svar. I midlertid skal jeg begynne ? modellere stjernesystemet sine planetbaner! F?lg med!

 

Av Sigve Hages?ter
Publisert 17. sep. 2017 19:06 - Sist endret 7. feb. 2020 15:47