NAVIER_STOKES_2D_EXACT
Exact solutions to the
2D Incompressible Time-Dependent Navier Stokes Equations
NAVIER_STOKES_2D_EXACT,
a Python library which
evaluates exact solutions to the incompressible time-dependent
Navier-Stokes equations over an arbitrary domain in 2D.
-
Lukas: steady flow, pressure is zero everywhere;
-
Poiseuille: steady flow, vertical velocity and right hand
side are zero everywhere;
-
Spiral: velocity is zero on the boundary of the unit square;
-
Taylor: source term is zero everywhere.
-
Vortex: a steady flow with the same velocity pattern as Taylor.
Licensing:
The computer code and data files made available on this web page
are distributed under
the GNU LGPL license.
Languages:
NAVIER_STOKES_2D_EXACT is available in
a C version and
a C++ version and
a FORTRAN90 version and
a MATLAB version and
a Python version.
Related Data and Programs:
NAVIER_STOKES_3D_EXACT,
a Python library which
evaluates exact solutions to the incompressible time-dependent
Navier-Stokes equations over an arbitrary domain in 3D.
NAVIER_STOKES_MESH2D,
MATLAB data files defining meshes for several
2D test problems involving the Navier Stokes equations
for fluid flow, provided by Leo Rebholz.
STOKES_2D_EXACT,
a Python library which
evaluates exact solutions to the incompressible steady
Stokes equations over the unit square in 2D.
Reference:
-
Maxim Olshanskii, Leo Rebholz,
Application of barycenter refined meshes in linear elasticity
and incompressible fluid dynamics,
ETNA: Electronic Transactions in Numerical Analysis,
Volume 38, pages 258-274, 2011.
-
Geoffrey Taylor,
On the decay of vortices in a viscous fluid,
Philosophical Magazine,
Volume 46, 1923, pages 671-674.
-
Geoffrey Taylor, A E Green,
Mechanism for the production of small eddies from large ones,
Proceedings of the Royal Society of London,
Series A, Volume 158, 1937, pages 499-521.
Source Code:
-
grid_2d.py,
returns a regular 2D grid.
-
ns2de_gnuplot.py,
writes files to create a GNUPLOT image of the flow.
-
ns2de_matplotlib.py,
writes files to create a MATPLOTLIB image of the flow.
-
parameter_poiseuille_test.py,
monitors the Poiseuille solution norm for various values of the parameters.
-
parameter_spiral_test.py,
monitors the Spiral solution norm for various values of the parameters.
-
parameter_taylor_test.py,
monitors the Taylor solution norm for various values of the parameters.
-
parameter_vortex_test.py,
monitors the Vortex solution norm for various values of the parameters.
-
r8vec_amax.py,
returns the maximum absolute value entry in an R8VEC.
-
r8vec_amin.py,
returns the minimum absolute value entry in an R8VEC.
-
r8vec_max.py,
returns the maximum entry in an R8VEC.
-
r8vec_min.py,
returns the minimum entry in an R8VEC.
-
r8vec_norm_l2.py,
returns the L2 norm of an R8VEC.
-
r8vec_print.py,
prints an R8VEC.
-
r8vec_uniform_ab.py,
returns a scaled pseudorandom R8VEC.
-
resid_lukas.py,
evaluates the Lukas Bystricky residual at any point (x,y) and
time t.
-
resid_poiseuille.py,
evaluates the Poiseuille residual at any point (x,y) and
time t.
-
resid_spiral.py,
evaluates the Spiral residual at any point (x,y) and
time t.
-
resid_taylor.py,
evaluates the Taylor residual at any point (x,y) and
time t.
-
resid_vortex.py,
evaluates the Vortex residual at any point (x,y) and
time t.
-
rhs_lukas.py,
evaluates the Lukas Bystricky right hand sides at any point (x,y) and
time t.
-
rhs_poiseuille.py,
evaluates the Poiseuille right hand sides at any point (x,y) and
time t.
-
rhs_spiral.py,
evaluates the Spiral right hand sides at any point (x,y) and
time t.
-
rhs_taylor.py,
evaluates the Taylor right hand sides at any point (x,y) and
time t.
-
rhs_vortex.py,
evaluates the Vortex right hand sides at any point (x,y) and
time t.
-
timestamp.py
prints the YMDHMS date as a timestamp.
-
uvp_lukas.py,
evaluates the Lukas Bystricky velocity and pressure field
at any point (x,y) and time t.
-
uvp_poiseuille.py,
evaluates the Poiseuille velocity and pressure field
at any point (x,y) and time t.
-
uvp_spiral.py,
evaluates the Spiral velocity and pressure field
at any point (x,y) and time t.
-
uvp_taylor.py,
evaluates the Taylor velocity and pressure field
at any point (x,y) and time t.
-
uvp_vortex.py,
evaluates the Vortex velocity and pressure field
at any point (x,y) and time t.
Examples and Tests:
Lukas Bystricky:
Poiseuille:
Spiral:
Taylor:
Vortex:
You can go up one level to
the Python source codes.
Last revised on 24 July 2015.