goes_ortho.geometry#

Geometry functions for GOES-R ABI imagery

geometry.ABIangle2LonLat(x, y, H, req, rpol, lon_0_deg)[source]#

Computes the latitude and longitude (degrees) of a ground point given GOES-R ABI Fixed Grid image coordinates

Parameters
  • x (float) – coordinate in the ABI Fixed Grid, scan angle [radians]

  • y (float) – coordinate in the ABI Fixed Grid, elevation angle [radians]

  • H (float) – satellite distance to Earth center [km]

  • req (float) – Earth semi-major axis of GRS80 ellipsoid (equatorial radius) [km]

  • rpol (float) – Earth semi-minor axis of GRS80 ellipsoid (polar radius) [km]

  • lon_0_deg (float) – longitude of projection origin (longitude of sub-satellite point) [degrees]

Returns

  • lon (float) – longitude of ground point [degrees]

  • lat (float) – latitude of ground point [degrees]

Examples

geometry.LonLat2ABIangle(lon_deg, lat_deg, z, H, req, rpol, e, lon_0_deg)[source]#

Computes the GOES-R ABI Fixed Grid image coordinates given latitude and longitude (degrees) of a ground point.

Parameters
  • lon_deg (float) – longitude of ground point [degrees]

  • lat_deg (float) – latitude of ground point [degrees]

  • z (float) – elevation of ground point above GRS80 ellipsoid [meters]

  • H (float) – satellite distance to Earth center [km]

  • req (float) – Earth semi-major axis of GRS80 ellipsoid (equatorial radius) [km]

  • rpol (float) – Earth semi-minor axis of GRS80 ellipsoid (polar radius) [km]

  • e (float) – eccentricity of ellipsoid (e=0.0818191910435 for GRS80) [unitless]

  • lon_0_deg (float) – longitude of projection origin (longitude of sub-satellite point) [degrees]

Returns

  • x (float) – ABI Fixed Grid x coordinate (scan angle) [radians]

  • y (float) – ABI Fixed Grid y coordinate (elevation angle) [radians]

Examples

geometry.calcLookAngles(lon_deg, lat_deg, lon_0_deg)[source]#

Calculate azimuth and elevation angles for a geostationary satellite viewed from Earth’s surface.

Parameters
  • lon_deg (float) – longitude of ground point [degrees]

  • lat_deg (float) – latitude of ground point [degrees]

  • lon_0_deg (float) – longitude of projection origin (longitude of sub-satellite point) [degrees]

Returns

  • az (float) – azimuth angle [degrees]

  • el (float) – elevation angle [degrees]

Examples

geometry.get_nested_coords(ds, x_rad, y_rad)[source]#

Given the coordinates of a single point in the ABI Fixed Grid coordinates (x_rad and y_rad, in radians) find within a GOES ABI-L1b-Rad dataset, (any of the 2km bands) the coordinates of the nearest “2 km” (56 urad) pixel center, the coordinates of each of the pixel centers of the four “1 km” (28 urad) pixels, and the sixteen “500 m” (14 urad) pixels that are nested within the “2 km” pixel.

Parameters
  • ds (xarray.Dataset) – xarray dataset read from a GOES ABI-L1b-Rad NetCDF file of any of the “2 km” bands

  • x_rad (float) – x coordinate in the ABI Fixed Grid, scan angle [radians]

  • y_rad (float) – y coordinate in the ABI Fixed Grid, elevation angle [radians]

Returns

  • nearest_xs_2km (float) – pixel-centered x coordinate of 2km pixel

  • nearest_ys_2km (float) – pixel-centered y coordinate of 2km pixel

  • nearest_xs_1km (float) – pixel-centered x coordinates of nested 1km pixels

  • nearest_ys_1km (float) – pixel-centered y coordinates of nested 1km pixels

  • nearest_xs_500m (float) – pixel-centered x coordinates of nested 500 m pixels

  • nearest_ys_500m (float) – pixel-centered y coordinates of nested 500 m pixels

Examples

geometry.goes_azi(lat_ssp, lon_ssp, lat, lon)[source]#

Compute azimuth for geostationary satellite, not GOES specific, spherical Earth assumption. See also: http://tiij.org/issues/issues/3_2/3_2e.html

Parameters
  • lat_ssp (float) – sub-satellite point latitude [degrees]

  • lon_ssp (float) – sub-satellite point longitude [degrees]

  • lat (float) – view point latitude on Earth’s surfaace [degrees]

  • lon (float) – view point longitude on Earth’s surface [degrees]

Returns

azi – azimuth angle [degrees]

Return type

float

Examples

geometry.goes_lza(lat_ssp, lon_ssp, lat, lon, H=42164.16, r_eq=6378.137)[source]#

Compute the Locan Zenith Angle for a point on Earth surface to a GOES-R geostationary satellite. See more details from NOAA here: https://www.ncdc.noaa.gov/sites/default/files/attachments/GOES-R_ABI_local_zenith_angle_description.docx

Parameters
  • lat_ssp (float) – sub-satellite point latitude [degrees]

  • lon_ssp (float) – sub-satellite point longitude [degrees]

  • lat (float) – view point latitude on Earth’s surfaace [degrees]

  • lon (float) – view point longitude on Earth’s surface [degrees]

  • elev (float) – view point elevation (heigh above GRS80 ellispoid) [km]

  • H (float) – satellite distance to Earth center [km] (defaults to 42164.16 km)

  • r_eq (float) – Earth semi-major axis (GRS80 ellipsoid) [km] (defaults to 6378.137 km)

Returns

  • LZA (float) – local zenith angle [degrees]

  • is_point_visible (bool) – True/False flag indicating if the ground point is actually visible to the satellite

Examples