Skip to main content

用于运行 CRYSTAL17 代码的 AiiDA 插件

项目描述

爱达水晶17

CI 覆盖状态 文档状态 派皮 康达 DOI

用于运行CRYSTAL17代码的 AiiDA 插件。该代码主要针对 CRYSTAL17 进行了测试,但输出解析也针对 CRYSTAL14 进行了测试。

文档:https ://readthedocs.org/projects/aiida-crystal17

安装

从 Conda 安装(推荐):

>> conda install -c conda-forge aiida-crystal17 aiida-core.services

从 pypi 安装::

>> pip install aiida-crystal17

要安装开发版本:

>> git clone https://github.com/aiidaplugins/aiida-crystal17 .
>> cd aiida-crystal17
>> pip install -e .  # also installs aiida, if missing (but not postgres)
>> #pip install -e .[pre-commit,testing] # install extras for more features
>> verdi quicksetup  # set up a new profile
>> verdi calculation plugins  # should now show the calclulation plugins (with prefix crystal17.)

发展

针对模拟 CRYSTAL17 可执行文件进行测试

由于 CRYSTAL17 是许可软件,因此无法在 Travis CI 上获取可执行文件的副本。mock_runcry17因此,已创建一个模拟可执行文件 ( ) 用于测试目的(这也加快了测试运行)。

此可执行文件计算提供的输入文件的 md5 哈希,并尝试将其与预先计算的哈希字典进行匹配。如果找到,可执行文件会将匹配的输出(来自test/output_files)写入标准输出。

以下将发现并运行所有单元测试:

>> pip install -e .[testing]
>> reentry scan -r aiida
>> pytest -v

省略调用外部可执行文件的测试(如crystal17):

>> pytest --cry17-skip-exec

要调用实际的可执行文件(例如crystal17,而不是mock_crystal17):

>> pytest --cry17-no-mock

要将 calcjob 执行的结果输出到特定目录:

>> pytest --cry17-workdir "test_workdir"

编码风格要求

代码风格使用flake8进行测试,配置设置在 中.flake8,代码格式应使用yapf(配置设置在 中.style.yapf)。

安装 withaiida-crystal17[code_style]使pre-commit 包可用,这将通过在提交提交之前重新格式化代码和测试 lint 错误来确保通过这些测试。它可以通过以下方式设置:

>> cd aiida-crystal17
>> pre-commit install

yapf或者,您可以flake8单独运行:

>> yapf -r -i .  # recrusively find and format files in-place
>> flake8

像 VS Code 这样的编辑器也有自动代码重新格式化实用程序,可以遵守这个标准。

在本地设置 CRYSTAL17

要在 Mac 上设置 CRYSTAL17 的本地版本(从经销商处下载副本后),我必须:

  1. 从可执行权限中删除隔离区:

    xattr -c crystal
    xattr -c properties
    
  2. 在预期的文件夹中创建 lapack/blas 库的版本:

    sudo port install lapack
    sudo cp /opt/local/lib/lapack/liblapack.3.dylib /usr/local/opt/lapack/lib/liblapack.3.dylib
    sudo cp /opt/local/lib/lapack/libblas.3.dylib /usr/local/opt/lapack/lib/libblas.3.dylib
    
  3. 中定义环境变量~/.bashrc,详见cry17_scripts/cry17.bashrc

  4. cry17_scripts/runcry17将脚本复制或符号链接到/usr/local/bin/

执照

见LICENSE文件

接触

chrisj_sewell@hotmail.com

项目详情


下载文件

下载适用于您平台的文件。如果您不确定要选择哪个,请了解有关安装包的更多信息。

源分布

aiida-crystal17-0.11.0.tar.gz (1.3 MB 查看哈希)

已上传 source

内置分布

aiida_crystal17-0.11.0-py3-none-any.whl (1.4 MB 查看哈希)

已上传 py3