Fusion API and Scripts
Got a new add-in to share? Need something specialized to be scripted? Ask questions or share what you’ve discovered with the community.
Showing results for 
Show  only  | Search instead for 
Did you mean: 

Add-in announcement: Hydrofoil and Airfoil Tools. Seeking your feedback / ideas

Message 1 of 95
17497 Views, 94 Replies

Add-in announcement: Hydrofoil and Airfoil Tools. Seeking your feedback / ideas

My decade of work in water and airfoil optimisation is now a Fusion 360 Add-in.  To begin with, I'm supporting:


  • Wings (lifting foils) and Struts (low-drag symmetric foils)
  • Cowlings (low-drag shapes for the nose or tail of anything in a flow)
  • Propellers and Turbines, to be driven by a motor, or collect energy from flow
  • Ducts suitable for use as a Propeller or Turbine shroud.

The Add-in collects the necessary information about the scale, medium, power, and/or expected conditions from you, and parametrically inserts the ideal shape best-suited to your intended purpose.  "Ideal" is based on thousands of hours of CFD simulations and particle-swarm genetic optimisation for popular use cases, and typically out-performs legacy shapes (e.g. the best in the UIUC database by 10% to 100%, and all NACA shapes by 57% to 120%).  Also included are facilities to perform specific optimisations for your exact needs, along with a suite of other tools.


This forum posting is here to solicit user (or potential users) suggestions, feedback, and comments, and also for bug-reports a help and feedback forum for users.  For anything not suitable for public, I use gmail - my address is the same as my username on this forum - feel free to write to me directly.




IMPORTANT: If you need or work with airfoil or hydrofoil shapes, please have a think about what you would hope to see in this Add-in: as a programmer, it's vastly less expensive and time-consuming to accommodate future user cases from day one.  If you want something, and can't see that we already do it, now is your chance!  Let me know immediately, so I can be sure it's included in future.



The general operation is as follows:-

  • Select what you want (wing, strut, prop, turbine, cowl, or duct) - which also defines what "optimal" means (e.g. best L/D for wings, lowest drag for struts)
  • Decide where and how to place it (select points or lines in 2D, or paths and planes in 3D) which also defines the size and direction.  Chose an optional center-of-moment point to auto-position for ideal angle-of-attack (which differs as a function of use conditions)
  • Specify you medium (Air, Water, or other) and its property ranges (temperature, altitude, depth, salinity, turbulence)
  • Specify your operating conditions: i.e. Speed range and surface finish (rough or smooth)
  • Supply power details if relevant (input for propellers, or output for turbines)

The Add-in will insert foil points connected by spline or loft, and optionally also construction elements you can reference in your design (e.g. moment centers), parameter variables you might need to use, and reference polar diagrams and power charts etc that save with your project.


If you change your drawing (e.g. make a wing bigger), the new foil shape will be automatically re-computed and all data updated, so you can be sure that your design will always contains best-performing shapes no matter what you change.  e.g. Models and Full-scale built from the same Fusion 360 project should generally both "just work".


This is a project likely to remain under constant development.  Subscribe to this topic for updates.


Over to you!  Do you need something not yet thought of here?  Do you have a project you think this would be useful for?  


Please click "like" if you would use this tool - so I can get some idea of how many people I'm doing this for!

Message 2 of 95
in reply to: OceanHydroAU

p.s. I will post a link to the fusion app store for this when it's published there.  Meanwhile, anyone interested in beta-testing please let me know.

Message 3 of 95
in reply to: OceanHydroAU

Hi All!


Instructions for trying my first beta release are here:-  (works on Mac and Windows)




Only the "Create Wing or Strut" option for the Sketch environment is completed (every menu option points here right now).


This release includes an updater - when a new version is available, you'll find an "Update?" checkbox appear next time you create a new foil.


Please let me know your thoughts/comments/feedback.  I am working on tidying up the sketch insertion, and auto-rotating to the optimal angle-of-attack.  When that's done, I'll add a help screen, remove all the unfinished options, accommodate any feedback/requests you tell me about, and submit to the app store.


