Skip to content

Commit

Permalink
MatMiner -> matminer
Browse files Browse the repository at this point in the history
  • Loading branch information
computron committed Dec 19, 2016
1 parent 0a06ef1 commit cb6dcb2
Show file tree
Hide file tree
Showing 7 changed files with 52 additions and 52 deletions.
2 changes: 1 addition & 1 deletion LICENSE
@@ -1,4 +1,4 @@
MatMiner Copyright (c) 2015, The Regents of the University of
matminer Copyright (c) 2015, The Regents of the University of
California, through Lawrence Berkeley National Laboratory (subject
to receipt of any required approvals from the U.S. Dept. of Energy).
All rights reserved.
Expand Down
38 changes: 19 additions & 19 deletions README.rst
@@ -1,11 +1,11 @@
========
MatMiner
matminer
========

MatMiner is an open-source Python library for performing data mining and analysis in the field of Materials Science. It is meant to make accessible the application of state-of-the-art statistical and machine learning algorithms to materials science data with just a *few* lines of code. It is currently in development, however it is a **working code**.
matminer is an open-source Python library for performing data mining and analysis in the field of Materials Science. It is meant to make accessible the application of state-of-the-art statistical and machine learning algorithms to materials science data with just a *few* lines of code. It is currently in development, however it is a **working code**.

--------
Citing MatMiner
Citing matminer
--------

We are currently in the process of writing a paper on matminer - we will update the citation information once it is submitted.
Expand All @@ -14,51 +14,51 @@ We are currently in the process of writing a paper on matminer - we will update
Example notebooks
-----------------

A few examples demonstrating some of the features available in MatMiner have been created in the form of Jupyter notebooks:
A few examples demonstrating some of the features available in matminer have been created in the form of Jupyter notebooks:

(Note: the Jupyter (Binder) links below are recommended as Github does not render interactive Javascript code or images.)

1. Get all experimentally measured band gaps of PbTe from Citrine's database: `Jupyter <http://mybinder.org/repo/hackingmaterials/matminer/notebooks/example_notebooks/get_Citrine_experimental_bandgaps_PbTe.ipynb>`_ `Github <https://github.com/hackingmaterials/MatMiner/blob/master/example_notebooks/get_Citrine_experimental_bandgaps_PbTe.ipynb>`_
1. Get all experimentally measured band gaps of PbTe from Citrine's database: `Jupyter <http://mybinder.org/repo/hackingmaterials/matminer/notebooks/example_notebooks/get_Citrine_experimental_bandgaps_PbTe.ipynb>`_ `Github <https://github.com/hackingmaterials/matminer/blob/master/example_notebooks/get_Citrine_experimental_bandgaps_PbTe.ipynb>`_

2. Compare and plot experimentally band gaps from Citrine with computed values from the Materials Project: `Jupyter <http://mybinder.org/repo/hackingmaterials/matminer/notebooks/example_notebooks/experiment_vs_computed_bandgap.ipynb>`_ `Github <https://github.com/hackingmaterials/MatMiner/blob/master/example_notebooks/experiment_vs_computed_bandgap.ipynb>`_
2. Compare and plot experimentally band gaps from Citrine with computed values from the Materials Project: `Jupyter <http://mybinder.org/repo/hackingmaterials/matminer/notebooks/example_notebooks/experiment_vs_computed_bandgap.ipynb>`_ `Github <https://github.com/hackingmaterials/matminer/blob/master/example_notebooks/experiment_vs_computed_bandgap.ipynb>`_

3. Train and predict band gaps using MatMiner's tools to retrieve computed band gaps and descriptors from the Materials Project, and composition descriptors from pymatgen: `Jupyter <http://mybinder.org/repo/hackingmaterials/matminer/notebooks/example_notebooks/machine_learning_to_predict_bandgap.ipynb>`_ `Github <https://github.com/hackingmaterials/MatMiner/blob/master/example_notebooks/machine_learning_to_predict_bandgap.ipynb>`_
3. Train and predict band gaps using matminer's tools to retrieve computed band gaps and descriptors from the Materials Project, and composition descriptors from pymatgen: `Jupyter <http://mybinder.org/repo/hackingmaterials/matminer/notebooks/example_notebooks/machine_learning_to_predict_bandgap.ipynb>`_ `Github <https://github.com/hackingmaterials/matminer/blob/master/example_notebooks/machine_learning_to_predict_bandgap.ipynb>`_

