2022-01-25T17:06:18,075 Created temporary directory: /tmp/pip-ephem-wheel-cache-zdubv7b1 2022-01-25T17:06:18,081 Created temporary directory: /tmp/pip-req-tracker-64_jfrt7 2022-01-25T17:06:18,082 Initialized build tracking at /tmp/pip-req-tracker-64_jfrt7 2022-01-25T17:06:18,083 Created build tracker: /tmp/pip-req-tracker-64_jfrt7 2022-01-25T17:06:18,083 Entered build tracker: /tmp/pip-req-tracker-64_jfrt7 2022-01-25T17:06:18,085 Created temporary directory: /tmp/pip-wheel-c90i77xd 2022-01-25T17:06:18,145 Looking in indexes: https://pypi.org/simple, https://www.piwheels.org/simple 2022-01-25T17:06:18,149 2 location(s) to search for versions of importairfoil: 2022-01-25T17:06:18,149 * https://pypi.org/simple/importairfoil/ 2022-01-25T17:06:18,149 * https://www.piwheels.org/simple/importairfoil/ 2022-01-25T17:06:18,149 Fetching project page and analyzing links: https://pypi.org/simple/importairfoil/ 2022-01-25T17:06:18,152 Getting page https://pypi.org/simple/importairfoil/ 2022-01-25T17:06:18,156 Found index url https://pypi.org/simple 2022-01-25T17:06:18,419 Found link https://files.pythonhosted.org/packages/89/37/0f9d9d336a0e9bdb531097c6b855502412247cd408cb7f0f99b27b221dfa/importAirfoil-1.1.0.tar.gz#sha256=d7d0dac90ac812994a2731f9cec92e631bdb2eb149eaf98fc394b5407eeb5192 (from https://pypi.org/simple/importairfoil/), version: 1.1.0 2022-01-25T17:06:18,420 Found link https://files.pythonhosted.org/packages/63/9d/e20237c04c7dd95c7c78ff8390cee9369d123cadc785f829d2affd33e2d5/importAirfoil-1.2.0.tar.gz#sha256=acb959ab40093dfc1a40521abeaf8c18f322b87f3907db69928f8da844e07dc7 (from https://pypi.org/simple/importairfoil/), version: 1.2.0 2022-01-25T17:06:18,421 Fetching project page and analyzing links: https://www.piwheels.org/simple/importairfoil/ 2022-01-25T17:06:18,422 Getting page https://www.piwheels.org/simple/importairfoil/ 2022-01-25T17:06:18,425 Found index url https://www.piwheels.org/simple 2022-01-25T17:06:18,672 Given no hashes to check 1 links for project 'importairfoil': discarding no candidates 2022-01-25T17:06:18,704 Collecting importairfoil==1.2.0 2022-01-25T17:06:18,708 Created temporary directory: /tmp/pip-unpack-h5_64989 2022-01-25T17:06:18,923 Downloading importAirfoil-1.2.0.tar.gz (15 kB) 2022-01-25T17:06:19,014 Added importairfoil==1.2.0 from https://files.pythonhosted.org/packages/63/9d/e20237c04c7dd95c7c78ff8390cee9369d123cadc785f829d2affd33e2d5/importAirfoil-1.2.0.tar.gz#sha256=acb959ab40093dfc1a40521abeaf8c18f322b87f3907db69928f8da844e07dc7 to build tracker '/tmp/pip-req-tracker-64_jfrt7' 2022-01-25T17:06:19,016 Running setup.py (path:/tmp/pip-wheel-c90i77xd/importairfoil_2a655beda6414a64b98dff3bb859ce43/setup.py) egg_info for package importairfoil 2022-01-25T17:06:19,017 Created temporary directory: /tmp/pip-pip-egg-info-ou3bx8ql 2022-01-25T17:06:19,018 Running command python setup.py egg_info 2022-01-25T17:06:21,059 # Python Airfoil coordinates import function 2022-01-25T17:06:21,061 Airfoil coordinates import function in Python. 2022-01-25T17:06:21,063

2022-01-25T17:06:21,063 2022-01-25T17:06:21,064

