ScienceData#

class stixpy.product.sources.ScienceData(*, meta, control, data, energies, idb_versions=None)[source]#

Bases: L1Product

Basic science data class

Attributes Summary

detectors

A stixpy.science.DetectorMasks object representing the detectors contained in the data.

duration

An astropy.units.Quantiy array giving the duration or integration time

energies

A astropy.table.Table object representing the energies contained in the data.

level

pixels

A stixpy.science.PixelMasks object representing the pixels contained in the data

service_subtype

Service subtype

service_type

Service type

ssid

Science Structure ID for product

time_range

A sunpy.time.TimeRange for the data.

times

An astropy.time.Time array representing the center of the observed time bins.

Methods Summary

concatenate(others)

Concatenate two or more science products.

get_data([time_indices, energy_indices, ...])

Return the counts, errors, times, durations and energies for selected data.

Attributes Documentation

detectors#

A stixpy.science.DetectorMasks object representing the detectors contained in the data.

duration#

An astropy.units.Quantiy array giving the duration or integration time

energies#

A astropy.table.Table object representing the energies contained in the data.

level#
pixels#

A stixpy.science.PixelMasks object representing the pixels contained in the data

service_subtype#

Service subtype

service_type#

Service type

ssid#

Science Structure ID for product

time_range#

A sunpy.time.TimeRange for the data.

times#

An astropy.time.Time array representing the center of the observed time bins.

Methods Documentation

concatenate(others)[source]#

Concatenate two or more science products.

Parameters:

others (list [stixpy.science.ScienceData]) – The other/s science products to concatenate

Returns:

stixpy.science.ScienceData – The concatenated science products

get_data(time_indices=None, energy_indices=None, detector_indices=None, pixel_indices=None, sum_all_times=False)[source]#

Return the counts, errors, times, durations and energies for selected data.

Optionally summing in time and or energy.

Parameters:
  • time_indices (list or numpy.ndarray) – If an 1xN array will be treated as mask if 2XN array will sum data between given indices. For example time_indices=[0, 2, 5] would return only the first, third and sixth times while time_indices=[[0, 2],[3, 5]] would sum the data between.

  • energy_indices (list or numpy.ndarray) – If an 1xN array will be treated as mask if 2XN array will sum data between given indices. For example energy_indices=[0, 2, 5] would return only the first, third and sixth times while energy_indices=[[0, 2],[3, 5]] would sum the data between.

  • detector_indices (list or numpy.ndarray) – If an 1xN array will be treated as mask if 2XN array will sum data between given indices. For example detector_indices=[0, 2, 5] would return only the first, third and sixth detectors while detector_indices=[[0, 2],[3, 5]] would sum the data between.

  • pixel_indices (list or numpy.ndarray) – If an 1xN array will be treated as mask if 2XN array will sum data between given indices. For example pixel_indices=[0, 2, 5] would return only the first, third and sixth pixels while pixel_indices=[[0, 2],[3, 5]] would sum the data between.

  • sum_all_times (bool) – Flag to sum all give time intervals into one

Returns:

tuple – Counts, errors, times, deltatimes, energies