imap-processing 0.16.1__py3-none-any.whl → 0.17.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.
- imap_processing/_version.py +2 -2
- imap_processing/cdf/config/imap_codice_l1a_variable_attrs.yaml +24 -0
- imap_processing/cdf/config/imap_codice_l1b_variable_attrs.yaml +24 -0
- imap_processing/cdf/config/imap_hi_variable_attrs.yaml +8 -8
- imap_processing/cdf/config/imap_hit_global_cdf_attrs.yaml +1 -1
- imap_processing/cdf/config/imap_hit_l2_variable_attrs.yaml +394 -411
- imap_processing/cdf/config/imap_idex_global_cdf_attrs.yaml +9 -9
- imap_processing/cdf/config/imap_idex_l2b_variable_attrs.yaml +150 -57
- imap_processing/cdf/config/imap_swapi_variable_attrs.yaml +19 -0
- imap_processing/cdf/config/imap_swe_l1b_variable_attrs.yaml +20 -0
- imap_processing/cdf/config/imap_swe_l2_variable_attrs.yaml +39 -0
- imap_processing/cdf/config/imap_ultra_global_cdf_attrs.yaml +108 -0
- imap_processing/cdf/config/imap_ultra_l1a_variable_attrs.yaml +103 -2
- imap_processing/cdf/utils.py +7 -1
- imap_processing/cli.py +14 -8
- imap_processing/codice/codice_l1a.py +89 -30
- imap_processing/hi/hi_l1a.py +4 -4
- imap_processing/hi/hi_l1b.py +2 -2
- imap_processing/hi/packet_definitions/TLM_HI_COMBINED_SCI.xml +218 -38
- imap_processing/hit/hit_utils.py +2 -2
- imap_processing/hit/l0/decom_hit.py +2 -1
- imap_processing/hit/l2/hit_l2.py +2 -1
- imap_processing/ialirt/l0/process_codice.py +4 -34
- imap_processing/idex/idex_constants.py +7 -0
- imap_processing/idex/idex_l2b.py +372 -55
- imap_processing/lo/l0/lo_star_sensor.py +48 -0
- imap_processing/lo/l1a/lo_l1a.py +32 -32
- imap_processing/mag/l0/decom_mag.py +9 -6
- imap_processing/mag/l0/mag_l0_data.py +46 -0
- imap_processing/swapi/l1/swapi_l1.py +12 -2
- imap_processing/swapi/l2/swapi_l2.py +7 -6
- imap_processing/swe/l1b/swe_l1b.py +9 -0
- imap_processing/swe/l2/swe_l2.py +111 -17
- imap_processing/ultra/l0/decom_tools.py +13 -6
- imap_processing/ultra/l0/decom_ultra.py +190 -4
- imap_processing/ultra/l0/ultra_utils.py +184 -3
- imap_processing/ultra/l1a/ultra_l1a.py +52 -4
- imap_processing/ultra/packet_definitions/ULTRA_SCI_COMBINED.xml +3 -3
- imap_processing/utils.py +20 -42
- {imap_processing-0.16.1.dist-info → imap_processing-0.17.0.dist-info}/METADATA +1 -1
- {imap_processing-0.16.1.dist-info → imap_processing-0.17.0.dist-info}/RECORD +44 -45
- imap_processing/lo/l0/data_classes/star_sensor.py +0 -98
- imap_processing/lo/l0/utils/lo_base.py +0 -57
- {imap_processing-0.16.1.dist-info → imap_processing-0.17.0.dist-info}/LICENSE +0 -0
- {imap_processing-0.16.1.dist-info → imap_processing-0.17.0.dist-info}/WHEEL +0 -0
- {imap_processing-0.16.1.dist-info → imap_processing-0.17.0.dist-info}/entry_points.txt +0 -0
|
@@ -54,20 +54,20 @@ imap_idex_l2a_sci:
|
|
|
54
54
|
imap_idex_l2b_sci:
|
|
55
55
|
<<: *instrument_base
|
|
56
56
|
Data_level: 2B
|
|
57
|
-
Data_type: L2B_SCI>Level-2B Science
|
|
58
|
-
Logical_source: imap_idex_l2b_sci-
|
|
59
|
-
Logical_source_description: IMAP Mission IDEX Instrument Level-2B
|
|
57
|
+
Data_type: L2B_SCI-1MO>Level-2B Science Monthly Data
|
|
58
|
+
Logical_source: imap_idex_l2b_sci-1mo
|
|
59
|
+
Logical_source_description: IMAP Mission IDEX Instrument Level-2B Monthly Data
|
|
60
60
|
|
|
61
61
|
imap_idex_l2c_sci-healpix:
|
|
62
62
|
<<: *instrument_base
|
|
63
63
|
Data_level: 2C
|
|
64
|
-
Data_type: L2C_HEALPIX-MAP-
|
|
65
|
-
Logical_source: imap_idex_l2c_healpix-map-
|
|
66
|
-
Logical_source_description: IMAP Mission IDEX Instrument Level-2C
|
|
64
|
+
Data_type: L2C_HEALPIX-MAP-1MO>Level-2C HEALPIX Map Monthly Data
|
|
65
|
+
Logical_source: imap_idex_l2c_healpix-map-1mo
|
|
66
|
+
Logical_source_description: IMAP Mission IDEX Instrument Level-2C Monthly Data Healpix
|
|
67
67
|
|
|
68
68
|
imap_idex_l2c_sci-rectangular:
|
|
69
69
|
<<: *instrument_base
|
|
70
70
|
Data_level: 2C
|
|
71
|
-
Data_type: L2C_RECTANGULAR-MAP-
|
|
72
|
-
Logical_source: imap_idex_l2c_rectangular-map-
|
|
73
|
-
Logical_source_description: IMAP Mission IDEX Instrument Level-2C
|
|
71
|
+
Data_type: L2C_RECTANGULAR-MAP-1MO>Level-2C Rectangular Map Monthly Data
|
|
72
|
+
Logical_source: imap_idex_l2c_rectangular-map-1mo
|
|
73
|
+
Logical_source_description: IMAP Mission IDEX Instrument Level-2C Monthly Data Rectangular
|
|
@@ -1,71 +1,164 @@
|
|
|
1
1
|
int_fillval: &int_fillval -9223372036854775808
|
|
2
|
+
int_maxval: &int_maxval 9223372036854775807
|
|
3
|
+
double_fillval: &double_fillval -1.0E31
|
|
2
4
|
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
VALIDMIN: 1
|
|
12
|
-
VALIDMAX: 366
|
|
13
|
-
VAR_TYPE: data
|
|
14
|
-
UNITS: days
|
|
15
|
-
DICT_KEY: SPASE>SupportQuantity:Temporal,Qualifier:Array # TODO: review this
|
|
5
|
+
# Label attributes
|
|
6
|
+
mass_labels:
|
|
7
|
+
CATDESC: Labels for mass bins
|
|
8
|
+
FIELDNAM: Mass Bin Labels
|
|
9
|
+
VAR_TYPE: metadata
|
|
10
|
+
FORMAT: A8
|
|
11
|
+
DEPEND_1: mass_bins
|
|
12
|
+
DICT_KEY: SPASE>Support>SupportQuantity:Other
|
|
16
13
|
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
FILLVAL: *int_fillval
|
|
25
|
-
FORMAT: I3
|
|
26
|
-
VALIDMIN: 0
|
|
27
|
-
VALIDMAX: 270
|
|
28
|
-
VAR_TYPE: data
|
|
29
|
-
UNITS: degrees
|
|
30
|
-
DICT_KEY: SPASE>SupportQuantity:SpinPhase,Qualifier:Array # TODO: review this
|
|
14
|
+
charge_labels:
|
|
15
|
+
CATDESC: Labels for impact charge bins
|
|
16
|
+
FIELDNAM: Impact Charge Bin Labels
|
|
17
|
+
VAR_TYPE: metadata
|
|
18
|
+
FORMAT: A8
|
|
19
|
+
DEPEND_1: impact_charge_bins
|
|
20
|
+
DICT_KEY: SPASE>Support>SupportQuantity:Other
|
|
31
21
|
|
|
32
|
-
|
|
33
|
-
CATDESC:
|
|
34
|
-
FIELDNAM:
|
|
35
|
-
DEPEND_0: epoch_science_acquisition
|
|
36
|
-
FORMAT: A30
|
|
37
|
-
FILLVAL: " "
|
|
22
|
+
spin_phase_labels:
|
|
23
|
+
CATDESC: Labels for spin phase bins
|
|
24
|
+
FIELDNAM: Spin Phase Bin Labels
|
|
38
25
|
VAR_TYPE: metadata
|
|
39
|
-
|
|
26
|
+
FORMAT: A8
|
|
27
|
+
DEPEND_1: spin_phase_bins
|
|
28
|
+
DICT_KEY: SPASE>Support>SupportQuantity:Other
|
|
29
|
+
|
|
30
|
+
# Index attributes
|
|
31
|
+
mass_bins:
|
|
32
|
+
CATDESC: Log-spaced mass bins
|
|
33
|
+
FIELDNAM: Mass Bins
|
|
34
|
+
UNITS: " "
|
|
35
|
+
FORMAT: I4
|
|
36
|
+
VAR_TYPE: support_data
|
|
37
|
+
SCALETYP: linear
|
|
38
|
+
LABLAXIS: Mass Bins
|
|
39
|
+
VALIDMIN: 0
|
|
40
|
+
VALIDMAX: 10
|
|
41
|
+
FILLVAL: *int_fillval
|
|
42
|
+
LABL_PTR_1: mass_labels
|
|
43
|
+
DICT_KEY: SPASE>Support>SupportQuantity:Other
|
|
40
44
|
|
|
41
|
-
|
|
42
|
-
CATDESC:
|
|
43
|
-
|
|
44
|
-
|
|
45
|
+
spin_phase_bins:
|
|
46
|
+
CATDESC: The spacecraft spin phase at the time of detection
|
|
47
|
+
VAR_NOTES: This is given in 4 bins [315-45, 45-135, 135-225, 225-315] degrees.
|
|
48
|
+
FIELDNAM: Spin Phase Bins
|
|
49
|
+
LABLAXIS: Spin Phase Bins
|
|
50
|
+
VAR_TYPE: support_data
|
|
51
|
+
SCALETYP: linear
|
|
45
52
|
FILLVAL: *int_fillval
|
|
46
|
-
FORMAT:
|
|
53
|
+
FORMAT: I4
|
|
47
54
|
VALIDMIN: 0
|
|
48
|
-
VALIDMAX:
|
|
55
|
+
VALIDMAX: 3
|
|
56
|
+
LABL_PTR_1: spin_phase_labels
|
|
49
57
|
UNITS: " "
|
|
50
|
-
|
|
51
|
-
DICT_KEY: SPASE>SupportQuantity:Housekeeping,Qualifier:Array
|
|
58
|
+
DICT_KEY: SPASE>SupportQuantity:SpinPhase,Qualifier:Array
|
|
52
59
|
|
|
53
|
-
|
|
54
|
-
CATDESC:
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
FORMAT: " " # Supposedly not required, fails in xarray_to_cdf
|
|
59
|
-
VALIDMIN: -9223372036854775808
|
|
60
|
-
VALIDMAX: 9223372036854775807
|
|
61
|
-
UNITS: ns
|
|
60
|
+
impact_charge_bins:
|
|
61
|
+
CATDESC: Log-spaced impact charge bins
|
|
62
|
+
VAR_NOTES: Impact Charge Bins
|
|
63
|
+
FIELDNAM: Impact Charge Bins
|
|
64
|
+
LABLAXIS: Impact Charge Bins
|
|
62
65
|
VAR_TYPE: support_data
|
|
63
66
|
SCALETYP: linear
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
67
|
+
FILLVAL: *int_fillval
|
|
68
|
+
FORMAT: I4
|
|
69
|
+
VALIDMIN: 0
|
|
70
|
+
VALIDMAX: 10
|
|
71
|
+
LABL_PTR_1: spin_phase_labels
|
|
72
|
+
UNITS: " "
|
|
73
|
+
DICT_KEY: SPASE>Support>SupportQuantity:Other
|
|
74
|
+
|
|
75
|
+
# Base attributes for charge and mass variables
|
|
76
|
+
base_charge: &base_charge
|
|
77
|
+
CATDESC: " "
|
|
78
|
+
FIELDNAM: " "
|
|
79
|
+
DEPEND_0: epoch
|
|
80
|
+
DEPEND_1: impact_charge_bins
|
|
81
|
+
DEPEND_2: spin_phase_bins
|
|
82
|
+
LABL_PTR_1: charge_labels
|
|
83
|
+
LABL_PTR_2: spin_phase_labels
|
|
84
|
+
DISPLAY_TYPE: spectrogram
|
|
85
|
+
VAR_TYPE: data
|
|
86
|
+
FILLVAL: *int_fillval
|
|
87
|
+
FORMAT: E10.3
|
|
88
|
+
VALIDMIN: -1
|
|
89
|
+
VALIDMAX: *int_maxval
|
|
90
|
+
|
|
91
|
+
base_mass: &base_mass
|
|
92
|
+
CATDESC: " "
|
|
93
|
+
FIELDNAM: " "
|
|
94
|
+
DEPEND_0: epoch
|
|
95
|
+
DEPEND_1: mass_bins
|
|
96
|
+
DEPEND_2: spin_phase_bins
|
|
97
|
+
LABL_PTR_1: mass_labels
|
|
98
|
+
LABL_PTR_2: spin_phase_labels
|
|
99
|
+
DISPLAY_TYPE: spectrogram
|
|
100
|
+
VAR_TYPE: data
|
|
101
|
+
FILLVAL: *int_fillval
|
|
102
|
+
FORMAT: E10.3
|
|
103
|
+
VALIDMIN: 0.0
|
|
104
|
+
VALIDMAX: *int_maxval
|
|
105
|
+
|
|
106
|
+
rate_by_charge:
|
|
107
|
+
<<: *base_charge
|
|
108
|
+
CATDESC: Count rate per day by impact charge and spin phase.
|
|
109
|
+
FIELDNAM: Rate by Charge
|
|
110
|
+
UNITS: day^-1
|
|
111
|
+
FILLVAL: *double_fillval
|
|
112
|
+
DICT_KEY: SPASE>SupportQuantity:CountRate,Qualifier:Array
|
|
113
|
+
|
|
114
|
+
rate_by_mass:
|
|
115
|
+
<<: *base_mass
|
|
116
|
+
CATDESC: Count rate per day by mass and spin phase.
|
|
117
|
+
FIELDNAM: Rate by Mass
|
|
118
|
+
UNITS: day^-1
|
|
119
|
+
FILLVAL: *double_fillval
|
|
120
|
+
DICT_KEY: SPASE>SupportQuantity:CountRate,Qualifier:Array
|
|
121
|
+
|
|
122
|
+
counts_by_charge:
|
|
123
|
+
<<: *base_charge
|
|
124
|
+
CATDESC: Count by impact charge and spin phase.
|
|
125
|
+
FIELDNAM: Counts by Charge
|
|
126
|
+
FORMAT: I8
|
|
127
|
+
UNITS: counts
|
|
128
|
+
DICT_KEY: SPASE>Particle>ParticleType:Dust,ParticleQuantity:Counts,Qualifier:Array
|
|
129
|
+
|
|
130
|
+
counts_by_mass:
|
|
131
|
+
<<: *base_mass
|
|
132
|
+
CATDESC: Count by mass and spin phase.
|
|
133
|
+
FIELDNAM: Counts by Mass
|
|
134
|
+
FORMAT: I8
|
|
135
|
+
UNITS: counts
|
|
136
|
+
DICT_KEY: SPASE>Particle>ParticleType:Dust,ParticleQuantity:Counts,Qualifier:Array
|
|
137
|
+
|
|
138
|
+
impact_day_of_year:
|
|
139
|
+
CATDESC: The unique day of the years when dust impacts occurred.
|
|
140
|
+
FIELDNAM: Impact Day of Year
|
|
141
|
+
LABLAXIS: Impact DOY
|
|
142
|
+
DEPEND_0: epoch
|
|
70
143
|
DISPLAY_TYPE: time_series
|
|
144
|
+
FILLVAL: *int_fillval
|
|
145
|
+
FORMAT: I3
|
|
146
|
+
VALIDMIN: 1
|
|
147
|
+
VALIDMAX: 366
|
|
148
|
+
VAR_TYPE: data
|
|
149
|
+
UNITS: days
|
|
71
150
|
DICT_KEY: SPASE>SupportQuantity:Temporal,Qualifier:Array
|
|
151
|
+
|
|
152
|
+
rate_calculation_quality_flags:
|
|
153
|
+
CATDESC: Quality flag for rate calculation (1 = good, 0 = insufficient IDEX uptime data)
|
|
154
|
+
FIELDNAM: Rate Quality Flag
|
|
155
|
+
LABLAXIS: Quality Flag
|
|
156
|
+
DEPEND_0: epoch
|
|
157
|
+
DISPLAY_TYPE: time_series
|
|
158
|
+
FILLVAL: 255
|
|
159
|
+
FORMAT: I1
|
|
160
|
+
VALIDMIN: 0
|
|
161
|
+
VALIDMAX: 1
|
|
162
|
+
VAR_TYPE: data
|
|
163
|
+
UNITS: " "
|
|
164
|
+
DICT_KEY: SPASE>SupportQuantity:QualityFlag,Qualifier:Array
|
|
@@ -128,6 +128,25 @@ metadata_default: &metadata_default
|
|
|
128
128
|
SCALETYP: linear
|
|
129
129
|
DICT_KEY: SPASE>Support>SupportQuantity:Other
|
|
130
130
|
|
|
131
|
+
sci_start_time:
|
|
132
|
+
CATDESC: Start time of sweep
|
|
133
|
+
DEPEND_0: epoch
|
|
134
|
+
FIELDNAM: Science Start time
|
|
135
|
+
LABLAXIS: sci_start_time
|
|
136
|
+
FILLVAL: -9223372036854775808
|
|
137
|
+
FORMAT: " " # Supposedly not required, fails in xarray_to_cdf
|
|
138
|
+
VALIDMIN: -9223372036854775808
|
|
139
|
+
VALIDMAX: 9223372036854775807
|
|
140
|
+
UNITS: ns
|
|
141
|
+
VAR_TYPE: support_data
|
|
142
|
+
SCALETYP: linear
|
|
143
|
+
MONOTON: INCREASE
|
|
144
|
+
TIME_BASE: J2000
|
|
145
|
+
TIME_SCALE: Terrestrial Time
|
|
146
|
+
REFERENCE_POSITION: Rotating Earth Geoid
|
|
147
|
+
RESOLUTION: ' '
|
|
148
|
+
DICT_KEY: "SPASE>Support>SupportQantity:Temporal"
|
|
149
|
+
|
|
131
150
|
# Minimum attrs setting for HK data
|
|
132
151
|
hk_attrs: &hk_attrs
|
|
133
152
|
CATDESC: Housekeeping data
|
|
@@ -110,6 +110,26 @@ science_data:
|
|
|
110
110
|
Metadata field acq_duration is 17 uint. Max value of uint17 is 131071.
|
|
111
111
|
Dividing max counts by acq_duration gave validmax
|
|
112
112
|
|
|
113
|
+
counts_stat_uncert:
|
|
114
|
+
CATDESC: Counts statistical uncertainty
|
|
115
|
+
FIELDNAM: Counts Stats Uncertainty
|
|
116
|
+
DEPEND_0: epoch
|
|
117
|
+
DEPEND_1: esa_step
|
|
118
|
+
DEPEND_2: spin_sector
|
|
119
|
+
DEPEND_3: cem_id
|
|
120
|
+
LABL_PTR_1: esa_step_label
|
|
121
|
+
LABL_PTR_2: spin_sector_label
|
|
122
|
+
LABL_PTR_3: cem_id_label
|
|
123
|
+
DISPLAY_TYPE: spectrogram
|
|
124
|
+
FILLVAL: -1.0000000E+31
|
|
125
|
+
FORMAT: E19.5
|
|
126
|
+
UNITS: counts
|
|
127
|
+
VALIDMIN: 0.0
|
|
128
|
+
VALIDMAX: 1.7976931348623157e+308 # TODO: find actual value
|
|
129
|
+
VAR_TYPE: data
|
|
130
|
+
SCALETYP: linear
|
|
131
|
+
DICT_KEY: SPASE>Particle>ParticleType:Electron,ParticleQuantity:Counts,Qualifier:Uncertainty
|
|
132
|
+
|
|
113
133
|
acquisition_time:
|
|
114
134
|
CATDESC: Acquisition time organized by voltage step and spin sector
|
|
115
135
|
DEPEND_0: epoch
|
|
@@ -221,6 +221,45 @@ flux:
|
|
|
221
221
|
VAR_TYPE: data
|
|
222
222
|
DICT_KEY: SPASE>Particle>ParticleType:Electron,ParticleQuantity:NumberFlux,Qualifier:Array
|
|
223
223
|
|
|
224
|
+
psd_stat_uncert:
|
|
225
|
+
CATDESC: Phase space density statistical uncertainty
|
|
226
|
+
FIELDNAM: Phase Space Density Stats Uncertainty
|
|
227
|
+
DEPEND_0: epoch
|
|
228
|
+
DEPEND_1: esa_step
|
|
229
|
+
DEPEND_2: spin_sector
|
|
230
|
+
DEPEND_3: cem_id
|
|
231
|
+
LABL_PTR_1: esa_step_label
|
|
232
|
+
LABL_PTR_2: spin_sector_label
|
|
233
|
+
LABL_PTR_3: cem_id_label
|
|
234
|
+
DISPLAY_TYPE: spectrogram
|
|
235
|
+
FILLVAL: -1.0000000E+31
|
|
236
|
+
FORMAT: E19.5
|
|
237
|
+
UNITS: counts
|
|
238
|
+
VALIDMIN: 0.0
|
|
239
|
+
VALIDMAX: 1.7976931348623157e+308 # TODO: find actual value
|
|
240
|
+
VAR_TYPE: data
|
|
241
|
+
SCALETYP: linear
|
|
242
|
+
DICT_KEY: SPASE>Particle>ParticleType:Electron,ParticleQuantity:Counts,Qualifier:Uncertainty
|
|
243
|
+
|
|
244
|
+
flux_stat_uncert:
|
|
245
|
+
CATDESC: Flux statistical uncertainty
|
|
246
|
+
FIELDNAM: Flux Stats Uncertainty
|
|
247
|
+
DEPEND_0: epoch
|
|
248
|
+
DEPEND_1: esa_step
|
|
249
|
+
DEPEND_2: spin_sector
|
|
250
|
+
DEPEND_3: cem_id
|
|
251
|
+
LABL_PTR_1: esa_step_label
|
|
252
|
+
LABL_PTR_2: spin_sector_label
|
|
253
|
+
LABL_PTR_3: cem_id_label
|
|
254
|
+
DISPLAY_TYPE: spectrogram
|
|
255
|
+
FILLVAL: -1.0000000E+31
|
|
256
|
+
FORMAT: E19.5
|
|
257
|
+
UNITS: counts
|
|
258
|
+
VALIDMIN: 0.0
|
|
259
|
+
VALIDMAX: 1.7976931348623157e+308 # TODO: find actual value
|
|
260
|
+
VAR_TYPE: data
|
|
261
|
+
SCALETYP: linear
|
|
262
|
+
DICT_KEY: SPASE>Particle>ParticleType:Electron,ParticleQuantity:Counts,Qualifier:Uncertainty
|
|
224
263
|
|
|
225
264
|
acquisition_time:
|
|
226
265
|
CATDESC: Acquisition time organized by ESA step and spin sector
|
|
@@ -44,6 +44,30 @@ imap_ultra_l1a_90sensor-rates:
|
|
|
44
44
|
Logical_source: imap_ultra_l1a_90sensor-rates
|
|
45
45
|
Logical_source_description: IMAP-Ultra Instrument Level-1A Rates Data.
|
|
46
46
|
|
|
47
|
+
imap_ultra_l1a_45sensor-energy-rates:
|
|
48
|
+
<<: *instrument_base
|
|
49
|
+
Data_type: L1A_Energy_Rates>Level-1A Energy Rates
|
|
50
|
+
Logical_source: imap_ultra_l1a_45sensor-energy-rates
|
|
51
|
+
Logical_source_description: IMAP-Ultra Instrument Level-1A Energy Rates Data.
|
|
52
|
+
|
|
53
|
+
imap_ultra_l1a_90sensor-energy-rates:
|
|
54
|
+
<<: *instrument_base
|
|
55
|
+
Data_type: L1A_Energy_Rates>Level-1A Energy Rates
|
|
56
|
+
Logical_source: imap_ultra_l1a_90sensor-energy-rates
|
|
57
|
+
Logical_source_description: IMAP-Ultra Instrument Level-1A Energy Rates Data.
|
|
58
|
+
|
|
59
|
+
imap_ultra_l1a_45sensor-energy-spectra:
|
|
60
|
+
<<: *instrument_base
|
|
61
|
+
Data_type: L1A_Energy_Spectra>Level-1A Energy Spectra
|
|
62
|
+
Logical_source: imap_ultra_l1a_45sensor-energy-spectra
|
|
63
|
+
Logical_source_description: IMAP-Ultra Instrument Level-1A Energy Spectra Data.
|
|
64
|
+
|
|
65
|
+
imap_ultra_l1a_90sensor-energy-spectra:
|
|
66
|
+
<<: *instrument_base
|
|
67
|
+
Data_type: L1A_Energy_Spectra>Level-1A Energy Spectra
|
|
68
|
+
Logical_source: imap_ultra_l1a_90sensor-energy-spectra
|
|
69
|
+
Logical_source_description: IMAP-Ultra Instrument Level-1A Energy Spectra Data.
|
|
70
|
+
|
|
47
71
|
imap_ultra_l1a_45sensor-de:
|
|
48
72
|
<<: *instrument_base
|
|
49
73
|
Data_type: L1A_DE>Level-1A Direct Event
|
|
@@ -56,6 +80,66 @@ imap_ultra_l1a_90sensor-de:
|
|
|
56
80
|
Logical_source: imap_ultra_l1a_90sensor-de
|
|
57
81
|
Logical_source_description: IMAP-Ultra Instrument Level-1A Direct Event Data.
|
|
58
82
|
|
|
83
|
+
imap_ultra_l1a_45sensor-energy-de:
|
|
84
|
+
<<: *instrument_base
|
|
85
|
+
Data_type: L1A_ENERGY_DE>Level-1A Energy Direct Event
|
|
86
|
+
Logical_source: imap_ultra_l1a_45sensor-energy-de
|
|
87
|
+
Logical_source_description: IMAP-Ultra Instrument Level-1A Energy Direct Event Data.
|
|
88
|
+
|
|
89
|
+
imap_ultra_l1a_90sensor-energy-de:
|
|
90
|
+
<<: *instrument_base
|
|
91
|
+
Data_type: L1A_ENERGY_DE>Level-1A EnergyDirect Event
|
|
92
|
+
Logical_source: imap_ultra_l1a_90sensor-energy-de
|
|
93
|
+
Logical_source_description: IMAP-Ultra Instrument Level-1A Energy Direct Event Data.
|
|
94
|
+
|
|
95
|
+
imap_ultra_l1a_45sensor-priority-1-de:
|
|
96
|
+
<<: *instrument_base
|
|
97
|
+
Data_type: L1A_PRIORITY_1_DE>Level-1A Priority 1 Direct Event
|
|
98
|
+
Logical_source: imap_ultra_l1a_45sensor-priority-1-de
|
|
99
|
+
Logical_source_description: IMAP-Ultra Instrument Level-1A Priority 1 Direct Event Data.
|
|
100
|
+
|
|
101
|
+
imap_ultra_l1a_90sensor-priority-1-de:
|
|
102
|
+
<<: *instrument_base
|
|
103
|
+
Data_type: L1A_PRIORITY_1_DE>Level-1A Priority 1 Direct Event
|
|
104
|
+
Logical_source: imap_ultra_l1a_90sensor-priority-1-de
|
|
105
|
+
Logical_source_description: IMAP-Ultra Instrument Level-1A Priority 1 Direct Event Data.
|
|
106
|
+
|
|
107
|
+
imap_ultra_l1a_45sensor-priority-2-de:
|
|
108
|
+
<<: *instrument_base
|
|
109
|
+
Data_type: L1A_PRIORITY_2_DE>Level-1A Priority 2 Direct Event
|
|
110
|
+
Logical_source: imap_ultra_l1a_45sensor-priority-2-de
|
|
111
|
+
Logical_source_description: IMAP-Ultra Instrument Level-1A Priority 2 Direct Event Data.
|
|
112
|
+
|
|
113
|
+
imap_ultra_l1a_90sensor-priority-2-de:
|
|
114
|
+
<<: *instrument_base
|
|
115
|
+
Data_type: L1A_PRIORITY_2_DE>Level-1A Priority 2 Direct Event
|
|
116
|
+
Logical_source: imap_ultra_l1a_90sensor-priority-2-de
|
|
117
|
+
Logical_source_description: IMAP-Ultra Instrument Level-1A Priority 2 Direct Event Data.
|
|
118
|
+
|
|
119
|
+
imap_ultra_l1a_45sensor-priority-3-de:
|
|
120
|
+
<<: *instrument_base
|
|
121
|
+
Data_type: L1A_PRIORITY_3_DE>Level-1A Priority 3 Direct Event
|
|
122
|
+
Logical_source: imap_ultra_l1a_45sensor-priority-3-de
|
|
123
|
+
Logical_source_description: IMAP-Ultra Instrument Level-1A Priority 3 Direct Event Data.
|
|
124
|
+
|
|
125
|
+
imap_ultra_l1a_90sensor-priority-3-de:
|
|
126
|
+
<<: *instrument_base
|
|
127
|
+
Data_type: L1A_PRIORITY_3_DE>Level-1A Priority 3 Direct Event
|
|
128
|
+
Logical_source: imap_ultra_l1a_90sensor-priority-3-de
|
|
129
|
+
Logical_source_description: IMAP-Ultra Instrument Level-1A Priority 3 Direct Event Data.
|
|
130
|
+
|
|
131
|
+
imap_ultra_l1a_45sensor-priority-4-de:
|
|
132
|
+
<<: *instrument_base
|
|
133
|
+
Data_type: L1A_PRIORITY_4_DE>Level-1A Priority 4 Direct Event
|
|
134
|
+
Logical_source: imap_ultra_l1a_45sensor-priority-4-de
|
|
135
|
+
Logical_source_description: IMAP-Ultra Instrument Level-1A Priority 4 Direct Event Data.
|
|
136
|
+
|
|
137
|
+
imap_ultra_l1a_90sensor-priority-4-de:
|
|
138
|
+
<<: *instrument_base
|
|
139
|
+
Data_type: L1A_PRIORITY_4_DE>Level-1A Priority 4 Direct Event
|
|
140
|
+
Logical_source: imap_ultra_l1a_90sensor-priority-4-de
|
|
141
|
+
Logical_source_description: IMAP-Ultra Instrument Level-1A Priority 4 Direct Event Data.
|
|
142
|
+
|
|
59
143
|
imap_ultra_l1b_45sensor-de:
|
|
60
144
|
<<: *instrument_base
|
|
61
145
|
Data_type: L1B_45Sensor-DE>Level-1B Direct Events for Ultra45
|
|
@@ -152,6 +236,18 @@ imap_ultra_l1a_90sensor-alarm:
|
|
|
152
236
|
Logical_source: imap_ultra_l1a_90sensor-alarm
|
|
153
237
|
Logical_source_description: IMAP-Ultra Instrument Level-1A Alarm Data for Ultra90.
|
|
154
238
|
|
|
239
|
+
imap_ultra_l1a_45sensor-cmdecho:
|
|
240
|
+
<<: *instrument_base
|
|
241
|
+
Data_type: L1A_CMDECHO>Level-1A Command Echo
|
|
242
|
+
Logical_source: imap_ultra_l1a_45sensor-cmdecho
|
|
243
|
+
Logical_source_description: IMAP-Ultra Instrument Level-1A Command Echo Data.
|
|
244
|
+
|
|
245
|
+
imap_ultra_l1a_90sensor-cmdecho:
|
|
246
|
+
<<: *instrument_base
|
|
247
|
+
Data_type: L1A_CMDECHO>Level-1A Command Echo
|
|
248
|
+
Logical_source: imap_ultra_l1a_90sensor-cmdecho
|
|
249
|
+
Logical_source_description: IMAP-Ultra Instrument Level-1A Command Echo Data.
|
|
250
|
+
|
|
155
251
|
imap_ultra_l1a_45sensor-memchecksum:
|
|
156
252
|
<<: *instrument_base
|
|
157
253
|
Data_type: L1A_45Sensor-MemChecksum>Level-1A Memory Checksum for Ultra45
|
|
@@ -200,6 +296,18 @@ imap_ultra_l1a_90sensor-bootstatus:
|
|
|
200
296
|
Logical_source: imap_ultra_l1a_90sensor-bootstatus
|
|
201
297
|
Logical_source_description: IMAP-Ultra Instrument Level-1A Boot Status Data for Ultra90.
|
|
202
298
|
|
|
299
|
+
imap_ultra_l1a_45sensor-macroschecksum:
|
|
300
|
+
<<: *instrument_base
|
|
301
|
+
Data_type: L1A_45Sensor-MacroChecksum>Level-1A Macro Checksum for Ultra45
|
|
302
|
+
Logical_source: imap_ultra_l1a_45sensor-macroschecksum
|
|
303
|
+
Logical_source_description: IMAP-Ultra Instrument Level-1A Macro Checksum Data for Ultra45.
|
|
304
|
+
|
|
305
|
+
imap_ultra_l1a_90sensor-macroschecksum:
|
|
306
|
+
<<: *instrument_base
|
|
307
|
+
Data_type: L1A_90Sensor-MacroChecksum>Level-1A Macro Checksum for Ultra90
|
|
308
|
+
Logical_source: imap_ultra_l1a_90sensor-macroschecksum
|
|
309
|
+
Logical_source_description: IMAP-Ultra Instrument Level-1A Macro Checksum Data for Ultra90.
|
|
310
|
+
|
|
203
311
|
imap_ultra_l1a_45sensor-macrodump:
|
|
204
312
|
<<: *instrument_base
|
|
205
313
|
Data_type: L1A_45Sensor-MacroDump>Level-1A Macro Dump for Ultra45
|
|
@@ -83,6 +83,86 @@ sid:
|
|
|
83
83
|
UNITS: " "
|
|
84
84
|
DEPEND_0: epoch
|
|
85
85
|
|
|
86
|
+
ssd_sum:
|
|
87
|
+
<<: *default_uint32
|
|
88
|
+
CATDESC: SSD Energy Sum.
|
|
89
|
+
FIELDNAM: ssd_sum
|
|
90
|
+
LABLAXIS: ssd energy sum
|
|
91
|
+
UNITS: " "
|
|
92
|
+
DEPEND_0: epoch
|
|
93
|
+
|
|
94
|
+
ssd0_energy_led:
|
|
95
|
+
<<: *default_uint32
|
|
96
|
+
CATDESC: SSD0 Energy LED.
|
|
97
|
+
FIELDNAM: ssd0_energy_led
|
|
98
|
+
LABLAXIS: ssd0 energy led
|
|
99
|
+
UNITS: " "
|
|
100
|
+
DEPEND_0: epoch
|
|
101
|
+
|
|
102
|
+
ssd1_energy_led:
|
|
103
|
+
<<: *default_uint32
|
|
104
|
+
CATDESC: SSD1 Energy LED.
|
|
105
|
+
FIELDNAM: ssd1_energy_led
|
|
106
|
+
LABLAXIS: ssd1 energy led
|
|
107
|
+
UNITS: " "
|
|
108
|
+
DEPEND_0: epoch
|
|
109
|
+
|
|
110
|
+
ssd2_energy_led:
|
|
111
|
+
<<: *default_uint32
|
|
112
|
+
CATDESC: SSD2 Energy LED.
|
|
113
|
+
FIELDNAM: ssd2_energy_led
|
|
114
|
+
LABLAXIS: ssd2 energy led
|
|
115
|
+
UNITS: " "
|
|
116
|
+
DEPEND_0: epoch
|
|
117
|
+
|
|
118
|
+
ssd3_energy_led:
|
|
119
|
+
<<: *default_uint32
|
|
120
|
+
CATDESC: SSD3 Energy LED.
|
|
121
|
+
FIELDNAM: ssd3_energy_led
|
|
122
|
+
LABLAXIS: ssd3 energy led
|
|
123
|
+
UNITS: " "
|
|
124
|
+
DEPEND_0: epoch
|
|
125
|
+
|
|
126
|
+
ssd4_energy_led:
|
|
127
|
+
<<: *default_uint32
|
|
128
|
+
CATDESC: SSD4 Energy LED.
|
|
129
|
+
FIELDNAM: ssd4_energy_led
|
|
130
|
+
LABLAXIS: ssd4 energy led
|
|
131
|
+
UNITS: " "
|
|
132
|
+
DEPEND_0: epoch
|
|
133
|
+
|
|
134
|
+
ssd5_energy_led:
|
|
135
|
+
<<: *default_uint32
|
|
136
|
+
CATDESC: SSD5 Energy LED.
|
|
137
|
+
FIELDNAM: ssd5_energy_led
|
|
138
|
+
LABLAXIS: ssd5 energy led
|
|
139
|
+
UNITS: " "
|
|
140
|
+
DEPEND_0: epoch
|
|
141
|
+
|
|
142
|
+
ssd6_energy_led:
|
|
143
|
+
<<: *default_uint32
|
|
144
|
+
CATDESC: SSD6 Energy LED.
|
|
145
|
+
FIELDNAM: ssd6_energy_led
|
|
146
|
+
LABLAXIS: ssd6 energy led
|
|
147
|
+
UNITS: " "
|
|
148
|
+
DEPEND_0: epoch
|
|
149
|
+
|
|
150
|
+
ssd7_energy_led:
|
|
151
|
+
<<: *default_uint32
|
|
152
|
+
CATDESC: SSD7 Energy LED.
|
|
153
|
+
FIELDNAM: ssd7_energy_led
|
|
154
|
+
LABLAXIS: ssd7 energy led
|
|
155
|
+
UNITS: " "
|
|
156
|
+
DEPEND_0: epoch
|
|
157
|
+
|
|
158
|
+
processed_events:
|
|
159
|
+
<<: *default_uint32
|
|
160
|
+
CATDESC: Processed Events.
|
|
161
|
+
FIELDNAM: processed_events
|
|
162
|
+
LABLAXIS: processed events
|
|
163
|
+
UNITS: " "
|
|
164
|
+
DEPEND_0: epoch
|
|
165
|
+
|
|
86
166
|
spin:
|
|
87
167
|
<<: *default_uint32
|
|
88
168
|
CATDESC: Spin number.
|
|
@@ -1131,6 +1211,14 @@ alarmid:
|
|
|
1131
1211
|
UNITS: ' '
|
|
1132
1212
|
DEPEND_0: epoch
|
|
1133
1213
|
|
|
1214
|
+
arguments:
|
|
1215
|
+
<<: *default_uint8
|
|
1216
|
+
CATDESC: Arguments
|
|
1217
|
+
FIELDNAM: arguments
|
|
1218
|
+
LABLAXIS: arguments
|
|
1219
|
+
UNITS: ' '
|
|
1220
|
+
DEPEND_0: epoch
|
|
1221
|
+
|
|
1134
1222
|
aux:
|
|
1135
1223
|
<<: *default_float32
|
|
1136
1224
|
CATDESC: Aux
|
|
@@ -1283,6 +1371,14 @@ cause:
|
|
|
1283
1371
|
UNITS: ' '
|
|
1284
1372
|
DEPEND_0: epoch
|
|
1285
1373
|
|
|
1374
|
+
checksum:
|
|
1375
|
+
<<: *default_uint16
|
|
1376
|
+
CATDESC: Checksums
|
|
1377
|
+
FIELDNAM: checksums
|
|
1378
|
+
LABLAXIS: checksums
|
|
1379
|
+
UNITS: ' '
|
|
1380
|
+
DEPEND_0: epoch
|
|
1381
|
+
|
|
1286
1382
|
checksums:
|
|
1287
1383
|
<<: *default_float32
|
|
1288
1384
|
CATDESC: Checksums
|
|
@@ -1484,7 +1580,6 @@ diagnosticmode:
|
|
|
1484
1580
|
DEPEND_0: epoch
|
|
1485
1581
|
|
|
1486
1582
|
dumpdata:
|
|
1487
|
-
<<: *default_float32
|
|
1488
1583
|
CATDESC: Dumpdata
|
|
1489
1584
|
FIELDNAM: dumpdata
|
|
1490
1585
|
LABLAXIS: dumpdata
|
|
@@ -2707,7 +2802,6 @@ macroblocks:
|
|
|
2707
2802
|
DEPEND_0: epoch
|
|
2708
2803
|
|
|
2709
2804
|
macrodata:
|
|
2710
|
-
<<: *default_float32
|
|
2711
2805
|
CATDESC: Macrodata
|
|
2712
2806
|
FIELDNAM: macrodata
|
|
2713
2807
|
LABLAXIS: macrodata
|
|
@@ -2946,6 +3040,13 @@ result:
|
|
|
2946
3040
|
UNITS: ' '
|
|
2947
3041
|
DEPEND_0: epoch
|
|
2948
3042
|
|
|
3043
|
+
result_description:
|
|
3044
|
+
CATDESC: Result description
|
|
3045
|
+
FIELDNAM: result_description
|
|
3046
|
+
LABLAXIS: result description
|
|
3047
|
+
UNITS: ' '
|
|
3048
|
+
DEPEND_0: epoch
|
|
3049
|
+
|
|
2949
3050
|
rightdeflection_v:
|
|
2950
3051
|
<<: *default_float32
|
|
2951
3052
|
CATDESC: Rightdeflection v
|
imap_processing/cdf/utils.py
CHANGED
|
@@ -44,7 +44,11 @@ def load_cdf(
|
|
|
44
44
|
if isinstance(file_path, imap_data_access.ImapFilePath):
|
|
45
45
|
file_path = file_path.construct_path()
|
|
46
46
|
|
|
47
|
-
|
|
47
|
+
# By default, do not convert epoch to datetime64. This ensures that the
|
|
48
|
+
# round-trip of writing and then loading a cdf keeps the dataset the same.
|
|
49
|
+
if "to_datetime" not in kwargs:
|
|
50
|
+
kwargs["to_datetime"] = False # type: ignore
|
|
51
|
+
dataset = cdf_to_xarray(file_path, **kwargs)
|
|
48
52
|
|
|
49
53
|
# cdf_to_xarray converts single-value attributes to lists
|
|
50
54
|
# convert these back to single values where applicable
|
|
@@ -154,6 +158,8 @@ def write_cdf(
|
|
|
154
158
|
extra_cdf_kwargs["terminate_on_warning"] = True # type: ignore
|
|
155
159
|
if "istp" not in extra_cdf_kwargs:
|
|
156
160
|
extra_cdf_kwargs["istp"] = True # type: ignore
|
|
161
|
+
if "compression" not in extra_cdf_kwargs:
|
|
162
|
+
extra_cdf_kwargs["compression"] = 6 # type: ignore
|
|
157
163
|
|
|
158
164
|
xarray_to_cdf(dataset, str(file_path), **extra_cdf_kwargs)
|
|
159
165
|
return file_path
|