1. Introduction
Reduced-order models (ROMs) nowadays play an important role in industry and significantly improve how full-order model (FOM) results are used with respect to optimization problems, merging experimental and numerical data as well as within an interactive design process [
1,
2,
3]. By computing FOM solution snapshots for various parameter combinations in the so-called offline phase, these results can be evaluated and exploited in near real time during the online phase. In this paper, the order reduction is performed using proper orthogonal decomposition (POD) [
4] coupled with a radial basis function (RBF) [
5] interpolation method (POD+I) for predictions of unknown parameter combinations. The main FOM input in mind is a computational fluid dynamic (CFD) solution.
Utilizing POD+I, especially for industrial use cases, is often not straight forward, since many aspects of the POD computation needs to be taken into account. Due to the POD requirement of conform meshes across the input snapshots, these methods struggle with:
Discontinuous parameters.
Complex geometry transformations.
Nonlinear effects across the parameter domain
often times not being modeled accurately.
In this paper, a new approach in dealing with the aforementioned shortcomings is introduced. The proposed method is referred to as Overset POD (oPOD) since it shares some similarities with the overset mesh CFD approach in which multiple overlapping meshes are used within the CFD context.
In the oPOD approach, the ROM domain is separated into multiple subdomains. For each subdomain a POD+I model is computed. The individual predictions for an unknown parameter combination are then merged together for the complete ROM domain. By separating the domains, the POD requirements can be fulfilled more easily. However, this introduces difficulties in mapping the FOM data to the subdomains. The difficulties that can arise are possible subdomain elements, that, due to mesh deformation, are no longer part of the FOM domain. Furthermore, in order to address this issue, an enhanced snapshot reconstruction method is proposed that alleviates this problem, so that the well-established ROM methods can be used.
The main focus of oPOD is to broaden the usage of possible parameters by allowing discontinuous parameters and likely complex geometry transformation or modeling nonlinear effects. This is demonstrated on two test cases. The main applications of oPOD in mind are ROM prediction visualizations in the context of an industry-grade interactive design process.
The novel contribution of this paper is the proposed oPOD work flow, which models discontinuous parameter and complex geometry transformations by separating the ROM domain. This is covered in
Section 2. Another original contribution is an enhancement of the snapshot reconstruction algorithm which is originally based on [
6]. This part is covered in
Section 3.3.
This paper is organized as follows:
Section 2 introduces the oPOD and explains in detail the problem it addresses. Moreover, an overview of similar methods is given and the new contributions of this paper are outlined. In
Section 3, the theoretical background and necessary algorithms are introduced and reviewed, followed by
Section 4, in which numerical results for an analytic test case as well as the DrivAer body in a full CFD environment are analyzed. The final
Section 5 discusses the obtained results.
2. Overset POD Method
In this section, the oPOD method, its terminology, as well as the steps involved in creating and using an oPOD are described. First, the key problems oPOD addresses are explained in detail and a brief overview of the method is given, followed by an in-depth explanation in the following subsections and a summary. In order to better describe and illustrate potential use cases and the oPOD method itself, a schematic CFD case of a parameterized airfoil with and without a flap is utilized, as displayed in
Figure 1.
The use case consists of an airfoil in a flow with velocity U and the continuous parameters: angle of attack and trailing flap at position . The discrete parameter controls whether or not a flap is present in the simulation.
2.1. Problem Definition
A hard requirement for using POD is a congruent ordering of values across all snapshots. For snapshots resulting from CFD simulacvtion, the ordering is determined by the CFD index space which is unique for each generated CFD grid. Hence, utilizing snapshots for different geometries is problematic. Utilizing mesh morphing (see [
7]) keeps the CFD element order and deforms the mesh with its geometries to a new configuration. Snapshots resulting from these transformations share the same index space and can be used in a POD context. This strategy works well for a wide range of deformation problems but has its short comings. Large or nonlinear deformations can lead to mesh quality degradation and therefore negatively affect the CFD calculations. The same problem applies to deformations close to a wall or stationary object.
This is schematically depicted in
Figure 2 for different parameters
. The cells between the stationary airfoil and the morphed flap are significantly stretched and a good resolution of the flow characteristics in this region is impaired.
While the problems with mesh deformations are mostly gradual with increasing magnitude of the deformation, it is not possible to model discontinuous parameters with POD.
Figure 1 shows the use case with and without a flap. For both cases, a new grid needs to be generated and the resulting snapshots do not share the same CFD index space.
2.2. General oPOD Overview
In general, oPOD uses a set of CFD snapshots that are all based on a consistent set of parameters. Dependent on the use case, the CFD domain is split into multiple oPOD subdomains (step 1). For each subdomain, a new mesh is generated, which can, depending on the oPOD application, be significantly coarser than a CFD mesh. The CFD snapshots are then mapped onto the created oPOD subdomains (step 2) and a subdomain-specific local POD+I reduced-order model is created (step 3). In order to perform an oPOD prediction (step 4), the relevant POD+I models in the corresponding subdomains are queried and the individual predictions are combined to again fill the complete oPOD domain.
2.3. oPOD Domains (Step 1)
The criteria on how the CFD snapshots are split into the oPOD domains are use-case-specific and one of the most critical steps in the oPOD process. During this step, it is important to keep in mind how an oPOD prediction (step 4) is performed and how the multiple oPOD domains interact with one another.
The primary reason for creating an oPOD subdomain is to handle snapshots that are based on different CFD index spaces. As discussed in
Section 2.1, the main reasons this occurs are a CFD input deck where no mesh morphing was applied and each snapshot is based on a unique CFD index space.
The subdomain creation is demonstrated below for the discontinuous parameter for the CFD flow example above.
Discontinuous Parameter
In general, a separate oPOD domain decouples certain regions from one another. It is therefore possible to embed a discontinuous CFD snapshot parameter in a single or multiple overlapping domains.
This is visualized in
Figure 3 in which the discontinuous CFD snapshot parameter
is used to model a single airfoil or an airfoil with a trailing flap. The oPOD domains created based on the CFD domain
is a background domain
that only contains the airfoil for
and for
a separate foreground domain
. In
Figure 3, the background domain almost shares the same bounds as the CFD domain and only models the flow around as well as the wake of airfoil. The foreground domain models the region around the flap and the trailing wake of it.
A prediction for a sought parameter
now would query the model of the background domain and depending on the value of
the foreground model (if
). An interpolation region
can be used on the boundary of the foreground domain to smooth out the predictions of the background and foreground models (more on this is discussed in step 4).
In this example, it is quite obvious that the setup of the domains is very dependent on the use case. Since, depending on , the wake of the flow would have significantly different features, the foreground domains need to extend as far into the background domain as necessary in order to accurately model these features. Moreover, any other parameterization or a larger value range for the parameter would lead to a different setup of the foreground domains.
2.4. Mapping Snapshots from CFD to oPOD Domains (Step 2)
After setting up the oPOD domains resulting in new meshes for each domain in step 1, the CFD snapshots need to be mapped onto these meshes. If any geometric deformation on the CFD snapshot was applied, it needs to be applied to the oPOD domain as well by using, among others, radial basis functions [
8,
9] or the linear elasticity equations [
10]. The resulting elements of the deformed oPOD meshes may end up outside of the CFD domain. By using the method of signed distances [
11,
12] these elements can be identified and are left out of the mapping process.
With the prepared and aligned oPOD domains to the corresponding CFD snapshots, the modeled variables can be mapped from the CFD snapshots to the oPOD domains. Possible mesh interpolation methods are a consistent interpolation scheme such as the advancing front algorithm [
13], an R-tree spatial search algorithm [
14] or a conservative interpolation method by local Galerkin projection [
15].
Another important feature of the mapping process is that not all CFD snapshots need to be mapped onto all oPOD domains. Visiting the example in
Figure 3 again shows that each domain only receives snapshots for the corresponding value of
. Hence, this parameter is not part of the domain-specific POD+I model since it is constant for all domain-specific snapshots. Moreover, the parameter
is irrelevant for the background domain.
2.5. POD+I Creation in oPOD Domains (Step 3)
Once the oPOD domain-specific snapshots are prepared in steps 1 and 2, the POD+I model of each domain can be computed. In the case that all points/cells/elements of the oPOD subdomain are part of the CFD domain, a POD+I model based on the mapped snapshots can be computed. Otherwise, possibly due to transformations, it is possible that the domain for a number of snapshots lie outside of the corresponding CFD domain. In this case, not all variables of the CFD snapshot could be mapped on the corresponding oPOD snapshot domain. In order to also use these snapshots for the local POD+I models, a snapshot reconstruction algorithm needs to be employed. This reconstruction is discussed in detail in
Section 3.3.
The Algorithm 1 summarizes steps 2 and 3. It shows how, based on the CFD snapshots
and a domain-specific reference grid
G, a local oPOD domain POD+I model can be created. By looping over all available CFD snapshots, the relevant domain-specific snapshots are identified and the corresponding parameter vector is transformed to the local domain-specific parameters (lines 3 to 5). If a geometry transformation is applied, the reference grid
G is transformed, resulting in a transformed grid
. Otherwise, the reference grid
G is used (line 6). After mapping the CFD snapshot on the transformed mesh
, the resulting snapshots with the corresponding parameters are stored in separate sets (lines 7 to 9). After the loop finishes, the local POD+I model is computed based on the snapshots and parameters present in the stored sets (line 10).
Algorithm 1 oPOD domain-specific algorithm for local POD+I model creation. |
Require:n CFD snapshots for parameter with oPOD domain-specific reference grid G oPOD domain-specific parameter transformation with
- 1:
- 2:
- 3:
for
do - 4:
if is relevant for local POD+I then - 5:
- 6:
- 7:
- 8:
- 9:
- 10:
POD+I
|
2.6. oPOD Prediction (Step 4)
An oPOD prediction for a sought parameter
is performed by querying the local POD+I models in only the relevant oPOD domains. Since the parameters used by the local POD+I models differ, it is necessary to filter or possibly transform the oPOD parameters to the parameters used by the local models. Depending on the construction of the oPOD domains, the predictions of various oPOD domains can be smoothed out. This is especially necessary if the domains are not large enough to model domain-specific phenomena and a more visualization-driven application is focused. Here, the signed distances from
Section 2.4 can be used to smooth out the predictions of the multiple domains.
With the signed distances
, computed at each element of the foreground domain with respect to the edge of the domain or a geometric object, and the interpolation distance
r, the interpolation region (
Figure 3) is defined. By mapping the results of the background domain onto the foreground domain (similar to step 2), the predictions
and
of the fore and background model, respectively, are now present in each element of the foreground domain. The interpolated prediction
is now computed with
2.7. Summary
An alternative visualization of Algorithm 1 for the creation of the POD+I models in the separate oPOD subdomains is displayed in
Figure 4 as a flow chart.
Based on a set of already created oPOD subdomains,
Figure 4a displays how, for a specific subdomain
, the CFD snapshots and parameter are mapped, transformed and the resulting snapshots
and parameters
are used to compute the domain-specific
model. The details of the “map and transform CFD snapshots” block are shown in
Figure 4b. In a loop over all CFD snapshots, it is checked if a specific CFD snapshot
with the parameter
is relevant for the current oPOD subdomain
. If this is the case, then the parameter and reference grid are transformed and the CFD solution is mapped onto the transformed grid
. The resulting snapshot
and parameter
are stored and used to compute the domain-specific
model in
Figure 4a.
All resulting subdomain models
are stored and used again for an oPOD prediction of a sought-after parameter combination as outlined in
Section 2.6.
3. Theory
The aim to use or enhance predictions of reduced-order models is a major focus in the field and “…has seen tremendous development in the past two decades, especially in the broad domain of computational mechanics” [
16]. An overview of the latest snapshot-based methods for parameterized partial differential equations are available in [
1,
16].
Related approaches to oPOD can be found in the literature. Shifted POD [
17] “…extends the POD by introducing time-dependent shifts of the snapshot matrix” [
17]. With this shift, it is possible to improve the POD predictions considerably by reducing the nonlinear effects across the snapshots. While it is not the key focus of this paper, an oPOD subdomain can be transformed and therefore “shifted” analogous the shifted POD, making use of a similar improvement as a consequence. The Domain-Decomposition POD (DD-POD) [
7] utilizes POD in the context of CFD in order to model turbulent flows around parameterized geometries. Here, the ROM subdomain is coupled to CFD through an overlapping region using a Schwarz-type method [
18], resulting in a nonlocal CFD boundary condition. This is comparable to oPOD in the sense that oPOD subdomains are also coupled to the surrounding domain.
The remaining section reviews the methods involved in computing a POD+I model with a special focus on snapshot reconstruction, which is needed in oPOD in the case the an oPOD subdomain transformation leads to elements outside the FOM domain.
3.1. Radial Basis Functions/Kriging
Radial basis function (RBF) or Kriging models are suitable to model complex functions. A comprehensive guide can be found in [
5,
19], and a short overview over the core method and features is given here.
With samples
and responses
, the model approximation
of an unknown sample
can be approximate by
with
, the basis function
and the weights
. The weights are determined by solving the linear system of equations
, with
being the Gram matrix which is defined as
,
[
19] (
Section 2.3).
Popular choices for the RBF model basis function
are thin plate spine (TPS) with
and cubic with
, with
r being the euclidean distance of the two sample points
. A characteristic feature of the model basis functions is that their response decreases or increases monotonically with respect to the distance of the two samples [
5].
The Kriging basis function is defined with
and introduces a varying exponent
, which typically is set to either 1 or 2, and a hyperparameter vector
, which can be determined by a maximum likelihood estimation [
19] (
Section 2.4).
3.2. Proper Orthogonal Decomposition
In the field of fluid dynamics, three established reduced-order model-based proper orthogonal decomposition (POD) approaches exist by either using an interpolation coupled method (POD+I) [
6,
20,
21], a CFD flux residual minimization scheme [
22,
23] or a Galerkin projection-based framework [
24]. A comprehensive introduction can be found in [
4,
16,
24]. A brief review of POD is given below.
For a set of independent parameters
and CFD flow solution snapshots
,
; the snapshot matrix is defined by
By solving the
dimensional snapshot correlation eigenvalue problem
the normalized eigenvectors
can be found. By ordering the eigenvalues and corresponding eigenvectors based on
, the
m POD modes form an orthonormal basis, which is given by
The coefficients
are determined with Equations (
2) and
3 by
Initial snapshots
can be expressed with the newly found basis
and an approximate snapshot
at an untried parameter combination
can be computed by a coefficient vector
analogous to Equation (
4) with
The coefficient vector can be obtained by interpolating its components with a RBF or Krigin model at the parameter combination based on the data set . The POD coefficient matrix is then defined with and the POD modes with . A mode reduction of is applied to the POD by stripping the last rows and columns from the POD coefficient and modes matrix, respectively.
3.3. POD+I with Snapshot Reconstruction
Based on a snapshot reconstruction method introduced in [
6,
25], it is possible to iteratively guess and fill possibly missing elements of the snapshots. For a fixed number of iterations, a POD based on the current snapshot ensemble is computed, and the missing elements are repaired by using the resulting POD modes of the current iteration. In [
6], a constant number of modes
p is proposed. Setting
p too low results in only low-level features being set in the missing elements, while setting
p too high does not average out the to-be-detected features sufficiently.
In this paper, an improved method is introduced by determining
p separately in each iteration of the snapshot reconstruction with the
-Score of the corresponding interpolation model of the POD coefficients. The
-Score is a measure for the accuracy of a surrogate model. An
-Score of 1 denotes a perfect accuracy in the prediction, while an
-Score of 0 denotes a model that constantly predicts the expected value of the responses regardless of the model input. Ref. [
26] suggests to reduce the modes of a POD based on the
-Score of the POD coefficients surrogate models by reducing the modes of the POD to the point that all coefficient surrogates have an
. By using the
-Score measure in the snapshot reconstruction procedure, it is possible to include the snapshot features depending on the current state of the snapshot ensemble during this iterative process.
The Algorithm 2 enlists in detail the snapshot reconstruction procedure with the initial setup in lines 1 and 2 where the initial snapshot matrix
is constructed by setting the missing values to the mean of the snapshot matrix
. In
iterations, the reduced POD modes and coefficients are obtained with the
-Score reduction and an
-Score cut-off set to 0 (lines 4–5). Lines 7–9 apply the mask matrix to the modes and a best guess for the POD coefficient vector
is computed and applied to the corresponding column of the snapshot matrix of the next iteration (line 10). At last, the final POD modes and coefficients are computed after the loop finishes based on the final snapshot matrix
resulting from the last iteration.
Algorithm 2 Masked POD computation. |
Require:n snapshots for parameter with and A mask matrix
|
5. Conclusions
A novel method for handling discontinuous parameters for POD+I ROMs is presented. The steps involved are discussed and the method is demonstrated for two use cases. The industrial DrivAer use case shows significant improvements compared with an alternative way of modeling discontinuous parameters. It is possible to perform complex geometry transformation in the vicinity of static walls without degrading the CFD mesh. The oPOD prediction errors for the analytic use case are 30 times smaller compared with the POD+I method. This is due to the introduction of the transforming subdomains, which reduces the nonlinearities from the model perspective considerably (analogous to the shifted POD [
17] method). In case of incomplete data due to oPOD subdomain transformations, an improved snapshot reconstruction method is proposed. It is shown that for the analytic use case the error only slightly increases with an increase in missing data. Compared with the standard POD+I method, the error is ten times smaller for an equivalent of
missing data. The DrivAer as well as the analytic use case make use of a discontinuous parameter which is seamlessly included in the newly proposed oPOD method.
The demonstrated results motivate further research. Possible fields could focus on automatically setting up the oPOD subdomains. Currently, this is a manual task and human insight is required to determine the oPOD subdomain bounds. A future method could automatically detect the errors introduced at the subdomain bounds and resize the subdomains accordingly or regulate the size of the interpolation region. Moreover, a classification for various use cases could be of interest to further increase the robustness of the new method.