imap-processing 0.19.0__py3-none-any.whl → 0.19.2__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 (64) hide show
  1. imap_processing/_version.py +2 -2
  2. imap_processing/cdf/config/imap_codice_global_cdf_attrs.yaml +6 -0
  3. imap_processing/cdf/config/imap_codice_l1a_variable_attrs.yaml +31 -894
  4. imap_processing/cdf/config/imap_codice_l1b_variable_attrs.yaml +279 -255
  5. imap_processing/cdf/config/imap_enamaps_l2-common_variable_attrs.yaml +11 -0
  6. imap_processing/cdf/config/imap_glows_l1b_variable_attrs.yaml +3 -1
  7. imap_processing/cdf/config/imap_lo_global_cdf_attrs.yaml +5 -4
  8. imap_processing/cdf/config/imap_ultra_global_cdf_attrs.yaml +20 -8
  9. imap_processing/cdf/config/imap_ultra_l1b_variable_attrs.yaml +33 -31
  10. imap_processing/cdf/config/imap_ultra_l1c_variable_attrs.yaml +61 -1
  11. imap_processing/cli.py +62 -71
  12. imap_processing/codice/codice_l0.py +2 -1
  13. imap_processing/codice/codice_l1a.py +47 -49
  14. imap_processing/codice/codice_l1b.py +42 -32
  15. imap_processing/codice/codice_l2.py +105 -7
  16. imap_processing/codice/constants.py +50 -8
  17. imap_processing/codice/data/lo_stepping_values.csv +1 -1
  18. imap_processing/ena_maps/ena_maps.py +39 -18
  19. imap_processing/ena_maps/utils/corrections.py +291 -0
  20. imap_processing/ena_maps/utils/map_utils.py +20 -4
  21. imap_processing/glows/l1b/glows_l1b.py +38 -23
  22. imap_processing/glows/l1b/glows_l1b_data.py +10 -11
  23. imap_processing/hi/hi_l1c.py +4 -109
  24. imap_processing/hi/hi_l2.py +34 -23
  25. imap_processing/hi/utils.py +109 -0
  26. imap_processing/ialirt/l0/ialirt_spice.py +1 -0
  27. imap_processing/ialirt/utils/create_xarray.py +1 -1
  28. imap_processing/lo/ancillary_data/imap_lo_hydrogen-geometric-factor_v001.csv +75 -0
  29. imap_processing/lo/ancillary_data/imap_lo_oxygen-geometric-factor_v001.csv +75 -0
  30. imap_processing/lo/l1b/lo_l1b.py +90 -16
  31. imap_processing/lo/l1c/lo_l1c.py +164 -50
  32. imap_processing/lo/l2/lo_l2.py +941 -127
  33. imap_processing/mag/l1d/mag_l1d_data.py +36 -3
  34. imap_processing/mag/l2/mag_l2.py +2 -0
  35. imap_processing/mag/l2/mag_l2_data.py +4 -3
  36. imap_processing/quality_flags.py +14 -0
  37. imap_processing/spice/geometry.py +15 -8
  38. imap_processing/spice/pointing_frame.py +4 -2
  39. imap_processing/spice/repoint.py +49 -0
  40. imap_processing/ultra/constants.py +29 -0
  41. imap_processing/ultra/l1b/badtimes.py +35 -11
  42. imap_processing/ultra/l1b/de.py +15 -9
  43. imap_processing/ultra/l1b/extendedspin.py +24 -12
  44. imap_processing/ultra/l1b/goodtimes.py +112 -0
  45. imap_processing/ultra/l1b/lookup_utils.py +1 -1
  46. imap_processing/ultra/l1b/ultra_l1b.py +7 -7
  47. imap_processing/ultra/l1b/ultra_l1b_culling.py +8 -4
  48. imap_processing/ultra/l1b/ultra_l1b_extended.py +79 -43
  49. imap_processing/ultra/l1c/helio_pset.py +68 -39
  50. imap_processing/ultra/l1c/l1c_lookup_utils.py +45 -12
  51. imap_processing/ultra/l1c/spacecraft_pset.py +81 -37
  52. imap_processing/ultra/l1c/ultra_l1c.py +27 -22
  53. imap_processing/ultra/l1c/ultra_l1c_culling.py +7 -0
  54. imap_processing/ultra/l1c/ultra_l1c_pset_bins.py +41 -41
  55. imap_processing/ultra/l2/ultra_l2.py +54 -10
  56. imap_processing/ultra/utils/ultra_l1_utils.py +10 -5
  57. {imap_processing-0.19.0.dist-info → imap_processing-0.19.2.dist-info}/METADATA +1 -1
  58. {imap_processing-0.19.0.dist-info → imap_processing-0.19.2.dist-info}/RECORD +62 -60
  59. imap_processing/ultra/l1b/cullingmask.py +0 -90
  60. imap_processing/ultra/l1c/histogram.py +0 -36
  61. /imap_processing/glows/ancillary/{imap_glows_pipeline_settings_20250923_v002.json → imap_glows_pipeline-settings_20250923_v002.json} +0 -0
  62. {imap_processing-0.19.0.dist-info → imap_processing-0.19.2.dist-info}/LICENSE +0 -0
  63. {imap_processing-0.19.0.dist-info → imap_processing-0.19.2.dist-info}/WHEEL +0 -0
  64. {imap_processing-0.19.0.dist-info → imap_processing-0.19.2.dist-info}/entry_points.txt +0 -0
@@ -681,7 +681,6 @@ class HistogramL1B:
681
681
  histogram: np.ndarray
682
682
  flight_software_version: str
683
683
  seq_count_in_pkts_file: int
684
- # ancillary_data_files: np.ndarray TODO Add this
685
684
  first_spin_id: int
686
685
  last_spin_id: int
687
686
  flags_set_onboard: int # TODO: this should be renamed in L1B
@@ -705,9 +704,7 @@ class HistogramL1B:
705
704
  imap_time_offset: np.double # No conversion needed from l1a->l1b
706
705
  glows_start_time: np.double # No conversion needed from l1a->l1b
707
706
  glows_time_offset: np.double # No conversion needed from l1a->l1b
708
- # unique_block_identifier: str = field(
709
- # init=False
710
- # ) # Could be datetime TODO: Can't put a string in data
707
+ unique_block_identifier: str = field(init=False)
711
708
  imap_spin_angle_bin_cntr: np.ndarray = field(init=False) # Same size as bins
712
709
  histogram_flag_array: np.ndarray = field(init=False)
713
710
  # These two are retrieved from spin data
@@ -724,10 +721,9 @@ class HistogramL1B:
724
721
  flags: np.ndarray = field(init=False)
725
722
  ancillary_exclusions: InitVar[AncillaryExclusions]
726
723
  ancillary_parameters: InitVar[AncillaryParameters]
724
+ pipeline_settings: InitVar[PipelineSettings]
727
725
  # TODO:
