Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

NWS IMet support #90

Open
wants to merge 34 commits into
base: main
Choose a base branch
from
Open

Conversation

blizzardwarriorwx
Copy link

To support NWS IMet in-situ soundings, I have added some features to SHARPpy.

  • Limited BUFR file support to read IMet soundings
  • Ability to load local sounding file for BUFKIT files
  • A new archive format based on JSON mapping to internal profile structure,
    to quickly reload already downloaded soundings
  • Added zipped BUFKIT(buz) file support
  • Added HiResW models to the available list
  • A new interface to make utilizing the added features easier for IMets

Let me know if any of these changes could be helpful.

-Nickolai Reimer, WFO Billings, MT

Nickolai Reimer added 11 commits December 9, 2015 10:55
Added limited support to read BUFR files. Currently only files produced at incidents by NWS IMets can be read. Does not support NCEP model output.
Added code to allow any decoder file to be loaded from local drive.
Added archive decoder and serialization functions to archive soundings
in BSON.
 * Archive date list order
 * Renamed data/archive folder
 * Update archive view on new file load
 * Load any .bufr, .buf, .txt files from archive_sounding folder
@wblumberg
Copy link
Contributor

Hi Nickolai! Thank you very much for submitting a pull request! I know that as one of the developers, we are all very pleased to see that others have taken up the open source mantle for SHARPpy and are sharing their work. We'll have to take a look at this pull request in depth as a group and try to figure out how best to merge your contributions with the master branch. So far, you're the first person outside of the primary group of developers to submit a pull request, and we'd like to work with you to make sure that your changes are implemented correctly. At this moment, I'd like to see if the other developers (@keltonhalbert @tsupinie @pmarshwx ) have any thoughts about how we'd like to go about this. We have a development branch currently, and perhaps we can implement these changes into that branch.

Do you think you could provide some background about the NWS IMET in-situ soundings and what the your changes support? Maybe a tutorial could be provided for us to walk us through the changes that you've made and how the software is used in the field? I know I'm not as familiar with what these changes do, and I'm not certain about other users. We'd also need to figure out how best to communicate these changes and capabilities to other users in our README.

Thanks again for your submission!

@pmarshwx
Copy link
Contributor

I know adding IMET soundings was on my ToDo list, so I'm happy to see this. I haven't had a chance to look through and see what this code breaks as I see the code checker points out that there are conflicts. Ultimately, @keltonhalbert would be the best one to look at the internal structure/data structure.

@wblumberg
Copy link
Contributor

I also strongly suggest @tsupinie, since he wrote much of the data management backend for the GUI. This includes the Sounding Picker and the data source addition code.

I've looked a little bit at the changes this pull request would bring to SHARPpy. I know one of the key things that I've noticed has changed in this new framework is that there is a new Sounding Picker for the IMET soundings, called "fire_gui.py". It has three tabs and the capability to archive data and load in the IMET soundings. The archive files are kept within the "runsharp" directory as .sharppy files. These .sharppy files are not easily readable via "vi". One significant difference I've seen that may be a large change in the how the internal data structures are managed is that the new Picker doesn't have the capability to select individual model soundings times. Loading a model cycle and site loads in all of the available data into the GUI. This new picker doesn't doesn't seem to replace "full_gui.py", as that file is still within the IMET branch.

@blizzardwarriorwx has also included several new data sources that would be nice to integrate into the program.

I guess one of the key questions we have is how best to integrate these Picker and new data management changes into the master branch. Here are some screenshots of the new picker:

screen shot 2016-02-19 at 11 58 40 am
screen shot 2016-02-19 at 11 58 46 am
screen shot 2016-02-19 at 11 58 56 am

@keltonhalbert
Copy link
Contributor

Hi guys,

I'll try to start digging into the pull request over this weekend and next week. Definitely excited to see the additions!

----- Reply message -----
From: "Patrick Marsh" [email protected]
To: "sharppy/SHARPpy" [email protected]
Cc: "Halbert, Kelton T." [email protected]
Subject: [SHARPpy] NWS IMet support (#90)
Date: Fri, Feb 19, 2016 11:45 AM

I know adding IMET soundings was on my ToDo list, so I'm happy to see this. I haven't had a chance to look through and see what this code breaks as I see the code checker points out that there are conflicts. Ultimately, @keltonhalberthttps://github.com/keltonhalbert would be the best one to look at the internal structure/data structure.

Reply to this email directly or view it on GitHubhttps://github.com//pull/90#issuecomment-186325884.

Nickolai Reimer and others added 13 commits June 16, 2016 16:33
Fixed BUFR bugs:

* Non-ASCII characters in BUFR station name
* Ignore extra data before start of BUFR message

Added:

* Haines Index calculations to fire inset
* Added PBL(Mixing Height) to fire inset
* Added PBL to skewt diagram level indicators
Added code, taken form DGZ section, to plot the PBL marker on the skewT
only if the fire inset has been selected.
Fixed bugs related to GRAW sounding fields and bufr formatting issues. Fixed issue with dates in the archive format. Added option to time match irregularly timed BUFR soundings to hourly soundings.
Added option to get the height on the cursor readout in meters or feet. Also, made the height, temperature, and dewpoint all hidden if the readout is outside the sounding.
Made the text resize to make it more readable on smaller resolution screens. Modified layout slightly for better readablity. Added asterisk to Haines Index heights that do not match default.
Added SHARPget profile downloader
New icons
New FSL decoder
Fixed the font on the fire weather inset being to large on large display. Fixed date issue with the fsl decoder.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants