我现在在使用VASP进行计算,算的体系是RuO2,但是12*1*1的超胞,但在计算时提醒我要把AMI...

बनाया गया: 7 मई 2025

का उपयोग करके उत्तर दिया गया O3 द्वारा Chat01

प्रश्न

我现在在使用VASP进行计算,算的体系是RuO2,但是1211的超胞,但在计算时提醒我要把AMIX设的尽可能低,这是为什么?

विचार

Explaining AMIX warning

The user’s asking about VASP calculations for a RuO2 system with a large 1211 supercell. The warning about lowering AMIX refers to charge density mixing. With a large cell, especially one with a quasi-1D arrangement, charge sloshing can cause issues. AMIX controls this mixing, and for large cells along one dimension, lowering AMIX helps with convergence. It could also be related to factors like tetramized dimensions or plane-wave cutoffs leading to unstable SCF behavior, so reducing the mixing amplitude helps stabilize the process.

Thought for 19 seconds

उत्तर

在 VASP 里 AMIX(连同 BMIX 和 AMIX_MAG/BMIX_MAG)控制的是【第一次迭代的线性混合比例】,也就是把上一轮的电荷密度 n_old 和新计算得到的 n_new 按

nmix=(1α)nold+αnnew,α=AMIXn_{\text{mix}} = (1-\alpha)\,n_{\text{old}}+\alpha\,n_{\text{new}}, \qquad \alpha=\text{AMIX}

混合后再送去做泊松方程与下一个 SCF 循环。默认 AMIX ≈ 0.4(磁性体系 0.8),对普通的三维金属/绝缘体大多数时候都稳。但一旦出现“长波长电荷摇摆”(charge‑sloshing)——特别是在体积非常大的超胞或高度各向异性的模型里——太大的 AMIX 会让这些长波动被放大,SCF 就可能振荡或发散。VASP 检测到这种迹象时就会给出那句 “reduce AMIX as much as possible” 的提示。

为什么 12 × 1 × 1 超胞容易触发这个问题

  • 超长 a 轴 = 极小的 |G|<sub>min</sub>
    在 VASP 的 Kerker/Broyden 混合里,混合权重和最小倒格矢 G<sub>min</sub> 成反比。超胞在 a 方向拉长 12 倍后,G<sub>min</sub> 只剩下 1/12,意味着默认 AMIX=0.4 对长波成分等效于 “4.8” 的大步长 → 易发散。

  • RuO₂ 是金属性
    金属费米面存在大量低频振动模式,本就比绝缘体更难收敛;再加上长波摇摆,就更敏感。

  • 如果还带真空层(做表面/界面)
    真空区电荷极低→在真空/实心交界处形成宏观偶极,进一步恶化混合稳定性。

如何处理

方案具体做法适用场景
减小 AMIXAMIX = 0.02 或更小 (可与 BMIX = 0.0001 配对)大多数情况立刻稳定
启用 Kerker 混合权重AMIX = 0.2; BMIX = 0.001(如果之前没设 BMIX)有真空/强各向异性时更稳
切换 ALGOALGO = All 或 ALGO = Normal(避免 Fast/PW91 加剧振荡)体系较大、金属态
预热先用较低 ENCUT 或较大的 SIGMA 跑几步,存 WAVECAR,之后恢复正式参数继续初始猜测差时
增加 NELM / 减少 EDMAX给 SCF 更多步数,小步逼近剩余振荡仍明显时
利用上一轮电荷保留 CHGCAR/WAVECAR,ISTART=1; ICHARG=1重新开始相近结构

实操经验

  1. 把 AMIX 直接改到 0.02–0.05 往往就能立刻消除提示并收敛。
  2. 如果体系是表面或纳米线,最好把 AMIX 和 BMIX 同时调小;只改 AMIX 会让 Broyden 的记忆量级仍偏大。
  3. 观察 OSZICAR|dE||dN|:若电荷抖动(|dN|)大而能量收敛慢,就是典型 charge‑sloshing。
  4. RuO₂ 金属性,选 ISMEAR = 1SIGMA ≈ 0.2 eV 能进一步帮助平滑费米面。

