CP2K专题

CP2K 局域轨道与中心

从实际BERRY和PIPEK结果读取四个占据轨道,说明中心分支、轨道相位与偶极的区别。

更新于 2026-11-08约 10 分钟阅读按任务与环境选择适用配置
阅读本篇目录

从实际BERRY和PIPEK结果读取四个占据轨道,说明中心分支、轨道相位与偶极的区别。

1. 下载实例,先提取再画图#

下载电子性质与局域轨道实操包,在新目录解压:

unzip cp2k-electronic-fields-wave294-*.zip
cd cp2k-electronic-fields-wave294
bash preview.sh
bash run.sh

preview/重画三张参考图,results/data/保存重新提取的数值,plots/保存重画结果;随包figures/可直接查看。输出目录受保护,再次运行请使用新解压目录。这里不重新运行DFT,只在已分配资源内使用1个CPU后处理。

原生计算用CP2K2026.2的CPU构建:Intel oneAPI2024.2、icx/icpx/ifx2024.2.1、Intel MPI2021.13、MKL2024.2,MPI+OpenMP。本例1个MPI进程、4个OpenMP线程。后处理用pymatgen/2026.9.24中的Python3.11、NumPy2.3.5、Matplotlib3.11.2。

reference/是实际CUBE及PDOS导出的自有数值,选定网格完整保留,没有抽样或人为归一化;不含程序、原始二进制WFN或完整运行日志。inputs/保留完整输入与原生PDOS数值,方便核对字段。

2. 局域化的对象是什么#

本例把水分子的4个占据轨道做局域化。局域轨道是占据空间内的线性组合,轨道外观、编号与原来的能量本征轨道不同;不能把局域轨道1、2、3、4直接当成能量排序。

在DFT中加入:

&LOCALIZE T
 METHOD JACOBI
 OPERATOR BERRY
 EPS_LOCALIZATION 1E-8
 MAX_ITER 5000
 &PRINT
  &WANNIER_CENTERS ON
   IONS+CENTERS T
  &END WANNIER_CENTERS
  &WANNIER_CUBES ON
   STRIDE 2 2 2
  &END WANNIER_CUBES
  &WANNIER_SPREADS ON
  &END WANNIER_SPREADS
 &END PRINT
&END LOCALIZE

这里电子SCF收敛为1E−6,EPS_LOCALIZATION=1E−8控制的是另一项局域化优化,不能用它替代电子收敛。原生Jacobi旋转在本例21次迭代收敛。方法与选态说明见CP2K LOCALIZE。

3. 先看中心文件,再看轨道网格#

grep 'Localization  for spin' cp2k.out
cat water-HOMO_centers_s1-1_0.xyz
ls water-locHOMO*.cube

XYZ含3个原子和4个X中心。BERRY中心按周期相位定义,可能出现−6 Å等看似在盒外的坐标;本例显示前按12 Å晶胞回包。不是把中心位置手动移到自己希望看到的位置。输出选项见WANNIER_CENTERS。

实际四个Berry局域占据轨道切面

红/蓝表示轨道振幅的正负相位,整体变号不改变物理态,不是正负电荷。图中四幅各用自己的对称色标,不能只按颜色深浅比较两个轨道的总电子数;二维切面也不能替代完整三维判断。

原始CUBE振幅单位Bohr⁻³ᐟ²,范数用sum(psi**2)*voxel_volume。本例四个范数约1.000187、1.000187、1.000201、1.000201,没有人为强制归一化。选定文本CUBE中2×sum(|psi_i|²)与原生密度的相对差约1.861E−5,保留有限SCF和输出网格的差别,不声称严格逐点相等。

cat results/data/water-field-checks.csv
cat results/data/water-native-centres.csv

4. 相位中心与传统位置算符要区分#

将本例4个BERRY中心回到同一分支,并用离子价电荷6、1、1与每轨道2电子组合,得到Berry相位偶极约 1.833849 D;传统位置算符给出约 1.785118 D。这两者在本例有限盒子下不相同,不能为了对齐数值而移动单个中心或将整组中心重标定。

对孤立分子的通常偶极,直接使用相同非周期边界下的DFT/PRINT/MOMENTS并检查盒子、基组与网格;若使用Berry相位中心构造偶极,需跟踪周期分支,并收敛相应盒子和局域化定义。

5. PIPEK的中心文件含义不同#

资料包还保存实际PIPEK输入与网格。将算符改成OPERATOR PIPEK时,本版本示例采用:

