Package ivs :: Package spectra :: Module linelists
[hide private]
[frames] | no frames]

Module linelists

source code

Access atomic data

Mendelev's Table:

   1  H  Hydrogen   11 Na Natrium    21 Sc Scandium  31 Ga Gallium    41 Nb Niobium    51 Sb Antimony
   2  He Helium     12 Mg Magnesium  22 Ti Titanium  32 Ge Germanium  42 Mo Molybdenum 52 Te Tellurium
   3  Li Lithium    13 Al Aluminium  23 V  Vanadium  33 As Arsenic    43 Tc Technetium 53 I  Iodine
   4  Be Beryllium  14 Si Silicon    24 Cr Chromium  34 Se Selenium   44 Ru Ruthenium  54 Xe Xenon
   5  B  Boron      15 P  Phosphorus 25 Mn Manganese 35 Br Bromine    45 Rh Rhodium    55 Cs Caesium
   6  C  Carbon     16 S  Sulfur     26 Fe Iron      36 Kr Krypton    46 Pd Palladium  56 Ba Barium
   7  N  Nitrogen   17 Cl Chlorine   28 Ni Nickel    37 Rb Rubidium   47 Ag Silver     57 La Lanthanum
   8  O  Oxygen     18 Ar Argon      27 Co Cobalt    38 Sr Strontium  48 Cd Cadmium    58 Ce Cerium
   9  F  Fluorine   19 K  Potassium  29 Cu Copper    39 Y  Yttrium    49 In Indium     59 Pr Praseodymium
   10 Ne Neon       20 Ca Calcium    30 Zn Zinc      40 Zr Zirconium  50 Sn Tin        60 Nd Neodymium

   61 Pm Promethium 71 Lu Lutetium   81 Tl Thallium  91 Pa Protactinium 101 Md Mendelevium    111 Rg  Roentgenium
   62 Sm Samarium   72 Hf Hafnium    82 Pb Lead      92 U  Uranium      102 No Nobelium       112 Uub Ununbium
   63 Eu Europium   73 Ta Tantalum   83 Bi Bismuth   93 Np Neptunium    103 Lr Lawrencium     113 Uut Ununtrium
   64 Gd Gadolinium 74 W  Tungsten   84 Po Polonium  94 Pu Plutonium    104 Rf Rutherfordium  114 Uuq Ununquadium
   65 Tb Terbium    75 Re Rhenium    85 At Astatine  95 Am Americium    105 Db Dubnium        115 Uup Ununpentium
   66 Dy Dysprosium 76 Os Osmium     86 Rn Radon     96 Cm Curium       106 Sg Seaborgium     116 Uuh Ununhexium
   67 Ho Holmium    77 Ir Iridium    87 Fr Francium  97 Bk Berkelium    107 Bh Bohrium        118 Uuo Ununoctium
   68 Er Erbium     78 Pt Platinum   88 Ra Radium    98 Cf Californium  108 Hs Hassium
   69 Tm Thulium    79 Au Gold       89 Ac Actinium  99 Es Einsteinium  109 Mt Meitnerium
   70 Yb Ytterbium  80 Hg Mercury    90 Th Thorium   100 Fm Fermium     110 Ds Darmstadtium
Functions [hide private]
    Main functions
 
VALD(elem=None, xmin=3200., xmax=4800., outputdir=None)
Request linelists from VALD for each ion seperately within a specific wavelength range.
source code
 
get_lines(teff, logg, z=0, atoms=None, ions=None, wrange=(-inf,inf), blend=0.0)
Retrieve line transitions and strengths for a specific stellar type
source code
    Convert ion codes to ion names and back
 
ioncode2name(ioncode)
Convert 14.01 to SiII
source code
 
name2ioncode(name)
Convert SiII to 14.01
source code
 
splitname(name)
Split SiII into Si and II
source code
Variables [hide private]
  logger = logging.getLogger("SPEC.LINELIST")
  atomcode = ['X', 'H', 'He', 'Li', 'Be', 'B', 'C', 'N', 'O', 'F...
  roman = ['I', 'II', 'III', 'IV', 'V', 'VI', 'VII', 'VIII', 'IX...
  stellar = os.path.join('linelists/mask')
Function Details [hide private]

VALD(elem=None, xmin=3200., xmax=4800., outputdir=None)

source code 

Request linelists from VALD for each ion seperately within a specific wavelength range.

elem = an array of ions e.g. ['CI','OII'], xmin and xmax: wavelength range in which the spectral lines are searched, outputdir = output directory chosen by the user.

If no elements are given, this function returns all of them.

Parameters:
  • elem (list of str) - list of ions

get_lines(teff, logg, z=0, atoms=None, ions=None, wrange=(-inf,inf), blend=0.0)

source code 

Retrieve line transitions and strengths for a specific stellar type

Selection wavelength range in angstrom.

Ions should be a list of ions to include. This can either be a string or a number

A lines is considerd a blend if the closest line is closer than blend angstrom.

Returns record array with fields wavelength, ion and depth.

Example usage:

Retrieve all Silicon lines between 4500 and 4600 for a B1V star.

>>> data = get_lines(20000,4.0,atoms=['Si'],wrange=(4500,4600))
>>> p = pl.figure()
>>> p = pl.vlines(data['wavelength'],1,1-data['depth'])

See how the depth of the Halpha line varies wrt temperature:

>>> teffs = range(5000,21000,1000) + range(22000,32000,2000) + range(30000,50000,50000)
>>> depths = np.zeros((len(teffs),7))
>>> for i,teff in enumerate(teffs):
...     data = get_lines(teff,5.0,ions=['HI'],wrange=(3800,7000))
...     depths[i] = data['depth']
>>> p = pl.figure();p = pl.title('Depth of Balmer lines (Halpha-Heta)')
>>> p = pl.plot(teffs,1-depths,'o-')
>>> p = pl.xlabel('Effective temperature');p = pl.grid()

Variables Details [hide private]

atomcode

Value:
['X', 'H', 'He', 'Li', 'Be', 'B', 'C', 'N', 'O', 'F', 'Ne', 'Na', 'Mg'\
, 'Al', 'Si', 'P', 'S', 'Cl', 'Ar', 'K', 'Ca', 'Sc', 'Ti', 'V', 'Cr', \
'Mn', 'Fe', 'Ni', 'Co', 'Cu', 'Zn', 'Ga', 'Ge', 'As', 'Se', 'Br', 'Kr'\
, 'Rb', 'Sr', 'Y', 'Zr', 'Nb', 'Mo', 'Tc', 'Ru', 'Rh', 'Pd', 'Ag', 'Cd\
', 'In', 'Sn', 'Sb', 'Te', 'I', 'Xe', 'Cs', 'Ba', 'La', 'Ce', 'Pr', 'N\
d', 'Pm', 'Sm', 'Eu', 'Gd', 'Tb', 'Dy', 'Ho', 'Er', 'Tm', 'Yb', 'Lu', \
'Hf', 'Ta', 'W', 'Re', 'Os', 'Ir', 'Pt', 'Au', 'Hg', 'Tl', 'Pb', 'Bi',\
 'Po', 'At', 'Rn', 'Fr', 'Ra', 'Ac', 'Th', 'Pa', 'U', 'Np', 'Pu', 'Am'\
...

roman

Value:
['I', 'II', 'III', 'IV', 'V', 'VI', 'VII', 'VIII', 'IX', 'X', 'XI', 'X\
II', 'XIII']