opera.pge.disp_s1 package

Submodules

opera.pge.disp_s1.disp_s1_pge module

disp_s1_pge.py

Module defining the implementation for the Land-Surface Displacement (DISP) product from Sentinel-1 A/B (S1-A/B) data.

class opera.pge.disp_s1.disp_s1_pge.DispS1Executor(pge_name, runconfig_path, **kwargs)[source]

Bases: DispS1PreProcessorMixin, DispS1PostProcessorMixin, PgeExecutor

Main class for execution of the DISP-S1 PGE, including the SAS layer. This class essentially rolls up the DISP-specific pre- and post-processor functionality, while inheriting all other functionality for setup and execution of the SAS from the base PgeExecutor class.

LEVEL = 'L3'

Processing Level for DISP-S1 Products

NAME = 'DISP-S1'

Short name for the DISP-S1 PGE

PGE_VERSION = '3.0.1'

Version of the PGE (overrides default from base_pge)

SAS_VERSION = '0.5.2'

Version of the SAS wrapped by this PGE (dummy value)

class opera.pge.disp_s1.disp_s1_pge.DispS1PostProcessorMixin[source]

Bases: PostProcessorMixin

Mixin class responsible for handling all post-processing steps for the DISP-S1 PGE. The post-processing phase is defined as all steps required after SAS execution has completed, prior to handover of output products to PCM.

In addition to the base functionality inherited from PostProcessorMixin, this mixin adds an output validation step to ensure that the output file(s) defined by the RunConfig exist and are valid.

augment_measured_parameters(measured_parameters)[source]

Override of the augment_measured_parameters() method in Base PGE with an added “preprocessing” step to handle the structure of HDF5 metadata. While GeoTIFF metadata is a flat dictionary, HDF5 metadata is a nested dictionary structure, wherein the variable “keys” can be arbitrarily deep into the structure and the values likewise can be nested dictionaries.

The preprocessing step in this method selectively flattens the metadata dictionary based on the “paths” provided in the variable keys of the configuration YAML file. The result of this preprocessing is then safely passed to the base method to get the correct structure expected by the Jinja template.

Parameters:

measured_parameters (dict) – The HDF5 metadata from the output product. See get_disp_s1_product_metadata()

Returns:

augmented_parameters – The metadata fields converted to a list with name, value, types, etc

Return type:

dict

run_postprocessor(**kwargs)[source]

Executes the post-processing steps for the DISP-S1 PGE. The DispS1PostProcessorMixin version of this method performs the same steps as the base PostProcessorMixin, but inserts a step to perform output product validation prior to staging and renaming of the output files.

Parameters:

**kwargs (dict) – Any keyword arguments needed by the post-processor

class opera.pge.disp_s1.disp_s1_pge.DispS1PreProcessorMixin[source]

Bases: PreProcessorMixin

Mixin class responsible for handling all pre-processing steps for the DISP-S1 PGE. The pre-processing phase is defined as all steps necessary prior to SAS execution.

In addition to the base functionality inherited from PreProcessorMixin, this mixin adds an input validation step to ensure that input(s) defined by the RunConfig exist and are valid.

convert_troposphere_model_files()[source]

Convert grib (.grb) files to netCDF (.nc) Update the in-memory runconfig object such that the SAS/dynamic_ancillary_file_group/troposphere_files section now points to the converted .nc files in the scratch directory.

run_preprocessor(**kwargs)[source]

Executes the pre-processing steps for DISP-S1 PGE initialization. The DispS1PreProcessorMixin version of this class performs all actions of the base PreProcessorMixin class, and adds an input validation step for the inputs defined within the RunConfig.

Parameters:

**kwargs (dict) – Any keyword arguments needed by the pre-processor

Module contents