vibeqc.run_pbc_bipole_rks¶
- vibeqc.run_pbc_bipole_rks(system, basis, kmesh, options=None, *, functional=None, linear_dep_threshold=1e-07, canonical_orth_normalize_diag_first=True, level_shift_schedule=None, use_mom=False, use_oda=False, oda_trust_lambda_max=1.0, use_incremental_fock=False, use_ewald_j_split=None, ewald_omega=None, ewald_precision=1e-08, v_ne_grid_options=None, use_multipole_far_field=False, multipole_l_max=2, use_exchange_ewald_split=None, exchange_exxdiv='ewald', use_fock_symmetry=None, use_fock_symmetry_reduce=False, progress=None, verbose=None, initial_density=None, dft_plus_u=None)[source]¶
Multi-k closed-shell RKS via the CRYSTAL-gauge BIPOLE scaffold.
- Parameters:
system (PeriodicSystem) – As in
run_pbc_bipole_rhf().basis (BasisSet) – As in
run_pbc_bipole_rhf().kmesh (BlochKMesh) – As in
run_pbc_bipole_rhf().options –
PeriodicKSOptionsor None for PBE defaults.functional (Optional[str]) – XC functional name (overrides
options.functionalif given).use_exchange_ewald_split (Optional[bool]) – Exchange/gauge convention (option (b), 2026-06-11).
None= auto: the corrected gauge is ON at 3D Γ-only sampling under the Ewald J split — full-Bloch density (no Γ-locality projection, which also fixes the XC grid density ρ(r): the projected density dropped the cross-cell AO products), no EXT EL-SPHEROPOLE term, and for hybrids (α_HF > 0) the Ewald exchange splitK = K_SR(erfc ω) + K_LR(reciprocal K≠0) + (ξ_M − π/(Vω²))·S·D·Sscaled by α_HF. Pure functionals need no exchange machinery — the gauge change alone applies (and the wasted full-Coulomb K traversal of the legacy path is skipped). Seerun_pbc_bipole_rhf()for the full convention notes. The corrected gauge is the default at BOTH Γ and multi-k (Phase-5 flip 2026-06-13): at multi-k it adds the q = k−k′ LR-exchange channels + BvK-supercell Madelung correction (requires a Monkhorst-Pack mesh; an ad-hoc k-list falls back to the legacy gauge under the auto default). Passuse_exchange_ewald_split=Falsefor the legacy gauge.exchange_exxdiv (str) – Exchange/gauge convention (option (b), 2026-06-11).
None= auto: the corrected gauge is ON at 3D Γ-only sampling under the Ewald J split — full-Bloch density (no Γ-locality projection, which also fixes the XC grid density ρ(r): the projected density dropped the cross-cell AO products), no EXT EL-SPHEROPOLE term, and for hybrids (α_HF > 0) the Ewald exchange splitK = K_SR(erfc ω) + K_LR(reciprocal K≠0) + (ξ_M − π/(Vω²))·S·D·Sscaled by α_HF. Pure functionals need no exchange machinery — the gauge change alone applies (and the wasted full-Coulomb K traversal of the legacy path is skipped). Seerun_pbc_bipole_rhf()for the full convention notes. The corrected gauge is the default at BOTH Γ and multi-k (Phase-5 flip 2026-06-13): at multi-k it adds the q = k−k′ LR-exchange channels + BvK-supercell Madelung correction (requires a Monkhorst-Pack mesh; an ad-hoc k-list falls back to the legacy gauge under the auto default). Passuse_exchange_ewald_split=Falsefor the legacy gauge.parameters (All other) – As in
run_pbc_bipole_rhf().linear_dep_threshold (float)
canonical_orth_normalize_diag_first (bool)
level_shift_schedule (Optional[LevelShiftSchedule])
use_mom (bool)
use_oda (bool)
oda_trust_lambda_max (float)
use_incremental_fock (bool)
use_ewald_j_split (Optional[bool])
ewald_omega (Optional[float])
ewald_precision (float)
v_ne_grid_options (Optional[GridOptions])
use_multipole_far_field (bool)
multipole_l_max (int)
use_fock_symmetry (Optional[bool])
use_fock_symmetry_reduce (bool)
progress (Union[bool, ProgressLogger, None])
verbose (Optional[int])
initial_density (Optional[Sequence[np.ndarray]])
dft_plus_u (Optional[List['HubbardSite']])
- Return type: