1 / 21

Broadband Platform 15.3.0 Release Readiness Review

Learn about the new features and changes in Broadband Platform 15.3.0, a collaborative software system used by SCEC research groups for computing seismograms and calculating ground motions. The release includes updated compilers, improved command-line interface, and new GMPE groups.

browley
Télécharger la présentation

Broadband Platform 15.3.0 Release Readiness Review

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. Broadband Platform 15.3.0 Release Readiness Review Fabio Silva 14 April 2015

  2. What is the Broadband Platform (BBP)? • Collaborative software system • SCEC research groups • CME software development • Computes seismograms from 0-100 Hz • Depending on the method and parameters used • Valuable in calculating ground motions timeseries at selected locations for scenario earthquakes • Can be run by scientists or engineers without detailed knowledge of the code details • Generates repeatable results

  3. New BBP Diagram!

  4. What’s new in Broadband Platform 15.3.0? • Uses only GNU compilers • Intel compilers not needed anymore • Runs on Linux, Mac OS X, Virtual Box • Features a simplified command-line interface • Incorporates updated UCSB method • Can work with smaller events, surface ruptures • Includes 3 GMPE groups • NGA-West 1 (AS08, BA08, CB08, CY08) • NGA-West 2 (ASK14, BSSA14, CB14, CY14) • CENA Group 1 (A0811E, PZT11, S03SCVS)

  5. Intel Compiler Changes • ExSIM (Fortran) • GNU inquire command doesn’t support directories • Use system(‘mkdir –p <dir>’) instead • SDSU (Fortran) • BBToolbox • sind and cosd are Intel extensions • Convert to radians and use regular sin/cos functions • MOGoF • sin and cos functions in GNU library take much longer • Use Taylor series as approximation (order 20)

  6. Mac OS X Requirements • Mac OS X Mavericks or Yosemite • Xcode (App Store) with command-line tools • MacPorts (2.3.3) • GCC 4.8 (Mavericks) or 4.9 (Yosemite) • Python 2.7.5 (will run on 2.6.x) • PIP (for installing PyPI packages) • PyProj (1.8.9) • NumPy (1.4.1) • SciPy (0.7.2) • Matplotlib (1.0.1)

  7. Mac OS X Changes • GP method only • Missing include files #ifndef __APPLE__ #include <features.h> #endif • features.h, sys/procfs.h, • O_LARGEFILE definition #ifdef __APPLE__ #define O_LARGEFILE 0 #endif

  8. Development Tools • Editor and IDE • Emacs, PyCharm • Code checking • Pylint • Integrated version control and issue tracker • Trac • SVN • Link commits to Trac issues by adding tags to commit comments • Code coverage measurement • coverage

  9. Pylint • Checks coding standards (PEP8) • Proper indentation, line lengths, variable and class names • Help with error detection • Proper imports, variable use • Customizable • Which messages to show • http://www.pylint.org

  10. Pylint (2) • BBP code rating (comps directory) $ total=0; points=0; for i in `ls *.py`; do score=`pylint $i 2>&1 | grep "has been rated" | awk '{print $7}' | awk -F '/' '{print $1}'`; echo "$i: $score"; total=$((total+1)); points=`echo $points + $score | bc`; done; avg_score=`echo "scale=3; $points / $total" | bc`; echo "--------------------------"; echo "Files evaluated: $total"; echo "Average score: $avg_score” PlotGOF.py: 9.58 PlotMap.py: 8.28 PlotSRF.py: 8.36 amp_fac.py: 9.20 arias_duration.py: 9.56 bband_utils.py: 9.52 bbp_formatter.py: 8.60 bbp_status.py: 9.75 … vm2vm.py: 10.00 wcc_siteamp.py: 8.80 xml_handler.py: 8.49 -------------------------- Files evaluated: 94 Average score: 7.221

  11. Pylint (3) • Penalized for things like • Lines exceeding 80 characters • Too many lines/arguments/variables/branches in method • Too many/few methods in class • Too many instance attributes • Naming conventions (classes/methods/variables) • “from <file> import *” statements • Improper indentation • Missing docstrings

  12. Simplified Command-Line Interface • Validation • event • method • Scenario • velocity model • method • source file • station list

  13. $ run_bbp.py Welcome to the SCEC Broadband Platform version 15.3.0. ================================================================================ Please select the Broadband Platform mode of operation: * Validation - Simulates a historical event * Scenario - Runs a user-defined hypothetical event Do you want to perform a validation simulation (y/n)? y ================================================================================ Please select a validation event from the list below: (1) Alum Rock (2) Chino Hills ? 2 ================================================================================ The Broadband Platform includes several scientific methods that can be used to calculate synthetic seismograms. Choose a Method to use in this Broadband validation simulation: (1) GP (Graves & Pitarka) (2) UCSB (3) SDSU (4) EXSIM (5) CSM (Composite Source Model) - Beta Version ? 1 ================================================================================ SRC file: /home/sarah/bbp/bbp_val/ChinoHills/common/ch_v14_2_2.src ================================================================================ STL file: /home/sarah/bbp/bbp_val/ChinoHills/common/ch_v14_2_2.stl

  14. Expert Mode • Expert mode allows for extra functionality • Start simulation from SRF file • Run rupture generator outside platform Seok-Goo • Custom SRC file and/or station list • Reduced number of stations • Modified validation SRC file • Site response • Plot generation • SDSU Goodness-of-Fit module instead of GP • Select GMPE group to use

  15. What else is new in BBP 15.3.0? • New directory structure • Removed station distance from station list files • BBP calculates the distance automatically • Updated methods • ExSIM: bug fixes for close stations • GP: randomizes rupture velocity • SDSU: fixes for merging frequency, time step features • UCSB: can do surface ruptures, smaller magnitudes • Save method-specific input files in outdata directory • Include version number in BBP workflow description

  16. Updated Directory Structure $ ls –l -rwxr-xr-x 1 fsilva staff 2659 Apr 9 15:12 README drwxr-xr-x 9 fsilva staff 306 Mar 6 09:24 bbp drwxr-xr-x 8 fsilva staff 272 Apr 9 14:35 doc $ ls -l bbp drwxr-xr-x 100 fsilva staff 3400 Apr 10 14:54 comps -rw-r--r-- 1 fsilva staff 73 Mar 6 09:24 makefile drwxr-xr-x 4 fsilva staff 136 Nov 4 09:46 mod_data drwxr-xr-x 9 fsilva staff 306 Jun 30 2014 plot drwxr-xr-x 9 fsilva staff 306 Mar 23 14:39 src drwxr-xr-x 42 fsilva staff 1428 Apr 3 14:11 tests drwxr-xr-x 8 fsilva staff 272 Mar 6 09:19 utils $ ls -l doc -rwxr-xr-x 1 fsilva staff 7591 Apr 9 14:35 INSTALL_NOTES -rw-r--r-- 1 fsilva staff 3714 Mar 4 13:33 LICENSE.TXT -rw-r--r-- 1 fsilva staff 87997 Mar 20 12:11 MANIFEST -rw-r--r-- 1 fsilva staff 11451 Mar 31 14:11 RELEASE_NOTES -rw-r--r--@ 1 fsilva staff 214656 Mar 31 14:03 USER_GUIDE_15.3.0.pdf drwxr-xr-x 5 fsilva staff 170 Mar 18 15:51 examples

  17. Broadband Platform 15.3.0 Results • Complete Part-A and Part-B validations • All events, all methods • Compare against previous results • BBP 14.3.0 versus BBP 15.3.0 • Code changes • Extra events for UCSB • Changes to east events (source file, stations)

  18. BBP 14.3.0 versus 15.3.0 Comparison

  19. Broadband Platform 15.3.0 Release • Minimum Distribution • Source distribution • LABasin velocity model (needed for unit, acceptance tests) • Northridge validation (needed for acceptance tests) • Optional Downloads • Mojave, NoCAL, Central Japan, Western Japan, CEUS 1000, Canada 1000 velocity model packages • Chino Hills, Alum Rock, Loma Prieta, Landers, North Palm Springs, Saguenay, Riviere-du-Loup, Mineral, Tottori, Niigata validation events • Virtual Box including all of the above

  20. BBP 15.3.0 Release Automation • Scripts (take version number) • Create source distribution from SVN directory • Generate md5 sums for all validation/velocity models • Create validation/velocity model tar files • Create md5 sum files

  21. Broadband Platform 15.3.0 Documentation • Wiki • BBP 15.3.0 page • BBP 15.3.0 User Guide • BBP on OS X Guide • BBP 15.3.0 Release Notes • BBP distribution • README • INSTALL_GUIDE • USER_GUIDE_15.3.0.pdf (from WIKI) • RELEASE_NOTES

More Related