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
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.