Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Cleanup rst files #179

Merged
merged 1 commit into from
Apr 4, 2023
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
67 changes: 0 additions & 67 deletions README.md

This file was deleted.

94 changes: 94 additions & 0 deletions README.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,94 @@
scikit-matter
=============

|tests| |codecov| |docs| |pypi| |conda| |docs|

A collection of scikit-learn compatible utilities that implement methods born out of the
materials science and chemistry communities.

Installation
------------

You can install *scikit-matter* either via pip using

.. code-block:: bash

pip install skmatter


or conda

.. code-block:: bash

conda install -c conda-forge skmatter


You can then `import skmatter` in your code!

Developing the package
----------------------

Start by installing the development dependencies:

.. code-block:: bash

pip install tox black flake8


Then this package itself

.. code-block:: bash

git clone https://github.com/lab-cosmo/scikit-matter
cd scikit-matter
pip install -e .


This install the package in development mode, making is ``import`` able globally and
allowing you to edit the code and directly use the updated version.

Running the tests
^^^^^^^^^^^^^^^^^

.. code-block:: bash

cd <scikit-matter PATH>
# run unit tests
tox
# run the code formatter
black --check .
# run the linter
flake8


You may want to setup your editor to automatically apply the `black`_ code formatter
when saving your files, there are plugins to do this with `all major editors`_.

License and developers
----------------------

This project is distributed under the BSD-3-Clauses license. By contributing to it you
agree to distribute your changes under the same license.

.. _`black`: https://black.readthedocs.io/en/stable/
.. _`all major editors`: https://black.readthedocs.io/en/stable/editor_integration.html

.. |tests| image:: https://github.com/lab-cosmo/scikit-matter/workflows/Test/badge.svg
:alt: Github Actions Tests Job Status
:target: https://github.com/lab-cosmo/scikit-matter/actions?query=workflow%3ATests

.. |codecov| image:: https://codecov.io/gh/lab-cosmo/scikit-matter/branch/main/graph/badge.svg?token=UZJPJG34SM
:alt: Code coverage
:target: https://codecov.io/gh/lab-cosmo/scikit-matter/

.. |pypi| image:: https://img.shields.io/pypi/v/skmatter.svg
:alt: Latest PYPI version
:target: https://pypi.org/project/skmatter

.. |conda| image:: https://anaconda.org/conda-forge/skmatter/badges/version.svg
:alt: Latest conda version
:target: https://anaconda.org/conda-forge/skmatter

.. |docs| image:: https://img.shields.io/badge/documentation-latest-sucess
:alt: Documentation
:target: https://scikit-matter.readthedocs.io
43 changes: 20 additions & 23 deletions docs/src/bibliography.rst
Original file line number Diff line number Diff line change
Expand Up @@ -3,42 +3,39 @@ References

.. [deJong1992]
S. de Jong, H.A.L. Kiers,
"Principal covariates regression: Part I. Theory",
Chemom. intell. lab. syst. 14 (1992) 155-164
https://doi.org/10.1016/0169-7439(92)80100-I
"Principal covariates regression: Part I. Theory", Chemom. intell. lab. syst. 14
(1992) 155-164 https://doi.org/10.1016/0169-7439(92)80100-I

.. [Imbalzano2018]
Giulio Imbalzano, Andrea Anelli, Daniele Giofré, Sinja Klees, Jörg Behler, and Michele Ceriotti,
“Automatic selection of atomic fingerprints and reference configurations for machine-learning potentials.”
The Journal of chemical physics 148 24 (2018): 241730.
https://aip.scitation.org/doi/10.1063/1.5024611.
Giulio Imbalzano, Andrea Anelli, Daniele Giofré,Sinja Klees, Jörg Behler, and
Michele Ceriotti, “Automatic selection of atomic fingerprints and reference
configurations for machine-learning potentials.” The Journal of chemical physics 148
24 (2018): 241730. https://aip.scitation.org/doi/10.1063/1.5024611.

.. [Ceriotti2019]
Michele Ceriotti, Lyndon Emsley, Federico Paruzzo, Albert Hofstetter, Félix Musil, Sandip De, Edgar A. Engel, and Andrea Anelli.
"Chemical Shifts in Molecular Solids by Machine Learning Datasets",
Materials Cloud Archive 2019.0023/v2 (2019),
Michele Ceriotti, Lyndon Emsley, Federico Paruzzo, Albert Hofstetter, Félix Musil,
Sandip De, Edgar A. Engel, and Andrea Anelli. "Chemical Shifts in Molecular Solids
by Machine Learning Datasets", Materials Cloud Archive 2019.0023/v2 (2019),
https://doi.org/10.24435/materialscloud:2019.0023/v2.

