tle.gex - GrADS Extension Library for TLE-based Satellite Orbit Masking


NAME

tle.gex - GrADS Extension Library for TLE-based Satellite Orbit Masking


SYNOPSIS

GrADS Commands:

run set_tle PARAM VALUE - Set internal parameters

run tle_track TLEFILE - Plot satellite orbits

GrADS Function:

display tle_mask(EXPR,TLEFILE[,SWATH_WIDTH|SWATH_LEFT,SWATH_RIGHT[,dS]]) - Mask EXPR according to orbit


DESCRIPTION

This library provides GrADS extensions (gex) for simulating satellite orbits and masking gridded variables according to these orbits. The calculation in this extension is meant to be a simulation of the satellite orbit for research purposes and should not be used for forecasting real satellite overpasses. This calculation is based on Two-line Element (TLE) data using the SGP4 algorithm.

This GrADS extension is based on SGP4 procedures for analytical propagation of a satellite trajectory. The code was originally released in the 1980 and 1986 spacetrack papers. A detailed discussion of the theory and history may be found in the 2006 AIAA paper by Vallado, Crawford, Hujsak, and Kelso. Consult also the book "Fundamentals of Astrodynamics and Applications" (2007) by David Vallado.

GrADS datasets are given on a constant time interval. For a given GrADS time index t, satellite orbits can be simulated for the interval from t-0.5 to t+0.5. During this period the satellite describe a ground track which can be plotted with the command tle_track. With function tle_mask() one can mask gridded variables by setting to undefined those gridpoints which were not visited by the satellite, with the possibility of specifying the swath width and halo gridpoints.

When combined with a compression algorithm (such as in GRIB), satellite masked variables can use considerabily less storage space.


TLE FILES

A NORAD two-line element set consists of two 69-character lines of data which can be used together with NORAD's SGP4/SDP4 orbital model to determine the position and velocity of the associated satellite. More detailed information about TLE files, including description of the format, can be obtained from:

http://celestrak.com/columns/v04n03/

Sample TLE files are shipped with the OpenGrADS Bundle under the GrADS Data directory (GADDIR). Additional TLE files can be found at these sites:

http://celestrak.com

http://www.space-track.org


EXAMPLES

Plotting orbits

One can plot lines depicting the satellite ground track with the tle_track command:

 ga-> open model
 ga-> d ts
 ga-> tle_track aqua.tle

Instead of lines, one can also use marks to plot the ground track,

 ga-> set_tle mark 6
 ga-> tle_track aqua.tle

Masking variables according to satelite orbits

This example shows how to set to undefined all grid points which have not been visited by the satellite. For a given GrADS time index t, the satellite ground track is computed from t-0.5 to t+0.5 and this simulated ground track is used to mask a variable:

 ga-> open model
 ga-> define xts = re(ts,0.5) # higher resolution version
 ga-> set gxout grfill
 ga-> d tle_mask(xts,aqua.tle)

By default, the variable is masked according to the satellite ground track. However, it is also possible to specify the swath width (in km),

 ga-> d tle_mask(xts,aqua.tle,300)

You can also specify a halo, that is, additional gridpoints around the mask:

 ga-> set_tle halo 2
 ga-> d tle_mask(xts,aqua.tle)

Halos are useful for interpolating gridded values to observation locations.


COMANDS PROVIDED

set_tle PARAM VALUE

This command can be use to set several internal paramers, namely

set_tle DT TIMESTEP_IN_SECS

Specify the timestep in seconds used to simulate the ground track. For example, a timestep of 60 seconds will cause of the (longitude,latitude) of the ground track to be computed every minute.

set_tle MARK MARK_TYPE

Specify the the type of mark used to plot the ground track. By default, MARK_TYPE=-1, and straight lines are used to plot the ground track. Other possibles values for MARK_TYPE are:

  1 - plus sign
  2 - open circle (default)
  3 - closed circle
  4 - open square
  5 - closed square
  6 - multiplication sign
  7 - open diamond
  8 - open triangle
  9 - closed triangle
 10 - open circle with vertical bar
 11 - closed circle with vertical bar
set_tle IHALO LEFT[,RIGHT]

Specify the number of zonal gridpoints to extend an orbital mask with. The parameter LEFT is the number of gridpoints west of the mask, while RIGHT is the number of gridpoints east of the mask. When RIGHT is missing it is set the same as LEFT.

set_tle JHALO BELOW[,ABOVE]

Specify the number of meridional gridpoints to extend an orbital mask with. The parameter BELOW is the number of gridpoints south of the mask, while ABOVE is the number of gridpoints to the north of the mask. When ABOVE is missing it is set the same as BELOW.

set_tle HALO LEFT[,RIGHT]

Specify the number of meridional and zonal gridpoints to extend an orbital mask with. The parameter LEFT is the number of gridpoints to the west/south of the mask, while RIGHT is the number of gridpoints to the east/north of the mask. When RIGHT is missing it is set the same as LEFT.

tle_track TLEFILE

This command plots the ground track for a satellite given a TLE file. For a given GrADS time index t, the satellite ground track is computed from t-0.5 to t+0.5. This ground track is meant to be a simulation of the satellite orbit and should not be used for forecasting real satellite overpasses.

TLEFILE

Two-line element file name.


FUNCTIONS PROVIDED

tle_mask(EXPR,TLEFILE[,SWATH_WIDTH|SWATH_LEFT,SWATH_RIGHT[,dS]])

This function masks out those grind points which have not been visited by the satellite from grads time index t-0.5 to time index t+0.5. On can optionally specify a swath width.

EXPR

GrADS expressions to be masked

TLEFILE

Two-line element (TLE) file name.

SWATH_WIDTH

Width of the swath in kilometers, centered around the ground track. This gives SWATH_WIDTH/2 kilometers to the left/right of the ground track. Default is 0 (no swath).

SWATH_LEFT,SWATH_RIGHT

Width of the swath in kilometers to the left and right of the satellite ground track. Default is 0 (no swath).

dS

Swath resolution, in kilometers. Default is 10 km.


SEE ALSO


AUTHORS

Arlindo da Silva (dasilva@opengrads.org) and Arif Albayrak.


COPYRIGHT

This extension has been placed in the public domain.

This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

 tle.gex - GrADS Extension Library for TLE-based Satellite Orbit Masking