[![Pytest](https://github.com/cfsengineering/GMSH-Airfoil-2D/actions/workflows/pytest.yml/badge.svg?branch=main)](https://github.com/cfsengineering/GMSH-Airfoil-2D/actions/workflows/pytest.yml)
[![PyPi version](https://img.shields.io/pypi/v/gmshairfoil2d.svg)](https://pypi.python.org/pypi/gmshairfoil2d)
[![License](https://img.shields.io/badge/license-Apache%202-blue.svg)](https://github.com/cfsengineering/GMSH-Airfoil-2D/blob/main/LICENSE)
[![Black code style](https://img.shields.io/badge/code%20style-black-000000.svg)](https://github.com/psf/black)
# GMSH-Airfoil-2D
Python tool to genreate 2D unstructured mesh around an airfoil with [GMSH](https://gmsh.info/) in one command line.
## Installation
You can install this package from PyPi:
```bash
pip install gmshairfoil2d
```
Or you can clone and install this repository with the following commands:
```bash
git clone https://github.com/cfsengineering/GMSH-Airfoil-2D.git
cd GMSH-Airfoil-2D
pip install -e .
```
## Usage
```text
gmshairfoil2d -h
optional arguments:
-h, --help show this help message and exit
--list Display all airfoil available in the database :
https://m-selig.ae.illinois.edu/ads/coord_database.html
--naca [4DIGITS] NACA airfoil 4 digit (default 0012)
--airfoil [NAME] Name of an airfoil profile in the database (database available with
the --list argument)
--aoa [AOA] Angle of attack [deg] (default: 0 [deg])
--farfield [RADIUS] Create a circular farfield mesh of given radius [m] (default 10m)
--box [LENGTHxWIDTH] Create a box mesh of dimensions [length]x[height] [m]
--airfoil_mesh_size [SIZE] Mesh size of the airfoil countour [m] (default 0.01m)
--ext_mesh_size [SIZE] Mesh size of the external domain [m] (default 0.2m)
--format [FORMAT] format of the mesh file, e.g: msh, vtk, wrl, stl, mesh, cgns, su2,
dat (default su2)
--output [PATH] output path for the mesh file (default : current dir)
--ui Open GMSH user interface to see the mesh
```
## Examples of use
To check all airfoil available in the [database](https://m-selig.ae.illinois.edu/ads/coord_database.html):
```bash
gmshairfoil2d --list
```
For all the following examples, the defauld chord lenght is 1 meter.
To create a circular farfield mesh around a NACA0012 of 10m of radius and see the result with GMSH user interface:
```bash
gmshairfoil2d --naca 0012 --farfield 10 --ui
```
![GMSH user interface with the 2D mesh](images/example_mesh.png)
To create a circular farfield mesh around a Drela DAE11 airfoil (the name in the database is "dae11") of 20m or radius with a mesh size of 0.005m on the airfoil:
```bash
gmshairfoil2d --airfoil dae11 --farfield 20 --airfoil_mesh_size 0.005
```
To create mesh around a Eppler E220 airfoil (the name in the database is "e211") with an angle of attack of 8 degree in a box of 12x4m (lenght x hight) and save it as a vtk mesh and see the result with GMSH user interface:
```bash
gmshairfoil2d --airfoil e211 --aoa 8 --box 12x4 --format vtk --ui
```
![GMSH user interface with the 2D mesh, rectangular box](images/example_mesh_box.png)
Raw data
{
"_id": null,
"home_page": "https://github.com/cfsengineering/GMSH-Airfoil-2D",
"name": "gmshairfoil2d",
"maintainer": "",
"docs_url": null,
"requires_python": ">=3.6.0",
"maintainer_email": "",
"keywords": "airfoil,2D,mesh,cfd,gmsh",
"author": "Aidan Jungo",
"author_email": "aidan.jungo@cfse.ch",
"download_url": "https://files.pythonhosted.org/packages/25/4f/de7f23f965b01f1d9580553d51899d161b14ea6483f62cc50215a4fb8288/gmshairfoil2d-0.1.4.tar.gz",
"platform": null,
"description": "[![Pytest](https://github.com/cfsengineering/GMSH-Airfoil-2D/actions/workflows/pytest.yml/badge.svg?branch=main)](https://github.com/cfsengineering/GMSH-Airfoil-2D/actions/workflows/pytest.yml)\n[![PyPi version](https://img.shields.io/pypi/v/gmshairfoil2d.svg)](https://pypi.python.org/pypi/gmshairfoil2d)\n[![License](https://img.shields.io/badge/license-Apache%202-blue.svg)](https://github.com/cfsengineering/GMSH-Airfoil-2D/blob/main/LICENSE)\n[![Black code style](https://img.shields.io/badge/code%20style-black-000000.svg)](https://github.com/psf/black)\n\n# GMSH-Airfoil-2D\n\nPython tool to genreate 2D unstructured mesh around an airfoil with [GMSH](https://gmsh.info/) in one command line.\n\n## Installation\n\nYou can install this package from PyPi:\n\n```bash\npip install gmshairfoil2d\n```\n\nOr you can clone and install this repository with the following commands:\n\n```bash\ngit clone https://github.com/cfsengineering/GMSH-Airfoil-2D.git\ncd GMSH-Airfoil-2D\npip install -e .\n```\n\n## Usage\n\n```text\ngmshairfoil2d -h \n\noptional arguments:\n -h, --help show this help message and exit\n --list Display all airfoil available in the database :\n https://m-selig.ae.illinois.edu/ads/coord_database.html\n --naca [4DIGITS] NACA airfoil 4 digit (default 0012)\n --airfoil [NAME] Name of an airfoil profile in the database (database available with\n the --list argument)\n --aoa [AOA] Angle of attack [deg] (default: 0 [deg])\n --farfield [RADIUS] Create a circular farfield mesh of given radius [m] (default 10m)\n --box [LENGTHxWIDTH] Create a box mesh of dimensions [length]x[height] [m]\n --airfoil_mesh_size [SIZE] Mesh size of the airfoil countour [m] (default 0.01m)\n --ext_mesh_size [SIZE] Mesh size of the external domain [m] (default 0.2m)\n --format [FORMAT] format of the mesh file, e.g: msh, vtk, wrl, stl, mesh, cgns, su2,\n dat (default su2)\n --output [PATH] output path for the mesh file (default : current dir)\n --ui Open GMSH user interface to see the mesh\n\n```\n\n## Examples of use\n\nTo check all airfoil available in the [database](https://m-selig.ae.illinois.edu/ads/coord_database.html):\n\n```bash\ngmshairfoil2d --list\n```\n\nFor all the following examples, the defauld chord lenght is 1 meter.\n\nTo create a circular farfield mesh around a NACA0012 of 10m of radius and see the result with GMSH user interface:\n\n```bash\ngmshairfoil2d --naca 0012 --farfield 10 --ui\n```\n\n![GMSH user interface with the 2D mesh](images/example_mesh.png)\n\nTo create a circular farfield mesh around a Drela DAE11 airfoil (the name in the database is \"dae11\") of 20m or radius with a mesh size of 0.005m on the airfoil:\n\n```bash\ngmshairfoil2d --airfoil dae11 --farfield 20 --airfoil_mesh_size 0.005\n```\n\nTo create mesh around a Eppler E220 airfoil (the name in the database is \"e211\") with an angle of attack of 8 degree in a box of 12x4m (lenght x hight) and save it as a vtk mesh and see the result with GMSH user interface:\n\n```bash\ngmshairfoil2d --airfoil e211 --aoa 8 --box 12x4 --format vtk --ui\n```\n\n![GMSH user interface with the 2D mesh, rectangular box](images/example_mesh_box.png)\n",
"bugtrack_url": null,
"license": "Apache License 2.0",
"summary": "Python tool to genreate 2D mesh around an airfoil",
"version": "0.1.4",
"split_keywords": [
"airfoil",
"2d",
"mesh",
"cfd",
"gmsh"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "2a59344bf9326f1f83c4a5113c9a70c88326d93b470492a8d5f927ed71308599",
"md5": "c7a648d38aa8c034e7b24290dbcfd622",
"sha256": "5f54c66e5413d69a74bf5ed7dbf4fc1027b038f13b7d50019b8c0d005c1040d2"
},
"downloads": -1,
"filename": "gmshairfoil2d-0.1.4-py3-none-any.whl",
"has_sig": false,
"md5_digest": "c7a648d38aa8c034e7b24290dbcfd622",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.6.0",
"size": 13956,
"upload_time": "2023-01-27T14:45:02",
"upload_time_iso_8601": "2023-01-27T14:45:02.969378Z",
"url": "https://files.pythonhosted.org/packages/2a/59/344bf9326f1f83c4a5113c9a70c88326d93b470492a8d5f927ed71308599/gmshairfoil2d-0.1.4-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "254fde7f23f965b01f1d9580553d51899d161b14ea6483f62cc50215a4fb8288",
"md5": "fba8595a3c26967e196ccdf8f1803eab",
"sha256": "47b68cb7a1027ac1abce11067ce21fcdf2b81ae26eb02aefe51800e8b272f310"
},
"downloads": -1,
"filename": "gmshairfoil2d-0.1.4.tar.gz",
"has_sig": false,
"md5_digest": "fba8595a3c26967e196ccdf8f1803eab",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.6.0",
"size": 14135,
"upload_time": "2023-01-27T14:45:04",
"upload_time_iso_8601": "2023-01-27T14:45:04.793503Z",
"url": "https://files.pythonhosted.org/packages/25/4f/de7f23f965b01f1d9580553d51899d161b14ea6483f62cc50215a4fb8288/gmshairfoil2d-0.1.4.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2023-01-27 14:45:04",
"github": true,
"gitlab": false,
"bitbucket": false,
"github_user": "cfsengineering",
"github_project": "GMSH-Airfoil-2D",
"travis_ci": false,
"coveralls": false,
"github_actions": true,
"lcname": "gmshairfoil2d"
}