A 3D Surface Generation Tool for Block Boundaries for Turbomachinery Blade Passages

Grid generation is an essential component of Computational Fluid Dynamics (CFD). In CFD, the computational domain or geometry is discretized into cells which forms the grid on which the governing equations are solved; therefore, the accuracy of the solution is in part dependent on the grid resolution and quality. There are numerous commercial and open-source codes that are used to generate grids for turbomachinery CFD, both structured and unstructured. Almost all of such codes are intended for periodic grids covering a single blade passage. In this work, a novel block boundary generation tool is developed to be used within a larger framework for the development of a robust H-type structured grid generator, with capacity for periodic and non-periodic passages. A Python code generates the surfaces which are input to the grid generator and this surface generated is the focus of this paper. The current implementation of the code produces STL surfaces usable by the built-in structured grid generator in OpenFOAM (block Mesh). The general approach and methodology of generating the surfaces to ensure good grid quality is discussed in this abstract. I. Background and Introduction Quality grid generation is a necessity for any computational fluid dynamics (CFD) analysis which aims to capture the complex flow features of real flow phenomena and is especially important within the context of turbomachinery. Having a grid which can accurately capture real flow behavior requires managing skewness, cell aspect ratios, and non-orthogonality. For most blade geometries, open-source and commercial software can easily generate periodic structured grids, however, if the need is for passages which vary around the annulus of the machine, existing commercial and open-source codes typically cannot be used, and unstructured grids may lead to higher cell counts and difficulties in resolving complex geometry. It has been shown in literature [6] that non-axisymmetric guide vanes can impact upstream influence in a highly distorted inflow, therefore there is a need for grid generation tools which are flexible enough to generate both periodic and aperiodic blade passage grids. This paper introduces a tool which generates the surfaces used in a larger framework for structured grid generation using the open-source tool block Mesh. II. Methodology II.A. Construction of Surface Geometries The focus of this extended abstract is to summarize the methodology used in generating surface STLs for use in a larger grid generation of non-periodic blade geometry project. The process begins with reading in and pre-processing the blade data in the Cartesian coordinate system. Blade data is assumed to come in sections as is typical in turbomachinery, and the approach does not require each section to have the same number of points. For each section, pre-processing occurs in the (z, r*theta) coordinate system. The leading and trailing edges are found by defining them as the forwardmost and rearmost points of each section. Although these are not the true leading and trailing edge locations, for an H-grid, choosing these locations maximizes grid quality. The leading and trailing edge points are used to split the full blade surface and define two side curves. An approximate camber curve is constructed by taking the average of the two sides. This defines a spline representing the camber curve to ensure smoothness and continuity of curvature. The only portion of the camber curve actually needed for generating the block-bounding surfaces are the leading and trailing edge slopes, as these are used to define up- and down-stream extensions for inlet/outlet blocks. The meridional (axial/radial) coordinates of the interior points on which the extensions are defined are produced from bounding curves on the hub, casing, domain inlet (or outlet) and leading (or trailing) edge using transfinite interpolation [2]. From the r-theta coordinates of each section, the tangential coordinate is extracted based on the radial coordinates produced by the transfinite interpolation. The extended camber curves are also used to define the periodic boundaries of the block by rotating the extended camber line by half the pitch angle in both the positive and negative directions (for periodic blade rows; the treatment for aperiodic blade rows will be detailed in the final paper). The individual sections are compiled into surfaces and are then converted back into the Cartesian coordinate system. The resulting surfaces are converted into STL files using a custom-written Python code. II.B. Leading and Trailing Edge Cell Quality Refinement The initial iteration of the code was able to successfully generate valid surfaces usable to generator grids, however, resolution is limited near the leading and trailing edges due to high non-orthogonality between cells. This is caused by the acute angles between the flat surfaces at the blade leading/trailing edges and the blade side surfaces. An example of such a grid for a compressor stator is shown in Figure 1. This grid had maximum non-orthogonality of 77.7 ˚, while 65-75˚ is recommended as an upper limit for good convergence and accuracy in OpenFOAM [1]. This problem was resolved by introducing curvature to the tangential block boundaries which meet at the leading and trailing edges, which change from flat surfaces into curved surfaces. The introduction of the curved leading and trailing edge block boundaries is aimed to reduce the non-orthogonality of the corners between the leading (trailing)-edge surface and the blade surface. III. Current Status Final debugging of code is underway to implement the desired geometric surfaces and is expected to be done for the final paper. Currently the curved surfaces meet the periodic sides at the axial location of the leading/trailing edge, which is not best for cell quality. The optimization of these locations will be completed soon, in order to maximize the minimum radius of curvature along these surfaces. IV. Additional Results to be Included in the Full Paper The final paper will include implementation the additional techniques used to refine the grid cell quality, wherein a comparison of cell quality will be discussed using the results of OpenFOAM’s checkMesh tool for a compressor rotor and compressor stator for periodic grids. A test case will also be conducted on a non-periodic turbomachinery blade passage.

Authors

Publication Details

Published
2025-01-01
DOI
https://doi.org/10.2514/6.2025-97791
Primary Topic
Tribology and Lubrication Engineering
Type
article
Field-Weighted Citation Impact
0.00
Controls
|||
ALL TIME
JAN
FEB
MAR
APR
MAY
JUN
JUL
AUG
SEP
OCT
article

A 3D Surface Generation Tool for Block Boundaries for Turbomachinery Blade Passages

Jeff Defoe, J Smart
Tribology and Lubrication Engineering
article

