pymech

A Python software suite for Nek5000 and SIMSON

https://github.com/ex-mech/pymech

Science Score: 64.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
    Found 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
    5 of 13 committers (38.5%) from academic institutions
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (11.2%) to scientific vocabulary

Keywords

closember io nek5000 numpy simson xarray

Keywords from Contributors

cfd fluiddyn fluidsim jinja2 snek5000 mesh optimizer pipeline-testing datacleaner data-profilers
Last synced: 6 months ago · JSON representation ·

Repository

A Python software suite for Nek5000 and SIMSON

Basic Info
Statistics
  • Stars: 26
  • Watchers: 4
  • Forks: 24
  • Open Issues: 16
  • Releases: 10
Topics
closember io nek5000 numpy simson xarray
Created about 10 years ago · Last pushed 6 months ago
Metadata Files
Readme Changelog Contributing License Citation

README.md

Pymech

PyPI Build Status pre-commit.ci status Coverage Status Documentation Status DOI

A Python suite of routines for Nek5000 and SIMSON. Install with:

pip install pymech

Read the full documentation at Pymech doc.

Getting started

For some quick wins, download some sample data

sh curl -fLO https://raw.githubusercontent.com/eX-Mech/pymech-test-data/main/nek/channel3D_0.f00001

Fire up a Python / IPython console and execute:

```py import matplotlib.pyplot as plt import pymech as pm

ds = pm.opendataset('channel3D0.f00001') ds.mean(['x', 'z']).ux.plot() plt.show() ```

You should see something like

For an overview of how to use pymech, follow the usage documentation.

Contributing

Found something that does not work? Want to add a new feature to pymech? Have a look at contributing guidelines.

Owner

  • Name: eX-Mech
  • Login: eX-Mech
  • Kind: organization

ex KTH Mekanik people

Citation (CITATION.cff)

cff-version: 1.2.0
message: "If you use this software, please cite it as below."
title: "Pymech: A Python software suite for Nek5000 and SIMSON"
abstract: |
  Pymech provides a set of high level Python functions which empowers users
  of computational fluid dynamics solvers Nek5000 and SIMSON. It acts as a bridge
  between these Fortran solvers and the scientific Python world. Its key
  functionalities include input from and output to the solvers' binary file
  formats, mesh manipulation, necessary tools for creating initial condition
  files, writing post-processing algorithms and performing other exploratory
  works.

authors:
  - family-names: Mohanan
    given-names: Ashwin Vishnu
    orcid: https://orcid.org/0000-0002-2979-6327

  - family-names: Chauvat
    given-names: Guillaume
    orcid: https://orcid.org/0000-0001-9401-0514

  - family-names: Kleine
    given-names: Vitor Gabriel
    orcid: https://orcid.org/0000-0001-9360-7300

  - family-names: Fabbiane
    given-names: Nicolò
    orcid: https://orcid.org/0000-0003-0010-489X

  - family-names: Canton
    given-names: Jacopo
    orcid: https://orcid.org/0000-0003-3211-4347

doi: 10.5281/zenodo.7358961
date-released: 2022-11-25
license: GPL-3.0-or-later
repository-code: "https://github.com/eX-Mech/pymech"

GitHub Events

Total
  • Create event: 5
  • Release event: 1
  • Issues event: 8
  • Watch event: 2
  • Delete event: 2
  • Issue comment event: 30
  • Push event: 20
  • Pull request event: 16
Last Year
  • Create event: 5
  • Release event: 1
  • Issues event: 8
  • Watch event: 2
  • Delete event: 2
  • Issue comment event: 30
  • Push event: 20
  • Pull request event: 16

Committers

Last synced: 9 months ago

All Time
  • Total Commits: 583
  • Total Committers: 13
  • Avg Commits per committer: 44.846
  • Development Distribution Score (DDS): 0.511
Past Year
  • Commits: 35
  • Committers: 3
  • Avg Commits per committer: 11.667
  • Development Distribution Score (DDS): 0.371