4. Training and predict bulk moduli using MatMiner's tools to retrieve computed bulk moduli and descriptors from the Materials Project, and composition descriptors from pymatgen: `Jupyter <http://mybinder.org/repo/hackingmaterials/matminer/notebooks/example_notebooks/machine_learning_to_predict_BulkModulus.ipynb>`_ `Github <https://github.com/hackingmaterials/MatMiner/blob/master/example_notebooks/machine_learning_to_predict_BulkModulus.ipynb>`_
4. Training and predict bulk moduli using matminer's tools to retrieve computed bulk moduli and descriptors from the Materials Project, and composition descriptors from pymatgen: `Jupyter <http://mybinder.org/repo/hackingmaterials/matminer/notebooks/example_notebooks/machine_learning_to_predict_BulkModulus.ipynb>`_ `Github <https://github.com/hackingmaterials/matminer/blob/master/example_notebooks/machine_learning_to_predict_BulkModulus.ipynb>`_

|
You can also use the `Binder <http://mybinder.org/>`_ service (in beta) to launch an interactive notebook upon a click. Click the button below to open the tree structure of this repository and navigate to the folder **example_notebooks** in the current working directory to use/edit the above notebooks right away! To open/run/edit other notebooks, go to "File->Open" within the page and navigate to the notebook of your choice.

.. image:: http://mybinder.org/badge.svg
:target: http://mybinder.org/repo/hackingmaterials/MatMiner
:target: http://mybinder.org/repo/hackingmaterials/matminer

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

There are a couple of quick and easy ways to install MatMiner:-
There are a couple of quick and easy ways to install matminer:-

- **Quick install**

(Note: this may not install the latest changes to MatMiner. To install the version with the latest commits, skip to the next steps)
(Note: this may not install the latest changes to matminer. To install the version with the latest commits, skip to the next steps)

For a quick install of MatMiner, and all of its dependencies, simply run the command in a bash terminal:
For a quick install of matminer, and all of its dependencies, simply run the command in a bash terminal:

.. code-block:: bash
$ pip install matminer
or, to install MatMiner in your user $HOME folder, run the command:
or, to install matminer in your user $HOME folder, run the command:

.. code-block:: bash
$ pip install matminer --user
One way to obtain :code:`pip` if not already installed is through :code:`conda`, which is useful when you are working with many python packages and want to use separate configuration settings and environment for each package. You can then install MatMiner and packages required by it in its own environment. Some useful links are `here <https://uoa-eresearch.github.io/eresearch-cookbook/recipe/2014/11/20/conda/>`_ and `here <http://conda.pydata.org/docs/using/index.html>`_.
One way to obtain :code:`pip` if not already installed is through :code:`conda`, which is useful when you are working with many python packages and want to use separate configuration settings and environment for each package. You can then install matminer and packages required by it in its own environment. Some useful links are `here <https://uoa-eresearch.github.io/eresearch-cookbook/recipe/2014/11/20/conda/>`_ and `here <http://conda.pydata.org/docs/using/index.html>`_.

- **Install in developmental mode**

To install the full and latest source of the MatMiner code in developmental mode, along with its important dependencies, clone the Git source in a folder of your choosing by entering the following command:
To install the full and latest source of the matminer code in developmental mode, along with its important dependencies, clone the Git source in a folder of your choosing by entering the following command:

.. code-block:: bash
Expand All @@ -77,10 +77,10 @@ Depending on how many of the required dependencies were already installed on you
Overview
--------

Below is a general workflow that shows the different tools and utilities available within MatMiner, and how they could be implemented with each other, as well as with external libraries, in your own materials data mining/analysis study.
Below is a general workflow that shows the different tools and utilities available within matminer, and how they could be implemented with each other, as well as with external libraries, in your own materials data mining/analysis study.

|
.. image:: https://github.com/hackingmaterials/MatMiner/blob/master/Flowchart.png
.. image:: https://github.com/hackingmaterials/matminer/blob/master/Flowchart.png
:align: center
|
|
Expand Down Expand Up @@ -113,7 +113,7 @@ Data descriptor tools

