Synopsis
Check which FOV files contains the specified RA,Dec location.
Syntax
from ciao_contrib.region.check_fov import FOVFiles
Description
The Chandra Field Of View (FOV) files contain polygon regions for each active chip. The X and Y columns are in physical coordinates specific to the tangent plane of each observation; however, they also provide a WCS to map the polygons to celestial coordinates.
The FOVFiles class parses a stack of FOV files in celestial coordinates and provides an 'inside' method to check which files cover a specified RA,Dec location.
Examples
Example 1
>>> from ciao_contrib.region.check_fov import FOVFiles >>> my_obs = FOVFiles("acis_fov1.fits") >>> ii = my_obs.inside(23.1221, -34.111) >>> print(ii) ['acis_fov1.fits']
Parses the FOV file, acis_fov1.fits, in celestial coordinates. The object that is created can then be used to check if a position is located within it. The name of the FOV file that contains the location is returned in a list.
Example 2
>>> from ciao_contrib.region.check_fov import FOVFiles >>> my_obs = FOVFiles("acis_fov1.fits") >>> ii = my_obs.inside(0, 0) >>> print(ii) []
Same as above, but with a different set of coordinates. Since the position does not fall within the specified FOV file, the list returned is empty.
Example 3
>>> from ciao_contrib.region.check_fov import FOVFiles >>> my_obs = FOVFiles("acis*.fits") >>> ii = my_obs.inside(45.6621, +12.3312) >>> print(ii) ['acis_obs5_fov1.fits', 'acis_obs2_fov1.fits']
This example demostrates a stack of FOV files being input. The "*" behaves like the normal UNIX wildcard match. The inside method will a list with all the FOV file names that enclose the location.
Example 4
>>> from ciao_contrib.region.check_fov import FOVFiles >>> from coords.format import sex2deg >>> my_obs = FOVFiles("@acis.lis,@hrc.lis") >>> ra,dec = sex2deg("12:34:56.1", "+19:34:56") >>> ii = my_obs.inside(ra, dec) >>> print(ii) ['hrc_obs15_fov1.fits', 'acis_obs233_fov1.fits']
Since everything is done in celestial coordinates, both ACIS and HRC files can be processed at the same time. This example also shows how to use the coords.format routine sex2deg to convert from sexadecimal to degrees.