Hostname: page-component-6766d58669-zlvph Total loading time: 0 Render date: 2026-05-15T11:14:07.499Z Has data issue: false hasContentIssue false

Data-driven prediction of unsteady flow over a circular cylinder using deep learning

Published online by Cambridge University Press:  23 September 2019

Sangseung Lee
Affiliation:
Department of Mechanical Engineering, Pohang University of Science and Technology, 77 Cheongam-ro, Nam-gu, Pohang, Gyeongbuk 37673, Republic of Korea
Donghyun You*
Affiliation:
Department of Mechanical Engineering, Pohang University of Science and Technology, 77 Cheongam-ro, Nam-gu, Pohang, Gyeongbuk 37673, Republic of Korea
*
Email address for correspondence: dhyou@postech.ac.kr

Abstract

Unsteady flow fields over a circular cylinder are used for training and then prediction using four different deep learning networks: generative adversarial networks with and without consideration of conservation laws; and convolutional neural networks with and without consideration of conservation laws. Flow fields at future occasions are predicted based on information on flow fields at previous occasions. Predictions of deep learning networks are made for flow fields at Reynolds numbers that were not used during training. Physical loss functions are proposed to explicitly provide information on conservation of mass and momentum to deep learning networks. An adversarial training is applied to extract features of flow dynamics in an unsupervised manner. Effects of the proposed physical loss functions and adversarial training on predicted results are analysed. Captured and missed flow physics from predictions are also analysed. Predicted flow fields using deep learning networks are in good agreement with flow fields computed by numerical simulations.

Information

Type
JFM Papers
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 in any medium, provided the original work is properly cited.
Copyright
© 2019 Cambridge University Press
Figure 0

Figure 1. The computational domain for numerical simulations. $N$ denotes the number of mesh points, where $N_{x_{1}}=20$, $N_{x_{2}}=30$, $N_{x_{3}}=50$, $N_{x_{4}}=50$$N_{y_{1}}=30$, $N_{y_{2}}=30$, $N_{y_{3}}=80$ and $N_{\unicode[STIX]{x1D703}}=150$. The domain size and the number of mesh points in the spanwise direction are $6D$ ($\unicode[STIX]{x03C0}D$ for flow at $Re_{D}\geqslant 1000$) and $96$, respectively.

Figure 1

Figure 2. (a) Instantaneous fields of flow variables $u/U_{\infty },v/U_{\infty },w/U_{\infty }$ and $p/\unicode[STIX]{x1D70C}U_{\infty }^{2}$ on a $7D\times 7D$ domain with $250\times 250$ grid cells. (b) The procedure of subsampling five consecutive flow fields to the input (${\mathcal{I}}$) and the ground truth (${\mathcal{G}}({\mathcal{I}})$) on a $0.896D\times 0.896D$ domain with $32\times 32$ grid cells.

Figure 2

Figure 3. Illustration of a fully connected layer.

Figure 3

Figure 4. Illustration of a convolution layer.

Figure 4

Figure 5. Illustration of a $2\times 2$ max pooling layer.

Figure 5

Table 1. Configuration of the generator model in GANs and multi-scale CNNs (see figure 6 for connections).

Figure 6

Figure 6. (a) Schematic diagram of generator models. ${\mathcal{I}}$ is the set of input flow fields (see figure 2) and ${\mathcal{I}}_{k}$ denotes interpolated input flow fields on an identical domain with $1/(2^{k}\times 2^{k})$ coarser grid resolution. $G_{k}$ indicates a generative CNN which is fed with input ${\mathcal{I}}_{k}$, while $G_{k}({\mathcal{I}})$ indicates the set of predicted flow fields from the generative CNN $G_{k}$. $R_{k}\circ ()$ indicates the rescale operator, which upscales the grid size twice in both directions. (b) Example of input flow fields and the corresponding prediction of the flow field on a test data.

Figure 7

Table 2. Configuration of the discriminator model inside the GAN.

Figure 8

Figure 7. Schematic diagram of the discriminator model: $D_{k}$ indicates the discriminative network which is fed with $G_{k}({\mathcal{I}})$ and ${\mathcal{G}}_{k}({\mathcal{I}})$, $G_{k}({\mathcal{I}})$ indicates the set of predicted flow fields from the generative CNN $G_{k}$, while ${\mathcal{G}}_{k}({\mathcal{I}})$ indicates the set of ground truth flow fields.

