查看原文
其他

ABACUS 2.2版本介绍

陈默涵 深度势能 2024-06-16


01

ABACUS项目简介

通过量子力学基本理论来计算材料性质的方法已在现代材料模拟中扮演了重要角色,密度泛函理论(Density Functional Theory,简称DFT)作为其中最重要的方法之一,获得了1998年的诺贝尔奖。DFT算法已被实现在各种主流国外软件包中,例如VASP,Quantum Espresso,CP2K等。ABACUS是一款基于密度泛函理论发展起来的国内开源软件,支持平面波和数值原子轨道两种基矢量,主要采用模守恒赝势,目前功能已较齐全,可适用于从小体系到上千原子大体系的电子结构优化、原子结构弛豫、分子动力学模拟等计算。ABACUS早期从中科大何力新老师组发展起来,前期的代码开发经历了10年左右,2016年发布1.0版,2019年发布2.0版,2020年12月发布2.1版。


02

ABACUS 2.2 研发历程

2021年1月ABACUS开发团队与DeepModeling携手开发:ABACUS :携手DeepModeling,做源自中国、开源开放的DFT软件,距今已有一年有余。这一年多里,ABACUS开发团队在Github开源平台上获得了许多关注,建立起了稳定且具有活力的开发团队,也和一些科研小组建立了合作关系。本次推出的2.2新版本,正是这过去一年多里开源开放理念下获得的阶段性成果,不仅是代码层面上的,更多是开发理念上的收获。通过这一年多紧锣密鼓的探索和实践,我们团队深刻的感受到这种开源开放的理念是极大的有助于科学软件发展的,而这也正是DeepModeling社区所倡导的精神:DeepModeling社区宣言。例如,ABACUS的2.2版在2.1版上经历了Github上3200多次commits修改记录形成,我们汇总了四百多条主要的更新讯息(https://github.com/deepmodeling/abacus-develop/releases/tag/v2.2.0),得到了三十多位同学老师的帮助。回顾ABACUS发展的十几年:涓流汇沧海,积篑成丘山:一位科学家与ABACUS的十五年,以往科研课题小组难以顾全的框架设计、代码重构、文档编写、自动检测、编程规范等事务,都可以在DeepModeling社区下得到更好的解决方案。虽然目前代码在使用和开发上还有很多需要改进的,但体会到这一年多来程序发展的加速度,我们有理由相信ABACUS会越变越好。从另一个角度来说,开源的另一个层面意味着大家都能免费使用,我们鼓励大家多尝试使用,因为任何“好”的软件都是被用出来的。有时候从0到1这一步比从1到100要难,ABACUS 2.2版本走出了从小作坊的0到开源开放的1这一步,接下来我们还会持续推出新的DFT方法、基于机器学习的泛函、面向高性能平台的功能等相关更新,请大家多多支持国产开源DFT软件ABACUS,您的每个意见反馈都可以让它变得更好。


主要更新列表

  • 安装方式:可下载已安装好依赖的ABACUS镜像,实现快速部署(见下面的快速安装指南)

  • 编译方式:新增cmake编译支持,同时支持Makefile编译,支持Intel和GNU两种编译器

  • 测试集:新增集成测试(160多个)和大量单元测试

  • 增加文档:Github的在线文档,包括最新的使用手册

  • 更新功能:局域轨道基组下的对角化求解器ELPA从2016版升级到2021版

  • 增加功能:局域轨道基组下的对角化求解器ScaLapack

  • 增加功能:平面波基组支持meta-GGA泛函(SCAN泛函)计算

  • 增加功能:使用B样条插值快速计算结构因子

  • 增加功能:以平面波基组或局域轨道进行分子动力学计算,增加多个系综选项

  • 增加功能:非共线自旋加自旋轨道耦合效应计算,支持局域轨道基组下含自旋轨道耦合效应的PDOS计算

  • 增加接口:ABACUS与Libxc软件的接口

  • 性能优化:优化了平面波基组下CG迭代法求解矩阵的代码效率

  • 性能优化:提供OpenMP+MPI并行方案

  • 性能优化:减少局域轨道基组下的内存使用,特别适用于大体系模拟

  • 修改了部分输入参数名,请使用旧版输入文件的用户注意


2.2版本修复了2.1版本中的大量Bugs,由于篇幅原因不一一列举,全部更新信息汇集在此:https://github.com/deepmodeling/abacus-develop/releases/tag/v2.2.0_update。有问题欢迎反馈。


快速访问地址

  • ABACUS网站访问

    http://abacus.ustc.edu.cn/

  • ABACUS 2.2版本的relases tag

    https://github.com/abacusmodeling/abacus-develop/releases/tag/v2.2.0

  • ABACUS在DeepModeling社区中的Github仓库地址

    https://github.com/deepmodeling/abacus-develop

  • ABACUS在DeepModeling社区中的Gitee仓库地址

    https://gitee.com/deepmodeling/abacus-develop

  • 文档(包括输入输出参数介绍、功能介绍、例子介绍、开发者须知等)

    https://github.com/deepmodeling/abacus-develop#about-abacus

  • 供用户和开发者提问和讨论的地方

    https://github.com/deepmodeling/abacus-develop/discussions

    https://github.com/deepmodeling/abacus-develop/issues

  • ABACUS用户支持群,添加文末深度势能小编微信并表明入群意向,即可加入。 为了营造良好的学术交流氛围,本群拒绝广告,申请入群时,请备注姓名和单位。

快速安装指南

2.2版本的ABACUS支持使用 VS code 拉取已安装好依赖的镜像以实现快速部署。在本地安装好git、docker desktop后,打开 Visual Studio code 安装 Remote - Container 插件,点左下角Open a Remote Window,在命令框里选择 Clone a Repository in Container Volume,在对话框中输入https://github.com/deepmodeling/abacus-develop.git 即可配置好具有全部依赖项的ABACUS运行环境。完成环境制作后,即可使用cmake编译安装ABACUS。

参与贡献ABACUS 2.2人员名单

白晓旷 · 蔡淳 · 陈默涵 · 曹宇 · 陈涛 · 董昊森 · 戴祖建 · 何力新 · 何傅翔 · 季雨杨 · 金敢 · 李文菲 · 刘晓辉 · 林霈泽 · 李鹏飞 · 刘千锐 · 刘裕 · 刘人熙 · 李源波 · 路登辉 · 欧琪 · 彭星亮 · 瞿鑫 · 任新国 · 沈瑜 · 孙梦琳 · 孙亮 · 史少晨 · 许审镇 · 夏宇 · 王涵 · 郑大也 · 赵天琦 · 张林峰 · 张文帅 · 周耿栋

*名单按照姓氏字母排序



- End -

(如需转载图文请与公众号后台联系)-------------------------------推荐阅读
【教程】DP核心开发者亲授:一节课学透DeePMD-kit原理
【教程·安装讲解】DeePMD-kit和DP-GEN安装教程视频
【社区求助秘籍】助你通关DP!

社区B站账号 & 深度势能公众号

- 欢迎大家扫码关注 -


继续滑动看下一个
向上滑动看下一个

您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存