Top Committers
Name Email Commits
Ashwin V. Mohanan d****v@f****t 285
Guillaume Chauvat g****e@c****u 134
Jacopo Canton j****n@m****e 53
Jacopo Canton j****n@g****m 50
pre-commit-ci[bot] 6****] 32
dependabot[bot] 4****] 7
Nicolò Fabbiane n****e@g****m 6
Simon Kern s****n@m****e 6
akhoubani a****i@g****m 4
paugier p****r@u****r 2
Ashwin Mohanan a****n@s****e 2
Shiyu Du 1****u 1
timofeymukha t****y@c****e 1
Committer Domains (Top 20 + Academic)

Issues and Pull Requests

Last synced: 6 months ago

All Time
  • Total issues: 46
  • Total pull requests: 98
  • Average time to close issues: 5 months
  • Average time to close pull requests: about 1 month
  • Total issue authors: 10
  • Total pull request authors: 10
  • Average comments per issue: 2.52
  • Average comments per pull request: 0.76
  • Merged pull requests: 84
  • Bot issues: 0
  • Bot pull requests: 39
Past Year
  • Issues: 8
  • Pull requests: 21
  • Average time to close issues: about 1 month
  • Average time to close pull requests: 10 days
  • Issue authors: 3
  • Pull request authors: 4
  • Average comments per issue: 3.63
  • Average comments per pull request: 0.81
  • Merged pull requests: 18
  • Bot issues: 0
  • Bot pull requests: 14
Top Authors
Issue Authors
  • ashwinvis (29)
  • guillaumechauvat (6)
  • paugier (3)
  • ricardofrantz (2)
  • vlupi (2)
  • akhoubani (1)
  • VoyagerFireH (1)
  • ztdepztdep (1)
  • manu0600 (1)
  • AnkitBarik (1)
Pull Request Authors
  • ashwinvis (45)
  • pre-commit-ci[bot] (32)
  • dependabot[bot] (14)
  • guillaumechauvat (11)
  • Simkern (4)
  • airwarriorg91 (2)
  • paugier (1)
  • Shiyu-Sandy-Du (1)
  • akhoubani (1)
  • timofeymukha (1)
Top Labels
Issue Labels
enhancement (7) help wanted (4) bug (2) question (2)
Pull Request Labels
dependencies (14) enhancement (2)

Dependencies

.github/workflows/build.yaml actions
  • actions/cache v2 composite
  • actions/checkout v2 composite
  • actions/checkout v3 composite
  • actions/setup-python v4 composite
  • conda-incubator/setup-miniconda v2 composite
.github/workflows/deploy.yaml actions
  • actions/checkout v3 composite
  • actions/setup-python v4 composite