.. [Helfrecht2020]
Benjamin A Helfrecht, Rose K Cersonsky, Guillaume Fraux, and Michele Ceriotti,
"Structure-property maps with Kernel principal covariates regression."
2020 Mach. Learn.: Sci. Technol. 1 045021.
"Structure-property maps with Kernel principal covariates regression." 2020 Mach.
Learn.: Sci. Technol. 1 045021.
https://iopscience.iop.org/article/10.1088/2632-2153/aba9ef.

.. [Pozdnyakov2020]
Pozdnyakov, S. N., Willatt, M. J., Bartók, A. P., Ortner, C., Csányi, G., & Ceriotti, M. (2020).
"Incompleteness of Atomic Structure Representations."
Physical Review Letters, 125(16).
https://doi.org/10.1103/physrevlett.125.166001
Pozdnyakov, S. N., Willatt, M. J., Bartók, A. P., Ortner, C., Csányi, G., &
Ceriotti, M. (2020). "Incompleteness of Atomic Structure Representations." Physical
Review Letters, 125(16). https://doi.org/10.1103/physrevlett.125.166001

.. [Goscinski2021]
Alexander Goscinski, Guillaume Fraux, Giulio Imbalzano, and Michele Ceriotti,
"The role of feature space in atomistic learning."
2021 Mach. Learn.: Sci. Technol. 2 025028.
https://iopscience.iop.org/article/10.1088/2632-2153/abdaf7.
Alexander Goscinski, Guillaume Fraux, Giulio Imbalzano, and Michele Ceriotti, "The
role of feature space in atomistic learning." 2021 Mach. Learn.: Sci. Technol. 2
025028. https://iopscience.iop.org/article/10.1088/2632-2153/abdaf7.

.. [Cersonsky2021]
Rose K Cersonsky, Benjamin A Helfrecht, Edgar A. Engel, Sergei Kliavinek, and Michele Ceriotti,
"Improving Sample and Feature Selection with Principal Covariates Regression"
2021 Mach. Learn.: Sci. Technol. 2 035038.
Rose K Cersonsky, Benjamin A Helfrecht, Edgar A. Engel, Sergei Kliavinek, and
Michele Ceriotti, "Improving Sample and Feature Selection with Principal Covariates
Regression" 2021 Mach. Learn.: Sci. Technol. 2 035038.
https://iopscience.iop.org/article/10.1088/2632-2153/abfe7c.
2 changes: 1 addition & 1 deletion docs/src/conf.py
Original file line number Diff line number Diff line change
Expand Up @@ -64,7 +64,7 @@
master_doc = "index"

project = "scikit-matter"
author = ", ".join(open(os.path.join(ROOT, "contributors.txt")))
author = ", ".join(open(os.path.join(ROOT, "contributors.txt")).read().splitlines())
copyright = f"{datetime.now().date().year}, {author}"

# The full version, including alpha/beta/rc tags
Expand Down
30 changes: 15 additions & 15 deletions docs/src/contributing.rst
Original file line number Diff line number Diff line change
Expand Up @@ -18,14 +18,14 @@ Then this package itself
cd scikit-matter
pip install -e .

This install the package in development mode, making it importable globally
and allowing you to edit the code and directly use the updated version.
This install the package in development mode, making it importable globally and allowing
you to edit the code and directly use the updated version.

Running the tests
#################

The testsuite is implemented using Python's `unittest`_ framework and should be set-up and
run in an isolated virtual environment with `tox`_. All tests can be run with
The testsuite is implemented using Python's `unittest`_ framework and should be set-up
and run in an isolated virtual environment with `tox`_. All tests can be run with

.. code-block:: bash

Expand All @@ -40,11 +40,11 @@ If you wish to test only specific functionalities, for example:
tox -e examples # test the examples


You can also use ``tox -e format`` to use tox to do actual formatting instead
of just testing it. Also, you may want to setup your editor to automatically apply the
`black <https://black.readthedocs.io/en/stable/>`_ code formatter when saving your
files, there are plugins to do this with `all major
editors <https://black.readthedocs.io/en/stable/editor_integration.html>`_.
You can also use ``tox -e format`` to use tox to do actual formatting instead of just
testing it. Also, you may want to setup your editor to automatically apply the `black
<https://black.readthedocs.io/en/stable/>`_ code formatter when saving your files, there
are plugins to do this with `all major editors
<https://black.readthedocs.io/en/stable/editor_integration.html>`_.

