Function adas.split_multiplet
def split_multiplet(s_low, l_low, s_up, l_up, return_j=False, norm=False, white=False)
-
Returns the relative intensity of lines in an LS multiplet.
Parameters
s_low
:float
- Spin of lower level (note: S not 2S+1).
l_low
:float
- Angular momentum of lower level.
s_up
:float
- Spin of lower level (note: S not 2S+1).
l_up
:float
- Angular momentum of lower level.
return_j
:bool
- If True also return the lower and upper J.
norm
:bool
- If True set the smallest component to 1.
white
:bool
- If True set the largest component to 100.
Returns
split
:float, list
- Relative intensities of the lines.
(split, j_low, jup) : tuple of lists If return_j == True.
Notes
This function calculates the relative intensities of lines with a multiplet according to the rules outlined in Condon and Shortley, Chap 9, Sec. 2, eqn. 2a and 2b.
The White normalization is given in White and Eliason, Phys. Rev. A, 44, p753 (1933).
If the angular momentum of the first/lower term (l_up) is larger than second swap them.
Version History
- Martin O'Mullane, 31-01-2023
- First version
Example
Show the relative intensities of the 6 line in the 3F - 3D
>>> import adas as adas >>> adas.split_multiplet(1, 2, 1, 3) [63.0, 11.666666666666666, 0.3333333333333333, 93.33333333333333, 11.666666666666666, 135.0] >>> split, jl, ju = adas.split_multiplet(1, 2, 1, 3, return_j=True, white=True) >>> for s,j1, j2 in zip(split, jl, ju): print(j1, '-', j2, ':', s) 1 - 2 : 46.666666666666664 2 - 2 : 8.641975308641975 3 - 2 : 0.24691358024691354 2 - 3 : 69.1358024691358 3 - 3 : 8.641975308641975 3 - 4 : 100.0