To create fundamental elements of modern power and transport plants (turbine blades, compressors, fans; aircraft wings, ship propellers) wing profiles are used. The most famous type of such a profile is the aerodynamic profile of Zhukovsky, on which lifting force is created during the design mode of its flow. Multivariable calculation of Zhukovsky's profile is a rather time-consuming task that needs to use automation tools.The purpose of the described work is to develop a software product that allows you to quickly calculate the Zhukovsky wing aerodynamic profile with a different set of initial data. Based on the results of the calculation, graphic dependencies of the coordinates of the generatrix of the profile, the distribution of speeds and pressures along the contour of the generatrix, as well as the dependence of the lifting force on the angle of attack should be built.The features of the code of the created Python program are described, as well as the libraries of additional functions used when writing it. The conclusion lists the recommended areas of application of the software product obtained during the work, as well as a plan for continuing the study of the problem of airflow of aerodynamic profiles.

1. Introduction

In modern aviation and power engineering, wing profiles have become extremely widespread, and the efficiency of these technical facilities directly depends on the aerodynamic characteristics of the profiled elements [1]. Therefore, optimizing the parameters of wing profiles is a very important and at the same time difficult task that imposes special requirements for the knowledge of design engineers in the field of aerodynamics. Even a slight difference in the shapes of the profiles can lead to a significant change in their aerodynamic characteristics [2].

Russian scientist N.E. Zhukovsky is one of the founders of wing theory - it was he who theoretically substantiated the methodology of its rational design and cited dependencies in his works to determine the shapes and basic characteristics of aerodynamic profiles [3].

Zhukovsky's wing profile is a theoretical type of profile with a rounded front and sharp rear edges. The method for geometric construction of Zhukovsky profile is conformal mapping of two touching circles [4]. To build it, it is enough to set three parameters, varying which, you can get different shapes and, accordingly, aerodynamic characteristics. The main design characteristics of the considered type of profile are the distribution of velocities and pressures on its back (convex side) and on the trough (concave side), as well as the value of the lifting force created by the flow approaching the profile [5]. Field experiments confirmed the accuracy of the theoretical calculation method derived by Zhukovsky, which is sufficient for the sketch design of profiles, even without taking into account the influence of secondary factors (for example, surface roughness of the profile [6]).

Hence, we can conclude that the study of the flow around the theoretical profile of Zhukovsky is a very important task, requiring, however, special competencies. Optimizing the shape of the wing profile requires a lot of calculations, which in practice it is advisable to carry out using special software products.

The work described in the article is devoted to the development of a methodology for computer-aided design of the Zhukovsky profile according to given theoretical dependencies. To develop a computer program, the freely distributed and most popular Python language at the moment was used [7]. It allows you to determine the coordinates of the generatrix of the profile and its characteristics with the specified source data, and display them graphically. You can also show the influence of the input factors on the profile parameters - as an example, for one of the possible profiles, the influence of the flow angle (angle of attack) on the lift force value was studied.

2. Methods and principles of research

To create a software product in Python, a calculation technique based on Zhukovsky's wing theory was used [8].

Let's consider a set of operations sequentially prescribed in the created program code:

1. Import additional modules:

- Math for determining mathematical (in particular, trigonometric) functions;

- Matplotlib.Pyplot for visualization of performed calculations [9];

- Kivy to create a modern user interface;

- Sys to work out system events (in particular, to close the application).

2. The window user interface creation unit shown in Figure 1.

User interface of the program for calculating Zhukovsky profiles

Using the functions of the Kivy library, you set the window size and background color, create and determine the locations of widgets:

- image of the wing profile with indication of geometric and other characteristics used in calculations;

- text labels;

- input fields of source data;

- program buttons with the purpose of events (execution of certain functions when pressed).

3. A block for filling text fields with values of source data for calculating an example that also uses commands from the Kivy module. Data is entered in text fields when you click the «Insert default values» button.

4. Unit for obtaining user input data from text fields when clicking on the «Calculate profile» button: radius of conformal mapping of the first circle R1, relative bending of profile h/R1, relative radius increment for the second circle ε/R, angle of inflow (angle of attack) α [10] (Fig. 1).

5. Calculation of the geometric parameters shown in Figure 1 that are independent of the ω conformal mapping angle (profile traversal angle).

6. Creation of empty arrays, for further filling them with calculation results at different ω angles - entry of x and y coordinates into them, as well as values of velocities of the incoming flow (relative to the speed V0 of the incoming flow) V/V0 and values of pressures on the profile (relative to the pressure of the incoming flow).

