Specifying the Atomic System

In order to find explicit forms for the density matrix, Hamiltonian, and other operators, the parameters of the atomic states must be specified. This is done using the AtomicState expression. A list of atomic states is known as an atomic system, and is the first argument to many of the functions in the AtomicDensityMatrix package.

Specifying an atomic state.

This loads the package.
In[1]:=
Click for copyable input
The first argument to AtomicState is a label, which is usually a number or a string. This can be followed by one or more rules specifying the values of various atomic parameters.
An atomic state.
In[2]:=
Click for copyable input
Out[2]=

Possible atomic parameters.

StateLabel[state] returns the label for that state.
In[3]:=
Click for copyable input
Out[3]=
param[state] can be used to get the value of param if it has been defined.
In[4]:=
Click for copyable input
Out[4]=
If it hasn't been defined, param[state] returns param[StateLabel[state]].
In[5]:=
Click for copyable input
Out[5]=

Generating sublevels of atomic states.

Zeeman and hyperfine sublevels of states with angular momentum can be generated automatically.
Zeeman sublevels.
In[6]:=
Click for copyable input
Out[6]=
Hyperfine and Zeeman sublevels of a state with nuclear spin.
In[7]:=
Click for copyable input
Out[7]=