Molecular Hamiltonians

This subset of Hamiltonian functions is useful for simulating alkaline-earth fluoride molecules like CaF, SrF, etc.

Note: The molecular Hamiltonians have the values of the Bohr and nuclear magneton specified in MHz/G by default. To use pylcp default units, the Bohr and nuclear magneton values must be overridden.

Overview

Xstate(N, I[, B, gamma, b, c, CI, q0, q2, ...])

Defines the field-free and magnetic field-dependent components of the \(X^2\Sigma^+\) ground state Hamiltonian.

Astate(J, I, P[, B, D, H, a, b, c, eQq0, p, ...])

Defines the field-free and magnetic field-dependent components of the excited \(A^2\Pi_{1/2}\) state Hamiltonian.

dipoleXandAstates(xbasis, abasis[, I, S, ...])

Calculate the oscillator strengths between the X and A states.

Detailed functions

pylcp.hamiltonians.XFmolecules.Astate(J, I, P, B=0.0, D=0.0, H=0.0, a=0.0, b=0.0, c=0.0, eQq0=0.0, p=0.0, q=0.0, gS=2.00231930436256, gL=1, gl=0, glprime=0, gr=0, greprime=0, gN=0, muB=1.39962449361, muN=0.0007622593229068622, return_basis=False)[source]

Defines the field-free and magnetic field-dependent components of the excited \(A^2\Pi_{1/2}\) state Hamiltonian.

Parameters
  • J (int) – Rotational quantum number(s)

  • I (int or float) – Nuclear spin quantum number

  • P (int or float) – Parity quantum number (\(\pm1\))

  • B (float) – Rotational constant. Default: 0.

  • D (float) – First non-rigid rotor rotational constant. Default: 0.

  • H (float) – Second non-rigid rotor rotational constant. Default: 0.

  • a (float) – Frosch and Foley \(a\) parameter. Default: 0.

  • b (int or float) – Frosch and Foley \(b\) parameter. Default: 0.

  • c (int or float) – Frosch and Foley \(c\) parameter. Default: 0.

  • eQq0 (int or float) – electric quadrupole hyperfine constant (only valid for I>=1). Default: 0.

  • p (float) – Lambda-doubling constant. Default: 0.

  • q (float) – Lambda-doubling constant. Default: 0.

  • muB (float) – Bohr Magneton. Default value is the CODATA value in MHz/G.

  • muN (float) – Nuclear Magneton. Default value is the CODATA value in MHz/G.

  • gS (float) – Electron spin g-factor. Default: CODATA value.

  • gL (float) – Orbital g-factor. Note that it may deviate slightly from 1 due to relativistic, diamagnetic, and non-adiabatic contributions. Default: \(g_L = 1\).

  • gr (float) – Rotational g-factor. Default: 0.

  • gl (float) – Anisotropic electron spin g-factor. Default: 0.

  • glprime (float) – Parity-dependent anisotropic electron spin g-factor. A reasonable approximation is that \(g_l' \sim p/2B\). Default: 0.

  • greprime (float) – Parity-dependent electron contribution to rotational g-factor. A resonable approximation is that \(g_{re}' \sim -q/B\). Default: 0.

  • gN (float) – Nuclear spin g-factor. It changes negligibly in most molecules. Default: 0.

  • return_basis (boolean, optional) – Boolean to specify whether to return the basis as well as the Hamiltonian matrices. Default: True.

Notes

Assumes the A state is in Hund’s case (a), namely \(\left|\Lambda, J, \Omega, I, F, m_F, P \right>\). By definition, \(\Sigma = \Omega - \Lambda\). For the A state, \(\Sigma=1/2\), \(\Lambda=1\), and then \(\Omega=1/2\). The full Hamiltonian is a combination of a Brown and Carrington, Rotational Spectroscopy of Diatomic Molecules, Eqs. 6.196 (rotation), 8.401 (\(\Lambda\)-doubling), 8.372 (nuclear spin-orbit coupling), 8.374 (Fermi contact interaction), 8.506 (quadrupole), 9.57, 9.58, 9.59, 9.60, 9.70, and 9.71 (Zeeman interaction). See the comments in the code for more details on equations used and approximations made. Most Hamiltonian parameters are both keyword arguments and by default zero so that the user can easily turn on only the relavent terms easily.

pylcp.hamiltonians.XFmolecules.Xstate(N, I, B=0.0, gamma=0.0, b=0.0, c=0.0, CI=0.0, q0=0, q2=0, gS=2.00231930436256, gI=5.5856946893, muB=1.39962449361, muN=0.0007622593229068622, return_basis=False)[source]

Defines the field-free and magnetic field-dependent components of the \(X^2\Sigma^+\) ground state Hamiltonian.

Parameters
  • N (int) – Rotational quantum number.

  • I (int or float) – Nuclear spin quantum number of the fluorine, usually 1/2

  • B (float) – Rotational constant. Default: 0.

  • gamma (float) – Electron-spin rotational coupling constant. Default: 0.

  • b (float) – Isotropic spin-spin interaction. Default: 0.

  • c (float) – Anisotropic spin-spin interaction. Default: 0.

  • CI (float) – Nuclear-spin rotational coupling constant. Default: 0.

  • q0 (float) – Electron quadrupole constant. Default: 0.

  • q2 (float) – Electron quadrupole constant. Default: 0.

  • gS (float) – Electron spin g-factor. Default: CODATA value.

  • gI (float) – Nuclear (proton) g-factor. Default: CODATA value.

  • muB (float, optional) – Bohr Magneton. Default value is the CODATA value in MHz/G.

  • muN (float) – Nuclear Magneton. Default value is the CODATA value in MHz/G

  • return_basis (boolean, optional) – Boolean to specify whether to return the basis as well as the Hamiltonian matrices. Default: True.

Notes

Assuming Hund’s case (b) with basis \(\left|\Lambda, N, \Sigma, J, F, m_F, P \right>\), \(\Lambda=0\) and \(\Sigma=1/2\). The full Hamiltonian is a combination of a Brown and Carrington, Rotational Spectroscopy of Diatomic Molecules, Eqs. 9.88 (rotation), 9.89 (spin-rotation), 9.90 (hyperfine), 9.91 (dipole-dipole interaction), 9.53 (electric quadrupole), 8.183 (electronic spin Zeeman) and 8.185 (nuclear spin Zeeman). See the comments in the code for more details on equations used and approximations made. Most Hamiltonian parameters are both keyword arguments and by default zero so that the user can easily turn on only the relavent terms easily.

pylcp.hamiltonians.XFmolecules.dipoleXandAstates(xbasis, abasis, I=0.5, S=0.5, UX=[], return_intermediate=False)[source]

Calculate the oscillator strengths between the X and A states.

Parameters
  • xbasis (list or array_like) – List of basis vectors for the X state

  • abasis (list or array_like) – List of basis vectors for the A state

  • I (int or float) – Nuclear spin angular momentum. Default: 1/2.

  • S (int or float) – \(\Sigma\) quantum number. Default: 1/2.

  • UX (two-dimensional array, optional) – a rotation matrix for case (b) into the intermediate eigenbasis. Default: empty

  • return_intermediate (boolean, optional) – Argument to return the intermediate bases and transformation matrices.

Notes

The X state is assumed to be Hund’s case (b) while the A state is assumed to be Hund’s case (a). Thus, this function makes an intermediate basis to transform between the two.