sdf_xarray.open_mfdataset

Contents

sdf_xarray.open_mfdataset#

sdf_xarray.open_mfdataset(path_glob, *, separate_times=False, keep_particles=False, probe_names=None, data_vars=None)[source]#

Open a set of EPOCH SDF files as one xarray.Dataset

EPOCH can output variables at different periods, so each individal SDF file from one EPOCH run may have different variables in it. In order to combine all files into one xarray.Dataset, we need to concatenate variables across their time dimension.

We have two choices:

  1. One time dimension where some variables may not be defined at all time points, and so will be filled with NaNs at missing points; or

  2. Multiple time dimensions, one for each output frequency

The second option is better for memory consumption, as the missing data with the first option still takes up space. However, proper lazy-loading may mitigate this.

The separate_times argument can be used to switch between these choices.

Parameters:
  • path_glob (Iterable | str | Path | Callable[..., Iterable[Path]]) – List of filenames or string glob pattern

  • separate_times (bool) – If True, create separate time dimensions for variables defined at different output frequencies

  • keep_particles (bool) – If True, also load particle data (this may use a lot of memory!)

  • probe_names (list[str] | None) – List of EPOCH probe names

  • data_vars (list[str] | None) – List of data vars to load in (If not specified loads in all variables)

Return type:

Dataset