ABINIT的AiiDA插件。
aiida-abinit的Python项目详细描述
阿依达·阿比尼特
ABINIT是一个软件套件,用于计算材料的光学、机械、振动和其他可观测特性。从密度泛函理论的量子方程开始,你可以用基于DFT的微扰理论和许多体格林函数(GW和DMFT)建立高级应用程序。 ABINIT可以计算任何化学成分的分子、纳米结构和固体,并提供了几个完整而可靠的原子势表。 该代码的主要功能提供在线教程,每年都会组织一些学校和研讨会。在
此插件是使用AiiDA plugin cutter创建的。在
安装
安装Abinit(此处为Abinit v.9.2.1)
wget https://www.abinit.org/sites/default/files/packages/abinit-9.2.1.tar.gz tar -xvf abinit-9.2.1.tar.gz cd abinit-9.2.1 mkdir build cd build ../configure
配置可能会告诉您缺少必需的库(Netcdf等)。在
^{pr2}$这将构建HDF5、libXC、NetCDF和NetCDF Fortran(编译需要时间。。。去喝杯咖啡) 接下来需要创建一个.ac文件来告诉代码这些新的lib在哪里
vim max.ac
将build-abinit-fallbacks.sh
报告您的行添加到max.ac
文件中。
如果要并行运行,还应该添加MPI安装的路径(如openmpi)。
例如:
with_mpi=/home/max/codes/openmpi-4.0.2/ enable_mpi_io="yes"with_libxc=/home/max/codes/abinit-9.2.1/build/fallbacks/install_fb/gnu/7.5/libxc/4.3.4 with_hdf5=/home/max/codes/abinit-9.2.1/build/fallbacks/install_fb/gnu/7.5/hdf5/1.10.6 with_netcdf=/home/max/codes/abinit-9.2.1/build/fallbacks/install_fb/gnu/7.5/netcdf4/4.6.3 with_netcdf_fortran=/home/max/codes/abinit-9.2.1/build/fallbacks/install_fb/gnu/7.5/netcdf4_fortran/4.5.2 with_xmlf90=/home/max/codes/abinit-9.2.1/build/fallbacks/install_fb/gnu/7.5/xmlf90/1.5.3.1 with_libpsml=/home/max/codes/abinit-9.2.1/build/fallbacks/install_fb/gnu/7.5/libpsml/1.1.7
然后重新运行配置
../configure --with-config-file=max.ac
make
它应该可以工作并被编译。在
如果在安装Abinit时遇到问题,请访问Abinit documentation。在
可以使用导出“abinit”可执行文件
exportPATH=/home/max/codes/abinit-9.2.1/build/src/98_main:$PATH
确保一切顺利进行:
cd ../tests/ python runtests.py --build-tree=/home/max/codes/abinit-9.2.1/build
安装AiiDA
首先使用conda创建一个虚拟python环境(如果没有,请安装它):
conda create -n aiida-abinit -c conda-forge aiida-core=1.4.2 aiida-core.services=1.4.2
然后激活虚拟环境
conda activate aiida-abinit reentry scan
然后应该克隆这个GitHub存储库
git clone https://github.com/sponce24/aiida-abinit cd aiida-abinit pip install -e . --ignore-installed --use-feature=2020-resolver
这应该安装aiida-core
和aiida-abinit
。在
现在应该设置计算机和代码:
cd examples
您应该打开computer.yml
,并使其适应您的环境。
然后运行:
verdi computer setup --config computer.yml
这将把您当前的本地计算机设置为计算机。您还可以调整computer.yml
来设置远程计算机。
如果您这样做:
verdi computer list
它应该显示你的电脑。在
现在设置Abinit代码。同时编辑指示路径的code.yml
。
然后做:
verdi code setup --config code.yml
这应该设置Abinit代码。您可以通过执行以下操作来验证您是否拥有它:
verdi code list
通过计算插件,你最终应该得到:
verdi plugin list aiida.calculations
这应该显示* abinit
你现在已经准备好了。祝贺 你!!在
使用
这里有一个完整的例子来说明如何使用这个插件提交一个测试计算。在
如何提交计算的快速演示:
verdi daemon start # make sure the daemon is runningcd examples python example_dft.py --code abinit-9.2.1-ab@localhost # run DFT test calculation verdi process list -a # check record of calculation
该插件还包含用于检查其数据类型的verdi命令:
verdi data abinit list
verdi data abinit export <PK>
发展
git clone https://github.com/sponce24/aiida-abinit . cd aiida-abinit pip install -e .[pre-commit,testing]# install extra dependencies pre-commit install # install pre-commit hooks pytest -v # discover and run all tests
有关详细信息,请参阅developer guide。在
致谢
这项工作得到了欧盟地平线2020研究和创新计划的支持, 在Marie Skłodowska-Curie Grant Agreement SELPH2D No. 839217下面。在
许可证
麻省理工学院
联系人
aiidaabinit插件由
- 项目
标签: