# arc.calculations_atom_pairstate.PairStateInteractions.defineBasis#

PairStateInteractions.defineBasis(theta, phi, nRange, lrange, energyDelta, Bz=0, progressOutput=False, debugOutput=False)[source]#

Finds relevant states in the vicinity of the given pair-state

Finds relevant pair-state basis and calculates interaction matrix. Pair-state basis is saved in basisStates. Interaction matrix is saved in parts depending on the scaling with distance. Diagonal elements matDiagonal, correponding to relative energy defects of the pair-states, don’t change with interatomic separation. Off diagonal elements can depend on distance as $$R^{-3}, R^{-4}$$ or $$R^{-5}$$, corresponding to dipole-dipole ($$C_3$$ ), dipole-qudrupole ($$C_4$$ ) and quadrupole-quadrupole coupling ($$C_5$$ ) respectively. These parts of the matrix are stored in PairStateInteractions.matR in that order. I.e. matR[0] stores dipole-dipole coupling ($$\propto R^{-3}$$), matR[1] stores dipole-quadrupole couplings etc.

Parameters:
• theta (float) – relative orientation of the two atoms (see figure on top of the page), range 0 to $$\pi$$

• phi (float) – relative orientation of the two atoms (see figure on top of the page), range 0 to $$2\pi$$

• nRange (int) – how much below and above the given principal quantum number of the pair state we should be looking?

• lrange (int) – what is the maximum angular orbital momentum state that we are including in calculation

• energyDelta (float) – what is maximum energy difference ( $$\Delta E/h$$ in Hz) between the original pair state and the other pair states that we are including in calculation

• Bz (float) – optional, magnetic field directed along z-axis in units of Tesla. Calculation will be correct only for weak magnetic fields, where paramagnetic term is much stronger then diamagnetic term. Diamagnetic term is neglected.

• progressOutput (bool) – optional, False by default. If true, prints information about the progress of the calculation.

• debugOutput (bool) – optional, False by default. If true, similarly to progressOutput=True, this will print information about the progress of calculations, but with more verbose output.

arc.alkali_atom_functions.saveCalculation and arc.alkali_atom_functions.loadSavedCalculation for information on saving intermediate results of calculation for later use.