7. Determination of the main, cyclically executed function of the program designed to calculate the coordinates of the profile, relative velocities and pressures when changing ω angle from 0 to 360° and filling the arrays created in claim 6 with the obtained values.

8. Visualization of calculation results using the functions of the Matplotlib.Pyplot module by generating four graphs:

- dependence of the coordinate of the profile y on the coordinate x for the back and for the trough (drawing the contour of the generatrix of the Zhukovsky profile);

- dependence of the relative velocity of the flow V/V0 through the profile on the x coordinate also for the backrest and for the trough;

- dependence of relative pressure on the back and on the trough on the x coordinate;

- dependence of lifting force P on the angle of attack α changing from -90° up to 90°, arising because of the stream having density ρ running with a speed V0.

9. Create a function to close the program window when you click the «Exit» button.

3. Main results

The following values (which are default values in the program) are taken as initial data for calculating the example:

the radius of conformal mapping of the first circle R1 = 30 mm;

relative bending of the profile h/R1 = 0.15 (dimensionless value);

relative increment of the radius of the second circle ε/R = 0.1 (dimensionless value);

angle of attack α = 5°;

flow rate V0 = 10 m/s;

incoming flow density ρ = 1000 kg/m3.

The view of the program interface when you click the "Insert default values" button

The view of the program interface when clicking on the «Insert default values» button is shown in Fig. 2.After starting the calculation by clicking on the «Calculate profile» button, several graphic dependencies appear sequentially. The first of which is the appearance of the generatrix of the calculated profile, built according to the coordinates x and y (Fig. 3).

Zhukovsky wing aerodynamic profile

The appearance of the generatrix of the obtained profile is fully consistent with the theoretical one shown in Fig. 1.

The next relationship that the program builds is a graph of the flow rate near the backrest and the profile trough with respect to the speed of the incoming flow. This relationship is shown in Figure 4.

Graph of the relative flow rate near the Zhukovsky profile

The graph shows that on the back of the profile the speed is higher than on the trough and mainly exceeds the speed of the incoming flow. According to Bernoulli's law, this causes a differential pressure, which is the reason for the emergence of lifting force P (Fig. 1) [10]. This pressure difference is also confirmed by the graph obtained using the created program (Fig. 5).

Graph of relative pressure on Zhukovsky profile

It can be seen from the figure that the pressure acting on the trough is much higher than the pressure acting on the back, therefore, a lifting force occurs, directed from bottom to top. Lift will be zero if the incoming flow is directed at an angle of α = -λ (Fig. 1). According to calculations, this α value in this case should be -8.53°. This is confirmed by the following graph, which shows the dependence of lift on the angle of attack α.

Dependence of lifting force on angle of attack

It can be seen that when the angle of attack decreases below the value of ‑8.53°, the lifting force becomes less than zero, i.e. directed from top to bottom (if we consider the wings of the aircraft, then the occurrence of this situation will definitely lead to its «stall» [11]).

4. Discussion

As for the process of creating the described program, we can conclude that the Python programming language really has a sufficient arsenal of tools — both allowing you to carry out all types of calculations, and making it possible to get a convenient user interface and visualize the results.

The program code is easy to read even for a non-specialist in programming - only a careful study of this article is enough to understand it.

The graphical dependencies obtained with the help of the created program allow you to demonstrate both the calculated appearance of the Zhukovsky profile and the distribution of velocities and pressures on it. A visual graph is also built for the lifting force created on the profile at different angles of attack. The written code is easily modified for any other multivariable calculation - for example, you can calculate and plot the dependence of the maximum lift force on the relative bend of the profile, etc.

5. Discussion

Based on the results of the work performed, we can conclude that the purpose and objectives of the study have been completed in full.

We can recommend using the created software product to calculate the aerodynamic wing profile of Zhukovsky in the following areas:

- in educational institutions when studying special courses, such as «Fluid and gas mechanics», «Hydraulics», «Aerodynamics»;

- in design organizations to carry out primary multivariable calculations when creating a draft design;

- for training of specialists operating units that use wing profiles to better understand the processes taking place in these technical facilities;

- as an example for teaching programming skills in Python.

As a further development of the research topic described in the article, it is planned to carry out the same automation of calculations (and their visualization) for other types of theoretical aerodynamic profiles: symmetrical steering, thin plate, S-shaped, laminated, lentil-shaped, diamond-shaped, wedge-shaped, in order to compare their characteristics.

The additional file for this article can be found as follows:

Further description of analytic pipeline and patient demographic information. DOI:

Thanks to the editorial staff.

None