728
726
  # - Determine a good way to output flags as "human readable"
729
- # - Add spice pieces
730
- # - also unique identifiers
731
727
  # - Bad angle algorithm using SPICE locations
732
728
  # - Move ancillary file to AWS
733
729
 
@@ -739,6 +735,7 @@ class HistogramL1B:
739
735
  pulse_length_variance: np.double,
740
736
  ancillary_exclusions: AncillaryExclusions,
741
737
  ancillary_parameters: AncillaryParameters,
738
+ pipeline_settings: PipelineSettings,
742
739
  ) -> None:
743
740
  """
744
741
  Will process data.
@@ -759,6 +756,8 @@ class HistogramL1B:
759
756
  Ancillary exclusions data for bad-angle flag processing.
760
757
  ancillary_parameters : AncillaryParameters
761
758
  Ancillary parameters for decoding histogram data.
759
+ pipeline_settings : PipelineSettings
760
+ Pipeline settings for processing thresholds and flags.
762
761
  """
763
762
  # self.histogram_flag_array = np.zeros((2,))
764
763
  day = met_to_datetime64(self.imap_start_time)
@@ -804,9 +803,9 @@ class HistogramL1B:
804
803
  # is_inside_excluded_region, is_excluded_by_instr_team,
805
804
  # is_suspected_transient] x 3600 bins
806
805
  self.histogram_flag_array = self._compute_histogram_flag_array(day_exclusions)
807
- # self.unique_block_identifier = np.datetime_as_string(
808
- # np.datetime64(int(self.imap_start_time), "ns"), "s"
809
- # )
806
+ # Generate ISO datetime string using SPICE functions
807
+ datetime64_time = met_to_datetime64(self.imap_start_time)
808
+ self.unique_block_identifier = np.datetime_as_string(datetime64_time, "s")
810
809
  self.flags = np.ones((FLAG_LENGTH,), dtype=np.uint8)
811
810
 
812
811
  def update_spice_parameters(self) -> None:
@@ -852,7 +851,7 @@ class HistogramL1B:
852
851
  geometry.frame_transform(
853
852
  time_range,
854
853
  np.array([0, 0, 1]),
855
- SpiceFrame.IMAP_DPS,
854
+ SpiceFrame.IMAP_SPACECRAFT,
856
855
  SpiceFrame.ECLIPJ2000,
857
856
  )
858
857
  )
@@ -873,7 +872,7 @@ class HistogramL1B:
873
872
  )
874
873
  position = imap_state[:, :3]
875
874
  velocity = imap_state[:, 3:]
876
- # averange and standard deviation over time (rows)
875
+ # average and standard deviation over time (rows)
877
876
  self.spacecraft_location_average = np.average(position, axis=0)
878
877
  self.spacecraft_location_std_dev = np.std(position, axis=0)
879
878
  self.spacecraft_velocity_average = np.average(velocity, axis=0)
@@ -19,7 +19,7 @@ from imap_processing.hi.hi_l1a import (
19
19
  HALF_CLOCK_TICK_S,
20
20
  )
21
21
  from imap_processing.hi.utils import (
22
- CoincidenceBitmap,
22
+ CalibrationProductConfig,
23
23
  create_dataset_variables,
24
24
  full_dataarray,
25
25
  parse_sensor_number,
@@ -378,8 +378,9 @@ def pset_counts(
378
378
  filtered_de_df["spin_phase"].to_numpy() * N_SPIN_BINS
379
379
  ).astype(int)
380
380
  # When iterating over rows of a dataframe, the names of the multi-index
381
- # are not preserved. Below, `config_row.Index[0]` gets the cal_prod_num
382
- # value from the namedtuple representing the dataframe row.
381
+ # are not preserved. Below, `config_row.Index[0]` gets the
382
+ # calibration_prod value from the namedtuple representing the
383
+ # dataframe row.
383
384
  np.add.at(
384
385
  counts_var["counts"].data[0, i_esa, config_row.Index[0]],
385
386
  spin_bin_indices,
@@ -684,109 +685,3 @@ def good_time_and_phase_mask(
684
685
  """
685
686
  # TODO: Implement this once we have Goodtimes data product defined.
686
687
  return np.full_like(tick_mets, True, dtype=bool)
687
-
688
-
689
- @pd.api.extensions.register_dataframe_accessor("cal_prod_config")
690
- class CalibrationProductConfig:
691
- """
692
- Register custom accessor for calibration product configuration DataFrames.
693
-
694
- Parameters
695
- ----------
696
- pandas_obj : pandas.DataFrame
697
- Object to run validation and use accessor functions on.
698
- """
699
-
700
- index_columns = (
701
- "cal_prod_num",
702
- "esa_energy_step",
703
- )
704
- tof_detector_pairs = ("ab", "ac1", "bc1", "c1c2")
705
- required_columns = (
706
- "coincidence_type_list",
707
- *[
708
- f"tof_{det_pair}_{limit}"
709
- for det_pair in tof_detector_pairs
710
- for limit in ["low", "high"]
711
- ],
712
- )
713
-
714
- def __init__(self, pandas_obj: pd.DataFrame) -> None:
715
- self._validate(pandas_obj)
716
- self._obj = pandas_obj
717
- self._add_coincidence_values_column()
718
-
719
- def _validate(self, df: pd.DataFrame) -> None:
720
- """
721
- Validate the current configuration.
722
-
723
- Parameters
724
- ----------
725
- df : pandas.DataFrame
726
- Object to validate.
727
-
728
- Raises
729
- ------
730
- AttributeError : If the dataframe does not pass validation.
731
- """
732
- for index_name in self.index_columns:
733
- if index_name in df.index:
734
- raise AttributeError(
735
- f"Required index {index_name} not present in dataframe."
736
- )
737
- # Verify that the Dataframe has all the required columns
738
- for col in self.required_columns:
739
- if col not in df.columns:
740
- raise AttributeError(f"Required column {col} not present in dataframe.")
741
- # TODO: Verify that the same ESA energy steps exist in all unique calibration
742
- # product numbers
743
-
744
- def _add_coincidence_values_column(self) -> None:
745
- """Generate and add the coincidence_type_values column to the dataframe."""
746
- # Add a column that consists of the coincidence type strings converted
747
- # to integer values
748
- self._obj["coincidence_type_values"] = self._obj.apply(
749
- lambda row: tuple(
750
- CoincidenceBitmap.detector_hit_str_to_int(entry)
751
- for entry in row["coincidence_type_list"]
752
- ),
753
- axis=1,
754
- )
755
-
756
- @classmethod
757
- def from_csv(cls, path: Path) -> pd.DataFrame:
758
- """
759
- Read configuration CSV file into a pandas.DataFrame.
760
-
761
- Parameters
762
- ----------
763
- path : pathlib.Path
764
- Location of the Calibration Product configuration CSV file.
765
-
766
- Returns
767
- -------
768
- dataframe : pandas.DataFrame
769
- Validated calibration product configuration data frame.
770
- """
771
- df = pd.read_csv(
772
- path,
773
- index_col=cls.index_columns,
774
- converters={"coincidence_type_list": lambda s: tuple(s.split("|"))},
775
- comment="#",
776
- )
777
- # Force the _init_ method to run by using the namespace
778
- _ = df.cal_prod_config.number_of_products
779
- return df
780
-
781
- @property
782
- def number_of_products(self) -> int:
783
- """
784
- Get the number of calibration products in the current configuration.
785
-
786
- Returns
787
- -------
788
- number_of_products : int
789
- The maximum number of calibration products defined in the list of
790
- calibration product definitions.
791
- """
792
- return len(self._obj.index.unique(level="cal_prod_num"))
@@ -13,6 +13,7 @@ from imap_processing.ena_maps.ena_maps import (
13
13
  RectangularSkyMap,
14
14
  )
15
15
  from imap_processing.ena_maps.utils.naming import MapDescriptor
16
+ from imap_processing.hi.utils import CalibrationProductConfig
16
17
 
17
18
  logger = logging.getLogger(__name__)
18
19
 
@@ -153,14 +154,25 @@ def generate_hi_map(
153
154
  output_map.data_1d["obs_date_range"] = xr.zeros_like(output_map.data_1d["obs_date"])
154
155
 
155
156
  # Rename and convert coordinate from esa_energy_step energy
156
- esa_energies = esa_energy_lookup(
157
+ esa_df = esa_energy_df(
157
158
  esa_energies_path, output_map.data_1d["esa_energy_step"].data
158
159
  )
159
160
  output_map.data_1d = output_map.data_1d.rename({"esa_energy_step": "energy"})
160
- output_map.data_1d = output_map.data_1d.assign_coords(energy=esa_energies)
161
- # Set the energy_step_delta values
162
- # TODO: get the correct energy delta values (they are set to NaN) in
163
- # output_map.build_cdf_dataset()
161
+ output_map.data_1d = output_map.data_1d.assign_coords(
162
+ energy=esa_df["nominal_central_energy"].values
163
+ )
164
+ # Set the energy_step_delta values to the energy bandpass half-width-half-max
165
+ energy_delta = esa_df["bandpass_fwhm"].values / 2
166
+ output_map.data_1d["energy_delta_minus"] = xr.DataArray(
167
+ energy_delta,
168
+ name="energy_delta_minus",
169
+ dims=["energy"],
170
+ )
171
+ output_map.data_1d["energy_delta_plus"] = xr.DataArray(
172
+ energy_delta,
173
+ name="energy_delta_plus",
174
+ dims=["energy"],
175
+ )
164
176
 
165
177
  output_map.data_1d = output_map.data_1d.drop("esa_energy_step_label")
166
178
 
@@ -223,25 +235,26 @@ def calculate_ena_intensity(
223
235
  geometric_factors_path : str or pathlib.Path
224
236
  Where to get the geometric factors from.
225
237
  esa_energies_path : str or pathlib.Path
226
- Where to get the energies from.
238
+ Where to get the esa energies, energy deltas, and geometric factors.
227
239
 
228
240
  Returns
229
241
  -------
230
242
  intensity_vars : dict[str, xarray.DataArray]
231
243
  ENA Intensity with statistical and systematic uncertainties.
232
244
  """
233
- # TODO: Implement geometric factor lookup
234
- if geometric_factors_path:
235
- raise NotImplementedError
236
- geometric_factor = xr.DataArray(
237
- np.ones((map_ds["esa_energy_step"].size, map_ds["calibration_prod"].size)),
238
- coords=[map_ds["esa_energy_step"], map_ds["calibration_prod"]],
245
+ # read calibration product configuration file
246
+ cal_prod_df = CalibrationProductConfig.from_csv(geometric_factors_path)
247
+ # reindex_like removes esa_energy_steps and calibration products not in the
248
+ # map_ds esa_energy_step and calibration_product coordinates
249
+ geometric_factor = cal_prod_df.to_xarray().reindex_like(map_ds)["geometric_factor"]
250
+ geometric_factor = geometric_factor.transpose(
251
+ *[coord for coord in map_ds.coords if coord in geometric_factor.coords]
239
252
  )
240
-
241
- esa_energy = esa_energy_lookup(esa_energies_path, map_ds["esa_energy_step"].data)
253
+ energy_df = esa_energy_df(esa_energies_path, map_ds["esa_energy_step"].data)
254
+ esa_energy = energy_df.to_xarray()["nominal_central_energy"]
242
255
 
243
256
  # Convert ENA Signal Rate to Flux
244
- flux_conversion_divisor = geometric_factor * esa_energy[:, np.newaxis]
257
+ flux_conversion_divisor = geometric_factor * esa_energy
245
258
  intensity_vars = {
246
259
  "ena_intensity": map_ds["ena_signal_rates"] / flux_conversion_divisor,
247
260
  "ena_intensity_stat_unc": map_ds["ena_signal_rate_stat_unc"]
@@ -267,9 +280,9 @@ def calculate_ena_intensity(
267
280
  return intensity_vars
268
281
 
269
282
 
270
- def esa_energy_lookup(
283
+ def esa_energy_df(
271
284
  esa_energies_path: str | Path, esa_energy_steps: np.ndarray
272
- ) -> np.ndarray:
285
+ ) -> pd.DataFrame:
273
286
  """
274
287
  Lookup the nominal central energy values for given esa energy steps.
275
288
 
@@ -282,13 +295,11 @@ def esa_energy_lookup(
282
295
 
283
296
  Returns
284
297
  -------
285
- esa_energies: numpy.ndarray
286
- The nominal central energy for the given esa energy steps.
298
+ esa_energies_df: pandas.DataFrame
299
+ Full data frame from the csv file filtered to only include the
300
+ esa_energy_steps input.
287
301
  """
288
302
  esa_energies_lut = pd.read_csv(
289
303
  esa_energies_path, comment="#", index_col="esa_energy_step"
290
304
  )
291
- esa_energies = esa_energies_lut.loc[esa_energy_steps][
292
- "nominal_central_energy"
293
- ].values
294
- return esa_energies
305
+ return esa_energies_lut.loc[esa_energy_steps]
@@ -1,9 +1,12 @@
1
1
  """IMAP-Hi utils functions."""
2
2
 
3
+ from __future__ import annotations
4
+
3
5
  import re
4
6
  from collections.abc import Iterable, Sequence
5
7
  from dataclasses import dataclass
6
8
  from enum import IntEnum
9
+ from pathlib import Path
7
10
 
8
11
  import numpy as np
9
12
  import pandas as pd
@@ -392,3 +395,109 @@ class EsaEnergyStepLookupTable:
392
395
  return results.astype(self._esa_energy_step_dtype)[0]
393
396
  else:
394
397
  return results.astype(self._esa_energy_step_dtype)
398
+
399
+
400
+ @pd.api.extensions.register_dataframe_accessor("cal_prod_config")
401
+ class CalibrationProductConfig:
402
+ """
403
+ Register custom accessor for calibration product configuration DataFrames.
404
+
405
+ Parameters
406
+ ----------
407
+ pandas_obj : pandas.DataFrame
408
+ Object to run validation and use accessor functions on.
409
+ """
410
+
411
+ index_columns = (
412
+ "calibration_prod",
413
+ "esa_energy_step",
414
+ )
415
+ tof_detector_pairs = ("ab", "ac1", "bc1", "c1c2")
416
+ required_columns = (
417
+ "coincidence_type_list",
418
+ *[
419
+ f"tof_{det_pair}_{limit}"
420
+ for det_pair in tof_detector_pairs
421
+ for limit in ["low", "high"]
422
+ ],
423
+ )
424
+
425
+ def __init__(self, pandas_obj: pd.DataFrame) -> None:
426
+ self._validate(pandas_obj)
427
+ self._obj = pandas_obj
428
+ self._add_coincidence_values_column()
429
+
430
+ def _validate(self, df: pd.DataFrame) -> None:
431
+ """
432
+ Validate the current configuration.
433
+
434
+ Parameters
435
+ ----------
436
+ df : pandas.DataFrame
437
+ Object to validate.
438
+
439
+ Raises
440
+ ------
441
+ AttributeError : If the dataframe does not pass validation.
442
+ """
443
+ for index_name in self.index_columns:
444
+ if index_name in df.index:
445
+ raise AttributeError(
446
+ f"Required index {index_name} not present in dataframe."
447
+ )
448
+ # Verify that the Dataframe has all the required columns
449
+ for col in self.required_columns:
450
+ if col not in df.columns:
451
+ raise AttributeError(f"Required column {col} not present in dataframe.")
452
+ # TODO: Verify that the same ESA energy steps exist in all unique calibration
453
+ # product numbers
454
+
455
+ def _add_coincidence_values_column(self) -> None:
456
+ """Generate and add the coincidence_type_values column to the dataframe."""
457
+ # Add a column that consists of the coincidence type strings converted
458
+ # to integer values
459
+ self._obj["coincidence_type_values"] = self._obj.apply(
460
+ lambda row: tuple(
461
+ CoincidenceBitmap.detector_hit_str_to_int(entry)
462
+ for entry in row["coincidence_type_list"]
463
+ ),
464
+ axis=1,
465
+ )
466
+
467
+ @classmethod
468
+ def from_csv(cls, path: str | Path) -> pd.DataFrame:
469
+ """
470
+ Read configuration CSV file into a pandas.DataFrame.
471
+
472
+ Parameters
473
+ ----------
474
+ path : str or pathlib.Path
475
+ Location of the Calibration Product configuration CSV file.
476
+
477
+ Returns
478
+ -------
479
+ dataframe : pandas.DataFrame
480
+ Validated calibration product configuration data frame.
481
+ """
482
+ df = pd.read_csv(
483
+ path,
484
+ index_col=cls.index_columns,
485
+ converters={"coincidence_type_list": lambda s: tuple(s.split("|"))},
486
+ comment="#",
487
+ )
488
+ # Force the _init_ method to run by using the namespace
489
+ _ = df.cal_prod_config.number_of_products
490
+ return df
491
+
492
+ @property
493
+ def number_of_products(self) -> int:
494
+ """
495
+ Get the number of calibration products in the current configuration.
496
+
497
+ Returns
498
+ -------
499
+ number_of_products : int
500
+ The maximum number of calibration products defined in the list of
501
+ calibration product definitions.
502
+ """
503
+ return len(self._obj.index.unique(level="calibration_prod"))
@@ -133,6 +133,7 @@ def transform_instrument_vectors_to_inertial(
133
133
  spin_phase: NDArray,
134
134
  sc_inertial_right: NDArray,
135
135
  sc_inertial_decline: NDArray,
136
+ # TODO: Use correct IMAP_MAG_I or IMAP_MAG_O frame here
136
137
  instrument_frame: SpiceFrame = SpiceFrame.IMAP_MAG,
137
138
  spacecraft_frame: SpiceFrame = SpiceFrame.IMAP_SPACECRAFT,
138
139
  ) -> NDArray:
@@ -144,7 +144,7 @@ def create_xarray_from_records(records: list[dict]) -> xr.Dataset: # noqa: PLR0
144
144
  # Populate the dataset variables
145
145
  for i, record in enumerate(records):
146
146
  for key, val in record.items():
147
- if key in ["apid", "met", "met_in_utc", "ttj2000ns"]:
147
+ if key in ["apid", "met", "met_in_utc", "ttj2000ns", "last_modified"]:
148
148
  continue
149
149
  elif key in ["mag_B_GSE", "mag_B_GSM", "mag_B_RTN"]:
150
150
  dataset[key].data[i, :] = val
@@ -0,0 +1,75 @@
1
+ incident_E-Step,Observed_E-Step,Cntr_E,Cntr_E_unc,GF_Dbl_all,GF_Dbl_all_unc,GF_Trpl_all,GF_Trpl_all_unc,GF_Dbl_H,GF_Dbl_H_unc,GF_Trpl_H,GF_Trpl_H_unc
2
+ Hi_Res,,[keV],[keV],[cm^2sr keV/keV],[cm^2sr keV/keV],[cm^2sr keV/keV],[cm^2sr keV/keV],[cm^2sr keV/keV],[cm^2sr keV/keV],[cm^2sr keV/keV],[cm^2sr keV/keV]
3
+ 1,1,0.015,0.00135,5.35E-05,4.82E-06,2.20E-05,1.87E-06,5.32E-05,4.26E-06,2.19E-05,1.86E-06
4
+ 2,1,0.015,0.00135,3.10E-05,2.79E-06,1.25E-05,1.06E-06,3.09E-05,2.47E-06,1.27E-05,1.08E-06
5
+ 2,2,0.029,0.00261,1.04E-04,9.36E-06,4.27E-05,3.63E-06,1.03E-04,8.26E-06,4.24E-05,3.61E-06
6
+ 3,1,0.015,0.00135,4.13E-05,3.72E-06,1.68E-05,1.43E-06,4.16E-05,3.33E-06,1.71E-05,1.45E-06
7
+ 3,2,0.029,0.00261,1.28E-04,1.15E-05,5.02E-05,4.26E-06,1.30E-04,1.04E-05,5.35E-05,4.55E-06
8
+ 3,3,0.055,0.00495,1.59E-04,1.43E-05,6.54E-05,5.56E-06,1.59E-04,1.27E-05,6.51E-05,5.54E-06
9
+ 4,1,0.015,0.00135,9.85E-06,8.86E-07,3.73E-06,3.17E-07,7.97E-06,6.38E-07,3.28E-06,2.79E-07
10
+ 4,2,0.029,0.00261,1.71E-05,1.54E-06,6.54E-06,5.56E-07,1.68E-05,1.34E-06,6.89E-06,5.86E-07
11
+ 4,3,0.055,0.00495,6.72E-05,6.05E-06,2.58E-05,2.19E-06,6.92E-05,5.53E-06,2.84E-05,2.42E-06
12
+ 4,4,0.11,0.0099,1.79E-04,1.61E-05,7.36E-05,6.25E-06,1.78E-04,1.42E-05,7.30E-05,6.20E-06
13
+ 5,1,0.015,0.00135,1.62E-05,1.46E-06,5.05E-06,4.29E-07,7.86E-06,6.29E-07,3.23E-06,2.75E-07
14
+ 5,2,0.029,0.00261,1.57E-05,1.41E-06,5.16E-06,4.39E-07,9.72E-06,7.77E-07,3.99E-06,3.39E-07
15
+ 5,3,0.055,0.00495,1.45E-05,1.31E-06,4.98E-06,4.24E-07,1.49E-05,1.20E-06,6.14E-06,5.22E-07
16
+ 5,4,0.11,0.0099,5.81E-05,5.23E-06,2.15E-05,1.83E-06,6.00E-05,4.80E-06,2.47E-05,2.10E-06
17
+ 5,5,0.209,0.01881,1.77E-04,1.59E-05,7.26E-05,6.17E-06,1.76E-04,1.41E-05,7.22E-05,6.14E-06
18
+ 6,1,0.015,0.00135,1.34E-05,1.21E-06,4.33E-06,3.68E-07,9.40E-06,7.52E-07,3.86E-06,3.28E-07
19
+ 6,2,0.029,0.00261,1.61E-05,1.45E-06,4.64E-06,3.94E-07,1.11E-05,8.92E-07,4.58E-06,3.89E-07
20
+ 6,3,0.055,0.00495,1.74E-05,1.57E-06,5.02E-06,4.27E-07,1.42E-05,1.14E-06,5.84E-06,4.96E-07
21
+ 6,4,0.11,0.0099,1.45E-05,1.30E-06,4.28E-06,3.64E-07,1.56E-05,1.25E-06,6.40E-06,5.44E-07
22
+ 6,5,0.209,0.01881,5.81E-05,5.23E-06,2.06E-05,1.75E-06,6.01E-05,4.81E-06,2.47E-05,2.10E-06
23
+ 6,6,0.439,0.03951,2.06E-04,1.85E-05,8.46E-05,7.19E-06,2.06E-04,1.64E-05,8.45E-05,7.18E-06
24
+ 7,1,0.015,0.00135,5.32E-06,4.79E-07,1.51E-06,1.29E-07,5.05E-06,4.04E-07,2.08E-06,1.76E-07
25
+ 7,2,0.029,0.00261,1.61E-05,1.45E-06,5.15E-06,4.38E-07,1.39E-05,1.11E-06,5.70E-06,4.85E-07
26
+ 7,3,0.055,0.00495,1.96E-05,1.77E-06,6.10E-06,5.19E-07,1.42E-05,1.14E-06,5.84E-06,4.96E-07
27
+ 7,4,0.11,0.0099,2.08E-05,1.87E-06,6.43E-06,5.46E-07,1.65E-05,1.32E-06,6.78E-06,5.77E-07
28
+ 7,5,0.209,0.01881,2.52E-05,2.27E-06,8.69E-06,7.39E-07,2.61E-05,2.09E-06,1.07E-05,9.11E-07
29
+ 7,6,0.439,0.03951,1.93E-04,1.74E-05,6.94E-05,5.90E-06,1.98E-04,1.59E-05,8.15E-05,6.93E-06
30
+ 7,7,0.872,0.07848,3.82E-04,3.44E-05,1.57E-04,1.33E-05,3.82E-04,3.05E-05,1.57E-04,1.33E-05
31
+ 8,1,0.015,0.00135,5.28E-05,4.75E-06,2.25E-05,1.91E-06,4.10E-05,3.28E-06,1.68E-05,1.43E-06
32
+ 8,2,0.029,0.00261,6.14E-06,5.53E-07,1.96E-06,1.66E-07,5.25E-06,4.20E-07,2.16E-06,1.83E-07
33
+ 8,3,0.055,0.00495,1.13E-05,1.02E-06,3.39E-06,2.88E-07,9.37E-06,7.50E-07,3.85E-06,3.27E-07
34
+ 8,4,0.11,0.0099,1.16E-05,1.04E-06,3.83E-06,3.25E-07,8.69E-06,6.95E-07,3.57E-06,3.03E-07
35
+ 8,5,0.209,0.01881,1.09E-05,9.78E-07,3.55E-06,3.02E-07,8.41E-06,6.73E-07,3.46E-06,2.94E-07
36
+ 8,6,0.439,0.03951,3.29E-05,2.96E-06,1.28E-05,1.08E-06,3.28E-05,2.62E-06,1.35E-05,1.15E-06
37
+ 8,7,0.872,0.07848,3.95E-04,3.56E-05,1.44E-04,1.23E-05,4.04E-04,3.23E-05,1.66E-04,1.41E-05
38
+ 8,8,1.821,0.16389,5.41E-04,4.87E-05,2.22E-04,1.89E-05,5.41E-04,4.33E-05,2.22E-04,1.89E-05
39
+ Hi_Thr,,,,,,,,,,,
40
+ 1,1,0.016,0.00144,8.92E-05,8.03E-06,3.67E-05,3.12E-06,8.87E-05,7.10E-06,3.65E-05,3.10E-06
41
+ 2,1,0.016,0.00144,5.16E-05,4.65E-06,2.08E-05,1.76E-06,5.15E-05,4.12E-06,2.12E-05,1.80E-06
42
+ 2,2,0.03,0.0027,1.73E-04,1.56E-05,7.12E-05,6.06E-06,1.72E-04,1.38E-05,7.07E-05,6.01E-06
43
+ 3,1,0.016,0.00144,6.88E-05,6.19E-06,2.80E-05,2.38E-06,6.94E-05,5.55E-06,2.85E-05,2.42E-06
44
+ 3,2,0.03,0.0027,2.13E-04,1.91E-05,8.36E-05,7.11E-06,2.17E-04,1.74E-05,8.92E-05,7.58E-06
45
+ 3,3,0.056,0.00504,2.65E-04,2.39E-05,1.09E-04,9.26E-06,2.64E-04,2.11E-05,1.09E-04,9.23E-06
46
+ 4,1,0.016,0.00144,1.64E-05,1.48E-06,6.22E-06,5.29E-07,1.33E-05,1.06E-06,5.46E-06,4.64E-07
47
+ 4,2,0.03,0.0027,2.84E-05,2.56E-06,1.09E-05,9.27E-07,2.80E-05,2.24E-06,1.15E-05,9.77E-07
48
+ 4,3,0.056,0.00504,1.12E-04,1.01E-05,4.30E-05,3.66E-06,1.15E-04,9.22E-06,4.74E-05,4.03E-06
49
+ 4,4,0.111,0.00999,2.98E-04,2.68E-05,1.23E-04,1.04E-05,2.96E-04,2.37E-05,1.22E-04,1.03E-05
50
+ 5,1,0.016,0.00144,2.70E-05,2.43E-06,8.42E-06,7.15E-07,1.31E-05,1.05E-06,5.38E-06,4.58E-07
51
+ 5,2,0.03,0.0027,2.61E-05,2.35E-06,8.61E-06,7.31E-07,1.62E-05,1.30E-06,6.65E-06,5.66E-07
52
+ 5,3,0.056,0.00504,2.42E-05,2.18E-06,8.30E-06,7.06E-07,2.49E-05,1.99E-06,1.02E-05,8.70E-07
53
+ 5,4,0.111,0.00999,9.69E-05,8.72E-06,3.58E-05,3.04E-06,1.00E-04,8.00E-06,4.11E-05,3.49E-06
54
+ 5,5,0.21,0.0189,2.94E-04,2.65E-05,1.21E-04,1.03E-05,2.93E-04,2.34E-05,1.20E-04,1.02E-05
55
+ 6,1,0.016,0.00144,2.24E-05,2.01E-06,7.22E-06,6.14E-07,1.57E-05,1.25E-06,6.44E-06,5.47E-07
56
+ 6,2,0.03,0.0027,2.68E-05,2.41E-06,7.73E-06,6.57E-07,1.86E-05,1.49E-06,7.64E-06,6.49E-07
57
+ 6,3,0.056,0.00504,2.91E-05,2.61E-06,8.37E-06,7.12E-07,2.37E-05,1.89E-06,9.73E-06,8.27E-07
58
+ 6,4,0.111,0.00999,2.41E-05,2.17E-06,7.13E-06,6.06E-07,2.60E-05,2.08E-06,1.07E-05,9.07E-07
59
+ 6,5,0.21,0.0189,9.68E-05,8.71E-06,3.44E-05,2.92E-06,1.00E-04,8.02E-06,4.12E-05,3.50E-06
60
+ 6,6,0.44,0.0396,3.43E-04,3.09E-05,1.41E-04,1.20E-05,3.43E-04,2.74E-05,1.41E-04,1.20E-05
61
+ 7,1,0.016,0.00144,8.87E-06,7.98E-07,2.52E-06,2.14E-07,8.42E-06,6.73E-07,3.46E-06,2.94E-07
62
+ 7,2,0.03,0.0027,2.68E-05,2.41E-06,8.59E-06,7.30E-07,2.31E-05,1.85E-06,9.50E-06,8.08E-07
63
+ 7,3,0.056,0.00504,3.27E-05,2.95E-06,1.02E-05,8.64E-07,2.37E-05,1.89E-06,9.73E-06,8.27E-07
64
+ 7,4,0.111,0.00999,3.47E-05,3.12E-06,1.07E-05,9.10E-07,2.75E-05,2.20E-06,1.13E-05,9.61E-07
65
+ 7,5,0.21,0.0189,4.20E-05,3.78E-06,1.45E-05,1.23E-06,4.35E-05,3.48E-06,1.79E-05,1.52E-06
66
+ 7,6,0.44,0.0396,3.21E-04,2.89E-05,1.16E-04,9.84E-06,3.31E-04,2.65E-05,1.36E-04,1.16E-05
67
+ 7,7,0.873,0.07857,6.36E-04,5.73E-05,2.61E-04,2.22E-05,6.36E-04,5.09E-05,2.61E-04,2.22E-05
68
+ 8,1,0.016,0.00144,8.79E-05,7.91E-06,3.75E-05,3.19E-06,6.83E-05,5.46E-06,2.81E-05,2.39E-06
69
+ 8,2,0.03,0.0027,1.02E-05,9.21E-07,3.26E-06,2.77E-07,8.75E-06,7.00E-07,3.60E-06,3.06E-07
70
+ 8,3,0.056,0.00504,1.88E-05,1.70E-06,5.65E-06,4.80E-07,1.56E-05,1.25E-06,6.42E-06,5.46E-07
71
+ 8,4,0.111,0.00999,1.93E-05,1.73E-06,6.38E-06,5.42E-07,1.45E-05,1.16E-06,5.95E-06,5.06E-07
72
+ 8,5,0.21,0.0189,1.81E-05,1.63E-06,5.92E-06,5.03E-07,1.40E-05,1.12E-06,5.76E-06,4.90E-07
73
+ 8,6,0.44,0.0396,5.48E-05,4.93E-06,2.13E-05,1.81E-06,5.46E-05,4.37E-06,2.25E-05,1.91E-06
74
+ 8,7,0.873,0.07857,6.59E-04,5.93E-05,2.40E-04,2.04E-05,6.74E-04,5.39E-05,2.77E-04,2.35E-05
75
+ 8,8,1.822,0.16398,9.01E-04,8.11E-05,3.70E-04,3.15E-05,9.01E-04,7.21E-05,3.70E-04,3.15E-05
@@ -0,0 +1,75 @@
1
+ incident_E-Step,Observed_E-Step,Cntr_E,Cntr_E_unc,GF_Dbl_all,GF_Dbl_all_unc,GF_Trpl_all,GF_Trpl_all_unc,GF_Dbl_O,GF_Dbl_O_unc,GF_Trpl_O,GF_Trpl_O_unc
2
+ Hi_Res,,[keV],[keV],[cm^2sr keV/keV],[cm^2sr keV/keV],[cm^2sr keV/keV],[cm^2sr keV/keV],[cm^2sr keV/keV],[cm^2sr keV/keV],[cm^2sr keV/keV],[cm^2sr keV/keV]
3
+ 1,1,0.016,0.00144,3.8700E-04,3.4400E-04,8.9100E-05,8.0200E-05,4.2600E-04,3.4100E-04,1.0600E-04,9.1500E-05
4
+ 2,1,0.016,0.00144,2.8700E-04,2.5600E-04,6.6100E-05,5.9500E-05,2.7700E-04,2.2100E-04,6.9200E-05,5.9500E-05
5
+ 2,2,0.032,0.00288,4.4800E-04,3.9900E-04,9.6700E-05,8.7000E-05,4.7800E-04,3.8200E-04,1.2000E-04,1.0300E-04
6
+ 3,1,0.016,0.00144,5.2900E-04,4.7100E-04,1.3200E-04,1.1900E-04,4.1800E-04,3.3400E-04,1.0400E-04,8.9800E-05
7
+ 3,2,0.032,0.00288,5.9300E-04,5.2800E-04,1.4100E-04,1.2700E-04,6.3000E-04,5.0400E-04,1.5800E-04,1.3600E-04
8
+ 3,3,0.065,0.00585,6.9900E-04,6.2200E-04,1.6600E-04,1.5000E-04,7.6400E-04,6.1100E-04,1.9100E-04,1.6400E-04
9
+ 4,1,0.016,0.00144,6.6400E-04,5.9100E-04,1.7700E-04,1.5900E-04,4.1600E-04,3.3300E-04,1.0400E-04,8.9400E-05
10
+ 4,2,0.032,0.00288,1.1500E-03,1.0200E-03,2.6900E-04,2.4200E-04,1.0900E-03,8.7300E-04,2.7300E-04,2.3500E-04
11
+ 4,3,0.065,0.00585,2.3600E-03,2.1000E-03,5.1700E-04,4.6500E-04,2.5200E-03,2.0100E-03,6.2900E-04,5.4100E-04
12
+ 4,4,0.135,0.01215,8.1500E-04,7.2600E-04,1.9100E-04,1.7200E-04,8.7400E-04,7.0000E-04,2.1900E-04,1.8800E-04
13
+ 5,1,0.016,0.00144,2.8100E-04,2.5000E-04,8.8400E-05,7.9600E-05,1.2500E-04,9.9900E-05,3.1200E-05,2.6800E-05
14
+ 5,2,0.032,0.00288,3.8100E-04,3.4000E-04,1.0800E-04,9.7300E-05,2.0800E-04,1.6600E-04,5.1900E-05,4.4600E-05
15
+ 5,3,0.065,0.00585,5.8000E-04,5.1600E-04,1.3800E-04,1.2400E-04,5.7100E-04,4.5700E-04,1.4300E-04,1.2300E-04
16
+ 5,4,0.135,0.01215,5.4100E-04,4.8100E-04,1.2100E-04,1.0800E-04,5.6900E-04,4.5500E-04,1.4200E-04,1.2200E-04
17
+ 5,5,0.279,0.02511,8.4100E-04,7.4900E-04,2.0500E-04,1.8500E-04,8.6900E-04,6.9500E-04,2.1700E-04,1.8700E-04
18
+ 6,1,0.016,0.00144,2.2100E-04,1.9700E-04,7.1000E-05,6.3900E-05,4.7600E-05,3.8100E-05,1.1900E-05,1.0200E-05
19
+ 6,2,0.032,0.00288,3.1900E-04,2.8400E-04,9.7800E-05,8.8000E-05,1.3800E-04,1.1100E-04,3.4600E-05,2.9800E-05
20
+ 6,3,0.065,0.00585,4.4900E-04,4.0000E-04,1.2400E-04,1.1100E-04,1.7000E-04,1.3600E-04,4.2500E-05,3.6500E-05
21
+ 6,4,0.135,0.01215,6.7700E-04,6.0300E-04,1.5400E-04,1.3800E-04,5.1000E-04,4.0800E-04,1.2700E-04,1.1000E-04
22
+ 6,5,0.279,0.02511,1.2800E-03,1.1400E-03,2.9100E-04,2.6200E-04,1.1700E-03,9.3300E-04,2.9100E-04,2.5100E-04
23
+ 6,6,0.601,0.05409,8.3600E-04,7.4400E-04,1.9800E-04,1.7800E-04,8.2700E-04,6.6100E-04,2.0700E-04,1.7800E-04
24
+ 7,1,0.016,0.00144,1.8500E-04,1.6500E-04,5.9600E-05,5.3700E-05,5.6700E-05,4.5400E-05,1.4200E-05,1.2200E-05
25
+ 7,2,0.032,0.00288,2.3400E-04,2.0800E-04,7.3700E-05,6.6300E-05,9.2100E-05,7.3700E-05,2.3000E-05,1.9800E-05
26
+ 7,3,0.065,0.00585,3.2000E-04,2.8500E-04,9.2000E-05,8.2800E-05,1.0600E-04,8.5000E-05,2.6600E-05,2.2800E-05
27
+ 7,4,0.135,0.01215,4.4900E-04,4.0000E-04,1.2000E-04,1.0800E-04,1.7800E-04,1.4200E-04,4.4400E-05,3.8200E-05
28
+ 7,5,0.279,0.02511,7.1800E-04,6.3900E-04,1.7600E-04,1.5800E-04,6.1600E-04,4.9300E-04,1.5400E-04,1.3200E-04
29
+ 7,6,0.601,0.05409,1.0300E-03,9.1800E-04,2.4500E-04,2.2000E-04,9.9900E-04,7.9900E-04,2.5000E-04,2.1500E-04
30
+ 7,7,1.206,0.10854,9.6000E-04,8.5400E-04,2.4400E-04,2.1900E-04,9.6100E-04,7.6900E-04,2.4000E-04,2.0700E-04
31
+ 8,1,0.016,0.00144,2.8900E-04,2.5800E-04,9.1800E-05,8.2700E-05,4.4800E-05,3.5800E-05,1.1200E-05,9.6300E-06
32
+ 8,2,0.032,0.00288,3.4200E-04,3.0500E-04,1.0500E-04,9.4300E-05,6.8300E-05,5.4600E-05,1.7100E-05,1.4700E-05
33
+ 8,3,0.065,0.00585,1.9300E-04,1.7200E-04,5.6900E-05,5.1200E-05,4.9700E-05,3.9800E-05,1.2400E-05,1.0700E-05
34
+ 8,4,0.135,0.01215,2.7000E-04,2.4000E-04,7.2300E-05,6.5000E-05,6.1300E-05,4.9000E-05,1.5300E-05,1.3200E-05
35
+ 8,5,0.279,0.02511,3.7600E-04,3.3500E-04,9.7400E-05,8.7700E-05,1.5500E-04,1.2400E-04,3.8800E-05,3.3300E-05
36
+ 8,6,0.601,0.05409,7.3600E-04,6.5500E-04,1.8400E-04,1.6600E-04,6.0000E-04,4.8000E-04,1.5000E-04,1.2900E-04
37
+ 8,7,1.206,0.10854,1.0600E-03,9.4100E-04,2.5600E-04,2.3100E-04,9.7300E-04,7.7900E-04,2.4300E-04,2.0900E-04
38
+ 8,8,2.361,0.21249,9.8400E-04,8.7500E-04,2.5500E-04,2.2900E-04,9.3600E-04,7.4900E-04,2.3400E-04,2.0100E-04
39
+ Hi_Thr,,,,,,,,,,,
40
+ 1,1,0.017,0.00153,6.4500E-04,5.7400E-04,1.4900E-04,1.3400E-04,7.1000E-04,5.6800E-04,1.7700E-04,1.5300E-04
41
+ 2,1,0.017,0.00153,4.7900E-04,4.2600E-04,1.1000E-04,9.9200E-05,4.6100E-04,3.6900E-04,1.1500E-04,9.9200E-05
42
+ 2,2,0.033,0.00297,7.4600E-04,6.6400E-04,1.6100E-04,1.4500E-04,7.9700E-04,6.3700E-04,1.9900E-04,1.7100E-04
43
+ 3,1,0.017,0.00153,8.8200E-04,7.8500E-04,2.2000E-04,1.9800E-04,6.9600E-04,5.5700E-04,1.7400E-04,1.5000E-04
44
+ 3,2,0.033,0.00297,9.8800E-04,8.7900E-04,2.3500E-04,2.1100E-04,1.0500E-03,8.4100E-04,2.6300E-04,2.2600E-04
45
+ 3,3,0.066,0.00594,1.1700E-03,1.0400E-03,2.7700E-04,2.4900E-04,1.2700E-03,1.0200E-03,3.1800E-04,2.7400E-04
46
+ 4,1,0.017,0.00153,1.1100E-03,9.8600E-04,2.9500E-04,2.6600E-04,6.9300E-04,5.5400E-04,1.7300E-04,1.4900E-04
47
+ 4,2,0.033,0.00297,1.9200E-03,1.7100E-03,4.4800E-04,4.0300E-04,1.8200E-03,1.4600E-03,4.5500E-04,3.9100E-04
48
+ 4,3,0.066,0.00594,3.9300E-03,3.4900E-03,8.6100E-04,7.7500E-04,4.1900E-03,3.3500E-03,1.0500E-03,9.0100E-04
49
+ 4,4,0.136,0.01224,1.3600E-03,1.2100E-03,3.1800E-04,2.8600E-04,1.4600E-03,1.1700E-03,3.6400E-04,3.1300E-04
50
+ 5,1,0.017,0.00153,4.6800E-04,4.1700E-04,1.4700E-04,1.3300E-04,2.0800E-04,1.6700E-04,5.2000E-05,4.4700E-05
51
+ 5,2,0.033,0.00297,6.3600E-04,5.6600E-04,1.8000E-04,1.6200E-04,3.4600E-04,2.7700E-04,8.6500E-05,7.4400E-05
52
+ 5,3,0.066,0.00594,9.6600E-04,8.6000E-04,2.3000E-04,2.0700E-04,9.5100E-04,7.6100E-04,2.3800E-04,2.0400E-04
53
+ 5,4,0.136,0.01224,9.0100E-04,8.0200E-04,2.0100E-04,1.8100E-04,9.4800E-04,7.5800E-04,2.3700E-04,2.0400E-04
54
+ 5,5,0.28,0.0252,1.4000E-03,1.2500E-03,3.4200E-04,3.0800E-04,1.4500E-03,1.1600E-03,3.6200E-04,3.1100E-04
55
+ 6,1,0.017,0.00153,3.6800E-04,3.2800E-04,1.1800E-04,1.0700E-04,7.9400E-05,6.3500E-05,1.9800E-05,1.7100E-05
56
+ 6,2,0.033,0.00297,5.3200E-04,4.7300E-04,1.6300E-04,1.4700E-04,2.3100E-04,1.8500E-04,5.7700E-05,4.9600E-05
57
+ 6,3,0.066,0.00594,7.4800E-04,6.6600E-04,2.0600E-04,1.8500E-04,2.8300E-04,2.2600E-04,7.0800E-05,6.0900E-05
58
+ 6,4,0.136,0.01224,1.1300E-03,1.0000E-03,2.5600E-04,2.3000E-04,8.4900E-04,6.8000E-04,2.1200E-04,1.8300E-04
59
+ 6,5,0.28,0.0252,2.1400E-03,1.9100E-03,4.8500E-04,4.3700E-04,1.9400E-03,1.5500E-03,4.8600E-04,4.1800E-04
60
+ 6,6,0.602,0.05418,1.3900E-03,1.2400E-03,3.3000E-04,2.9700E-04,1.3800E-03,1.1000E-03,3.4400E-04,2.9600E-04
61
+ 7,1,0.017,0.00153,3.0900E-04,2.7500E-04,9.9400E-05,8.9500E-05,9.4500E-05,7.5600E-05,2.3600E-05,2.0300E-05
62
+ 7,2,0.033,0.00297,3.9000E-04,3.4700E-04,1.2300E-04,1.1100E-04,1.5400E-04,1.2300E-04,3.8400E-05,3.3000E-05
63
+ 7,3,0.066,0.00594,5.3400E-04,4.7500E-04,1.5300E-04,1.3800E-04,1.7700E-04,1.4200E-04,4.4300E-05,3.8100E-05
64
+ 7,4,0.136,0.01224,7.4900E-04,6.6700E-04,2.0000E-04,1.8000E-04,2.9600E-04,2.3700E-04,7.4000E-05,6.3700E-05
65
+ 7,5,0.28,0.0252,1.2000E-03,1.0700E-03,2.9300E-04,2.6400E-04,1.0300E-03,8.2100E-04,2.5700E-04,2.2100E-04
66
+ 7,6,0.602,0.05418,1.7200E-03,1.5300E-03,4.0800E-04,3.6700E-04,1.6700E-03,1.3300E-03,4.1600E-04,3.5800E-04
67
+ 7,7,1.207,0.10863,1.6000E-03,1.4200E-03,4.0600E-04,3.6500E-04,1.6000E-03,1.2800E-03,4.0000E-04,3.4400E-04
68
+ 8,1,0.017,0.00153,4.8200E-04,4.2900E-04,1.5300E-04,1.3800E-04,7.4700E-05,5.9700E-05,1.8700E-05,1.6100E-05
69
+ 8,2,0.033,0.00297,5.7000E-04,5.0800E-04,1.7500E-04,1.5700E-04,1.1400E-04,9.1100E-05,2.8500E-05,2.4500E-05
70
+ 8,3,0.066,0.00594,3.2100E-04,2.8600E-04,9.4800E-05,8.5300E-05,8.2900E-05,6.6300E-05,2.0700E-05,1.7800E-05
71
+ 8,4,0.136,0.01224,4.5000E-04,4.0100E-04,1.2000E-04,1.0800E-04,1.0200E-04,8.1700E-05,2.5500E-05,2.2000E-05
72
+ 8,5,0.28,0.0252,6.2700E-04,5.5800E-04,1.6200E-04,1.4600E-04,2.5800E-04,2.0700E-04,6.4600E-05,5.5600E-05
73
+ 8,6,0.602,0.05418,1.2300E-03,1.0900E-03,3.0700E-04,2.7600E-04,1.0000E-03,8.0000E-04,2.5000E-04,2.1500E-04
74
+ 8,7,1.207,0.10863,1.7600E-03,1.5700E-03,4.2700E-04,3.8400E-04,1.6200E-03,1.3000E-03,4.0600E-04,3.4900E-04
75
+ 8,8,2.362,0.21258,1.6400E-03,1.4600E-03,4.2500E-04,3.8200E-04,1.5600E-03,1.2500E-03,3.9000E-04,3.3500E-04