libgs_ops.scheduling.CommsPass

class libgs_ops.scheduling.CommsPass(pass_data, desc=None, nid=None, horizon=0, comms=[], listen=False, **kwargs)[source]

Class to hold a communications pass.

A CommsPass is defined as a pass data (az, el, range_rate) schedule with associated set of communications and actions.

Arbitrary metadata (must be picklable) can also be added to the object.

Parameters:
  • pass_data (DataFrame) – Dataframe with at least az, el, range_rate columns
  • nid (int) – Norad ID to associate with pass. Can be left empty if pass_data has a .nid field.
  • horizon (float) – The lowest acceptable elevation for the pass. Pass_data will be cropped to the horizon
  • comms (list, optional) – List of communications (can be added with add_communications instead)
  • listen (bool, optional) – Whether it is a listen pass or not
  • tle (str, optional) – The TLE used for computing pass_data
  • protocol (str, optional) – The protocol to use during the pass
  • **kwargs – Any other key=value pair to pass to scheduler to be logged (added to the metadata)

Methods

add_communication(comm, **kwargs) Add a communication to the pass.
change_time(tstamp) Modify the pass data start time.
copy() Create a copy of the class instance.
from_dict(d) Classmethod to create CommsPass object from a python dict.
from_json(data) Classmethod to Create CommsPass from a json string or from a json file.
overlaps(other[, buffertime]) Check if current pass overlaps with another pass.
plot() Visualise the pass.
to_dict() Convert class to a python dictionary.
to_json() Convert the class to JSON representation.

Attributes

metadata Dictionary of metdata associated with the Communication Pass

Inherited from base class