Adrien Crovato
ULiege, 2018-2020
GeoGen is a python code that generates an aerodynamic geometry which can then be meshed using gmsh and used in CFD solvers.
GeoGen v2 and up is compatible with python 3, while previous versions are compatible with python 2.
GeoGen currently supports the following configurations:
- Arbitrary isolated wing
- Sharp trailing edge
- Cutoff wingtip
- Rounded wingtip
- Generic fuselage
- Horizontal tail
- Multibody (e.g. several isolated wings)
GeoGen was primarly designed to be used with SU2 and waves, but any solver interfaced with gmsh can be used!
The script is run through the command line:
python geoGen.py path/to/config/file.py <-o path/to/output/file.geo>
If no output file is provided, a workspace directory will be created and the geometry will be stored inside as grid.geo
.
The geometry is generated from a python file containing a dictionary of parameters. Examples are given in config and the main options are summurized hereunder.
Parameters
Wing definition:
airfPath
: relative path to the airfoils directoryairfName
: array (size: nP+1) of names of file containing airfoil (Selig formatted) coordinatesspan
: array (size: nP) of span for each planform of the wingtaper
: array (size: nP)) of taper of each planform of the wingsweep
: array (size: nP) of leading edge sweep of each planform of the wingdihedral
: array (size: nP) of dihedral angle of each planform of the wingtwist
: array (size: nP+1) of twist angle of each airfoil of the wingrootChord
: root chord (scalar) of the wingoffset
: array of x and z offset (size: 2) applied to the leading edge of the root sectioncoWingtip
: boolean, True for cutoof wingtip, Fasle for rounded wingtip (not supported yet)
Domain definition:
domType
: string, box for box-shaped domain or shpere for shperical-shaped domain
if domain type is shpere, typical for Euler equations:
rSphere
: radius of the sphere (scalar)
if domain type is a box (a wake will then be defined), typically for potential equations:
xoBox
: x-coordinate (scalar) of the origin of the boxxfBox
: x-coordinate (scalar) of the end of the boxyfBox
: y-coordinate (scalar) of the end of the boxzoBox
: z-coordinate (scalar) of the origin of the boxzfBox
: z-coordinate (scalar) of the end of the boxnSlope
: number (scalar) of airfoil geometrical points counted from TE used to compute wake slope