sf.apps.qchem.vibronic¶
Functions used for computing molecular vibronic spectra with GBS.
In vibronic spectroscopy, incoming light simultaneously excites a molecule to higher electronic and vibrational states. The difference in the energies of the initial and final states determines the frequency of the photons that are absorbed by the molecule. The probability of the transition between two specific vibrational states are referred to as Franck-Condon factors (FCFs). They determine the intensity of absorption peaks in a vibronic spectrum. A GBS device can be programmed to provide samples that can be processed to obtain the molecular vibronic spectra. Theoretical background on computing vibronic spectra using GBS can be found in [1] and [13].
See also
GBS parameters¶
The Franck-Condon factor is given by
where \(|\mathbf{m}\rangle\) and \(|\mathbf{n}\rangle\) are the final and initial states, respectively, and \(U_{Dok}\) is known as the Doktorov operator which can be written in terms of displacement \(D_\alpha\), squeezing \(\Sigma_{r}\), and interferometer \(U_{1}, U_{2}\) operators as
A GBS device can be programmed with the \(U_{Dok}\) operator obtained for a given molecule. The
function gbs_params()
transforms molecular parameters, namely vibrational frequencies,
displacement vector and Duschinsky matrix, to the required GBS parameters. Additionally, this
function computes two-mode squeezing parameters \(t\), from the molecule’s temperature, which
are required by the GBS algorithm to compute vibronic spectra for molecules at finite temperature.
The sample()
function then takes the computed GBS parameters and generates samples.
The VibronicTransition()
function is an operation that can be used within the
conventional Program
interface for application of the Doktorov operator, allowing for
greater freedom on the choice of input state and any subsequent quantum operations.
Energies from samples¶
In the GBS algorithm for vibronic spectra, samples are identified with transition energies. The
most frequently sampled energies correspond to peaks of the vibronic spectrum. The function
energies()
converts samples to energies.
Functions
|
An operation for applying the Doktorov operator \(\hat{U}_{\text{Dok}} = \hat{D}({\alpha}) \hat{R}(U_2) \hat{S}({r}) \hat{R}(U_1)\) on a given state. |
|
Computes the energy \(E = \sum_{k=1}^{N}m_k\omega'_k - \sum_{k=N+1}^{2N}n_k\omega_k\) of each GBS sample in units of \(\text{cm}^{-1}\). |
|
Converts molecular information to GBS gate parameters. |
|
Generate samples for computing vibronic spectra. |