imap-processing 0.6.0__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (398) hide show
  1. imap_processing/__init__.py +34 -0
  2. imap_processing/_version.py +3 -0
  3. imap_processing/ccsds/__init__.py +0 -0
  4. imap_processing/ccsds/ccsds_data.py +55 -0
  5. imap_processing/ccsds/excel_to_xtce.py +477 -0
  6. imap_processing/cdf/__init__.py +0 -0
  7. imap_processing/cdf/cdf_attribute_manager.py +322 -0
  8. imap_processing/cdf/config/imap_codice_global_cdf_attrs.yaml +212 -0
  9. imap_processing/cdf/config/imap_codice_l1a_variable_attrs.yaml +1358 -0
  10. imap_processing/cdf/config/imap_codice_l1b_variable_attrs.yaml +391 -0
  11. imap_processing/cdf/config/imap_constant_attrs.yaml +33 -0
  12. imap_processing/cdf/config/imap_default_global_cdf_attrs.yaml +17 -0
  13. imap_processing/cdf/config/imap_glows_global_cdf_attrs.yaml +41 -0
  14. imap_processing/cdf/config/imap_glows_l1a_variable_attrs.yaml +499 -0
  15. imap_processing/cdf/config/imap_glows_l1b_variable_attrs.yaml +334 -0
  16. imap_processing/cdf/config/imap_hi_global_cdf_attrs.yaml +51 -0
  17. imap_processing/cdf/config/imap_hi_variable_attrs.yaml +435 -0
  18. imap_processing/cdf/config/imap_hit_global_cdf_attrs.yaml +27 -0
  19. imap_processing/cdf/config/imap_hit_l1a_variable_attrs.yaml +493 -0
  20. imap_processing/cdf/config/imap_hit_l1b_variable_attrs.yaml +564 -0
  21. imap_processing/cdf/config/imap_idex_global_cdf_attrs.yaml +24 -0
  22. imap_processing/cdf/config/imap_idex_l1a_variable_attrs.yaml +426 -0
  23. imap_processing/cdf/config/imap_lo_global_cdf_attrs.yaml +90 -0
  24. imap_processing/cdf/config/imap_lo_l1a_variable_attrs.yaml +487 -0
  25. imap_processing/cdf/config/imap_lo_l1b_variable_attrs.yaml +121 -0
  26. imap_processing/cdf/config/imap_lo_l1c_variable_attrs.yaml +179 -0
  27. imap_processing/cdf/config/imap_mag_global_cdf_attrs.yaml +97 -0
  28. imap_processing/cdf/config/imap_mag_l1_variable_attrs.yaml +201 -0
  29. imap_processing/cdf/config/imap_swapi_global_cdf_attrs.yaml +33 -0
  30. imap_processing/cdf/config/imap_swapi_variable_attrs.yaml +137 -0
  31. imap_processing/cdf/config/imap_swe_global_cdf_attrs.yaml +24 -0
  32. imap_processing/cdf/config/imap_swe_l1a_variable_attrs.yaml +234 -0
  33. imap_processing/cdf/config/imap_swe_l1b_variable_attrs.yaml +273 -0
  34. imap_processing/cdf/config/imap_ultra_global_cdf_attrs.yaml +100 -0
  35. imap_processing/cdf/config/imap_ultra_l1a_variable_attrs.yaml +52 -0
  36. imap_processing/cdf/config/imap_ultra_l1b_variable_attrs.yaml +297 -0
  37. imap_processing/cdf/config/imap_ultra_l1c_variable_attrs.yaml +121 -0
  38. imap_processing/cdf/config/shared/default_global_cdf_attrs_schema.yaml +246 -0
  39. imap_processing/cdf/config/shared/default_variable_cdf_attrs_schema.yaml +466 -0
  40. imap_processing/cdf/imap_cdf_manager.py +64 -0
  41. imap_processing/cdf/utils.py +147 -0
  42. imap_processing/cli.py +863 -0
  43. imap_processing/codice/__init__.py +1 -0
  44. imap_processing/codice/codice_l0.py +54 -0
  45. imap_processing/codice/codice_l1a.py +558 -0
  46. imap_processing/codice/codice_l1b.py +194 -0
  47. imap_processing/codice/constants.py +986 -0
  48. imap_processing/codice/data/esa_sweep_values.csv +257 -0
  49. imap_processing/codice/data/lo_stepping_values.csv +129 -0
  50. imap_processing/codice/decompress.py +142 -0
  51. imap_processing/codice/packet_definitions/P_COD_NHK.xml +618 -0
  52. imap_processing/codice/packet_definitions/codice_packet_definition.xml +5073 -0
  53. imap_processing/codice/utils.py +95 -0
  54. imap_processing/decom.py +40 -0
  55. imap_processing/glows/__init__.py +1 -0
  56. imap_processing/glows/ancillary/l1b_conversion_table_v001.json +42 -0
  57. imap_processing/glows/l0/__init__.py +0 -0
  58. imap_processing/glows/l0/decom_glows.py +91 -0
  59. imap_processing/glows/l0/glows_l0_data.py +194 -0
  60. imap_processing/glows/l1a/glows_l1a.py +424 -0
  61. imap_processing/glows/l1a/glows_l1a_data.py +555 -0
  62. imap_processing/glows/l1b/glows_l1b.py +270 -0
  63. imap_processing/glows/l1b/glows_l1b_data.py +583 -0
  64. imap_processing/glows/packet_definitions/GLX_COMBINED.xml +254 -0
  65. imap_processing/glows/packet_definitions/P_GLX_TMSCDE.xml +97 -0
  66. imap_processing/glows/packet_definitions/P_GLX_TMSCHIST.xml +215 -0
  67. imap_processing/glows/utils/__init__.py +0 -0
  68. imap_processing/glows/utils/constants.py +105 -0
  69. imap_processing/hi/__init__.py +1 -0
  70. imap_processing/hi/l0/__init__.py +0 -0
  71. imap_processing/hi/l0/decom_hi.py +24 -0
  72. imap_processing/hi/l1a/__init__.py +0 -0
  73. imap_processing/hi/l1a/hi_l1a.py +73 -0
  74. imap_processing/hi/l1a/histogram.py +142 -0
  75. imap_processing/hi/l1a/housekeeping.py +27 -0
  76. imap_processing/hi/l1a/science_direct_event.py +341 -0
  77. imap_processing/hi/l1b/__init__.py +0 -0
  78. imap_processing/hi/l1b/hi_eng_unit_convert_table.csv +154 -0
  79. imap_processing/hi/l1b/hi_l1b.py +127 -0
  80. imap_processing/hi/l1c/__init__.py +0 -0
  81. imap_processing/hi/l1c/hi_l1c.py +228 -0
  82. imap_processing/hi/packet_definitions/__init__.py +0 -0
  83. imap_processing/hi/packet_definitions/hi_packet_definition.xml +482 -0
  84. imap_processing/hi/utils.py +27 -0
  85. imap_processing/hit/__init__.py +1 -0
  86. imap_processing/hit/l0/__init__.py +0 -0
  87. imap_processing/hit/l0/data_classes/housekeeping.py +240 -0
  88. imap_processing/hit/l0/data_classes/science_packet.py +259 -0
  89. imap_processing/hit/l0/decom_hit.py +467 -0
  90. imap_processing/hit/l0/utils/hit_base.py +57 -0
  91. imap_processing/hit/l1a/__init__.py +0 -0
  92. imap_processing/hit/l1a/hit_l1a.py +254 -0
  93. imap_processing/hit/l1b/hit_l1b.py +179 -0
  94. imap_processing/hit/packet_definitions/hit_packet_definitions.xml +1276 -0
  95. imap_processing/ialirt/__init__.py +0 -0
  96. imap_processing/ialirt/l0/__init__.py +0 -0
  97. imap_processing/ialirt/l0/process_hit.py +220 -0
  98. imap_processing/ialirt/packet_definitions/__init__.py +0 -0
  99. imap_processing/ialirt/packet_definitions/ialirt.xml +778 -0
  100. imap_processing/ialirt/packet_definitions/ialirt_hit.xml +186 -0
  101. imap_processing/idex/__init__.py +2 -0
  102. imap_processing/idex/idex_constants.py +27 -0
  103. imap_processing/idex/idex_l0.py +31 -0
  104. imap_processing/idex/idex_l1a.py +631 -0
  105. imap_processing/idex/packet_definitions/idex_packet_definition.xml +3162 -0
  106. imap_processing/lo/__init__.py +1 -0
  107. imap_processing/lo/l0/__init__.py +0 -0
  108. imap_processing/lo/l0/data_classes/science_direct_events.py +215 -0
  109. imap_processing/lo/l0/data_classes/star_sensor.py +98 -0
  110. imap_processing/lo/l0/decompression_tables/12_to_16_bit.csv +4097 -0
  111. imap_processing/lo/l0/decompression_tables/8_to_12_bit.csv +257 -0
  112. imap_processing/lo/l0/decompression_tables/8_to_16_bit.csv +257 -0
  113. imap_processing/lo/l0/decompression_tables/decompression_tables.py +75 -0
  114. imap_processing/lo/l0/lo_apid.py +15 -0
  115. imap_processing/lo/l0/lo_science.py +150 -0
  116. imap_processing/lo/l0/utils/binary_string.py +59 -0
  117. imap_processing/lo/l0/utils/bit_decompression.py +62 -0
  118. imap_processing/lo/l0/utils/lo_base.py +57 -0
  119. imap_processing/lo/l1a/__init__.py +0 -0
  120. imap_processing/lo/l1a/lo_l1a.py +157 -0
  121. imap_processing/lo/l1b/lo_l1b.py +160 -0
  122. imap_processing/lo/l1c/lo_l1c.py +180 -0
  123. imap_processing/lo/packet_definitions/lo_xtce.xml +3541 -0
  124. imap_processing/mag/__init__.py +2 -0
  125. imap_processing/mag/constants.py +108 -0
  126. imap_processing/mag/l0/decom_mag.py +170 -0
  127. imap_processing/mag/l0/mag_l0_data.py +118 -0
  128. imap_processing/mag/l1a/mag_l1a.py +317 -0
  129. imap_processing/mag/l1a/mag_l1a_data.py +1007 -0
  130. imap_processing/mag/l1b/__init__.py +0 -0
  131. imap_processing/mag/l1b/imap_calibration_mag_20240229_v01.cdf +0 -0
  132. imap_processing/mag/l1b/mag_l1b.py +125 -0
  133. imap_processing/mag/l1c/mag_l1c.py +57 -0
  134. imap_processing/mag/packet_definitions/MAG_SCI_COMBINED.xml +235 -0
  135. imap_processing/quality_flags.py +91 -0
  136. imap_processing/spice/__init__.py +1 -0
  137. imap_processing/spice/geometry.py +322 -0
  138. imap_processing/spice/kernels.py +459 -0
  139. imap_processing/spice/time.py +72 -0
  140. imap_processing/swapi/__init__.py +1 -0
  141. imap_processing/swapi/l1/__init__.py +0 -0
  142. imap_processing/swapi/l1/swapi_l1.py +685 -0
  143. imap_processing/swapi/l2/__init__.py +0 -0
  144. imap_processing/swapi/l2/swapi_l2.py +107 -0
  145. imap_processing/swapi/packet_definitions/__init__.py +0 -0
  146. imap_processing/swapi/packet_definitions/swapi_packet_definition.xml +708 -0
  147. imap_processing/swapi/swapi_utils.py +25 -0
  148. imap_processing/swe/__init__.py +1 -0
  149. imap_processing/swe/l1a/__init__.py +0 -0
  150. imap_processing/swe/l1a/swe_l1a.py +48 -0
  151. imap_processing/swe/l1a/swe_science.py +223 -0
  152. imap_processing/swe/l1b/engineering_unit_convert_table.csv +65 -0
  153. imap_processing/swe/l1b/swe_esa_lookup_table.csv +1441 -0
  154. imap_processing/swe/l1b/swe_l1b.py +49 -0
  155. imap_processing/swe/l1b/swe_l1b_science.py +557 -0
  156. imap_processing/swe/packet_definitions/__init__.py +0 -0
  157. imap_processing/swe/packet_definitions/swe_packet_definition.xml +303 -0
  158. imap_processing/swe/utils/__init__.py +0 -0
  159. imap_processing/swe/utils/swe_utils.py +9 -0
  160. imap_processing/tests/__init__.py +0 -0
  161. imap_processing/tests/ccsds/test_data/expected_output.xml +171 -0
  162. imap_processing/tests/ccsds/test_excel_to_xtce.py +285 -0
  163. imap_processing/tests/cdf/__init__.py +0 -0
  164. imap_processing/tests/cdf/imap_default_global_cdf_attrs.yaml +8 -0
  165. imap_processing/tests/cdf/shared/default_global_cdf_attrs_schema.yaml +246 -0
  166. imap_processing/tests/cdf/shared/default_variable_cdf_attrs_schema.yaml +466 -0
  167. imap_processing/tests/cdf/test_cdf_attribute_manager.py +353 -0
  168. imap_processing/tests/cdf/test_data/imap_default_global_test_cdf_attrs.yaml +7 -0
  169. imap_processing/tests/cdf/test_data/imap_instrument1_global_cdf_attrs.yaml +14 -0
  170. imap_processing/tests/cdf/test_data/imap_instrument1_level1_variable_attrs.yaml +23 -0
  171. imap_processing/tests/cdf/test_data/imap_instrument2_global_cdf_attrs.yaml +23 -0
  172. imap_processing/tests/cdf/test_data/imap_instrument2_level2_variable_attrs.yaml +30 -0
  173. imap_processing/tests/cdf/test_data/imap_test_global.yaml +26 -0
  174. imap_processing/tests/cdf/test_data/imap_test_variable.yaml +41 -0
  175. imap_processing/tests/cdf/test_imap_cdf_manager.py +62 -0
  176. imap_processing/tests/cdf/test_utils.py +109 -0
  177. imap_processing/tests/codice/__init__.py +0 -0
  178. imap_processing/tests/codice/conftest.py +56 -0
  179. imap_processing/tests/codice/data/eu_unit_lookup_table.csv +101 -0
  180. imap_processing/tests/codice/data/idle_export_eu.COD_NHK_20230822_122700 2.csv +100 -0
  181. imap_processing/tests/codice/data/idle_export_raw.COD_NHK_20230822_122700.csv +100 -0
  182. imap_processing/tests/codice/data/imap_codice_l0_hi-counters-aggregated_20240429_v001.pkts +0 -0
  183. imap_processing/tests/codice/data/imap_codice_l0_hi-counters-singles_20240429_v001.pkts +0 -0
  184. imap_processing/tests/codice/data/imap_codice_l0_hi-omni_20240429_v001.pkts +0 -0
  185. imap_processing/tests/codice/data/imap_codice_l0_hi-pha_20240429_v001.pkts +0 -0
  186. imap_processing/tests/codice/data/imap_codice_l0_hi-sectored_20240429_v001.pkts +0 -0
  187. imap_processing/tests/codice/data/imap_codice_l0_hskp_20100101_v001.pkts +0 -0
  188. imap_processing/tests/codice/data/imap_codice_l0_lo-counters-aggregated_20240429_v001.pkts +0 -0
  189. imap_processing/tests/codice/data/imap_codice_l0_lo-counters-singles_20240429_v001.pkts +0 -0
  190. imap_processing/tests/codice/data/imap_codice_l0_lo-nsw-angular_20240429_v001.pkts +0 -0
  191. imap_processing/tests/codice/data/imap_codice_l0_lo-nsw-priority_20240429_v001.pkts +0 -0
  192. imap_processing/tests/codice/data/imap_codice_l0_lo-nsw-species_20240429_v001.pkts +0 -0
  193. imap_processing/tests/codice/data/imap_codice_l0_lo-pha_20240429_v001.pkts +0 -0
  194. imap_processing/tests/codice/data/imap_codice_l0_lo-sw-angular_20240429_v001.pkts +0 -0
  195. imap_processing/tests/codice/data/imap_codice_l0_lo-sw-priority_20240429_v001.pkts +0 -0
  196. imap_processing/tests/codice/data/imap_codice_l0_lo-sw-species_20240429_v001.pkts +0 -0
  197. imap_processing/tests/codice/data/imap_codice_l1a_hi-counters-aggregated_20240429_v001.cdf +0 -0
  198. imap_processing/tests/codice/data/imap_codice_l1a_hi-counters-singles_20240429_v001.cdf +0 -0
  199. imap_processing/tests/codice/data/imap_codice_l1a_hi-omni_20240429_v001.cdf +0 -0
  200. imap_processing/tests/codice/data/imap_codice_l1a_hi-sectored_20240429_v001.cdf +0 -0
  201. imap_processing/tests/codice/data/imap_codice_l1a_hskp_20100101_v001.cdf +0 -0
  202. imap_processing/tests/codice/data/imap_codice_l1a_lo-counters-aggregated_20240429_v001.cdf +0 -0
  203. imap_processing/tests/codice/data/imap_codice_l1a_lo-counters-singles_20240429_v001.cdf +0 -0
  204. imap_processing/tests/codice/data/imap_codice_l1a_lo-nsw-angular_20240429_v001.cdf +0 -0
  205. imap_processing/tests/codice/data/imap_codice_l1a_lo-nsw-priority_20240429_v001.cdf +0 -0
  206. imap_processing/tests/codice/data/imap_codice_l1a_lo-nsw-species_20240429_v001.cdf +0 -0
  207. imap_processing/tests/codice/data/imap_codice_l1a_lo-sw-angular_20240429_v001.cdf +0 -0
  208. imap_processing/tests/codice/data/imap_codice_l1a_lo-sw-priority_20240429_v001.cdf +0 -0
  209. imap_processing/tests/codice/data/imap_codice_l1a_lo-sw-species_20240429_v001.cdf +0 -0
  210. imap_processing/tests/codice/data/imap_codice_l1b_hi-counters-aggregated_20240429_v001.cdf +0 -0
  211. imap_processing/tests/codice/data/imap_codice_l1b_hi-counters-singles_20240429_v001.cdf +0 -0
  212. imap_processing/tests/codice/data/imap_codice_l1b_hi-omni_20240429_v001.cdf +0 -0
  213. imap_processing/tests/codice/data/imap_codice_l1b_hi-sectored_20240429_v001.cdf +0 -0
  214. imap_processing/tests/codice/data/imap_codice_l1b_hskp_20100101_v001.cdf +0 -0
  215. imap_processing/tests/codice/data/imap_codice_l1b_lo-counters-aggregated_20240429_v001.cdf +0 -0
  216. imap_processing/tests/codice/data/imap_codice_l1b_lo-counters-singles_20240429_v001.cdf +0 -0
  217. imap_processing/tests/codice/data/imap_codice_l1b_lo-nsw-angular_20240429_v001.cdf +0 -0
  218. imap_processing/tests/codice/data/imap_codice_l1b_lo-nsw-priority_20240429_v001.cdf +0 -0
  219. imap_processing/tests/codice/data/imap_codice_l1b_lo-nsw-species_20240429_v001.cdf +0 -0
  220. imap_processing/tests/codice/data/imap_codice_l1b_lo-sw-angular_20240429_v001.cdf +0 -0
  221. imap_processing/tests/codice/data/imap_codice_l1b_lo-sw-priority_20240429_v001.cdf +0 -0
  222. imap_processing/tests/codice/data/imap_codice_l1b_lo-sw-species_20240429_v001.cdf +0 -0
  223. imap_processing/tests/codice/test_codice_l0.py +144 -0
  224. imap_processing/tests/codice/test_codice_l1a.py +187 -0
  225. imap_processing/tests/codice/test_codice_l1b.py +60 -0
  226. imap_processing/tests/codice/test_decompress.py +50 -0
  227. imap_processing/tests/conftest.py +372 -0
  228. imap_processing/tests/glows/direct_events_validation_data_l1a.csv +5704 -0
  229. imap_processing/tests/glows/glows_test_packet_20110921_v01.pkts +0 -0
  230. imap_processing/tests/glows/test_glows_decom.py +133 -0
  231. imap_processing/tests/glows/test_glows_l1a_cdf.py +85 -0
  232. imap_processing/tests/glows/test_glows_l1a_data.py +510 -0
  233. imap_processing/tests/glows/test_glows_l1b.py +348 -0
  234. imap_processing/tests/glows/test_glows_l1b_data.py +70 -0
  235. imap_processing/tests/hi/__init__.py +0 -0
  236. imap_processing/tests/hi/conftest.py +133 -0
  237. imap_processing/tests/hi/test_data/l0/20231030_H45_APP_NHK.bin +0 -0
  238. imap_processing/tests/hi/test_data/l0/20231030_H45_APP_NHK.csv +201 -0
  239. imap_processing/tests/hi/test_data/l0/20231030_H45_SCI_CNT.bin +0 -0
  240. imap_processing/tests/hi/test_data/l0/20231030_H45_SCI_DE.bin +0 -0
  241. imap_processing/tests/hi/test_data/l0/README.txt +54 -0
  242. imap_processing/tests/hi/test_decom.py +55 -0
  243. imap_processing/tests/hi/test_hi_l1b.py +31 -0
  244. imap_processing/tests/hi/test_hi_l1c.py +69 -0
  245. imap_processing/tests/hi/test_l1a.py +96 -0
  246. imap_processing/tests/hi/test_l1a_sci_de.py +72 -0
  247. imap_processing/tests/hi/test_utils.py +15 -0
  248. imap_processing/tests/hit/PREFLIGHT_raw_record_2023_256_15_59_04_apid1251.pkts +0 -0
  249. imap_processing/tests/hit/PREFLIGHT_raw_record_2023_256_15_59_04_apid1252.pkts +0 -0
  250. imap_processing/tests/hit/__init__.py +0 -0
  251. imap_processing/tests/hit/test_data/imap_hit_l0_hk_20100105_v001.pkts +0 -0
  252. imap_processing/tests/hit/test_data/sci_sample.ccsds +0 -0
  253. imap_processing/tests/hit/test_hit_decom.py +230 -0
  254. imap_processing/tests/hit/test_hit_l1a.py +224 -0
  255. imap_processing/tests/hit/test_hit_l1b.py +52 -0
  256. imap_processing/tests/hit/validation_data/hskp_sample_raw.csv +88 -0
  257. imap_processing/tests/ialirt/__init__.py +0 -0
  258. imap_processing/tests/ialirt/test_data/l0/IALiRT Raw Packet Telemetry.txt +33 -0
  259. imap_processing/tests/ialirt/test_data/l0/hit_ialirt_sample.ccsds +0 -0
  260. imap_processing/tests/ialirt/test_data/l0/hit_ialirt_sample.csv +1001 -0
  261. imap_processing/tests/ialirt/unit/__init__.py +0 -0
  262. imap_processing/tests/ialirt/unit/test_decom_ialirt.py +94 -0
  263. imap_processing/tests/ialirt/unit/test_process_hit.py +226 -0
  264. imap_processing/tests/idex/__init__.py +0 -0
  265. imap_processing/tests/idex/conftest.py +22 -0
  266. imap_processing/tests/idex/imap_idex_l0_raw_20230725_v001.pkts +0 -0
  267. imap_processing/tests/idex/impact_14_tof_high_data.txt +8189 -0
  268. imap_processing/tests/idex/test_idex_l0.py +45 -0
  269. imap_processing/tests/idex/test_idex_l1a.py +91 -0
  270. imap_processing/tests/lo/__init__.py +0 -0
  271. imap_processing/tests/lo/test_binary_string.py +21 -0
  272. imap_processing/tests/lo/test_bit_decompression.py +39 -0
  273. imap_processing/tests/lo/test_cdfs/imap_lo_l0_raw_20240627_v001.pkts +0 -0
  274. imap_processing/tests/lo/test_cdfs/imap_lo_l1a_de_20100101_v001.cdf +0 -0
  275. imap_processing/tests/lo/test_cdfs/imap_lo_l1a_spin_20100101_v001.cdf +0 -0
  276. imap_processing/tests/lo/test_cdfs/imap_lo_l1b_de_20100101_v001.cdf +0 -0
  277. imap_processing/tests/lo/test_lo_l1a.py +66 -0
  278. imap_processing/tests/lo/test_lo_l1b.py +74 -0
  279. imap_processing/tests/lo/test_lo_l1c.py +66 -0
  280. imap_processing/tests/lo/test_science_counts.py +41 -0
  281. imap_processing/tests/lo/test_science_direct_events.py +209 -0
  282. imap_processing/tests/lo/test_star_sensor.py +35 -0
  283. imap_processing/tests/mag/imap_mag_l1a_burst-magi_20231025_v001.cdf +0 -0
  284. imap_processing/tests/mag/mag_l0_test_data.pkts +0 -0
  285. imap_processing/tests/mag/mag_l0_test_output.csv +37 -0
  286. imap_processing/tests/mag/mag_l1_test_data.pkts +0 -0
  287. imap_processing/tests/mag/mag_l1a_test_output.csv +97 -0
  288. imap_processing/tests/mag/test_mag_decom.py +117 -0
  289. imap_processing/tests/mag/test_mag_l1a.py +856 -0
  290. imap_processing/tests/mag/test_mag_l1b.py +77 -0
  291. imap_processing/tests/mag/test_mag_l1c.py +40 -0
  292. imap_processing/tests/spice/__init__.py +0 -0
  293. imap_processing/tests/spice/test_data/imap_ena_sim_metakernel.template +4 -0
  294. imap_processing/tests/spice/test_data/imap_science_0001.tf +171 -0
  295. imap_processing/tests/spice/test_data/imap_sclk_0000.tsc +156 -0
  296. imap_processing/tests/spice/test_data/imap_sim_ck_2hr_2secsampling_with_nutation.bc +0 -0
  297. imap_processing/tests/spice/test_data/imap_simple_metakernel.template +3 -0
  298. imap_processing/tests/spice/test_data/imap_spk_demo.bsp +0 -0
  299. imap_processing/tests/spice/test_data/imap_wkcp.tf +1806 -0
  300. imap_processing/tests/spice/test_data/naif0012.tls +150 -0
  301. imap_processing/tests/spice/test_data/sim_1yr_imap_attitude.bc +0 -0
  302. imap_processing/tests/spice/test_data/sim_1yr_imap_pointing_frame.bc +0 -0
  303. imap_processing/tests/spice/test_geometry.py +214 -0
  304. imap_processing/tests/spice/test_kernels.py +272 -0
  305. imap_processing/tests/spice/test_time.py +35 -0
  306. imap_processing/tests/swapi/__init__.py +0 -0
  307. imap_processing/tests/swapi/conftest.py +16 -0
  308. imap_processing/tests/swapi/l0_data/__init__.py +0 -0
  309. imap_processing/tests/swapi/l0_data/imap_swapi_l0_raw_20231012_v001.pkts +0 -0
  310. imap_processing/tests/swapi/l0_validation_data/__init__.py +0 -0
  311. imap_processing/tests/swapi/l0_validation_data/idle_export_eu.SWP_AUT_20231012_125245.csv +124 -0
  312. imap_processing/tests/swapi/l0_validation_data/idle_export_eu.SWP_HK_20231012_125245.csv +98 -0
  313. imap_processing/tests/swapi/l0_validation_data/idle_export_eu.SWP_MG_20231012_125245.csv +9 -0
  314. imap_processing/tests/swapi/l0_validation_data/idle_export_eu.SWP_SCI_20231012_125245.csv +72 -0
  315. imap_processing/tests/swapi/l0_validation_data/idle_export_raw.SWP_AUT_20231012_125245.csv +124 -0
  316. imap_processing/tests/swapi/l0_validation_data/idle_export_raw.SWP_HK_20231012_125245.csv +98 -0
  317. imap_processing/tests/swapi/l0_validation_data/idle_export_raw.SWP_MG_20231012_125245.csv +9 -0
  318. imap_processing/tests/swapi/l0_validation_data/idle_export_raw.SWP_SCI_20231012_125245.csv +72 -0
  319. imap_processing/tests/swapi/test_swapi_decom.py +135 -0
  320. imap_processing/tests/swapi/test_swapi_l1.py +354 -0
  321. imap_processing/tests/swapi/test_swapi_l2.py +21 -0
  322. imap_processing/tests/swe/__init__.py +0 -0
  323. imap_processing/tests/swe/conftest.py +35 -0
  324. imap_processing/tests/swe/decompressed/20230927173238_4th_quarter_decompressed.csv +181 -0
  325. imap_processing/tests/swe/decompressed/20230927173253_1st_quarter_decompressed.csv +181 -0
  326. imap_processing/tests/swe/decompressed/20230927173308_2nd_quarter_decompressed.csv +181 -0
  327. imap_processing/tests/swe/decompressed/20230927173323_3rd_quarter_decompressed.csv +181 -0
  328. imap_processing/tests/swe/l0_data/2024051010_SWE_SCIENCE_packet.bin +0 -0
  329. imap_processing/tests/swe/l0_validation_data/idle_export_eu.SWE_SCIENCE_20240510_092742.csv +544 -0
  330. imap_processing/tests/swe/l0_validation_data/idle_export_raw.SWE_SCIENCE_20240510_092742.csv +363 -0
  331. imap_processing/tests/swe/test_swe_l1a.py +12 -0
  332. imap_processing/tests/swe/test_swe_l1a_science.py +129 -0
  333. imap_processing/tests/swe/test_swe_l1b.py +61 -0
  334. imap_processing/tests/swe/test_swe_l1b_science.py +65 -0
  335. imap_processing/tests/test_cli.py +229 -0
  336. imap_processing/tests/test_decom.py +66 -0
  337. imap_processing/tests/test_quality_flags.py +71 -0
  338. imap_processing/tests/test_utils.py +107 -0
  339. imap_processing/tests/ultra/__init__.py +0 -0
  340. imap_processing/tests/ultra/test_data/l0/FM45_40P_Phi28p5_BeamCal_LinearScan_phi28.50_theta-0.00_20240207T102740.CCSDS +0 -0
  341. imap_processing/tests/ultra/test_data/l0/FM45_7P_Phi0.0_BeamCal_LinearScan_phi0.04_theta-0.01_20230821T121304.CCSDS +0 -0
  342. imap_processing/tests/ultra/test_data/l0/FM45_TV_Cycle6_Hot_Ops_Front212_20240124T063837.CCSDS +0 -0
  343. imap_processing/tests/ultra/test_data/l0/Ultra45_EM_SwRI_Cal_Run7_ThetaScan_20220530T225054.CCSDS +0 -0
  344. imap_processing/tests/ultra/test_data/l0/ultra45_raw_sc_auxdata_Ultra45_EM_SwRI_Cal_Run7_ThetaScan_20220530T225054.csv +24 -0
  345. imap_processing/tests/ultra/test_data/l0/ultra45_raw_sc_enaphxtofhangimg_FM45_TV_Cycle6_Hot_Ops_Front212_20240124T063837.csv +105 -0
  346. imap_processing/tests/ultra/test_data/l0/ultra45_raw_sc_ultraimgrates_Ultra45_EM_SwRI_Cal_Run7_ThetaScan_20220530T225054.csv +24 -0
  347. imap_processing/tests/ultra/test_data/l0/ultra45_raw_sc_ultrarawimg_withFSWcalcs_FM45_40P_Phi28p5_BeamCal_LinearScan_phi2850_theta-000_20240207T102740.csv +3314 -0
  348. imap_processing/tests/ultra/test_data/l0/ultra45_raw_sc_ultrarawimgevent_FM45_7P_Phi00_BeamCal_LinearScan_phi004_theta-001_20230821T121304.csv +702 -0
  349. imap_processing/tests/ultra/unit/__init__.py +0 -0
  350. imap_processing/tests/ultra/unit/conftest.py +210 -0
  351. imap_processing/tests/ultra/unit/test_decom_apid_880.py +98 -0
  352. imap_processing/tests/ultra/unit/test_decom_apid_881.py +50 -0
  353. imap_processing/tests/ultra/unit/test_decom_apid_883.py +44 -0
  354. imap_processing/tests/ultra/unit/test_decom_apid_896.py +104 -0
  355. imap_processing/tests/ultra/unit/test_lookup_utils.py +68 -0
  356. imap_processing/tests/ultra/unit/test_ultra_l1a.py +338 -0
  357. imap_processing/tests/ultra/unit/test_ultra_l1b.py +122 -0
  358. imap_processing/tests/ultra/unit/test_ultra_l1b_annotated.py +57 -0
  359. imap_processing/tests/ultra/unit/test_ultra_l1b_extended.py +342 -0
  360. imap_processing/tests/ultra/unit/test_ultra_l1c.py +104 -0
  361. imap_processing/tests/ultra/unit/test_ultra_l1c_pset_bins.py +35 -0
  362. imap_processing/ultra/__init__.py +1 -0
  363. imap_processing/ultra/constants.py +60 -0
  364. imap_processing/ultra/l0/__init__.py +0 -0
  365. imap_processing/ultra/l0/decom_tools.py +281 -0
  366. imap_processing/ultra/l0/decom_ultra.py +278 -0
  367. imap_processing/ultra/l0/ultra_utils.py +326 -0
  368. imap_processing/ultra/l1a/__init__.py +0 -0
  369. imap_processing/ultra/l1a/ultra_l1a.py +319 -0
  370. imap_processing/ultra/l1b/badtimes.py +26 -0
  371. imap_processing/ultra/l1b/cullingmask.py +26 -0
  372. imap_processing/ultra/l1b/de.py +59 -0
  373. imap_processing/ultra/l1b/extendedspin.py +45 -0
  374. imap_processing/ultra/l1b/lookup_utils.py +165 -0
  375. imap_processing/ultra/l1b/ultra_l1b.py +65 -0
  376. imap_processing/ultra/l1b/ultra_l1b_annotated.py +54 -0
  377. imap_processing/ultra/l1b/ultra_l1b_extended.py +764 -0
  378. imap_processing/ultra/l1c/histogram.py +36 -0
  379. imap_processing/ultra/l1c/pset.py +36 -0
  380. imap_processing/ultra/l1c/ultra_l1c.py +52 -0
  381. imap_processing/ultra/l1c/ultra_l1c_pset_bins.py +54 -0
  382. imap_processing/ultra/lookup_tables/EgyNorm.mem.csv +32769 -0
  383. imap_processing/ultra/lookup_tables/FM45_Startup1_ULTRA_IMGPARAMS_20240719.csv +2 -0
  384. imap_processing/ultra/lookup_tables/ultra45_back-pos-luts.csv +4097 -0
  385. imap_processing/ultra/lookup_tables/ultra45_tdc_norm.csv +2050 -0
  386. imap_processing/ultra/lookup_tables/ultra90_back-pos-luts.csv +4097 -0
  387. imap_processing/ultra/lookup_tables/ultra90_tdc_norm.csv +2050 -0
  388. imap_processing/ultra/lookup_tables/yadjust.csv +257 -0
  389. imap_processing/ultra/packet_definitions/ULTRA_SCI_COMBINED.xml +547 -0
  390. imap_processing/ultra/packet_definitions/__init__.py +0 -0
  391. imap_processing/ultra/utils/__init__.py +0 -0
  392. imap_processing/ultra/utils/ultra_l1_utils.py +50 -0
  393. imap_processing/utils.py +413 -0
  394. imap_processing-0.6.0.dist-info/LICENSE +21 -0
  395. imap_processing-0.6.0.dist-info/METADATA +107 -0
  396. imap_processing-0.6.0.dist-info/RECORD +398 -0
  397. imap_processing-0.6.0.dist-info/WHEEL +4 -0
  398. imap_processing-0.6.0.dist-info/entry_points.txt +4 -0
