cross_bones.catalogue

Attributes

Classes

Catalogue

Represent a per-beam ASKAP component catalogue

CatalogueKeys

Contains catalogue column names/keys. Defaults are aegean-based.

Offset

Contains offsets in the RA and Dec directions in arcsec

TableKeys

Generic keys for a table

Functions

estimate_skycoord_centre(→ astropy.coordinates.SkyCoord)

Estimate the central position of a set of positions by taking the

filter_table(→ numpy.typing.NDArray[numpy.bool_])

Filter radio components out of a radio catalogue

guess_sbid_and_field_racs(→ tuple[int, str])

Attempt to extract the SBID and field name from a file path.

load_catalogue(→ Catalogue)

Load a beam catalogue astropy table

load_catalogues(→ Catalogues)

Load in all of the catalgues

make_sky_coords(→ astropy.coordinates.SkyCoord)

Create the sky-coordinates from a cataloguue table

save_catalogue_shift_positions(→ pathlib.Path)

Module Contents

class cross_bones.catalogue.Catalogue

Represent a per-beam ASKAP component catalogue

__repr__() str
center: astropy.coordinates.SkyCoord

Rough beam center derived from coordinates of componetns in catalogue

fixed: bool = False

Indicates whether beam has been fixed into a place

idx: int | None = None

Some optional identifier

offset: Offset

Per beam offsets, if known, in arcsec

path: pathlib.Path

Original path to the loaded catalogue

sky_coords: astropy.coordinates.SkyCoord | None = None

The positions from the table loaded

table: astropy.table.Table

The table loaded

table_keys: CatalogueKeys

Column names/keys with defaults from aegean component lists.

class cross_bones.catalogue.CatalogueKeys

Contains catalogue column names/keys. Defaults are aegean-based.

dec: str = 'dec'

DEC column key.

int_flux: str = 'int_flux'

Integrated flux density column key.

local_rms: str = 'local_rms'

Local rms column key.

peak_flux: str = 'peak_flux'

Peak flux density column key.

ra: str = 'ra'

RA column key.

class cross_bones.catalogue.Offset

Contains offsets in the RA and Dec directions in arcsec

dec: float = 0.0

Offset in Dec direction

ra: float = 0.0

Offset in RA direction

class cross_bones.catalogue.TableKeys

Generic keys for a table

dec: str = 'dec'

DEC column key.

int_flux: str = 'int_flux'

Integrated flux density column key.

local_rms: str = 'local_rms'

Local rms column key.

peak_flux: str = 'peak_flux'

Peak flux density column key.

ra: str = 'ra'

RA column key.

cross_bones.catalogue.estimate_skycoord_centre(sky_positions: astropy.coordinates.SkyCoord, final_frame: str = 'fk5') astropy.coordinates.SkyCoord

Estimate the central position of a set of positions by taking the mean of sky-coordinates in their XYZ geocentric frame. Quick approach not intended for accuracy.

Parameters:
  • sky_positions (SkyCoord) – A set of sky positions to get the rough center of

  • final_frame (str, optional) – The final frame to convert the mean position to. Defaults to “fk5”.

Returns:

The rough center position

Return type:

SkyCoord

cross_bones.catalogue.filter_table(table: astropy.table.Table, table_keys: TableKeys, min_snr: float = 10.0, min_iso: float = 36.0) numpy.typing.NDArray[numpy.bool_]

Filter radio components out of a radio catalogue based on their distance to neighbouring components, compactness, and optionally minimum SNR.

Parameters:
  • table (Table) – Aegean radio component catalogue

  • table_keys (TableKeys) – Table column keys

  • min_snr (float) – Minimum SNR of component. Default 10.

  • min_iso (float) – Minimum separation from a neighbour in arcsec. Default 30.

Returns:

Boolean array of components to keep.

Return type:

np.ndarray

cross_bones.catalogue.guess_sbid_and_field_racs(catalogue_path: str | pathlib.Path) tuple[int, str]

Attempt to extract the SBID and field name from a file path. The filenames assumes some deliminted name scheme, with ‘.’ as the field marker.

The field name is the second item, and it taken as it. The SBID is taken as the first field, and requires a ‘SB’ prefix.

Parameters:

catalogue_path (str | Path) – The file path to extract

Raises:

RuntimeError – Raised when a path does not follow expectations

Returns:

And SBID and field name

Return type:

tuple[int, str]

cross_bones.catalogue.load_catalogue(catalogue_path: pathlib.Path, table_keys: TableKeys, idx: int | None = None, min_snr: float = 5.0, min_iso: float = 36.0) Catalogue

Load a beam catalogue astropy table

Parameters:
  • catalogue_path (Path) – Path to load catalogue from

  • table_keys (TableKeys) – Table column keys

  • idx (int | None, optional) – Some optional identifier added to Catalogue. Defaults to None.

  • min_snr (float) – Minimum SNR of component. Default 10.

  • min_iso (float) – Minimum separation from a neighbour in arcsec. Default 30.

Returns:

Loaded catalogue

Return type:

Catalogue

cross_bones.catalogue.load_catalogues(catalogue_paths: Paths, table_keys: TableKeys, min_snr: float = 5.0, min_iso: float = 36.0) Catalogues

Load in all of the catalgues

cross_bones.catalogue.make_sky_coords(table: astropy.table.Table | Catalogue, ra_key: str = 'ra', dec_key: str = 'dec') astropy.coordinates.SkyCoord

Create the sky-coordinates from a cataloguue table

Parameters:
  • table (Table | Catalogue) – Loaded table or catalogue

  • ra_key (str) – RA column key name

  • dec_key (str) – DEC column key name

Returns:

Sky-positions loaded

Return type:

SkyCoord

cross_bones.catalogue.save_catalogue_shift_positions(catalogues: Catalogues, output_path: pathlib.Path | None = None) pathlib.Path
cross_bones.catalogue.Catalogues
cross_bones.catalogue.Paths