dubfi.fluxes.dataprovider¶
Abstract data provider interface.
Added in version 0.1.1.
Classes¶
Abstract base class for data providers for inversion. |
|
Abstract base class for data providers for inversion. |
Functions¶
|
Reduce dataset to given keys, read additional data if necessary. |
|
Read additional data for given dataset. |
Module Contents¶
- class dubfi.fluxes.dataprovider.AbstractDataProvider¶
Bases:
abc.ABCAbstract base class for data providers for inversion.
- property config: dict[str, Any]¶
- Abstractmethod:
Inversion configuration.
- property coords: dict[str, Any]¶
- Abstractmethod:
Data coordinates, see
dubfi.fluxes.readobs.coordinates_from_config().
- abstractmethod get_R() dubfi.linalg.generic.ParametrizedOperator¶
Get R parametrized operator (error covariance matrix).
For the ensemble flux inversion, this operator is constructed as described in R-matrix and uncertainties.
- abstractmethod get_H() dubfi.linalg.generic.ParametrizedVector¶
Get H parametrized vector (observation operator).
For the flux inversion, this is just a linear operator (i.e., a matrix). A possible offset or background concentration in the model prediction should be directly subtracted from the vector returned by
get_Y().
- abstractmethod get_Y() dubfi.linalg.types.AbstractVector¶
Get Y vector (observation minus model prior).
This is usually the vector of observations minus the model prior, or the observations minus the model background.
- get_mdm_eigenbasis_size() int¶
Get size of self.get_R().validate_uncertainty_statistics(mdm) output.
- class dubfi.fluxes.dataprovider.InsituDataProvider¶
Bases:
AbstractDataProviderAbstract base class for data providers for inversion.
- get_mdm_eigenbasis_size() int¶
Get size of self.get_R().validate_uncertainty_statistics(mdm) output.
- weight_outliers() None¶
Inflate uncertainty for outliers.
- Raises:
RuntimeError – if called a second time
- apply_global_inflation() None¶
Apply global uncertainty inflation in-place.
- Raises:
RuntimeError – if called a second time
- abstractmethod read_data()¶
Read data from files.
- _read_ens(fname: str, times: numpy.ndarray, obsidcs: numpy.ndarray | slice, **netcdf_kw) None¶
Read ensemble data, helper for
read_data().
- _read_det(fname: str, times: numpy.ndarray, obsidcs: numpy.ndarray | slice, ssh: str, same_site_count: numpy.ndarray, **netcdf_kw) None¶
Read deterministic data, helper for
read_data().
- dubfi.fluxes.dataprovider.reduce_ds_read_aux(ds: xarray.Dataset, keys: list[str]) xarray.Dataset¶
Reduce dataset to given keys, read additional data if necessary.
- dubfi.fluxes.dataprovider.read_aux(ds: xarray.Dataset, keys: list[str] | None = None) xarray.Dataset¶
Read additional data for given dataset.
If dataset has attribute “is_auxiliary_to_data_in”, read additional data from that location. If keys are given, read only the given keys from additional data. Otherwise, read all additional data.