# Simplest way to "upgrade" from Euler equations to Navier-Stokes equations in FV or FD framework

I have quite a lot of experience solving unsteady Euler equations, including multi-component ones, with in house-coded finite-difference and finite-volume methods, including MacCormack and MUSCLE schemes and WENO flux reconstruction. Now I'm considering "upgrading" to laminar NS equations for compressible gases (i.e. without any turbulence model).

1. Is it generally considered a hard switch? What are the most complex parts to understand/implement regarding the difference between Euler and NS equations?

2. What would be the simplest way to incorporate viscosity in FV formulation? Same question with FD formulation.

3. What would be the simplest way to incorporate diffusion and heat conductivity?

In general, I'm looking for some good detailed literature/tutorials for NS equations similar to LeVeque's books (which are only for Euler equations, as far as I know).

EDIT: added info about compressible equations and comment on "laminar" term as Spencer Bryngelson suggested in comment.

• Confirm that you’re asking about the compressible equations? There’s also no such thing as the laminar NS equations.
– user20857
Oct 2, 2020 at 19:11
• @SpencerBryngelson yes, compressible, I've added this into the question. Thanks for the suggestion! Oct 3, 2020 at 20:18
• If you are on cartesian grids, it is easy to add NS with an explicit scheme. Just add the diffusive terms with a central difference scheme. See Blazek's CFD book. Oct 4, 2020 at 4:13

Generally the step from compressible Euler equations to the Navier-Stokes equations is not that hard, at least the coding part.

• If you want to implement it with an explicit scheme you have to consider the severe time step restriction of the parabolic contributions.
• One tricky part, at least for a consistent FV implementation, is the calculation of the tangential gradients on the faces. These can't be calculated directly with the cell averages, especially on Cartesian meshes. Here you may have to use a Gauss-Green method.
• Since you mentioned multi-component systems: Most CFD solvers only consider three parabolic contributions, the Fourier law, the Fick law and the Stokes law. However with multi-component systems other physical effects might become relevant. The effects are based on the Onsager reciprocal relations called, e.g. Dufour and Soret effects.

Regards

• Could you elaborate a little on the second part? I.e. calculation of tangential gradients on the faces. Is there somewhere a detailed example for some simple case? There is something in Blazek's book, but I'm not sure that I understand it correctly. Nov 25, 2020 at 17:30
• On a Cartesian mesh it is not possible to calculate a consistent tangential gradient only with the direkt (side-based) neighbours. You have to use the (corner-based) neighbours, e.g. with Gauss-Green. Simply draw two cells and try to calculated y-gradients on y-faces or x-gradients on x-faces. It is simply not possible. Nov 25, 2020 at 20:26
• In 2D you may calculate the values at the corners first with an average of four cells and then use them to calculate the tangential gradients on the cell face center. Nov 25, 2020 at 20:31
• Yes, this is the idea o got from Blazek's book. What approximation order such approach yields? I assume no more than second. Is there a way to increase it? I.e. somehow apply WENO or something to these gradients... Nov 26, 2020 at 10:03
• @omican It should be second order on Cartesian meshes. Note that this simple average coinceds with Gauss-Green only on Cartesian meshes. On unstructured meshes you may use an combined method based on the (original) Gauss-Green method and a Least Squares approach. Here you can increase the accurary by considering more neighbour DOFs. Nov 26, 2020 at 13:06

Use the alpha-damping formulation for the viscous fluxes, very simple to implement.