通过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如何在ajax、json中处理返回的数组   java如何通过owlapi连接到reasoner RacerPro,并且不出现连接错误?   当存在XMLComment而不是元素时,java Jackson XML反序列化失败   所有实现类中的java启动方法   JavaAndroid:Volley HTTP补丁请求   java安卓意图比响应速度更快   java逐个扫描元素并进行比较   corba如何修复试图在Textpad上运行java服务器程序时出现的“找不到tnameserv”错误?   java有没有一种方法可以检测传入的序列化对象流是GZIPOutputStream压缩的还是简单的ObjectOutputStream?   S3Java客户端经常失败,出现“ContentLength分隔消息正文过早结束”或“Java.net.SocketExceptionsocket关闭”   调试如何在netbeans上的第一行中断,java web项目   API 21中的java getOrCreateThreadId   java Corda示例在尝试运行节点时失败   Java兼容性   java awt框架和颜色如何配置   iphone如何生成。p12以编程方式使用java?   使用模式在Jasper报表中设置java格式   java ModelMapper在尝试将实体映射到DTO对象时返回NULL   java如何生成2个随机整数,然后比较它们?   java如何从ActionBean访问父目录?