obtain_ion_chain_properties

The Boulder Opal Toolkits are currently in beta phase of development. Breaking changes may be introduced.

obtain_ion_chain_properties(atomic_mass, ion_count, center_of_mass_frequencies, wave_numbers, laser_detuning=None)

Obtain the Lamb–Dicke parameters and mode frequencies (or relative detunings if a laser detuning is provided) for an ion chain.

This is essentially a wrapper of the Boulder Opal function calculate_ion_chain_properties(), but returns the result as NumPy arrays.

Parameters
  • atomic_mass (float) – The atomic mass of the ions of the chain in atomic units. This function assumes that all the ions in the chain are from the same atomic species.

  • ion_count (int) – The number of ions in the chain, \(N\).

  • center_of_mass_frequencies (list) – A list of three positive numbers representing the center-of-mass trapping frequency in the order of radial x-direction, radial y-direction, and axial z-direction, which correspond to the unit vectors \((1, 0, 0)\), \((0, 1, 0)\), and \((0, 0, 1)\) respectively.

  • wave_numbers (list) – A list of three elements representing the the laser difference angular wave vector (in units of rad/m) in the order of radial x-direction, radial y-direction, and the axial z-direction, which correspond to the unit vectors \((1, 0, 0)\), \((0, 1, 0)\), and \((0, 0, 1)\) respectively.

  • laser_detuning (float, optional) – The detuning of the control laser. If not provided, the returned relative detunings represent the mode frequencies.

Returns

  • np.ndarray – A 3D array of shape (3, N, N) representing the Lamb–Dicke parameters of the ions. Its dimensions indicate, respectively, the direction (radial x-direction, radial y-direction, and axial z-direction), the collective mode, and the ion.

  • np.ndarray – A 2D array of shape (3, N) representing the mode frequencies (or relative detunings if a laser detuning is provided). Its dimensions indicate, respectively, the direction (radial x-direction, radial y-direction, and axial z-direction) and the collective mode.

Return type

tuple[np.ndarray, np.ndarray]

See also

calculate_ion_chain_properties()

Function to calculate the properties of an ion chain.

ions.ms_optimize()

Find optimal pulses to perform Mølmer–Sørensen-type operations on trapped ions systems.

ions.ms_simulate()

Simulate a Mølmer–Sørensen-type operation on a trapped ions system.

Examples

Refer to the How to optimize error-robust Mølmer–Sørensen gates for trapped ions user guide to find how to use this function.