Code Monkey home page Code Monkey logo

mpds-io / mpds-api Goto Github PK

View Code? Open in Web Editor NEW
24.0 3.0 2.0 934 KB

Tutorials, notebooks, issue tracker, and website on the MPDS API: the data retrieval interface for the Materials Platform for Data Science

Home Page: https://developer.mpds.io

HTML 45.41% JavaScript 30.30% Python 12.42% Jupyter Notebook 11.87%
data-science materials-platform materials-informatics materials-science materials crystal-structure crystallography phase-diagram phase-diagrams calphad

mpds-api's People

Contributors

blokhin avatar imgbotapp avatar pyup-bot avatar snyk-bot avatar

Stargazers

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

Watchers

 avatar  avatar  avatar

Forkers

hq-ankou sgbaird

mpds-api's Issues

Give error if unknown keys are used in the request.

At the moment if the request contains valid keys and values BUT also contains some keys that are not known, these are just ignored. It would be useful to raise an error in this case to say that the API does not know the given key.

Pauling File Mechanical Properties - Does Vickers hardness data include applied load?

I'm trying to figure out if the Vickers hardness data through the Pauling File contains information about load (i.e. the applied load that corresponds to the hardness measurement), or if the data is all at a fixed load, etc. Based on MPDS, I see that it has temperature data, but didn't see anything about applied load in the JSON files. I emailed Pierre from Pauling File about this and will post if I hear back.

Implement *neighbor_list* ASE function for the bond length analysis example

via Jinhyun Chang:

In your example script for bond length analysis using ASE: it is mentioned that ASE is slow, and you could use a C-extension to speed it up. However, it looks like the algorithm for carrying out the bond length analysis is the culprit. Using the ASE's neighbor_list function, we found a speed-up of at least a factor of 2 in a similar example. We could not execute this particular example (as mentioned in a previous comment).

Provide unit cell matrix when using fmt=json

It would be useful if the JSON structure format provided the unit cell matrix as well or at least documentation of the convention for going from length/angles to the cell so that the symmetry operations are unambiguous (as typically these are relative to the method to generate the unit cell vectors from the lengths and angles).

Provide CIF outputs in the JSON "out" field

Give CIF in 'out' from JSON, so we get the other information. I'm not sure about this but there is some useful information, e.g., npages, count, etc in the JSON but not if if you ask for fmt=cif. Maybe the return could be:

e.g.:

{ "count":44640, "out":[ "<Put the CIFs here one by one>" ], "npages":4464, "page":0, "error":null }

Certain properties entries produce invalid JSON

Certain queries, e.g. {"classes": "binary", "sgs":"216", "props": "acceptor to donor concentration", "formulae":"InSb"}

produce entries such as:

       {
            "sample":{
                "material":{
                ...
                },
                "measurement":[
                    {
                        "property":{
                            ...
                            "scalar":
                            }
                        }
                    ]
                },
                "version":"0.0.5"
            }

where the "saralar" field has no value. This is invalid JSON and will result in a parser failure.

I guess there is some problem with the value in which case would it be possible to emit null in it's place so parsers pass?

Provide discoverability mode

Some query I can do to see what all the available, e.g., props keywords, are.

To make it more clear I'd like to be able to answer a question like: what are all the 'props' that exist for cubic, binary structures.

Split structures/properties into different endpoints

By convention REST interfaces tend to have separate endpoints for collections of similar things e.g. one endpoint for users, one for addresses, etc. Usually the entries for each endpoint have a similar schema.

At the moment the MPDS API has the same endpoint for everything (structures and properties). It may make things more intuitive to the user to separate these.

Ambiguous entry in MPDS

We're having a problem with entry S452097 (https://mpds.io/#entry/S452097).

The entry on the website says the composition is Mg2Pb but the entry from the database (both the JSON and CIF representations) have it as MgPb2. Also in the ICSD the corresponding structure is listed as Mg2Pb. Unfortunately we've don't have access to the original source so we can't confirm which is right.

Can MPDSDataRetrieval (or other API access) fetch Compound Description field?

Hi,

I am wondering if there is any way that users can retrieve "compound description" field under "Experimental" which is available in the PDF but it seems I can't find a way to through the API.

  1. Is this currently not allowed?
  2. If not, is there a plan for implementing this feature for API access?

Thank you!

Enable querying 'inside' documents

It would be useful to be able to query something like:

".sg_hm": "F-43m"

To filter by entries that meet the criterion.

I realise this is a big ask and certainly a new query language should not be written. The MongoDB one is pretty good.

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.