### Cite this as (APA format)

*Supplementary material for: Mass calibration of Rosetta’s ROSINA/DFMS mass spectrometer - Software*(Version 20240417) [Computer software]. Royal Belgian Institute for Space Aeronomy. https://doi.org/10.18758/71021093

Users of this DOI are kindly encouraged to contact the author(s) for help and cooperation towards further successful utilisation.

### Technical info

Resource format | ZIP |
---|---|

Resource size | 74.7 kB |

Software description |
This software pack, together with the figures it produces, presents supplementary material in support of the publication J. De Keyser, F. Dhooghe, K. Altwegg, M. Rubin, N. Hänni, S. A. Fuselier, J.-J. Berthelier, E. Neefs. Mass calibration of Rosetta’s ROSINA/DFMS mass spectrometer. International Journal of Mass Spectrometry, 2024. This data set holds MATLAB software, in particular routines for computing the mass calibration of mass spectra obtained with the DFMS mass spectrometer onboard the European Space Agency’s Rosetta spacecraft, for the neutral high-resolution modes and commanded mass-over-charge 13-69 Da/e. The software was developed with MATLAB R2022a. This data set also holds the output files and the figures obtained by running that program, as well as a mass calibration file that can be used by DFMS data analysis programs. |

### Additional info

Data last updated | July 12, 2024 |
---|---|

Metadata last updated | July 12, 2024 |

Created | unknown |

# Program files (MATLAB 2022a)

Main program

- dm_analysis.m : Driver routine for computing the mass calibration.

Auxiliary routines

- dm_analysis_beam_shift.m : This routine defines the beam shift for the commanded mass-over-charge values.
- dm_analysis_dispersion.m : This routine defines the dispersion factor for the commanded mass-over-charge values.
- dm_analysis_read_mass_peak_data.m, dm_analysis_read_position_and_attitude.m, dm_analysis_read_temperature.m : These routines read data files from the “data” folder.
- dm_analysis_pixAB.m : This routine determines the pixel difference between channels A and B for all the commanded mass-over-charge values.
- dm_analysis_enrich_mass_peak_data.m : This routine associates temperature, position, and attitude data with the data for the peaks.
- dm_analysis_filter_peak_data.m, dm_analysis_remove_outliers.m, fit_skewed_normal_distribution.m, running_average.m, running_median.m, running_signed_median.m : These routines are used in filtering the peak data according to various criteria, and to remove outliers.
- dm_analysis_find_time_interval.m : This routine finds the time interval to be used, containing all the data.
- expl_optimization.m, BFGS_optimization.m, find_orthonormal_complement.m : These routines implement the optimization technique, which is exploratory optimization, that in turns uses BFGS steepest descent optimization. These routines allow constraints to be specified.
- dm_analysis_plot_consistency.m, dm_analysis_plot_convergence.m, dm_analysis_plot_correlation.m, dm_analysis_plot_dp0_poly.m, dm_analysis_plot_fitting.m, dm_analysis_plot_overview.m, dm_analysis_plot_pixAB.m, dm_analysis_plot_residual_distributions.m : These routines create various types of plots. The resulting figures are written to the output folder.
- dm_analysis_write.m : This routine writes the calibration file that is the result of the computation into a file in the output folder.
- julian_day.m : Routine for obtaining the Julian Day for a specified calendar date.
- fit_linear_spline.m : This routine computes a piecewise linear spline fit to the given data, while imposing a smoothness condition and constraints on the fitted function.
- histogram_1d.m : This routine constructs a histogram of a monovariate distributed quantity.
- mim_random.m, mim_random_generate.m, mim_random_length.m : These routines handle random number generation, which is used by the exploratory optimization technique.

Usage:

Copy the MatLab files in a directory, for instance, “work”. Make that directory the current directory. Type “dm_analysis” on the command line (no arguments). MatLab then runs the program.