A Scipy-Fenics interface for incompressible Navier-Stokes
This python module dns provides an interface between the FEM toolbox [FEniCS](www.fenicsproject.org) and [SciPy](www.scipy.org) in view of simulation and control of incompressible flows. Basically, FEniCS is used to discretize the incompressible Navier-Stokes equations in space. Then dns makes the discretized operators available in SciPy for use in model reduction, simulation, or control and optimization.
dns also contains a solver for the steady state and time dependent problems.
## Quick Start
To get started, create the needed subdirectories and run one of the tests/time_dep_nse_.py files, e.g.
` cd tests mkdir data mkdir results # export PYTHONPATH="$PYTHONPATH:path/to/repo/" # add the repo to the path python3 time_dep_nse_expnonl.py `
Then, to examine the results, launch ` paraview results/vel_TH__timestep.pvd `
## Test Cases and Examples
- tests/mini_setup.py: a minimal setup for a steady-state simulation
- tests/steadystate_schaefer-turek_2D-1.py: the 2D steady-state cylinder wake benchmark by Schäfer/Turek
- tests/steadystate_rotcyl.py: the 2D cylinder wake with a freely rotating cylinder as benchmarked in Richter et al.
- tests/time_dep_nse_.py: time integration with Picard and Newton linearization
- tests/time_dep_nse_expnonl.py: time integration with explicit treatment of the nonlinearity
- tests/time_dep_nse_bcrob.py: time integration of the cylinder wake with boundary controls
- tests/time_dep_nse_krylov.py: time integration with iterative solves of the state equations via [krypy](https://github.com/andrenarchy/krypy)
The latter is my home-brew module that includes the submodule lin_alg_utils with routines for solving the saddle point problem as it arises in the (v,p) formulation of the NSE.
Note: the branch lau-included already contains the module sadptprj_riclyap_adi
Documentation of the code goes [here](http://dolfin-navier-scipy.readthedocs.org/en/latest/index.html).
Release history Release notifications | RSS feed
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
|Filename, size||File type||Python version||Upload date||Hashes|
|Filename, size dolfin_navier_scipy-1.0.0.tar.gz (36.7 kB)||File type Source||Python version None||Upload date||Hashes View|
|Filename, size dolfin_navier_scipy-1.0.0-py3-none-any.whl (51.0 kB)||File type Wheel||Python version py3||Upload date||Hashes View|
Hashes for dolfin_navier_scipy-1.0.0.tar.gz
Hashes for dolfin_navier_scipy-1.0.0-py3-none-any.whl