pysiral.auxdata.sic
All sic data handlers must be subclasses of pysiral.auxdata.AuxdataBaseClass in order to work
for the Level-2 Processor. If the auxiliary class is based on a static dataset, this should be parsed
in __init__.
Please review the variables and properties in the parent class, as well as the correspodning config and support classes for grid track interpolation in the pysiral.auxdata module for additional guidance.
The only other requirements is the implementation of on specific method in order to be a valid subclass of
AuxdataBaseClass: get_l2_track_vars(l2)
This method will be called during the Level-2 processor. The argument is the Level-2 data object and the purpose of the method is to compute the auxilary variable(s) and associated uncertainty. These variable need to be registered using the register_auxvar(id, name, value, uncertainty) method of the base class. All sic subclasses need to register at minimum the following variable:
e.g., this code line is mandatory for get_l2_track_vars (uncertainty can be None):
self.register_auxvar("sic", "sea_ice_concentration", value, uncertainty)
Attributes
Classes
Class for the OSI SAF sea ice concentration data set. |
|
Base class for all subtype auxdata base classes (e.g. SICBaseClass). |
Module Contents
- pysiral.auxdata.sic.__author__ = 'Stefan Hendricks'
- class pysiral.auxdata.sic.OsiSafSIC(*args, **kwargs)
Bases:
pysiral.auxdata.AuxdataBaseClassClass for the OSI SAF sea ice concentration data set.
- _data = None
- _ocean_proximity = None
- _low_ice_conc_proximity = None
- start_time = None
- hemisphere_code = None
- hemisphere = None
- get_l2_track_vars(l2: pysiral.l2data.Level2Data) None
Main entry point of the class, add sea ice concentration to the l2 data object (in-place) :param l2: Level-2 data object< :return: None
- load_requested_auxdata() None
Required subclass method: Load the data file necessary to satisfy condition for requested date :return:
- _get_sic_track(l2: pysiral.l2data.Level2Data) Tuple[numpy.ndarray, numpy.ndarray, numpy.ndarray]
Extraction of grid parameters along trajectory.
- Parameters:
l2 – Level-2 data object
- Returns:
sea ice concentration, distance to ocean & distance to low ice concentration
- _compute_ice_conc_threshold_proximity(ice_concentration_threshold: float = 15.0) numpy.typing.NDArray
Computes the distance of each sea ice grid cell (SIC >= 15%) to the next ocean (SIC <= 15% and not land) grid cell. The result will be stored to this instance and the data can be extracted along the track similar to sea ice concentration
- Returns:
- property requested_filepath: pathlib.Path
Note: this overwrites the property in the super class due to some peculiarities with the filenaming (auto product changes etc.) peculiarities with the filenaming (auto product changes etc.)
- Returns:
The filepath to the target file
- property cdr_icdr_record_types: List[str]
- property cdr_icdr_record_type_prefix: List[str]
- class pysiral.auxdata.sic.IfremerSIC(*args, **kwargs)
Bases:
pysiral.auxdata.AuxdataBaseClassBase class for all subtype auxdata base classes (e.g. SICBaseClass). This class defines the mandatory set of methods and properties for all auxdata classes
- _data = None
- _grid
- get_l2_track_vars(l2)
This method raises a NotImplementedError if it is not overwritten by child class :return:
- _get_requested_date(l2)
Use first timestamp as reference, date changes are ignored
- _get_data(l2)
Loads file from local repository only if needed
- _get_local_repository_filename(l2)
- _get_sic_track(l2)