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

https://github.com/DedalusProject/dedalus

A flexible framework for solving PDEs with modern spectral methods.
https://github.com/DedalusProject/dedalus

fluid-dynamics pde-solver spectral-methods

Last synced: about 1 month ago
JSON representation

A flexible framework for solving PDEs with modern spectral methods.

Awesome Lists containing this project

README

        


Dedalus Project



Repo status


Read the Docs

PyPI - Python Version

PyPI


Conda Version


PyPI - License

Dedalus is a flexible framework for solving partial differential equations using modern spectral methods.
The code is open-source and developed by a team of researchers studying astrophysical, geophysical, and biological fluid dynamics.

Dedalus is written primarily in Python and features an easy-to-use interface with symbolic vectorial equation specification.
For example, to simulate incompressible hydrodynamics in a ball, you can symbolically enter the equations, including [gauge conditions](https://dedalus-project.readthedocs.io/en/latest/pages/gauge_conditions.html) and [boundary conditions enforced with the tau method](https://dedalus-project.readthedocs.io/en/latest/pages/tau_method.html), as:

```python
problem.add_equation("div(u) + tau_p = 0")
problem.add_equation("dt(u) - nu*lap(u) + grad(p) + lift(tau_u) = - u@grad(u)")
problem.add_equation("u(r=1) = 0")
problem.add_equation("integ(p) = 0")
```

Our numerical algorithms produce sparse and spectrally accurate discretizations of PDEs on simple domains, including Cartesian domains of any dimension, disks, annuli, spheres, spherical shells, and balls:






KdV-Burgers equation (1D IVP)







Rayleigh-Benard convection (2D IVP)







Periodic shear flow (2D IVP)







Poisson equation (2D LBVP)











Librational instability (disk IVP)







Spherical shallow water (sphere IVP)







Spherical shell convection (shell IVP)







Internally heated convection (ball IVP)



The resulting systems are efficiently solved using compiled libraries and are automatically parallelized using MPI.
See the [documentation](http://dedalus-project.readthedocs.org) for tutorials and additional examples.

## Links

* Project homepage:
* Code repository:
* Documentation:
* Mailing list:

## Developers

* [Keaton Burns (@kburns)](https://github.com/kburns)
* [Geoff Vasil (@geoffvasil)](https://github.com/geoffvasil)
* [Jeff Oishi (@jsoishi)](https://github.com/jsoishi)
* [Daniel Lecoanet (@lecoanet)](https://github.com/lecoanet/)
* [Ben Brown (@bpbrown)](https://github.com/bpbrown)