imap_processing.idex.idex_l2a.estimate_dust_mass#
- imap_processing.idex.idex_l2a.estimate_dust_mass(low_sampling_time: DataArray, target_signal: DataArray, remove_noise: bool = True) tuple[ndarray[tuple[int, ...], dtype[_ScalarType_co]], float, float, float, ndarray[tuple[int, ...], dtype[_ScalarType_co]]]#
Filter and fit the target or ion grid signals to get the total dust impact charge.
- Parameters:
low_sampling_time (xarray.DataArray) – The low sampling time array.
target_signal (xarray.DataArray) – Target signal data.
remove_noise (bool) – If true, attempt to remove background noise, otherwise fit on the unfiltered signal.
- Returns:
param (numpy.ndarray) – Optimal target signal fit values for the parameters (popt) [time_of_impact, constant_offset, amplitude, rise_time, discharge_time] if fit successful. None otherwise.
sig_amp (float) – Signal amplitude, calculated as difference between fitted maximum signal and baseline mean if fit successful. None otherwise.
chi_squared (float) – Sum of squared residuals from the fit.
reduced_chi_squared (float) – Chi-squared per degree of freedom.
result (numpy.ndarray) – The model values evaluated at each time point.