Spin Transition Functions (STF), \(\xi_L^{(k)}(i,j)\)

Docs

Source

// -*- coding: utf-8 -*-
//
//  spin_transition_function.h
//
//  @copyright Deepansh J. Srivastava, 2019-2021.
//  Created by Deepansh J. Srivastava, Apr 11, 2019.
//  Contact email = srivastava.89@osu.edu
//

// =====================================================================================
//                      Single nucleus spin transition functions
// =====================================================================================

/**
 * @brief Single nucleus spin transition function from the irreducible spherical tensor
 * of rank @f$L=1@f$ is given as
 * @f[
 *    \mathbb{p}(m_f, m_i) &= \left< m_f | \hat{T}_{10} | m_f \right> -
 *                            \left< m_i | \hat{T}_{10} | m_i \right> \\
 *                         &= m_f - m_i,
 * @f]
 * where @f$\hat{T}_{10}@f$ is the irreducible 1st-rank spherical tensor operator in the
 * rotating tilted frame.
 *
 * @param mi The quantum number associated with the quantized initial energy level.
 * @param mf The quantum number associated with the quantized final energy level.
 * @returns The spin transition function @f$\mathbb{p}@f$.
 */
static inline double STF_p(const double mf, const double mi) { return (mf - mi); }

/**
 * Single nucleus spin transition function from the irreducible spherical tensor of rank
 * @f$L=2@f$ is given as
 * @f[
 *    \mathbb{d}(m_f, m_i) &= \left< m_f | \hat{T}_{20} | m_f \right> -
 *                            \left< m_i | \hat{T}_{20} | m_i \right> \\
 *    &= \sqrt{\frac{3}{2}} \left(m_f^2 - m_i^2 \right),
 * @f]
 * where @f$\hat{T}_{20}@f$ is the irreducible 2nd-rank spherical tensor operator in the
 * rotating tilted frame.
 *
 * @param mi The quantum number associated with the quantized initial energy level.
 * @param mf The quantum number associated with the quantized final energy level.
 * @returns The spin transition function @f$\mathbb{d}@f$.
 */
static inline double STF_d(const double mf, const double mi) {
  return 1.2247448714 * (mf * mf - mi * mi);
}

/**
 * Single nucleus spin transition function from the irreducible spherical tensor of rank
 * @f$L=3@f$ is given as
 * @f[
 *    \mathbb{f}(m_f, m_i) &= \left< m_f | \hat{T}_{30} | m_f \right> -
 *                            \left< m_i | \hat{T}_{30} | m_i \right> \\
 *    &= \frac{1}{\sqrt{10}} [5(m_f^3 - m_i^3) + (1 - 3I(I+1))(m_f-m_i)],
 * @f]
 * where @f$\hat{T}_{30}@f$ is the irreducible 3rd-rank spherical tensor operator in the
 * rotating tilted frame.
 *
 * @param mi The quantum number associated with the quantized initial energy level.
 * @param mf The quantum number associated with the quantized final energy level.
 * @param spin The spin quantum angular momentum number.
 * @return The spin transition function @f$\mathbb{f}@f$.
 */
static inline double STF_f(const double mf, const double mi, const double spin) {
  double f_value = 1.0 - 3.0 * spin * (spin + 1.0);
  f_value *= (mf - mi);
  f_value += 5.0 * (mf * mf * mf - mi * mi * mi);
  f_value *= 0.316227766;
  return f_value;
}

/**
 * The following single nucleus composite spin transition functions corresponding to
 * rank @f$L=[0,2,4]@f$ irreducible tensors results from the second-order corrections to
 * the quadrupole frequency. The functions are defined as
 * @f[
 *   \mathbb{c}_{0}(m_f, m_i) &= \frac{4}{\sqrt{125}} \left[I(I+1) -
 *          \frac{3}{4}\right] \mathbb{p}(m_f, m_i) +
 *          \sqrt{\frac{18}{25}} \mathbb{f}(m_f, m_i), \\
 *   \mathbb{c}_{2}(m_f, m_i) &= \sqrt{\frac{2}{175}} \left[I(I+1) -
 *          \frac{3}{4}\right] \mathbb{p}(m_f, m_i) -
 *          \frac{6}{\sqrt{35}} \mathbb{f}(m_f, m_i), \\
 *   \mathbb{c}_{4}(m_f, m_i) &= -\sqrt{\frac{18}{875}} \left[I(I+1) -
 *          \frac{3}{4}\right] \mathbb{p}(m_f, m_i) -
 *          \frac{17}{\sqrt{175}} \mathbb{f}(m_f, m_i),
 * @f]
 * where @f$\mathbb{p}(m_f, m_i)@f$ and @f$\mathbb{f}(m_f, m_i)@f$ are single nucleus
 * spin transition functions described before, and @f$I@f$ is the spin quantum number.
 *
 * @param mi The quantum number associated with the quantized initial energy level.
 * @param mf The quantum number associated with the quantized final energy level.
 * @param spin The spin quantum number, @f$I@f$.
 * @param cl_value A pointer to an array of size 3 where the spin transition functions,
 *      @f$\mathbb{c}_{L}@f$, will be stored ordered according to @f$L=[0,2,4]@f$.
 */
static inline void STF_cL(double *restrict cl_value, const double mf, const double mi,
                          const double spin) {
  double f_value = STF_f(mf, mi, spin);
  double p_value = STF_p(mf, mi);
  double temp = spin * (spin + 1.0) - 0.75;
  temp *= p_value;

  *cl_value++ = 0.3577708764 * temp + 0.8485281374 * f_value;
  *cl_value++ = 0.1069044968 * temp + -1.0141851057 * f_value;
  *cl_value++ = -0.1434274331 * temp + -1.2850792082 * f_value;
}

// =====================================================================================
//              Two weakly coupled nuclei spin transition functions
// =====================================================================================
/**
 * @brief The @f$\mathbb{d}_{IS}@f$ spin transition symmetry function.
 *
 * Two weakly coupled nuclei spin transition function from the irreducible spherical
 * tensors is given as
 * @f[
 *   \mathbb{d}_{IS}(m_{f_I}, m_{f_S}, m_{i_I}, m_{i_S}) &=
 *   \left<m_{f_I}m_{f_S}|\hat{T}_{10}(I)~\hat{T}_{10}(S)|m_{f_I} m_{f_S}\right>
 * -\left<m_{i_I}m_{i_S}|\hat{T}_{10}(I)~\hat{T}_{10}(S)|m_{i_I} m_{i_S}\right>
 * \\
 *   &= m_{f_I} m_{f_S} - m_{i_I} m_{i_S},
 * @f]
 * where @f$\hat{T}_{10}(I)@f$ and @f$\hat{T}_{10}(S)@f$ are the irreducible first-rank
 * spherical tensor operators in the rotating tilted frame for spin I and S,
 * respectively.
 *
 * @param mIf The quantum number associated with the quantized final energy state
 *      corresponding to spin I.
 * @param mSf The quantum number associated with the quantized final energy state
 *      corresponding to spin S.
 * @param mIi The quantum number associated with the quantized initial energy state
 *      corresponding to spin I.
 * @param mSi The quantum number associated with the quantized initial energy state
 *      corresponding to spin S.
 * @return The spin transition symmetry function @f$\mathbb{d}_{IS}@f$.
 */
static inline double STF_dIS(const double mIf, const double mIi, const double mSf,
                             const double mSi) {
  return mIf * mSf - mIi * mSi;
}