imap-processing 0.11.0__py3-none-any.whl → 0.12.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.

Potentially problematic release.


This version of imap-processing might be problematic. Click here for more details.

Files changed (288) hide show
  1. imap_processing/__init__.py +10 -11
  2. imap_processing/_version.py +2 -2
  3. imap_processing/ccsds/excel_to_xtce.py +65 -16
  4. imap_processing/cdf/config/imap_codice_global_cdf_attrs.yaml +6 -28
  5. imap_processing/cdf/config/imap_codice_l1a_variable_attrs.yaml +365 -42
  6. imap_processing/cdf/config/imap_glows_global_cdf_attrs.yaml +0 -5
  7. imap_processing/cdf/config/imap_hi_global_cdf_attrs.yaml +10 -11
  8. imap_processing/cdf/config/imap_hi_variable_attrs.yaml +17 -19
  9. imap_processing/cdf/config/imap_hit_global_cdf_attrs.yaml +26 -13
  10. imap_processing/cdf/config/imap_hit_l1a_variable_attrs.yaml +106 -116
  11. imap_processing/cdf/config/imap_hit_l1b_variable_attrs.yaml +120 -145
  12. imap_processing/cdf/config/imap_hit_l2_variable_attrs.yaml +14 -0
  13. imap_processing/cdf/config/imap_idex_global_cdf_attrs.yaml +6 -9
  14. imap_processing/cdf/config/imap_idex_l1a_variable_attrs.yaml +1 -1
  15. imap_processing/cdf/config/imap_lo_global_cdf_attrs.yaml +0 -12
  16. imap_processing/cdf/config/imap_lo_l1a_variable_attrs.yaml +1 -1
  17. imap_processing/cdf/config/imap_mag_global_cdf_attrs.yaml +9 -21
  18. imap_processing/cdf/config/imap_mag_l1a_variable_attrs.yaml +361 -0
  19. imap_processing/cdf/config/imap_mag_l1b_variable_attrs.yaml +160 -0
  20. imap_processing/cdf/config/imap_mag_l1c_variable_attrs.yaml +160 -0
  21. imap_processing/cdf/config/imap_spacecraft_global_cdf_attrs.yaml +18 -0
  22. imap_processing/cdf/config/imap_spacecraft_variable_attrs.yaml +40 -0
  23. imap_processing/cdf/config/imap_swapi_global_cdf_attrs.yaml +1 -5
  24. imap_processing/cdf/config/imap_swe_global_cdf_attrs.yaml +12 -4
  25. imap_processing/cdf/config/imap_swe_l1a_variable_attrs.yaml +16 -2
  26. imap_processing/cdf/config/imap_swe_l1b_variable_attrs.yaml +48 -52
  27. imap_processing/cdf/config/imap_swe_l2_variable_attrs.yaml +71 -47
  28. imap_processing/cdf/config/imap_ultra_global_cdf_attrs.yaml +2 -14
  29. imap_processing/cdf/config/imap_ultra_l1b_variable_attrs.yaml +51 -2
  30. imap_processing/cdf/config/imap_ultra_l1c_variable_attrs.yaml +29 -14
  31. imap_processing/cdf/utils.py +13 -7
  32. imap_processing/cli.py +23 -8
  33. imap_processing/codice/codice_l1a.py +207 -85
  34. imap_processing/codice/constants.py +1322 -568
  35. imap_processing/codice/decompress.py +2 -6
  36. imap_processing/ena_maps/ena_maps.py +480 -116
  37. imap_processing/ena_maps/utils/coordinates.py +19 -0
  38. imap_processing/ena_maps/utils/map_utils.py +14 -17
  39. imap_processing/ena_maps/utils/spatial_utils.py +45 -47
  40. imap_processing/hi/l1a/hi_l1a.py +24 -18
  41. imap_processing/hi/l1a/histogram.py +0 -1
  42. imap_processing/hi/l1a/science_direct_event.py +6 -8
  43. imap_processing/hi/l1b/hi_l1b.py +31 -39
  44. imap_processing/hi/l1c/hi_l1c.py +405 -17
  45. imap_processing/hi/utils.py +58 -12
  46. imap_processing/hit/ancillary/imap_hit_l1b-to-l2-standard-dt0-factors_20250219_v002.csv +205 -0
  47. imap_processing/hit/ancillary/imap_hit_l1b-to-l2-standard-dt1-factors_20250219_v002.csv +205 -0
  48. imap_processing/hit/ancillary/imap_hit_l1b-to-l2-standard-dt2-factors_20250219_v002.csv +205 -0
  49. imap_processing/hit/ancillary/imap_hit_l1b-to-l2-standard-dt3-factors_20250219_v002.csv +205 -0
  50. imap_processing/hit/ancillary/imap_hit_l1b-to-l2-summed-dt0-factors_20250219_v002.csv +68 -0
  51. imap_processing/hit/hit_utils.py +173 -1
  52. imap_processing/hit/l0/constants.py +20 -11
  53. imap_processing/hit/l0/decom_hit.py +18 -4
  54. imap_processing/hit/l1a/hit_l1a.py +45 -54
  55. imap_processing/hit/l1b/constants.py +317 -0
  56. imap_processing/hit/l1b/hit_l1b.py +367 -18
  57. imap_processing/hit/l2/constants.py +281 -0
  58. imap_processing/hit/l2/hit_l2.py +614 -0
  59. imap_processing/hit/packet_definitions/hit_packet_definitions.xml +1323 -71
  60. imap_processing/ialirt/l0/mag_l0_ialirt_data.py +155 -0
  61. imap_processing/ialirt/l0/parse_mag.py +246 -0
  62. imap_processing/ialirt/l0/process_swe.py +252 -0
  63. imap_processing/ialirt/packet_definitions/ialirt.xml +7 -3
  64. imap_processing/ialirt/packet_definitions/ialirt_mag.xml +115 -0
  65. imap_processing/ialirt/utils/grouping.py +114 -0
  66. imap_processing/ialirt/utils/time.py +29 -0
  67. imap_processing/idex/atomic_masses.csv +22 -0
  68. imap_processing/idex/decode.py +2 -2
  69. imap_processing/idex/idex_constants.py +25 -0
  70. imap_processing/idex/idex_l1a.py +6 -7
  71. imap_processing/idex/idex_l1b.py +4 -31
  72. imap_processing/idex/idex_l2a.py +789 -0
  73. imap_processing/idex/idex_variable_unpacking_and_eu_conversion.csv +39 -33
  74. imap_processing/lo/l0/lo_science.py +6 -0
  75. imap_processing/lo/l1a/lo_l1a.py +0 -1
  76. imap_processing/lo/l1b/lo_l1b.py +177 -25
  77. imap_processing/mag/constants.py +8 -0
  78. imap_processing/mag/imap_mag_sdc-configuration_v001.yaml +6 -0
  79. imap_processing/mag/l0/decom_mag.py +10 -3
  80. imap_processing/mag/l1a/mag_l1a.py +22 -11
  81. imap_processing/mag/l1a/mag_l1a_data.py +28 -3
  82. imap_processing/mag/l1b/mag_l1b.py +190 -48
  83. imap_processing/mag/l1c/interpolation_methods.py +211 -0
  84. imap_processing/mag/l1c/mag_l1c.py +447 -9
  85. imap_processing/quality_flags.py +1 -0
  86. imap_processing/spacecraft/packet_definitions/scid_x252.xml +538 -0
  87. imap_processing/spacecraft/quaternions.py +123 -0
  88. imap_processing/spice/geometry.py +16 -19
  89. imap_processing/spice/repoint.py +120 -0
  90. imap_processing/swapi/l1/swapi_l1.py +4 -0
  91. imap_processing/swapi/l2/swapi_l2.py +0 -1
  92. imap_processing/swe/l1a/swe_l1a.py +47 -8
  93. imap_processing/swe/l1a/swe_science.py +5 -2
  94. imap_processing/swe/l1b/swe_l1b_science.py +103 -56
  95. imap_processing/swe/l2/swe_l2.py +60 -65
  96. imap_processing/swe/packet_definitions/swe_packet_definition.xml +1121 -1
  97. imap_processing/swe/utils/swe_constants.py +63 -0
  98. imap_processing/swe/utils/swe_utils.py +85 -28
  99. imap_processing/tests/ccsds/test_data/expected_output.xml +40 -1
  100. imap_processing/tests/ccsds/test_excel_to_xtce.py +23 -20
  101. imap_processing/tests/cdf/test_data/imap_instrument2_global_cdf_attrs.yaml +0 -2
  102. imap_processing/tests/codice/conftest.py +1 -1
  103. imap_processing/tests/codice/data/validation/imap_codice_l1a_hi-counters-aggregated_20241110193700_v0.0.0.cdf +0 -0
  104. imap_processing/tests/codice/data/validation/imap_codice_l1a_hi-counters-singles_20241110193700_v0.0.0.cdf +0 -0
  105. imap_processing/tests/codice/data/validation/imap_codice_l1a_hi-ialirt_20241110193700_v0.0.0.cdf +0 -0
  106. imap_processing/tests/codice/data/validation/imap_codice_l1a_hi-omni_20241110193700_v0.0.0.cdf +0 -0
  107. imap_processing/tests/codice/data/validation/imap_codice_l1a_hi-pha_20241110193700_v0.0.0.cdf +0 -0
  108. imap_processing/tests/codice/data/validation/imap_codice_l1a_hi-priorities_20241110193700_v0.0.0.cdf +0 -0
  109. imap_processing/tests/codice/data/validation/imap_codice_l1a_hi-sectored_20241110193700_v0.0.0.cdf +0 -0
  110. imap_processing/tests/codice/data/validation/imap_codice_l1a_lo-counters-aggregated_20241110193700_v0.0.0.cdf +0 -0
  111. imap_processing/tests/codice/data/validation/imap_codice_l1a_lo-counters-singles_20241110193700_v0.0.0.cdf +0 -0
  112. imap_processing/tests/codice/data/validation/imap_codice_l1a_lo-ialirt_20241110193700_v0.0.0.cdf +0 -0
  113. imap_processing/tests/codice/data/validation/imap_codice_l1a_lo-nsw-angular_20241110193700_v0.0.0.cdf +0 -0
  114. imap_processing/tests/codice/data/validation/imap_codice_l1a_lo-nsw-priority_20241110193700_v0.0.0.cdf +0 -0
  115. imap_processing/tests/codice/data/validation/imap_codice_l1a_lo-nsw-species_20241110193700_v0.0.0.cdf +0 -0
  116. imap_processing/tests/codice/data/validation/imap_codice_l1a_lo-pha_20241110193700_v0.0.0.cdf +0 -0
  117. imap_processing/tests/codice/data/validation/imap_codice_l1a_lo-sw-angular_20241110193700_v0.0.0.cdf +0 -0
  118. imap_processing/tests/codice/data/validation/imap_codice_l1a_lo-sw-priority_20241110193700_v0.0.0.cdf +0 -0
  119. imap_processing/tests/codice/data/validation/imap_codice_l1a_lo-sw-species_20241110193700_v0.0.0.cdf +0 -0
  120. imap_processing/tests/codice/test_codice_l1a.py +110 -46
  121. imap_processing/tests/codice/test_decompress.py +4 -4
  122. imap_processing/tests/conftest.py +166 -10
  123. imap_processing/tests/ena_maps/conftest.py +51 -0
  124. imap_processing/tests/ena_maps/test_ena_maps.py +638 -109
  125. imap_processing/tests/ena_maps/test_map_utils.py +66 -43
  126. imap_processing/tests/ena_maps/test_spatial_utils.py +16 -20
  127. imap_processing/tests/hi/data/l0/H45_diag_fee_20250208.bin +0 -0
  128. imap_processing/tests/hi/data/l0/H45_diag_fee_20250208_verify.csv +205 -0
  129. imap_processing/tests/hi/test_hi_l1b.py +12 -15
  130. imap_processing/tests/hi/test_hi_l1c.py +234 -6
  131. imap_processing/tests/hi/test_l1a.py +30 -0
  132. imap_processing/tests/hi/test_science_direct_event.py +1 -1
  133. imap_processing/tests/hi/test_utils.py +24 -2
  134. imap_processing/tests/hit/helpers/l1_validation.py +39 -39
  135. imap_processing/tests/hit/test_data/hskp_sample.ccsds +0 -0
  136. imap_processing/tests/hit/test_data/imap_hit_l0_raw_20100105_v001.pkts +0 -0
  137. imap_processing/tests/hit/test_decom_hit.py +4 -0
  138. imap_processing/tests/hit/test_hit_l1a.py +24 -28
  139. imap_processing/tests/hit/test_hit_l1b.py +304 -40
  140. imap_processing/tests/hit/test_hit_l2.py +454 -0
  141. imap_processing/tests/hit/test_hit_utils.py +112 -2
  142. imap_processing/tests/hit/validation_data/hskp_sample_eu_3_6_2025.csv +89 -0
  143. imap_processing/tests/hit/validation_data/hskp_sample_raw.csv +89 -88
  144. imap_processing/tests/ialirt/test_data/l0/461971383-404.bin +0 -0
  145. imap_processing/tests/ialirt/test_data/l0/461971384-405.bin +0 -0
  146. imap_processing/tests/ialirt/test_data/l0/461971385-406.bin +0 -0
  147. imap_processing/tests/ialirt/test_data/l0/461971386-407.bin +0 -0
  148. imap_processing/tests/ialirt/test_data/l0/461971387-408.bin +0 -0
  149. imap_processing/tests/ialirt/test_data/l0/461971388-409.bin +0 -0
  150. imap_processing/tests/ialirt/test_data/l0/461971389-410.bin +0 -0
  151. imap_processing/tests/ialirt/test_data/l0/461971390-411.bin +0 -0
  152. imap_processing/tests/ialirt/test_data/l0/461971391-412.bin +0 -0
  153. imap_processing/tests/ialirt/test_data/l0/sample_decoded_i-alirt_data.csv +383 -0
  154. imap_processing/tests/ialirt/unit/test_grouping.py +81 -0
  155. imap_processing/tests/ialirt/unit/test_parse_mag.py +168 -0
  156. imap_processing/tests/ialirt/unit/test_process_swe.py +208 -3
  157. imap_processing/tests/ialirt/unit/test_time.py +16 -0
  158. imap_processing/tests/idex/conftest.py +62 -6
  159. imap_processing/tests/idex/test_data/imap_idex_l0_raw_20231218_v001.pkts +0 -0
  160. imap_processing/tests/idex/test_data/impact_14_tof_high_data.txt +4508 -4508
  161. imap_processing/tests/idex/test_idex_l1a.py +48 -4
  162. imap_processing/tests/idex/test_idex_l1b.py +3 -3
  163. imap_processing/tests/idex/test_idex_l2a.py +383 -0
  164. imap_processing/tests/lo/test_cdfs/imap_lo_l1a_de_20241022_v002.cdf +0 -0
  165. imap_processing/tests/lo/test_cdfs/imap_lo_l1a_spin_20241022_v002.cdf +0 -0
  166. imap_processing/tests/lo/test_lo_l1b.py +148 -4
  167. imap_processing/tests/lo/test_lo_science.py +1 -0
  168. imap_processing/tests/mag/conftest.py +69 -0
  169. imap_processing/tests/mag/test_mag_decom.py +1 -1
  170. imap_processing/tests/mag/test_mag_l1a.py +38 -0
  171. imap_processing/tests/mag/test_mag_l1b.py +34 -53
  172. imap_processing/tests/mag/test_mag_l1c.py +251 -20
  173. imap_processing/tests/mag/test_mag_validation.py +109 -25
  174. imap_processing/tests/mag/validation/L1b/T009/MAGScience-normal-(2,2)-8s-20250204-16h39.csv +17 -0
  175. imap_processing/tests/mag/validation/L1b/T009/mag-l1a-l1b-t009-magi-out.csv +16 -16
  176. imap_processing/tests/mag/validation/L1b/T009/mag-l1a-l1b-t009-mago-out.csv +16 -16
  177. imap_processing/tests/mag/validation/L1b/T010/MAGScience-normal-(2,2)-8s-20250206-12h05.csv +17 -0
  178. imap_processing/tests/mag/validation/L1b/T011/MAGScience-normal-(2,2)-8s-20250204-16h08.csv +17 -0
  179. imap_processing/tests/mag/validation/L1b/T011/mag-l1a-l1b-t011-magi-out.csv +16 -16
  180. imap_processing/tests/mag/validation/L1b/T011/mag-l1a-l1b-t011-mago-out.csv +16 -16
  181. imap_processing/tests/mag/validation/L1b/T012/MAGScience-normal-(2,2)-8s-20250204-16h08.csv +17 -0
  182. imap_processing/tests/mag/validation/L1b/T012/data.bin +0 -0
  183. imap_processing/tests/mag/validation/L1b/T012/field_like_all_ranges.txt +19200 -0
  184. imap_processing/tests/mag/validation/L1b/T012/mag-l1a-l1b-t012-cal.cdf +0 -0
  185. imap_processing/tests/mag/validation/L1b/T012/mag-l1a-l1b-t012-in.csv +17 -0
  186. imap_processing/tests/mag/validation/L1b/T012/mag-l1a-l1b-t012-magi-out.csv +17 -0
  187. imap_processing/tests/mag/validation/L1b/T012/mag-l1a-l1b-t012-mago-out.csv +17 -0
  188. imap_processing/tests/mag/validation/imap_calibration_mag_20240229_v01.cdf +0 -0
  189. imap_processing/tests/spacecraft/__init__.py +0 -0
  190. imap_processing/tests/spacecraft/data/SSR_2024_190_20_08_12_0483851794_2_DA_apid0594_1packet.pkts +0 -0
  191. imap_processing/tests/spacecraft/test_quaternions.py +71 -0
  192. imap_processing/tests/spice/test_data/fake_repoint_data.csv +5 -0
  193. imap_processing/tests/spice/test_geometry.py +6 -9
  194. imap_processing/tests/spice/test_repoint.py +111 -0
  195. imap_processing/tests/swapi/test_swapi_l1.py +7 -3
  196. imap_processing/tests/swe/l0_data/2024051010_SWE_HK_packet.bin +0 -0
  197. imap_processing/tests/swe/l0_data/2024051011_SWE_CEM_RAW_packet.bin +0 -0
  198. imap_processing/tests/swe/l0_validation_data/idle_export_eu.SWE_APP_HK_20240510_092742.csv +49 -0
  199. imap_processing/tests/swe/l0_validation_data/idle_export_eu.SWE_CEM_RAW_20240510_092742.csv +593 -0
  200. imap_processing/tests/swe/test_swe_l1a.py +18 -0
  201. imap_processing/tests/swe/test_swe_l1a_cem_raw.py +52 -0
  202. imap_processing/tests/swe/test_swe_l1a_hk.py +68 -0
  203. imap_processing/tests/swe/test_swe_l1b_science.py +23 -4
  204. imap_processing/tests/swe/test_swe_l2.py +112 -30
  205. imap_processing/tests/test_cli.py +2 -2
  206. imap_processing/tests/test_utils.py +138 -16
  207. imap_processing/tests/ultra/data/l0/FM45_UltraFM45_Functional_2024-01-22T0105_20240122T010548.CCSDS +0 -0
  208. imap_processing/tests/ultra/data/l0/ultra45_raw_sc_ultraimgrates_20220530_00.csv +164 -0
  209. imap_processing/tests/ultra/{test_data → data}/l0/ultra45_raw_sc_ultrarawimg_withFSWcalcs_FM45_40P_Phi28p5_BeamCal_LinearScan_phi2850_theta-000_20240207T102740.csv +3243 -3243
  210. imap_processing/tests/ultra/data/mock_data.py +341 -0
  211. imap_processing/tests/ultra/unit/conftest.py +69 -26
  212. imap_processing/tests/ultra/unit/test_badtimes.py +2 -0
  213. imap_processing/tests/ultra/unit/test_cullingmask.py +4 -0
  214. imap_processing/tests/ultra/unit/test_de.py +12 -4
  215. imap_processing/tests/ultra/unit/test_decom_apid_881.py +44 -0
  216. imap_processing/tests/ultra/unit/test_spacecraft_pset.py +78 -0
  217. imap_processing/tests/ultra/unit/test_ultra_l1a.py +28 -12
  218. imap_processing/tests/ultra/unit/test_ultra_l1b.py +34 -6
  219. imap_processing/tests/ultra/unit/test_ultra_l1b_culling.py +22 -26
  220. imap_processing/tests/ultra/unit/test_ultra_l1b_extended.py +86 -51
  221. imap_processing/tests/ultra/unit/test_ultra_l1c_pset_bins.py +94 -52
  222. imap_processing/ultra/l0/decom_tools.py +6 -5
  223. imap_processing/ultra/l1a/ultra_l1a.py +28 -56
  224. imap_processing/ultra/l1b/de.py +72 -28
  225. imap_processing/ultra/l1b/extendedspin.py +12 -14
  226. imap_processing/ultra/l1b/ultra_l1b.py +34 -9
  227. imap_processing/ultra/l1b/ultra_l1b_culling.py +65 -29
  228. imap_processing/ultra/l1b/ultra_l1b_extended.py +64 -19
  229. imap_processing/ultra/l1c/spacecraft_pset.py +86 -0
  230. imap_processing/ultra/l1c/ultra_l1c.py +7 -4
  231. imap_processing/ultra/l1c/ultra_l1c_pset_bins.py +112 -61
  232. imap_processing/ultra/lookup_tables/ultra_90_dps_exposure_compressed.cdf +0 -0
  233. imap_processing/ultra/utils/ultra_l1_utils.py +20 -2
  234. imap_processing/utils.py +68 -28
  235. {imap_processing-0.11.0.dist-info → imap_processing-0.12.0.dist-info}/METADATA +8 -5
  236. {imap_processing-0.11.0.dist-info → imap_processing-0.12.0.dist-info}/RECORD +250 -199
  237. imap_processing/cdf/config/imap_mag_l1_variable_attrs.yaml +0 -237
  238. imap_processing/hi/l1a/housekeeping.py +0 -27
  239. imap_processing/tests/codice/data/imap_codice_l1a_hi-counters-aggregated_20240429_v001.cdf +0 -0
  240. imap_processing/tests/codice/data/imap_codice_l1a_hi-counters-singles_20240429_v001.cdf +0 -0
  241. imap_processing/tests/codice/data/imap_codice_l1a_hi-omni_20240429_v001.cdf +0 -0
  242. imap_processing/tests/codice/data/imap_codice_l1a_hi-sectored_20240429_v001.cdf +0 -0
  243. imap_processing/tests/codice/data/imap_codice_l1a_hskp_20100101_v001.cdf +0 -0
  244. imap_processing/tests/codice/data/imap_codice_l1a_lo-counters-aggregated_20240429_v001.cdf +0 -0
  245. imap_processing/tests/codice/data/imap_codice_l1a_lo-counters-singles_20240429_v001.cdf +0 -0
  246. imap_processing/tests/codice/data/imap_codice_l1a_lo-nsw-angular_20240429_v001.cdf +0 -0
  247. imap_processing/tests/codice/data/imap_codice_l1a_lo-nsw-priority_20240429_v001.cdf +0 -0
  248. imap_processing/tests/codice/data/imap_codice_l1a_lo-nsw-species_20240429_v001.cdf +0 -0
  249. imap_processing/tests/codice/data/imap_codice_l1a_lo-sw-angular_20240429_v001.cdf +0 -0
  250. imap_processing/tests/codice/data/imap_codice_l1a_lo-sw-priority_20240429_v001.cdf +0 -0
  251. imap_processing/tests/codice/data/imap_codice_l1a_lo-sw-species_20240429_v001.cdf +0 -0
  252. imap_processing/tests/codice/data/imap_codice_l1b_hi-counters-aggregated_20240429_v001.cdf +0 -0
  253. imap_processing/tests/codice/data/imap_codice_l1b_hi-counters-singles_20240429_v001.cdf +0 -0
  254. imap_processing/tests/codice/data/imap_codice_l1b_hi-omni_20240429_v001.cdf +0 -0
  255. imap_processing/tests/codice/data/imap_codice_l1b_hi-sectored_20240429_v001.cdf +0 -0
  256. imap_processing/tests/codice/data/imap_codice_l1b_hskp_20100101_v001.cdf +0 -0
  257. imap_processing/tests/codice/data/imap_codice_l1b_lo-counters-aggregated_20240429_v001.cdf +0 -0
  258. imap_processing/tests/codice/data/imap_codice_l1b_lo-counters-singles_20240429_v001.cdf +0 -0
  259. imap_processing/tests/codice/data/imap_codice_l1b_lo-nsw-angular_20240429_v001.cdf +0 -0
  260. imap_processing/tests/codice/data/imap_codice_l1b_lo-nsw-priority_20240429_v001.cdf +0 -0
  261. imap_processing/tests/codice/data/imap_codice_l1b_lo-nsw-species_20240429_v001.cdf +0 -0
  262. imap_processing/tests/codice/data/imap_codice_l1b_lo-sw-angular_20240429_v001.cdf +0 -0
  263. imap_processing/tests/codice/data/imap_codice_l1b_lo-sw-priority_20240429_v001.cdf +0 -0
  264. imap_processing/tests/codice/data/imap_codice_l1b_lo-sw-species_20240429_v001.cdf +0 -0
  265. imap_processing/tests/hi/data/l1/imap_hi_l1b_45sensor-de_20250415_v999.cdf +0 -0
  266. imap_processing/tests/hit/PREFLIGHT_raw_record_2023_256_15_59_04_apid1251.pkts +0 -0
  267. imap_processing/tests/hit/PREFLIGHT_raw_record_2023_256_15_59_04_apid1252.pkts +0 -0
  268. imap_processing/tests/hit/validation_data/hskp_sample_eu.csv +0 -89
  269. imap_processing/tests/hit/validation_data/sci_sample_raw1.csv +0 -29
  270. imap_processing/tests/idex/test_data/imap_idex_l0_raw_20231214_v001.pkts +0 -0
  271. imap_processing/tests/lo/test_cdfs/imap_lo_l1a_de_20100101_v001.cdf +0 -0
  272. imap_processing/tests/lo/test_cdfs/imap_lo_l1a_spin_20100101_v001.cdf +0 -0
  273. imap_processing/tests/ultra/test_data/mock_data.py +0 -161
  274. imap_processing/ultra/l1c/pset.py +0 -40
  275. /imap_processing/tests/ultra/{test_data → data}/l0/FM45_40P_Phi28p5_BeamCal_LinearScan_phi28.50_theta-0.00_20240207T102740.CCSDS +0 -0
  276. /imap_processing/tests/ultra/{test_data → data}/l0/FM45_7P_Phi0.0_BeamCal_LinearScan_phi0.04_theta-0.01_20230821T121304.CCSDS +0 -0
  277. /imap_processing/tests/ultra/{test_data → data}/l0/FM45_TV_Cycle6_Hot_Ops_Front212_20240124T063837.CCSDS +0 -0
  278. /imap_processing/tests/ultra/{test_data → data}/l0/Ultra45_EM_SwRI_Cal_Run7_ThetaScan_20220530T225054.CCSDS +0 -0
  279. /imap_processing/tests/ultra/{test_data → data}/l0/ultra45_raw_sc_auxdata_Ultra45_EM_SwRI_Cal_Run7_ThetaScan_20220530T225054.csv +0 -0
  280. /imap_processing/tests/ultra/{test_data → data}/l0/ultra45_raw_sc_enaphxtofhangimg_FM45_TV_Cycle6_Hot_Ops_Front212_20240124T063837.csv +0 -0
  281. /imap_processing/tests/ultra/{test_data → data}/l0/ultra45_raw_sc_ultraimgrates_Ultra45_EM_SwRI_Cal_Run7_ThetaScan_20220530T225054.csv +0 -0
  282. /imap_processing/tests/ultra/{test_data → data}/l0/ultra45_raw_sc_ultrarawimgevent_FM45_7P_Phi00_BeamCal_LinearScan_phi004_theta-001_20230821T121304.csv +0 -0
  283. /imap_processing/tests/ultra/{test_data → data}/l1/dps_exposure_helio_45_E1.cdf +0 -0
  284. /imap_processing/tests/ultra/{test_data → data}/l1/dps_exposure_helio_45_E12.cdf +0 -0
  285. /imap_processing/tests/ultra/{test_data → data}/l1/dps_exposure_helio_45_E24.cdf +0 -0
  286. {imap_processing-0.11.0.dist-info → imap_processing-0.12.0.dist-info}/LICENSE +0 -0
  287. {imap_processing-0.11.0.dist-info → imap_processing-0.12.0.dist-info}/WHEEL +0 -0
  288. {imap_processing-0.11.0.dist-info → imap_processing-0.12.0.dist-info}/entry_points.txt +0 -0
@@ -0,0 +1,160 @@
1
+ # <=== Label Attributes ===>
2
+ # LABL_PTR_i expects VAR_TYPE of metadata with char data type.
3
+ default_attrs: &default
4
+ # Assumed values for all variable attrs unless overwritten
5
+ DEPEND_0: epoch
6
+ DISPLAY_TYPE: time_series
7
+ FILLVAL: -9223372036854775808
8
+ FORMAT: I12
9
+ VALIDMIN: -9223372036854775808
10
+ VALIDMAX: 9223372036854775807
11
+ VAR_TYPE: data
12
+ UNITS: ' '
13
+
14
+ default_coords: &default_coords
15
+ # Assumed values for all coordinate attrs unless overwritten
16
+ FORMAT: F2.4 # Float with 4 digits
17
+ VAR_TYPE: support_data
18
+ DISPLAY_TYPE: time_series
19
+ FILLVAL: -9223372036854775808
20
+ VALIDMIN: -9223372036854775808
21
+ VALIDMAX: 9223372036854775807
22
+ UNITS: counts
23
+
24
+ mag_support_attrs: &support_default
25
+ <<: *default
26
+ VAR_TYPE: support_data
27
+ DICT_KEY: SPASE>Support>SupportQuantity:Other
28
+
29
+ mag_metadata_attrs: &metadata_default
30
+ <<: *default
31
+ VAR_TYPE: metadata
32
+
33
+ direction_label:
34
+ CATDESC: Magnetic field vector data
35
+ FIELDNAM: Magnetic Field Vector
36
+ FORMAT: A3
37
+ VAR_TYPE: metadata
38
+
39
+ compression_label:
40
+ CATDESC: Compression and width
41
+ FIELDNAM: Compression and width
42
+ FORMAT: A2
43
+ VAR_TYPE: metadata
44
+
45
+ raw_vector_attrs: &raw_vectors_default
46
+ <<: *default
47
+ CATDESC: Raw unprocessed magnetic field vector data in bytes
48
+ DEPEND_1: direction
49
+ LABL_PTR_1: direction_label
50
+ FIELDNAM: Magnetic Field Vector
51
+ FORMAT: I3
52
+
53
+ vector_attrs: &vectors_default
54
+ <<: *default
55
+ CATDESC: Magnetic field vectors with x y z and sensor range varying by time
56
+ DEPEND_1: direction
57
+ FIELDNAM: Magnetic Field
58
+ LABL_PTR_1: direction_label
59
+ FILLVAL: 9223372036854775807
60
+ FORMAT: F12.5
61
+
62
+ mag_flag_attrs:
63
+ <<: *default
64
+ VALIDMIN: 0
65
+ VALIDMAX: 1
66
+ DISPLAY_TYPE: time_series
67
+ FILLVAL: 255
68
+ FORMAT: I1
69
+
70
+ raw_direction_attrs:
71
+ <<: *default_coords
72
+ CATDESC: Raw magnetic field vector binary length
73
+ FIELDNAM: Raw magnetic field vector binary length
74
+ LABLAXIS: Magnetic field vector directions
75
+
76
+ direction_attrs:
77
+ <<: *default_coords
78
+ CATDESC: Magnetic field vector
79
+ FIELDNAM: \[xyz\] magnetic field vector
80
+ FORMAT: I3
81
+ VAR_TYPE: support_data
82
+ DISPLAY_TYPE: time_series
83
+ LABLAXIS: Magnetic field vector
84
+
85
+ compression_attrs:
86
+ <<: *default_coords
87
+ CATDESC: Data compression flag
88
+ FIELDNAM: Compression
89
+ LABLAXIS: Compressed
90
+ FORMAT: I2
91
+ VAR_TYPE: support_data
92
+ VALIDMAX: 21
93
+ VALIDMIN: 0
94
+ DISPLAY_TYPE: no_plot
95
+
96
+ compression_flags_attrs:
97
+ <<: *support_default
98
+ CATDESC: Compression information per time stamp, includes a flag and the compression width
99
+ FIELDNAM: Compression information per time stamp
100
+ DEPEND_0: epoch
101
+ DEPEND_1: compression
102
+ FORMAT: I2
103
+ VALIDMAX: 21
104
+ VALIDMIN: 0
105
+ LABL_PTR_1: compression_label
106
+ DISPLAY_TYPE: no_plot
107
+
108
+ compression:
109
+ <<: *support_default
110
+ CATDESC: Data compression flag
111
+ FIELDNAM: Data is compressed
112
+ LABLAXIS: Compressed
113
+ FILLVAL: 255
114
+ FORMAT: I1
115
+ VALIDMAX: 1
116
+ VALIDMIN: 0
117
+ DICT_KEY: SPASE>Support>SupportQuantity:InstrumentMode
118
+
119
+ compression_width:
120
+ <<: *support_default
121
+ CATDESC: Compression bit width
122
+ DEPEND_0: epoch
123
+ DISPLAY_TYPE: time_series
124
+ FIELDNAM: Compressed data bit width
125
+ LABLAXIS: Bit width
126
+ FILLVAL: 255
127
+ FORMAT: I2
128
+ UNITS: 'bits'
129
+ VALIDMAX: 21
130
+ VALIDMIN: 0
131
+
132
+ pri_sens:
133
+ <<: *support_default
134
+ CATDESC: Indicates the primary sensor. 0 is MAGo, 1 is MAGi
135
+ FIELDNAM: Primary Sensor
136
+ LABLAXIS: Primary Sensor
137
+ FILLVAL: 255
138
+ FORMAT: I1
139
+ UNITS: ' '
140
+ VALIDMAX: 1
141
+ VALIDMIN: 0
142
+ DICT_KEY: SPASE>Support>SupportQuantity:InstrumentMode
143
+
144
+ vecsec:
145
+ <<: *support_default
146
+ CATDESC: Vectors per second
147
+ FIELDNAM: Vectors per second
148
+ LABLAXIS: Vectors/sec
149
+ FILLVAL: 0
150
+ FORMAT: I3
151
+ UNITS: 'Hz'
152
+ VALIDMAX: 128
153
+ VALIDMIN: 1
154
+ DICT_KEY: SPASE>Support>SupportQuantity:Housekeeping
155
+
156
+ vectors:
157
+ <<: *vectors_default
158
+ CATDESC: Magnetic field vectors with x y z and sensor range varying by time
159
+ FIELDNAM: Magnetic field
160
+ LABLAXIS: Magnetic field
@@ -0,0 +1,160 @@
1
+ # <=== Label Attributes ===>
2
+ # LABL_PTR_i expects VAR_TYPE of metadata with char data type.
3
+ default_attrs: &default
4
+ # Assumed values for all variable attrs unless overwritten
5
+ DEPEND_0: epoch
6
+ DISPLAY_TYPE: time_series
7
+ FILLVAL: -9223372036854775808
8
+ FORMAT: I12
9
+ VALIDMIN: -9223372036854775808
10
+ VALIDMAX: 9223372036854775807
11
+ VAR_TYPE: data
12
+ UNITS: ' '
13
+
14
+ default_coords: &default_coords
15
+ # Assumed values for all coordinate attrs unless overwritten
16
+ FORMAT: F2.4 # Float with 4 digits
17
+ VAR_TYPE: support_data
18
+ DISPLAY_TYPE: time_series
19
+ FILLVAL: -9223372036854775808
20
+ VALIDMIN: -9223372036854775808
21
+ VALIDMAX: 9223372036854775807
22
+ UNITS: counts
23
+
24
+ mag_support_attrs: &support_default
25
+ <<: *default
26
+ VAR_TYPE: support_data
27
+ DICT_KEY: SPASE>Support>SupportQuantity:Other
28
+
29
+ mag_metadata_attrs: &metadata_default
30
+ <<: *default
31
+ VAR_TYPE: metadata
32
+
33
+ direction_label:
34
+ CATDESC: magnetic field vector data
35
+ FIELDNAM: Magnetic Field Vector
36
+ FORMAT: A3
37
+ VAR_TYPE: metadata
38
+
39
+ compression_label:
40
+ CATDESC: Compression and width
41
+ FIELDNAM: Compression and width
42
+ FORMAT: A2
43
+ VAR_TYPE: metadata
44
+
45
+ raw_vector_attrs: &raw_vectors_default
46
+ <<: *default
47
+ CATDESC: Raw unprocessed magnetic field vector data in bytes
48
+ DEPEND_1: direction
49
+ LABL_PTR_1: direction_label
50
+ FIELDNAM: Magnetic Field Vector
51
+ FORMAT: I3
52
+
53
+ vector_attrs: &vectors_default
54
+ <<: *default
55
+ CATDESC: Magnetic field vectors with x y z and sensor range varying by time
56
+ DEPEND_1: direction
57
+ FIELDNAM: Magnetic Field Vector
58
+ LABL_PTR_1: direction_label
59
+ FILLVAL: 9223372036854775807
60
+ FORMAT: F12.5
61
+
62
+ mag_flag_attrs:
63
+ <<: *default
64
+ VALIDMIN: 0
65
+ VALIDMAX: 1
66
+ DISPLAY_TYPE: time_series
67
+ FILLVAL: 255
68
+ FORMAT: I1
69
+
70
+ raw_direction_attrs:
71
+ <<: *default_coords
72
+ CATDESC: Raw magnetic field vector binary length
73
+ FIELDNAM: Raw magnetic field vector binary length
74
+ LABLAXIS: Magnetic field vector directions
75
+
76
+ direction_attrs:
77
+ <<: *default_coords
78
+ CATDESC: Magnetic field vector
79
+ FIELDNAM: \[xyz\] magnetic field vector
80
+ FORMAT: I3
81
+ VAR_TYPE: support_data
82
+ DISPLAY_TYPE: time_series
83
+ LABLAXIS: Magnetic field vector
84
+
85
+ compression_attrs:
86
+ <<: *default_coords
87
+ CATDESC: Data compression flag
88
+ FIELDNAM: Compression
89
+ LABLAXIS: Compressed
90
+ FORMAT: I2
91
+ VAR_TYPE: support_data
92
+ VALIDMAX: 21
93
+ VALIDMIN: 0
94
+ DISPLAY_TYPE: no_plot
95
+
96
+ compression_flags_attrs:
97
+ <<: *support_default
98
+ CATDESC: Compression information per time stamp, includes a flag and the compression width
99
+ FIELDNAM: Compression information per time stamp
100
+ DEPEND_0: epoch
101
+ DEPEND_1: compression
102
+ FORMAT: I2
103
+ VALIDMAX: 21
104
+ VALIDMIN: 0
105
+ LABL_PTR_1: compression_label
106
+ DISPLAY_TYPE: no_plot
107
+
108
+ compression:
109
+ <<: *support_default
110
+ CATDESC: Data compression flag
111
+ FIELDNAM: Data is compressed
112
+ LABLAXIS: Compressed
113
+ FILLVAL: 255
114
+ FORMAT: I1
115
+ VALIDMAX: 1
116
+ VALIDMIN: 0
117
+ DICT_KEY: SPASE>Support>SupportQuantity:InstrumentMode
118
+
119
+ compression_width:
120
+ <<: *support_default
121
+ CATDESC: Compression bit width
122
+ DEPEND_0: epoch
123
+ DISPLAY_TYPE: time_series
124
+ FIELDNAM: Compressed data bit width
125
+ LABLAXIS: Bit width
126
+ FILLVAL: 255
127
+ FORMAT: I2
128
+ UNITS: 'bits'
129
+ VALIDMAX: 21
130
+ VALIDMIN: 0
131
+
132
+ pri_sens:
133
+ <<: *support_default
134
+ CATDESC: Indicates the primary sensor. 0 is MAGo, 1 is MAGi
135
+ FIELDNAM: Primary Sensor
136
+ LABLAXIS: Primary Sensor
137
+ FILLVAL: 255
138
+ FORMAT: I1
139
+ UNITS: ' '
140
+ VALIDMAX: 1
141
+ VALIDMIN: 0
142
+ DICT_KEY: SPASE>Support>SupportQuantity:InstrumentMode
143
+
144
+ vecsec:
145
+ <<: *support_default
146
+ CATDESC: Vectors per second
147
+ FIELDNAM: Vectors per second
148
+ LABLAXIS: Vectors/sec
149
+ FILLVAL: 0
150
+ FORMAT: I3
151
+ UNITS: 'Hz'
152
+ VALIDMAX: 128
153
+ VALIDMIN: 1
154
+ DICT_KEY: SPASE>Support>SupportQuantity:Housekeeping
155
+
156
+ vectors:
157
+ <<: *vectors_default
158
+ CATDESC: Magnetic field vectors with x y z and sensor range varying by time
159
+ FIELDNAM: Magnetic field
160
+ LABLAXIS: Magnetic field
@@ -0,0 +1,18 @@
1
+ Descriptor:
2
+ Spacecraft>IMAP Spacecraft Data
3
+ TEXT: >
4
+ Spacecraft data includes all data collected by the IMAP spacecraft and
5
+ not specific to any one instrument. This includes quaternions from the
6
+ attitude control system.
7
+ Instrument_type: Ephemeris
8
+
9
+ # -------------- Product specific global attributes defined below --------------
10
+ imap_spacecraft_l1a_quaternions:
11
+ Data_type: L1A_QUAT>Level-1A Quaternions
12
+ Logical_source: imap_spacecraft_l1a_quaternions
13
+ Logical_source_description: IMAP Quaternion Level-1A Data From the Spacecraft.
14
+
15
+ imap_spacecraft_l1b_quaternions:
16
+ Data_type: L1B_QUAT>Level-1B Quaternions
17
+ Logical_source: imap_spacecraft_l1b_quaternions
18
+ Logical_source_description: IMAP Quaternion Level-1B Data From the Spacecraft.
@@ -0,0 +1,40 @@
1
+ # ------- Default attributes section -------
2
+ default_attrs: &default
3
+ DEPEND_0: epoch
4
+ DISPLAY_TYPE: time_series
5
+ FORMAT: I12
6
+ UNITS: " "
7
+ VAR_TYPE: data
8
+ SCALE_TYPE: linear
9
+
10
+ default_float32_attrs: &default_float32_attrs
11
+ <<: *default
12
+ FILLVAL: .NAN
13
+ FORMAT: F7.6
14
+ VALIDMIN: -1
15
+ VALIDMAX: 1
16
+ dtype: float32
17
+
18
+ quat_x:
19
+ <<: *default_float32_attrs
20
+ CATDESC: Quaternion X component
21
+ FIELDNAM: Quaternion X
22
+ LABLAXIS: QX
23
+
24
+ quat_y:
25
+ <<: *default_float32_attrs
26
+ CATDESC: Quaternion Y component
27
+ FIELDNAM: Quaternion Y
28
+ LABLAXIS: QY
29
+
30
+ quat_z:
31
+ <<: *default_float32_attrs
32
+ CATDESC: Quaternion Z component
33
+ FIELDNAM: Quaternion Z
34
+ LABLAXIS: QZ
35
+
36
+ quat_s:
37
+ <<: *default_float32_attrs
38
+ CATDESC: Quaternion S component
39
+ FIELDNAM: Quaternion S
40
+ LABLAXIS: QS
@@ -12,22 +12,18 @@ instrument_base: &instrument_base
12
12
 