&WANNIER_SPREADS OFF
&END WANNIER_SPREADS

这个版本组合用上述设置运行其余轨道与原子归属输出。PIPEK局域化本例在1次迭代收敛。不要直接把BOYS等其他枚举当成这个GPW计算路径中可无条件替换的选项。

本版PIPEK的centres文件记录最大权重原子的位置,不是每条轨道的几何质心。本例四条都归属O,因此四个X都在O坐标;这不表示四个轨道空间形状相同,也不能按这些原子归属点重建分子偶极。轨道网格仍完整保存在下载包中。

ls inputs/water-PIPEK-spreads-off

更换自己的分子时,先确认电子数、占据空间、基组、边界和实际支持的局域化算符,再比较局域轨道。若包含分数占据或金属态,不能直接照搬这个4个双占据分子轨道例。

准备自己的计算并提交#

本例水分子为PBE、DZVP-MOLOPT-SR-GTH/GTH-PBE、12 Å非周期立方盒、MT泊松边界;密度截断400 Ry、REL_CUTOFF=50 Ry、EPS_SCF=1E−6。先优化自己的结构,再请求单点性质;不要把非周期分子的MT设置直接套到周期晶体。

mkdir water-fields
cp inputs/water-BERRY-restart/input.inp water-fields/
cd water-fields

输入中的SCF_GUESS RESTART与WFN_RESTART_FILE_NAME seed.wfn用于读取同一结构、基组和赝势的已收敛波函数。将自己的匹配文件复制为seed.wfn。没有前置WFN时,可在这个新目录改成原子初猜:

sed -i 's/SCF_GUESS RESTART/SCF_GUESS ATOMIC/' input.inp
sed -i '/WFN_RESTART_FILE_NAME/d' input.inp

通过yskit选择CP2K2026.2对应的CPU模板,也可以复制公共模板;CPU分区须处于可用状态。MPI与线程数按模板分配,不混入其他MPI环境:

cp /public/slurm_scripts/hs_user/cp2k/2026.2/8173m/sub_cp2k_2026.2_8173m.sh .
sbatch sub_cp2k_2026.2_8173m.sh
grep 'SCF run converged' cp2k.out
tail -12 cp2k.out
ls *.cube *.pdos

模板的并行配置与本例1×4不同,输入模型不变;小分子不一定随核心数增加而加速。详细提交流程见CP2K入门。

完整输入#

以下原始输入也保留在资料包inputs/中。

water-BERRY-restart
&GLOBAL
 PROJECT water
 RUN_TYPE ENERGY_FORCE
 PRINT_LEVEL MEDIUM
&END GLOBAL
&FORCE_EVAL
 METHOD QS
 &DFT
  BASIS_SET_FILE_NAME BASIS_MOLOPT
  POTENTIAL_FILE_NAME GTH_POTENTIALS
  WFN_RESTART_FILE_NAME seed.wfn
  &MGRID
   CUTOFF 400
   REL_CUTOFF 50
  &END MGRID
  &SCF
   EPS_SCF 1.0E-6
   MAX_SCF 120
   ADDED_MOS 4
   SCF_GUESS RESTART
   &DIAGONALIZATION
    ALGORITHM STANDARD
   &END DIAGONALIZATION
   &MIXING
    METHOD PULAY_MIXING
    ALPHA 0.3
    NBUFFER 5
   &END MIXING
  &END SCF
  &XC
   &XC_FUNCTIONAL PBE
   &END XC_FUNCTIONAL
  &END XC
  &POISSON
   PERIODIC NONE
   POISSON_SOLVER MT
  &END POISSON
  &LOCALIZE T
   METHOD JACOBI
   OPERATOR BERRY
   EPS_LOCALIZATION 1E-8
   MAX_ITER 5000
   &PRINT
    &WANNIER_CENTERS ON
     IONS+CENTERS T
    &END WANNIER_CENTERS
    &WANNIER_SPREADS ON
    &END WANNIER_SPREADS
    &WANNIER_CUBES ON
     STRIDE 2 2 2
    &END WANNIER_CUBES
    &TOTAL_DIPOLE ON
    &END TOTAL_DIPOLE
   &END PRINT
  &END LOCALIZE
  &PRINT
   &E_DENSITY_CUBE ON
    STRIDE 2 2 2
   &END E_DENSITY_CUBE
   &ELF_CUBE ON
    STRIDE 2 2 2
   &END ELF_CUBE
   &DOS ON
    NLUMO 4
    NDIGITS 10
    &PDOS
     COMPONENTS T
    &END PDOS
   &END DOS
   &HIRSHFELD ON
   &END HIRSHFELD
   &MULLIKEN ON
   &END MULLIKEN
   &MOMENTS ON
    PERIODIC F
    MAX_MOMENT 1
   &END MOMENTS
  &END PRINT
 &END DFT
 &SUBSYS
  &CELL
   ABC 12 12 12
   PERIODIC NONE
  &END CELL
  &COORD
   O 6.000 6.000 6.000
   H 6.000 6.757 6.587
   H 6.000 5.243 6.587
  &END COORD
  &KIND O
   BASIS_SET DZVP-MOLOPT-SR-GTH
   POTENTIAL GTH-PBE-q6
  &END KIND
  &KIND H
   BASIS_SET DZVP-MOLOPT-SR-GTH
   POTENTIAL GTH-PBE-q1
  &END KIND
 &END SUBSYS
 &PRINT
  &FORCES ON
  &END FORCES
 &END PRINT
