wavelength_calibration¶
This module’s scope is wavelength calibration for high resolution, unwrapped phase maps.
Example:
>>> import tuna
>>> unwrapped = tuna.io.read ( "tuna/test/unit/unit_io/G092_unwrapped.fits" )
>>> wavelength_calibrator = tuna.tools.wavelength.wavelength_calibrator ( unwrapped, calibration_wavelength = 6598.953125, free_spectral_range = 8.36522123894, interference_order = 791, interference_reference_wavelength = 6562.7797852, number_of_channels = 36, rings_center = ( 219, 255 ), scanning_wavelength = 6616.89 )
>>> wavelength_calibrator.join ( )
>>> wavelength_calibrator.calibrated.array [ 150 : 200 ]
array([[ 74.04817666, 73.55519697, 72.94114164, ..., 73.3628646 ,
73.92926326, 74.35776 ],
[ 73.86583775, 73.40994124, 72.98461314, ..., 73.31395047,
73.79109333, 74.38074642],
[ 73.79373484, 73.25194294, 72.80179596, ..., 73.26917593,
73.65012203, 74.14601242],
...,
[ 70.3757617 , 69.84531033, 69.27819624, ..., 69.75067727,
70.17056757, 70.76731326],
[ 70.404398 , 69.77546764, 69.36459732, ..., 69.78971195,
70.14732239, 70.67475633],
[ 70.33776 , 69.79072167, 69.25640406, ..., 69.63204571,
69.93539779, 70.58647794]])
-
class
tuna.tools.wavelength.wavelength_calibration.
wavelength_calibrator
(unwrapped_phase_map, calibration_wavelength, free_spectral_range, interference_order, interference_reference_wavelength, number_of_channels, rings_center, scanning_wavelength)[source]¶ This class is responsible for producing the wavelength calibrated cube from the phase map cube.
It inherits from the threading.Thread class, and it auto-starts its thread execution. Clients are expected to use its .join ( ) method before using its results.
Its constructor expects the following parameters:
- unwrapped_phase_map : numpy.ndarray
Contains the data to be calibrated.
- calibration_wavelength : float
The value in Angstroms for the wavelength used to calibrate the data.
- free_spectral_range : float
The value in Angstroms for the bandwidth of one interference order.
- interference_order : integer
The number of interference orders expected for this wavelength.
- interference_reference_wavelength : float
The number of interference orders expected for the reference wavelength.
- number_of_channels : integer
Corresponds to the number of planes in the original data cube.
- rings_center : dictionary
A structure equivalent to the one produced by spectral_rings_fitter.
- scanning_wavelength : float
The value in Angstroms of the wavelength scanned.