13
13
  imap_swapi_l1_sci:
14
14
  <<: *instrument_base
15
- # NOTE: Right now, this Data_level is required to produce valid CDF
16
- Data_level: "1"
17
15
  Data_type: L1_SCI>Level-1 Science data
18
16
  Logical_source: imap_swapi_l1_sci
19
17
  Logical_source_description: SWAPI Instrument Level-1 Science Data
20
18
 
21
19
  imap_swapi_l1_hk:
22
20
  <<: *instrument_base
23
- Data_level: "1"
24
21
  Data_type: L1_HK>Level-1B Housekeeping data
25
22
  Logical_source: imap_swapi_l1_hk
26
23
  Logical_source_description: SWAPI Instrument Level-1 Housekeeping Data
27
24
 
28
25
  imap_swapi_l2_sci:
29
26
  <<: *instrument_base
30
- Data_level: "2"
31
27
  Data_type: L2_SCI>Level-2 Science data
32
28
  Logical_source: imap_swapi_l2_sci
33
- Logical_source_description: SWAPI Instrument Level-1 Science Data
29
+ Logical_source_description: SWAPI Instrument Level-2 Science Data
@@ -10,22 +10,30 @@ instrument_base: &instrument_base
10
10
 
11
11
  imap_swe_l1a_sci:
