Skip to main content

Crate nexrad_process

Crate nexrad_process 

Source
Expand description

Processing algorithms for NEXRAD weather radar data.

This crate provides processing traits and algorithms that operate on the field types defined in nexrad_model. The core abstraction is the SweepProcessor trait, which transforms one SweepField into another. Processors can be composed into pipelines using SweepPipeline.

§Architecture

Three processing traits cover different scopes:

§Example

use nexrad_process::{SweepPipeline, filter::ThresholdFilter};
use nexrad_model::data::{SweepField, Product};

let field = SweepField::from_radials(sweep.radials(), Product::Reflectivity).unwrap();
let filtered = SweepPipeline::new()
    .then(ThresholdFilter { min: Some(5.0), max: None })
    .execute(&field)?;

Re-exports§

pub use pipeline::SweepPipeline;
pub use result::Error;
pub use result::Result;

Modules§

derived
Derived products computed from radar scans. Derived products computed from radar scans.
detection
Storm cell detection algorithms. Storm cell detection algorithms.
filter
Filtering algorithms for sweep field data. Filtering algorithms for sweep field data.
pipeline
Composable processing pipelines.
result
Result and error types for processing operations. Result and error types for NEXRAD processing operations.

Traits§

ScanDerivedProduct
Produces a CartesianField from a full scan.
ScanProcessor
Processes fields with full scan context (multiple elevations).
SweepProcessor
Transforms one SweepField into another.