Distribution Statement
Algorithms in GeoIPS#
An algorithm is a GeoIPS plugin designed to manipulate and convert datasets. Algorithms cannot operate independently; they take raw meteorological data and transform them. These manipulations may include quality control, time and location filtering, and derived variable calculations.
For example, an algorithm could scale data to a specific range useful for plotting.
Algorithms vary in complexity based on requirements.
A simple example is the wind barb algorithm, which primarily converts wind speed units and optionally applies data bounds.
More complex algorithms include the single channel algorithm, which involves masking, solar zenith corrections, scaling, normalization, and unit conversion. The stitched data fusion algorithm is another complex algorithm. It combines overlapping satellite data, adjusting for satellite zenith angle and parallax correction in the overlap zones.
Algorithms can be executed in two ways:
Direct Invocation: Call the algorithm from within a program:
from geoips.interfaces import algorithms algorithm_name = "single_source" algorithms.get_plugin(algorithm_name)
2. Inclusion in Product Specifications: Include the algorithm in a product or product default specification, which can be executed via the command line or a test script using a GeoIPS procflow.
For examples of including an algorithm in a product implementation, see the product defaults and products tutorials.