乐于分享
好东西不私藏

【QE 计算教程】第 1 篇:QE 安装与环境配置

【QE 计算教程】第 1 篇:QE 安装与环境配置
QE 是什么

Quantum ESPRESSO 的全称是 Quantum ESPRESSO Foundation,其中 "ESPRESSO" 是 "opEn Source Package for Research in Electronic Structure, Simulation, and Optimization" 的缩写。它是一套基于密度泛函理论(DFT)、采用平面波基组赝势方法的第一性原理计算软件包。

QE 能做什么

QE 的核心模块是 pw.x(Plane-Wave Self-Consistent Field),它可以完成:

SCF 计算:求解体系的基态电子结构和总能量

结构优化:找到原子的稳定构型(relax /vc-relax)

分子动力学:模拟原子在有限温度下的运动(md)

能带结构:计算电子的能带色散关系

态密度:计算总态密度和投影态密度

声子谱:通过密度泛函微扰理论计算晶格振动

除了 pw.x,QE 还包含 bands.x、dos.x、projwfc.x、pp.x、ph.x 等一系列后处理和专用模块,我们会在后续教程中逐一介绍。

运行环境要求

QE 主要运行在 Linux 和 macOS 系统上。如果你使用 Windows,推荐通过 WSL(Windows Subsystem for Linux) 安装一个 Linux 子系统来运行 QE,这是目前比较方便且稳定的方案。

硬件方面,QE 对计算资源的需求取决于体系大小。一个几十原子的小体系,普通的笔记本电脑(4-8 核)就可以跑;如果是上百原子的大体系或者需要做声子、杂化泛函等昂贵计算,则建议使用服务器或计算集群。

操作步骤

QE 的安装方式主要有三种:conda 安装(最简单,推荐初学者)、源码编译(适合需要定制的用户)、Docker 容器(适合集群或 Windows 用户)。我们逐一介绍。

方式一:conda 安装(推荐初学者)

conda 是一个 Python 包和环境管理工具,它可以自动处理 QE 的所有依赖库,省去手动编译的麻烦。如果你还没有安装 conda,可以先安装 Miniconda(轻量级)或 Anaconda(完整版)。

1. 安装命令

conda install -c conda-forge qe

这条命令会从 conda-forge 频道下载并安装 QE 及其所有依赖(包括 MPI、FFTW、BLAS/LAPACK 等)。安装过程可能需要几分钟,请耐心等待。

💡 提示:如果你希望 QE 运行在一个独立的环境中,避免与其他软件冲突,可以先创建一个新环境:

conda create -n qe_envconda activate qe_envconda install -c conda-forge qe

2. 验证安装

安装完成后,在终端输入:

pw.x --version

如果输出类似下面的版本信息,说明安装成功:

Program PWSCF v.7.5 .........

也可以检查其他可执行文件是否可用:

which pw.x bands.x dos.x ph.x

如果这些命令都能找到对应的路径,说明 QE 的主要模块都已安装就绪。

⚠️ 常见误区:conda 安装的 QE 版本可能不是最新的开发版,但通常是经过验证的稳定版,对于初学者和大多数常规计算完全够用。

方式二:源码编译(适合需要定制的用户)

如果需要使用最新的开发版本、或者需要针对特定硬件进行优化(比如启用 GPU 加速、使用特定的 MPI 库),可以选择从源码编译。

1. 安装依赖库

编译 QE 需要以下工具和库:

  • Fortran 编译器:gfortran(GCC 套件)或 ifort(Intel)

  • C 编译器:gcc 或 icc

  • MPI 库:OpenMPI 或 MPICH(并行计算必需)

  • BLAS/LAPACK:线性代数库

  • FFTW:快速傅里叶变换库

在 Ubuntu/Debian 系统上,可以用以下命令一次性安装依赖:

sudo apt-get install build-essential gfortran libopenmpi-dev \    libfftw3-dev libblas-dev liblapack-dev

在 macOS 上,可以使用 Homebrew:

brew install gcc openmpi fftw

2. 下载源码

从 QE 官方网站或 GitLab 仓库下载最新的稳定版源码:

wget https://gitlab.com/QEF/q-e/-/archive/qe-7.5/q-e-qe-7.5.tar.gztar -xzvf q-e-qe-7.5.tar.gzcd q-e-qe-7.5

💡 提示:也可以直接从 QE 官网下载(目前需要注册登录),官网有各版本的稳定发布包。

3. 配置与编译

./configuremake all

./configure会自动检测系统环境并生成编译配置。make all会编译所有模块,这个过程可能需要 10-30 分钟,取决于机器的性能。

如果需要指定编译器或库路径,可以使用 configure 的选项,例如:

./configure FC=mpif90 CC=mpicc FFT_LIBS="-lfftw3"

4. 设置环境变量

编译完成后,可执行文件位于 bin/ 目录下。为了在任意目录都能调用 QE 命令,需要将 bin 目录添加到 PATH 环境变量中。

编辑 ~/.bashrc(或 ~/.zshrc),添加:

export PATH=/path/to/q-e-qe-7.5/bin:$PATH

然后执行 source ~/.bashrc 使其生效。

5. 验证安装

pw.x --version

输出版本号即说明编译成功。

方式三:Docker 容器(适合集群 / Windows 用户)

如果使用 Windows 且不想配置 WSL,或者在集群上没有管理员权限安装依赖,可以使用 Docker 容器方式。

1. 拉取镜像

docker pull espressotools/qe

2. 运行容器

docker run -it --rm -v $(pwd):/workspace espressotools/qe /bin/bash

这条命令会启动一个包含 QE 的容器,并将当前目录挂载到容器的 /workspace 目录下。在容器内就可以直接使用 pw.x 等命令了。

💡 提示:Docker 方式的优势是环境完全隔离、不会污染本地系统;缺点是性能略有损耗,且需要熟悉 Docker 的基本操作。

集群环境:module load 方式

如果在大学或研究所的计算集群上使用 QE,通常系统管理员已经预装了 QE,只需要用 module命令加载即可。

查看可用的 QE 模块:

module avail qe

加载指定版本:

module load qe/7.5

加载后就可以直接使用 pw.x 等命令了。不同集群的模块名称可能略有不同,如果不确定,可以咨询系统管理员或查看集群的使用文档。

常见问题与排查

1. conda 安装时下载慢或失败

症状:conda install 命令长时间无响应,或报下载错误。

可能原因与解决方法

  • 网络问题:可以尝试更换 conda 镜像源(如清华镜像、中科大镜像),加速下载。
  • 依赖冲突:可以尝试创建一个全新的 conda 环境再安装,避免与已有包冲突。

2. 源码编译时 configure 报错

症状./configure 报错,提示找不到某个库或编译器。

可能原因与解决方法

  • 依赖库未安装:确认 gfortran、MPI、FFTW、BLAS/LAPACK 都已安装。
  • 环境变量未设置:如果库安装在非标准路径,需要通过 configure 选项指定路径。
  • 编译器版本过旧:建议使用 GCC 7 以上版本。