dolfin-navier-scipy
python module for extracting the system matrices of the fenics fem discretization of (linearized) Navier-Stokes equations and feeding back computed data for visualization
Science Score: 46.0%
This score indicates how likely this project is to be science-related based on various indicators:
-
○CITATION.cff file
-
✓codemeta.json file
Found codemeta.json file -
✓.zenodo.json file
Found .zenodo.json file -
○DOI references
-
✓Academic publication links
Links to: zenodo.org -
✓Committers with academic emails
1 of 3 committers (33.3%) from academic institutions -
○Institutional organization owner
-
○JOSS paper metadata
-
○Scientific vocabulary similarity
Low similarity (13.4%) to scientific vocabulary
Repository
python module for extracting the system matrices of the fenics fem discretization of (linearized) Navier-Stokes equations and feeding back computed data for visualization
Basic Info
- Host: GitHub
- Owner: highlando
- License: gpl-3.0
- Language: Python
- Default Branch: master
- Size: 6.24 MB
Statistics
- Stars: 10
- Watchers: 4
- Forks: 4
- Open Issues: 7
- Releases: 3
Metadata Files
README.md
dolfinnavierscipy
This python module dns provides an interface between the FEM toolbox FEniCS and SciPy 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.
``` pip install sadptprjriclyapadi cd tests mkdir data mkdir results
export PYTHONPATH="$PYTHONPATH:path/to/repo/" # add the repo to the path
pip install dolfinnavierscipy # or install the module using pip
python3 timedepnse_expnonl.py ```
Then, to examine the results, launch
paraview results/vel_TH__timestep.pvd
Test Cases and Examples
A selection:
tests/mini_setup.py: a minimal setup for a steady-state simulationtests/steadystate_schaefer-turek_2D-1.py: the 2D steady-state cylinder wake benchmark by Schäfer/Turektests/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 linearizationtests/time_dep_nse_expnonl.py: time integration with explicit treatment of the nonlinearitytests/time_dep_nse_bcrob.py: time integration of the cylinder wake with boundary controlstests/time_dep_nse_krylov.py: time integration with iterative solves of the state equations viakrypytests/time_dep_nse_double_rotcyl_bcrob.py: rotating double cylinder via Robin boundary conditions
Dependencies
- dolfin interface to FEniCS -- tested with
v2019.2.0,v2018.1.0,v2017.2 - sadptprjriclyapadi
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
Documentation of the code goes here.
Installation as Module
pip install dolfin_navier_scipy
Changelog
v1.1.3
- catch the case that the datapoints do not extend to the full time range
- enforce explicit specification of the FEM scheme in
problem_setups.gen_bccont_fems
Owner
- Login: highlando
- Kind: user
- Website: https://janheiland.de
- Repositories: 40
- Profile: https://github.com/highlando
GitHub Events
Total
- Watch event: 2
- Push event: 6
- Create event: 2
Last Year
- Watch event: 2
- Push event: 6
- Create event: 2
Committers
Last synced: about 3 years ago
All Time
- Total Commits: 471
- Total Committers: 3
- Avg Commits per committer: 157.0
- Development Distribution Score (DDS): 0.004
Top Committers
| Name | Commits | |
|---|---|---|
| highlando | j****d@g****m | 469 |
| Jan Heiland | j****d@g****m | 1 |
| Maximilian Behr | b****r@m****e | 1 |
Committer Domains (Top 20 + Academic)
Issues and Pull Requests
Last synced: 9 months ago
All Time
- Total issues: 14
- Total pull requests: 1
- Average time to close issues: almost 2 years
- Average time to close pull requests: about 15 hours
- Total issue authors: 1
- Total pull request authors: 1
- Average comments per issue: 0.57
- Average comments per pull request: 0.0
- Merged pull requests: 1
- Bot issues: 0
- Bot pull requests: 0
Past Year
- Issues: 0
- Pull requests: 0
- Average time to close issues: N/A
- Average time to close pull requests: N/A
- Issue authors: 0
- Pull request authors: 0
- Average comments per issue: 0
- Average comments per pull request: 0
- Merged pull requests: 0
- Bot issues: 0
- Bot pull requests: 0
Top Authors
Issue Authors
- highlando (14)
Pull Request Authors
- maximilianbehr (1)
Top Labels
Issue Labels
Pull Request Labels
Packages
- Total packages: 1
-
Total downloads:
- pypi 119 last-month
- Total dependent packages: 1
- Total dependent repositories: 1
- Total versions: 20
- Total maintainers: 1
pypi.org: dolfin-navier-scipy
A Scipy-Fenics interface for incompressible Navier-Stokes
- Homepage: https://github.com/highlando/dolfin_navier_scipy
- Documentation: https://dolfin-navier-scipy.readthedocs.io/
- License: GPLv3
-
Latest release: 1.4.2
published about 2 years ago
Rankings
Maintainers (1)
Dependencies
- mock *
- numpydoc *
- sphinx ==3.2.1
- sphinx_rtd_theme ==0.5.0
- numpy *
- pbr *
- rich *
- sadptprj_riclyap_adi *
- scipy *
- setuptools *
