通过oqmd api查询oqmd数据的python代码
qmpy-rester的Python项目详细描述
qmpy_rester
通过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-Oelement_set
:化合物必须具有的元素集合,例如(fe-mn),o
LI> {< CD4> }:ICSD中是否存在结构,如假、真、f、tprototype
:该化合物的结构原型,如cu,csclgeneric
:化学式摘要,例如ab,ab2spacegroup
:结构的空间群,例如fm-3mnatoms
:超级电池中的原子数,例如2,>;5volume
:超级电池的体积,例如>;10ntypes
:化合物中元素类型的数目,例如2,<;3stability
:化合物的外壳距离,例如0,<;-0.1,delta_e
:化合物的形成能,例如<;-0.5,band_gap
:材料的带隙,例如0,>;2fields
:返回字段的子集,例如“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,onelements
:化合物中元素类型的数目,例如2,<;3chemical_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,>;2fields
:返回字段的子集,例如“elements,chemical_formula”,'!_ OQMD U站点filter
:自定义过滤器,例如“elements=o和(_oqmd_stability<;-0.1或_oqmd_delta_e<;-0.5)limit
:一次返回的数据数offset
:数据返回的偏移量
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
composition
:材料或相空间的合成,例如,Al2O3、Fe-Oelement_set
:化合物必须具有的元素集合,例如(fe-mn),o
LI> {< CD4> }:ICSD中是否存在结构,如假、真、f、tprototype
:该化合物的结构原型,如cu,csclgeneric
:化学式摘要,例如ab,ab2spacegroup
:结构的空间群,例如fm-3mnatoms
:超级电池中的原子数,例如2,>;5volume
:超级电池的体积,例如>;10ntypes
:化合物中元素类型的数目,例如2,<;3stability
:化合物的外壳距离,例如0,<;-0.1,delta_e
:化合物的形成能,例如<;-0.5,band_gap
:材料的带隙,例如0,>;2fields
:返回字段的子集,例如“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,onelements
:化合物中元素类型的数目,例如2,<;3chemical_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,>;2fields
:返回字段的子集,例如“elements,chemical_formula”,'!_ OQMD U站点filter
:自定义过滤器,例如“elements=o和(_oqmd_stability<;-0.1或_oqmd_delta_e<;-0.5)limit
:一次返回的数据数offset
:数据返回的偏移量
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
elements
:化合物必须具有的元素集合,例如si,onelements
:化合物中元素类型的数目,例如2,<;3chemical_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,>;2fields
:返回字段的子集,例如“elements,chemical_formula”,'!_ OQMD U站点filter
:自定义过滤器,例如“elements=o和(_oqmd_stability<;-0.1或_oqmd_delta_e<;-0.5)limit
:一次返回的数据数offset
:数据返回的偏移量