castor_etc.uvmos_spectroscopy

UVMOS Spectroscopy

castor_etc.uvmos_spectroscopy package simulates the effects of the currently proposed design for the UVMOS instrument.

.. caution:: The UVMOS design is currently undergoing active study so this code will likely undergo drastic changes frequently for the foreseeable future.

Module Contents

Classes

UVMOS_Spectroscopy

UVMOS_Spectroscopy class.

Functions

Gaussian

Gaussian2D

API

castor_etc.uvmos_spectroscopy.Gaussian(x, x0, sigma, a)
castor_etc.uvmos_spectroscopy.Gaussian2D(x, y, sigma, a=1, x0=0, y0=0)
class castor_etc.uvmos_spectroscopy.UVMOS_Spectroscopy(TelescopeObj, SourceObj, BackgroundObj)

UVMOS_Spectroscopy class.

Initialization

Initialize class for UVMOS Spectroscopy calculations.

Note that the Source object (i.e., the SourceObj parameter) should be a point source.

Parameters

TelescopeObj :: `castor_etc.Telescope` object
The `castor_etc.Telescope` object containing the telescope parameters.

SourceObj :: `castor_etc.Source` object
The `castor_etc.Source` object contaning the target source parameters.

BackgroundObj :: `castor_etc.Background` object
The `castor_etc.Background` object containing the background parameters.
Dictionary keys must match the TelescopeObj.passbands keys.

Attributes

TelescopeObj :: `castor_etc.Telescope` object
The `castor_etc.Telescope` object containing the telescope parameters.

SourceObj :: `castor_etc.Source` object
The `castor_etc.Source` object contaning the target source parameters.

BackgroundObj :: `castor_etc.Background` object
The `castor_etc.Background` object containing the background parameters.

Returns

`UVMOS_Spectroscopy` instance.
specify_slit(slit_width=0.214 * u.arcsec, slit_height=1 * u.arcsec)

Specify the size of the slit

show_slit()

Plot the slit transmission visualization

_calc_slit_transmission(print_transmission_fact=False)
calc_source_pix_weights()

Calculate the pixel weights for the source

show_source_pix_weights()
show_slit_image(wave)
_extraction(detector, pix_waves, extraction_width, extraction_lowerlim, extraction_upperlim)
_getTransmission(x)
_getDispersion(x)
showTransmission()
_calc_sigmaPix(dispersion)

Calculate the sigma value of a Gaussian fit to a pixel with a width in wavelength equal to the provided dispersion

_calc_sigmaPSF(dispersion)

Calculate the sigma value of the Gaussian PSF on the detector

_calcR(x, disp)

Calculate the resolving power

Parameters

x array of wavelength values disp array of dispersion values corresponding to the wavelenghts in x

Returns

Array of resolving power values corresponding to x

showResolvingPower()
calc_source_CASTORSpectrum(extraction_width=1, extraction_lowerlim=0, extraction_upperlim='max')

params

extraction_width = (int) width of the extraction box along the wavelength axis in pixels. By default this is 1.

extraction_lowerlim = (int) Lower limit of the extraction box along the spatial axis in pixels.

extraction_upperlim = (int) Upper limit of the extraction box along the spatial axis in pixels.

calc_background_CASTORSpectrum(extraction_width=1, extraction_lowerlim=0, extraction_upperlim='max')

params

extraction_width = (int) width of the extraction box along the wavelength axis in pixels. By default this is 1.

extraction_lowerlim = (int) Lower limit of the extraction box along the spatial axis in pixels.

extraction_upperlim = (int) Upper limit of the extraction box along the spatial axis in pixels.

calc_snr_from_t(t, wave, nread=1)
calc_t_from_snr(snr, wave, nread=1)