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.
Source Distribution
Built Distribution
File details
Details for the file pysolo-1.0.6.tar.gz
.
File metadata
- Download URL: pysolo-1.0.6.tar.gz
- Upload date:
- Size: 62.5 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.4.2 importlib_metadata/4.5.0 pkginfo/1.7.0 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.61.1 CPython/3.9.6
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 1170f42b8682a1fb1a488456fa528826b8d7102ea11a85bccf9bf6142326b6ed |
|
MD5 | 10bc7634b9690830fa843d7b0494d5a7 |
|
BLAKE2b-256 | a072f6afa82a922e244a7bca164714a79fef04ba660f82541742f71d9c829a45 |
File details
Details for the file pysolo-1.0.6-py3-none-any.whl
.
File metadata
- Download URL: pysolo-1.0.6-py3-none-any.whl
- Upload date:
- Size: 77.5 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.4.2 importlib_metadata/4.5.0 pkginfo/1.7.0 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.61.1 CPython/3.9.6
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | bcc4df57bdd1d40d16a61615a26ae2f89d3542076a24f3d082d39a95a64fa53f |
|
MD5 | cd2dc0cf869a2c50f883ca6928ebdb13 |
|
BLAKE2b-256 | de6dcfeb49197bb7a2bb5e92b10c4f40cad1dd1d74993cf52a46631b1a38c58e |