Hostname: page-component-77f85d65b8-6c7dr Total loading time: 0 Render date: 2026-04-21T16:50:47.412Z Has data issue: false hasContentIssue false

Projection-based model-order reduction via graph autoencoders suited for unstructured meshes

Published online by Cambridge University Press:  19 November 2025

Liam Magargal
Affiliation:
Department of Mechanical Engineering and Mechanics, Lehigh University , Bethlehem, PA, USA
Parisa Khodabakhshi*
Affiliation:
Department of Mechanical Engineering and Mechanics, Lehigh University , Bethlehem, PA, USA
Steven Rodriguez
Affiliation:
Computational Multiphysics Systems Laboratory, US Naval Research Laboratory , Washington, DC, USA
Justin Jaworski
Affiliation:
Kevin T. Crofton Department of Aerospace and Ocean Engineering, Virginia Tech, Blacksburg, VA, USA
John Michopoulos
Affiliation:
Principal Scientist for Material Innovation (Retired), US Naval Research Laboratory, Washington, DC, USA
*
Corresponding author: Parisa Khodabakhshi; Email: pak322@lehigh.edu

Abstract

This paper presents the development of a graph autoencoder architecture capable of performing projection-based model-order reduction (PMOR) using a nonlinear manifold least-squares Petrov–Galerkin (LSPG) projection scheme. The architecture is particularly useful for advection-dominated flows modeled by unstructured meshes, as it provides a robust nonlinear mapping that can be leveraged in a PMOR setting. The presented graph autoencoder is constructed with a two-part process that consists of (1) generating a hierarchy of reduced graphs to emulate the compressive abilities of convolutional neural networks (CNNs) and (2) training a message passing operation at each step in the hierarchy of reduced graphs to emulate the filtering process of a CNN. The resulting framework provides improved flexibility over traditional CNN-based autoencoders because it is readily extendable to unstructured meshes. We provide an analysis of the interpretability of the graph autoencoder’s latent state variables, where we find that the Jacobian of the decoder for the proposed graph autoencoder provides interpretable mode shapes akin to traditional proper orthogonal decomposition modes. To highlight the capabilities of the proposed framework, which is named geometric deep least-squares Petrov–Galerkin (GD-LSPG), we benchmark the method on a one-dimensional Burgers’ model with a structured mesh and demonstrate the flexibility of GD-LSPG by deploying it on two test cases for two-dimensional Euler equations that use an unstructured mesh. The proposed framework is more flexible than using a traditional CNN-based autoencoder and provides considerable improvement in accuracy for very low-dimensional latent spaces in comparison with traditional affine projections.

Information