@@ -0,0 +1,297 @@
1
+ default_attrs: &default
2
+ # Assumed values for all variable attrs unless overwritten
3
+ DEPEND_0: epoch
4
+ DISPLAY_TYPE: time_series
5
+ FILLVAL: -9223372036854775808
6
+ FORMAT: I19
7
+ VALIDMIN: 0
8
+ VALIDMAX: 9223372036854775807
9
+ VAR_TYPE: data
10
+
11
+ x_front:
12
+ <<: *default
13
+ CATDESC: x front position
14
+ FIELDNAM: Event x-position on front foil
15
+ LABLAXIS: x front position
16
+ # TODO: come back to format
17
+ UNITS: mm
18
+
19
+ y_front:
20
+ <<: *default
21
+ CATDESC: y front position
22
+ FIELDNAM: Event y-position on front foil
23
+ LABLAXIS: y front position
24
+ # TODO: come back to format
25
+ UNITS: mm
26
+
27
+ x_back:
28
+ <<: *default
29
+ CATDESC: x back position
30
+ FIELDNAM: x_back
31
+ LABLAXIS: x back position
32
+ # TODO: come back to format
33
+ UNITS: mm
34
+
35
+ y_back:
36
+ <<: *default
37
+ CATDESC: y back position
38
+ FIELDNAM: y_back
39
+ LABLAXIS: y back position
40
+ # TODO: come back to format
41
+ UNITS: mm
42
+
43
+ x_coin:
44
+ <<: *default
45
+ CATDESC: x coincidence position
46
+ FIELDNAM: x_coin
47
+ LABLAXIS: x coincidence position
48
+ # TODO: come back to format
49
+ UNITS: mm
50
+
51
+ tof_start_stop:
52
+ <<: *default
53
+ CATDESC: Particle time of flight from start to stop
54
+ FIELDNAM: tof_start_stop
55
+ LABLAXIS: tof start stop
56
+ # TODO: come back to format
57
+ UNITS: ns
58
+
59
+ tof_stop_coin:
60
+ <<: *default
61
+ CATDESC: Particle time of flight from stop to coincidence
62
+ FIELDNAM: tof_stop_coin
63
+ LABLAXIS: tof stop coin
64
+ # TODO: come back to format
65
+ UNITS: ns
66
+
67
+ tof_corrected:
68
+ <<: *default
69
+ CATDESC: Corrected time of flight
70
+ FIELDNAM: tof_corrected
71
+ LABLAXIS: tof corrected
72
+ # TODO: come back to format
73
+ UNITS: ns
74
+
75
+ eventtype:
76
+ <<: *default
77
+ CATDESC: Eventtype (1-2 top and bottom stop types; 8-15 ssd stop types)
78
+ FIELDNAM: eventtype
79
+ LABLAXIS: eventtype
80
+ # TODO: come back to format
81
+ UNITS: " "
82
+
83
+ vx_ultra:
84
+ <<: *default
85
+ CATDESC: Normalized component of the velocity vector in x direction in the instrument frame.
86
+ FIELDNAM: vx_ultra
87
+ LABLAXIS: vx ultra
88
+ # TODO: come back to format
89
+ UNITS: " "
90
+
91
+ vy_ultra:
92
+ <<: *default
93
+ CATDESC: Normalized component of the velocity vector in y direction in the instrument frame.
94
+ FIELDNAM: vy_ultra
95
+ LABLAXIS: vy ultra
96
+ # TODO: come back to format
97
+ UNITS: " "
98
+
99
+ vz_ultra:
100
+ <<: *default
101
+ CATDESC: Normalized component of the velocity vector in z direction in the instrument frame.
102
+ FIELDNAM: vz_ultra
103
+ LABLAXIS: vz ultra
104
+ # TODO: come back to format
105
+ UNITS: " "
106
+
107
+ energy:
108
+ <<: *default
109
+ CATDESC: Energy measured using the pulse height from the stop anode (DN) or Energy measured using the SSD (keV) depending on eventtype.
110
+ FIELDNAM: energy
111
+ LABLAXIS: energy
112
+ # TODO: come back to format
113
+ UNITS: keV
114
+
115
+ species:
116
+ <<: *default
117
+ CATDESC: Species bin.
118
+ FIELDNAM: species
119
+ LABLAXIS: species
120
+ # TODO: come back to format
121
+ UNITS: " "
122
+
123
+ event_efficiency:
124
+ <<: *default
125
+ CATDESC: Estimated event efficiency for this path through the instrument.
126
+ FIELDNAM: event_efficiency
127
+ LABLAXIS: event efficiency
128
+ # TODO: come back to format
129
+ UNITS: " "
130
+
131
+ vx_sc:
132
+ <<: *default
133
+ CATDESC: Normalized component of the velocity vector in x direction in the spacecraft frame.
134
+ FIELDNAM: vx_sc
135
+ LABLAXIS: vx sc
136
+ # TODO: come back to format
137
+ UNITS: " "
138
+
139
+ vy_sc:
140
+ <<: *default
141
+ CATDESC: Normalized component of the velocity vector in y direction in the spacecraft frame.
142
+ FIELDNAM: vy_sc
143
+ LABLAXIS: vy sc
144
+ # TODO: come back to format
145
+ UNITS: " "
146
+
147
+ vz_sc:
148
+ <<: *default
149
+ CATDESC: Normalized component of the velocity vector in z direction in the spacecraft frame.
150
+ FIELDNAM: vz_sc
151
+ LABLAXIS: vz sc
152
+ # TODO: come back to format
153
+ UNITS: " "
154
+
155
+ vx_dps_sc:
156
+ <<: *default
157
+ CATDESC: Normalized component of the velocity vector in x direction in the DPS frame at rest WRT spacecraft (velocity w/ spacecraft frame subtracted)
158
+ FIELDNAM: vx_dps_sc
159
+ LABLAXIS: vx dps sc
160
+ # TODO: come back to format
161
+ UNITS: " "
162
+
163
+ vy_dps_sc:
164
+ <<: *default
165
+ CATDESC: Normalized component of the velocity vector in y direction in the DPS frame at rest WRT spacecraft (velocity w/ spacecraft frame subtracted)
166
+ FIELDNAM: vy_dps_sc
167
+ LABLAXIS: vy dps sc
168
+ # TODO: come back to format
169
+ UNITS: " "
170
+
171
+ vz_dps_sc:
172
+ <<: *default
173
+ CATDESC: Normalized component of the velocity vector in z direction in the DPS frame at rest WRT spacecraft (velocity w/ spacecraft frame subtracted)
174
+ FIELDNAM: vz_dps_sc
175
+ LABLAXIS: vz dps sc
176
+ # TODO: come back to format
177
+ UNITS: " "
178
+
179
+ vx_dps_helio:
180
+ <<: *default
181
+ CATDESC: Normalized component of the velocity vector in x direction in the DPS frame at rest WRT heliosphere.
182
+ FIELDNAM: vx_dps_helio
183
+ LABLAXIS: vx dps helio
184
+ # TODO: come back to format
185
+ UNITS: " "
186
+
187
+ vy_dps_helio:
188
+ <<: *default
189
+ CATDESC: Normalized component of the velocity vector in y direction in the DPS frame at rest WRT heliosphere.
190
+ FIELDNAM: vy_dps_helio
191
+ LABLAXIS: vy dps helio
192
+ # TODO: come back to format
193
+ UNITS: " "
194
+
195
+ vz_dps_helio:
196
+ <<: *default
197
+ CATDESC: Normalized component of the velocity vector in z direction in the DPS frame at rest WRT heliosphere.
198
+ FIELDNAM: vz_dps_helio
199
+ LABLAXIS: vz dps helio
200
+ # TODO: come back to format
201
+ UNITS: " "
202
+
203
+ eventtimes:
204
+ <<: *default
205
+ CATDESC: Event times calculated from event and universal spin table.
206
+ FIELDNAM: eventtimes
207
+ LABLAXIS: event times
208
+ # TODO: come back to format
209
+ UNITS: " "
210
+
211
+ spin_number:
212
+ <<: *default
213
+ CATDESC: Spin number from Universal Spin Table.
214
+ FIELDNAM: spin_number
215
+ LABLAXIS: spin_number
216
+ # TODO: come back to format
217
+ UNITS: " "
218
+
219
+ spin_start_time:
220
+ <<: *default
221
+ CATDESC: Spin start time from Universal Spin Table.
222
+ FIELDNAM: spin_start_time
223
+ LABLAXIS: spin start time
224
+ # TODO: come back to format
225
+ UNITS: s
226
+
227
+ avg_spin_period:
228
+ <<: *default
229
+ CATDESC: Average spin period from Universal Spin Table.
230
+ FIELDNAM: avg_spin_period
231
+ LABLAXIS: avg_spin_period
232
+ # TODO: come back to format
233
+ UNITS: s
234
+
235
+ rate_start_pulses:
236
+ <<: *default
237
+ CATDESC: Rate of start pulses (/s).
238
+ FIELDNAM: rate_start_pulses
239
+ LABLAXIS: rate start pulses
240
+ # TODO: come back to format
241
+ UNITS: 1/s
242
+
243
+ rate_stop_pulses:
244
+ <<: *default
245
+ CATDESC: Rate of stop pulses (/s).
246
+ FIELDNAM: rate_stop_pulses
247
+ LABLAXIS: rate stop pulses
248
+ # TODO: come back to format
249
+ UNITS: 1/s
250
+
251
+ rate_coin_pulses:
252
+ <<: *default
253
+ CATDESC: Rate of coincidence pulses (/s).
254
+ FIELDNAM: rate_coin_pulses
255
+ LABLAXIS: rate coincidence pulses
256
+ # TODO: come back to format
257
+ UNITS: 1/s
258
+
259
+ rate_processed_events:
260
+ <<: *default
261
+ CATDESC: Rate of processed events (/s).
262
+ FIELDNAM: rate_processed_events
263
+ LABLAXIS: rate processed events
264
+ # TODO: come back to format
265
+ UNITS: 1/s
266
+
267
+ rate_rejected_events:
268
+ <<: *default
269
+ CATDESC: Rate of rejected events (/s).
270
+ FIELDNAM: rate_rejected_events
271
+ LABLAXIS: rate rejected events
272
+ # TODO: come back to format
273
+ UNITS: 1/s
274
+
275
+ quality_hk:
276
+ <<: *default
277
+ CATDESC: Spin filter derived from Ultra housekeeping. Bitwise flagging used to filter the spin.
278
+ FIELDNAM: quality_hk
279
+ LABLAXIS: quality hk
280
+ # TODO: come back to format
281
+ UNITS: " "
282
+
283
+ quality_attitude:
284
+ <<: *default
285
+ CATDESC: Spin filter derived from IMAP attitude. Bitwise flagging used to filter the spin.
286
+ FIELDNAM: quality_attitude
287
+ LABLAXIS: quality attitude
288
+ # TODO: come back to format
289
+ UNITS: " "
290
+
291
+ quality_instruments:
292
+ <<: *default
293
+ CATDESC: Spin filter derived from instruments other than Ultra. Bitwise flagging used to filter the spin.
294
+ FIELDNAM: quality_instruments
295
+ LABLAXIS: quality instruments
296
+ # TODO: come back to format
297
+ UNITS: " "
@@ -0,0 +1,121 @@
1
+ default_attrs: &default
2
+ # Assumed values for all variable attrs unless overwritten
3
+ DEPEND_0: epoch
4
+ DISPLAY_TYPE: time_series
5
+ FILLVAL: -9223372036854775808
6
+ FORMAT: I12
7
+ VALIDMIN: -9223372036854775808
8
+ VALIDMAX: 9223372036854775807
9
+ VAR_TYPE: data
10
+
11
+ spin_angle:
12
+ <<: *default
13
+ CATDESC: Angular bin defined by central location of the bin
14
+ FIELDNAM: spin_angle
15
+ LABLAXIS: spin angle
16
+ # TODO: come back to format
17
+ UNITS: degrees
18
+
19
+ esa_step:
20
+ <<: *default
21
+ CATDESC: ESA step (0-10), nominally 9, but possibly 8 or 10, 0 is likely a background test. Energy bin.
22
+ FIELDNAM: esa_step
23
+ LABLAXIS: esa step
24
+ # TODO: come back to format
25
+ UNITS: " "
26
+
27
+ time_bin:
28
+ <<: *default
29
+ CATDESC: Time bin defined by central location of the bin.
30
+ FIELDNAM: time_bin
31
+ LABLAXIS: time bin
32
+ # TODO: come back to format
33
+ UNITS: seconds
34
+
35
+ species_bin:
36
+ <<: *default
37
+ CATDESC: Species bin defined by central location.
38
+ FIELDNAM: species_bin
39
+ LABLAXIS: species bin
40
+ # TODO: come back to format
41
+ UNITS: " "
42
+
43
+ exposure_times:
44
+ <<: *default
45
+ CATDESC: Exposure time for a spin.
46
+ FIELDNAM: exposure_times
47
+ LABLAXIS: exposure times
48
+ # TODO: come back to format
49
+ UNITS: seconds
50
+
51
+ sensitivity:
52
+ <<: *default
53
+ CATDESC: Calibration/sensitivity factor.
54
+ FIELDNAM: sensitivity
55
+ LABLAXIS: sensitivity
56
+ # TODO: come back to format
57
+ UNITS: counts/second
58
+
59
+ counts:
60
+ <<: *default
61
+ CATDESC: Counts for a spin.
62
+ FIELDNAM: counts
63
+ LABLAXIS: counts
64
+ # TODO: come back to format
65
+ UNITS: counts
66
+
67
+ background_rates:
68
+ <<: *default
69
+ CATDESC: Background rates. Background dominated by accidentals caused by a combination of UV light and misregistered low energy ENA events.
70
+ FIELDNAM: background_rates
71
+ LABLAXIS: background rates
72
+ # TODO: come back to format
73
+ UNITS: counts/second
74
+
75
+ sid:
76
+ <<: *default
77
+ CATDESC: Science ID (always totals 8).
78
+ FIELDNAM: sid
79
+ LABLAXIS: sid
80
+ # TODO: come back to format
81
+ UNITS: " "
82
+
83
+ row:
84
+ <<: *default
85
+ CATDESC: Row number.
86
+ FIELDNAM: row
87
+ LABLAXIS: row
88
+ # TODO: come back to format
89
+ UNITS: " "
90
+
91
+ column:
92
+ <<: *default
93
+ CATDESC: Column number.
94
+ FIELDNAM: column
95
+ LABLAXIS: column
96
+ # TODO: come back to format
97
+ UNITS: " "
98
+
99
+ spin:
100
+ <<: *default
101
+ CATDESC: Spin number at integration start.
102
+ FIELDNAM: spin
103
+ LABLAXIS: spin
104
+ # TODO: come back to format
105
+ UNITS: " "
106
+
107
+ shcoarse:
108
+ <<: *default
109
+ CATDESC: CCSDS packet timestamp.
110
+ FIELDNAM: shcoarse
111
+ LABLAXIS: shcoarse
112
+ # TODO: come back to format
113
+ UNITS: seconds
114
+
115
+ packetdata:
116
+ <<: *default
117
+ CATDESC: A 2D numpy array representing pixel values. Each pixel is stored as an unsigned 16-bit integer.
118
+ FIELDNAM: packetdata
119
+ LABLAXIS: packet data
120
+ # TODO: come back to format
121
+ UNITS: " "
@@ -0,0 +1,246 @@
1
+ DOI:
2
+ description: >
3
+ DOI is a persistent Unique Digital Identifier with the form
4
+ https://doi.org/<PREFIX>/<SUFFIX> with the <PREFIX> identifying the DOI
5
+ registration authority and the <SUFFIX> identifying the dataset. The DOI should point to
6
+ a landing page for additional information about the dataset. DOIs are typically created by
7
+ the SPASE naming authority or archive.
8
+ default: null
9
+ required: false # NOT Required in ISTP Guide (Recommended)
10
+ validate: true # include in validation
11
+ overwrite: false
12
+ Data_level:
13
+ description: >
14
+ This attribute is used in file name creation and records the level of processsing done
15
+ on the dataset. For HERMES the following are valid values:
16
+ - l0>Level 0
17
+ - l1>Level 1
18
+ - l2>Level 2
19
+ - l3>Level 3
20
+ - l4>Level 4
21
+ - ql>Quicklook
22
+ default: null
23
+ required: true # NOT Required in ISTP Guide (Derived)
24
+ validate: false
25
+ overwrite: true
26
+ Data_product_descriptor:
27
+ description: >
28
+ This is an optional field that may not be needed for all products. Where it is used, identifier
29
+ should be short (e.q. 3-8 characters) descriptors that are helpful to end- users. If a
30
+ descriptor contains multiple components, underscores are used to separate those components.
31
+ default: null
32
+ required: false # NOT Required in ISTP Guide (Derived)
33
+ validate: false
34
+ overwrite: true
35
+ Data_type:
36
+ description: >
37
+ This attribute is used by CDF file writing software to create a filename. It is a
38
+ combination of the following filename components: mode, data level, and optional data
39
+ product descriptor.
40
+ default: null
41
+ required: false # NOT Required in ISTP Guide (Derived)
42
+ validate: false
43
+ overwrite: true
44
+ Data_version:
45
+ description: >
46
+ This attribute identifies the version of a particular CDF data file.
47
+ default: null
48
+ required: true
49
+ validate: true
50
+ overwrite: false
51
+ Descriptor:
52
+ description: >
53
+ This attribute identifies the name of the instrument or sensor that collected the data. Both
54
+ a long name and a short name are given. For any data file, only a single value is allowed.
55
+ For HERMES, the following are valid values:
56
+ - EEA>Electron Electrostatic Analyzer
57
+ - MERIT>Miniaturized Electron pRoton Telescope
58
+ - NEMISIS> Noise Eliminating Magnetometer In a Small Integrated System
59
+ - SPAN-I>Solar Probe Analyzer for Ions
60
+ default: null
61
+ required: true
62
+ validate: true
63
+ overwrite: false
64
+ Discipline:
65
+ description: >
66
+ This attribute describes both the science discipline and sub discipline. For HERMES,
67
+ this value should always be "Space Physics>Magnetospheric Science."
68
+ default: Space Physics>Magnetospheric Science
69
+ required: true
70
+ validate: true
71
+ overwrite: false
72
+ File_naming_convention:
73
+ description: >
74
+ If File_naming_convention was not set, it uses default setting:
75
+ source_datatype_descriptor_yyyyMMdd
76
+ default: source_datatype_descriptor_yyyyMMdd
77
+ required: false
78
+ validate: false
79
+ overwrite: true
80
+ Generation_date:
81
+ description: >
82
+ Date stamps the creation of the file using the syntax yyyymmdd, e.g., "
83
+ default: null
84
+ required: false # NOT Required in ISTP Guide (Recommended)
85
+ validate: true
86
+ overwrite: true
87
+ HTTP_LINK:
88
+ description: >
89
+ The 'HTTP_LINK', 'LINK_TEXT', and 'LINK_TITLE' attributes store the URL with a
90
+ description of this dataset at the HERMES SDC. The use of HTTP_LINK attribute requires
91
+ the existence and equal number of corresponding LINK_TEXT and LINK_TITLE attributes.
92
+ If text is not needed for these attributes, use an empty string "".
93
+ default: null
94
+ required: false # NOT Required in ISTP Guide (Recommended)
95
+ validate: true
96
+ overwrite: false
97
+ Instrument_mode:
98
+ description: >
99
+ TBS
100
+ default: null
101
+ required: false # NOT Required in ISTP Guide (Derived)
102
+ validate: false
103
+ overwrite: false
104
+ Instrument_type:
105
+ description: >
106
+ This attribute is used to facilitate making choices of instrument type. More than one entry
107
+ is allowed. Acceptable values for HERMES include:
108
+ - Magnetic Fields (space)
109
+ - Particles (space)
110
+ - Plasma and Solar Wind
111
+ - Ephemeris -> Ephemeris/Attitude/Ancillary
112
+ default: null
113
+ required: true
114
+ validate: true
115
+ overwrite: false
116
+ LINK_TEXT:
117
+ description: >
118
+ The 'HTTP_LINK', 'LINK_TEXT', and 'LINK_TITLE' attributes store the URL with a
119
+ description of this dataset at the HERMES SDC. The use of HTTP_LINK attribute requires
120
+ the existence and equal number of corresponding LINK_TEXT and LINK_TITLE attributes.
121
+ If text is not needed for these attributes, use an empty string "".
122
+ default: null
123
+ required: false # NOT Required in ISTP Guide (Recommended)
124
+ validate: true
125
+ overwrite: false
126
+ LINK_TITLE:
127
+ description: >
128
+ The 'HTTP_LINK', 'LINK_TEXT', and 'LINK_TITLE' attributes store the URL with a
129
+ description of this dataset at the HERMES SDC. The use of HTTP_LINK attribute requires
130
+ the existence and equal number of corresponding LINK_TEXT and LINK_TITLE attributes.
131
+ If text is not needed for these attributes, use an empty string "".
132
+ default: null
133
+ required: false # NOT Required in ISTP Guide (Recommended)
134
+ validate: true
135
+ overwrite: false
136
+ Logical_file_id:
137
+ description: >
138
+ This attribute stores the name of the CDF file but without the
139
+ file extension (e.g. ".cdf"). This attribute is required to avoid loss of the original source
140
+ in the case of accidental (or intentional) renaming.
141
+ default: null
142
+ required: true
143
+ validate: true
144
+ overwrite: true
145
+ Logical_source:
146
+ description: >
147
+ This attribute determines the file naming convention in the SKT Editor and is used by
148
+ CDA Web. It is composed of the following values:
149
+ - source_name - (e.g. spacecraft identifier)
150
+ - descriptor - (e.g. instrument identifier - see Section Error! Reference source not
151
+ found.)
152
+ - data_type - (e.g. mode, data level, and optional data product descriptor - value
153
+ come from 'Data_type' attribute)
154
+ default: null
155
+ required: true
156
+ validate: true
157
+ overwrite: true
158
+ Logical_source_description:
159
+ description: >
160
+ This attribute writes out the full words associated with the encrypted Logical_source
161
+ above, e.g., "Level 1 Dual Electron Spectrometer Survey Data". Users on CDAWeb see
162
+ this value on their website.
163
+ default: null
164
+ required: true
165
+ validate: true
166
+ overwrite: true
167
+ MODS:
168
+ description: >
169
+ This attribute is an SPDF standard global attribute, which is used to denote the history of
170
+ modifications made to the CDF data set. The MODS attribute should contain a
171
+ description of all significant changes to the data set, essentially capturing a log of high-
172
+ level release notes. This attribute can have as many entries as necessary and should be
173
+ updated if the Interface Number ("X") of the version number changes.
174
+ default: null
175
+ required: false # NOT Required in ISTP Guide (Recommended)
176
+ validate: true
177
+ overwrite: false
178
+ Mission_group:
179
+ description: >
180
+ This attribute has a single value and is used to facilitate making choices of source through
181
+ CDAWeb. This value should be "HERMES."
182
+ default: HERMES
183
+ required: true
184
+ validate: true
185
+ overwrite: false
186
+ PI_affiliation:
187
+ description: >
188
+ This attribute value should include the HERMES mission PI affiliation followed by a
189
+ comma-separated list of any Co-I affiliations that are responsible for this particular
190
+ dataset. The following are valid HERMES values, of which the abbreviations should be
191
+ used exclusively within this attribute value, and the full text of the affiliation included in
192
+ the general 'text' attribute as it is used solely in plot labels.
193
+ - GSFC - Goddard Space Flight Center
194
+ - UCB - University of California, Berkeley
195
+ - SSL - Space Sciences Laboratory, UCB
196
+ - UM - University of Michigan
197
+ default: null
198
+ required: true
199
+ validate: true
200
+ overwrite: false
201
+ PI_name:
202
+ description: >
203
+ This attribute value should include first initial and last name of the HERMES mission PI
204
+ followed by a comma-separated list of any Co-Is that are responsible for this particular
205
+ dataset.
206
+ default: null
207
+ required: true
208
+ validate: true
209
+ overwrite: false
210
+ Project:
211
+ description: >
212
+ This attribute identifies the name of the project and indicates ownership. For HERMES,
213
+ this value should be "STP>Solar-Terrestrial Physics".
214
+ default: STP>Solar-Terrestrial Physics
215
+ required: true
216
+ validate: true
217
+ overwrite: false
218
+ Source_name:
219
+ description: >
220
+ This attribute identifies the observatory where the data originated. The following are
221
+ valid values for HERMES:
222
+ - HERMES>Heliophysics Environmental and Radiation Measurement Experiment Suite
223
+ default: HERMES>Heliophysics Environmental and Radiation Measurement Experiment Suite
224
+ required: true
225
+ validate: true
226
+ overwrite: false
227
+ Start_time:
228
+ description: >
229
+ The start time of the contained data given in YYYYMMDD_hhmmss
230
+ default: null
231
+ required: false # NOT Required in ISTP Guide (Derived)
232
+ validate: false
233
+ overwrite: true
234
+ TEXT:
235
+ description: >
236
+ This attribute is an SPDF standard global attribute, which is a text description of the
237
+ experiment whose data is included in the CDF. A reference to a journal article(s) or to a
238
+ World Wide Web page describing the experiment is essential and constitutes the
239
+ minimum requirement. A written description of the data set is also desirable. This
240
+ attribute can have as many entries as necessary to contain the desired information.
241
+ Typically, this attribute is about a paragraph in length and is not shown on CDAWeb.
242
+ CDAWeb is the web portal for access to SPDF data, available at https://cdaweb.gsfc.nasa.gov.
243
+ default: null
244
+ required: true
245
+ validate: true
246
+ overwrite: false