[HN Gopher] Show HN:  Olelo Foil - NACA Airfoil Sim
       ___________________________________________________________________
        
       Show HN:  Olelo Foil - NACA Airfoil Sim
        
       Hi HN!  A while back, I started exploring ways to make aerodynamic
       simulation more interactive and visual for the web. I wanted
       something that felt immediate--intuitive enough for students, fast
       enough for hobbyists, and hackable enough for engineers. That's how
       Olelo Foil was born.  Foil is a browser-based airfoil simulator
       written in JavaScript using Three.js and WebGL. It lets you
       interactively explore how airfoils behave under different
       conditions, all rendered in real time. Right now, it uses
       simplified fluid models, but I'm working toward integrating Navier-
       Stokes for more accurate simulations--and I'd love help from anyone
       interested in fluid dynamics, GPU compute, or numerical solvers.
       I'm also building Olelo Honua, an educational platform focused on
       Hawaiian STEM content and digital tools. Foil is one piece of that
       larger vision--bringing STEM education into the browser with open,
       accessible tools.  Check it out, and if you're interested in
       collaborating (especially on the physics side), I'd love to
       connect!
        
       Author : rbrownmh
       Score  : 28 points
       Date   : 2025-05-20 16:44 UTC (6 hours ago)
        
 (HTM) web link (foil.olelohonua.com)
 (TXT) w3m dump (foil.olelohonua.com)
        
       | hbrav wrote:
       | I have a background in fluid dynamics and may be interested in
       | helping with this. Is there a way for me to contact you?
        
         | rbrownrw8 wrote:
         | Do you have Reddit by chance? Feel free to DM me
         | u/Creative_Walrus_5197
        
           | rbrownrw8 wrote:
           | (and I'll give you my email just want to avoid too much spam)
        
             | hbrav wrote:
             | I've sent you a message.
        
       | addaon wrote:
       | Unless you're planning to resolve the boundary layer and model
       | separation (good luck...), you'd probably be better off using
       | panel methods than NS. Look at XFoil or JavaFoil for available
       | implementations.
        
         | addaon wrote:
         | Also, it looks like you might have a bug in generating the
         | airfoil shape. An airfoil like the 8412, while extreme, is
         | well-defined and constructible from NACA-style combination of
         | thickness and camber forms; but you show it as having a "kink"
         | on the bottom surface, which is definitely not correct.
        
           | observationist wrote:
           | 841220 is interesting, if you want to see what a borg cube
           | aerodynamics might look like.
        
             | rbrownmh wrote:
             | LOL and it's also completely vertical
        
             | addaon wrote:
             | 841220 is, sadly, not a legal NACA airfoil designator.
             | 
             | There are three major families of procedurally-defined NACA
             | airfoils -- four-digit like the 2412, five-digit like the
             | 23012, and the 6-series like the 64A012.
             | 
             | It looks like this site only expects the four-digit form,
             | and is mis-parsing anything other than that -- which is a
             | pity, because one of the uses of a tool like this is to get
             | a sense of /why/ the 23012 is similar CLmax to the 2412,
             | but with lower moment and a more sudden stall. If nothing
             | else, input validation is necessary!
        
           | rbrownmh wrote:
           | Good catch - I'll look into fixing this. thanks!
        
             | addaon wrote:
             | Yep. If you're generating them yourself, you'll probably
             | want to be careful to follow the NACA method for combining
             | camber and thickness profiles -- basically, running a
             | circle of thickness-profile-defined diameter along the
             | camber line and unioning the areas. The alternative (which
             | is these days sometimes called the Riblett approach) is
             | just to define the airfoil as the camber line plus or minus
             | half the thickness vertically at each point -- which often
             | leads to better airfoils for many purposes, but will
             | disagree with available NACA data, especially w.r.t. nose
             | radius (and thus, critical angle for airfoils which stall
             | near the nose).
             | 
             | If the goal is to allow a user to compare the properties of
             | different airfoils, there's a lot to get right to make sure
             | they actually know what airfoils they're comparing. The
             | alternative is to allow airfoil selection from one of these
             | sites [1][2], which also allow a link to provide
             | comparative analysis.
             | 
             | [1] https://m-selig.ae.illinois.edu/ads/coord_database.html
             | [2] https://bigfoil.com/
        
         | rbrownmh wrote:
         | I just pushed an update using spalart-allmaras turbulence model
         | (somewhere in between NS and panel methods). Also updated the
         | controls to use arrow keys :)
        
       | ge96 wrote:
       | Oh damn that's trippy how you can move the camera haha I am the
       | airfoil
       | 
       | 0990 chonker
        
       | observationist wrote:
       | For those of us who didn't know what these were, you can specify
       | a 4 digit code that corrrelates with an airfoil shape, and here's
       | how it works.
       | 
       | http://airfoiltools.com/airfoil/naca4digit
        
       | rbrownmh wrote:
       | Figure I'd drop this here - some other projects I'm working on
       | currently:
       | 
       | Seafloor LOD (infinite terrain generator):
       | https://github.com/kanakawai-maui/seafloor-lod
       | 
       | Olelo Honua (free LLM-enabled translation tool):
       | https://www.olelohonua.com/
        
       ___________________________________________________________________
       (page generated 2025-05-20 23:01 UTC)