vibeqc.run_rks_periodic_gamma_ewald3d

vibeqc.run_rks_periodic_gamma_ewald3d(system, basis, options=None, *, omega=0.0, grid_shape=None, origin=None, spacing_bohr=0.3, linear_dep_threshold=1e-07, canonical_orth_normalize_diag_first=True, auto_optimize_truncation=True, allow_dense_ionic=False, progress=None, verbose=None)[source]

Γ-point closed-shell periodic Kohn-Sham SCF with Ewald-3D Coulomb.

Hartree J uses the w-invariant composed split from build_j_ewald_3d(). V_xc is built on the periodic Becke grid via build_xc_periodic(). For hybrid functionals exact exchange is added per the CAM assembly of vibeqc.periodic_screened_exchange.resolve_periodic_exchange() (full-range K at w = 0 for global hybrids – same K-build convention as the RHF Ewald driver – plus/or the erfc-screened K at w = omega_screen for screened hybrids like hse06).

Parameters:
  • system (vibeqc._vibeqc_core.PeriodicSystem) – PeriodicSystem with a full-rank 3D lattice matrix.

  • basis (vibeqc._vibeqc_core.BasisSet) – AO basis for the unit cell.

  • options (vibeqc._vibeqc_core.PeriodicKSOptions | None) – Optional PeriodicKSOptions. Defaults: PBE functional, default DIIS, no level shift. The use_periodic_becke flag selects between the periodic Becke partition (default since v0.9.x; required for tight cells, reduces to the molecular partition in the molecular-limit regime) and the legacy molecular partition (silently wrong on tight cells; set False only to reproduce v0.8.x numerics).

  • omega (float) – Ewald splitting parameter; result is w-independent at convergence to ~µHa across w in [0.3, 2.0].

  • grid_shape (Tuple[int, int, int] | int | None) – FFT-Poisson grid controls forwarded to build_j_ewald_3d().

  • origin (Sequence[float] | None) – FFT-Poisson grid controls forwarded to build_j_ewald_3d().

  • spacing_bohr (float) – FFT-Poisson grid controls forwarded to build_j_ewald_3d().

  • linear_dep_threshold (float) – Overlap-eigenvalue cutoff for canonical orthogonalisation.

  • allow_dense_ionic (bool) – Internal escape hatch. The driver fails closed when periodic images of the basis overlap (max cross-cell AO overlap above ~0.3), where the molecular-limit density convention gives a ~2 Ha-wrong energy (CLAUDE.md Sec.7); use jk_method='gdf'/'bipole'/'gpw' instead. Set True only to exercise the driver’s mechanics on such a cell – the returned energy is then NOT reliable.

  • canonical_orth_normalize_diag_first (bool)

  • auto_optimize_truncation (bool)

  • progress (bool | ProgressLogger | None)

  • verbose (int | None)

Return type:

PeriodicRKSEwaldResult.