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.6.tar.gz (62.5 kB view details)

Uploaded Source

Built Distribution

pysolo-1.0.6-py3-none-any.whl (77.5 kB view details)

Uploaded Python 3

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

Hashes for pysolo-1.0.6.tar.gz
Algorithm Hash digest
SHA256 1170f42b8682a1fb1a488456fa528826b8d7102ea11a85bccf9bf6142326b6ed
MD5 10bc7634b9690830fa843d7b0494d5a7
BLAKE2b-256 a072f6afa82a922e244a7bca164714a79fef04ba660f82541742f71d9c829a45

See more details on using hashes here.

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

Hashes for pysolo-1.0.6-py3-none-any.whl
Algorithm Hash digest
SHA256 bcc4df57bdd1d40d16a61615a26ae2f89d3542076a24f3d082d39a95a64fa53f
MD5 cd2dc0cf869a2c50f883ca6928ebdb13
BLAKE2b-256 de6dcfeb49197bb7a2bb5e92b10c4f40cad1dd1d74993cf52a46631b1a38c58e

See more details on using hashes here.

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