.. _astroquery.svo_fps: ********************************************************** SVO Filter Profile Service Queries (`astroquery.svo_fps`) ********************************************************** Getting started =============== This is a python interface for querying the Spanish Virtual Observatory's Filter Profile Service (`SVO FPS `_). It allows retrieval of filter data (index, transmission data, filter list, etc.) from the service as astropy tables. Get index list of all Filters ----------------------------- The filter index (the properties of all available filters in a wavelength range) can be listed with :meth:`~astroquery.svo_fps.SvoFpsClass.get_filter_index`: .. doctest-remote-data:: >>> from astropy import units as u >>> from astroquery.svo_fps import SvoFps >>> index = SvoFps.get_filter_index(12_000*u.angstrom, 12_100*u.angstrom) >>> index.info name dtype unit -------------------- ------- --------------- FilterProfileService object filterID object WavelengthUnit object WavelengthUCD object PhotSystem object DetectorType object Band object Instrument object Facility object ProfileReference object CalibrationReference object Description object Comments object WavelengthRef float64 AA WavelengthMean float64 AA WavelengthEff float64 AA WavelengthMin float64 AA WavelengthMax float64 AA WidthEff float64 AA WavelengthCen float64 AA WavelengthPivot float64 AA WavelengthPeak float64 AA WavelengthPhot float64 AA FWHM float64 AA Fsun float64 erg / (A s cm2) PhotCalID object MagSys object ZeroPoint float64 Jy ZeroPointUnit object Mag0 float64 ZeroPointType object AsinhSoft float64 TrasmissionCurve object If the wavelength range contains too many entries then a ``TimeoutError`` will occur. A smaller wavelength range might succeed, but if a large range really is required then you can use the ``timeout`` argument to allow for a longer response time. Get list of Filters under a specified Facilty and Instrument ------------------------------------------------------------ Similarly, `~astroquery.svo_fps.SvoFpsClass.get_filter_list` retrieves a list of all Filters for an arbitrary combination of Facility & Instrument (the Facility must be specified, but the Instrument is optional). The data table returned is of the same form as that from `~astroquery.svo_fps.SvoFpsClass.get_filter_index`: .. doctest-remote-data:: >>> filter_list = SvoFps.get_filter_list(facility='Keck', instrument='NIRC2') >>> filter_list.info
name dtype unit -------------------- ------- --------------- FilterProfileService object filterID object WavelengthUnit object WavelengthUCD object PhotSystem object DetectorType object Band object Instrument object Facility object ProfileReference object CalibrationReference object Description object Comments object WavelengthRef float64 AA WavelengthMean float64 AA WavelengthEff float64 AA WavelengthMin float64 AA WavelengthMax float64 AA WidthEff float64 AA WavelengthCen float64 AA WavelengthPivot float64 AA WavelengthPeak float64 AA WavelengthPhot float64 AA FWHM float64 AA Fsun float64 erg / (A s cm2) PhotCalID object MagSys object ZeroPoint float64 Jy ZeroPointUnit object Mag0 float64 ZeroPointType object AsinhSoft float64 TrasmissionCurve object Get transmission data for a specific Filter ------------------------------------------- If you know the ``filterID`` of the filter (which you can determine with `~astroquery.svo_fps.SvoFpsClass.get_filter_list` or `~astroquery.svo_fps.SvoFpsClass.get_filter_index`), you can retrieve the transmission curve data using `~astroquery.svo_fps.SvoFpsClass.get_transmission_data`: .. doctest-remote-data:: >>> data = SvoFps.get_transmission_data('2MASS/2MASS.H') >>> print(data) Wavelength Transmission AA ---------- ------------ 12890.0 0.0 13150.0 0.0 13410.0 0.0 13680.0 0.0 13970.0 0.0 14180.0 0.0 14400.0 0.0005 14620.0 0.0027999999 14780.0 0.0081000002 14860.0 0.0286999997 ... ... 18030.0 0.1076999977 18100.0 0.0706999972 18130.0 0.0051000002 18180.0 0.0199999996 18280.0 0.0004 18350.0 0.0 18500.0 0.0001 18710.0 0.0 18930.0 0.0 19140.0 0.0 Length = 58 rows These are the data needed to plot the transmission curve for filter: .. doctest-skip:: >>> import matplotlib.pyplot as plt >>> plt.plot(data['Wavelength'], data['Transmission']) >>> plt.xlabel('Wavelength (Angstroms)') >>> plt.ylabel('Transmission Fraction') >>> plt.title('Filter Curve for 2MASS/2MASS.H') >>> plt.show() .. figure:: images/filter_curve.png :scale: 100% :alt: Transmission Curve for 2MASS/2MASS.H The 2MASS H-band transmission curve Troubleshooting =============== If you are repeatedly getting failed queries, or bad/out-of-date results, try clearing your cache: .. code-block:: python >>> from astroquery.svo_fps import SvoFps >>> SvoFps.clear_cache() If this function is unavailable, upgrade your version of astroquery. The ``clear_cache`` function was introduced in version 0.4.7.dev8479. Reference/API ============= .. automodapi:: astroquery.svo_fps :no-inheritance-diagram: