Luften i Boltzmann Flyer är ingen animation. Den är en riktig strömningssimulering (Lattice-Boltzmann) som räknas medan du spelar. Men hur nära verkligheten kommer den? För att ta reda på det kördes exakt samma lösarkod som i spelet på klassiska testfall, som forskare har mätt i vindtunnlar och vattenkanaler i snart hundra år. Resultaten jämfördes med publicerade mätningar och beräkningar, och alltid vid samma Reynoldstal (se nedan).
- Grundfysiken stämmer. Virvlarna bakom en cylinder släpper i nästan rätt takt (2–12 % för ofta jämfört med mätningar och beräkningar) och virvelbubblan bakom den blir lika lång som i experimenten. På vingen börjar virvlarna släppa vid 8°, samma vinkel som i vattentankförsök.
- Motståndet blir lite för högt: 7–22 % för cylindern och 12 % för vingen. Vingens lyft blir 0–18 % för lågt.
- Magnuseffekten (spinnande cylinder) stämmer inom 8 % i spelets spinnområde.
- Den stora skillnaden mot verkligheten är skalan. Spelet räknar vid Reynoldstal ≈ 300, som en liten insekt. En riktig flygplansvinge har ungefär 30 gånger lägre motstånd. Spelet kompenserar medvetet med några knep, och de redovisas i avsnitt 5.
Varför samma Reynoldstal?
Reynoldstalet, Re = fart × storlek / luftens viskositet, säger om luften beter sig "segt" eller "lättflytande" runt ett föremål. Samma form beter sig helt olika vid olika Re. En vinge som bär ett flygplan fungerar dåligt i insektsskala, där luften känns som sirap. Därför är det bara meningsfullt att jämföra vid samma Re.
| Exempel | Re (ungefär) |
|---|---|
| Boltzmann Flyer: vingen, 30 rutor bred | 300 |
| Pappersflygplan: 10 cm, 5 m/s | 30 000 |
| Segelflygplan: vinge 1 m, 30 m/s | 2 000 000 |
| NASA:s vindtunnelprov av NACA 0012 | 6 000 000 |
Cylindern testas vid Re 20–200, precis där spelets klot ligger (Re ≈ 190), och där finns fina experiment. För vingen finns knappt några experiment vid så låga Re: en NACA 0012 vid Re 1 000 är en vinge på 1,5 cm i 1 m/s. Där är referensen i stället en noggrann publicerad beräkning (Kurtulus 2015), som i sin tur stämmer med flera andra forskargruppers beräkningar. Spelets lösare klarar inte flygplanets Re. Därför jämförs den inte heller där.
Så gjordes testet
- Spelets egen lösare (
lbm.jsmed WebAssembly-kärnan) kördes utanför webbläsaren i Node.js. D2Q9-gitter, regulariserad kollision med Smagorinsky-turbulensmodell, halvvägs-bounce-back mot ytor, krafter via rörelsemängdsutbyte och dämpzoner längs kanterna. Det är samma inställningar som i spelet. - Cylinder: diameter D = 20 rutor (spelets klot är ca 19). Tunneln är 10 D bred och 25 D lång, och Re ställs in med viskositeten. Kontroller: dubbelt så bred tunnel, 1,5× finare gitter, längre inlopp och turbulensmodellen avstängd.
- Vinge: NACA 0012 med 60 rutor korda, i fri luft (7 × 5 kordor) vid Re 1 000, utan spelets korrektioner (ren fysik). Varje vinkel kördes i två lägen, förskjutna en halv ruta, för att se hur mycket den trappstegsformade ytan påverkar.
- Alla värden är tidsmedel efter insvängning. Virvelfrekvensen räknas ur lyftkraftens svängningar.
1. Cylindern: Kármáns virvelgata
Bakom en cylinder släpper virvlarna växelvis, först från ena sidan och sedan från den andra (en Kármán-virvelgata). Frekvensen, uttryckt som Strouhaltalet St, är ett av strömningslärans mest noggrant uppmätta tal (Williamson 1989). I simuleringen börjar virvlarna släppa mellan Re 40 och 60. I experiment sker det vid Re ≈ 47.
| Re | St sim | St ref. | avvik. |
|---|---|---|---|
| 60 | 0,151 | 0,136 exp. | +12 % |
| 100 | 0,177 | 0,164 exp. | +8 % |
| 150 | 0,193 | 0,183 exp. | +5 % |
| 200 | 0,203 | 0,199 2D | +2 % |
| 300 | 0,215 | 3D, ej jämförbart | – |
| Re | CD sim | CD ref. | avvik. |
|---|---|---|---|
| 20 | 2,38 | 2,22 exp. | +7 % |
| 40 | 1,80 | 1,48 exp. | +22 % |
| 60 | 1,63 | 1,39 2D | +18 % |
| 100 | 1,56 | 1,33 2D | +17 % |
| 200 | 1,59 | 1,40 2D | +14 % |
"exp." = experiment (St: Williamson 1989; CD: Tritton 1959). "2D" = publicerade 2D-beräkningar (Park m.fl. 1998; vid Re 200 en sammanställning av flera). Över Re ≈ 190 blir den verkliga strömningen tredimensionell. Därför jämförs Re 200 med 2D-beräkningar och Re 300 inte alls.
Frekvensen ligger 2–12 % över referensen, mest vid låga Re. Motståndet ligger 7–22 % över. Vad det beror på har testats vid Re 100:
- dubbelt så bred tunnel: CD 1,56 → 1,51 (−3 %), St 0,177 → 0,171
- 1,5× finare gitter: CD → 1,52 (−2 %), St → 0,177
- dubbelt så långt inlopp: CD → 1,50 (−3 %), St → 0,173
- utan turbulensmodell (Smagorinsky av): CD → 1,55 (−1 %)
Tunnelns bredd, inloppets längd och gittrets upplösning sänker alltså motståndet med ungefär 3 % var, tillsammans ungefär hälften av avvikelsen vid Re 100. Upplösningen spelar in eftersom den trappstegsformade cylindern blir effektivt en halv ruta större än den ritade. Resten, ungefär 8 %, har inte utretts vidare. Turbulensmodellen spelar ingen roll vid de här farterna. Spelet använder de snålare inställningarna för att hinna räkna 500 steg per sekund i webbläsaren.
2. Virvelbubblan bakom cylindern
Under Re ≈ 47 släpper inga virvlar. I stället står två stilla virvlar bakom cylindern, och längden på den bubblan (L) är en känslig provsten.
| Re | L/D sim | experiment | 2D-beräkningar |
|---|---|---|---|
| 20 | 0,85 | 0,73 | 0,92–0,94 |
| 40 | 2,05 | 1,89–2,13 | 2,18–2,35 |
Vid Re 40 hamnar simuleringen mitt i experimentens spridning. Vid Re 20 ligger den mellan experimentet och 2D-beräkningarna.
3. Magnuseffekten: spinnande cylinder
I spelets cylindernivå styr du spinnet, och lyftet kommer helt ur strömningen. Jämförelsen gäller en 2D-beräkning vid samma Re (Kang m.fl. 1999). Deras värden är avlästa ur figurer och osäkra på ungefär ±10 %.
| spinn α | CL sim | CL ref. (≈) | avvik. | virvlar? |
|---|---|---|---|---|
| 0,5 | 1,28 | 1,2 | +7 % | ja |
| 1,0 | 2,69 | 2,5 | +8 % | ja |
| 1,5 | 4,30 | 3,9 | +10 % | ja |
| 2,0 | 6,40 | 5,2 | +23 % | nej |
Inom spelets spinnområde (α ≤ 0,65) stämmer lyftet inom 8 %. Vid snabbare spinn ökar avvikelsen. Precis som i referensen slutar cylindern att släppa virvlar någonstans mellan α 1,5 och 2 (Kang: 1,8).
4. Vingen NACA 0012 vid Re 1 000
Här jämförs spelets lösare utan några korrektioner mot Kurtulus (2015), som räknade samma profil vid samma Re med ett mycket finare beräkningsnät. Observera att det är en datorberäkning (ANSYS Fluent), inte ett experiment. Direkta kraftmätningar vid Re 1 000 finns knappt, eftersom krafterna är så små: en vinge på 1 cm i 15 cm/s luft får krafter på några mikronewton. Kurtulus stämde därför av sina krafter mot andra forskares beräkningar och mot Suzuki m.fl. (2009), som kombinerar en mätning av strömningsfältet med simulering (CL ≈ 0,72 vid 15°). Vinkeln där virvlarna börjar släppa, 8°, är däremot uppmätt i vattentank (Huang m.fl. 2001). Referensvärdena för lyft och glidtal är avlästa ur Kurtulus figurer (±0,02 respektive ±0,1). Hans text anger själv CD ≈ 0,12 vid 0°, virvelavlösning från 8° och bästa glidtal 2,55 vid 11°.
| vinkel | CL sim | CL ref. | avvik. | virvlar? |
|---|---|---|---|---|
| 0° | 0,00 | 0,00 | – | nej |
| 2° | 0,10 | 0,11 | −13 % | nej |
| 4° | 0,18 | 0,20 | −14 % | nej |
| 6° | 0,24 | 0,28 | −16 % | nej |
| 8° | 0,27 | 0,33 | −18 % | ja |
| 10° | 0,39 | 0,42 | −8 % | ja |
| 12° | 0,44 | 0,50 | −12 % | ja |
| 15° | 0,60 | 0,69 | −12 % | ja |
| 20° | 0,89 | 0,89 | 0 % | ja |
| 26° | 1,07 | 1,15 | −7 % | ja |
| vinkel | CD sim | glidtal sim | glidtal ref. |
|---|---|---|---|
| 0° | 0,135 | – | – |
| 2° | 0,137 | 0,70 | 0,90 |
| 4° | 0,141 | 1,26 | 1,65 |
| 6° | 0,150 | 1,57 | 2,12 |
| 8° | 0,159 | 1,70 | 2,30 |
| 10° | 0,189 | 2,05 | 2,50 |
| 12° | 0,225 | 1,95 | 2,55 |
| 15° | 0,292 | 2,07 | 2,45 |
| 20° | 0,511 | 1,74 | 2,05 |
| 26° | 0,703 | 1,52 | 1,68 |
- Virvlarna börjar släppa vid 8°, precis som i vattentankförsöken (Huang m.fl. 2001) och i Kurtulus beräkning.
- Lyftet ligger 0–18 % under referensen. Det är för lågt men har rätt form.
- Motståndet vid 0° blir 0,135 mot 0,12 (+12 %). Det är samma riktning som för cylindern, troligen av samma skäl: den trappstegsformade ytan gör profilen lite tjockare och trubbigare än den ritade.
- Bästa glidtal blir 2,07 vid 15° mot 2,55 vid 11°.
5. Spelets vinge: varför den ändå flyger
I spelet har vingen bara 30 rutor korda, och Re ≈ 300. Där är luften så seg att en NACA 0012 i fri luft får motståndet 0,26 vid 0° och glidtalet högst 1,5. Den tappar alltså en meter höjd för varje 1,5 meter framåt, och det blir inget roligt glidplansspel. Därför finns tre medvetna avsteg:
- Väggmodell. Luften närmast vingen får glida med 90 % av sin fart längs ytan, utom vid bakkanten där den måste släppa rent (Kutta-villkoret). Det härmar det tunna gränsskiktet på en riktig vinge. I spelets ruta sänker det motståndet vid 0° från 0,30 till 0,21.
- Reynolds-korrektion. När strömningen ligger an multipliceras motståndet med 0,45, ungefär som när vindtunnelresultat skalas till fullskala. Det effektiva motståndet blir då 0,096, vilket motsvarar en vinge vid Re ≈ 1 500 (graf G). Lyftet används precis som det simuleras.
- Trång ruta (oavsiktligt). Vingen sitter nära rutans bakkant, där luften tvingas tillbaka till ostörd vind. Det visade sig ge mer lyft: vid 10° blir CL 0,54 i spelets ruta mot 0,39 i fri luft (+39 %). Effekten drar åt rätt håll, mot en riktig vinge.
Resultatet är att spelets vinge vid 6° ger CL ≈ 0,42. Det kan jämföras med 0,27 för samma profil i fri luft vid Re 300 och 0,65 för en riktig NACA 0012 i NASA:s vindtunnel vid Re 6 miljoner (Ladson 1988; ren referens, inte en validering). Glidtalet vid trim på nivå 1 blir ≈ 3,9. Det liknar en wingsuit (ungefär 2–3) eller ett pappersflygplan, inte ett segelflygplan (40–60). Backen på 18° gör resten, så att du får fart nedför berget.
6. Effekter som bara kan jämföras i stort
För de här effekterna finns inga mätningar vid spelets Re och profil, så jämförelsen gäller bara mönstret och inte siffrorna.
- Markeffekt. Med vingen vid 6° i spelet ökar lyftet från 0,40 högt upp till 0,62 en kvarts korda över berget (+57 %), och motståndet ökar något. Vindtunnelförsök med en NACA 4412 vid Re 300 000 (Ahmed m.fl. 2007) visar samma mönster vid vinklar över 4°: mer lyft och mer motstånd nära marken. Vid små vinklar blir det i stället mindre lyft, eftersom luften sugs fort genom spalten (venturieffekt). Det syns också i spelet: vid −4° nära berget ökar luftens fart under vingen och suget mot marken.
- Vingslag (Knoller–Betz). Vickar man snabbt (cirka ±9° fyra gånger i sekunden) ger vingen nettodragkraft, men långsam vickning gör det inte. I vattentunnelförsök (Lai & Platzer 1999) går vaken på samma sätt över från motstånd till dragkraft först över en viss vingslagsfart.
- Ingen skarp stall. Vid låga Re rasar inte lyftet när vinkeln blir för stor. Det planar ut och fladdrar, och så beter sig både simuleringen och Kurtulus beräkning. En riktig flygplansvinge stallar tvärt: i NASA:s mätning faller CL från 1,61 till 1,00 vid 17–18°. Spelets stall är alltså av lågfartstyp.
7. Det som inte är realistiskt
- Allt är 2D. Vingen är oändligt lång och har inga vingspetsvirvlar, så det motstånd en riktig wingsuit får från spetsarna saknas.
- Seg luft (Re ≈ 300). Det kompenseras delvis enligt avsnitt 5.
- Trappstegsyta. Med 30 rutor per korda ändras krafterna när vingen flyttar sig en halv ruta, nära berget med upp till 31 % i lyft. I spelet syns det som ett litet darr i krafterna.
- Ljudfarten. Gitterluftens ljudfart är ≈ 5,8 gånger vindfarten (Mach 0,17). Det är ungefär som verklig luft vid 200 km/h, så tryckvågorna vid en krasch rör sig i rimlig takt jämfört med farten.
- Rena spelknep utan fysikalisk motsvarighet: backen på 18°, den lätta vingen, motvinden, dämpzonerna vid kanterna och tunneln som följer farkosten.
Slutsats
Strömningen i Boltzmann Flyer är riktig fysik: virvlar, Magnuseffekt och avlösning uppstår av sig själva och hamnar inom några procent till ett par tiotal procent från mätningar och referensberäkningar vid samma Reynoldstal. Det som skiljer spelet från ett flygplan är inte fysiken utan skalan. Spelet flyger i insektsskala, och de knep som gör att det ändå glider är redovisade ovan.
Källor
- Williamson, C.H.K. (1989). Oblique and parallel modes of vortex shedding in the wake of a circular cylinder at low Reynolds numbers. J. Fluid Mech. 206, 579–627. doi:10.1017/S0022112089002429 (experiment, St–Re)
- Tritton, D.J. (1959). Experiments on the flow past a circular cylinder at low Reynolds numbers. J. Fluid Mech. 6, 547–567. doi:10.1017/S0022112059000829 (experiment, CD)
- Coutanceau, M. & Bouard, R. (1977). Experimental determination of the main features of the viscous flow in the wake of a circular cylinder in uniform translation. Part 1. J. Fluid Mech. 79, 231–256. (experiment, virvelbubblans längd)
- Park, J., Kwon, K. & Choi, H. (1998). Numerical solutions of flow past a circular cylinder at Reynolds numbers up to 160. KSME Int. J. 12, 1200–1205. (2D-beräkning)
- 2D-referensvärden vid Re 200 enligt sammanställningen i arXiv:1803.09380, tabell 1.
- Kang, S., Choi, H. & Lee, S. (1999). Laminar flow past a rotating circular cylinder. Phys. Fluids 11, 3312. (2D-beräkning, Magnus)
- Kurtulus, D.F. (2015). On the unsteady behavior of the flow around NACA 0012 airfoil with steady external conditions at Re=1000. Int. J. Micro Air Vehicles 7(3), 301–326. doi:10.1260/1756-8293.7.3.301 (2D-beräkning)
- Huang, R.F., Wu, J.Y., Jeng, J.H. & Chen, R.C. (2001). Surface flow and vortex shedding of an impulsively started wing. J. Fluid Mech. 441, 265–292. (experiment i vattentank, NACA 0012)
- Suzuki, T., Ji, H. & Yamamoto, F. (2009). Unsteady PTV velocity field past an airfoil solved with DNS: Part 1. Exp. Fluids 47, 957–976. (mätning + simulering; värdet avläst ur Kurtulus fig. 4)
- Di Ilio, G., Chiappini, D., Ubertini, S., Bella, G. & Succi, S. (2020). Fluid flow around NACA 0012 airfoil at low-Reynolds numbers with hybrid lattice Boltzmann method. arXiv:2006.10487 (CD vid 0°, Re 1 000–10 000, jämfört med XFOIL)
- Ladson, C.L. (1988). Effects of independent variation of Mach and Reynolds numbers on the low-speed aerodynamic characteristics of the NACA 0012 airfoil section. NASA TM-4074. Data via NASA Turbulence Modeling Resource. (experiment, fullskala)
- Ahmed, M.R., Takasaki, T. & Kohama, Y. (2007). Aerodynamics of a NACA4412 airfoil in ground effect. AIAA J. 45(1), 37–47. doi:10.2514/1.23872 (experiment, markeffekt)
- Lai, J.C.S. & Platzer, M.F. (1999). Jet characteristics of a plunging airfoil. AIAA J. 37(12). doi:10.2514/2.641 (experiment, vingslag)
Testerna körde spelets egen kod, men spelet ändrades inte för dem. Rapporten skrevs i oktober 2026.
