1 / 10

Scientific Programming @ ESR

Scientific Programming @ ESR. 27.1.2011. Matt Tilley. Scientific Programming @ ESR. OSCAR validation update AOML/NRT drifter data update OSCAR validation (drifter vs. altimetry) update Validation website Microsoft decoupling Miscellaneous MATLAB/shell script updates for OSCAR validation

nydia
Download Presentation

Scientific Programming @ ESR

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Scientific Programming @ ESR 27.1.2011 Matt Tilley

  2. Scientific Programming @ ESR • OSCAR validation update • AOML/NRT drifter data update • OSCAR validation (drifter vs. altimetry) update • Validation website Microsoft decoupling • Miscellaneous MATLAB/shell script updates for OSCAR validation • OSCAR engine update • Work on ESR's web presence • Miscellaneous project(s) 27.1.2011 Matt Tilley

  3. OSCAR validation update • AOML/NRT drifter update • NOAA-AOML provides highly processed drifter data • Data lags 6-12 months due to high amount of processing, thus huge data set incoming • Drifter data is needed for all OSCAR validation; drifters set as possible 'truth' • Multiple, separate MATLAB scripts → single call to shell script; clear README for update process • Process more highly automated, 'fire and forget' update to drifter data. 27.1.2011 Matt Tilley

  4. OSCAR validation update • AOML/NRT drifter update (cont'd) • Colleague at NOAA-AOML provides the NRT (Near Real-Time) drifter data – not as highly processed • Data more raw, obtain ~1 month lag • Updated to simple process of dropping new .dat file, run a script and the validation website is updated • Validation process update • Joined several MATLAB scripts to form automated run that performs calculations, generates figures and updates website automatically 27.1.2011 Matt Tilley

  5. OSCAR validation update • Validation website update • Originally coupled to Microsoft Publisher • Entire site a single, bulky file (HTML, images, all) in proprietary format, difficult to modify, knowledge of publisher necessary • Long story short: Publisher is essentially a nightmare. • Took the entirety of the validation website, wrote HTML/CSS by hand to create more accessible base for OSCAR validation • http://www.esr.org/~bonjean/oscar/global_validation • Easier updating – straight HTML/CSS • Automation possibility • Could be integrated directly with the scripts for OSCAR validation updates for AOML/NRT drifter data • Decoupled from Microsoft/high software cost 27.1.2011 Matt Tilley

  6. OSCAR engine update • Complete overhaul of current OSCAR MATLAB scripts to C++ application • ~10k lines of MATLAB scripting to Makefile/C++ and shell scriptingcode • C++ pros: lose MATLAB overhead; increase in performance, robustness, reliability, portability, finer control over memory, custom optimization • C++ cons: longer development and debugging time, lose some pre-wired MATLAB/OS functionality, compilation needed for changes** • Overall a net plus for the needs of ESR 27.1.2011 Matt Tilley

  7. OSCAR engine update • Four basic operations: • SSH/SST/Wind data acquisition • AVISO (SSH), Reynolds/GHRSST (SST), NCEP/ECMWF (WIND) • Process data for file structures/calculations • File structures, non-values, gridding, 5d spacing and 10d smoothing • Calculate ocean current velocity • Geostrophic, Ekman, thermal/buoyancy • Publish OSCAR data to website 27.1.2011 Matt Tilley

  8. OSCAR Engine Update • Compiled using gnu-make, g++ • Shell script calls main executable, args include XML configuration** • oscar_exec (main C++ executable) • 4(5) separate dynamic libraries • data_acq.so • process_data.so (CURRENT WORK) • calc_vel.so • publish.so • oscar_tools.so • These libraries are self contained WRT functionality, so any code updates can be compiled in a single module 27.1.2011 Matt Tilley

  9. OSCAR Engine Update • Timeline • Started preparation and coding work late November; rough time costing out to beginning of March • Currently near completion on first iteration of process_data.so (foreseen as the most difficult of the modules) • Next module to be velocity calculation 27.1.2011 Matt Tilley

  10. ESR's web presence • Took over role as ESR's webmaster in September, 2010 • Work with all staff members to keep current, important information easily accessible • Staff page updates • Outreach activites • Overall design suggestions • More!? • Miscellaneous project(s): • ESR publication database • Browser-based, PHP/JavaScript/MySQL • Approximately 50% complete 27.1.2011 Matt Tilley

More Related