requirements/dev.txt pypi
  • alabaster ==0.7.12 development
  • argcomplete ==2.0.0 development
  • asv ==0.5.1 development
  • attrs ==22.1.0 development
  • babel ==2.11.0 development
  • backcall ==0.2.0 development
  • beautifulsoup4 ==4.11.1 development
  • certifi ==2022.12.7 development
  • cfgv ==3.3.1 development
  • charset-normalizer ==2.1.1 development
  • click ==8.1.3 development
  • cloudpickle ==2.2.0 development
  • colorama ==0.4.6 development
  • colorlog ==6.7.0 development
  • commonmark ==0.9.1 development
  • coverage ==6.5.0 development
  • cycler ==0.11.0 development
  • dask ==2022.2.0 development
  • debugpy ==1.6.3 development
  • decorator ==5.1.1 development
  • distlib ==0.3.6 development
  • docutils ==0.19 development
  • entrypoints ==0.4 development
  • exceptiongroup ==1.0.4 development
  • execnet ==1.9.0 development
  • fastjsonschema ==2.16.2 development
  • filelock ==3.8.0 development
  • fonttools ==4.38.0 development
  • fsspec ==2022.11.0 development
  • furo ==2022.9.29 development
  • greenlet ==2.0.1 development
  • identify ==2.5.9 development
  • idna ==3.4 development
  • imagesize ==1.4.1 development
  • importlib-metadata ==4.13.0 development
  • importlib-resources ==5.10.0 development
  • iniconfig ==1.1.1 development
  • ipykernel ==6.16.2 development
  • ipython ==7.34.0 development
  • jedi ==0.18.1 development
  • jinja2 ==3.1.2 development
  • jsonschema ==4.17.0 development
  • jupyter-cache ==0.5.0 development
  • jupyter-client ==7.4.7 development
  • jupyter-core ==4.11.2 development
  • kiwisolver ==1.4.4 development
  • livereload ==2.6.3 development
  • locket ==1.0.0 development
  • markdown-it-py ==2.1.0 development
  • markupsafe ==2.1.1 development
  • matplotlib ==3.5.3 development
  • matplotlib-inline ==0.1.6 development
  • mdit-py-plugins ==0.3.1 development
  • mdurl ==0.1.2 development
  • mypy ==0.991 development
  • mypy-extensions ==0.4.3 development
  • myst-nb ==0.17.1 development
  • myst-parser ==0.18.1 development
  • nbclient ==0.5.13 development
  • nbformat ==5.7.0 development
  • nest-asyncio ==1.5.6 development
  • nodeenv ==1.7.0 development
  • nox ==2022.11.21 development
  • numpy ==1.21.6 development
  • packaging ==21.3 development
  • pandas ==1.3.5 development
  • parso ==0.8.3 development
  • partd ==1.3.0 development
  • pexpect ==4.8.0 development
  • pickleshare ==0.7.5 development
  • pillow ==9.3.0 development
  • pkgutil-resolve-name ==1.3.10 development
  • platformdirs ==2.5.4 development
  • pluggy ==1.0.0 development
  • pre-commit ==2.20.0 development
  • prompt-toolkit ==3.0.33 development
  • psutil ==5.9.4 development
  • ptyprocess ==0.7.0 development
  • pygments ==2.13.0 development
  • pyparsing ==3.0.9 development
  • pyperf ==2.5.0 development
  • pyrsistent ==0.19.2 development
  • pytest ==7.2.0 development
  • pytest-cov ==4.0.0 development
  • pytest-xdist ==3.0.2 development
  • python-dateutil ==2.8.2 development
  • pytz ==2022.6 development
  • pyyaml ==6.0 development
  • pyzmq ==24.0.1 development
  • requests ==2.28.1 development
  • rich ==12.6.0 development
  • six ==1.16.0 development
  • snowballstemmer ==2.2.0 development
  • soupsieve ==2.3.2.post1 development
  • sphinx ==5.3.0 development
  • sphinx-autobuild ==2021.3.14 development
  • sphinx-basic-ng ==1.0.0b1 development
  • sphinx-copybutton ==0.5.1 development
  • sphinx-inline-tabs ==2021.3.28b7 development
  • sphinxcontrib-applehelp ==1.0.2 development
  • sphinxcontrib-devhelp ==1.0.2 development
  • sphinxcontrib-htmlhelp ==2.0.0 development
  • sphinxcontrib-jsmath ==1.0.1 development
  • sphinxcontrib-qthelp ==1.0.3 development
  • sphinxcontrib-serializinghtml ==1.1.5 development
  • sqlalchemy ==1.4.44 development
  • tabulate ==0.9.0 development
  • toml ==0.10.2 development
  • tomli ==2.0.1 development
  • toolz ==0.12.0 development
  • tornado ==6.2 development
  • traitlets ==5.5.0 development
  • typed-ast ==1.5.4 development
  • typing-extensions ==4.4.0 development
  • urllib3 ==1.26.12 development
  • virtualenv ==20.16.7 development
  • wcwidth ==0.2.5 development
  • xarray ==0.20.2 development
  • zipp ==3.10.0 development
