skretrieval.core package¶
Subpackages¶
Submodules¶
skretrieval.core.lineshape module¶
-
class
skretrieval.core.lineshape.DeltaFunction¶ Bases:
skretrieval.core.lineshape.LineShape-
bounds()¶ Boundaries of the line shape. Values outside this range are 0
- Returns
Left and right boundaries of the line shape
- Return type
(left, right)
-
integration_weights(mean: float, available_samples: numpy.ndarray, normalize=True, tolerance=1e-07)¶ Integration weights for the line shape.
- Parameters
mean (float) – Value to integrate to
available_samples (np.ndarray) – Array of sample values that are available to use in the integration.
normalize (bool, Optional) – If true, resulting weights are normalized such that np.nansum(weights) = 1
- Returns
Integration weights, same size as available_samples.
- Return type
np.ndarray
-
-
class
skretrieval.core.lineshape.Gaussian(fwhm: Optional[float] = None, stdev: Optional[float] = None, max_stdev=5, mode='linear')¶ Bases:
skretrieval.core.lineshape.LineShape-
bounds()¶ If integration_weights is called with mean=0, all values outside the range [lower_bound, upper_bound] are guaranteed to be 0.
- Returns
- Return type
[lower_bound, upper_bound]
-
integration_weights(mean: float, available_samples: numpy.ndarray, normalize=True)¶ The lineshape converts a function at high resolution, H, to one at low resolution, L.
L(mean) = np.dot(H, integration_weights(mean, available_samples))
- Parameters
mean (float) – value (in the range of available_samples) to integrate to
available_samples (np.ndarray) – Values that the high resolution function is available at
normalize (bool, optional) – If true, the returned weights will sum to 1
- Returns
Weights to use in the high resolution integration
- Return type
np.ndarray
-
-
class
skretrieval.core.lineshape.LineShape¶ Bases:
abc.ABCBase class for implementing line shapes. A line shape represents integration across a high resolution measurement down to a lower resolution measurement.
-
bounds()¶ Boundaries of the line shape. Values outside this range are 0
- Returns
Left and right boundaries of the line shape
- Return type
(left, right)
-
abstract
integration_weights(mean: float, available_samples: numpy.ndarray, normalize=True)¶ Integration weights for the line shape.
- Parameters
mean (float) – Value to integrate to
available_samples (np.ndarray) – Array of sample values that are available to use in the integration.
normalize (bool, Optional) – If true, resulting weights are normalized such that np.nansum(weights) = 1
- Returns
Integration weights, same size as available_samples.
- Return type
np.ndarray
-
-
class
skretrieval.core.lineshape.Rectangle(width, mode='linear')¶ Bases:
skretrieval.core.lineshape.LineShape-
bounds()¶ Boundaries of the line shape. Values outside this range are 0
- Returns
Left and right boundaries of the line shape
- Return type
(left, right)
-
integration_weights(mean: float, available_samples: numpy.ndarray, normalize=True)¶ Integration weights for the line shape.
- Parameters
mean (float) – Value to integrate to
available_samples (np.ndarray) – Array of sample values that are available to use in the integration.
normalize (bool, Optional) – If true, resulting weights are normalized such that np.nansum(weights) = 1
- Returns
Integration weights, same size as available_samples.
- Return type
np.ndarray
-
-
class
skretrieval.core.lineshape.UserLineShape(x_values: numpy.array, line_values: numpy.array, zero_centered: bool)¶ Bases:
skretrieval.core.lineshape.LineShape-
bounds()¶ Boundaries of the line shape. Values outside this range are 0
- Returns
Left and right boundaries of the line shape
- Return type
(left, right)
-
integration_weights(mean: float, available_samples: numpy.ndarray, normalize=True)¶ Integration weights for the line shape.
- Parameters
mean (float) – Value to integrate to
available_samples (np.ndarray) – Array of sample values that are available to use in the integration.
normalize (bool, Optional) – If true, resulting weights are normalized such that np.nansum(weights) = 1
- Returns
Integration weights, same size as available_samples.
- Return type
np.ndarray
-
-
skretrieval.core.lineshape.fasterf3(x)¶ Fast error function approximation
skretrieval.core.radianceformat module¶
-
class
skretrieval.core.radianceformat.RadianceBase(ds: xarray.core.dataset.Dataset)¶ Bases:
abc.ABCBase functionality that every radiance format must support
-
property
data¶
-
tangent_locations()¶ Calculates tangent locations for all lines of sight. If the line of sight does not have a tangent location the ground intersection is returned instead :returns: Dataset containing ‘latitude’, ‘longitude’, and ‘altitude’ of the tangent locations :rtype: xr.Dataset
-
abstract
to_raw()¶
-
property
-
class
skretrieval.core.radianceformat.RadianceGridded(ds: xarray.core.dataset.Dataset)¶ Bases:
skretrieval.core.radianceformat.RadianceBase-
to_raw()¶
-
-
class
skretrieval.core.radianceformat.RadianceOrbit(data: List[skretrieval.core.radianceformat.RadianceBase], wf: Optional[List[scipy.sparse.base.spmatrix]] = None)¶ Bases:
objectA collection of other RadianceFormats that combine together to create an entire orbit of L1 data
For example an entire orbit of OMPS data can be created either as a single RadianceGridded for the entire orbit or as a List of single RadianceGridded for each image
-
derived_type()¶
-
image_radiance(index, dense_wf=False)¶
-
property
num_images¶
-
property
wf¶
-
-
class
skretrieval.core.radianceformat.RadianceRaw(ds: xarray.core.dataset.Dataset)¶ Bases:
skretrieval.core.radianceformat.RadianceBase-
to_raw()¶
-
-
class
skretrieval.core.radianceformat.RadianceSpectralImage(ds, num_columns: Optional[int] = None, num_rows: Optional[int] = None)¶
skretrieval.core.simulator module¶
-
class
skretrieval.core.simulator.MeasurementSimulator(sensor: skretrieval.core.sensor.Sensor, optical_axis: List[skretrieval.core.OpticalGeometry], atmosphere: sasktran.atmosphere.Atmosphere, options=None)¶ Bases:
skretrieval.retrieval.ForwardModelA simple measurement simulator which acts as a forward model. This is not a generic class, this is moreso an example of what a MeasurementSimulator should do.
-
calculate_radiance()¶
-