可以给我更多模型细节吗?

  • 这个 12 × 1 × 1 超胞是在做一维长链、还是表面 slab?
  • 有没有真空层?
  • 你用的 VASP 版本和当前 INCAR 里混合相关参数(AMIX/BMIX/LMIXTAU/ALGO)都是什么?

有了这些信息还能更精确地给出推荐值或替代算法。

प्रश्न

是一维长链,RuO2是导体,我们考虑其反铁磁性的基础上进行计算。

विचार

Suggesting magnetic mixing settings

The user provided more details about the 1D chain of RuO2 with antiferromagnetic order and is clarifying expectations. Since supercells can lead to charge sloshing, setting AMIX low helps deal with that. For their specific case, I can suggest using AMIX_MAG, or trying LDAMPFER as a mixing parameter with linear or Kerker mixing. If spin-orbit coupling applies, using LDAU or LSORBIT might be necessary. For k-point sampling, a 1x1x1 grid might work, especially along the chain direction.

Thought for 12 seconds

उत्तर

一维金属长链 + 反铁磁 (AFM) 的组合里,SCF 收敛会同时受到 “长波长电荷摇摆” 和 “自旋密度摇摆” 两种不稳定因素的夹击,所以 VASP 才会强烈提示把 AMIX 降得越低越好。下面给出针对你这个模型更有针对性的建议与解释。


1  为什么 AFM 体系更要小 AMIX?

VASP 在磁性体系会分别混合 电荷密度 ρ 和 自旋密度 m:

ρmix=(1α)ρold+αρnewmmix=(1αmag)mold+αmagmnew\begin{aligned} \rho_{\text{mix}} &= (1-\alpha)\,\rho_{\text{old}}+\alpha\,\rho_{\text{new}} \\[2pt] m_{\text{mix}} &= (1-\alpha_\text{mag})\,m_{\text{old}}+\alpha_\text{mag}\,m_{\text{new}} \end{aligned}

其中

  • AMIX 对应 α (电荷)
  • AMIX_MAG 对应 α_mag (自旋)

对长超胞,ρ 本来就容易振荡;AFM 又让 m 在相邻 Ru 上正负交替,等效于在 G≈0 处再添一支“超长波”——因此 α、α_mag 均需显著减小,否则两条通道都会发散。


2  推荐混合与算法参数

关键字建议值说明
AMIX = 0.02电荷密度步长降 20×
BMIX = 0.001布罗伊登记忆量也相应减弱
AMIX_MAG = 0.02自旋密度同样收紧
BMIX_MAG = 0.001——
ALGO = All用 Davidson + RMM-DIIS 混合,更稳一些
LMIXTAU = .TRUE.Kerker‑Tau 权重,对一维金属链尤其有效
ISMEAR = 1 , SIGMA = 0.2 (eV)金属费米面加电子温度平滑
NELM = 120允许多跑几步,别过早放弃

小贴士AMIX 和 AMIX_MAG 最好保持相等,否则有时会出现“只收敛ρ不收敛m”的畸形状态。


3  KPOINTS & 结构细节

  1. 一维链:KPOINTS 至少 k_a = 12–20 (沿链方向),而 k_b = k_c = 1 即可;
    若 a 轴已被放大 12 倍,可把原来 12×1×1 的 K 网压回 1×1×1,再用“原胞 K 网 ×12” 得到等效密度。
  2. 真空层:若链四周是真空,建议加
    text
    LDIPOL = .TRUE. IDIPOL = 1 # 真空垂直方向 DIPOL = 0.5 0 0 # 沿 a/2
    消除偶极耦合。
  3. 初始磁矩 (MAGMOM):AFM 链可写成
    MAGMOM = +3*1 -3*1 +3*1 -3*1  …  (依元素顺序展开 12 个 Ru)
    
    正确的首猜 能明显减轻混合压力。

4  收敛监控要点

查看 OSZICAR/OUTCAR

  • |dE| 稳定单调下降 → 能量通道正常
  • |dN| 持续在 1e‑3 以上震荡 → 电荷摇摆仍在
  • magnetization (x) 分量若正负翻转 → 自旋通道仍不稳

一旦发现 dN 改变小于 1e‑4 且 dE < 1e‑5 eV,但某几步忽然暴冲,多半是 AMIX_MAG 还嫌大;可再降一档到 0.01