requirements/docs.txt pypi
  • alabaster ==0.7.12
  • asv ==0.5.1
  • attrs ==22.1.0
  • babel ==2.11.0
  • backcall ==0.2.0
  • beautifulsoup4 ==4.11.1
  • certifi ==2022.12.7
  • charset-normalizer ==2.1.1
  • click ==8.1.3
  • colorama ==0.4.6
  • cycler ==0.11.0
  • debugpy ==1.6.3
  • decorator ==5.1.1
  • docutils ==0.19
  • entrypoints ==0.4
  • fastjsonschema ==2.16.2
  • fonttools ==4.38.0
  • furo ==2022.9.29
  • greenlet ==2.0.1
  • idna ==3.4
  • imagesize ==1.4.1
  • importlib-metadata ==4.13.0
  • importlib-resources ==5.10.0
  • ipykernel ==6.16.2
  • ipython ==7.34.0
  • jedi ==0.18.1
  • jinja2 ==3.1.2
  • jsonschema ==4.17.0
  • jupyter-cache ==0.5.0
  • jupyter-client ==7.4.7
  • jupyter-core ==4.11.2
  • kiwisolver ==1.4.4
  • livereload ==2.6.3
  • markdown-it-py ==2.1.0
  • markupsafe ==2.1.1
  • matplotlib ==3.5.3
  • matplotlib-inline ==0.1.6
  • mdit-py-plugins ==0.3.1
  • mdurl ==0.1.2
  • myst-nb ==0.17.1
  • myst-parser ==0.18.1
  • nbclient ==0.5.13
  • nbformat ==5.7.0
  • nest-asyncio ==1.5.6
  • numpy ==1.21.6
  • packaging ==21.3
  • pandas ==1.3.5
  • parso ==0.8.3
  • pexpect ==4.8.0
  • pickleshare ==0.7.5
  • pillow ==9.3.0
  • pkgutil-resolve-name ==1.3.10
  • prompt-toolkit ==3.0.33
  • psutil ==5.9.4
  • ptyprocess ==0.7.0
  • pygments ==2.13.0
  • pyparsing ==3.0.9
  • pyrsistent ==0.19.2
  • python-dateutil ==2.8.2
  • pytz ==2022.6
  • pyyaml ==6.0
  • pyzmq ==24.0.1
  • requests ==2.28.1
  • six ==1.16.0
  • snowballstemmer ==2.2.0
  • soupsieve ==2.3.2.post1
  • sphinx ==5.3.0
  • sphinx-autobuild ==2021.3.14
  • sphinx-basic-ng ==1.0.0b1
  • sphinx-copybutton ==0.5.1
  • sphinx-inline-tabs ==2021.3.28b7
  • sphinxcontrib-applehelp ==1.0.2
  • sphinxcontrib-devhelp ==1.0.2
  • sphinxcontrib-htmlhelp ==2.0.0
  • sphinxcontrib-jsmath ==1.0.1
  • sphinxcontrib-qthelp ==1.0.3
  • sphinxcontrib-serializinghtml ==1.1.5
  • sqlalchemy ==1.4.44
  • tabulate ==0.9.0
  • tornado ==6.2
  • traitlets ==5.5.0
  • typing-extensions ==4.4.0
  • urllib3 ==1.26.12
  • wcwidth ==0.2.5
  • xarray ==0.20.2
  • zipp ==3.10.0
requirements/main.txt pypi
  • attrs ==22.1.0
  • importlib-metadata ==4.13.0
  • numpy ==1.21.6
  • pandas ==1.3.5
  • python-dateutil ==2.8.2
  • pytz ==2022.6
  • six ==1.16.0
  • typing-extensions ==4.4.0
  • xarray ==0.20.2
  • zipp ==3.10.0
