基于皮尔逊符号或空间组初始化不同晶体结构的python代码repo

fedorov的Python项目详细描述


一个python包来初始化不同的晶体结构。以俄罗斯数学家、晶体学家和矿物学家的名字命名:Evgraf Fedorov。这个软件包提供了在2D和3D系统中生成任何用户定义的晶体结构的方法,并包括对在Aflow中定义的590个已知晶体结构的访问。用户可以使用该软件包以numpy数组的形式获取必要的数据,用于HOOMD-Blue等软件构建任何具有特定晶体结构的系统进行仿真分析。此外,该软件包还提供对所有三维空间组、二维平面组以及点组操作的访问,这些操作允许用户应用不同的对称操作。在

安装

安装pip

要使用包管理器pip安装包,请执行

$ pip install fedorov --user

要升级包,只需使用--upgrade选项执行相同的命令。在

^{pr2}$

从源安装

或者,您可以克隆git repository并执行setup.py脚本来安装包。在

git clone https://github.com/glotzerlab/fedorov.git
cd fedorov
python setup.py install --user

文件

  • 文档链接:要添加的网站链接

您还可以使用sphinx构建文档:

您可以使用conda安装sphinx:

conda install sphinx

或pip:

pip install sphinx

要生成文档,请在源目录中运行以下命令:

cd doc
make html
# Then open _build/html/index.html

要构建文档的PDF(需要LaTeX和/或PDFLaTeX):

cd doc
make latexpdf
# Then open _build/latex/fedorov.pdf

快速启动

此软件包提供生成已知或用户定义的晶体结构的方法。例如,要从这个list生成任何已知的晶体结构:

importnumpyasnpfromfedorovimportSpaceGroup,Prototype,AflowPrototypefromfedorovimportconvert_to_box# generate the exact prototype provided by Aflow, use prototype_index [0, 589]prototype_index=5new_structure=AflowPrototype(prototype_index=prototype_index,print_info=True,set_type=True)basis_vectors,type_list=new_structure.get_basis_vectors()lattice_vectors=new_structure.get_lattice_vectors()Lx,Ly,Lz,xy,xz,yz=convert_to_box(lattice_vectors)

更多的例子可以在here找到。在

测试

您可以通过执行以下操作来测试此包:

python -m pytest tests/

在存储库根目录中。在

学分

Credits。在

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

推荐PyPI第三方库


热门话题
java变量列表数(ArrayList)作为方法的参数   Elasticsearch(Java)集成测试   java Spring MVC HandlerInterceptorAdapter   将springboot应用程序作为war文件部署在专用tomcat上的java不起作用   java在ArrayList中添加双精度的问题   mysql Apache Solr java教程   java分区字节数组到队列的相等字节数组   java使用方法toString()打印对象   从JMS队列中获取java批处理   如何在Java中获取SWT字体族名称?   java Spring引导2随机500和400错误   java从不在windows上工作的资源加载映像   java是一个正则表达式,它只匹配不包含数字和字母的单词