.. _unittest: https://docs.python.org/3/library/unittest.html
.. _tox: https://tox.readthedocs.io/en/latest
Expand All @@ -60,9 +60,8 @@ machine as described above. Then, build the documentation with

tox -e docs

You can then visualize the local documentation with your favorite browser using
the following command (or open the :file:`docs/build/html/index.html` file
manually).
You can then visualize the local documentation with your favorite browser using the
following command (or open the :file:`docs/build/html/index.html` file manually).

.. code-block:: bash

Expand Down Expand Up @@ -172,8 +171,8 @@ Then, show ``scikit-matter`` how to load your data by adding a loader function t

Add this function to ``src/skmatter/datasets/__init__.py``.

Finally, add a test to ``tests/test_datasets.py`` to see that your dataset
loads properly. It should look something like this:
Finally, add a test to ``tests/test_datasets.py`` to see that your dataset loads
properly. It should look something like this:

.. code-block:: python

Expand All @@ -190,7 +189,8 @@ loads properly. It should look something like this:
self.my_data.DESCR


You're good to go! Time to submit a `pull request. <https://github.com/lab-cosmo/scikit-matter/pulls>`_
You're good to go! Time to submit a `pull request.
<https://github.com/lab-cosmo/scikit-matter/pulls>`_


License
Expand Down
3 changes: 1 addition & 2 deletions docs/src/datasets.rst
Original file line number Diff line number Diff line change
Expand Up @@ -7,5 +7,4 @@ Datasets

.. include:: ../../src/skmatter/datasets/descr/nice_dataset.rst

.. include:: ../../src/skmatter/datasets/descr/who_dataset.rst

.. include:: ../../src/skmatter/datasets/descr/who_dataset.rst
6 changes: 3 additions & 3 deletions docs/src/gfrm.rst
Original file line number Diff line number Diff line change
Expand Up @@ -11,12 +11,12 @@ Reconstruction Measures
Global Reconstruction Error
###########################

.. autofunction:: pointwise_global_reconstruction_error
.. autofunction:: global_reconstruction_error
.. autofunction:: pointwise_global_reconstruction_error
.. autofunction:: global_reconstruction_error

.. _GRD-api:

Global Reconstruction Distortion
Global Reconstruction Distortion
################################

.. autofunction:: pointwise_global_reconstruction_distortion
Expand Down
28 changes: 14 additions & 14 deletions docs/src/index.rst
Original file line number Diff line number Diff line change
@@ -1,23 +1,23 @@
scikit-matter documentation
===========================

``scikit-matter`` is a collection of `scikit-learn <https://scikit.org/>`_
compatible utilities that implement methods born out of the materials science
and chemistry communities.
``scikit-matter`` is a collection of `scikit-learn <https://scikit.org/>`_ compatible
utilities that implement methods born out of the materials science and chemistry
communities.

Convenient-to-use libraries such as scikit-learn have accelerated the adoption and application
of machine learning (ML) workflows and data-driven methods. Such libraries have gained great
popularity partly because the implemented methods are generally applicable in multiple domains.
While developments in the atomistic learning community have put forward general-use machine
learning methods, their deployment is commonly entangled with domain-specific functionalities,
preventing access to a wider audience.
Convenient-to-use libraries such as scikit-learn have accelerated the adoption and
application of machine learning (ML) workflows and data-driven methods. Such libraries
have gained great popularity partly because the implemented methods are generally
applicable in multiple domains. While developments in the atomistic learning community
have put forward general-use machine learning methods, their deployment is commonly
entangled with domain-specific functionalities, preventing access to a wider audience.

scikit-matter targets domain-agnostic implementations of methods developed in the
computational chemical and materials science community, following the
scikit-learn API and coding guidelines to promote usability and interoperability
with existing workflows. scikit-matter contains a toolbox of methods for
unsupervised and supervised analysis of ML datasets, including the comparison,
decomposition, and selection of features and samples.
computational chemical and materials science community, following the scikit-learn API
and coding guidelines to promote usability and interoperability with existing workflows.
scikit-matter contains a toolbox of methods for unsupervised and supervised analysis of
ML datasets, including the comparison, decomposition, and selection of features and
samples.

.. toctree::
:maxdepth: 1
Expand Down
Loading