Pardon the rough edges - first-release rules apply 🙂


Tip: Give your foil a nickname - then you get all the information about it inserted into your user-parameters.




@jack.kellyRGP5Q / @shabbir.abdulhussein - you guys might like this?

Message 4 of 95

This is interesting.
I've been making a few RC submarines which are built to a relatively small scale 1:72, this is purely for fun and not commercially. So far I have a mix of prop styles, one is a pump jet, another a cold war soviet style 7 blade unit and I'm making a conversion set of parts for a model kit. All of this is mostly 3D printed though I'm possibly going to get a small 'hobby' 2.5D CNC cutter for some parts.
Obviously scaling down from a full size item doesn't work so I'm fairly convinced that the ones I've designed aren't optimal in the hull forms and the props most certainly aren't.
Given that maximising power efficiency is a good thing when you have limited battery power increasing the props/fans efficiencies is quite desirable.
The biggest prop I've done to date is 5 cm diameter and the blades are to put it mildly a little crude. How would your add-on manage at reduced scales?

Message 5 of 95

My add-on currently ships with 64 pre-optimised foil shapes from Re 50 through Re 100,000,000, so it will almost certainly manage to suggest the best shape for your design - but you will still need to do some design at this point!


After it inserts a foil shape, consult the "user parameter" section, where you will find the "lift" (CL) "drag" (CD) and minimum pressure (Cpmin) - you biggest CL and the smallest CD (highest thrust for lowest unwanted torque in your case) but without the Cpmin going so low that it causes cavitation.


Right now, my code inserts 2D foil shapes that are perfectly suited to your main design target.  I have a lot of features still to finish converting into Fusion 360 (this code is a decade or more of work that I'm busy making available for anyone to use in a modern format).  Once I am happy with the 2D part (I still need to tidy up the way it inserts, check that lofting works OK, and 101 other minor issues), my next goal is the 3D section - this will be where a designer plans a wing, and my code converts the whole thing into an airfoil.  After that is done, props and turbines come next, where I take my 3D wing solution, and apply it to a rotating frame of reference.  After that, ducts and shrouds and cowls - which are all just easy derivatives of the above.


So basically - to get a great prop shape right now, I've done the "hard part" of getting the right foil shapes for you, but you'd still have to do the part of turning those shapes into prop blades yourself.


From investigating the difference between foil performance at different Re's, it looks like you get better performance on a small scale propeller by operating it as fast as practical, but without cavitation - the higher the Re (which you get with more prop speed) the better Lift to Drag tradeoffs are possible, up to about Re 500,000 (My code is still working on optimizing shapes at higher Re's).


pic 2020-05-09 08.48.09_02.png

So basically, you'd need to work of the size and speed of a few sections of your prop blade (e.g. the hub, midpoint and tip, using 2*PI for how far they travel, and RPM for speed - like I did on this ceiling fan test: - you can use that as a starting-point - stick in the measurements and RPM, and it works all the speeds out for you - you need the speed to put into Airfoil Tools so it can work out the Re.).


Screen Shot 2020-05-09 at 9.00.17 am.png

Once you have the foil sections, you'll need to twist them appropriately (math - work out the water flow, so you can figure out the angle of attack) loft them into a blade, and repeat that around a hub.


On my "to do" list is a test rig for these things (small scale air (for models and ultralights) and water props (for models and personal water craft) is my main target goal for this code) - it's a large rotating platform with tons of force and pressure sensors and a very expensive motor that's going a stack of inbuilt measurement capability on it's own custom internal ESC).  My goal is to move from "CFD" (computational fluid dynamics") to something I'm calling "AFD" (*actual* fluid dynamics).  Maths gets us close, but there's nothing like the "Real thing" to close that final gap in top performance, and 3D printers today are perfect for making all this possible.


On that topic - you might find that a 3D printer is all you need?  Where are you based?  If you don't have a friend with one, maybe I can print and post some for you to try?


Just be sure to stay away from my Dad:

