Repository navigation
Feature: Add orthonormalization for PW RT-TDDFT - #8085
Merged
Merged
Conversation
AsTonyshment
requested review from
mohanchen
and
a balanced review from Copilot
and removed request for
Copilot
October 6, 2026 16:56
mohanchen
reviewed
Oct 6, 2026
Critsium-xy
reviewed
Oct 8, 2026
mohanchen
approved these changes
Oct 9, 2026
AsTonyshment
marked this pull request as draft
October 9, 2026 09:03
AsTonyshment
marked this pull request as ready for review
October 9, 2026 09:44
Collaborator
Author
|
We found that the densities (e.g., |
mohanchen
approved these changes
Oct 9, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Single-precision PW RT-TDDFT propagation can accumulate electron-count errors, causing dipole drift and spurious low-frequency dielectric response. This PR adds explicit wavefunction orthonormalization before density construction to control this drift.
td_orthonormalwith Cholesky (cholesky, default), Löwdin (lowdin), Newton-Schulz (newton_schulz), andnoneoptions.Validation
Benzene propagation over 10 fs, comparing single-precision calculations against a double-precision reference.
Dipole and dielectric response. Without orthonormalization, the default
lin_thrproduces electron-count drift that contaminates the dipole and low-frequency dielectric response. All three orthonormalization methods restore agreement with the double-precision reference. Tighteninglin_thralso improves the response.Timing. Orthonormalization preserves efficiency in this benchmark: the three methods take 40.34-40.90 min, slightly less than 41.14 min without correction. Tightening
lin_thrto1e-6or1e-7without orthonormalization increases the runtime to 42.52 and 47.33 min, respectively.Electron conservation. The error is measured against benzene's 30 valence electrons,$\Delta N_{\psi}=N_{\psi}-30$ . Explicit orthonormalization keeps the error near zero during propagation; tightening the linear-solver tolerance alone does not systematically enforce electron conservation.
Orthogonality. The maximum elementwise deviation of$\boldsymbol{\Psi}^{\dagger}\boldsymbol{\Psi}$ from the identity remains below
1e-6after correction for all tested orthonormalization methods.