Metadata-Version: 2.1
Name: modopt
Version: 1.7.1
Summary: Modular Optimisation tools for soliving inverse problems.
Home-page: https://github.com/cea-cosmic/modopt
Author: Samuel Farrens
Author-email: samuel.farrens@cea.fr
License: MIT
Classifier: License :: OSI Approved :: MIT License
Classifier: Programming Language :: Python
Classifier: Programming Language :: Python :: 3.7
Classifier: Programming Language :: Python :: 3.8
Classifier: Programming Language :: Python :: 3.9
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Operating System :: Unix
Classifier: Operating System :: MacOS
Requires-Python: >=3.6
Description-Content-Type: text/markdown
License-File: LICENCE.txt
Requires-Dist: importlib_metadata>=3.7.0
Requires-Dist: numpy>=1.19.5
Requires-Dist: scipy>=1.5.4
Requires-Dist: tqdm>=4.64.0
Provides-Extra: develop
Requires-Dist: coverage>=5.5; extra == "develop"
Requires-Dist: pytest>=6.2.2; extra == "develop"
Requires-Dist: pytest-raises>=0.10; extra == "develop"
Requires-Dist: pytest-cases>=3.6; extra == "develop"
Requires-Dist: pytest-xdist>=3.0.1; extra == "develop"
Requires-Dist: pytest-cov>=2.11.1; extra == "develop"
Requires-Dist: pytest-emoji>=0.2.0; extra == "develop"
Requires-Dist: pydocstyle==6.1.1; extra == "develop"
Requires-Dist: pytest-pydocstyle>=2.2.0; extra == "develop"
Requires-Dist: black; extra == "develop"
Requires-Dist: isort; extra == "develop"
Requires-Dist: pytest-black; extra == "develop"
Requires-Dist: jupyter==1.0.0; extra == "develop"
Requires-Dist: myst-parser==0.16.1; extra == "develop"
Requires-Dist: nbsphinx==0.8.7; extra == "develop"
Requires-Dist: nbsphinx-link==1.3.0; extra == "develop"
Requires-Dist: numpydoc==1.1.0; extra == "develop"
Requires-Dist: sphinx==4.3.1; extra == "develop"
Requires-Dist: sphinxcontrib-bibtex==2.4.1; extra == "develop"
Requires-Dist: sphinxawesome-theme==3.2.1; extra == "develop"
Requires-Dist: sphinx-gallery==0.11.1; extra == "develop"

# ModOpt

<img width=400 src="https://raw.githubusercontent.com/CEA-COSMIC/ModOpt/master/docs/source/modopt_logo.png">

| Usage | Development | Release |
| ----- | ----------- | ------- |
| [![docs](https://img.shields.io/badge/docs-Sphinx-blue)](https://cea-cosmic.github.io/ModOpt/) | [![build](https://github.com/CEA-COSMIC/modopt/workflows/CI/badge.svg)](https://github.com/CEA-COSMIC/modopt/actions?query=workflow%3ACI) | [![release](https://img.shields.io/github/v/release/CEA-COSMIC/modopt)](https://github.com/CEA-COSMIC/modopt/releases/latest) |
| [![license](https://img.shields.io/github/license/CEA-COSMIC/modopt)](https://github.com/CEA-COSMIC/modopt/blob/master/LICENCE.txt) | [![deploy](https://github.com/CEA-COSMIC/modopt/workflows/CD/badge.svg)](https://github.com/CEA-COSMIC/modopt/actions?query=workflow%3ACD) | [![pypi](https://img.shields.io/pypi/v/modopt)](https://pypi.org/project/modopt/) |
| [![wemake-python-styleguide](https://img.shields.io/badge/style-wemake-000000.svg)](https://github.com/wemake-services/wemake-python-styleguide) | [![codecov](https://codecov.io/gh/CEA-COSMIC/modopt/branch/master/graph/badge.svg?token=XHJIQXV7AX)](https://codecov.io/gh/CEA-COSMIC/modopt) | [![python](https://img.shields.io/pypi/pyversions/modopt)](https://www.python.org/downloads/source/) |
| [![contribute](https://img.shields.io/badge/contribute-read-lightgrey)](https://github.com/CEA-COSMIC/modopt/blob/master/CONTRIBUTING.md) | [![CodeFactor](https://www.codefactor.io/repository/github/CEA-COSMIC/modopt/badge)](https://www.codefactor.io/repository/github/CEA-COSMIC/modopt) | |
| [![coc](https://img.shields.io/badge/conduct-read-lightgrey)](https://github.com/CEA-COSMIC/modopt/blob/master/CODE_OF_CONDUCT.md) | [![Updates](https://pyup.io/repos/github/CEA-COSMIC/modopt/shield.svg)](https://pyup.io/repos/github/CEA-COSMIC/ModOpt/) | |

ModOpt is a series of **Modular Optimisation** tools for solving inverse problems.

See [documentation](https://CEA-COSMIC.github.io/ModOpt/) for more details.

## Installation

To install using `pip` run the following command:

```bash
  $ pip install modopt
```

To clone the ModOpt repository from GitHub run the following command:

```bash
  $ git clone https://github.com/CEA-COSMIC/ModOpt.git
```

## Dependencies

All packages required by ModOpt should be installed automatically. Optional packages, however, will need to be installed manually.

### Required Packages

In order to run the code in this repository the following packages must be
installed:

* [Python](https://www.python.org/) [> 3.7]
* [importlib_metadata](https://importlib-metadata.readthedocs.io/en/latest/) [==3.7.0]
* [Numpy](http://www.numpy.org/) [==1.19.5]
* [Scipy](http://www.scipy.org/) [==1.5.4]
* [tqdm](https://tqdm.github.io/) [>=4.64.0]

### Optional Packages

The following packages can optionally be installed to add extra functionality:

* [Astropy](http://www.astropy.org/)
* [Matplotlib](http://matplotlib.org/)
* [Scikit-Image](https://scikit-image.org/)
* [Scikit-Learn](https://scikit-learn.org/)
* [Termcolor](https://pypi.python.org/pypi/termcolor)

For (partial) GPU compliance the following packages can also be installed.
Note that none of these are required for running on a CPU.

* [CuPy](https://cupy.dev/)
* [Torch](https://pytorch.org/)
* [TensorFlow](https://www.tensorflow.org/)

## Citation

If you use ModOpt in a scientific publication, we would appreciate citations to the following paper:

[PySAP: Python Sparse Data Analysis Package for multidisciplinary image processing](https://www.sciencedirect.com/science/article/pii/S2213133720300561), S. Farrens et al., Astronomy and Computing 32, 2020

The BibTeX citation is the following:
```
@Article{farrens2020pysap,
  title={{PySAP: Python Sparse Data Analysis Package for multidisciplinary image processing}},
  author={Farrens, S and Grigis, A and El Gueddari, L and Ramzi, Z and Chaithya, GR and Starck, S and Sarthou, B and Cherkaoui, H and Ciuciu, P and Starck, J-L},
  journal={Astronomy and Computing},
  volume={32},
  pages={100402},
  year={2020},
  publisher={Elsevier}
}
```
