Source code for arc._database
import sqlite3
import numpy as np
sqlite3.register_adapter(np.float64, float)
sqlite3.register_adapter(np.float32, float)
sqlite3.register_adapter(np.int64, int)
sqlite3.register_adapter(np.int32, int)
class UsedModulesARC(object):
alkali_atoms = False
divalent_atoms = False
arc3_0_methods = False
hyperfine = False
advanced_getPopulationTime = False
ac_stark = False
[docs]
def getCitationForARC():
"""Returns recommended citation for ARC based on used ARC modules."""
citation = ""
if UsedModulesARC.divalent_atoms or UsedModulesARC.arc3_0_methods:
citation += """- E. J. Robertson, N. Šibalić, R. M. Potvliege, M. P. A. Jones, ARC 3.0: An expanded Python toolbox for atomic physics calculations, Computer Physics Communications 261, 107814 (2021) https://doi.org/10.1016/j.cpc.2020.107814\n"""
if UsedModulesARC.hyperfine:
citation += """- N. Šibalić, J. D. Pritchard, K. J. Weatherill, C. S. Adams, ARC: An open-source library for calculating properties of alkali Rydberg atoms, Computer Physics Communications 220, 319 (2017), https://doi.org/10.1016/j.cpc.2017.06.015\n"""
elif UsedModulesARC.alkali_atoms:
citation += """- N. Šibalić, J. D. Pritchard, K. J. Weatherill, C. S. Adams, ARC: An open-source library for calculating properties of alkali Rydberg atoms, Computer Physics Communications 220, 319 (2017), https://doi.org/10.1016/j.cpc.2017.06.015\n"""
if UsedModulesARC.advanced_getPopulationTime:
citation += """- M. Archimi, C. Simonelli, L. Di Virgilio, A. Greco, M. Ceccanti, E. Arimondo, D. Ciampini, I. I. Ryabtsev, I. I. Beterov, and O. Morsch, Phys. Rev. A 100, 030501(R) (2019) https://doi.org/10.1103/PhysRevA.100.030501\n"""
if UsedModulesARC.ac_stark:
citation += """- D. H. Meyer, Z. A. Castillo, K. C. Cox, P. D. Kunz, J. Phys. B: At. Mol. Opt. Phys, 53, 034001 (2020) https://doi.org/10.1088/1361-6455/ab6051"""
return citation