Skip to content

Commit 3ee00e5

Browse files
author
Menlo Innovations - CAVA Project
committed
Merge branch 'main' into glows-lat-lon
2 parents 1a46de8 + f9a0b26 commit 3ee00e5

74 files changed

Lines changed: 1024 additions & 351 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

imap_l3_processing/cdf/cdf_utils.py

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@
44
from spacepy import pycdf
55
from spacepy.pycdf import CDF
66

7+
from imap_processing.ena_maps.utils import naming
78
from imap_l3_processing.cdf.imap_attribute_manager import ImapAttributeManager
89
from imap_l3_processing.swapi.l3a.models import DataProduct
910

@@ -20,12 +21,24 @@ def write_cdf(file_path: str, data: DataProduct, attribute_manager: ImapAttribut
2021
for k, v in global_attrs.items():
2122
cdf.attrs[k] = v
2223

24+
map_descriptor = None
25+
if data.input_metadata.instrument in ("lo", "hi", "ultra", "glows",):
26+
try:
27+
map_descriptor = naming.MapDescriptor.from_string(data.input_metadata.descriptor)
28+
except ValueError:
29+
# Assume this is not actually a map
30+
pass
31+
2332
for data_product in data.to_data_product_variables():
2433
var_name = data_product.name
2534
variable_attributes = attribute_manager.get_variable_attributes(var_name)
2635
data_type = getattr(pycdf.const, variable_attributes["DATA_TYPE"])
2736
data_array = np.asanyarray(data_product.value)
2837

38+
if (map_descriptor is not None
39+
and var_name == map_descriptor.principal_data_var):
40+
variable_attributes["CATDESC"] = map_descriptor.to_catdesc()
41+
2942
record_varying = variable_attributes["RECORD_VARYING"].lower() == "rv"
3043
if record_varying:
3144
dims = data_array.shape[1:]

imap_l3_processing/cdf/config/imap_codice_l3a_hi-direct-events_variable_attrs.yaml

Lines changed: 14 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -41,11 +41,11 @@ epoch:
4141
NAME: epoch
4242
CATDESC: Time, number of nanoseconds since J2000 with leap seconds included
4343
VAR_TYPE: support_data
44-
DISPLAY_TYPE: no_plot
4544
DATA_TYPE: CDF_TIME_TT2000
4645
FIELDNAM: Epoch
4746
RECORD_VARYING: RV
48-
LABLAXIS: epoch
47+
FORMAT: ' '
48+
LABLAXIS: Epoch
4949
UNITS: ns
5050
VALIDMIN: 2010-01-01T00:00:00.000000000
5151
VALIDMAX: 2099-12-31T00:00:00.000000000
@@ -61,22 +61,19 @@ epoch:
6161

6262
epoch_delta:
6363
NAME: epoch_delta
64-
VAR_TYPE: support_data
65-
DISPLAY_TYPE: no_plot
66-
RECORD_VARYING: RV
67-
DEPEND_0: epoch
68-
CATDESC: epoch_DELTA
69-
FIELDNAM: epoch_delta
64+
CATDESC: Epoch delta
65+
FIELDNAM: Epoch Delta
7066
DATA_TYPE: CDF_INT8
71-
FORMAT: I19
67+
FORMAT: I15
7268
UNITS: ns
7369
VALIDMIN: 0
74-
VALIDMAX: 86000000000000
70+
VALIDMAX: 999999999999999
7571
FILLVAL: -9223372036854775808
7672
SCALETYP: linear
77-
SCALEMIN: 0
78-
SCALEMAX: 86000000000000
79-
SI_CONVERSION: 1e-9>seconds
73+
LABLAXIS: Epoch delta
74+
DEPEND_0: epoch
75+
RECORD_VARYING: RV
76+
VAR_TYPE: support_data
8077

8178
data_quality:
8279
<<: *per_priority_data
@@ -125,6 +122,7 @@ ssd_energy:
125122
FIELDNAM: SSD Energy
126123
LABLAXIS: SSD energy
127124
UNITS: MeV
125+
SCALETYP: log
128126
SCALEMIN: 1.0e-2
129127
SCALEMAX: 1.0e+2
130128

@@ -199,6 +197,9 @@ energy_per_nuc:
199197
FIELDNAM: Energy per nuc
200198
LABLAXIS: Energy per nuc
201199
UNITS: MeV/nuc
200+
SCALEMIN: 1.0e-2
201+
SCALEMAX: 1.0e+4
202+
SCALETYP: log
202203

203204
estimated_mass:
204205
<<: *per_event_data

imap_l3_processing/cdf/config/imap_codice_l3a_lo-direct-events_variable_attrs.yaml

Lines changed: 98 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -32,11 +32,11 @@ epoch:
3232
NAME: epoch
3333
CATDESC: Time, number of nanoseconds since J2000 with leap seconds included
3434
VAR_TYPE: support_data
35-
DISPLAY_TYPE: no_plot
3635
DATA_TYPE: CDF_TIME_TT2000
3736
FIELDNAM: Epoch
3837
RECORD_VARYING: RV
39-
LABLAXIS: epoch
38+
FORMAT: ' '
39+
LABLAXIS: Epoch
4040
UNITS: ns
4141
VALIDMIN: 2010-01-01T00:00:00.000000000
4242
VALIDMAX: 2099-12-31T00:00:00.000000000
@@ -54,20 +54,17 @@ epoch_delta:
5454
NAME: epoch_delta
5555
CATDESC: Epoch delta
5656
FIELDNAM: Epoch Delta
57-
VAR_TYPE: support_data
58-
DISPLAY_TYPE: no_plot
59-
RECORD_VARYING: RV
60-
DEPEND_0: epoch
6157
DATA_TYPE: CDF_INT8
62-
FORMAT: I19
58+
FORMAT: I15
6359
UNITS: ns
6460
VALIDMIN: 0
65-
VALIDMAX: 86000000000000
61+
VALIDMAX: 999999999999999
6662
FILLVAL: -9223372036854775808
6763
SCALETYP: linear
68-
SCALEMIN: 0
69-
SCALEMAX: 86000000000000
70-
SI_CONVERSION: 1e-9>seconds
64+
LABLAXIS: Epoch delta
65+
DEPEND_0: epoch
66+
RECORD_VARYING: RV
67+
VAR_TYPE: support_data
7168

7269
event_index:
7370
<<: *support_data
@@ -380,4 +377,93 @@ position:
380377
VALIDMAX: 24
381378
FILLVAL: 255
382379
SCALETYP: linear
383-
FORMAT: I3
380+
FORMAT: I3
381+
382+
half_spin_per_esa_step:
383+
NAME: half_spin_per_esa_step
384+
CATDESC: Half spin number for each step of energy
385+
DEPEND_0: epoch
386+
DEPEND_1: esa_step
387+
FIELDNAM: Half Spin Number
388+
DATA_TYPE: CDF_UINT1
389+
FILLVAL: 255
390+
FORMAT: I3
391+
LABLAXIS: Half Spin Number
392+
SCALETYP: linear
393+
UNITS: half spin number
394+
VALIDMIN: 0
395+
VALIDMAX: 63
396+
VAR_TYPE: support_data
397+
VARIABLE_PURPOSE: ""
398+
399+
rgfo_spin_sector:
400+
NAME: rgfo_spin_sector
401+
CATDESC: Spin Sector When Reduced Gain Factor Operation (RGFO) was activated
402+
DEPEND_0: epoch
403+
DISPLAY_TYPE: time_series
404+
FIELDNAM: RGFO Spin Sector
405+
DATA_TYPE: CDF_UINT1
406+
FILLVAL: 255
407+
FORMAT: I3
408+
LABLAXIS: RGFO Spin Sector
409+
SCALETYP: linear
410+
UNITS: spin sector
411+
VALIDMIN: 0
412+
VALIDMAX: 255
413+
VAR_NOTES: Indicates the spin sector when Reduced Gain Factor Operation (RGFO) was activated. In RGFO, the Entrance ESA voltage is reduced in order to limit the number of ions that reach the detectors.
414+
VAR_TYPE: data
415+
VARIABLE_PURPOSE: ""
416+
417+
rgfo_esa_step:
418+
NAME: rgfo_esa_step
419+
CATDESC: Energy Step When Reduced Gain Factor Operation (RGFO) was activated
420+
DEPEND_0: epoch
421+
DISPLAY_TYPE: time_series
422+
FIELDNAM: RGFO Energy Step
423+
DATA_TYPE: CDF_UINT1
424+
FILLVAL: 255
425+
FORMAT: I3
426+
LABLAXIS: RGFO Energy Step
427+
SCALETYP: linear
428+
UNITS: energy step
429+
VALIDMIN: 0
430+
VALIDMAX: 255
431+
VAR_NOTES: Indicates the energy step when Reduced Gain Factor Operation (RGFO) was activated. In RGFO, the Entrance ESA voltage is reduced in order to limit the number of ions that reach the detectors.
432+
VAR_TYPE: data
433+
VARIABLE_PURPOSE: ""
434+
435+
nso_spin_sector:
436+
NAME: nso_spin_sector
437+
CATDESC: Spin Sector When No Scan Operation (NSO) was activated
438+
DEPEND_0: epoch
439+
DISPLAY_TYPE: time_series
440+
FIELDNAM: NSO Spin Sector
441+
DATA_TYPE: CDF_UINT1
442+
FILLVAL: 255
443+
FORMAT: I3
444+
LABLAXIS: NSO Spin Sector
445+
SCALETYP: linear
446+
UNITS: spin sector
447+
VALIDMIN: 0
448+
VALIDMAX: 255
449+
VAR_NOTES: Indicates the spin sector when No Scan Operation (NSO) was activated. In NSO, the ESA voltage is set to the first step in the scan and remains fixed until the next cycle boundary.
450+
VAR_TYPE: data
451+
VARIABLE_PURPOSE: ""
452+
453+
nso_esa_step:
454+
NAME: nso_esa_step
455+
CATDESC: Energy Step When No Scan Operation (NSO) was activated
456+
DEPEND_0: epoch
457+
DISPLAY_TYPE: time_series
458+
FIELDNAM: NSO Energy Step
459+
DATA_TYPE: CDF_UINT1
460+
FILLVAL: 255
461+
FORMAT: I3
462+
LABLAXIS: NSO Energy Step
463+
SCALETYP: linear
464+
UNITS: energy step
465+
VALIDMIN: 0
466+
VALIDMAX: 255
467+
VAR_NOTES: Indicates the energy step when No Scan Operation (NSO) was activated. In NSO, the ESA voltage is set to the first step in the scan and remains fixed until the next cycle boundary.
468+
VAR_TYPE: data
469+
VARIABLE_PURPOSE: ""

imap_l3_processing/cdf/config/imap_codice_l3a_lo-heplus-3d-distribution_variable_attrs.yaml

Lines changed: 7 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -30,11 +30,11 @@ epoch:
3030
NAME: epoch
3131
CATDESC: Time, number of nanoseconds since J2000 with leap seconds included
3232
VAR_TYPE: support_data
33-
DISPLAY_TYPE: no_plot
3433
DATA_TYPE: CDF_TIME_TT2000
3534
FIELDNAM: Epoch
3635
RECORD_VARYING: RV
37-
LABLAXIS: epoch
36+
FORMAT: ' '
37+
LABLAXIS: Epoch
3838
UNITS: ns
3939
VALIDMIN: 2010-01-01T00:00:00.000000000
4040
VALIDMAX: 2099-12-31T00:00:00.000000000
@@ -49,23 +49,20 @@ epoch:
4949
SI_CONVERSION: 1e-9>seconds
5050

5151
epoch_delta:
52-
<<: *support_data
53-
DEPEND_0: epoch
5452
NAME: epoch_delta
5553
CATDESC: Epoch delta
5654
FIELDNAM: Epoch Delta
5755
DATA_TYPE: CDF_INT8
58-
FORMAT: I19
56+
FORMAT: I15
5957
UNITS: ns
6058
VALIDMIN: 0
61-
VALIDMAX: 86000000000000
59+
VALIDMAX: 999999999999999
6260
FILLVAL: -9223372036854775808
6361
SCALETYP: linear
64-
SCALEMIN: 0
65-
SCALEMAX: 86000000000000
66-
SI_CONVERSION: 1e-9>seconds
67-
62+
LABLAXIS: Epoch delta
63+
DEPEND_0: epoch
6864
RECORD_VARYING: RV
65+
VAR_TYPE: support_data
6966

7067
elevation:
7168
<<: *support_data

imap_l3_processing/cdf/config/imap_codice_l3a_lo-heplus2-3d-distribution_variable_attrs.yaml

Lines changed: 7 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -30,11 +30,11 @@ epoch:
3030
NAME: epoch
3131
CATDESC: Time, number of nanoseconds since J2000 with leap seconds included
3232
VAR_TYPE: support_data
33-
DISPLAY_TYPE: no_plot
3433
DATA_TYPE: CDF_TIME_TT2000
3534
FIELDNAM: Epoch
3635
RECORD_VARYING: RV
37-
LABLAXIS: epoch
36+
FORMAT: ' '
37+
LABLAXIS: Epoch
3838
UNITS: ns
3939
VALIDMIN: 2010-01-01T00:00:00.000000000
4040
VALIDMAX: 2099-12-31T00:00:00.000000000
@@ -49,23 +49,20 @@ epoch:
4949
SI_CONVERSION: 1e-9>seconds
5050

5151
epoch_delta:
52-
<<: *support_data
53-
DEPEND_0: epoch
5452
NAME: epoch_delta
5553
CATDESC: Epoch delta
5654
FIELDNAM: Epoch Delta
5755
DATA_TYPE: CDF_INT8
58-
FORMAT: I19
56+
FORMAT: I15
5957
UNITS: ns
6058
VALIDMIN: 0
61-
VALIDMAX: 86000000000000
59+
VALIDMAX: 999999999999999
6260
FILLVAL: -9223372036854775808
6361
SCALETYP: linear
64-
SCALEMIN: 0
65-
SCALEMAX: 86000000000000
66-
SI_CONVERSION: 1e-9>seconds
67-
62+
LABLAXIS: Epoch delta
63+
DEPEND_0: epoch
6864
RECORD_VARYING: RV
65+
VAR_TYPE: support_data
6966

7067
elevation:
7168
<<: *support_data

imap_l3_processing/cdf/config/imap_codice_l3a_lo-hplus-3d-distribution_variable_attrs.yaml

Lines changed: 7 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -30,11 +30,11 @@ epoch:
3030
NAME: epoch
3131
CATDESC: Time, number of nanoseconds since J2000 with leap seconds included
3232
VAR_TYPE: support_data
33-
DISPLAY_TYPE: no_plot
3433
DATA_TYPE: CDF_TIME_TT2000
3534
FIELDNAM: Epoch
3635
RECORD_VARYING: RV
37-
LABLAXIS: epoch
36+
FORMAT: ' '
37+
LABLAXIS: Epoch
3838
UNITS: ns
3939
VALIDMIN: 2010-01-01T00:00:00.000000000
4040
VALIDMAX: 2099-12-31T00:00:00.000000000
@@ -49,23 +49,20 @@ epoch:
4949
SI_CONVERSION: 1e-9>seconds
5050

5151
epoch_delta:
52-
<<: *support_data
53-
DEPEND_0: epoch
5452
NAME: epoch_delta
5553
CATDESC: Epoch delta
5654
FIELDNAM: Epoch Delta
5755
DATA_TYPE: CDF_INT8
58-
FORMAT: I19
56+
FORMAT: I15
5957
UNITS: ns
6058
VALIDMIN: 0
61-
VALIDMAX: 86000000000000
59+
VALIDMAX: 999999999999999
6260
FILLVAL: -9223372036854775808
6361
SCALETYP: linear
64-
SCALEMIN: 0
65-
SCALEMAX: 86000000000000
66-
SI_CONVERSION: 1e-9>seconds
67-
62+
LABLAXIS: Epoch delta
63+
DEPEND_0: epoch
6864
RECORD_VARYING: RV
65+
VAR_TYPE: support_data
6966

7067
elevation:
7168
<<: *support_data

0 commit comments

Comments
 (0)