Skip to content

Commit 68d81e5

Browse files
authored
Merge pull request #15 from Pressio/rename-pressio-to-pressio-rom
Rename pressio -> pressio-rom
2 parents c431db7 + 6f9a04f commit 68d81e5

File tree

3 files changed

+61
-49
lines changed

3 files changed

+61
-49
lines changed

docs/source/hifire.rst

Lines changed: 41 additions & 41 deletions
Original file line numberDiff line numberDiff line change
@@ -3,15 +3,15 @@ HIFiRE-1
33

44
One of our driving use cases for Pressio is for simulations of hypersonic
55
aerodynamics. Model reduction is necessary because computational models
6-
are widely used in the hypersonic flight regime due to the expense and difficulty
6+
are widely used in the hypersonic flight regime due to the expense and difficulty
77
of flight tests and experiments. The reliance on computational models as well as
8-
the risk tolerances in hypersonic applications requires a greater emphasis on
9-
trustworthiness of these models. Unfortunately, crucial tasks including
8+
the risk tolerances in hypersonic applications requires a greater emphasis on
9+
trustworthiness of these models. Unfortunately, crucial tasks including
1010
parameter calibration, uncertainty/error propogation, and (robust) design
11-
optimization require many model evalutations.
11+
optimization require many model evalutations.
1212

13-
Model reduction with Pressio enables these many query analysis for higher
14-
fidelity aerodynamic simulations such as finite volume models of the
13+
Model reduction with Pressio enables these many query analysis for higher
14+
fidelity aerodynamic simulations such as finite volume models of the
1515
Navier-Stokes and Reynolds-Averaged Navier--Stokes (RANS) equations. The
1616
following section contains results obtained using Pressio and the Sandia
1717
Aerodynamics and Reentry Code (SPARC) `[Howard et al. 2017][1] <https://arc.aiaa.org/doi/abs/10.2514/6.2017-4407>`_.
@@ -20,35 +20,35 @@ The results shown below are presented in greater detail in `[Blonigan et al. 202
2020
Description
2121
-----------
2222

23-
The HiFIRE-1 (Hypersonic International Flight Research Experimentation) vehicle was an instrumented sounding rocket flown to collect data on hypersonic boundary layer transition `[Kimmeland and Adamczak, 2012][3] <https://arc.aiaa.org/doi/10.2514/6.2012-1088>`_.
23+
The HiFIRE-1 (Hypersonic International Flight Research Experimentation) vehicle was an instrumented sounding rocket flown to collect data on hypersonic boundary layer transition `[Kimmeland and Adamczak, 2012][3] <https://arc.aiaa.org/doi/10.2514/6.2012-1088>`_.
2424
We consider a high-fidelity RANS simulation of the payload shown below in the 3D rendering:
2525

2626
.. figure:: ./figures/hifire1/hifire-1-booster.png
2727
:width: 70 %
2828
:align: center
2929
:alt: HIFiRE-1 booster stack
3030

31-
HIFiRE-1 booster stack [Kimmeland and Adamczak, 2012][3]
31+
HIFiRE-1 booster stack [Kimmeland and Adamczak, 2012][3]
3232

33-
The range of flight conditions used in our simulations are chosen to be similar to the flow conditions of a wind tunnel test of HiFIRE-1, specfically run 34 of the experimental campaign undertaken at the CALSPAN University of Buffalo Research Center (CUBRC) `[Wadhams et al., 2008][4] <https://doi.org/10.2514/1.38338>`_.
33+
The range of flight conditions used in our simulations are chosen to be similar to the flow conditions of a wind tunnel test of HiFIRE-1, specfically run 34 of the experimental campaign undertaken at the CALSPAN University of Buffalo Research Center (CUBRC) `[Wadhams et al., 2008][4] <https://doi.org/10.2514/1.38338>`_.
3434
A table with wind tunnel conditions corresponding to run 34 is included below:
3535

3636

3737
.. list-table:: Title
3838
:widths: 50 50
3939
:header-rows: 0
4040

41-
* - Density
41+
* - Density
4242
- :math:`0.070215 kg/m^3`
4343
* - Velocity
4444
- :math:`2168.7 m/s`
45-
* - Mach Number
45+
* - Mach Number
4646
- :math:`7.1`
47-
* - Angle of attack
47+
* - Angle of attack
4848
- :math:`2.0^{\circ}`
4949
* - Temperature
5050
- :math:`231.91 K`
51-
* - Reynolds Number
51+
* - Reynolds Number
5252
- :math:`1e7 1/m`
5353

