diff --git a/src/rydstate/species/strontium.py b/src/rydstate/species/strontium.py index dab8436..c20a43f 100644 --- a/src/rydstate/species/strontium.py +++ b/src/rydstate/species/strontium.py @@ -35,6 +35,19 @@ class _StrontiumAbstract(SpeciesObject): model_potential_parameter_fei_2009 = (0.9959, 16.9567, 0.2648, 0.1439) +class Strontium87(_StrontiumAbstract): + name = "Sr87" + i_c = 9 / 2 + + # https://physics.nist.gov/PhysRefData/Handbook/Tables/strontiumtable1.htm + _isotope_mass_u = 86.908884 # u + _corrected_rydberg_constant = ( + rydberg_constant.m / (1 + electron_mass.to("u").m / _isotope_mass_u), + None, + str(rydberg_constant.u), + ) + + class Strontium88(_StrontiumAbstract): name = "Sr88" i_c = 0 @@ -47,9 +60,20 @@ class Strontium88(_StrontiumAbstract): str(rydberg_constant.u), ) - # -- [1] Phys. Rev. A 108, 022815 (2023) - # -- [2] http://dx.doi.org/10.17169/refubium-34581 - # -- [3] Comput. Phys. Commun. 45, 107814 (2021) + # -- [1] Brienza 2023, Phys. Rev. A 108, 022815 + # Microwave spectroscopy of low-l singlet strontium Rydberg states at intermediate n + # Isotope Sr84 + # -- [2] Patsch 2021, http://dx.doi.org/10.17169/refubium-34581 + # Dissertation: Control of Rydberg atoms for quantum technologies + # see table A.2 (and A.3) + # Isotope not specified (probably Sr88) + # -- [3] Robertson 2021, Comput. Phys. Commun. 45, 107814 (2021) + # ARC 3.0: An expanded Python toolbox for atomic physics calculations + # see table B.1 + # Isotope Sr88 + # -- [4] (not used but also lot of data) Vaillant 2012, J. Phys. B: At. Mol. Opt. Phys. 45 135004 + # Long-range Rydberg-Rydberg interactions in calcium, strontium and ytterbium + _quantum_defects: ClassVar = { # singlet (0, 0.0, 0): (3.2688559, -0.0879, -3.36, 0.0, 0.0), # [1] @@ -70,16 +94,3 @@ class Strontium88(_StrontiumAbstract): (3, 3.0, 1): (0.119, -2.0, 100, 0.0, 0.0), # [3] (3, 4.0, 1): (0.120, -2.4, 120, 0.0, 0.0), # [3] } - - -class Strontium87(_StrontiumAbstract): - name = "Sr87" - i_c = 9 / 2 - - # https://physics.nist.gov/PhysRefData/Handbook/Tables/strontiumtable1.htm - _isotope_mass_u = 86.908884 # u - _corrected_rydberg_constant = ( - rydberg_constant.m / (1 + electron_mass.to("u").m / _isotope_mass_u), - None, - str(rydberg_constant.u), - ) diff --git a/src/rydstate/species/ytterbium.py b/src/rydstate/species/ytterbium.py index d04d2eb..6c0a37a 100644 --- a/src/rydstate/species/ytterbium.py +++ b/src/rydstate/species/ytterbium.py @@ -1,3 +1,5 @@ +from __future__ import annotations + from pathlib import Path from typing import ClassVar @@ -60,3 +62,41 @@ class Ytterbium174(_YtterbiumAbstract): None, str(rydberg_constant.u), ) + + # -- [1] Peper 2024, http://arxiv.org/abs/2406.01482 + # Spectroscopy and modeling of 171Yb Rydberg states for high-fidelity two-qubit gates + # see Table I + # Isotope Yb174 + # -- [2] Wilson 2019, https://arxiv.org/abs/1912.08754 + # Trapped arrays of alkaline earth Rydberg atoms in optical tweezers + # fit only valid from 28s upward + # see Table S2, but adjusted for non-Rydberg Ritz + # Isotope Yb174 + # -- [3] Kuroda 2025, https://arxiv.org/abs/2507.11487 + # Microwave spectroscopy and multi-channel quantum defect analysis of ytterbium Rydberg states + # see Table S1 - S8 + # Isotope Yb174 + + _quantum_defects: ClassVar = { + # singlet + (0, 0.0, 0): (4 + 0.355101645, 0.277673956, 0.0, 0.0, 0.0), # [3] S2 + (1, 1.0, 0): (3 + 0.922709076, 2.60055203, 0.0, 0.0, 0.0), # [3] S4 + (2, 2.0, 0): (2 + 0.729513646, -0.0377841183, 0.0, 0.0, 0.0), # [3] S6 + (3, 3.0, 0): (0.276158949, -12.7258012, 0.0, 0.0, 0.0), # [3] S7 + # triplet + (0, 1.0, 1): (4 + 0.4382, 4, -1e4, 8e6, -3e9), # [2] S2 # but adjusted for non-Rydberg Ritz + (1, 0.0, 1): (3 + 0.953661478, -0.287531374, 0.0, 0.0, 0.0), # [3] S3 + (1, 1.0, 1): (3 + 0.982084772, -5.45063476, 0.0, 0.0, 0.0), # [3] S4 + (1, 2.0, 1): (3 + 0.925150932, -2.69197178, 66.7159709, 0.0, 0.0), # [3] S5 + (2, 1.0, 1): (2 + 0.75258093, 0.3826, -483.1, 0.0, 0.0), # [1] Table I + (2, 2.0, 1): (2 + 0.752292223, 0.104072325, 0.0, 0.0, 0.0), # [3] S6 + (2, 3.0, 1): (2 + 0.72902016, -0.705328923, 829.238844, 0.0, 0.0), # [3] S1 + (3, 2.0, 1): (0.0718252326, -1.00091963, -106.291066, 0.0, 0.0), # [3] S1 + (3, 3.0, 1): (0.0715123712, -0.768462937, 0.0, 0.0, 0.0), # [3] S7 + (3, 4.0, 1): (0.0839027969, -2.91009023, 0.0, 0.0, 0.0), # [3] S1 + (4, 3.0, 1): (0.0260964574, -0.14139526, 0.0, 0.0, 0.0), # [3] S1 + (4, 5.0, 1): (0.02529201, -0.11588052, 0.0, 0.0, 0.0), # [3] S1 # actually from Yb171 + # +/- states + # (4, 4.0, "+"): (0.0262659964, 0.0254568575, 0.0, 0.0, 0.0), # [3] S8 + # (4, 4.0, "-"): (-0.148808463, -0.134219071, 0.0, 0.0, 0.0), # [3] S8 + }