2022-01-25T17:06:21,066 ## Requirements 2022-01-25T17:06:21,067 [Python](https://www.python.org/)
2022-01-25T17:06:21,068 Provided code is tested with **Python 3.10.1**. 2022-01-25T17:06:21,069 ## Installation 2022-01-25T17:06:21,070 Run: 2022-01-25T17:06:21,071 ```python 2022-01-25T17:06:21,071 pip install importAirfoil 2022-01-25T17:06:21,072 ``` 2022-01-25T17:06:21,073 ## Usage 2022-01-25T17:06:21,075 Use `importAirfoil` function with the full path to document with airfoil data as only input argument. 2022-01-25T17:06:21,076 Please check provided test in `test/_App` folder. In order to run the test first run CreateApp.cmd file (with adjusted input variables). 2022-01-25T17:06:21,077 ## Airfoil file parsing rules 2022-01-25T17:06:21,078 - The file is read a line at a time starting from the top. 2022-01-25T17:06:21,079 - Blank lines are discarded. 2022-01-25T17:06:21,080 - The first line that is not discarded is the line on which function `scanf()` finds two float numbers, with the first number in the range [-0.1, 1.1] and the second in the range [-1.1, 1.1]. 2022-01-25T17:06:21,080 - All subsequent lines on which function `scanf()` finds two float numbers are taken into the account. 2022-01-25T17:06:21,081 - If any value is greater than 1.1 all values are divided by 100 (see NACA file format). 2022-01-25T17:06:21,082 - If there is one change in x value gradient, flip data that is after the change of gradient (see Lednicer file format). 2022-01-25T17:06:21,083 ## Airfoil file formats 2022-01-25T17:06:21,084 > - [Siegel](https://m-selig.ae.illinois.edu/ads.html) 2022-01-25T17:06:21,085 Lists points from the trailing edge, goes over the upper surface, then over the lower surface, to go back to the trailing edge (or in other direction, first lower and then upper surface). 2022-01-25T17:06:21,087 > - Lednicer 2022-01-25T17:06:21,088 Lists points on the upper surface (from leading edge to trailing edge), then points on the lower surface (from leading edge to trailing edge). 2022-01-25T17:06:21,089 > - OpenVSP .af 2022-01-25T17:06:21,090 Same as the Siegel format but with the additional header. 2022-01-25T17:06:21,091 > - NACA (as in Report No. 824) 2022-01-25T17:06:21,093 Same as the Lednicer format but multiplied by 100. 2022-01-25T17:06:21,094 ## License 2022-01-25T17:06:21,095 Copyright (C) 2022 Milos Petrasinovic 2022-01-25T17:06:21,096 This program is free software: you can redistribute it and/or modify 2022-01-25T17:06:21,096 it under the terms of the GNU General Public License as 2022-01-25T17:06:21,097 published by the Free Software Foundation, either version 3 of the 2022-01-25T17:06:21,098 License, or (at your option) any later version. 2022-01-25T17:06:21,099 This program is distributed in the hope that it will be useful, 2022-01-25T17:06:21,099 but WITHOUT ANY WARRANTY; without even the implied warranty of 2022-01-25T17:06:21,100 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 2022-01-25T17:06:21,101 GNU General Public License for more details. 2022-01-25T17:06:21,102 You should have received a copy of the GNU General Public License 2022-01-25T17:06:21,103 along with this program. If not, see . 2022-01-25T17:06:21,107 running egg_info 2022-01-25T17:06:21,114 creating /tmp/pip-pip-egg-info-ou3bx8ql/importAirfoil.egg-info 2022-01-25T17:06:21,116 writing dependency_links to /tmp/pip-pip-egg-info-ou3bx8ql/importAirfoil.egg-info/dependency_links.txt 2022-01-25T17:06:21,119 writing /tmp/pip-pip-egg-info-ou3bx8ql/importAirfoil.egg-info/PKG-INFO 2022-01-25T17:06:21,123 writing top-level names to /tmp/pip-pip-egg-info-ou3bx8ql/importAirfoil.egg-info/top_level.txt 2022-01-25T17:06:21,129 writing manifest file '/tmp/pip-pip-egg-info-ou3bx8ql/importAirfoil.egg-info/SOURCES.txt' 2022-01-25T17:06:21,489 reading manifest file '/tmp/pip-pip-egg-info-ou3bx8ql/importAirfoil.egg-info/SOURCES.txt' 2022-01-25T17:06:21,496 writing manifest file '/tmp/pip-pip-egg-info-ou3bx8ql/importAirfoil.egg-info/SOURCES.txt' 2022-01-25T17:06:21,632 Source in /tmp/pip-wheel-c90i77xd/importairfoil_2a655beda6414a64b98dff3bb859ce43 has version 1.2.0, which satisfies requirement importairfoil==1.2.0 from https://files.pythonhosted.org/packages/63/9d/e20237c04c7dd95c7c78ff8390cee9369d123cadc785f829d2affd33e2d5/importAirfoil-1.2.0.tar.gz#sha256=acb959ab40093dfc1a40521abeaf8c18f322b87f3907db69928f8da844e07dc7 2022-01-25T17:06:21,633 Removed importairfoil==1.2.0 from https://files.pythonhosted.org/packages/63/9d/e20237c04c7dd95c7c78ff8390cee9369d123cadc785f829d2affd33e2d5/importAirfoil-1.2.0.tar.gz#sha256=acb959ab40093dfc1a40521abeaf8c18f322b87f3907db69928f8da844e07dc7 from build tracker '/tmp/pip-req-tracker-64_jfrt7' 2022-01-25T17:06:21,643 Created temporary directory: /tmp/pip-unpack-mwpfff7e 2022-01-25T17:06:21,644 Building wheels for collected packages: importairfoil 2022-01-25T17:06:21,652 Created temporary directory: /tmp/pip-wheel-imw1qo11 2022-01-25T17:06:21,653 Building wheel for importairfoil (setup.py): started 2022-01-25T17:06:21,654 Destination directory: /tmp/pip-wheel-imw1qo11 2022-01-25T17:06:21,655 Running command /usr/bin/python3 -u -c 'import sys, setuptools, tokenize; sys.argv[0] = '"'"'/tmp/pip-wheel-c90i77xd/importairfoil_2a655beda6414a64b98dff3bb859ce43/setup.py'"'"'; __file__='"'"'/tmp/pip-wheel-c90i77xd/importairfoil_2a655beda6414a64b98dff3bb859ce43/setup.py'"'"';f=getattr(tokenize, '"'"'open'"'"', open)(__file__);code=f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' bdist_wheel -d /tmp/pip-wheel-imw1qo11 2022-01-25T17:06:23,352 # Python Airfoil coordinates import function 2022-01-25T17:06:23,354 Airfoil coordinates import function in Python. 2022-01-25T17:06:23,355