5  故障排查快速表

现象可能原因处理
SCF 初期就“Nan energy”初始自旋设置冲突检查 MAGMOM 顺序、符号
dE 收敛但 dN 振荡AMIX 太大 or BMIX/LMIXTAU 没配降 AMIX、开 LMIXTAU
dN 很小但自旋翻转AMIX_MAG 太大降 AMIX_MAG
超 200 步仍未收敛初猜差、ALGO 过快保存 WAVECAR → ISTART=1 继续;或改 ALGO=Normal

如果还不稳,可以尝试

  1. 预热几步:把 ENCUT 先降 20 %,SIGMA 提到 0.3 eV,跑 30 步;收敛后恢复正式参数继续。
  2. 旋转群处理 (LORBIT=11 + RWIGS):输出分波态,看是否某 d 轨道特别尖锐,可微调 U 或引入 SoC。

这样设置后,绝大部分 RuO₂ 长链 AFM 计算都能在 几十到一百步内 收敛,不再出现“把 AMIX 设得尽可能低”的警告。如果还有具体报错行或收敛曲线,贴出来再一起看。祝你计算顺利!

प्रश्न

你的回答中有LMIXTAU = .TRUE. Kerker‑Tau 权重,对一维金属链尤其有效
我想了解一下,但我需要提一下,我计算的这个体系不是一个线,理论上我计算的是RuO2内的自旋密度波,但自旋密度波的波长需要好几个晶格才行。所以我才要沿着晶轴放长,本质上是个块体。

विचार

undefined

विचार

Thought for 1m 22s

उत्तर

先纠正一下我上条消息里的笔误

LMIXTAU 并不是“Kerker‑Tau 权重”,而是 “把动能密度 τ 也送进混合器” 的开关。之前那句写错了,对你造成困扰抱歉。下面把它和 Kerker 预条件的区别、以及在“拉长超胞做自旋密度波 (SDW)” 这种块体体系里是否有帮助,分开说明。


1  LMIXTAU 到底做了什么?

  • 默认 (LMIXTAU = .FALSE.) VASP 的密度混合器只看到 电荷密度 ρ(和自旋密度 m,如果是自旋计算)。
  • 设为 .TRUE. 它把 动能密度 τ(r) = ∑ |∇ψ_i|² 也一并混合。
    • 这样做的初衷是 meta‑GGA(SCAN、r²SCAN…):这些泛函的能量显式依赖 τ,如果混合器只更新 ρ 而把 τ 当“外参”,就可能在 SCF 里自洽不起来。
    • 对普通 (G)GGA 或杂化泛函来说,τ 不直接进入能量,但在数值上多混合一个场有时能 增加阻尼、抑制振荡(尤其在 Pulay/Broyden 算法里)。
  • VASP 官方说明:只有当 IALGO = 38/48 等密度混合算法**“怎么调都收不敛”**时,才建议把 LMIXTAU 打开。vasp.at vasp.at

一句话LMIXTAU 更多是一根“最后的保险丝”——不收敛再开,平时不开也行。


2  Kerker 预条件与“超长超胞”

2.1  为什么拉长轴就容易 charge‑sloshing

长波长 q0q \to 0 的 ρ 摆动会把 Hartree 电势放大,SCF 易发散;把晶格沿 a 拉 12 倍就把最小 |G| 降到 1/12,等效于“放大”了长波成分。
这跟体系是一根链还是一个块体无关,只和 晶格中最小倒格矢大小 有关。

2.2  Kerker 预条件怎么抑制

在混合时给残差乘一因子

w(q)=q2q2+kTF2w(q)=\frac{q^{2}}{q^{2}+k_{\mathrm{TF}}^{2}}

q ⁣ ⁣0q\!\to\!0 的分量压低。VASP 用 AMIX/BMIX + MIXPRE / IMIX 来控制这个权重矩阵。vasp.at vasp.at

关键点:Kerker 预条件对 任何 含长波成分的大超胞(表面、空洞、SDW、CDW…)都同样有效,而不仅仅是一维链。


3  对“RuO₂ 块体 + SDW 超胞”的实用建议