A 3D Surface Generation Tool for Block Boundaries for Turbomachinery Blade Passages

Jeff Defoe, J Smart
article en

Abstract

Grid generation is an essential component of Computational Fluid Dynamics (CFD). In CFD, the computational domain or geometry is discretized into cells which forms the grid on which the governing equations are solved; therefore, the accuracy of the solution is in part dependent on the grid resolution and quality. There are numerous commercial and open-source codes that are used to generate grids for turbomachinery CFD, both structured and unstructured. Almost all of such codes are intended for periodic grids covering a single blade passage. In this work, a novel block boundary generation tool is developed to be used within a larger framework for the development of a robust H-type structured grid generator, with capacity for periodic and non-periodic passages. A Python code generates the surfaces which are input to the grid generator and this surface generated is the focus of this paper. The current implementation of the code produces STL surfaces usable by the built-in structured grid generator in OpenFOAM (block Mesh). The general approach and methodology of generating the surfaces to ensure good grid quality is discussed in this abstract. I. Background and Introduction Quality grid generation is a necessity for any computational fluid dynamics (CFD) analysis which aims to capture the complex flow features of real flow phenomena and is especially important within the context of turbomachinery. Having a grid which can accurately capture real flow behavior requires managing skewness, cell aspect ratios, and non-orthogonality. For most blade geometries, open-source and commercial software can easily generate periodic structured grids, however, if the need is for passages which vary around the annulus of the machine, existing commercial and open-source codes typically cannot be used, and unstructured grids may lead to higher cell counts and difficulties in resolving complex geometry. It has been shown in literature [6] that non-axisymmetric guide vanes can impact upstream influence in a highly distorted inflow, therefore there is a need for grid generation tools which are flexible enough to generate both periodic and aperiodic blade passage grids. This paper introduces a tool which generates the surfaces used in a larger framework for structured grid generation using the open-source tool block Mesh. II. Methodology II.A. Construction of Surface Geometries The focus of this extended abstract is to summarize the methodology used in generating surface STLs for use in a larger grid generation of non-periodic blade geometry project. The process begins with reading in and pre-processing the blade data in the Cartesian coordinate system. Blade data is assumed to come in sections as is typical in turbomachinery, and the approach does not require each section to have the same number of points. For each section, pre-processing occurs in the (z, r*theta) coordinate system. The leading and trailing edges are found by defining them as the forwardmost and rearmost points of each section. Although these are not the true leading and trailing edge locations, for an H-grid, choosing these locations maximizes grid quality. The leading and trailing edge points are used to split the full blade surface and define two side curves. An approximate camber curve is constructed by taking the average of the two sides. This defines a spline representing the camber curve to ensure smoothness and continuity of curvature. The only portion of the camber curve actually needed for generating the block-bounding surfaces are the leading and trailing edge slopes, as these are used to define up- and down-stream extensions for inlet/outlet blocks. The meridional (axial/radial) coordinates of the interior points on which the extensions are defined are produced from bounding curves on the hub, casing, domain inlet (or outlet) and leading (or trailing) edge using transfinite interpolation [2]. From the r-theta coordinates of each section, the tangential coordinate is extracted based on the radial coordinates produced by the transfinite interpolation. The extended camber curves are also used to define the periodic boundaries of the block by rotating the extended camber line by half the pitch angle in both the positive and negative directions (for periodic blade rows; the treatment for aperiodic blade rows will be detailed in the final paper). The individual sections are compiled into surfaces and are then converted back into the Cartesian coordinate system. The resulting surfaces are converted into STL files using a custom-written Python code. II.B. Leading and Trailing Edge Cell Quality Refinement The initial iteration of the code was able to successfully generate valid surfaces usable to generator grids, however, resolution is limited near the leading and trailing edges due to high non-orthogonality between cells. This is caused by the acute angles between the flat surfaces at the blade leading/trailing edges and the blade side surfaces. An example of such a grid for a compressor stator is shown in Figure 1. This grid had maximum non-orthogonality of 77.7 ˚, while 65-75˚ is recommended as an upper limit for good convergence and accuracy in OpenFOAM [1]. This problem was resolved by introducing curvature to the tangential block boundaries which meet at the leading and trailing edges, which change from flat surfaces into curved surfaces. The introduction of the curved leading and trailing edge block boundaries is aimed to reduce the non-orthogonality of the corners between the leading (trailing)-edge surface and the blade surface. III. Current Status Final debugging of code is underway to implement the desired geometric surfaces and is expected to be done for the final paper. Currently the curved surfaces meet the periodic sides at the axial location of the leading/trailing edge, which is not best for cell quality. The optimization of these locations will be completed soon, in order to maximize the minimum radius of curvature along these surfaces. IV. Additional Results to be Included in the Full Paper The final paper will include implementation the additional techniques used to refine the grid cell quality, wherein a comparison of cell quality will be discussed using the results of OpenFOAM’s checkMesh tool for a compressor rotor and compressor stator for periodic grids. A test case will also be conducted on a non-periodic turbomachinery blade passage.

Openalex Percentile: Top 80%
Tribology and Lubrication Engineering
AI Navigator

Ask Laika to Summarize, Analyze, and Connect papers live on the map.

Summarize Papers & Methodologies

Extract key findings, datasets, and comparative methods across publications.

Benchmark Rankings & Visual Analytics

Rank top research institutions, authors, funders, topics, and journals by Field-Weighted Citation Impact (FWCI) and paper volume with instant charts.

Connect Distant Disciplines

Bridge topological clusters on the map to find hidden collaborative intersections.