Type
Research Article
Creative Commons
Creative Common License - CCCreative Common License - BY
This is an Open Access article, distributed under the terms of the Creative Commons Attribution licence (http://creativecommons.org/licenses/by/4.0), which permits unrestricted re-use, distribution and reproduction, provided the original article is properly cited.
Open Practices
Open materials
Copyright
© The Author(s), 2025. Published by Cambridge University Press
Figure 0

Figure 1. Visualization of CNN kernel attempting to perform dimensional compression upon a structured mesh (left) and an unstructured mesh (right). Note that the nature of a structured mesh enables direct implementation into a CNN kernel for dimensionality reduction. Specifically, a structured mesh is essentially a pixel-based image commonly found in the CNN literature. Alternatively, the unstructured mesh is not readily formulated as a pixel-based image, meaning that the CNN kernel cannot be immediately applied to the unstructured mesh.

Figure 1

Figure 2. Visualization of graph autoencoder performing dimensional compression upon a structured mesh (left) and an unstructured mesh (right). Note that, unlike CNNs, the GNN framework readily accepts both structured and unstructured meshes by modeling collocation points as graph nodes and prescribing edges between the collocation points close to each other in the domain.

Figure 2

Figure 3. Formation of the adjacency matrix from a given graph.

Figure 3

Figure 4. Graph autoencoder architecture deployed in GD-LSPG. Vertical dotted lines represent the separation between layers in the hierarchy of reduced graphs. Boxes over the vertical dotted lines at the bottom of the figure represent specific layers of the autoencoder described in this section. The encoder is the trained mapping between the high-dimensional state $ \mathbf{x} $ and the low-dimensional latent space $ \hat{\mathbf{x}} $. The encoder is comprised of a preprocessing layer to model the input state vector as a graph, followed by a series of trained message passing and pooling (MPP) layers to reduce the number of nodes in the graph, then a flattening and fully connected/multilayer perceptron (MLP) layer. The resulting low-dimensional state vector is sent to the decoder, which is the trained mapping between the low-dimensional latent space $ \hat{\mathbf{x}} $ and the reconstructed high-dimensional state $ \tilde{\mathbf{x}} $. The decoder is comprised of a fully connected/MLP layer, followed by a series of unpooling and message passing (UMP) layers to increase the number of nodes in the graph, and then a postprocessing layer to prepare the output for deployment in the time integration scheme. Note that the superscript $ i $ in $ {\mathbf{Pos}}^i $ and $ {\mathrm{\mathcal{E}}}^i $ represents the graph number in the hierarchy of graphs with $ i=0 $ denoting the original graph representing the discretized mesh.

Figure 4

Figure 5. A visual representation of Algorithm 1 for generating a hierarchy of reduced meshes. In this figure, it is assumed that the collocation points are cells in the FVM discretization, however the same principles apply for discretization used in various other methods in computational mechanics. The input mesh (top left, generated for a domain $ V $ and its boundary $ \partial V $ represented by the solid black box) is modeled as the layer “0” graph in which the collocation points of the discretized domain form the node set $ {\mathcal{V}}^0 $, and the edge set $ {\mathrm{\mathcal{E}}}^0 $ (and subsequently the associated adjacency matrix $ {\mathbf{A}}^0 $) are determined from Eq. (3.1) by determining the nodes that fall within $ {r}^0 $ distance of each other. At layer $ i $ ($ i=0,\cdots, {n}_{\mathrm{\ell}}-2 $), nodes are partitioned into clusters using a spectral clustering algorithm to achieve a dimensionally reduced graph from that of layer $ i $. The nodal positions of the graph of layer $ i+1 $, obtained from the arithmetic mean position of node clusters from layer $ i $, are rescaled to ensure that the maximum and minimum coordinates of the nodes in graph layer $ i+1 $ are equal to those of layer $ i $, where the maximum and minimum values of the $ x $ and $ y $ coordinates are represented by the grey dotted box. Finally, the edge set of the reduced graph of layer $ i+1 $, that is, $ {\mathrm{\mathcal{E}}}^{i+1} $, is determined from Eq. (3.1).

Figure 5

Figure 6. MPP layer used in the encoder of our graph autoencoder. The layer accepts a graph as input and performs message passing to exchange information between locally connected nodes. Next, the graph nodes are pooled together based on their clusters from the hierarchical spectral clustering algorithm. This pooling operation reduces the number of nodes in the graph to perform dimensional compression.

Figure 6

Figure 7. UMP layer used in the decoder of our graph autoencoder. The layer accepts a graph as an input and performs an unpooling operation to re-introduce nodes into the graph, thus increasing the dimension of the graph. Next, message passing is performed on the unpooled graph to exchange information between locally connected nodes.

Figure 7

Figure 8. The left two columns represent the state solution for Burgers’ model Eq. (5.4) for time steps $ t=0,7,14,21, $ and $ 28 $ (ordered from left to right) for two latent space dimensions ($ M=3,10 $, respectively), while the right column depicts the error metrics from Eq. (5.1) to Eq. (5.3) for various PMOR methods. Figures in the first row correspond to test parameters $ \boldsymbol{\mu} =\left({\mu}_1=4.30,{\mu}_2=0.021\right) $, while figures in the second row correspond to test parameters $ \boldsymbol{\mu} =\left({\mu}_1=5.15,{\mu}_2=0.0285\right) $. GD-LSPG and dLSPG both outperform POD-LSPG in predicting the highly nonlinear behavior of the Burgers’ equation.

Figure 8

Figure 9. Jacobian of the decoder of GD-LSPG with respect to the $ {i}^{\mathrm{th}} $ latent state variable, $ {\left.\frac{\partial \mathbf{Dec}}{\partial {\hat{x}}_i}\right|}_{\hat{\mathbf{x}}\left(t;\boldsymbol{\mu} \right)} $, is shown alongside the POD modes, $ {\Phi}_i $, for a latent space dimension $ M=3 $. Results are presented at time instances $ t=0,7,14,21, $ and $ 28 $, for the test parameter set $ \boldsymbol{\mu} =\left({\mu}_1=4.30,{\mu}_2=0.021\right) $. Unlike the time-invariant and highly diffusive POD modes, the Jacobian of the decoder for the graph autoencoder captures critical information about the location of the moving shock boundary. In all subplots (except for the bottom right), the left axis corresponds to the Jacobian of the decoder for latent space variable $ i $, while the right axis corresponds to the the $ {i}^{\mathrm{th}} $ POD mode. All subplots (except for the bottom right) share the same legend as the one shown for $ t=0 $. The bottom right figure displays the full-order solution with time and space, in which the horizontal lines highlight the selected time instances to highlight the match between the location of the moving shock boundary and the identified features by the Jacobian of the decoder.

Figure 9

Figure 10. Local error for dLSPG, GD-LSPG, and POD-LSPG for the parameter set $ \boldsymbol{\mu} =\left({\mu}_1=5.15,{\mu}_2=0.0285\right) $. The top and bottom rows correspond to solutions generated with latent space dimensions $ M=3 $ and $ M=10 $, respectively. The local error is simply taken to be $ \tilde{w}\left(x,t\right)-w\left(x,t\right) $, or the difference between the predicted solution state and the ground truth solution state. The POD-LSPG solution introduces considerable error throughout the domain. Alternatively, dLSPG and GD-LSPG introduce lower-order localized errors, primarily around the shock. The slight phase difference between shocks in the predicted solution and the ground truth solution is the main error contributor.

Figure 10

Figure 11. Wall-clock time breakdown of individual components of GD-LSPG, dLSPG, and POD-LSPG with a latent space dimension $ M=3 $ normalized to the wall-clock time associated with the FOM solution. Solutions were generated for the parameter set $ \boldsymbol{\mu} =\left({\mu}_1=4.30,{\mu}_2=0.021\right) $. The POD-LSPG approach does not have to compute the Jacobian of the decoder at each iteration. The breakdown reveals the most expensive components of the dLSPG and GD-LSPG methods include the time to get the high-dimensional residual, Jacobian of the high-dimensional residual, and Jacobian of the decoder. The wall-clock time for the FOM was 38.63 seconds.

Figure 11

Figure 12. (a) Setup for the parametric Euler equations to be solved by a Riemann solver. The quadrants have been numbered in the figure. The problem’s parameters are taken to be the initial velocities in the $ x $ and $ y $ directions in the top right quadrant, that is, $ \boldsymbol{\mu} =\left({\mu}_u,{\mu}_v\right) $. Varying the initial velocity results in the shock wave and rarefaction wave propagating at different speeds and in different directions, resulting in an advection-driven flow. (b) The unstructured mesh used to solve 2D Euler equations for Riemann problem setup. Note that this unstructured finite volume mesh is not directly compatible with a CNN-based autoencoder, and will therefore require interpolation to perform dLSPG.

Figure 12

Figure 13. Ground truth, POD-LSPG, and both best- and worst-case interpolated dLSPG and GD-LSPG pressure fields, denoted by color, and density fields, denoted by contours, for the 2D Euler equations. The results are shown at $ t=0.3 $ for test parameter sets $ \boldsymbol{\mu} =\left({\mu}_u=-1.3,{\mu}_v=-0.65\right) $ and $ \boldsymbol{\mu} =\left({\mu}_u=-1.9,{\mu}_v=-0.35\right) $ and for a latent space dimension of $ M=3 $. Note POD-LSPG’s inability to model the shock behavior, leading to a diffusive and inaccurate solution that does not accurately model the advection-driven behavior of the problem. The best-case interpolated dLSPG and GD-LSPG solutions model the shock behavior with much higher accuracy, while the worst-case GD-LSPG solution is more accurate than the worst-case interpolated dLSPG solution. Note that an animated version of this figure is found in the supplementary material at journals.cambridge.org in the provided mp4 files.

Figure 13

Figure 14. Reconstruction and state prediction errors for two choices of test parameter sets (each represented by a single column) for the Riemann problem setup. We repeat the training for the interpolated CNN-based autoencoder and the graph autoencoder five times, which correspond to the five points at each latent space dimension. We only obtain the POD modes once, which corresponds to only one point at each latent space dimension for POD reconstruction and POD-LSPG. The top row includes plots of POD, interpolated CNN-based autoencoder, and graph autoencoder reconstruction errors evaluated from Eq. (5.1) to Eq. (5.2) with respect to the latent space dimension, $ M $. Note that the graph autoencoder performs similar level of reconstruction accuracy as the interpolated CNN-based autoencoder. The bottom row demonstrates POD-LSPG, interpolated dLSPG, and GD-LSPG state prediction errors evaluated from Eq. (5.3) with respect to the latent space dimension, $ M $. For small latent space dimensions, GD-LSPG (and often interpolated dLSPG) outperforms POD-LSPG in terms of accuracy. Additionally, the interpolated CNN-based autoencoder used in the dLSPG solution fails to generalize well in this application for several latent space dimensions. Note: one of the interpolated dLSPG solutions for $ M=1 $ failed to converge.

Figure 14

Figure 15. ROM prediction errors associated with the best- and worst-case solutions for the Riemann problem setup. The left, middle and right columns represent the errors for POD-LSPG, interpolated dLSPG and GD-LSPG, respectively, at latent space dimension $ M=3 $. The results are depicted for the parameter sets $ \boldsymbol{\mu} =\left({\mu}_u=-1.3,{\mu}_v=-0.65\right) $ and $ \boldsymbol{\mu} =\left({\mu}_u=-1.9,{\mu}_v=-0.35\right) $ at time $ t=0.3 $. We define local error to be $ \tilde{P}\left(x,y\right)-P\left(x,y\right) $ at a given time step. The POD-LSPG solution fails to accurately model the advection-driven nature of the solution and shows errors as high as 25% in some parts of the domain. The best-case interpolated dLSPG and GD-LSPG solutions model the shock wave much more accurately, with only small errors localized near the shock, highlighting the slight phase misalignment between FOM and ROM shock locations as the primary source of error. The worst-case interpolated dLSPG solution has considerably higher errors than the worst-case GD-LSPG solution. Note that an animated version of this figure is found in the supplementary material at journals.cambridge.org in the provided mp4 files.

Figure 15

Figure 16. (a) Setup for the parametric Euler equations to be solved by a Riemann solver with an unstructured finite volume mesh. A rectangular domain with the leading edge of a cylinder is modeled with the noted boundary conditions. Depending on the freestream Mach number, $ {\mu}_{\mathrm{in}} $, which will be varied as this problem’s parameter, a shock can form along the leading edge of the cylinder and propagate through the domain at different speeds. (b) Mesh used to solve 2D Euler equations for the bow shock generated by flow past a cylinder problem. In this case, the physical domain’s geometry is more complex than in the Riemann problem setup, therefore benefiting from the unstructured mesh.

Figure 16

Figure 17. Pressure field (denoted by color) and density field (denoted by contours) are demonstrated for the ground truth solutions (first column) as well as the POD-LSPG (second column) and GD-LSPG solutions (third column). Additionally, the local errors, $ \tilde{P}\left(x,y\right)-P\left(x,y\right) $, between the corresponding ROMs and the ground truth solution for the bow shock generated by flow past a cylinder are presented in columns 4 and 5. The results are provided at two time steps, namely $ t=0.25 $ (top row) and $ t=0.75 $ (bottom row), for test parameter $ {\mu}_{\mathrm{in}}=1.125 $. The ROMs are constructed using a latent space dimension of $ M=2 $. Like before, POD-LSPG struggles to accurately model the advection-driven shock wave occurring in this model. Alternatively, GD-LSPG models the shock behavior with higher accuracy where errors are mainly isolated around the shock. The top color bar refers to the pressure field solutions while the bottom color bar refers to the local error plots.

Figure 17

Figure 18. POD modes, $ {\Phi}_i $, (left) and Jacobian of the decoder for the graph autoencoder of the $ {i}^{\mathrm{th}} $ latent state variable, $ {\left.\frac{\partial \mathbf{Dec}}{\partial {\hat{x}}_i}\right|}_{\hat{\mathbf{x}}\left(t;\boldsymbol{\mu} \right)} $ (right) for the energy state variable ($ \rho E $ in Eq. [5.7]) for the POD-LSPG and GD-LSPG solutions, respectively. The results are shown for the latent space dimension $ M=2 $ and for the test parameter $ {\mu}_{\mathrm{in}}=1.125 $. Note that the POD modes are time invariant and therefore remain fixed for all time steps, while the Jacobian of the decoder for the graph autoencoder presents time-varying mode shapes (here shown for t = 0.25 and t = 0.75). The Jacobian of the decoder of the graph autoencoder reveals that the graph autoencoder’s latent variables primarily contain information about the bow shock that forms on the leading edge of the cylinder, offering interpretability into the GD-LSPG solution. In contrast, the POD modes used in POD-LSPG are time invariant, independent of the latent state vector, and highly diffusive. Note that the top colorbar (black/blue/white) is used to present the POD modes, while the bottom color bar (red/white/black) is used to present the Jacobian of the decoder for the graph autoencoder.

Figure 18

Figure 19. POD reconstruction error from Eq. (5.2), graph autoencoder reconstruction error from Eq. (5.1), and state prediction errors from Eq. (5.3) plotted with respect to the latent space dimension $ M $ for 2D Euler equations for the bow shock generated by flow past a cylinder at $ {\mu}_{\mathrm{in}}=1.125 $. For latent space dimensions 2–10, GD-LSPG performs as well as or considerably better than POD-LSPG in terms of accuracy.

Figure 19

Figure 20. Pressure field (denoted by color) and density field (denoted by contours) are demonstrated for four different noise levels, $ {\sigma}_{\mathrm{noise}}=0 $, $ 0.01 $, $ 0.05 $, and $ 0.1 $ for the training parameter $ {\mu}_{\mathrm{in}}=1.1 $ at $ \mathrm{t}=0.75 $. Notice that for $ {\sigma}_{\mathrm{noise}}=0.1 $, the shock features are still present, but are significantly blurred in comparison to $ {\sigma}_{\mathrm{noise}}=0 $.

Figure 20

Figure 21. Pressure field (denoted by color) and density field (denoted by contours) are demonstrated for the ground truth and for GD-LSPG for latent space dimensions $ M=2 $, and $ 10 $ and noise levels $ {\sigma}_{\mathrm{noise}}=0 $, $ 0.01 $, $ 0.05 $, and $ 0.1 $ at time $ t=0.75 $ for test parameter $ {\mu}_{\mathrm{in}}=1.125 $. For $ M=2 $, we find all solutions to be very accurate predictions of the ground truth solution. However, for $ M=10 $, we find that, as more noise is introduced, the GD-LSPG solution becomes more inaccurate due to noise. Still, the shock features appear to be present.

Figure 21

Figure 22. Graph autoencoder reconstruction errors (left) evaluated from Eq. (5.1) and GD-LSPG state prediction errors (right) evaluated from Eq. (5.3) for the bow shock generated by flow past a cylinder problem when trained using noisy training data with noise levels $ {\sigma}_{\mathrm{noise}}=0 $, $ 0.01 $, $ 0.05 $, and $ 0.1 $ for test parameter $ \mu =1.125 $. Higher noise levels in the training data lead to increased reconstructions errors, as well as higher state prediction errors. Note that GD-LSPG failed to converge due to non-physical solutions (i.e., negative pressure) for latent space dimension $ M=1 $ at noise level $ {\sigma}_{\mathrm{noise}}=0.05 $ and for latent space dimensions M = 5, 6, and 9 at $ {\sigma}_{\mathrm{noise}}=0.1 $.

Figure 22

Table 1. Average wall-clock times (in seconds) for generating the hierarchy of graphs for each example, where $ \mid {\mathcal{V}}^i\mid $ and $ \mid {\mathcal{V}}^{i+1}\mid $ denote the number of nodes in the $ {i}^{\mathrm{th}} $ and $ {\left(i+1\right)}^{\mathrm{th}} $ layers in the hierarchy of graphs, respectively. The time reported for each clustering is the average of ten repeated runs of the clustering algorithm

Figure 23

Table 2. Wall-clock training times (in hours) for POD, CNN-based autoencoder, and graph autoencoder for all numerical examples. Note that the POD is only obtained once for all latent space dimensions where the POD basis is determined by truncating the left singular basis to the user-specified latent space dimension, M. Alternatively, each latent space dimension has a unique CNN-based autoencoder and graph autoencoder that must be trained individually. For the repeated training of the autoencoders for the Riemann problem, we report the average time to train each model

Figure 24

Table A1. Outputs of each layer of the encoder and decoder of the graph autoencoder for all test problems, where i represents the layer number, $ \mid {\mathcal{V}}^i\mid $ denotes the number of nodes in the output graph, $ {N}_F^i $ denotes the number of features for each node in the output graph, and M denotes the dimension of the latent space. The number of nodes in the output graph of the preprocessing and postprocessing layers in the 1D Burgers’ model includes the 30 padding nodes on both sides of the domain. Parentheses in “# of MP operations” column denote the number of features in the output of intermediate message passing operations

Figure 25

Table A2. Outputs of each layer of the encoder and decoder of the CNN-based autoencoder for test problems 1 and 2, where i denotes the layer number, and M denotes the dimension of the latent space. Note: the $ {\mathrm{MLP}}_{\mathrm{dec}} $ in the CNN-based autoencoder has a bias term and is followed by an ELU activation function (unlike the graph autoencoder). Empirically, we found that the inclusion of the bias term and activation function slightly improves accuracy for the CNN-based autoencoder, but not the graph autoencoder. Note that the CNN-based autoencoder for the 2D Riemann problem has 4096 grid points in the interpolated mesh versus the 4328 cells in the original mesh

Supplementary material: File

Magargal et al. supplementary material

Magargal et al. supplementary material
Download Magargal et al. supplementary material(File)
File 29.8 MB
Submit a response

Comments

No Comments have been published for this article.