Skip to content

Commit

Permalink
Update docs for v3 on pypi
Browse files Browse the repository at this point in the history
  • Loading branch information
kburns committed Dec 30, 2023
1 parent 8c74431 commit b9ed607
Show file tree
Hide file tree
Showing 5 changed files with 34 additions and 48 deletions.
19 changes: 12 additions & 7 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -11,14 +11,18 @@
<a href="http://dedalus-project.readthedocs.org">
<img alt="Read the Docs" src="https://img.shields.io/readthedocs/dedalus-project">
</a>
<img alt="PyPI - Python Version" src="https://img.shields.io/pypi/pyversions/dedalus">
<img alt="PyPI" src="https://img.shields.io/pypi/v/dedalus">
<img alt="PyPI - License" src="https://img.shields.io/pypi/l/dedalus">
<img alt="PyPI - Python Version" src="https://img.shields.io/pypi/pyversions/dedalus">
<a href="https://pypi.org/project/dedalus/">
<img alt="PyPI" src="https://img.shields.io/pypi/v/dedalus">
</a>
<a href="https://github.com/conda-forge/dedalus-feedstock">
<img alt="Conda Version" src="https://img.shields.io/conda/vn/conda-forge/dedalus">
</a>
<a href="https://www.gnu.org/licenses/gpl-3.0.en.html">
<img alt="PyPI - License" src="https://img.shields.io/pypi/l/dedalus">
</a>
</p>

