From f3bdd86d733055ad8628f1b71faa7692bbdb0f79 Mon Sep 17 00:00:00 2001 From: Bruce Flynn <brucef@ssec.wisc.edu> Date: Wed, 5 May 2021 11:21:20 -0500 Subject: [PATCH] add module for EOS utils --- edosl0util/eos.py | 41 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 41 insertions(+) create mode 100644 edosl0util/eos.py diff --git a/edosl0util/eos.py b/edosl0util/eos.py new file mode 100644 index 0000000..c420a94 --- /dev/null +++ b/edosl0util/eos.py @@ -0,0 +1,41 @@ +""" NASA EOS mission specific data + +References: + 1. MODIS Command, Telemetry, Science and Engineering Description, + Document Number 151840, May 1997, Appendix C + https://directreadout.sci.gsfc.nasa.gov/documents/satellite_gen/MODIS_UG.pdf +""" + +packet_types = { + 0: "day", + 1: "night", + 2: "eng1", + 4: "eng2", +} + +packet_sources = { + 0: "solar-diff", + 1: "srca-cal", + 2: "bb-cal", + 3: "space-cal", +} + +packets_per_scan = { + "day": 3032, + "night": 326, +} + +def sourceid(p): + if p.data[0] >> 7 == 0: + return "earthdata" + return packet_source[p.data[0] >> 5 & 0x3] + +def mirrorside(p): + return ["side1", "side2"][bytes(p.secondary_header)[8] & 0x1] + +def scancount(p): + return bytes(p.secondary_header)[8] >> 1 & 0x7 + +def pkttype(p): + return packet_types[bytes(p.secondary_header)[8] >> 4 & 0x7] + -- GitLab