5454

@@ -58,39 +58,39 @@ For this case, turbulent transition is modeled by tripping the boundary layer 0.
5858
Full order model (FOM)
5959
----------------------
6060

61-
Since the HIFiRE-1 payload geometry is axisymmetric, but the angle of attack is non-zero, we assume symmetry about the centerline anduse the half mesh shown below
61+
Since the HIFiRE-1 payload geometry is axisymmetric, but the angle of attack is non-zero, we assume symmetry about the centerline anduse the half mesh shown below
6262

6363
.. figure:: ./figures/hifire1/mesh.png
6464
:scale: 8 %
6565
:alt: HIFiRE-1 mesh
66-
67-
HIFiRE-1 mesh [Blonigan et al., 2021][2]
66+
67+
HIFiRE-1 mesh [Blonigan et al., 2021][2]
6868

6969
The mesh has 2,031,616 cells, corresponding to a state-space size of 12,189,696 since
70-
we are using the one-equation Spalart-Allmaras turbulence model.
71-
The FOMs were solved to a steady state using pseudo time stepping with a backward Euler integration scheme.
70+
we are using the one-equation Spalart-Allmaras turbulence model.
71+
The FOMs were solved to a steady state using pseudo time stepping with a backward Euler integration scheme.
7272
The stopping criteria were a 5 order of magnitude.
7373

7474
A total of 36 FOMs are run at the sample points shown below
7575

7676
.. figure:: ./figures/hifire1/param_space.png
7777
:scale: 50 %
7878
:alt: HIFiRE-1 FOM samples
79-
80-
FOM samples [Blonigan et al., 2021][2]
79+
80+
FOM samples [Blonigan et al., 2021][2]
8181

8282

8383
The 24 FOMs labeled "train" are used to construct a POD basis for the ROM; the FOMs labeled "test" are used to compare the ROM against.
84-
The plots below show several flow solutions.
84+
The plots below show several flow solutions.
8585

8686
.. figure:: ./figures/hifire1/fom_solutions.png
8787
:scale: 50 %
8888
:alt: HIFiRE-1 FOM solutions
89-
90-
FOM solutions colored by Mach number and wall heat flux [Blonigan et al., 2021][2]
9189

92-
The main feature of the flow field include a bow shock near the nose, an expansion wave just aft of the cone and an oblique shock upstream of the flange.
93-
Boundary layer transition is visible in the sudden jump in heat flux.
90+
FOM solutions colored by Mach number and wall heat flux [Blonigan et al., 2021][2]
91+
92+
The main feature of the flow field include a bow shock near the nose, an expansion wave just aft of the cone and an oblique shock upstream of the flange.
93+
Boundary layer transition is visible in the sudden jump in heat flux.
9494

9595

9696

@@ -104,15 +104,15 @@ We use a Least-Squares Petrov--Galerkin (LSPG) ROM with a conservation constrain
104104
The conservation constraint is applied to the entire volume, as discussed in section III.B of `[Blonigan et al. 2021][2] <https://arc.aiaa.org/doi/10.2514/1.J059785>`_.
105105
The constrained LSPG solver is implemented using a customized nonlinear solver in Pressio. The solver is run until the relative
106106
residual of the normal equations is reduced by 5 orders of magnitude.
107-
The initial guess for the ROM generalized coordinates were computed with inverse distance interpolation as suggested by Washabaugh (Algorithm 23) [Washabaugh 2016][5].
108-
The basis is constructed from the leading 4 POD modes computed from all 24 training snapshots.
109-
The POD modes are scaled to account for the different magnitudes of each conserved quantity; see section IV.C of `[Blonigan et al. 2021][2] <https://arc.aiaa.org/doi/10.2514/1.J059785>`_ for more details of the ROM method.
107+
The initial guess for the ROM generalized coordinates were computed with inverse distance interpolation as suggested by Washabaugh (Algorithm 23) [Washabaugh 2016][5].
108+
The basis is constructed from the leading 4 POD modes computed from all 24 training snapshots.
109+
The POD modes are scaled to account for the different magnitudes of each conserved quantity; see section IV.C of `[Blonigan et al. 2021][2] <https://arc.aiaa.org/doi/10.2514/1.J059785>`_ for more details of the ROM method.
110110