&END FORCE_EVAL
water-PIPEK-spreads-off
&GLOBAL
 PROJECT water
 RUN_TYPE ENERGY_FORCE
 PRINT_LEVEL MEDIUM
&END GLOBAL
&FORCE_EVAL
 METHOD QS
 &DFT
  BASIS_SET_FILE_NAME BASIS_MOLOPT
  POTENTIAL_FILE_NAME GTH_POTENTIALS
  WFN_RESTART_FILE_NAME seed.wfn
  &MGRID
   CUTOFF 400
   REL_CUTOFF 50
  &END MGRID
  &SCF
   EPS_SCF 1.0E-6
   MAX_SCF 120
   ADDED_MOS 4
   SCF_GUESS RESTART
   &DIAGONALIZATION
    ALGORITHM STANDARD
   &END DIAGONALIZATION
   &MIXING
    METHOD PULAY_MIXING
    ALPHA 0.3
    NBUFFER 5
   &END MIXING
  &END SCF
  &XC
   &XC_FUNCTIONAL PBE
   &END XC_FUNCTIONAL
  &END XC
  &POISSON
   PERIODIC NONE
   POISSON_SOLVER MT
  &END POISSON
  &LOCALIZE T
   METHOD JACOBI
   OPERATOR PIPEK
   EPS_LOCALIZATION 1E-8
   MAX_ITER 5000
   &PRINT
    &WANNIER_CENTERS ON
     IONS+CENTERS T
    &END WANNIER_CENTERS
    &WANNIER_SPREADS OFF
    &END WANNIER_SPREADS
    &WANNIER_CUBES ON
     STRIDE 2 2 2
    &END WANNIER_CUBES
    &TOTAL_DIPOLE ON
    &END TOTAL_DIPOLE
   &END PRINT
  &END LOCALIZE
  &PRINT
   &E_DENSITY_CUBE ON
    STRIDE 2 2 2
   &END E_DENSITY_CUBE
   &ELF_CUBE ON
    STRIDE 2 2 2
   &END ELF_CUBE
   &DOS ON
    NLUMO 4
    NDIGITS 10
    &PDOS
     COMPONENTS T
    &END PDOS
   &END DOS
   &HIRSHFELD ON
   &END HIRSHFELD
   &MULLIKEN ON
   &END MULLIKEN
   &MOMENTS ON
    PERIODIC F
    MAX_MOMENT 1
   &END MOMENTS
  &END PRINT
 &END DFT
 &SUBSYS
  &CELL
   ABC 12 12 12
   PERIODIC NONE
  &END CELL
  &COORD
   O 6.000 6.000 6.000
   H 6.000 6.757 6.587
   H 6.000 5.243 6.587
  &END COORD
  &KIND O
   BASIS_SET DZVP-MOLOPT-SR-GTH
   POTENTIAL GTH-PBE-q6
  &END KIND
  &KIND H
   BASIS_SET DZVP-MOLOPT-SR-GTH
   POTENTIAL GTH-PBE-q1
  &END KIND
 &END SUBSYS
 &PRINT
  &FORCES ON
  &END FORCES
 &END PRINT
&END FORCE_EVAL
需要根据你的体系选择资源?联系讨论计算需求。实际可用软件与权限,以当前账户和运行环境为准。

查看配图

放大后可滚动查看细节,按 Esc 关闭。

100%查看原图 ↗