# \[ANN\] VortexStepMethod.jl Aerodynamic models of 3D wings using the Vortex Step Method

**URL:** <https://discourse.julialang.org/t/ann-vortexstepmethod-jl-aerodynamic-models-of-3d-wings-using-the-vortex-step-method/126442>\
**Category:** Package Announcements\
**Tags:** aerospace, modelling, aerodynamics\
**Created:** [March 1, 2025, 12:45am UTC](https://discourse.julialang.org/t/ann-vortexstepmethod-jl-aerodynamic-models-of-3d-wings-using-the-vortex-step-method/126442 "2025-03-01T00:45:59Z")\
**Posts on this page:** 5\
**Page:** 1

<div class="post-metadata">

**Author:** ![Bart\_van\_de\_Lint](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/bart_van_de_lint/32/212161_2.png) [@Bart\_van\_de\_Lint](https://discourse.julialang.org/u/Bart_van_de_Lint)\
**Post date:** [March 1, 2025, 12:45am UTC](https://discourse.julialang.org/t/ann-vortexstepmethod-jl-aerodynamic-models-of-3d-wings-using-the-vortex-step-method/126442/1 "2025-03-01T00:45:59Z")

</div>

The Vortex Step Method (VSM) is an enhanced lifting line method that improves upon the classic approach by solving the circulation system at the three-quarter chord position, among the most important details. This adjustment allows for more accurate calculations of lift and drag forces, particularly addressing the shortcomings in induced drag prediction. VSM is further refined by coupling it with 2D viscous airfoil polars, making it well-suited for complex geometries, including low aspect ratio wings, as well as configurations with sweep, dihedral, and anhedral angles.

The software presented [here](https://github.com/Albatross-Kite-Transport/VortexStepMethod.jl) includes a couple of examples: a rectangular wing, a leading-edge inflatable kite and a ram-air kite.

 ![Image](https://global.discourse-cdn.com/julialang/original/3X/8/4/8432824b4272b148b40a748502f463bb9f167e1a.png)

This package was translated from the Python code version 1.0.0 available at [GitHub - ocayon/Vortex-Step-Method: Vortex Step Method](https://github.com/ocayon/Vortex-Step-Method) with some extensions as documented in [News.md](https://github.com/Albatross-Kite-Transport/VortexStepMethod.jl/blob/main/NEWS.md).

The performance is very good. A call to `solve()` with a simple geometry needs only 600µs on a Ryzen 7950X, therefore it can be used for simulations running faster than realtime.

---

<div class="post-metadata">

**Author:** ![ufechner7](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/ufechner7/32/51363_2.png) [@ufechner7](https://discourse.julialang.org/u/ufechner7)\
**Post date:** [March 1, 2025, 12:56am UTC](https://discourse.julialang.org/t/ann-vortexstepmethod-jl-aerodynamic-models-of-3d-wings-using-the-vortex-step-method/126442/2 "2025-03-01T00:56:47Z")

</div>

Great work! Thanks for making this code, originally witten by Oriol Cayon and Jelle Poland from TU Delft in Python, available in Julia.

The documentation is available at: [Home · VortexStepMethod.jl](https://albatross-kite-transport.github.io/VortexStepMethod.jl/dev/)

---

<div class="post-metadata">

**Author:** ![Bart\_van\_de\_Lint](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/bart_van_de_lint/32/212161_2.png) [@Bart\_van\_de\_Lint](https://discourse.julialang.org/u/Bart_van_de_Lint)\
**Post date:** [March 1, 2025, 1:08am UTC](https://discourse.julialang.org/t/ann-vortexstepmethod-jl-aerodynamic-models-of-3d-wings-using-the-vortex-step-method/126442/3 "2025-03-01T01:08:37Z")

</div>

Thank you for helping me a lot with the development for the package!

---

<div class="post-metadata">

**Author:** ![franckgaga](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/franckgaga/32/218241_2.png) [@franckgaga](https://discourse.julialang.org/u/franckgaga)\
**Post date:** [March 1, 2025, 1:37am UTC](https://discourse.julialang.org/t/ann-vortexstepmethod-jl-aerodynamic-models-of-3d-wings-using-the-vortex-step-method/126442/4 "2025-03-01T01:37:32Z")

</div>

Impressive work! Does it use ModelingToolkit.jl for the implementation?

---

<div class="post-metadata">

**Author:** ![Bart\_van\_de\_Lint](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/bart_van_de_lint/32/212161_2.png) [@Bart\_van\_de\_Lint](https://discourse.julialang.org/u/Bart_van_de_Lint)\
**Post date:** [March 1, 2025, 1:50am UTC](https://discourse.julialang.org/t/ann-vortexstepmethod-jl-aerodynamic-models-of-3d-wings-using-the-vortex-step-method/126442/5 "2025-03-01T01:50:17Z")

</div>

Thanks! It doesn’t use ModelingToolkit: in order to make translating the python code to Julia easier, I stuck to the python source code as closely as possible, using structs instead of python classes.
