通过oqmd api查询oqmd数据的python代码

qmpy-rester的Python项目详细描述


qmpy_resterBuild Status

通过oqmd api(PyPI)查询oqmd数据的python代码。这段代码是用python 3编写的。

安装

pip install qmpy_rester

用法

一。通过omqd api获取数据

1.1示例
import qmpy_rester as qr

## Return list of data
with qr.QMPYRester() as q:
    kwargs = {
        ‘element_set’: ‘(Fe-Mn),O’,      # composition include (Fe OR Mn) AND O
        ‘stability’: ‘<-0.1’,            # hull distance smaller than -0.1 eV
        ‘natom’: ‘<10’,                  # number of atoms less than 10
        }
    list_of_data = q.get_oqmd_phases(**kwargs)

## Return data of a single oqmd phase
with qr.QMPYRester() as q:
    phase = q.get_oqmd_phase_by_id(fe_id=4061139, fields='!sites') # Default: fields=None

1.2允许的属性
  • composition:材料或相空间的合成,例如,Al2O3、Fe-O
  • element_set:化合物必须具有的元素集合,例如(fe-mn),o
  • LI> {< CD4> }:ICSD中是否存在结构,如假、真、f、t
  • prototype:该化合物的结构原型,如cu,cscl
  • generic:化学式摘要,例如ab,ab2
  • spacegroup:结构的空间群,例如fm-3m
  • natoms:超级电池中的原子数,例如2,>;5
  • volume:超级电池的体积,例如>;10
  • ntypes:化合物中元素类型的数目,例如2,<;3
  • stability:化合物的外壳距离,例如0,<;-0.1,
  • delta_e:化合物的形成能,例如<;-0.5,
  • band_gap:材料的带隙,例如0,>;2
  • fields:返回字段的子集,例如“name,id,delta”,'!站点'
  • filter:自定义过滤器,例如“element-set=o和(stability<;-0.1或delta-e<;-0.5)”
  • limit:一次返回的数据数
  • offset:数据返回的偏移量

2.通过optimade api格式获取数据

2.1示例
import qmpy_rester as qr

## Return list of data
with qr.QMPYRester() as q:
    kwargs = {
        ‘elements’: ‘Fe,Mn’,                    # include element Fe and Mn
        ‘nelements’: ‘<5’,                      # less than 4 element species in the compound
        ‘_oqmd_stability’: ‘<0’,                # stability calculted by oqmd is less than 0
        }
    list_of_data = q.get_optimade_structures(**kwargs)

## Return data of a single structure
with qr.QMPYRester() as q:
    structure = q.get_optimade_structure_by_id(id=4061139, fields='!_oqmd_sites') # Default: fields=None

1.2允许的属性
  • elements:化合物必须具有的元素集合,例如si,o
  • nelements:化合物中元素类型的数目,例如2,<;3
  • chemical_formula:材料的堆肥,例如氧化铝
  • formula_prototype:化学式摘要,例如ab,ab2
  • _oqmd_natoms:超级电池中的原子数,例如2,>;5
  • _oqmd_volume:超级电池的体积,例如>;10
  • _oqmd_spacegroup:结构的空间群,例如fm-3m
  • _oqmd_prototype:该化合物的结构原型,如cu,cscl
  • _oqmd_stability:化合物的外壳距离,例如0,<;-0.1,
  • _oqmd_delta_e:化合物的形成能,例如<;-0.5,
  • _oqmd_band_gap:材料的带隙,例如0,>;2
  • fields:返回字段的子集,例如“elements,chemical_formula”,'!_ OQMD U站点
  • filter:自定义过滤器,例如“elements=o和(_oqmd_stability<;-0.1或_oqmd_delta_e<;-0.5)
  • limit:一次返回的数据数
  • offset:数据返回的偏移量

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java如何拆分字符串(基于各种分隔符),但不保留空格?   解析。Json格式的txt文件和knime中的java   java Spring rest api为什么在rest api调用的响应中更改了数据类型   升华文本3抛出java。lang.ClassNotFoundException,而记事本++不存在   java Android指纹扫描仪在尝试5次后停止工作?   java Android如何设置精确的重复报警?   java如何使用HTTPGET connect为access API输入用户名和密码   java当测试报告显示没有测试失败时,Gradle为什么说“有失败的测试”?   用Gson实现java获取响应   MapReduce程序中函数错误的java不可映射参数   java spring安全性不符合自动代理的条件   java GWT使用异步回调进行同步/阻塞调用   java奇怪的类数组问题无法在jsp中显示   如何在java中使用PrinterJob使用epl打印条形码   java如何在JTable中居中单元格   将Java Mockito测试转换为Kotlin   html Java正则表达式模式匹配到多个相同标记   testCompile中缺少java Gradle(Android)多项目依赖项   在输入提示后输入字符串时发生java FileNotFoundException