目的推荐设置说明
抑制 charge‑sloshingAMIX = 0.02<br>BMIX = 0.001<br>MIXPRE = 1 (Kerker)小 AMIX + Kerker 权重,更安全
只在必要时再开 LMIXTAULMIXTAU = .TRUE. 可选如果仍有振荡或用 meta‑GGA
自旋通道同步阻尼AMIX_MAG = AMIX<br>BMIX_MAG = BMIX让 ρ 与 m 同步收敛,防止“只收敛电荷”
SDW 初始磁矩MAGMOM 里写一个按波长翻转的序列减少自旋摇摆时间
K 点长轴方向减少到 ~1–2 个就够,保持其它轴正常避免不必要的费米面噪声

若你用的是 SCAN 或者 r²SCANLMIXTAU 很建议开;若仍是 PBE +U/PBEsol,先不开,观测收敛再决定。


4  检查自己是否真需要 LMIXTAU

  1. 打开/关闭 LMIXTAU 分别跑 10–20 步,看 OSZICAR 里的
    • 能量差 |dE|
    • 电荷差 |dN|
    • 最后几步的自旋翻转情况
  2. 典型信号——
    • 关闭时:|dN| 久居 10⁻³ 以上、偶尔爆高;
    • 打开后:|dN| 快速降到 10⁻⁴ 以下并单调。
      只有出现这种改善,再常驻 LMIXTAU=.TRUE.

5  小结

  • LMIXTAU 并不是专为一维体系设计,而是“把动能密度也纳入混合”的选项,主要服务于 meta‑GGA 和极难收敛的情况。
  • Kerker 预条件才是抑制长超胞 charge‑sloshing 的主力 ——无论体系是链、表面还是你这种“块体 + 长波 SDW”。
  • 最稳妥的做法是:
    1. 先用小 AMIX + Kerker (MIXPRE=1) 测试;
    2. 如果仍振荡,再加 LMIXTAU=.TRUE.
    3. 观察收敛曲线,决定是否长期保留。

希望这次把“LMIXTAU 只管 τ,Kerker 才管 q→0”解释清楚,也帮你在拉长超胞的 SDW 计算里找到合适的混合参数。若再遇到具体的收敛异常,把 OUTCAR/OSZICAR 中相关片段贴出来,我们再一起对症调参!

प्रश्न

我的体系目前出现了如下情况,rms基本可以收敛,但rms(c)一直收敛不下去。

विचार

Explaining RMS convergence issue

It seems the user is describing a convergence issue in a VASP calculation, specifically with the charge density residual ("rms(c)"). From what I understand, "rms" can refer to the root mean square of the change in charge density, and "rms(e)" is often linked to eigenvalue convergence. Since the "rms(c)" is not converging, it might indicate problems in the charge density mixing process. To resolve this, they could adjust mixing parameters or tweak the convergence criteria.

Diagnosing "rms(c)" convergence issue

The user is dealing with a non-converging "rms(c)" (charge density) in VASP while "rms" (likely eigenvalues or energy) is converging. This suggests issues with charge mixing even though other parameters are fine. To troubleshoot, the user can try reducing mixing parameters like AMIX, or turning on preconditioning with Kerker. Other suggestions include adjusting mixing controls (e.g., mixrestart, ICHARG=1), tweaking kpoints for better density, and using specific settings like ISMEAR=1, SIGMA=0.2eV, and NELMDL to pause and relax charge mixing.

Thought for 27 seconds

उत्तर

rms vs rms(c) 各代表什么?

在 VASP 电子内循环的屏幕/OSZICAR 输出里常见两串数字:

字段含义典型范围
rms迭代后所有本征矢 ψ<sub>i</sub> 的均方根变化(“波函数残差”)10⁻¹ → 10⁻⁴
rms(c)混合后电荷密度 ρ<sub>mix</sub> 与上一轮 ρ<sub>old</sub> 之差的均方根(“电荷残差”)10⁻¹ → 10⁻⁵

能量 dErms 往往先收敛;若 rms(c) 卡在 10⁻²–10⁻³ 附近上下跳,说明混合器还在放大某些长波成分——体系能量看似稳定,实则 ρ 没真正自洽,所以 VASP 不会给“reached required accuracy” 结束语。


造成 rms(c) 久收不下来的常见原因

