Skip to content

dnkasen/snlines

Repository files navigation

#######################################################
# snline.py : A code for SN line identification
#
# calculate_pcygni_sn_line.py: a code to calculate a
# simple SN line profile
#########################################################


# snlines.py

 Code for spectral line identification
 Thanks to the Bloodhound Gang...
 Daniel Kasen ([email protected])
 improvements by Josiah Schwab

 usage: snlines.py spectrum.dat
 where spectrum.dat is a spectrum file with two
 column format:
     wavelength(angstroms)   flux


 For a given ion of interest, the code shows the relevant 
 lines sorted by their strength, estimated in an LTE way:

 tau = g*f*lambda_0*exp(-E/kT)

 where:
   lambda_0 = line center wavelength
   f        = line oscillator strength 
   g        = statistical weight of the lower level of the transition
   E        = excitation energy of the lower level of the transition

Line data from Kurucz cd23, stored in file kurucz.pkl
The default temperature is T = 10^4 K 
Change the default by running pickledata.py with a chaged Tref

Press ? at the prompt for commands:

 === List of Commands ===

n, new      add species
c, cycle    cycle the active species
k, kill     remove active species
e, species  list all species

d, incv     increase velocity (blueshift)
f, decv     decrease velocity (redshift)
v, setv     set the velocity

a, more     add line(s) to active species
r, less     remove line(s) from active species
l, lines    list all current lines

-, load     load & plot a datafile
-, oload    load & overplot a datafile
-, uload    unload the most recently loaded datafile

z, setz     set cosomological redshift
q, quit     exit SNLines
!, shell    pass a command to the shell

About

supernova line identification tool

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages