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

https://github.com/highlando/dolfin_navier_scipy

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
Last synced: 7 months ago · JSON representation

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
Created about 12 years ago · Last pushed 10 months ago
Metadata Files
Readme Changelog License Zenodo

README.md

dolfinnavierscipy

DOI PyPI version Documentation Status

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 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
  • tests/time_dep_nse_double_rotcyl_bcrob.py: rotating double cylinder via Robin boundary conditions

Dependencies

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

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 Email 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
enhancement (6) bug (3) maintainance (2) performance (2) question (1)
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

  • Versions: 20
  • Dependent Packages: 1
  • Dependent Repositories: 1
  • Downloads: 119 Last month
Rankings
Dependent packages count: 4.8%
Forks count: 15.4%
Average: 16.8%
Stargazers count: 18.5%
Dependent repos count: 21.5%
Downloads: 23.8%
Maintainers (1)
Last synced: 8 months ago

Dependencies

docs/readthedocs-pip-requirements.txt pypi
  • mock *
  • numpydoc *
  • sphinx ==3.2.1
  • sphinx_rtd_theme ==0.5.0
requirements.txt pypi
  • numpy *
  • pbr *
  • rich *
  • sadptprj_riclyap_adi *
  • scipy *
  • setuptools *
setup.py pypi