场景触发机理典型症状
长超胞 + 金属/SDWG<sub>min</sub> 很小 → 长波 charge-sloshingrms ≪ rms(c),rms(c) 呈锯齿
AMIX / AMIX_MAG 过大混合步长过猛几步后 rms(c) 冲到 10⁻¹ 量级
BMIX 过大或未设 Kerker预条件不抑制 q→0 分量rms(c) 下降很慢
meta-GGA 未混合 τρ 自洽但 τ 不自洽反向扰动 ρrms(c) 刚降又抬头
初始磁矩不匹配 SDW 相位自旋翻转拖累 ρrms(c) 周期性上冲

针对你的 “RuO₂ 块体 + 长波 SDW” 的修方思路

  1. 小步长 + Kerker 预条件

    bash
    AMIX = 0.01 # 如果 0.02 仍嫌大,就再降一档 BMIX = 0.0005 AMIX_MAG = 0.01 BMIX_MAG = 0.0005 MIXPRE = 1 # Kerker 预条件 (默认 1,但显式写上)

    先看 20 步 rms(c) 是否能从 10⁻² 掉到 10⁻³ 以下

  2. 冻结混合前若干步,让波函数先“站稳”

    bash
    NELMDL = 20 # 前 20 步只做波函数优化,不混 ρ

    常对 SDW/AFM 有奇效:ρ 先根据固定 ψ 收敛一把,再放开混合器。

  3. meta-GGA 或极难收敛时再开 LMIXTAU

    bash
    METAGGA = SCAN LMIXTAU = .TRUE.

    若你仍用 PBE + U,可先不开;真看到 rms(c) 降到 10⁻³ 后反弹,就试着打开。

  4. 同步自旋与电荷的阻尼时间
    确保 AMIX_MAG = AMIXBMIX_MAG = BMIX;很多人只改 AMIX 忽略 MAG,导致自旋通道单飞。

  5. 合适的 NELM 与收敛判据

    bash
    NELM = 120 EDIFF = 1E-5 EDIFFG = -0.02 # (结构优化时)

    别让 VASP 因超步数提前终止;同时将 EDIFF 设得和目标 rms(c) 量级一致。

  6. 检查 K 点与电子温度

    • 沿被放大的晶轴只需 1–2 个 K 点;其它方向保持常规密度,避免费米面噪声注入。
    • ISMEAR = 1, SIGMA = 0.2 eV 往往比 ISMEAR = 0 更稳。
  7. 确保初始 SDW 相位正确
    MAGMOM = +1 –1 +1 –1 … 按你设定的波矢排好。位相错位 ½ λ 会让 m 通道永远对着干。


诊断流程图(快速定位瓶颈)

text
rms(c) ≫ 1E-3 ? ├─► YES ─ AMIX 太大? → 降 AMIX/BMIX ├─► 仍大 → 没用 Kerker? → MIXPRE=1 ├─► 仍大 → 尝试 NELMDL 冻 20 步 ├─► 仍大 → meta-GGA? → LMIXTAU=.TRUE. └─► OK → 观察 10 步是否单调 ↓

如果调了还不行怎么办?

  1. 把 OSZICAR 贴 10–15 步出来:看 |dE|, rms, rms(c) 数字的具体跳动规律。
  2. 上传 INCAR & KPOINTS:方便核对有没有被忽略的冲突选项。
  3. 检查是否有强关联轨道尖峰:用 LORBIT = 11 + RWIGS 输出分波 DOS,若某个 d 峰太尖,可加轻度 +U 或增 SIGMA.

按照上面次序逐项尝试,rms(c) 一般能在 40–80 步降到 10⁻⁴ 量级,与 rms 同时满足收敛条件。如果你手头已有收敛曲线片段或具体报错,把它们贴出来,我可以帮你更精确地“看图调参”。祝早日跑通!

प्रश्न

NELMDL是什么?为什么能起作用?

प्रश्न

为什么能调NELMDL,这是什么,有什么用?

विचार

Clarifying NELMDL

The NELMDL parameter in VASP controls the number of electronic steps where charge density mixing is delayed. It helps by optimizing wavefunctions with a fixed Hamiltonian to prevent noisy density from bad random orbitals. This behavior slows down mixing in the early steps, especially in complex systems. For example, a value of -5 means a delay of 5 steps in the first ionic iteration, while the default value of -12 is typically used for ALGO=48.

