ENLIGHTEN
Cross-platform desktop GUI for Wasatch Photonics spectrometers
Loading...
Searching...
No Matches
EmissionLines.EmissionLines Class Reference

A simple plug-in to add emission lines from standard gas lamps to the current spectra. More...

Inheritance diagram for EmissionLines.EmissionLines:
[legend]
Collaboration diagram for EmissionLines.EmissionLines:
[legend]

Public Member Functions

 generate_points (self, lamp)
 Generate a synthetic spectrum, bounded in x to match the specified x-axis in wavelengths, bounded in y to match the min/max of the specified spectrum, of the specified lamp's emission lines.
 
 get_configuration (self)
 End backwards compatible object-returning wrappers #####.
 
 get_lamps (self)
 Emission lines with relative intensities of 0 appear in literature, but are either unverified or hard to see with our spectrometers in empirical usage.
 
 process_request (self, request)
 
- Public Member Functions inherited from EnlightenPlugin.EnlightenPluginBase
 __init__ (self, ctl)
 
 connect (self)
 Do whatever you have to do to prepare for processing measurements.
 
 disconnect (self)
 Called when ENLIGHTEN is shutting down.
 
 field (self, **kwargs)
 
 get_axis (self, processed_reading=None)
 
 get_axis_name (self)
 
 get_axis_short_name (self)
 
 get_configuration_obj (self)
 End functional-plugins backend ####.
 
 get_plugin_field (self, name)
 get the associated enlighten.Plugins.PluginFieldWidget (which IS a QWidget, mind you)
 
 get_widget_from_name (self, name)
 get the associated QLabel, QSpinBox, etc
 
 log (self, *msgs)
 Begin functional-plugins backend ###.
 
 output (self, name, value)
 
 plot (self, y, x=None, title=None, color=None)
 When plotting on the main scope graph the (co)domain matches that existing graph.
 
 process_request_obj (self, request)
 
 to_graph (self, x)
 Undo to_pixel conversion, and set point back to currently selected graph X-Axis.
 
 to_pixel (self, x, domain=None)
 domain is an array where the index corresponds to a detector pixel number.
 
 update_visibility (self)
 Something has happened which might cause the plugin to wish to refresh its visible state – perhaps a new spectrometer was connected.
 
 wavelength_to_pixel (self, wavelength)
 
 wavenumber_to_pixel (self, wavenumber)
 

Public Attributes

 lamps = self.get_lamps()
 
- Public Attributes inherited from EnlightenPlugin.EnlightenPluginBase
 auto_enable = None
 
bool block_enlighten = False
 
 ctl = ctl
 
 error_message = None
 
bool has_other_graph = False
 
bool is_blocking = False
 
bool lock_enable = False
 
 logfile = os.path.join(common.get_default_data_dir(), 'plugin.log')
 
 marquee_message = None
 
dict metadata = {}
 
bool multi_devices = False
 
 name = None
 
dict outputs = {}
 
dict overrides = {}
 
bool process_requests = True
 
dict series = {}
 
list signals = []
 
bool streaming = True
 
 table = None
 
 x_axis_label = None
 
 y_axis_label = None
 

Static Public Attributes

float MIN_REL_INTENSITY = 0.2
 

Additional Inherited Members

- Protected Attributes inherited from EnlightenPlugin.EnlightenPluginBase
 _config = None
 
list _fields = []
 

Detailed Description

A simple plug-in to add emission lines from standard gas lamps to the current spectra.

The lines displayed are limited to those appearing within the current spectrometer's configured wavelength calibration. Lines are scaled to the current spectrum, and relative intensities are roughly set to approximate typical appearance.

Member Function Documentation

◆ generate_points()

EmissionLines.EmissionLines.generate_points ( self,
lamp )

Generate a synthetic spectrum, bounded in x to match the specified x-axis in wavelengths, bounded in y to match the min/max of the specified spectrum, of the specified lamp's emission lines.

◆ get_configuration()

EmissionLines.EmissionLines.get_configuration ( self)

End backwards compatible object-returning wrappers #####.

Can be called BEFORE or AFTER connect. Should be idempotent. Ideally should return same object on multiple calls, but at least should be "equivalent" objects.

Returns
an EnlightenPluginConfiguration

Reimplemented from EnlightenPlugin.EnlightenPluginBase.

◆ get_lamps()

EmissionLines.EmissionLines.get_lamps ( self)

Emission lines with relative intensities of 0 appear in literature, but are either unverified or hard to see with our spectrometers in empirical usage.

Relative intensity will realistically vary by model, but these values are a reasonable starting point.

Todo
for completeness add He, Rn
Sources

Data taken from NIST, as well as calibration lamp vendor websites.

See also
https://physics.nist.gov/PhysRefData/ASD/lines_form.html
https://www.oceaninsight.com/products/light-sources/calibration-sources/wavelength-calibration-sources/
Returns
dict of emission lamp sources (Argon etc), each containing a dict of wavelength with relative intensity (relative to other lines of the same element)

◆ process_request()

EmissionLines.EmissionLines.process_request ( self,
request )

Member Data Documentation

◆ lamps

EmissionLines.EmissionLines.lamps = self.get_lamps()

◆ MIN_REL_INTENSITY

float EmissionLines.EmissionLines.MIN_REL_INTENSITY = 0.2
static

The documentation for this class was generated from the following file: