imap_processing.idex.idex_l2b#

Perform IDEX L2b Processing.

Examples

from imap_processing.idex.idex_l1a import PacketParser
from imap_processing.idex.idex_l1b import idex_l1b
from imap_processing.idex.idex_l1b import idex_l2a
from imap_processing.idex.idex_l1b import idex_l2b

l0_file = "imap_processing/tests/idex/imap_idex_l0_raw_20231218_v001.pkts"
l0_file_hk = "imap_processing/tests/idex/imap_idex_l0_raw_20250108_v001.pkts"
l1a_data = PacketParser(l0_file).data[0]
evt_data = PacketParser(l0_file_hk).data[0]
l1a_data, l1a_evt_data, l1b_evt_data = PacketParser(l0_file)
l1b_data = idex_l1b(l1a_data)
l1a_data = idex_l2a(l1b_data)
l2b_and_l2c_datasets = idex_l2b(l2a_data, [evt_data])
write_cdf(l2b_and_l2c_datasets[0])
write_cdf(l2b_and_l2c_datasets[1])

Functions

bin_spin_phases(spin_phases)

Bin spin phase angles into 4 quadrants: [315°-45°,45°-135°,135°-225°, 225°-315°].

compute_counts_by_charge_and_mass(...)

Compute the dust counts by charge and mass by spin phase or lon and lat per day.

compute_rates(counts, epoch_doy_percent_on, ...)

Compute the count rates given the percent uptime of IDEX.

compute_rates_by_charge_and_mass(...)

Compute the dust event counts rates by charge and mass by spin phase for each day.

get_science_acquisition_on_percentage(...)

Calculate the percentage of time science acquisition was occurring for each day.

get_science_acquisition_timestamps(evt_dataset)

Get the science acquisition start and stop times and messages from the event data.

idex_l2b(l2a_datasets, evt_datasets)

Will process IDEX l2a data to create l2b and l2c data products.