**Note: this branch is the development head of v3 of the codebase, which is currently under beta-release.
The development head of v2 of the codebase is on the ["v2_master" branch](https://github.com/DedalusProject/dedalus/tree/v2_master).**

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.

Expand Down Expand Up @@ -106,6 +110,7 @@ Our numerical algorithms produce sparse and spectrally accurate discretizations
</table>

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

Expand All @@ -117,7 +122,7 @@ The resulting systems are efficiently solved using compiled libraries and are au
## Developers

* [Keaton Burns (@kburns)](https://github.com/kburns)
* [Geoff Vasil (@gmvasil)](https://github.com/gmvasil)
* [Geoff Vasil (@gmvasil)](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)
4 changes: 0 additions & 4 deletions docs/index.rst
Original file line number Diff line number Diff line change
@@ -1,10 +1,6 @@
Dedalus Project
***************

**Note: please check you're referencing the intended version of the documentation.
This documentation is in reference to v3 of the code, which is currently under beta-release.
Documentation for v2 (the latest on PyPI) can be accessed through the sidebar.**

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

Expand Down
30 changes: 9 additions & 21 deletions docs/pages/installation.rst
Original file line number Diff line number Diff line change
@@ -1,10 +1,6 @@
Installing Dedalus
******************

**Note: please check you're referencing the intended version of the documentation.
This documentation is in reference to v3 of the code, which is currently under beta-release.
Documentation for v2 (the latest on PyPI) can be accessed through the sidebar.**

Dedalus is a Python 3 package that includes custom C-extensions (compiled with Cython) and that relies on MPI, FFTW, HDF5, and a basic scientific-Python stack (numpy, scipy, mpi4py, and h5py).

The easiest way to install Dedalus and its dependencies is using conda.
Expand All @@ -15,8 +11,7 @@ Once you have the necessary C and Python dependencies, you can install and upgra
Full-stack conda installation (recommended)
===========================================

A full-stack installation of Dedalus v2 is available via conda-forge for Linux and macOS.
This can be used to quickly install all dependencies before installing Dedalus3 via pip.
A full-stack installation of Dedalus v3 is available via conda-forge for Linux and macOS.
This installation route is recommended for laptops, workstations, and some cluster environments.
If linking to the existing MPI libraries on your cluster is recommended, see the alternative "Custom conda installation" instructions below.

Expand All @@ -41,14 +36,10 @@ If linking to the existing MPI libraries on your cluster is recommended, see the
conda env config vars set OMP_NUM_THREADS=1
conda env config vars set NUMEXPR_MAX_THREADS=1

#. Install Dedalus v2 and all its requirements from the conda-forge channel and upgrade to Dedalus v3 using pip::

# Install Dedalus v2 from conda-forge to build stack
conda install -c conda-forge dedalus c-compiler cython "h5py=*=mpi*"
#. Install Dedalus v3 and all its requirements from the conda-forge channel::

# Upgrade to Dedalus v3
conda uninstall --force dedalus
CC=mpicc pip3 install --no-cache --no-build-isolation http://github.com/dedalusproject/dedalus/zipball/master/
# Install Dedalus v3 from conda-forge
conda install -c conda-forge dedalus

To use Dedalus, you simply need to activate the new environment.
You can test the installation using the command-line interface::
Expand Down Expand Up @@ -109,15 +100,12 @@ This is done automatically when Dedalus is installed using the conda build scrip
Installing from PyPI
--------------------

**Note: Dedalus v3 is currently under beta-release, and not yet available on PyPI.
Please build directly from source as described below.**

.. We currently only provide Dedalus on PyPI as a source distribution so that the Cython extensions are properly linked to your FFTW/MPI libraries at build-time.
.. To install Dedalus from PyPI, first set the ``FFTW_PATH`` and ``MPI_PATH`` environment variables to the prefix paths for FFTW/MPI and then install using pip::
We currently only provide Dedalus on PyPI as a source distribution so that the Cython extensions are properly linked to your FFTW/MPI libraries at build-time.
To install Dedalus from PyPI, first set the ``FFTW_PATH`` and ``MPI_PATH`` environment variables to the prefix paths for FFTW/MPI and then install using pip, ensuring that the C extensions are properly linked to MPI by using ``mpicc``::

.. export FFTW_PATH=/path/to/your/fftw_prefix
.. export MPI_PATH=/path/to/your/mpi_prefix
.. pip3 install dedalus
export FFTW_PATH=/path/to/your/fftw_prefix
export MPI_PATH=/path/to/your/mpi_prefix
CC=mpicc pip3 install --no-cache --no-build-isolation dedalus

Building from source
--------------------
Expand Down
25 changes: 13 additions & 12 deletions docs/pages/methodology.rst
Original file line number Diff line number Diff line change
@@ -1,6 +1,19 @@
Methodology
***********

Dedalus Methods Paper
=====================

For details on the mathematical and computational methodologies underlying Dedalus v2, please consult the Dedalus methods paper:

K J Burns, G M Vasil, J S Oishi, D Lecoanet, B P Brown,
"Dedalus: A Flexible Framework for Numerical Simulations with Spectral Methods,"
Physical Review Research, vol. 2, no. 2, p. 838, Apr. 2020.
`[doi] <https://doi.org/10.1103/PhysRevResearch.2.023068>`_
`[arxiv] <https://arxiv.org/abs/1905.10388>`_
`[bibtex] <https://ui.adsabs.harvard.edu/abs/2019arXiv190510388B/exportcitation>`_
`[examples] <https://github.com/DedalusProject/methods_paper_examples>`_

Curvilinear Bases
=================

Expand All @@ -21,16 +34,4 @@ For details on the mathematics behind Dedalus' bases for curvilinear domains, pl
ournal of Computational Physics: X, vol. 3, p. 100012, Jun 2019.
`[doi] <https://doi.org/10.1016/j.jcpx.2019.100012>`_

Dedalus Methods Paper
=====================

For details on the mathematical and computational methodologies underlying Dedalus v2, please consult the Dedalus methods paper:

K J Burns, G M Vasil, J S Oishi, D Lecoanet, B P Brown,
"Dedalus: A Flexible Framework for Numerical Simulations with Spectral Methods,"
Physical Review Research, vol. 2, no. 2, p. 838, Apr. 2020.
`[doi] <https://doi.org/10.1103/PhysRevResearch.2.023068>`_
`[arxiv] <https://arxiv.org/abs/1905.10388>`_
`[bibtex] <https://ui.adsabs.harvard.edu/abs/2019arXiv190510388B/exportcitation>`_
`[examples] <https://github.com/DedalusProject/methods_paper_examples>`_

4 changes: 0 additions & 4 deletions docs/pages/tutorials.rst
Original file line number Diff line number Diff line change
@@ -1,10 +1,6 @@
Tutorials \& Examples
*********************

**Note: please check you're referencing the intended version of the documentation.
This documentation is in reference to v3 of the code, which is currently under beta-release.
Documentation for v2 (the latest on PyPI) can be accessed through the sidebar.**

Tutorial Notebooks
==================

Expand Down

0 comments on commit b9ed607

Please sign in to comment.