111111
TODO more details on what features of Pressio are used?
112112

113-
Hyper-reduction is achieved using a sample mesh composed of 16,253 randomly selected cells
114-
in which the residual is sampled, along with neighboring cells and neighbors of neighbors, yielding 364,468 cells in total,
115-
equivalent to roughly 17.9% of the full mesh.
113+
Hyper-reduction is achieved using a sample mesh composed of 16,253 randomly selected cells
114+
in which the residual is sampled, along with neighboring cells and neighbors of neighbors, yielding 364,468 cells in total,
115+
equivalent to roughly 17.9% of the full mesh.
116116
It is shown below:
117117

118118
.. figure:: ./figures/hifire1/sample_mesh8em3.png
@@ -125,33 +125,33 @@ It is shown below:
125125
Results
126126
^^^^^^^
127127

128-
Using this sample mesh resulted in a ROM with a **speed-up of 300-1,000**; that is, around 300-1,000 ROMs could be run with the computational resources required for a single FOM.
129-
This substantial cost reduction comes with **almost no loss in accuracy**: a maximum state error of around than 0.3% across all 12 test cases, as well as errors of no more than 3% in integrated wall heat flux.
128+
Using this sample mesh resulted in a ROM with a **speed-up of 300-1,000**; that is, around 300-1,000 ROMs could be run with the computational resources required for a single FOM.
129+
This substantial cost reduction comes with **almost no loss in accuracy**: a maximum state error of around than 0.3% across all 12 test cases, as well as errors of no more than 3% in integrated wall heat flux.
130130

131-
TODO ROM vs. FOM flow visualization(s)
131+
TODO ROM vs. FOM flow visualization(s)
132132

133-
The following figure shows the error of the wall pressure and heat flux computed by the ROM for test case 10.
133+
The following figure shows the error of the wall pressure and heat flux computed by the ROM for test case 10.
134134

135135
.. figure:: ./figures/hifire1/surface_error.png
136136
:scale: 65 %
137137
:alt: Relative error fields for the ROM solution to test case 10.
138138

139-
The ROM computes the surface quantities with errors of 1-3% or less over most of the vehicle surface.
140-
This is substantially more accurate surface quantities than the interpolation used for the initial guess shown on top.
139+
The ROM computes the surface quantities with errors of 1-3% or less over most of the vehicle surface.
140+
This is substantially more accurate surface quantities than the interpolation used for the initial guess shown on top.
141141

142142
Additional results can be found in `[Rizzi et al. 2020][3] <https://arxiv.org/abs/2003.07798>`_.
143143

144144

145-
.. tip:: ROMs are low cost **and** accurate
145+
.. tip:: ROMs are low cost **and** accurate
146146

147-
A hyper-reduced ROM produces results within 1% of the full model results, but only requires around 1% of the computational resources needed for the full model.
147+
A hyper-reduced ROM produces results within 1% of the full model results, but only requires around 1% of the computational resources needed for the full model.
148148

149149

150150
References
151151
----------
152152

153153
- [1]: Micah Howard, Andrew Bradley, Steven W. Bova, James Overfelt, Ross Wagnild, Derek Dinzl, Mark Hoemmen and Alicia Klinvex. "Towards Performance Portability in a Compressible CFD Code," AIAA 2017-4407. 23rd AIAA Computational Fluid Dynamics Conference. June 2017.
154-
- [2]: Patrick J. Blonigan, Francesco Rizzi, Micah Howard, Jeffrey A. Fike, and Kevin T. Carlberg, Model Reduction for Steady Hypersonic Aerodynamics via Conservative Manifold Least-Squares Petrov–Galerkin Projection, AIAA Journal 2021 59:4, 1296-1312
154+
- [2]: Patrick J. Blonigan, Francesco Rizzi, Micah Howard, Jeffrey A. Fike, and Kevin T. Carlberg, Model Reduction for Steady Hypersonic Aerodynamics via Conservative Manifold Least-Squares Petrov–Galerkin Projection, AIAA Journal 2021 59:4, 1296-1312
155155
- [3]: Roger Kimmel and David Adamczak. "HIFiRE-1 Background and Lessons Learned," AIAA 2012-1088. 50th AIAA Aerospace Sciences Meeting including the New Horizons Forum and Aerospace Exposition. January 2012.
156156
- [4]: Wadhams, T. P., Mundy, E., MacLean, M. G., and Holden, M. S., “Ground Test Studies of the HIFiRE-1 Transition Experiment Part 1: Experimental Results,” Journal of Spacecraft and Rockets, Vol. 45, No. 6, 2008, pp. 1134–1148.
157-
- [5]: K. M. Washabaugh, "Fast Fidelity for Better Design: A Scalable Model Order Reduction Framework for Steady Aerodynamic Design Applications", PhD Thesis, Department of Aeronautics and Astronautics, Stanford University, August 2016.
157+
- [5]: K. M. Washabaugh, "Fast Fidelity for Better Design: A Scalable Model Order Reduction Framework for Steady Aerodynamic Design Applications", PhD Thesis, Department of Aeronautics and Astronautics, Stanford University, August 2016.

