arc.alkali_atom_functions.AlkaliAtom.getLiteratureDME#

AlkaliAtom.getLiteratureDME(n1: int, l1: int, j1: float, n2: int, l2: int, j2: float, s: float = 0.5) Tuple[bool, float, List[Any]][source]#

Returns literature information on requested transition.

Parameters:
  • n1 – one of the states we are coupling

  • l1 – one of the states we are coupling

  • j1 – one of the states we are coupling

  • n2 – the other state to which we are coupling

  • l2 – the other state to which we are coupling

  • j2 – the other state to which we are coupling

Returns:

hasLiteratureValue?, dme, referenceInformation

If Boolean value is True, a literature value for dipole matrix element was found and reduced DME in J basis is returned as the number. The third returned argument (array) contains additional information about the literature value in the following order [ typeOfSource, errorEstimate , comment , reference, reference DOI] upon success to find a literature value for dipole matrix element:

  • typeOfSource=1 if the value is theoretical calculation; otherwise, if it is experimentally obtained value typeOfSource=0

  • comment details where within the publication the value can be found

  • errorEstimate is absolute error estimate

  • reference is human-readable formatted reference

  • reference DOI provides link to the publication.

Boolean value is False, followed by zero and an empty array if no literature value for dipole matrix element is found.

Return type:

bool, float, [int,float,string,string,string]

Note

The literature values are stored in /data folder in <element name>_literature_dme.csv files as a ; separated values. Each row in the file consists of one literature entry, that has information in the following order:

  • n1

  • l1

  • j1

  • n2

  • l2

  • j2

  • dipole matrix element reduced l basis (a.u.)

  • comment (e.g. where in the paper value appears?)

  • value origin: 1 for theoretical; 0 for experimental values

  • accuracy

  • source (human readable formatted citation)

  • doi number (e.g. 10.1103/RevModPhys.82.2313 )

If there are several values for a given transition, program outputs the value that has smallest error (under column accuracy). The list of values can be expanded - every time program runs this file is read and the list is parsed again for use in calculations.