Message 6 of 95

I'm in the UK.

I've got a delta printer which makes most of my hulls and WTC parts, it's easier to design then dump a print file than take a cap design to the lathe. Iterations are ever so much easier too.
At the moment I'm only going down to 0.4mm on layer heights though with a smaller nozzle I could probably halve that which would be worthwhile if I needed the resolution on smaller shapes.
Odd one on the video link... I might soon have an ex torp screw, a patient said he had one that he didn't want and was going to drop it in to me. Not sure what it's from, maybe a Mk48 or Spearfish. Nice if it happens but it'll be a bit big for anything I might have, might suit your father though as he seems to be going after big ships 😉

Message 7 of 95

If possible a tool that creates rounded wingtips easily, i was having trouble trying to design rounded wingtips for an aluminum foil mold I was going to get cnc machined 

Message 8 of 95

Good idea!  I noticed when I used fillet on mine that I got some strange artifacts.


What kind of wingtips were you interested in?  I'm guessing just nice rounded ones?  Would a "rounded loft" work for you, if a sensible 3D chord-center-line was added to the end which the loft can then join in a shape from the top surface to the under-surface through that line? (and I feel your pain - I just tried to do a manual demo, and it didn't go well...)


Wingtips are very interesting in their own right - the high-pressure underflow wants to escape around the end to the low pressure top flow, and in so doing creates loss-inducing vorticies.


What is your application? (model, full-size, wing, prop, air/water ... ?)  I'm planning for my test rig to investigate that specific aspect so I can recommend "ideal winglets" to folk seeking every scrap of efficiency out of their builds...

Message 9 of 95

I design and build hydrofoils, mostly for foiling windsurfers, kitefoil,
surf foil, and wakefoiling foils. Im also doing some scale model r&d
testing different designs for a 45’ production foiling powerboat.
I can’t seem to figure out how to create/design rounded wingtips for my
production foils, for example a wingtip like on elliptical wings like on a
p-51 airplane has
Right now I’m basically just lofting the airfoils together in an attempt to
get close to what I’m looking for and then once I build them in molds I
sand the wing tips a little so their user friendly and don’t have any sharp
Message 10 of 95

Matthew had an idea awesome (and easy) enough that I just added it right in...


Screen Shot 2020-05-21 at 1.50.38 pm.png


It's pretty slow (takes about 2 minutes) and inserts a bunch of ellipses (now there's a word you don't use every day):

Screen Shot 2020-05-21 at 1.54.14 pm.png


Which you can then loft:

Screen Shot 2020-05-21 at 1.48.30 pm.png


Here's a screencast showing how to do that:-


Let me know if you want this right now, and I'll do a new release for you.  I'm currently tidying up assorted odds and ends (spelling, "coming soon" placeholders, demo screenshots ...) and about to do some videos, then I'll submit this to the fusion add-in gallery.

Tags (1)
Message 11 of 95

Wow that is so awesome!!! Can’t believe you created that tool so quick!!!
Message 12 of 95

I already had code inserting spine points - sticking ellipses on them was just a few extra lines.


Producing shapes which have varying chords, like elliptical ends, is a very interesting topic.  It's planned for my second release (release 1 creates 2D airfoil/hydrofoil sketch shapes, release 2 will create 3D wings from planar and non-planar faces.  e.g. draw the "shadow outline" of any wing "as seen from above", and my code will turn it into a wing.  Bend it if you like, and my code will still work (even into a full circle - which would then make a shroud or duct...).


Back to the topic - we have 2 interesting things:

a) varying chords, and 

b) ends


As you reduce the chord, you change the effective Reynolds number, thus you need an alternate foil shape to continue performing optimally in this new flow situation.


As you near the end on a lifting surface (or tip on a propeller), the high pressure underflow wants to escape around the end to the low pressure top surface.  This produces "negative lift" (or backwards thrust in a prop).  Hold a bit of string near the tip of a propeller (watch your fingers!) and see it pointing the wrong way for example.  It also produces vorticies which create a great amount of drag. 


