Skip to main content

Python interface for Solo II

Project description

lrose-solo-python

Python interface to Solo editing functions

Scientific poster for this project: Poster PDF

Install

pip install pysolo

Tested for Windows 10 and Ubuntu 18.04 and 20.04.

View examples on Colab: https://colab.research.google.com/drive/16tsdAjarCjGDoJIqKFDDODaiUnFoQEFP?usp=sharing

Check out the GitHub: https://github.com/NCAR/lrose-solo-python

View it on PyPI: https://pypi.org/project/pysolo/

Functions

The functions below take in a single ray of data, along with its bad value and additional parameters. dgi_clip_gate will default to the end of the ray (no clipping), and boundary mask will default to all true (boundary is everywhere). All functions will return a Numpy masked array, which contains the output's data, mask, and bad value.

Name Function Source
Despeckle despeckle(input_list_data, bad, a_speckle, dgi_clip_gate=None, boundary_mask=None) Despeckle.cc
Ring Zap ring_zap(input_list_data, bad, from_km, to_km, km_between_gates=1, dgi_clip_gate=None, boundary_mask=None) RemoveRing.cc
Threshold threshold(input_list_data, threshold_list_data, bad, where, scaled_thr1, scaled_thr2, dgi_clip_gate=None, thr_missing=None, first_good_gate=0, boundary_mask=None) ThresholdField.cc
Flag Freckles flag_freckles(input_list_data, bad, freckle_threshold, freckle_avg_count, bad_flag_mask, dgi_clip_gate=None, boundary_mask=None) FlagOps.cc
Flag Glitches flag_glitches(input_list_data, bad, deglitch_threshold, deglitch_radius, deglitch_min_gates, bad_flag_mask, dgi_clip_gate=None, boundary_mask=None) FlagOps.cc
Forced Unfolding forced_unfolding(input_list_data, bad, nyquist_velocity, dds_radd_eff_unamb_vel, center, dgi_clip_gate=None, boundary_mask=None) ForcedUnfolding.cc
Merge Fields merge_fields(input_list_data_1, input_list_data_2, bad, dgi_clip_gate=None, boundary_mask=None) MergeFields.cc
Radial Shear radial_shear(input_list_data, bad, seds_gate_diff_interval, dgi_clip_gate=None, boundary_mask=None) RadialShear.cc
Rain Rate rain_rate(input_list_data, bad, d_const, dgi_clip_gate=None, boundary_mask=None) RainRate.cc
Remove AC Motion remove_ac_motion(input_list_data, bad, vert_velocity, ew_velocity, ns_velocity, ew_gndspd_corr, tilt, elevation, dds_radd_eff_unamb_vel, seds_nyquist_velocity, dgi_clip_gate=None, boundary_mask=None) RemoveAcMotion.cc
Remove Storm Motion remove_storm_motion(input_list_data, bad, wind, speed, dgi_dd_rotation_angle, dgi_dd_elevation_angle, dgi_clip_gate=None, boundary_mask=None) RemoveSurface.cc
Unfold First Good Gate unfold_first_good_gate(input_list_data, bad, nyquist_velocity, dds_radd_eff_unamb_vel, max_pos_folds, max_neg_folds, ngates_averaged, last_good_v0, dgi_clip_gate=None, boundary_mask=None) BBUnfolding.cc
Unfold Local Wind unfold_local_wind(input_list_data, bad, nyquist_velocity, dds_radd_eff_unamb_vel, azimuth_angle_degrees, elevation_angle_degrees, ew_wind, ns_wind, ud_wind, max_pos_folds, max_neg_folds, ngates_averaged, dgi_clip_gate=None, boundary_mask=None) BBUnfolding.cc

There are masked versions for all these functions, which take in a 2D numpy masked array along with the function's parameters. For instance, for despeckle masked, the function call is:

despeckle_masked(masked_array, a_speckle, boundary_mask=None)

Flag Operations

The functions below will modify 'flags' which are a list of masked boolean values representing True for bad values and False for valid values. Returns numpy masked arrays.

Name Function Source
Assign Bad Flags assert_bad_flags(input_list_data, bad, bad_flag_mask, dgi_clip_gate=None, boundary_mask=None) FlagOps.cc
Assign Value assign_value(input_list_data, bad, constant, bad_flag_mask, dgi_clip_gate=None, boundary_mask=None) FlagOps.cc
Bad Flags Logic bad_flags_logic(input_list_data, bad, where, logical, scaled_thr1, scaled_thr2, bad_flag_mask, dgi_clip_gate=None, boundary_mask=None) FlagOps.cc
Clear Bad Flags clear_bad_flags(complement, flag) FlagOps.cc
Copy Bad Flags copy_bad_flags(input_list_data, bad, dgi_clip_gate=None, boundary_mask=None) FlagOps.cc
Flagged Add flagged_add(input_list_data, bad, f_const, multiply, bad_flag_mask, dgi_clip_gate=None, boundary_mask=None) FlagOps.cc
Set Bad Flags set_bad_flags(input_list_data, bad, where, scaled_thr1, scaled_thr2, dgi_clip_gate=None, boundary_mask=None) FlagOps.cc

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

pysolo-1.0.9.tar.gz (129.5 kB view hashes)

Uploaded Source

Built Distribution

pysolo-1.0.9-py3-none-any.whl (146.9 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page