vibeqc.run_rks_periodic_multi_k_ewald3d

vibeqc.run_rks_periodic_multi_k_ewald3d(system, basis, kmesh, 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, progress=None, verbose=None)[source]

Multi-k closed-shell periodic RKS SCF with EWALD_3D Coulomb.

Parameters:
  • system (vibeqc._vibeqc_core.PeriodicSystem) – Periodic system and AO basis.

  • basis (vibeqc._vibeqc_core.BasisSet) – Periodic system and AO basis.

  • kmesh (vibeqc._vibeqc_core.BlochKMesh) – BlochKMesh (e.g. from vibeqc.monkhorst_pack()).

  • options (vibeqc._vibeqc_core.PeriodicKSOptions | None) – Optional PeriodicKSOptions. Defaults: PBE, DIIS on, no level shift, molecular Becke partition. Honours functional, grid, use_periodic_becke, becke_image_radius_bohr, level_shift, smearing_temperature, damping, max_iter, conv_tol_*, diis_*, initial_guess, lattice_opts.

  • omega (float) – Ewald splitting + FFT-Poisson grid controls.

  • grid_shape (Tuple[int, int, int] | int | None) – Ewald splitting + FFT-Poisson grid controls.

  • origin (Sequence[float] | None) – Ewald splitting + FFT-Poisson grid controls.

  • spacing_bohr (float) – Ewald splitting + FFT-Poisson grid controls.

  • linear_dep_threshold (float) – Per-k S(k) eigenvalue floor for canonical orthogonalisation.

  • canonical_orth_normalize_diag_first (bool)

  • auto_optimize_truncation (bool)

  • progress (bool | ProgressLogger | None)

  • verbose (int | None)

Return type:

PeriodicRKSMultiKEwaldResult.