The following code is an interactive airfoil generation tool. It uses conformal mapping of a circle to an airfoil via a Von Mises Transform. The underlying equations are based on a potential flow model, therefore all results assume inviscid, irrotational, incompressible flow. By shifting the center of the circle and the poles, unique airfoil shapes can be achieved. The airfoil shape, lift coefficient, and pressure/velocity distributions are updated in realtime.
To generate an airfoil using VonMisesDesign perform the following steps:
-
Run the VonMisesDesign.py file
-
Drag the red dot in the center of the circle to the desired position.
- With only two poles (represented by black dots), this represents a Joukowsky airfoil
- For the airfoil to be physically valid, the X coordinate of the circle center must be negative
- For the airfoil to be physically valid, all poles must be within the circle
-
For additional control over the geometry, click the Add Pole button
- Additional poles will appear at (0,0). They can be dragged to a different value as desired
- Manipulating a single pole will cause other poles to shift to ensure the sum of all poles is (0,0)
-
To remove a pole, click the Remove Pole button
- Removing a pole will cause all remaining poles to reset their positions
-
Adjust angle of attack using the slider at the bottom
-
Toggle between pressure and velocity distribution display using the buttons on the right
-
To save a file, click Create Save File. The terminal will prompt the user for a filename
- Note: When saving a file, do not include an extension in the filename prompt
-
To load a file, click Load Save File. The terminal will prompt the user for a filename
- Note: When loading a file, the file extension must be included in the filename
-
To export the airfoil as a set of coordinates, click Export DAT File. The terminal will prompt the user for a filename and an airfoil name
- Note: When exporting a file, do not include an extension in the filename prompt
Download or Clone this repository
To run this program locally, python must be first be installed on your computer. It can be downloaded from here: Python
To run this program locally, the following dependencies are required:
- matplotlib
- To install, run "pip install matplotlib" in command prompt
- numpy
- To install, run "pip install numpy" in command prompt
- pandas
- To install, run "pip install pandas" in command prompt
Once all dependencies are installed, you can now run VonMisesDesign
- In command prompt, navigate to the folder containing VonMisesDesign.py
- Run the program by typing "python VonMisesDesign.py"
OR
- In file explorer, navigate to the folder containing VonMisesDesign.py
- Run the program by right clicking VonMisesDesign.py and select "Open With" > "Python"
OR
- Run VonMisesDesign.py in the code editor of your choice.