12
12
  <<: *instrument_base
13
- # NOTE: Right now, this Data_level is required to produce valid CDF
14
- Data_level: 1A
15
13
  Data_type: L1A_SCI>Level-1A Science data
16
14
  Logical_source: imap_swe_l1a_sci
17
15
  Logical_source_description: SWE Instrument Level-1A Science Data
18
16
 
17
+ imap_swe_l1a_hk:
18
+ <<: *instrument_base
19
+ Data_type: L1A_HK>Level-1A Housekeeping data
20
+ Logical_source: imap_swe_l1a_hk
21
+ Logical_source_description: SWE Instrument Level-1A Housekeeping Data
22
+
23
+ imap_swe_l1a_cem-raw:
24
+ <<: *instrument_base
25
+ Data_type: L1A_CEM-RAW>Level-1A CEM Raw data
26
+ Logical_source: imap_swe_l1a_cem-raw
27
+ Logical_source_description: SWE Instrument Level-1A CEM Raw Data
28
+
19
29
  imap_swe_l1b_sci:
20
30
  <<: *instrument_base
21
- Data_level: 1A
22
31
  Data_type: L1B_SCI>Level-1B Science data
23
32
  Logical_source: imap_swe_l1b_sci
24
33
  Logical_source_description: SWE Instrument Level-1B Science Data