Figure 9

Figure 8. Comparison of the streamwise velocity ($u/U_{\infty }$) at $Re_{D}=3900$ predicted in Cases A–D. (a) Input set; (b) after a single prediction step ($1\unicode[STIX]{x1D6FF}t$), and (c) nine more recursive prediction steps ($10\unicode[STIX]{x1D6FF}t$). 20 contour levels from $-$0.5 to 1.0 are shown. Solid lines and dashed lines indicate positive and negative contour levels, respectively.

Figure 10

Figure 9. Local distributions of errors for $u/U_{\infty }$ after a single prediction step at (a$Re_{D}=150$ (10 contour levels from 0 to 0.04), (b$Re_{D}=400$ (10 contour levels from 0 to 0.04) and (c$Re_{D}=3900$ (10 contour levels from 0.0 to 0.33). Locations of $L_{\infty }$, ${L_{c}}_{\infty }$ (maximum error in mass conservation) and ${L_{mom}}_{\infty }$ (maximum error in momentum conservation) are indicated by ○, ♢ and ▫, respectively.

Figure 11

Figure 10. Comparisons of (a$L_{2}$, (b$L_{\infty }$, (c$L_{c}$ and (d$L_{mom}$ errors for Cases A–D. See appendix B for definitions of the errors. The time-step interval between flow fields is $\unicode[STIX]{x1D6FF}t=20\unicode[STIX]{x0394}tU_{\infty }/D=0.1$. ○ and solid line: Case A; ▫ and dashed line: Case B; ▵ and dash-dotted line: Case C; ▹ and dotted line: Case D.

Figure 12

Figure 11. Comparison of the spanwise vorticity after (a) a single prediction step ($1\unicode[STIX]{x1D6FF}t$) and (b) nine more recursive prediction steps ($10\unicode[STIX]{x1D6FF}t$). 20 contour levels from $-$10.0 to 10.0 are shown. Solid lines and dashed lines indicate positive and negative contour levels, respectively.

Figure 13

Figure 12. Contours of the spanwise vorticity calculated using ground truth velocity fields (${\mathcal{G}}({\mathcal{I}})$) and velocity fields predicted by the GAN ($G({\mathcal{I}})$) after (a) a single prediction step ($1\unicode[STIX]{x1D6FF}t$) and (b) nine more recursive prediction steps ($10\unicode[STIX]{x1D6FF}t$) at $Re_{D}=150$, $400$ and $3900$. 20 contour levels from $-$10.0 to 10.0 are shown. Solid lines and dashed lines indicate positive and negative contour levels, respectively.

Figure 14

Figure 13. Profiles of the streamwise velocity at three streamwise locations after (a) a single prediction step ($1\unicode[STIX]{x1D6FF}t$) and (b) nine more recursive prediction steps ($10\unicode[STIX]{x1D6FF}t$) at $Re_{D}=150$, 400 and $3900$. Circles indicate ground truth results and solid lines indicate results predicted by the GAN. Profiles at $x/D=1.0$ and 2.0 are shifted by $-$1.7 and $-$3.4 in the vertical axis, respectively.

Figure 15

Figure 14. Power spectral density of the streamwise velocity at $x/D=2.0$ after (a) a single prediction step ($1\unicode[STIX]{x1D6FF}t$) and (b) nine more recursive prediction steps ($10\unicode[STIX]{x1D6FF}t$) at $Re_{D}=150$, 400 and $3900$. Circles indicate ground truth results and solid lines indicate results predicted by the GAN.

Figure 16

Figure 15. Local distributions of errors for $u/U_{\infty }$ after a single prediction step at $Re_{D}=3900$ (10 contour levels from 0.0 to 0.33). Locations of $L_{\infty }$, ${L_{c}}_{\infty }$ (maximum error in mass conservation) and ${L_{mom}}_{\infty }$ (maximum error in momentum conservation) are indicated by ○, ♢ and ▫, respectively.

Figure 17

Figure 16. Contour plots of the spanwise vorticity calculated using ground truth velocity fields and velocity fields predicted by the GANs at $Re_{D}=3900$ after (a$1\unicode[STIX]{x1D6FF}t$ and (b$10\unicode[STIX]{x1D6FF}t$. Solid lines and dashed lines denote positive and negative contour levels, respectively. (c) Plots of the power spectral density at $1\unicode[STIX]{x1D6FF}t$ and $10\unicode[STIX]{x1D6FF}t$. 20 contour levels from $-$10.0 to 10.0 are shown. Circles indicate ground truth result, while the dashed line and the solid line correspond to predicted results using the GAN and the GAN with additional data, respectively.

Figure 18

Figure 17. Two-point correlations of the streamwise velocity at three downstream locations ($x/D=1.0$, $2.0$ and $3.0$) at $Re_{D}=3900$. Circles indicate ground truth results and solid lines indicate predicted results by the GAN. Two-point correlations at $x/D=2.0$ and $3.0$ are shifted by $-$1 and $-$2 along the vertical axis, respectively.

Figure 19

Figure 18. Contour plots of the streamwise velocity ($u/U_{\infty }$) at $Re_{D}=3900$ after $25\unicode[STIX]{x1D6FF}t$, $50\unicode[STIX]{x1D6FF}t$, $75\unicode[STIX]{x1D6FF}t$, $100\unicode[STIX]{x1D6FF}t$ and $125\unicode[STIX]{x1D6FF}t$, where $1\unicode[STIX]{x1D6FF}t=20\unicode[STIX]{x0394}tU_{\infty }/D=0.1$. Flow fields at $50\unicode[STIX]{x1D6FF}t$, $75\unicode[STIX]{x1D6FF}t$, $100\unicode[STIX]{x1D6FF}t$ and $125\unicode[STIX]{x1D6FF}t$ are recursively predicted (utilizing flow fields predicted from prior time steps as part of the input). (a) Input set, (b) ground truth flow fields and (c) flow fields predicted by the GAN. 20 contour levels from $-$0.5 to 1.0 are shown. Solid lines and dashed lines indicate positive and negative contour levels, respectively.

Figure 20

Table 3. Comparison of errors for each flow variable at $Re_{D}=3900$ from predictions obtained after 25 small time-step intervals of $1\unicode[STIX]{x1D6FF}t$ and after a single large time-step interval of $25\unicode[STIX]{x1D6FF}t$. $1\unicode[STIX]{x1D6FF}t=20\unicode[STIX]{x0394}tU_{\infty }/D=0.1$. Errors are composed of the mean and standard deviations determined by 32 independent prediction results.

Figure 21

Table 4. Configurations ($GM_{16}$, $GM_{18}$ and $GM_{20}$) and number sets ($N_{32}$, $N_{64}$ and $N_{128}$) of generator models used in the parameter study.

Figure 22

Figure 19. Configuration dependence of the generator model. (a$L_{2}$, (b$L_{\infty }$, (c$L_{c}$ and (d$L_{mom}$ errors from the multi-scale CNN without physical loss functions as a function of recursive prediction steps $\unicode[STIX]{x1D6FF}t$, where $\unicode[STIX]{x1D6FF}t=20\unicode[STIX]{x0394}tU_{\infty }/D=0.1$. Symbol ○ and solid line denote errors from $GM_{16}$; ▫ and dashed line denote errors from $GM_{18}$; △ and dash-dotted line denote errors from $GM_{20}$.

Figure 23

Figure 20. Number set dependence of (a$L_{2}$, (b$L_{\infty }$, (c$L_{c}$ and (d$L_{mom}$ errors from the multi-scale CNN without physical loss functions as a function of recursive prediction steps $\unicode[STIX]{x1D6FF}t$, where $\unicode[STIX]{x1D6FF}t=20\unicode[STIX]{x0394}tU_{\infty }/D=0.1$. Symbol ○ and solid line denote errors from $N_{32}$; ▫ and dashed line denote errors from $N_{64}$; △ and dash-dotted line denote errors from $N_{128}$.

Figure 24

Figure 21. Errors from the multi-scale CNN without physical loss functions as a function of the number of training iterations. The network is trained with flow fields at $Re_{D}=300$ and $500$. The errors are evaluated for flow predictions at $Re_{D}=400$.

Figure 25

Figure 22. Errors as a function of $\unicode[STIX]{x1D706}_{adv}$: ○, ▫, and $\times$ indicate errors after $1\unicode[STIX]{x1D6FF}t$, $4\unicode[STIX]{x1D6FF}t$ and $10\unicode[STIX]{x1D6FF}t$, respectively.

Figure 26

Figure 23. Errors as a function of $\unicode[STIX]{x1D706}_{phy}$: ○, ▫, and $\times$ indicate errors after $1\unicode[STIX]{x1D6FF}t$, $4\unicode[STIX]{x1D6FF}t$ and $10\unicode[STIX]{x1D6FF}t$, respectively.

Figure 27

Figure 24. Contour plots of the streamwise velocity ($u/U_{\infty }$) at $Re_{D}=3900$ after $1\unicode[STIX]{x1D6FF}t$, $2\unicode[STIX]{x1D6FF}t$, $3\unicode[STIX]{x1D6FF}t$, $4\unicode[STIX]{x1D6FF}t$ and $5\unicode[STIX]{x1D6FF}t$, where $1\unicode[STIX]{x1D6FF}t=20\unicode[STIX]{x0394}tU_{\infty }/D=0.1$. Flow fields at $2\unicode[STIX]{x1D6FF}t$, $3\unicode[STIX]{x1D6FF}t$, $4\unicode[STIX]{x1D6FF}t$ and $5\unicode[STIX]{x1D6FF}t$ are recursively predicted (utilizing flow fields predicted from prior time steps as part of the input). (a) Input set, (b) ground truth flow fields and (c) flow fields predicted by the GAN. 20 contour levels from $-$0.5 to 1.0 are shown. Solid lines and dashed lines indicate positive and negative contour levels, respectively.

Figure 28

Figure 25. Contour plots of the cross-stream velocity ($v/U_{\infty }$) at $Re_{D}=3900$ after $1\unicode[STIX]{x1D6FF}t$, $2\unicode[STIX]{x1D6FF}t$, $3\unicode[STIX]{x1D6FF}t$, $4\unicode[STIX]{x1D6FF}t$ and $5\unicode[STIX]{x1D6FF}t$, where $1\unicode[STIX]{x1D6FF}t=20\unicode[STIX]{x0394}tU_{\infty }/D=0.1$. Flow fields at $2\unicode[STIX]{x1D6FF}t$, $3\unicode[STIX]{x1D6FF}t$, $4\unicode[STIX]{x1D6FF}t$ and $5\unicode[STIX]{x1D6FF}t$ are recursively predicted (utilizing flow fields predicted from prior time steps as parts of the input). (a) Input set, (b) ground truth flow fields and (c) flow fields predicted by the GAN. 20 contour levels from $-$0.7 to 0.7 are shown. Solid lines and dashed lines indicate positive and negative contour levels, respectively.

Figure 29

Figure 26. Contour plots of the spanwise velocity ($w/U_{\infty }$) at $Re_{D}=3900$ after $1\unicode[STIX]{x1D6FF}t$, $2\unicode[STIX]{x1D6FF}t$, $3\unicode[STIX]{x1D6FF}t$, $4\unicode[STIX]{x1D6FF}t$ and $5\unicode[STIX]{x1D6FF}t$, where $1\unicode[STIX]{x1D6FF}t=20\unicode[STIX]{x0394}tU_{\infty }/D=0.1$. Flow fields at $2\unicode[STIX]{x1D6FF}t$, $3\unicode[STIX]{x1D6FF}t$, $4\unicode[STIX]{x1D6FF}t$ and $5\unicode[STIX]{x1D6FF}t$ are recursively predicted (utilizing flow fields predicted from prior time steps as part of the input). (a) Input set, (b) ground truth flow fields and (c) flow fields predicted by the GAN. 20 contour levels from $-$0.5 to 0.5 are shown. Solid lines and dashed lines indicate positive and negative contour levels, respectively.

Figure 30

Figure 27. Contour plots of the pressure ($p/\unicode[STIX]{x1D70C}U_{\infty }^{2}$) at $Re_{D}=3900$ after $1\unicode[STIX]{x1D6FF}t$, $2\unicode[STIX]{x1D6FF}t$, $3\unicode[STIX]{x1D6FF}t$, $4\unicode[STIX]{x1D6FF}t$ and $5\unicode[STIX]{x1D6FF}t$, where $1\unicode[STIX]{x1D6FF}t=20\unicode[STIX]{x0394}tU_{\infty }/D=0.1$. Flow fields at $2\unicode[STIX]{x1D6FF}t$, $3\unicode[STIX]{x1D6FF}t$, $4\unicode[STIX]{x1D6FF}t$ and $5\unicode[STIX]{x1D6FF}t$ are recursively predicted (utilizing flow fields predicted from prior time steps as part of the input). (a) Input set, (b) ground truth flow fields and (c) flow fields predicted by the GAN. 20 contour levels from $-$1.0 to 0.4 are shown. Solid lines and dashed lines indicate positive and negative contour levels, respectively.

Figure 31

Figure 28. Contour plots of the cross-stream velocity ($v/U_{\infty }$) at $Re_{D}=3900$ after $25\unicode[STIX]{x1D6FF}t$, $50\unicode[STIX]{x1D6FF}t$, $75\unicode[STIX]{x1D6FF}t$, $100\unicode[STIX]{x1D6FF}t$ and $125\unicode[STIX]{x1D6FF}t$, where $1\unicode[STIX]{x1D6FF}t=20\unicode[STIX]{x0394}tU_{\infty }/D=0.1$. Flow fields at $50\unicode[STIX]{x1D6FF}t$, $75\unicode[STIX]{x1D6FF}t$, $100\unicode[STIX]{x1D6FF}t$ and $125\unicode[STIX]{x1D6FF}t$ are recursively predicted (utilizing flow fields predicted from prior time steps as part of the input). (a) Input set, (b) ground truth flow fields and (c) flow fields predicted by the GAN. 20 contour levels from $-$0.7 to 0.7 are shown. Solid lines and dashed lines indicate positive and negative contour levels, respectively.

Figure 32

Figure 29. Contour plots of the spanwise velocity ($w/U_{\infty }$) at $Re_{D}=3900$ after $25\unicode[STIX]{x1D6FF}t$, $50\unicode[STIX]{x1D6FF}t$, $75\unicode[STIX]{x1D6FF}t$, $100\unicode[STIX]{x1D6FF}t$ and $125\unicode[STIX]{x1D6FF}t$, where $1\unicode[STIX]{x1D6FF}t=20\unicode[STIX]{x0394}tU_{\infty }/D=0.1$. Flow fields at $50\unicode[STIX]{x1D6FF}t$, $75\unicode[STIX]{x1D6FF}t$, $100\unicode[STIX]{x1D6FF}t$ and $125\unicode[STIX]{x1D6FF}t$ are recursively predicted (utilizing flow fields predicted from prior time steps as part of the input). (a) Input set, (b) ground truth flow fields and (c) flow fields predicted by the GAN. 20 contour levels from $-$0.5 to 0.5 are shown. Solid lines and dashed lines indicate positive and negative contour levels, respectively.

Figure 33

Figure 30. Contour plots of the pressure ($p/\unicode[STIX]{x1D70C}U_{\infty }^{2}$) at $Re_{D}=3900$ after $25\unicode[STIX]{x1D6FF}t$, $50\unicode[STIX]{x1D6FF}t$, $75\unicode[STIX]{x1D6FF}t$, $100\unicode[STIX]{x1D6FF}t$, and $125\unicode[STIX]{x1D6FF}t$, where $1\unicode[STIX]{x1D6FF}t=20\unicode[STIX]{x0394}tU_{\infty }/D=0.1$. Flow fields at $50\unicode[STIX]{x1D6FF}t$, $75\unicode[STIX]{x1D6FF}t$, $100\unicode[STIX]{x1D6FF}t$ and $125\unicode[STIX]{x1D6FF}t$ are recursively predicted (utilizing flow fields predicted from prior time steps as part of the input). (a) Input set, (b) ground truth flow fields and (c) flow fields predicted by the GAN. 20 contour levels from $-$1.0 to 0.4 are shown. Solid lines and dashed lines indicate positive and negative contour levels, respectively.