Discrete Coverage Simulation Overview #1
ryanketzner
started this conversation in
General
Replies: 0 comments
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
-
Step 1: Specify trajectory.
This could either mean:
Option 1: Specifying the initial state, start time, stop time, output frequency (or perhaps list of output time points), and model (e.g., SGP4). This object could be used to create the trajectory object in step 2 using the tools which conform to the object schema (i.e., orbitpy, tatc, etc).
Option 2: Specifying a trajectory object using input from a file (list of states and time points).
This ties into some of the discussion we have had already for specifying trajectories. In my view, option 2 should essentially be the "baseline," since it is both more general and less ambiguous. Option 1 should be another available option.
Step 2 (optional): Solve trajectory
Solve the trajectory according to the intitial state, start time, stop time,output frequency, and model. I think the output of this step would be a data structure containing a list of states/time point pairs. This should be the same data structure created in option 2 of the last step.
The Trajectory objects created by different tools could be compared. They should be essentially identical (except for rounding errors) if the model is well-defined (i.e., SGP4).
Step 3: Specify coverage grid
Create the grid object over which coverage will be computed. The grid object could either be created from a file or perhaps from a grid creation utility included with these tools.
Step 4: Specify sensor(s)
This would include a "SensorGeometry" object, which would be either conical, rectangular, or custom (spherical polygon). Then, there would also need to be a "Sensor" object, which also defines the sensor pointing condition. I think this sensor object would need some kind of "Attitude" object, defining the sensor attitude relative to the nadir-pointing frame. We might also want to be able to define an attitude trajectory rather than a fixed attitude, but that could be added later.
Step 5: Add sensor object(s) to satellite(s)
The "Satellite" object would have a list of sensor objects and a Trajectory object.
Step 4: Run coverage simulation
This would probably involve some type of "CoverageSimulation" object, which would have a list of Satellite objects and a grid object (perhaps a list of grid objects?). The output would be a list of "Coverage" objects (one for each satellite, or in the case of multiple grids, for each satellite-grid combo). The most basic format for the Coverage object would be a list of access intervals for each grid point.
Beta Was this translation helpful? Give feedback.
All reactions