290 likes | 490 Views
Analyzing the GRIB Data Project. Project Presentation. December 4,2013 Jiajun Chen Department of Computer Science University of Miami Prof. Geoff Sutcliffe. What is GRIB data?. GRIB data: to demonstrate the forecast weather data Mostly used in meteorology Easy to access
E N D
Analyzing the GRIB Data Project Project Presentation December 4,2013 Jiajun Chen Department of Computer Science University of Miami Prof. Geoff Sutcliffe
What is GRIB data? • GRIB data: to demonstrate the forecast weather data • Mostly used in meteorology • Easy to access • Can be appended to each other or broken down easily • Can be converted into .csv file • Can tell: • When = recoding time; • Where = location (lat/lon); • What = UGRD/VGRD/Pressure;
A Story -One day……. -Tom wants to sail from a place to another place -He gets his boat ready, his sailing plan ready, the weather forecast and the GRIB data ready… -He said: “It would be a perfect day with the beautiful sunshine and….” This is the reason why we havethis project -Suddenly, the sky is becoming darker and darker. It can be ensure that a storm is coming…. - “Oh my gosh!”, Tom said: “Most of the weather forecast and the GRIB data sources said it would be a sunny day!” - Tom yelled: “Can someone tell me who is the most reliable GRIB data source?”
Agenda • Background information • Analyze, Design and Status • What I’ve done • What I am going to do next • Q&A • Demo
There are several organizations and companies that are providing GRIB data for general use. • US National Weather Service • US Navy • Canadian Met Service • Etc. Which one is the most reliable forecast weather data source in the world? The GRIB data that were recorded from the boat indicators Here, we called it: BoatLog
Log Source 1? Source 2?
A GIRB file has: Time Latitude Longitude UGRD VGRD Pressure • Recording time • Location • Calculate TWS.TWD & Pressure In order to store the grib data in memory with a proper format And then compare the data in the boatlogwith the data in thegrib files We need a proper data structure
Main --- Open log file • GridFileData--- Open GRIB files • Latitude --- Store Latitude • Longitude --- Store Longitude • GribPoint --- Store values
Import: Since the GRIB files have been converted to .csv files.. The javacsv library
In Main: • Call the JFileSelector() • --- return path of the boatlog and the path(s) of the GRIB data files • Pass the log path to the ReadLogmethod • Pass the GRIB data files paths to the CsvList.class • Calculate thecorrelationcoefficient
Open the log file • Read the .csv file -> logList • TimeStamp2Data method
Open the GRIB files In CsvList.class: Read the .csv file Separate the data into different arraylists Set up the data in the way we want lookForVGRD() lookForPressure() latExist() lonExist() CsvWriter() equaliLists() Mean() Std() Correlation()
Compute Correlation • In Main: • findInLog method • findInLogPart method Check with the first row in each log files Find out the one that has the closest absolute value Compare the data in the GRIB file with the data in that part of the log file ? Return the one that has the biggest absolute value of the correlation coefficient
Logically, it should work….. However,
Tried but failed • Tried to use JFreeChart to plot the data • Tried to use ThreadPool to speed up the program • Tired to use Jtable to print the data in the interface
What I am going to do next Make it works Plot the result Speed up the program Finish implementing the interface