Skip to content

Commit

Permalink
Updated Readme
Browse files Browse the repository at this point in the history
  • Loading branch information
javicarron committed Jun 28, 2023
1 parent f3056d5 commit 552de15
Showing 1 changed file with 35 additions and 22 deletions.
57 changes: 35 additions & 22 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,26 +1,30 @@
# Pynkowski

A Python package to compute Minkowski Functionals of input fields, as well as their expected values in the case of Gaussian isotropic fields.
A Python package to compute Minkowski Functionals and other higher order statistics of input fields, as well as their expected values for different kinds of fields.

The formats supported for **input data** are the following:
The statistics currently supported by this package are:

- Scalar HEALPix maps, as the ones used by [healpy](https://healpy.readthedocs.io/) (see [paper 1](https://arxiv.org/abs/2211.07562)).
- Polarisation HEALPix maps in the $SO(3)$ formalism (coming soon, see [paper 2](https://arxiv.org/abs/2301.13191)).
- Minkowski functionals.
- Maxima and minima distributions.

...and more to come, feel free to contact us (by email [[1](mailto:javier.carron@roma2.infn.it) and [2](mailto:alessandro.carones@roma2.infn.it )] or opening an issue) to implement more schemes.
The formats currently supported for **input data** are the following:

- Scalar HEALPix maps, as the ones used by [healpy](https://healpy.readthedocs.io/), such as $T, \kappa, P^2$ (see [paper 1](https://arxiv.org/abs/2211.07562)).
- Polarisation HEALPix maps in the $SO(3)$ formalism (coming soon, see [paper 2](https://arxiv.org/abs/2301.13191)).
- 2D and 3D numpy arrays (coming soon).

The **theoretical expectation** for different fields are implemented in the following cases:
The theoretical expectation of some statistics is currently supported for the following **theoretical fields**:

- Gaussian scalar maps on the sphere (such as CMB $T$, see [paper 1](https://arxiv.org/abs/2211.07562)).
- $\chi^2$ maps on the sphere (such as CMB $P^2$, see [paper 1](https://arxiv.org/abs/2211.07562)).
- Gaussian fields (such as CMB $T$ or the initial density field, see [paper 1](https://arxiv.org/abs/2211.07562)).
- $\chi^2$ fields (such as CMB $P^2$, see [paper 1](https://arxiv.org/abs/2211.07562)).
- Spin 2 maps in the $SO(3)$ formalism (coming soon, see [paper 2](https://arxiv.org/abs/2301.13191)).

...and more to come, feel free to contact us (by email [[1](mailto:javier.carron@roma2.infn.it) and [2](mailto:alessandro.carones@roma2.infn.it )] or opening an issue) to implement more theoretical expectations.
We are actively working on the implementation of more statistics, data formats, and theoretical fields. If you want to contribute, we welcome and appreciate pull requests.
If you have any comments or suggestions, please feel free to contact us by email ([1](mailto:javier.carron@roma2.infn.it) and [2](mailto:alessandro.carones@roma2.infn.it )) or by opening a discussion thread or issue.

The repository can be found on [https://github.com/javicarron/pynkowski](https://github.com/javicarron/pynkowski).

## Installation
# Installation

This package can be installed with:
```
Expand All @@ -34,27 +38,36 @@ The dependencies are:
- [healpy](https://healpy.readthedocs.io/)
- [tqdm](https://github.com/tqdm/tqdm) (optional)

## Documentation
# Documentation

The documentation can be found on [https://javicarron.github.io/pynkowski](https://javicarron.github.io/pynkowski)
The documentation can be found on [https://javicarron.github.io/pynkowski](https://javicarron.github.io/pynkowski).

This package is divided into two modules: `data` and `theory`. Each module has a submodule for each kind of dataset or theoretical field, plus a general utilities submodule. In this way, extending the code to a new usecase is reduced to creating a new submodule. The structure is the following:
This package is divided into three modules: `stats`, `data`, and `theory`. Each module has a submodule for each kind of object, plus a general utilities submodule and a base submodule for the definition of the base class. In this way, extending the code to a new usecase is reduced to creating a new submodule. The structure is the following:

- [`data`](https://javicarron.github.io/pynkowski/pynkowski/data.html)
- [`scalar`](https://javicarron.github.io/pynkowski/pynkowski/data/scalar.html)
- [`utils`](https://javicarron.github.io/pynkowski/pynkowski/data/utils.html)

- [`stats`](https://javicarron.github.io/pynkowski/pynkowski/stats.html)
- [`minkowski`](https://javicarron.github.io/pynkowski/pynkowski/stats/minkowski.html)
- [`extrema`](https://javicarron.github.io/pynkowski/pynkowski/stats/extrema.html)
- [`utils_st`](https://javicarron.github.io/pynkowski/pynkowski/stats/utils_st.html)

- [`data`](https://javicarron.github.io/pynkowski/pynkowski/data.html)
- [`base_da`](https://javicarron.github.io/pynkowski/pynkowski/data/base_da.html)
- [`healpix`](https://javicarron.github.io/pynkowski/pynkowski/data/healpix.html)
- [`utils_da`](https://javicarron.github.io/pynkowski/pynkowski/data/utils_da.html)

- [`theory`](https://javicarron.github.io/pynkowski/pynkowski/theory.html)
- [`temperature`](https://javicarron.github.io/pynkowski/pynkowski/theory/temperature.html)
- [`p2`](https://javicarron.github.io/pynkowski/pynkowski/theory/p2.html)
- [`utils`](https://javicarron.github.io/pynkowski/pynkowski/theory/utils.html)
- [`base_th`](https://javicarron.github.io/pynkowski/pynkowski/theory/base_th.html)
- [`gaussian`](https://javicarron.github.io/pynkowski/pynkowski/theory/gaussian.html)
- [`chi2`](https://javicarron.github.io/pynkowski/pynkowski/theory/chi2.html)
- [`utils_th`](https://javicarron.github.io/pynkowski/pynkowski/theory/utils_th.html)

The documentation for each submodule can be found by clicking on the links above or navigating the menu on the left.

## Example notebooks
# Example notebooks

- [Minkowski Functionals of a CMB temperature map and comparison with theory](https://github.com/javicarron/pynkowski/blob/main/examples/Temperature.ipynb).
- [Minkowski Functionals of a CMB polarization P² map and comparison with theory](https://github.com/javicarron/pynkowski/blob/main/examples/P2.ipynb).

## Authors
# Authors

This package has been developed by [Javier Carrón Duque](https://www.javiercarron.com) and Alessandro Carones.

0 comments on commit 552de15

Please sign in to comment.