Thought for 22 seconds

उत्तर

NELMDL —— “延迟混合 (mixing delay)” 的开关

关键字含义常见默认推荐范围
NELMDLN = 电子自洽 (SCF) 开始时先做 N 步“非自洽”迭代:固定初始哈密顿量 H₀,只优化波函数 ψ,不更新电荷密度 ρ/m–5 或 –12¹–5 ∼ +5

¹ 如果 ISTART = 0, INIWAV = 1, IALGO = 48/50,VASP 缺省 NELMDL = –12;有 WAVECAR 时为 0;否则 –5。VASP


1  为什么需要“延迟”?

  • 随机初始波函数很差
    VASP 默认用随机数给 ψ 起步。若立刻把对应的杂乱 ρ 拿去求新 H,混合器常被“噪声”推得发散。
  • 先固定 H₀,让 ψ 收敛到合理轨道
    在前 N 步里只做 Davidson/RMM-DIIS 求解 H0ψi=εiψi H_0\,\psi_i = \varepsilon_i\,\psi_i 得到较平滑的 ψ → 生成更靠谱的 ρ₁,再开始真正的自洽循环。
    这相当于 给混合器一个“干净的起跑线”,对金属、长超胞、表面、SDW/CDW 体系都能显著抑制 charge‑sloshingVASP

2  NELMDL 的取值规则

NELMDL行为典型用途
0完全关闭延迟(立即开始混合)已有高质量 WAVECAR/CHGCAR
负值 (–N)仅在第 1 个离子步 延迟 N 步静态单点,或结构优化中常用
正值 (+N)每个离子步 都先延迟 N 步分子动力学、VASP 6 + ALGO=ALL 时更稳

在 VASP 5.x,正值有时会让电荷预测出错,故官方更推荐负值;VASP 6.x 效果已修正。VASP


3  它为什么对你眼下的 SDW 超胞有用?

  1. 你的 rms 已小,但 rms(c) 居高 → 波函数已基本稳定,电荷密度仍在长波摇摆。
  2. NELMDL = –20(先冻 20 步)可让 ψ 在固定 ρ₀ 下进一步“消掉相位噪声”,然后再放开混合器,往往 rms(c) 会立刻掉两阶。
  3. 若还是振荡,再配合 小 AMIX + Kerker 预条件AMIX=0.01, MIXPRE=1),成功率更高。

4  与其他混合参数的协同

  • AMIX, BMIX —— 调节步长/记忆;先小后大。
  • AMIX_MAG, BMIX_MAG —— 自旋通道同步阻尼,最好与电荷通道同值。
  • LMIXTAU —— 只有在你改用 meta‑GGA(SCAN 等)或仍难收敛时再打开。
  • ALGO=ALL (+ Davidson) —— 与 NELMDL 配合性能好;若用 Fast/Normal,延迟步同样有效,但收益略低。

5  实用范例(静态 SDW 单点)

bash
# ---------- INCAR 片段 ---------- ALGO = All NELM = 120 NELMDL = -20 # 前 20 步固定 H AMIX = 0.01 BMIX = 0.0005 AMIX_MAG = 0.01 BMIX_MAG = 0.0005 MIXPRE = 1 # Kerker ISMEAR = 1 SIGMA = 0.20 EDIFF = 1E-5

跑法:若 20 步后 rms(c) < 1 × 10⁻³ 并单调下降,就让它继续;仍高的话再把 AMIX/AMIX_MAG 各减半或把 NELMDL 再增至 –30 试试。


小结

  • NELMDL = “让波函数先站稳,再混电荷” 的延迟步数。
  • 长超胞金属、SDW、表面 等易 charge‑sloshing 体系尤其有效。
  • 负值只在首个离子步生效(静态计算最常用);正值则每步都延迟(VASP 6 中分子动力学更稳)。
  • 与小 AMIX + Kerker 预条件联用,往往能把顽固的 rms(c) 从 10⁻² 拉进 10⁻⁴ 区间,顺利收敛。

如果你按上述设置仍见 rms(c) 高位锯齿,把前 30 步 OSZICAR 数字贴出来,再细调其他参数!

इस प्रश्नोत्तर को साझा करें