Separate the initial condition rho(0) from the driving term - #6
Merged
Conversation
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.
rho(0)was hardcoded inrun_simulation, and the lead bias did double duty: it set both the initial fill and the target the dissipator drives towards. Those are different objects in the Cauchy problem — the initial dataChanges
build_initial_rhoreplaces the five hardcoded lines, with three recipes:from_bias— each lead at its own bias, molecule empty. Previous behaviour, bit-identical, still the default.block— every block including the extended molecule filled to one common level. Removes the charging transient.connected—dtand omitting the truefermi()instead of being inlined.Verification
Built clean on macOS, app launches. Numerics checked against a 106-site system:
from_biasblock,connected,connected, $T=300$Kconnectedis an exact stationary state of the closed system, as it must be sincefrom_biasrow shows the artifact this addresses: 13 of 26 extended-molecule levels start empty and flood on connection, a charging transient unrelated to the applied bias.Equal derivative norms in rows 1–2 are a particle-hole coincidence of the half-filled symmetric band, not an identity — off half-filling ($\mu = 0.08$ ) they separate to 0.4297 vs 0.4113.
Note
The new recipes need$\gamma > 0$ . The bias enters the equation only through $b = \Gamma\rho^0$ , so at $\gamma = 0$ it has no effect at all once it is no longer also setting $\rho(0)$ .
🤖 Generated with Claude Code