参数名 (Tag) | 类型 | 默认值 (Default) | 功能描述 | 输入格式要求 |
M_CONSTR | 实数向量列表 | 无 | 为每个原子指定目标磁矩矢量,用于约束局域磁矩计算 (I_CONSTRAINED_M > 0)。 | 每个原子一行,包含三个实数:Mx My Mz(单位:μB)。原子顺序与 POSCAR文件一致。 |
方面 | 说明与解释 |
核心功能 | M_CONSTR定义了在约束磁矩计算中,你希望每个原子的局域磁矩最终达到的目标值(大小和/或方向)。 |
必需前提 | 必须与 I_CONSTRAINED_M 参数结合使用才有效。I_CONSTRAINED_M决定了约束的类型(仅方向、方向+大小等)。 |
约束类型依赖 | • I_CONSTRAINED_M = 1(方向约束):M_CONSTR应提供单位矢量 (模长为1),例如 0 0 1表示沿 z 轴正方向。• I_CONSTRAINED_M = 2(矢量约束):M_CONSTR应提供完整的目标磁矩矢量,例如 0 0 3.0表示目标磁矩大小为 3.0 μB,方向沿 z 轴正方向。• I_CONSTRAINED_M = 4(方向与符号约束):M_CONSTR应提供单位矢量。 |
单位 | 磁矩单位为 玻尔磁子 (μB)。 |
原子顺序 | 至关重要! M_CONSTR的行数必须与 POSCAR文件中的原子数完全一致,且顺序必须一一对应。 |
与 RWIGS 的关系 | RWIGS 定义了计算每个原子局域磁矩的积分球半径。M_CONSTR约束的正是这个球内积分得到的磁矩。必须确保 RWIGS设置合理(球不重叠且足够大)。 |
输出监控 | 在 OSZICAR文件中监控:• MW_int:实际计算得到的平滑积分磁矩(每个原子的 x, y, z 分量)。目标是通过调整 LAMBDA使其接近 M_CONSTR。• E_p:惩罚项对总能量的贡献。应随 LAMBDA增大而减小。 |
计算目标 | 推荐操作 |
研究特定方向的磁各向异性 (MAE) | 1. 设置 I_CONSTRAINED_M = 1。2. 为所有相关原子设置 M_CONSTR为相同的单位矢量 (如 0 0 1, 0 1 0, 1 0 0)。3. 计算不同方向下的能量差。 |
模拟特定磁序 (如铁磁、反铁磁) | 1. 设置 I_CONSTRAINED_M = 2。2. 根据磁序为每个原子设置 M_CONSTR(如 FM: 所有原子 0 0 3.0; AFM: A 子晶格 0 0 3.0, B 子晶格 0 0 -3.0)。 |
防止磁矩在弛豫中翻转 | 1. 设置 I_CONSTRAINED_M = 4(VASP.6.4+)。2. 为原子设置 M_CONSTR为初始磁矩方向的单位矢量。 |
初始设置 | 1. 进行初步无约束计算,了解体系大致磁矩。2. 根据目标,按上述规则设置 M_CONSTR。3. 设置 I_CONSTRAINED_M和初始 LAMBDA(如 50)。4. 运行计算,检查 OSZICAR中的 MW_int和 E_p。5. 逐步增大 LAMBDA 并重启计算,直到约束有效 (MW_int≈ M_CONSTR, E_p很小)。 |
M_CONSTR是约束磁矩计算 (I_CONSTRAINED_M > 0) 中定义约束目标的核心参数。
关键点 1:其格式和含义严格依赖于 I_CONSTRAINED_M的设置。
关键点 2:原子顺序必须与 POSCAR完全一致。
关键点 3:约束的有效性需要通过逐步增大 LAMBDA 并监控 OSZICAR输出来保证。
关键点 4:RWIGS的设置直接影响约束哪个“区域”的磁矩,需合理设置。