FEniCS Tutorial NavierStokes Equation for LidDriven Cavity
>> YOUR LINK HERE: ___ http://youtube.com/watch?v=UPvmb8nVKqE
The incompressible Navier-Stokes equations describe the evolution of fluid motion. In this video, we will simulate them using the Finite Element Method and Chorin's Projection using the FEniCS package in Python. Here is the resulting code: https://github.com/Ceyron/machine-lea... • Computational Fluid Dynamics (=CFD) is concerned with the simulation (=quantitative prediction) of the Partial Differential Equations (=PDEs) that underpin fluid mechanics, the Navier-Stokes Equations. Those set of PDEs are particularly challenging to solve due to multiple reasons, they are non-linear, form a saddle-point structure (and in the case of turbulence: are multi-scale). The Finite Element Method presents a methodology to discretize the spatial derivatives in it. We will combine this with a simple Euler time step, for which we treat the convection fully explicit and the diffusion fully implicit. We will enforce incompressibility as required by the continuity equation by the usage of Chorin's Projection method. This method gives rise to pressure Poisson problem. • ------- • 📝 : Check out the GitHub Repository of the channel, where I upload all the handwritten notes and source-code files (contributions are very welcome): https://github.com/Ceyron/machine-lea... • 📢 : Follow me on LinkedIn or Twitter for updates on the channel and other cool Machine Learning Simulation stuff: / felix-koehler and / felix_m_koehler • 💸 : If you want to support my work on the channel, you can become a Patreon here: / mlsim • ------- • Timestamps: • 00:00 Intro • 00:30 Navier-Stokes Equations • 01:11 About Lid-Driven Cavity BC • 02:27 Solution Strategy with Weak Forms • 07:12 Taylor-Hood Elements Saddle Point Problems • 08:29 Choose Time Step size carefully • 08:55 Imports • 09:25 Simulation Parameters • 10:13 Some Boilerplate • 10:26 Define Mesh • 11:01 Set up Function Spaces (with Taylor-Hood Elements) • 12:26 Define Trial Test Functions • 13:32 Boundary Conditions (Stationary Moving Wall) • 18:11 Solution Fields • 19:47 Weak Form of Momentum Equation • 22:55 Weak Form of Pressure Poisson Problem • 24:57 Weak Form of Velocity Projection/Correction • 27:09 Time Loop Setup • 27:25 (1) Solve for tentative velocity • 28:18 (2) Solve for pressure • 28:50 (3) Correct velocities for incompressibility • 29:12 (4) Advance in time • 29:31 Interactive visualization • 30:07 First Run + Discussion • 31:22 Pre-Computing assembly of system matrices • 36:14 Second Run + Small Bug Fix • 36:53 Adjusting Linear Solver and Preconditioner • 38:06 Third Run + Admiring Speedup • 38:35 Outro
#############################