requirements/tests-editable.txt pypi
  • attrs ==22.1.0 test
  • cloudpickle ==2.2.0 test
  • commonmark ==0.9.1 test
  • coverage ==6.5.0 test
  • dask ==2022.2.0 test
  • exceptiongroup ==1.0.4 test
  • execnet ==1.9.0 test
  • fsspec ==2022.11.0 test
  • importlib-metadata ==4.13.0 test
  • iniconfig ==1.1.1 test
  • locket ==1.0.0 test
  • numpy ==1.21.6 test
  • packaging ==21.3 test
  • pandas ==1.3.5 test
  • partd ==1.3.0 test
  • pluggy ==1.0.0 test
  • pygments ==2.13.0 test
  • pyparsing ==3.0.9 test
  • pytest ==7.2.0 test
  • pytest-cov ==4.0.0 test
  • pytest-xdist ==3.0.2 test
  • python-dateutil ==2.8.2 test
  • pytz ==2022.6 test
  • pyyaml ==6.0 test
  • rich ==12.6.0 test
  • six ==1.16.0 test
  • tomli ==2.0.1 test
  • toolz ==0.12.0 test
  • typing-extensions ==4.4.0 test
  • xarray ==0.20.2 test
  • zipp ==3.10.0 test
requirements/tests.txt pypi
  • attrs ==22.1.0 test
  • cloudpickle ==2.2.0 test
  • commonmark ==0.9.1 test
  • coverage ==6.5.0 test
  • dask ==2022.2.0 test
  • exceptiongroup ==1.0.4 test
  • execnet ==1.9.0 test
  • fsspec ==2022.11.0 test
  • importlib-metadata ==4.13.0 test
  • iniconfig ==1.1.1 test
  • locket ==1.0.0 test
  • numpy ==1.21.6 test
  • packaging ==21.3 test
  • pandas ==1.3.5 test
  • partd ==1.3.0 test
  • pluggy ==1.0.0 test
  • pygments ==2.13.0 test
  • pyparsing ==3.0.9 test
  • pytest ==7.2.0 test
  • pytest-cov ==4.0.0 test
  • pytest-xdist ==3.0.2 test
  • python-dateutil ==2.8.2 test
  • pytz ==2022.6 test
  • pyyaml ==6.0 test
  • rich ==12.6.0 test
  • six ==1.16.0 test
  • tomli ==2.0.1 test
  • toolz ==0.12.0 test
  • typing-extensions ==4.4.0 test
  • xarray ==0.20.2 test
  • zipp ==3.10.0 test
requirements/types.txt pypi
  • attrs ==22.1.0
  • importlib-metadata ==4.13.0
  • mypy ==0.991
  • mypy-extensions ==0.4.3
  • numpy ==1.21.6
  • pandas ==1.3.5
  • python-dateutil ==2.8.2
  • pytz ==2022.6
  • six ==1.16.0
  • tomli ==2.0.1
  • typed-ast ==1.5.4
  • typing-extensions ==4.4.0
  • xarray ==0.20.2
  • zipp ==3.10.0
requirements/vtk.txt pypi
  • aiohttp ==3.8.3
  • aiosignal ==1.3.1
  • apptools ==5.2.0
  • async-timeout ==4.0.2
  • asynctest ==0.13.0
  • attrs ==22.1.0
  • charset-normalizer ==2.1.1
  • configobj ==5.0.6
  • cycler ==0.11.0
  • envisage ==6.1.0
  • fonttools ==4.38.0
  • frozenlist ==1.3.3
  • idna ==3.4
  • importlib-metadata ==4.13.0
  • importlib-resources ==5.10.0
  • kiwisolver ==1.4.4
  • matplotlib ==3.5.3
  • mayavi ==4.8.1
  • multidict ==6.0.2
  • numpy ==1.21.6
  • packaging ==21.3
  • pandas ==1.3.5
  • pillow ==9.3.0
  • pyface ==7.4.3
  • pygments ==2.13.0
  • pyparsing ==3.0.9
  • python-dateutil ==2.8.2
  • pytz ==2022.6
  • six ==1.16.0
  • traits ==6.4.1
  • traitsui ==7.4.2
  • typing-extensions ==4.4.0
  • vtk ==9.2.2
  • wslink ==1.9.1
  • xarray ==0.20.2
  • yarl ==1.8.1
  • zipp ==3.10.0
pyproject.toml pypi
requirements/vcs_packages.in pypi
.github/environment.yml pypi