Git Product home page Git Product logo

piro's People

Contributors

chrisfajardo-tri avatar dependabot[bot] avatar gobuviknesh-jayabalan avatar harisilpa-davanam avatar hieu-nguyen-tri avatar josephmontoya-tri avatar jshep-tri avatar mike-puzon-tri avatar murataykol-tri avatar pradeepvarma333 avatar rajimtri avatar shilpasivanesan-tri avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar

piro's Issues

Notebooks no longer compatible with PyPi release.

Was attempting to run the BaTiO3 notebook on colab and have had some errors installing from pip as that notebooks do not match the release.

---------------------------------------------------------------------------
TypeError                                 Traceback (most recent call last)
<ipython-input-17-d8c3c8f46d03> in <module>()
      7     allow_gas_release=True,
      8     confine_competing_to_icsd=False,
----> 9     add_elements=['C']
     10 )

TypeError: __init__() got an unexpected keyword argument 'confine_competing_to_icsd'

IndexError: list index out of range when running the Router

Hi!
I am encountering a problem when running the BaTiO3 notebook.
After the imports, running

router = SynthesisRoutes(
    mp_id, 
    confine_to_icsd=True, 
    confine_to_stables=True, 
    explicit_includes=[TiO2_rutile,BaCO3_beta,TiO_ordered, BaTi2O5], 
    exclude_compositions=['BaTiO3'],
    allow_gas_release=True,
    confine_competing_to_icsd=False,
    add_elements=['C']
)

returns an IndexError with traceback:

IndexError                                Traceback (most recent call last)
      10 TiO2_rutile = 'mp-2657' # Additional relevant phase to explicitly include
      11 BaCO3_beta = 'mp-4559'  # Additional relevant phase to explicitly include
----> 13 router = SynthesisRoutes(
      14     mp_id, 
     15     confine_to_icsd=True, 
     16     confine_to_stables=True, 
     17     explicit_includes=[TiO2_rutile,BaCO3_beta,TiO_ordered, BaTi2O5], 
     18     exclude_compositions=['BaTiO3'],
     19     allow_gas_release=True,
     20     confine_competing_to_icsd=False,
     21     add_elements=['C']
     22 )

File .\site-packages\piro\route.py:129, in SynthesisRoutes.__init__(self, target_entry_id, confine_to_icsd, confine_to_stables, hull_distance, simple_precursors, explicit_includes, exclude_compositions, allow_gas_release, add_elements, flexible_competition, entries, epitaxies, similarities, sigma, transport_constant, custom_target_entry, confine_competing_to_icsd)
    126 else:
    127     self.elts = list(self.target_entry.composition.as_dict().keys())
--> 129 self.get_precursor_library()
    130 print("Precursor library ready.")
    131 self.epitaxies = (
    132     epitaxies
    133     if epitaxies
    134     else get_epitaxies(self.precursor_library, self.target_entry)
...
    194     return self.custom_target_entry
    195 else:
--> 196     return [e for e in self.entries if e.entry_id == self.target_entry_id][0]

IndexError: list index out of range

Any idea on how to fix this?

`from piro.route import SynthesisRoutes` produces error in `_load_pmg_settings`

Installed piro via:

conda create -n piro python==3.7
conda activate piro
pip install piro
from piro.route import SynthesisRoutes
---------------------------------------------------------------------------
TypeError                                 Traceback (most recent call last)
~\AppData\Local\Temp/ipykernel_27028/3824750463.py in <module>
      1 import pandas as pd
----> 2 from piro.route import SynthesisRoutes
      3 pd.set_option('display.width', 700)
      4 pd.set_option('display.max_colwidth', 300)

~\Miniconda3\envs\piro\lib\site-packages\piro\route.py in <module>
      7 import json
      8 
----> 9 from pymatgen.core import Composition
     10 from pymatgen.analysis.phase_diagram import PhaseDiagram
     11 from pymatgen.util.string import latexify

~\Miniconda3\envs\piro\lib\site-packages\pymatgen\core\__init__.py in <module>
     59 
     60 
---> 61 SETTINGS = _load_pmg_settings()
     62 locals().update(SETTINGS)

~\Miniconda3\envs\piro\lib\site-packages\pymatgen\core\__init__.py in _load_pmg_settings()
     49         with open(SETTINGS_FILE) as f:
     50             d_yml = yaml.safe_load(f)
---> 51         d.update(d_yml)
     52     except OSError:
     53         # If there are any errors, default to using environment variables

TypeError: 'NoneType' object is not iterable

Suggestion: add requirements.txt

Not essential, but might help people to get up and running sooner if there's a dependency issue so they can install a known set of compatible dependencies via pip install -r requirements.txt as a last resort.

Google colab - `pmg config --add PMG_MAPI_KEY` produces error in `_load_pmg_settings`

Open In Colab

MP_API_KEY = '' #@param {type:"string"}
!pmg config --add PMG_MAPI_KEY {MP_API_KEY}
Traceback (most recent call last):
  File "/usr/local/bin/pmg", line 5, in <module>
    from pymatgen.cli.pmg import main
  File "/usr/local/lib/python3.7/dist-packages/pymatgen/cli/pmg.py", line 15, in <module>
    from pymatgen.core import SETTINGS
  File "/usr/local/lib/python3.7/dist-packages/pymatgen/core/__init__.py", line 61, in <module>
    SETTINGS = _load_pmg_settings()
  File "/usr/local/lib/python3.7/dist-packages/pymatgen/core/__init__.py", line 51, in _load_pmg_settings
    d.update(d_yml)
TypeError: 'NoneType' object is not iterable

Workaround is to just use export MAPI_KEY=<your API key>, but then another error ensues (which appears regardless of using Google Colab or not). See #58

Interface to Kononova experimental dataset

I think it would be nice to be able to display known syntheses alongside the plot. Structural information is often missing from these, but I think even a table of synthesis of equivalent compositions would be helpful.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.