I’m looking to understand when a satellite footprint will be over various regions of the world. For sake of this discussion, let’s assume countries. I can load the country borders (from somewhere like https://www.naturalearthdata.com/) and build my footprint detector but the detector does not seem to properly record when it’s inview of the country. My satellite has a relatively small footprint, near-nadir pointing, so I need something of reasonably high fidelity to catch the edge cases
In some cases it completely misses the country. In others detects the entry border, only to detect the exit condition minutes before the satellite actually leaves the border.
I have used the GeographicZoneDetector, which works much better, but misses the satellite’s FoV.
I do understand there is a limit to the sampling distance for the FootprintOverlapDetector. I believe hipparchus has an underlying limit of 1,000 sample points. So for the large areas, I end up computing the sampling distance backwards out from the country’s area.
I’ve considered the following solutions:
- sample all the areas and simply use a multitude of detectors for each. I’m concerned about runtime
- slice my large areas into smaller pieces. Perhaps intersect my countries with a 10-degree lat/lon box or something, and run a detector for each of those.
- Propagate to a very small time-step and check the FieldOfView using the resulting SpacecraftState myself.
Each of those three options concern me in various ways, so before I ran down one (or more) of them, I thought I’d check here. Does anyone have a recommendation, or a better idea, for tackling this problem?