25
34
 
26
35
  imap_swe_l2_sci:
27
36
  <<: *instrument_base
28
- Data_level: 2
29
37
  Data_type: L2_SCI>Level-2 Science data
30
38
  Logical_source: imap_swe_l2_sci
31
39
  Logical_source_description: SWE Instrument Level-2 Science Data
@@ -21,10 +21,9 @@ cem_id:
21
21
  FORMAT: I1
22
22
  LABLAXIS: Angle
23
23
  SCALE_TYP: linear
24
- UNITS: int
24
+ UNITS: " "
25
25
  VALIDMAX: 6
26
26
  VALIDMIN: 0
27
- VAR_NOTES: " "
28
27
  VAR_TYPE: support_data
29
28
 
30
29
  # <=== Label Attributes ===>
@@ -74,6 +73,7 @@ raw_counts:
74
73
  VALIDMIN: 0
75
74
  FILLVAL: -9223372036854775808
76
75
  VAR_TYPE: data
76
+ SCALETYP: linear
77
77
 
78
78
  science_data:
79
79
  CATDESC: Decompressed Counts
@@ -234,3 +234,17 @@ cksum:
234
234
  FIELDNAM: Checksum
235
235
  FORMAT: I5
236
236
  VALIDMAX: 65535
237
+
238
+ # <=== Non Science Data Variables ===>
239
+ non_science_attrs:
240
+ CATDESC: SWE data
241
+ DEPEND_0: epoch
242
+ FIELDNAM: SWE Raw Data
243
+ FILLVAL: -9223372036854775808
244
+ FORMAT: I19
245
+ UNITS: ' '
246
+ LABLAXIS: Values
247
+ VALIDMIN: 0
248
+ VALIDMAX: 9223372036854769664
249
+ VAR_TYPE: support_data
250
+ DISPLAY_TYPE: time_series