GithubHelp home page GithubHelp logo

FluidDyn project and fluiddyn package

Latest version Supported Python versions Documentation status Code coverage Heptapod CI 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

You can also get the source code from https://foss.heptapod.net/fluiddyn/fluiddyn or from the Python Package Index. The development mode is often useful if you intend to modify fluiddyn. From the root directory:

pip install -e .[dev]

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:

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.

FluidDyn's Projects

fluiddevops icon fluiddevops

Publish-only mirror of https://bitbucket.org/fluiddyn/fluiddevops

fluiddyn icon fluiddyn

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

fluidfft icon fluidfft

:chart_with_upwards_trend: Common API (C++ and Python) for Fast Fourier Transform HPC libraries (publish-only mirror)

fluidimage icon fluidimage

:sparkler: A libre Python framework for scientific treatments of large series of images (publish-only mirror)

fluidlab icon fluidlab

:cyclone: Package for laboratory experiments (publish-only mirror)

fluidsht icon fluidsht

:globe_with_meridians: Python package for performing Spherical Harmonic Transforms (SHT) with different libraries (publish-only mirror)

fluidsim icon fluidsim

:ocean: Framework for studying fluid dynamics with numerical simulations using Python (publish-only mirror). The main repo is hosted on https://foss.heptapod.net (Gitlab fork supporting Mercurial).

fluidsimfoam icon fluidsimfoam

Python framework for OpenFOAM (publish-only mirror). For issues and merge requests, https://foss.heptapod.net/fluiddyn/fluidsimfoam

pythran icon pythran

a claimless python to c++ converter

spack icon spack

A flexible package manager that supports multiple versions, configurations, platforms, and compilers.

texsoup-alt icon texsoup-alt

Fault-tolerant Python3 package for searching, navigating, and modifying LaTeX documents

transonic icon transonic

:rocket: Make your Python code fly at transonic speeds!

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.