组织介绍

欢迎来到REST开发团队!

REST(Rust-based Electronic Structure Toolkit)是基于革命性Rust语言构建的新一代电子结构计算平台。REST平台致力于推动量子力学和材料科学的前沿计算研究,适用于从催化研究(如Cu团簇CO吸附)到先进电子结构建模等多种应用场景,确保数值稳定性、精确性和并行计算效率。我们以极致性能为基石,以无限扩展为羽翼,为您提供从基础计算到前沿研究的全栈解决方案。

REST的LOGO 🌟 诚邀您体验REST的强大能力!每一个[Star]都是对我们创新的认可,每一条反馈都是推动科学计算变革的动力。让我们携手,共同绘制电子结构计算的未来图景!

REST核心特性

  • 高性能基组运算:支持高效的RI近似方法,可在保持精度的同时,高效实现四中心项积分计算
  • 主流密度泛函方法:包含LDA、(meta)-GGA和杂化泛函等主流密度泛函近似,支持Grimme经验色散校正,支持基于解析力的构型优化功能
  • 第五阶高精度DFT方法:提供XYG3/XGYJOS/xDH-PBE0/ZRPS等双杂化泛函、随机相位近似(RPA)与自旋对分离的RPA方法(scs-RPA),支持基于数值力的构型优化功能
  • 机器学习融合:集成DL-xDH23和R-xDH7-SCC等机器学习增强型双杂化泛函,提升计算效率与精度,支持基于数值力的构型优化功能
  • 激发态性质计算方法:匹配所有密度泛函方法的$\Delta$SCF通用策略、基于格林函数的GW和BSE方法等
  • PyREST交互工作流:为开发者和终端用户提供兼具直观性与实用性的交互界面

可用程序模块

  • rest:执行电子结构计算的主程序
  • rest_docker:用于构建Docker镜像和容器化环境的工具
  • rest_regression:功能验证与基准测试套件
  • rest_tensors:高效张量运算数学库
  • rest_libcint:C语言libcint库的Rust封装接口
  • rstsr:原生Rust实现的科学计算张量工具库(类似Python的Numpy)

安装指南

  • 推荐通过Docker镜像安装以获得最佳可移植性(详见rest_docker说明)
  • 在超算服务器上,一般不会允许用户日常使用docker命令,推荐使用singularity(详见rest_docker说明)
  • 本地环境编译需预先安装必要的编译工具链及相关库(详见rest_workspace说明或Dockerfile安装步骤)

使用指南

  • 使用Dokcer镜像安装生成的镜像,比如rest:v1.0,则可以通过docker调用该镜像进行REST计算:
    • docker run --rm -v $(pwd):/data -w /data rest:v1.0 /bin/bash -c "rest"
  • 由于docker的使用存在系统风险,在超算服务器上,一般不会允许用户日常使用docker命令,推荐使用singularity。假设已经存在singularity的容器镜像为rest_v1.0.sif,则可以通过如下命令进行REST计算:
    • singularity exec --bind $(pwd):/data rest_v1.0.sif bash -c "rest"
  • 为方便用户使用,我们提供了可用于生成REST程序输入卡的系统提示词(详见rest说明)。
  • 用户可在任意LLM网页界面(比如DeepSeekTongyi)上传提示词文件(rest/README.md),通过询问大语言模型获得REST程序的关键词使用说明,甚至直接获得输入卡。
    1. 以XYGJ-OS方法计算CuO分子的能量为例:
      输入图片说明
    2. 可以咨询提示词相关问题:
      输入图片说明

开发者贡献

REST程序由复旦大学化学理论研究中心开发,在徐昕教授(@xxchem)的领导下,由张颖教授(@igor1982)担任首席开发者完成。

核心组织团队

成员 主要职责
张颖(@igor1982) 项目负责人,架构设计、代码审核
毕升(@bsplu) 安装编译、代码优化
颜文杰(@ulysses-s) 社区管理、REST Workshop

贡献者

  • 大致按参与项目的时间顺序、持续更新中
  • 我们衷心感谢所有为REST项目付出过努力的贡献者,并热切期望有更多的人加入我们的项目。
  • 如果您发现贡献未被正确记录,请通过 issues 或联系 igor_zhangying@fudan.edu.cn 告知我们,我们将在第一时间补充更正。
成员 主要贡献
张颖(@igor1982) REST项目整体框架;实现LDA、GGA、杂化到双杂化方法;开发和维护rest、rest_tensors、rest_regression、pyrest项目
李之韵(@zyli_00) 1) 国产鲲鹏服务器适配;2)参与软件著作权申请;3) SAD、SAP等初始猜测;4) Mulliken分析+Cube文件生成
高天翊(@tygao) 1) DFT积分格点;2)高斯基组自动上网下载功能
王石嵘(@canarias) 1) DFT波函数稳定性分析;2) REST与MOLKIT的对接,实现与主流程序计算结果的互通
毕升(@bsplu) 1) 开发和维护rest_docker项目;2) 开发机器学习泛函DL-xDH项目(暂未开源)
冯儒林(@feng-rulin) 1) 实现S$^2$期望值计算;2)开发多参考密度泛函方法(暂未开源)
祝震予(@ajz34) 1) 重构rest_libcint代码;2) 开发维护新一代张量库rstsr项目;3) 实现HF的解析积分及构型优化功能
赵懿璘(@marshall3821) 1) 实现dftd3和dftd4的色散校正计算
颜文杰(@ulysses-s) 1) 实现meta-GGA和杂化方法,比如SCAN、M06、MN15等;2) 实现前四阶密度泛函的构型优化功能
虞凌岳(@lingyue-yu) 1) 限制性开壳层双杂化方法RO-xDH;2) 破坏轨道对称性初猜功能guess_mix;3) Yamacuchi自旋污染校正
高琪芮(@qirui-gao) 1) GW系列方法;2)BSE方法
林子涵(@Delta_H) 1) RRS-PBC:初步实现了周期性边界条件,为REST程序探索固体性质的计算打开了一扇门
成就
294
Star
22
Fork
成员(13)
5616173 bsplu 1587650482
bsplu
Shirong Wang
9180081 ajz34 1637664060
Zhenyu Zhu ajz34
Ulysses_s
12386037 delta h 1756482724
DeltaH
张颖
徐昕
qrgao
Lingyue Yu
zyl
16067673 zyli00 1755956362
zyli_00
陈俊
冯儒林

搜索帮助