Curve#
- class lsst.meas.algorithms.Curve(wavelength, efficiency, metadata)#
Bases:
ABCAn abstract class to represent an arbitrary curve with interpolation.
Attributes Summary
Methods Summary
compare_metadata(other[, keys_to_compare])Compare metadata in this object to another.
evaluate(detector, position, wavelength[, ...])Interpolate the curve at the specified position and wavelength.
fromTable(table)Class method for constructing a
Curveobject.Return metadata
interpolate(wavelengths, values, wavelength, ...)Interplate the curve at the specified wavelength(s).
readFits(filename)Class method for constructing a
Curveobject from the standardized FITS format.readText(filename)Class method for constructing a
Curveobject from the standardized text format.toTable()Convert this
Curveobject to anastropy.table.QTable.writeFits(filename)Write the
Curveout to a FITS file.writeText(filename)Write the
Curveout to a text file.Attributes Documentation
- mode = ''#
- subclasses = {'AMP': <class 'lsst.meas.algorithms.simple_curve.AmpCurve'>, 'DETECTOR': <class 'lsst.meas.algorithms.simple_curve.DetectorCurve'>, 'IMAGE': <class 'lsst.meas.algorithms.simple_curve.ImageCurve'>}#
Methods Documentation
- compare_metadata(other, keys_to_compare=['MODE', 'TYPE', 'CALIBDATE', 'INSTRUME', 'OBSTYPE', 'DETECTOR'])#
Compare metadata in this object to another.
Parameters#
- other
Curve The object with which to compare metadata.
- keys_to_compare
list List of metadata keys to compare.
Returns#
- same
bool Are the metadata the same?
- other
- abstract evaluate(detector, position, wavelength, kind='linear', bounds_error=False, fill_value=0)#
Interpolate the curve at the specified position and wavelength.
Parameters#
- detector
lsst.afw.cameraGeom.Detector Is used to find the appropriate curve given the position for curves that vary over the detector. Ignored in the case where there is only a single curve per detector.
- position
lsst.geom.Point2D The position on the detector at which to evaluate the curve.
- wavelength
astropy.units.Quantity The wavelength(s) at which to make the interpolation.
- kind
str, optional The type of interpolation to do (default is ‘linear’). See documentation for
scipy.interpolate.interp1dfor accepted values.- bounds_error
bool, optional Raise error if interpolating outside the range of x? (default is False)
- fill_value
float, optional Fill values outside the range of x with this value (default is 0).
Returns#
- value
astropy.units.Quantity Interpolated value(s). Number of values returned will match the length of
wavelength.
Raises#
- ValueError
If the
bounds_erroris changed from the default, it will raise aValueErrorif evaluating outside the bounds of the curve.
- detector
- abstract classmethod fromTable(table)#
Class method for constructing a
Curveobject.Parameters#
- table
astropy.table.QTable Table containing metadata and columns necessary for constructing a
Curveobject.
Returns#
- table
- interpolate(wavelengths, values, wavelength, kind, bounds_error, fill_value)#
Interplate the curve at the specified wavelength(s).
Parameters#
- wavelengths
astropy.units.Quantity The wavelength values for the curve.
- values
astropy.units.Quantity The y-values for the curve.
- wavelength
astropy.units.Quantity The wavelength(s) at which to make the interpolation.
- kind
str The type of interpolation to do. See documentation for
scipy.interpolate.interp1dfor accepted values.
Returns#
- value
astropy.units.Quantity Interpolated value(s)
- wavelengths
- classmethod readFits(filename)#
Class method for constructing a
Curveobject from the standardized FITS format.Parameters#
- filename
str Path to the FITS file to read.
Returns#
- filename
- classmethod readText(filename)#
Class method for constructing a
Curveobject from the standardized text format.Parameters#
- filename
str Path to the text file to read.
Returns#
- filename
- abstract toTable()#
Convert this
Curveobject to anastropy.table.QTable.Returns#
- table
astropy.table.QTable A table object containing the data from this
Curve.
- table