atomscf.grid.radial_grid_mixed

atomscf.grid.radial_grid_mixed(n_inner, n_outer, rmin, r_switch, rmax)[源代码]

生成混合径向网格:核附近为对数网格,外层为线性网格。

混合网格旨在在小 \(r\) 处加密,同时控制总点数与外层行为:

  • 内层(对数):\(r_i = r_{\min} e^{i\Delta},\ i=0..n_{\text{inner}}-1\),末点尽量接近 \(r_{\text{switch}}\)

  • 外层(线性):从 \(r_{\text{switch}}\)\(r_{\max}\) 等间距 \(n_{\text{outer}}\) 个点(含端点)。

参数:
  • n_inner (int) -- 内层对数段点数(>=2)。

  • n_outer (int) -- 外层线性段点数(>=2)。

  • rmin (float) -- 最小半径(>0)。

  • r_switch (float) -- 切换半径(满足 rmin < r_switch < rmax)。

  • rmax (float) -- 最大半径(> r_switch)。

返回类型:

tuple[ndarray, ndarray]

返回:

  • r (numpy.ndarray) -- 合并后的单调递增网格,重复点已去重。

  • w (numpy.ndarray) -- 对应梯形积分权重。