2022-01-25T17:06:23,356 2022-01-25T17:06:23,356

2022-01-25T17:06:23,358 ## Requirements 2022-01-25T17:06:23,359 [Python](https://www.python.org/)
2022-01-25T17:06:23,360 Provided code is tested with **Python 3.10.1**. 2022-01-25T17:06:23,361 ## Installation 2022-01-25T17:06:23,362 Run: 2022-01-25T17:06:23,363 ```python 2022-01-25T17:06:23,364 pip install importAirfoil 2022-01-25T17:06:23,364 ``` 2022-01-25T17:06:23,366 ## Usage 2022-01-25T17:06:23,367 Use `importAirfoil` function with the full path to document with airfoil data as only input argument. 2022-01-25T17:06:23,368 Please check provided test in `test/_App` folder. In order to run the test first run CreateApp.cmd file (with adjusted input variables). 2022-01-25T17:06:23,369 ## Airfoil file parsing rules 2022-01-25T17:06:23,370 - The file is read a line at a time starting from the top. 2022-01-25T17:06:23,371 - Blank lines are discarded. 2022-01-25T17:06:23,372 - The first line that is not discarded is the line on which function `scanf()` finds two float numbers, with the first number in the range [-0.1, 1.1] and the second in the range [-1.1, 1.1]. 2022-01-25T17:06:23,372 - All subsequent lines on which function `scanf()` finds two float numbers are taken into the account. 2022-01-25T17:06:23,373 - If any value is greater than 1.1 all values are divided by 100 (see NACA file format). 2022-01-25T17:06:23,374 - If there is one change in x value gradient, flip data that is after the change of gradient (see Lednicer file format). 2022-01-25T17:06:23,375 ## Airfoil file formats 2022-01-25T17:06:23,376 > - [Siegel](https://m-selig.ae.illinois.edu/ads.html) 2022-01-25T17:06:23,378 Lists points from the trailing edge, goes over the upper surface, then over the lower surface, to go back to the trailing edge (or in other direction, first lower and then upper surface). 2022-01-25T17:06:23,379 > - Lednicer 2022-01-25T17:06:23,380 Lists points on the upper surface (from leading edge to trailing edge), then points on the lower surface (from leading edge to trailing edge). 2022-01-25T17:06:23,381 > - OpenVSP .af 2022-01-25T17:06:23,383 Same as the Siegel format but with the additional header. 2022-01-25T17:06:23,384 > - NACA (as in Report No. 824) 2022-01-25T17:06:23,385 Same as the Lednicer format but multiplied by 100. 2022-01-25T17:06:23,386 ## License 2022-01-25T17:06:23,387 Copyright (C) 2022 Milos Petrasinovic 2022-01-25T17:06:23,388 This program is free software: you can redistribute it and/or modify 2022-01-25T17:06:23,388 it under the terms of the GNU General Public License as 2022-01-25T17:06:23,389 published by the Free Software Foundation, either version 3 of the 2022-01-25T17:06:23,389 License, or (at your option) any later version. 2022-01-25T17:06:23,390 This program is distributed in the hope that it will be useful, 2022-01-25T17:06:23,391 but WITHOUT ANY WARRANTY; without even the implied warranty of 2022-01-25T17:06:23,391 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 2022-01-25T17:06:23,392 GNU General Public License for more details. 2022-01-25T17:06:23,393 You should have received a copy of the GNU General Public License 2022-01-25T17:06:23,394 along with this program. If not, see . 2022-01-25T17:06:23,735 running bdist_wheel 2022-01-25T17:06:23,751 running build 2022-01-25T17:06:23,752 running build_py 2022-01-25T17:06:24,089 creating build 2022-01-25T17:06:24,090 creating build/lib 2022-01-25T17:06:24,091 creating build/lib/src 2022-01-25T17:06:24,093 copying src/importAirfoil.py -> build/lib/src 2022-01-25T17:06:24,098 copying src/__init__.py -> build/lib/src 2022-01-25T17:06:24,108 installing to build/bdist.linux-armv7l/wheel 2022-01-25T17:06:24,109 running install 2022-01-25T17:06:24,110 running install_lib 2022-01-25T17:06:24,118 creating build/bdist.linux-armv7l 2022-01-25T17:06:24,119 creating build/bdist.linux-armv7l/wheel 2022-01-25T17:06:24,123 creating build/bdist.linux-armv7l/wheel/src 2022-01-25T17:06:24,125 copying build/lib/src/importAirfoil.py -> build/bdist.linux-armv7l/wheel/src 2022-01-25T17:06:24,129 copying build/lib/src/__init__.py -> build/bdist.linux-armv7l/wheel/src 2022-01-25T17:06:24,132 running install_egg_info 2022-01-25T17:06:24,175 running egg_info 2022-01-25T17:06:24,177 writing importAirfoil.egg-info/PKG-INFO 2022-01-25T17:06:24,182 writing dependency_links to importAirfoil.egg-info/dependency_links.txt 2022-01-25T17:06:24,185 writing top-level names to importAirfoil.egg-info/top_level.txt 2022-01-25T17:06:24,193 reading manifest file 'importAirfoil.egg-info/SOURCES.txt' 2022-01-25T17:06:24,201 writing manifest file 'importAirfoil.egg-info/SOURCES.txt' 2022-01-25T17:06:24,204 Copying importAirfoil.egg-info to build/bdist.linux-armv7l/wheel/importAirfoil-1.2.0-py3.5.egg-info 2022-01-25T17:06:24,222 running install_scripts 2022-01-25T17:06:24,398 creating build/bdist.linux-armv7l/wheel/importAirfoil-1.2.0.dist-info/WHEEL 2022-01-25T17:06:24,595 Building wheel for importairfoil (setup.py): finished with status 'done' 2022-01-25T17:06:24,599 Created wheel for importairfoil: filename=importAirfoil-1.2.0-py3-none-any.whl size=6224 sha256=4048ce60d5b38d73345f8e27b49bdeac8fe2d4ee18043556a2f1589f56ca3e6a 2022-01-25T17:06:24,600 Stored in directory: /tmp/pip-ephem-wheel-cache-zdubv7b1/wheels/03/f3/84/d1848b6285ee14750dac6372bea13a9d7933a60644738157c8 2022-01-25T17:06:24,617 Successfully built importairfoil 2022-01-25T17:06:24,622 Removed build tracker: '/tmp/pip-req-tracker-64_jfrt7'