pyrfu.mms.calculate_epsilon#

pyrfu.mms.calculate_epsilon(vdf: Dataset, model_vdf: Dataset, n_s: DataArray, sc_pot: DataArray, en_channels: list[int] | None = None) → DataArray[source]#

Calculate epsilon parameter using model distribution.

Parameters:
  • vdf (Dataset) – Observed particle distribution (skymap), in s^3/cm^6, s^3/m^6 or s^3/km^6.

  • model_vdf (Dataset) – Model particle distribution (skymap), in s^3/cm^6, s^3/m^6 or s^3/km^6.

  • n_s (DataArray) – Time series of the number density in cm^-3 (same times as vdf).

  • sc_pot (DataArray) – Time series of the spacecraft potential in V.

  • en_channels (list, Optional) – Energy channels to integrate over, as 0-based indices [start, stop) (stop excluded), e.g., [3, 32] for all but the three lowest of 32 channels. Default is all channels.

Returns:

Time series of the epsilon parameter.

Return type:

DataArray

Raises:
  • ValueError – If VDF and n_s have different times.

  • TypeError – If en_channels is not a list.

Examples

>>> from pyrfu import mms
>>> options = {"en_channels": [3, 32]}
>>> eps = mms.calculate_epsilon(vdf, model_vdf, n_s, sc_pot, **options)