Now - *combine* those two things, and you can see it gets complicated.  On the one hand, you want best lift for least drag, and on the other hand, you want to reduce the vorticies...


The optimal answer is seen on jet liners: winglets. When that's not possible, the optimal trade-off is going to be some combination of wing lengthening (lower load and room on ends for non-lifting parts to act as in-line winglets), *lowered* tip lift (no lift = no vortex), and wing shape (so the trailing edge discourages the vorticies, refer Bernoulli effects) all of which are going to be mathematically linked to the loading...  I've got some fun math and experimentation ahead of me 🙂


Meanwhile - I've added a major-axis control to the endcap, so you can have big ones...

Screen Shot 2020-05-21 at 7.30.14 pm.png

Message 13 of 95
in reply to: OceanHydroAU

I have today submitted the first production release into the Fusion 360 app store - it should take about 2 weeks for approval I'm told.  If you really can't wait, A direct-download .zip for Mac and windows is also on my website.


I've done some meta-analysis on the results of my particle-swarm optimizer which myself and other die-hard optimization freaks might appreciate knowing - as you may know, I've had 180 CPU cores across many (expensive) machines working full-time on this since Covid-19 imprisoned me at home (and also fewer cores, not always full-time, since 2012 too).  I optimized for Reynolds Numbers from 50 to 100,000,000 - so I am now able to plot the CL/CD for all of the best-performing foils that my code has "birthed" (it's a genetic optimizer):-


pic 2020-06-04 14.38.38_14.png


Which basically points to there being a "sweet spot" at around Re 7,000,000.  What this basically means in laymans terms, is that if you are (like me) working on designing an underwater turbine to harness ocean currents, you'll want a root chord length of about 3 meters designed to turn at about 4 knots to extract the most possible energy with the least annoying torque-effect from the current.


Or, more generally, you want "longer chords" and "faster speeds" whenever you can, to try and get that Reynolds number up as much as practical, since you can see in the chart - the performance efficiency line just gets better and better as you go higher (maxing out from Re 7M).

Message 14 of 95
in reply to: OceanHydroAU

I'm building what I've called "the impossible trinket" - it's a desktop toy, which, when you blow on it, comes towards you.  It's based on the DUWFTTW technology.


Here's a screenshot - it's not in the release I sent to the Fusion App store,but if anyone wants to play with it, let me know and I'll do a next-release zip to play with.


Screen Shot 2020-06-08 at 4.58.43 am.png

It basically selects the perfect airfoil shapes for each section from the hub to the tip, angles them all into their best-performing attack added to the correct incoming attack for the wind speed and RPM, while also "Wrapping" them appropriately based on their distance from the center.  There's some extra smarts to keep a constant Re if you want (as much as possible, from the point you select and outwards), which should improve performance owing to the resulting uniform exit pressure along the trailling edge.

Message 15 of 95
in reply to: OceanHydroAU

Version 1.2 is now live in the Fusion 360 App Store!


Get it for Windows here.

Get it for Mac here.

Message 16 of 95
in reply to: OceanHydroAU

Thanks and congrats to the 21 of you who downloaded my Add-in on the first day of release!  I hope all my hard work helps you smash some goals!!


Here's what the next update will (or does-already!) contain:-


Equi-spaced control points


The foils that ship with my code are the results of particle-swarm optimisation - this is when millions of tiny adjustments are made (AI term: "gradient descent") to each control point in the foil's spline geometry in the mathematical quest to find maximum lift for minimum drag.  This always ends up with control points in random "not-nicely-spaced" locations - which is fine for an individual airfoil or hydrofoil, but when two or more foils get used (e.g. along the span of a tapered wing, or on propeller/turbine blades) none of the points "line up" (other than the nose and tail) which makes for difficult and ugly rails when trying to loft them.


equi-spaced control pointsequi-spaced control points

Top is the new control-point method.  Bottom is the old.


My code now measures the circumferential length from the tail to the nose (top and bottom separately) and then uses exponential spacing to place the control points (more at the nose) so all points are now in predictable locations for all foils, making those lofts much more pretty.


Minimum thickness


Both Cura and Simplify3D are brain-dead when it comes to printing "thin walls" - they both can do this, however, they both select tool paths which make no sense - printing the thin-walls in a different pass to the main object, which results in poor adhesion and ugly crease lines on your wings and raggedy trailing edges.  I've now added a min-thickness option (I recommend for FFF you use your nozzle size here):

Screen Shot 2020-07-16 at 10.19.53 am.png

Which adds "blunt ends" to your foils:-

Screen Shot 2020-07-16 at 10.22.08 am.png


Ducted Turbines


I've introduced an internal concept of "Strategy" for turbine production, with one of those being "ducted".  When a turbine does not need to worry about tip-loss conditions, we have the luxury of being able to expand the chord to rapidly approach the most ideal foil section for the selected flow regime - which results in solutions that look like this:-

Screen Shot 2020-07-10 at 11.43.31 pm.pngScreen Shot 2020-07-09 at 5.14.17 pm.png

(That's a 40cm water turbine for a 1m/s flow).  The above strategy seeks to maximise the L/D without exceeding the user-supplied maximum axis-chord - in other words - we use longer foils as we reach the outer sides, because the necessary twist gives us the room to do that.


The non-ducted version produces turbines that look a lot like normal wind turbines.  This strategy slightly tapers the foil section cords outwards from the hub, until the 40% section, and from that point outwards it keeps the reynolds-number identical for the rest of the blade by calculating the necessary chord for the computed rotational+input wind velocity.

Screen Shot 2020-07-16 at 10.39.28 am.png20200609_094735.jpg


In both cases, the trailing edges are always straight lines (to minimise wake turbulence) which also means you can arrange multiple blades edge-to-edge so they can all be printed at once, and they support each other in so doing (you just need to cut them apart at the end - a hot-wire works beautifully).

Screen Shot 2020-07-16 at 10.46.53 am.png


Ideal Angle of Attack over differing speeds/sizes


Over about the last 8 years, I've been progressively improving my particle-swarm optimisation process; and the included database consists of 768 laboriously-discovered shapes best suited for an exponential range of Reynolds-Numbers from 50 through 100000000.  I gave my particles free-reign to find the best, without constraining them to any particular angle-of-attack (AoA).  If you graph all the AoAs they use against Reynolds number (Re) - it looks like this:-

Screen Shot 2020-07-16 at 10.32.10 am.png

Up until now, the raggedyness of those numbers didn't concern me.  I figured - just orient the foil the way it says, and you get the best - easy.  That's great, until you need to loft differing Re's beside one-another.

Screen Shot 2020-07-16 at 10.56.10 am.png

Things start to get lumpy, fast.  That probably doesn't have too much of a bad effect on performance, but it doesn't look pretty.  I've done my best to create a function that will vary AoA based on Re, and I've just embarked on a new particle-swarm journey to produce an entirely new replacement foil database of optimised shapes, except this time their AoA is constrained to "very close" to what the previous particle-swarms decided were "best".  The new inter-foil AoA relationships, now being based on a nice function (the black line above) will now produce ideal foils which, when lofted to each other, no longer have bumpy noses.


Random Thoughts


Use the Vote option in my UI if you need me to concentrate my efforts in a particular area.


I'm considering adding a "settings" page, so you can control things like the output I place into the text-commands window, whether or not to cache-settings between windows, default minimum thickness settings, and other future things.


The process of linking my binary solver into Python, so that I can insert polar performance charts, pressure distributions, and other data about the foil sections in use is complicated - but I'm on it.  When completed, you'll have a "mini CFD" (2d only at this point) built right in!  I'm planning to insert this data like "signposts" - when you look at your foil in your design, it will have a (hideable) data section connected, showing all the vitals you could need.


I've converted my particle system into a client-server process, making it possible for people with lots of CPU resources available to easily conscript all that waste power into an army of solution-finders.  I've got almost 200 high-power cores myself, but I still have to wait months for big runs - with more cores, specific optimisations that anyone might need could be reduced down to days.


And more... my to-do list is enormous.



Tags (2)
Message 17 of 95
in reply to: OceanHydroAU

This plane flies at 460mph and uses 1/8th the fuel of a competing aircraft.


Here's the shape AirFoil tools suggests for that application, with photos of the actual plane below to compare.




Even the dimple at the end is an exact match 🙂

Tags (1)
Message 18 of 95
in reply to: OceanHydroAU

This is tremendous progress. Please keep up the amazing work. We are really thrilled to have this new tool for the development of tethered wind turbines. We will be flying designs with big 2+ meter wings based on Airfoil Tools very soon. 


Regarding thin wall 3D printing problems, we ran into the issue you described with thin walls in Simplify3D when printing these airfoils. We couldn't find any built in features in the software to nicely resolve it. The new minimum thickness feature you are adding is exactly what is needed. 


The equi-spaced control points will also be helpful for having nicer lofts on the wing tips. We aren't using rounded edges at the moment on our prints, but we likely will in the future. 

One thing we noticed when doing big 3D prints on the airfoils (up to 0.8 meter chord length, 1.2 meter halfspan) is that we get straight lines between the control points rather than smooth curves. In the Python code, I changed the line "(splinex,spliney)=jspline(2,0,0,1,points_to_xy(xy))" to "(splinex,spliney)=jspline(10,0,0,1,points_to_xy(xy))" to increase the number of interpolated points and now the prints have nice smooth edges.

Regarding our vote for features, the number one thing that we would like to vote for us is having the polars for each airfoil for importing into flight simulators like X-Plane. In that case, X-Plane needs "alpha cl cd cm" at 1 .0 degree increments from -180.0 <= alpha < -20.0 and 20.0 <= alpha <= 180.0 degrees, and 0.1 degree increments from -20.0 <= alpha <= 20 degrees for their "X-Plane Airfoil Maker" .afl airfoil format. There can be multiple of these tables for different Reynolds numbers. Your 'mini CFD' tool sounds awesome and we hope it will make it easier for us to generate the airfoil files for simulators like X-Plane. 

Finally, we do have a few CPU cores available to help with the optimization and it would be great to contribute to this tremendous project once that is available.

What you are doing is already having a big positive impact on our electricity generation non-profit (FlyJus™). The electricity produced is proportional to lift coefficient cubed over drag coefficient squared, so your optimized airfoils are very important for us. THANK YOU!

Message 19 of 95
in reply to: maccleery

It's great to hear what you're working on!!  I've made an interim release here: which has assorted goodies added in (min thickness, a range of bugs fixed, equi-spacing, and turbines).  It works fine - although there's a cosmetic bug that's proving difficult to swat - it's inserting the turbines in a direction different to the one you selected (no big deal - just go with it) - I've printed both free-tip wind turbines and ducted hydro ones, and they work spectacularly.  


If you're using that feature, make the axis-chord a vertical line on the YX plane, and put the tip out to the bottom right, and you'll need to use the SURFACE features to loft and patch to turn it into a solid (turbines go in circles, so the sections are "bent" appropriately, but the solid workspace only lofts flat things.)


My solver runs well on mac and linux, but building a windows version is tricky - I do plan to try and compile it on that platform, but it's another ton of work, so don't hold your breath on that one!!  I have however half-done a web service version so the detailed analysis you're after will be available for everyone (perhaps with a minute or two wait for that to run though).


I'm at the point where I have to try and work out how to put all that info into an easy-to-understand output - I got upto here (below) before deciding a re-do-from-start is needed - I'd added 4 out of about a dozen sets of info, and it was already unreadable...


Message 20 of 95
in reply to: OceanHydroAU

This is very interesting!

Where do I find the .dat files with all the L/D vs angle of attack generated when I create an airfoil in my sketch?

Can't find what you're looking for? Ask the community or share your knowledge.

Post to forums  

Autodesk DevCon in Munich May 28-29th

Autodesk Design & Make Report