DVR Series - Part II
Operator Matrices in the DVR Basis
The useful thing about DVR is that the important quantum operators become inspectable matrices. Kinetic energy is dense and structured, local potentials are diagonal, side operators are projectors, and flux operators appear as commutators around a dividing surface.
Kinetic energy
Use equally spaced points \(x_i=x_{\min}+i\Delta x\). The cardinal basis \(\phi_i(x)=\Delta x^{-1/2}\operatorname{sinc}[\pi(x-x_i)/\Delta x]\), with \(\operatorname{sinc}u=\sin u/u\), gives diagonal coordinate and potential matrices under DVR quadrature. Its band-limited Fourier representation supplies the kinetic matrix:
Set \(u=k\Delta x\) and \(n=i-j\). The remaining integral is elementary:
The off-diagonal result follows by two integrations by parts. Substitution gives the infinite-domain sinc convention used in the code:
Multi-state Hamiltonian blocks
For a diabatic model with electronic indices \(a,b\), the product-basis Hamiltonian is
The first term repeats the same nuclear kinetic matrix on each electronic-state block. The second term is diagonal in the DVR grid but may couple different electronic states at the same grid point.
Projectors and side operators
A side operator marks whether the nuclear coordinate lies to one side of a chosen dividing surface \(s\):
Flux operator
In the Heisenberg picture, \(h(t)=e^{iHt/\hbar}he^{-iHt/\hbar}\). Differentiating the two exponentials gives \(\dot h(t)=(i/\hbar)[H,h(t)]\). At \(t=0\), the rate of change of product-side occupancy is the flux operator:
Because \(h\) is a function of position, local potential terms commute with it. The visible structure mainly comes from \([T,h]\).
Thermalized flux
For Kubo-transformed rate formulas, a thermally dressed flux appears:
Time evolution and absorbing boundaries
Finite DVR boxes reflect wavepackets unless the boundary is treated. A complex absorbing potential or mask damps boundary-region amplitude and reduces artificial recurrences.
These matrix pictures are the bridge between the method comparison in Part I and the concrete propagation in Part III. Once the block Hamiltonian is assembled, the wavepacket calculation is an application of the finite-dimensional unitary \(e^{-iHt/\hbar}\).
Code used in this note
- dvr_kubo_minimal.py contains the sinc kinetic matrix, multi-state Hamiltonian constructor, side projector, and flux commutator.
- source/flux-side-kubo/utils/quantum.py preserves the flux-side utility routines used while preparing the matrix diagnostics.