docs/source/index.rst

Lines changed: 17 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -37,10 +37,20 @@ The `Pressio EcoSystem <https://github.com/Pressio>`_ includes:
3737
- Latest Release
3838
-
3939

40-
* - ``pressio``
41-
- C++ core library: ode, solvers, ROMs, etc
42-
- 0.14.0
43-
- `Documentation <https://pressio.github.io/pressio>`__
40+
* - ``pressio-rom``
41+
- C++ core library: ode, solvers, ROMs, etc
42+
- 0.15.0
43+
- `Documentation <https://pressio.github.io/pressio-rom>`__
44+
45+
* - ``pressio-ops``
46+
- Core operations for the Pressio ecosystem
47+
- 0.15.0
48+
- `Documentation <https://pressio.github.io/pressio-ops>`__
49+
50+
* - ``pressio-log``
51+
- Header-only logging utility for Pressio libraries
52+
- 0.15.0
53+
- `GitHub <https://github.com/Pressio/pressio-log>`__
4454

4555
* - ``pressio-tutorials``
4656
- Tutorials suite for the pressio C++ library
@@ -75,7 +85,9 @@ The `Pressio EcoSystem <https://github.com/Pressio>`_ includes:
7585
:maxdepth: 1
7686
:hidden:
7787

78-
C++ library <https://pressio.github.io/pressio>
88+
C++ library <https://pressio.github.io/pressio-rom>
89+
pressio-ops <https://pressio.github.io/pressio-rom>
90+
pressio-log <https://github.com/Pressio/pressio-log>
7991
pressio-tutorials <https://pressio.github.io/pressio-tutorials>
8092
pressio-demoapps <https://pressio.github.io/pressio-demoapps>
8193
pressio4py <https://pressio.github.io/pressio4py/html/index.html>

docs/source/seismic.rst

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,9 @@
11
Seismic Shear Waves
22
===================
33

4-
This work focuses on projection-based reduced-order models (ROMs) of linear time-invariant (LTI) dynamical systems.
5-
For such systems, current practice relies on ROM formulations expressing the state as a rank-1 tensor (i.e., a vector),
6-
leading to computational kernels that are memory bandwidth bound and, therefore, ill-suited for scalable performance on modern architectures. This weakness can be particularly limiting when tackling many-query studies, where one needs to run a large number of simulations.
4+
This work focuses on projection-based reduced-order models (ROMs) of linear time-invariant (LTI) dynamical systems.
5+
For such systems, current practice relies on ROM formulations expressing the state as a rank-1 tensor (i.e., a vector),
6+
leading to computational kernels that are memory bandwidth bound and, therefore, ill-suited for scalable performance on modern architectures. This weakness can be particularly limiting when tackling many-query studies, where one needs to run a large number of simulations.
77
This work introduces a reformulation, called rank-2 Galerkin, of the Galerkin ROM for LTI dynamical systems which converts the nature of the ROM problem from memory bandwidth to compute bound. We present the details of the formulation and its implementation, and demonstrate its utility through numerical experiments using, as a test case, the simulation of elastic seismic shear waves in an axisymmetric domain. We quantify and analyze performance and scaling results for varying numbers of threads and problem sizes. Finally, we present an end-to-end demonstration of using the rank-2 Galerkin ROM for a Monte Carlo sampling study. We show that the rank-2 Galerkin ROM is one order of magnitude more efficient than the rank-1 Galerkin ROM (the current practice) and about 970 times more efficient than the full-order model, while maintaining accuracy in both the mean and statistics of the field.
88

99
The code for shear wave simulation code developed for this work is `available here <https://github.com/Pressio/SHAW>`__.

0 commit comments

Comments
 (0)