FLOWUnsteady
An interactional aerodynamics and acoustics solver for multirotor aircraft and wind energy.
https://github.com/byuflowlab/FLOWUnsteady
Category: Renewable Energy
Sub Category: Wind Energy
Keywords
acoustics aeroacoustics aerodynamics aircraft cfd computational-fluid-dynamics rotorcraft vortex-methods vpm vtol wind-turbine
Keywords from Contributors
airfoil xfoil
Last synced: 32 minutes ago
JSON representation
Repository metadata
An interactional aerodynamics and acoustics solver for multirotor aircraft and wind energy
- Host: GitHub
- URL: https://github.com/byuflowlab/FLOWUnsteady
- Owner: byuflowlab
- License: mit
- Created: 2019-09-30T19:55:38.000Z (over 5 years ago)
- Default Branch: master
- Last Pushed: 2025-03-18T22:53:47.000Z (about 1 month ago)
- Last Synced: 2025-04-25T13:45:09.363Z (2 days ago)
- Topics: acoustics, aeroacoustics, aerodynamics, aircraft, cfd, computational-fluid-dynamics, rotorcraft, vortex-methods, vpm, vtol, wind-turbine
- Language: Julia
- Homepage: https://flow.byu.edu/FLOWUnsteady/
- Size: 156 MB
- Stars: 290
- Watchers: 26
- Forks: 78
- Open Issues: 35
- Releases: 10
-
Metadata Files:
- Readme: README.md
- License: LICENSE
README.md
FLOWUnsteady is an open-source variable-fidelity framework for unsteady
aerodynamics and aeroacoustics based on the
reformulated vortex particle method
(rVPM).
This suite brings together various tools developed by the
FLOW Lab at Brigham Young University: Vortex lattice
method, strip theory, blade elements, 3D panel method, and rVPM.
The suite also integrates an FW-H solver and a BPM code for tonal
and broadband prediction of aeroacoustic noise.
In the low end of fidelity, simulations are similar to a free-wake method,
while in the high end simulations become meshless large eddy simulations.
- Documentation: flow.byu.edu/FLOWUnsteady
- Code: github.com/byuflowlab/FLOWUnsteady
What is the Reformulated VPM?
The reformulated VPM is a meshless
CFD method solving the LES-filtered incompressible Navier-Stokes equations in
their vorticity form,
The rVPM uses particles to discretize the Navier-Stokes equations, with the
particles representing radial basis functions that construct a continuous
vorticity/velocity field. The basis functions become the LES filter, providing a
variable filter width and spatial adaptation as the particles are convected and
stretched by the velocity field. The local evolution of the filter width
provides an extra degree of freedom to reinforce conservation laws, which makes
the reformulated VPM numerically stable (overcoming the numerical issues that
plague the classic VPM).
This meshless LES has several advantages over conventional mesh-based CFD.
In the absence of a mesh,
- the rVPM does not suffer from the numerical dissipation introduced by a mesh
- integrates over coarser discretizations without losing physical accuracy
- derivatives are calculated analytically rather than approximated through a stencil.
Furthermore, rVPM is highly efficient since it uses computational elements only
where there is vorticity (rather than meshing the entire space), usually being ~100x
faster than conventional mesh-based LES with comparable accuracy.
While rVPM is well suited for resolving unbounded flows (wakes), complications
arise when attempting to impose boundary conditions (solid boundaries) on the flow.
This is because (1) the method is meshless, and (2) boundary conditions must
be imposed on the Navier-Stokes equations in the form of vorticity.
FLOWUnsteady is a framework designed to introduce solid boundaries into the rVPM
using actuator models.
Wings and rotors are introduced in the computational domain through actuator
line and surface models that use low-fidelity aerodynamic methods
(e.g., VLM, lifting line,
panels, etc) to compute forces and embed the associated
vorticity back into the LES domain.
Variable Fidelity
rVPM considerably reduces engineering time by avoiding the hurdles of mesh
generation. Furthermore, since it is not limited by the time-step and stability
constraints of conventional mesh-based CFD, rVPM can be used across all levels
of fidelity, all in the same framework by simply coarsening or refining the
simulation.
In the low end of fidelity, simulations are similar to a free-wake method,
while in the high end simulations become meshless large eddy simulations.
Thus, FLOWUnsteady can be used as a high-fidelity tool that is orders of
magnitude faster than mesh-based CFD, or as a variable-fidelity tool for
the different stages of design.
Capabilities
Simulation:
Tilting wings and rotors
• Rotors with variable RPM and variable pitch
• Asymmetric and stacked rotors
• Maneuvering vehicle with prescribed kinematicsrVPM Solver:
Fast-multipole acceleration through ExaFMM
• CPU parallelization through OpenMP
• Second-order spatial accuracy and third-order RK time integration
• Numerically stable by reshaping particles subject to vortex stretching
• Subfilter-scale (SFS) model of turbulence associated to vortex stretching
• SFS model coefficient computed dynamically or prescribed
• Viscous diffusion through core spreadingWing Models:
Actuator line model through lifting line + VLM
• Actuator surface model through vortex sheet + VLM
• Parasitic drag through airfoil lookup tablesRotor Model:
Actuator line model through blade elements
• Airfoil lookup tables automatically generated through XFOIL
• Aeroacoustic noise through FW-H (PSU-WOPWOP) and BPMGeometry:
Simple lofts and bodies of revolution through FLOWUnsteady
• Import complex geometry from OpenVSPUnder development (🤞coming soon):
Advanced actuator surface models through 3D panel method (for ducts, wings, and fuselage)
• Unstructured surface grids
• Bluff bodies through vortex sheet methodLimitations:
Viscous drag and separation is only captured through airfoil lookup tables, without attempting to shed separation wakes
• Incompressible flow only (though wave drag can be captured through airfoil lookup tables)
• CPU parallelization through OpenMP without support for distributed memory (no MPI, i.e., only single-node runs)Coded in the Julia language for Linux, MacOS, and Windows WSL.
More about the models inside FLOWUnsteady:
Selected Publications
See the following publications for an in-depth dive into the theory and validation:
- E. J. Alvarez, J. Mehr, & A. Ning (2022), "FLOWUnsteady: An Interactional Aerodynamics Solver for Multirotor Aircraft and Wind Energy," AIAA AVIATION Forum. [VIDEO] [PDF]
- E. J. Alvarez (2022), "Reformulated Vortex Particle Method and Meshless Large Eddy Simulation of Multirotor Aircraft.," Doctoral Dissertation, Brigham Young University. [VIDEO] [PDF]
- E. J. Alvarez & A. Ning (2023), "Stable Vortex Particle Method Formulation for Meshless Large-Eddy Simulation," AIAA Journal. [PDF]
Examples and Tutorials
Propeller: [Tutorial] [Validation]
Rotor in Hover: [Tutorial] [Validation]
Blown Wing: [Tutorial] [Validation]
Ducted Fan: [Slides]
Airborne-Wind-Energy Aircraft: [Video]
eVTOL Transition: [Tutorial]
Mid-fidelity
High-fidelity
Aeroacoustic Noise: [Tutorial] [Validation]
Sponsors
About
FLOWUnsteady is an open-source project jointly led by the
FLOW Lab at Brigham Young University and
Whisper Aero.
All contributions are welcome.
If you find FLOWUnsteady useful in your work, we kindly request that you cite the following paper [URL] [PDF]:
Alvarez, E. J., Mehr, J., and Ning, A., “FLOWUnsteady: An Interactional Aerodynamics Solver for Multirotor Aircraft and Wind Energy,” AIAA AVIATION 2022 Forum, Chicago, IL, 2022. DOI:10.2514/6.2022-3218.
If you were to encounter any issues or have questions, please first read through
the documentation, open/closed
issues,
and the discussion forum.
If the issue still persists, please participate in
the discussion forum
and/or open a new issue.
- Developers/contributors : Eduardo J. Alvarez (main), Cibin Joseph, Judd Mehr, Ryan Anderson, Eric Green
- Created : Sep 2017
- License : MIT License
Owner metadata
- Name: BYU FLOW Lab
- Login: byuflowlab
- Email:
- Kind: organization
- Description: FLight, Optimization, and Wind
- Website: http://flow.byu.edu
- Location: Provo, UT
- Twitter:
- Company:
- Icon url: https://avatars.githubusercontent.com/u/10734941?v=4
- Repositories: 94
- Last ynced at: 2024-04-01T07:46:20.177Z
- Profile URL: https://github.com/byuflowlab
GitHub Events
Total
- Create event: 3
- Release event: 1
- Issues event: 12
- Watch event: 28
- Delete event: 1
- Member event: 1
- Issue comment event: 11
- Push event: 20
- Pull request event: 6
- Fork event: 7
Last Year
- Create event: 3
- Release event: 1
- Issues event: 12
- Watch event: 28
- Delete event: 1
- Member event: 1
- Issue comment event: 11
- Push event: 20
- Pull request event: 6
- Fork event: 7
Committers metadata
Last synced: 6 days ago
Total Commits: 770
Total Committers: 8
Avg Commits per committer: 96.25
Development Distribution Score (DDS): 0.336
Commits in past year: 13
Committers in past year: 1
Avg Commits per committer in past year: 13.0
Development Distribution Score (DDS) in past year: 0.0
Name | Commits | |
---|---|---|
EdoAlvarezR | E****R@g****m | 511 |
Judd Mehr | j****r@g****m | 204 |
cardoza2 | a****m@c****e | 24 |
cibinjoseph | c****2@g****m | 22 |
rymanderson | r****n@g****m | 5 |
Eric-P-Green | 8****n | 2 |
dcaprace | d****e@b****u | 1 |
Kevin Moore | m****1@g****m | 1 |
Committer domains:
- byu.edu: 1
- cardoza.one: 1
Issue and Pull Request metadata
Last synced: 1 day ago
Total issues: 117
Total pull requests: 31
Average time to close issues: about 1 month
Average time to close pull requests: 25 days
Total issue authors: 49
Total pull request authors: 8
Average comments per issue: 2.52
Average comments per pull request: 0.16
Merged pull request: 21
Bot issues: 0
Bot pull requests: 6
Past year issues: 28
Past year pull requests: 5
Past year average time to close issues: about 1 month
Past year average time to close pull requests: 13 minutes
Past year issue authors: 14
Past year pull request authors: 2
Past year average comments per issue: 1.07
Past year average comments per pull request: 0.2
Past year merged pull request: 3
Past year bot issues: 0
Past year bot pull requests: 0
Top Issue Authors
- juddmehr (15)
- NM1293 (10)
- inse0918 (9)
- AndreaRapi (7)
- philippmandl (6)
- Ajaykrishna0703 (4)
- tylercritchfield (4)
- christianhauschel (4)
- Liuhaosheng1 (4)
- sakurakikiki (3)
- MarcoPic99 (3)
- cibinjoseph (3)
- jackyw123 (2)
- Cardoza2 (2)
- wjsjtu123 (2)
Top Pull Request Authors
- EdoAlvarezR (12)
- github-actions[bot] (6)
- cibinjoseph (5)
- timothyharlow-hub (3)
- Eric-P-Green (2)
- juddmehr (1)
- catchhead (1)
- DGCaprace (1)
Top Issue Labels
- documentation (18)
- enhancement (4)
- help wanted (1)
Top Pull Request Labels
Dependencies
- JuliaRegistries/TagBot v1 composite
- actions/checkout v2 composite
- julia-actions/setup-julia latest composite
Score: 7.8632667240095735