- Decorate the dataframe with composition, structural, and/or band structure descriptors/features

In this module of the MatMiner library, we have developed utilities to help describe the material by their composition or structure, and represent them in a numeric format such that they are readily usable as features in a data analysis study to predict a target value.
In this module of the matminer library, we have developed utilities to help describe the material by their composition or structure, and represent them in a numeric format such that they are readily usable as features in a data analysis study to predict a target value.

The :code:`get_pymatgen_descriptor` function is used to encode a material's composition using tabulated elemental properties in the `pymatgen <http://pymatgen.org/_modules/pymatgen/core/periodic_table.html>`_ library. There are about 50 attributes available in the pymatgen library for most elements in the periodic table, some of which include electronegativity, atomic numbers, atomic masses, sound velocity, boiling point, etc. The :code:`get_pymatgen_descriptor` function takes as input a material composition and name of the desired property, and returns a list of floating point property values for each atom in that composition. This list can than be fed into a statistical function to obtain a single heuristic quantity representative of the entire composition. The following code block shows a few example descriptors that can be obtained for LiFePO\ :sub:`4`:

Expand All @@ -129,7 +129,7 @@ The :code:`get_pymatgen_descriptor` function is used to encode a material's comp
The function :code:`get_magpie_descriptor` operates in a similar way and obtains its data from the tables accumulated in the `Magpie repository <https://bitbucket.org/wolverton/magpie>`_, some of which are sourced from elemental data compiled by Mathematica (more information can be found `here <https://reference.wolfram.com/language/ref/ElementData.html>`_). Some properties that don't overlap with the pymatgen library include heat capacity, enthalpy of fusion of elements at melting points, pseudopotential radii, etc.

Some other descriptors that can be obtained from MatMiner include:
Some other descriptors that can be obtained from matminer include:

#. Composition descriptors

Expand Down
14 changes: 7 additions & 7 deletions docs/conf.py
Expand Up @@ -42,7 +42,7 @@
master_doc = 'index'

# General information about the project.
project = u'MatMiner'
project = u'matminer'
copyright = u'2015, Saurabh Bajaj, Anubhav Jain'

# The version info for the project you're documenting, acts as replacement for
Expand Down Expand Up @@ -166,7 +166,7 @@
#html_file_suffix = None

# Output file base name for HTML help builder.
htmlhelp_basename = 'MatMinerdoc'
htmlhelp_basename = 'matminerdoc'


# -- Options for LaTeX output --------------------------------------------------
Expand All @@ -185,7 +185,7 @@
# Grouping the document tree into LaTeX files. List of tuples
# (source start file, target name, title, author, documentclass [howto/manual]).
latex_documents = [
('index', 'MatMiner.tex', u'MatMiner Documentation',
('index', 'matminer.tex', u'matminer Documentation',
[u'Saurabh Bajaj', u'Anubhav Jain'], 'manual'),
]

Expand Down Expand Up @@ -215,7 +215,7 @@
# One entry per manual page. List of tuples
# (source start file, name, description, authors, manual section).
man_pages = [
('index', 'matminer', u'MatMiner Documentation',
('index', 'matminer', u'matminer Documentation',
[u'Saurabh Bajaj', u'Anubhav Jain'], 1)
]

Expand All @@ -229,8 +229,8 @@
# (source start file, target name, title, author,
# dir menu entry, description, category)
texinfo_documents = [
('index', 'MatMiner', u'MatMiner Documentation',
[u'Saurabh Bajaj', u'Anubhav Jain'], 'MatMiner is a library that contains tools for data mining in Materials Science',
('index', 'matminer', u'matminer Documentation',
[u'Saurabh Bajaj', u'Anubhav Jain'], 'matminer is a library that contains tools for data mining in Materials Science',
'Miscellaneous'),
]

Expand All @@ -247,7 +247,7 @@
# -- Options for Epub output ---------------------------------------------------

# Bibliographic Dublin Core info.
epub_title = u'MatMiner'
epub_title = u'matminer'
epub_author = u'Saurabh Bajaj', u'Anubhav Jain'
epub_publisher = u'Saurabh Bajaj', u'Anubhav Jain'
epub_copyright = u'2015, Saurabh Bajaj, Anubhav Jain'
Expand Down

0 comments on commit cb6dcb2

Please sign in to comment.