An open API service indexing awesome lists of open source software.

https://github.com/fluiddyn/fluiddyn

:hammer_and_wrench: base package of FluidDyn project (publish-only mirror). For issues and merge requests, https://foss.heptapod.net/fluiddyn/fluiddyn
https://github.com/fluiddyn/fluiddyn

core fluid-dynamics utilities

Last synced: 11 months ago
JSON representation

:hammer_and_wrench: base package of FluidDyn project (publish-only mirror). For issues and merge requests, https://foss.heptapod.net/fluiddyn/fluiddyn

Awesome Lists containing this project

README

          

======
|logo|
======

|release| |pyversions| |docs| |coverage| |heptapod_ci| |github_actions|

.. |logo| image:: https://foss.heptapod.net/fluiddyn/fluiddyn/raw/branch/default/doc/logo.svg
:alt: FluidDyn project and fluiddyn package

.. |release| image:: https://img.shields.io/pypi/v/fluiddyn.svg
:target: https://pypi.python.org/pypi/fluiddyn/
:alt: Latest version

.. |pyversions| image:: https://img.shields.io/pypi/pyversions/fluiddyn.svg
:alt: Supported Python versions

.. |docs| image:: https://readthedocs.org/projects/fluiddyn/badge/?version=latest
:target: http://fluiddyn.readthedocs.org
:alt: Documentation status

.. |coverage| image:: https://codecov.io/gh/fluiddyn/fluiddyn/branch/branch%2Fdefault/graph/badge.svg
:target: https://codecov.io/gh/fluiddyn/fluiddyn/branch/branch%2Fdefault
:alt: Code coverage

.. |heptapod_ci| image:: https://foss.heptapod.net/fluiddyn/fluiddyn/badges/branch/default/pipeline.svg
:target: https://foss.heptapod.net/fluiddyn/fluiddyn/-/pipelines
:alt: Heptapod CI

.. |github_actions| image:: https://github.com/fluiddyn/fluidsim/actions/workflows/ci-linux.yml/badge.svg?branch=branch/default
:target: https://github.com/fluiddyn/fluiddyn/actions/
:alt: Github Actions

FluidDyn project is an ecosystem of packages for research and teaching in fluid
dynamics. The Python package fluiddyn contains:

* **basic utilities to manage**: File I/O for some esoteric formats,
publication quality figures, job submission on clusters, MPI
* **powerful classes to handle**: parameters, arrays, series of files
* **simplified interfaces to calculate**: FFT, spherical harmonics

and much more. It is used as a library in `the other specialized packages of
the FluidDyn project `_ (in particular in
`fluidfft `_, `fluidsim
`_, `fluidlab
`_ and `fluidimage
`_).

**Documentation**: `Read the Docs `_, `Heptapod Pages `_

Installation
------------
The simplest way to install fluiddyn is by using pip::

pip install fluiddyn

Requirements
------------

+------------------------+-------------------------------------------------------------------------------+
| **Minimum** | Python (>=3.9), ``numpy matplotlib h5py psutil`` |
+------------------------+-------------------------------------------------------------------------------+
| **Full functionality** | ``h5py h5netcdf pillow imageio mpi4py scipy pyfftw`` (requires FFTW library), |
| | SHTns |
+------------------------+-------------------------------------------------------------------------------+
| **Optional** | OpenCV with Python bindings, ``scikit-image`` |
+------------------------+-------------------------------------------------------------------------------+

**Note**: Detailed instructions to install the above dependencies using
Anaconda / Miniconda or in a specific operating system such as Ubuntu, macOS
etc. can be found `here
`__.

Tests
-----

With an editable installation, you can run the tests with::

pytest

Metapaper and citation
----------------------

If you use any of the FluidDyn packages to produce scientific articles, please
cite `our metapaper presenting the FluidDyn project and the fluiddyn package
`_:

.. code ::

@article{fluiddyn,
doi = {10.5334/jors.237},
year = {2019},
publisher = {Ubiquity Press, Ltd.},
volume = {7},
author = {Pierre Augier and Ashwin Vishnu Mohanan and Cyrille Bonamy},
title = {{FluidDyn}: A Python Open-Source Framework for Research and Teaching in Fluid Dynamics
by Simulations, Experiments and Data Processing},
journal = {Journal of Open Research Software}
}

History
-------

The FluidDyn project started in 2015 as the evolution of two packages
previously developed by `Pierre Augier
`_ (CNRS researcher at
`LEGI `_, Grenoble): solveq2d (a numerical
code to solve fluid equations in a periodic two-dimensional space with a
pseudo-spectral method, developed at KTH, Stockholm) and fluidlab (a toolkit to
do experiments, developed in the G. K. Batchelor Fluid Dynamics Laboratory at
DAMTP, University of Cambridge).

*Keywords and ambitions*: fluid dynamics research with Python (>= 3.6),
modular, object-oriented, collaborative, tested and documented, free and
open-source software.

License
-------

FluidDyn is distributed under the CeCILL-B_ License, a BSD compatible
french license.

.. _CeCILL-B: http://www.cecill.info/index.en.html