270 likes | 279 Views
ElVis is a powerful software package for scientific graphics and data monitoring, featuring animations, image-to-movie conversion, 3D indexed color maps, and more. It offers integration with job monitoring web services and supports Fortran, C/C++, and Java. Download now!
E N D
ElVis Features & Animations Michael Shmulevich PPPL Summer High School Intern Mentor – Eliot Feibush August 14, 2008
ElVis Software Package • Display program • 45,000 lines of Java code • 300 classes • Summer ’08: Over 200 updates to the code • Application Programming Interface (API) • Fortran • C/C++ • Java
Animation For Simulations • Fusion simulations produce visualizations that occur one step at a time. Provides a way for all these simulations to be able to put their sequence of images together into a movie file. • Applicable to other fields.
Jpeg Images to Movie Conversion • Converts a sequence of JPEG images to a QuickTime Movie file using JMF. • Provides users the ability to specify an input directory containing JPEG images, an output directory for the .mov file, and a frame rate for the video. • Modified Sun’s pre-existing code to handle directories, automatically detect width and height of the images, default to certain values if the user does not specify them, and a help screen.
Jpeg Images to Movie Conversion • Advantages: portable light weight program for creating movies out of images, image quality is comparable or better than Microsoft Windows Movie Maker. • Eliminates copying images to a Windows machine from the simulation cluster. • GTC, GYRO, SWIM, CPES
Jpeg Images to Movie Conversion • Movies generated using ElVis plots can be found here: w3.pppl.gov/elvis/movies • Launch Plasma Movie (frame rate of 50) • Made from 2,000 image files from the Plasma Edge fusion simulation project. • Command line interface to be able to use through scripts
3D Indexed Color Maps • ElVis was set up to plot these types of graphs without checking for width, height, and negative scaling values. • Set up default conditions and checks for negative numbers. • Launch PsiRZ Movie PsiRZ.cdf
Setting Decimal Precision • Upon NSTX user request, provides the ability to control the amount of significant figures in a label. • Reduce clutter of too many decimal points. (Default is now 3) • Sets the amount of places after the decimal point. • Makes use of Java’s NumberFormat Class. • Launch Decimal Precision Demo
Animate By Crosshair • Crosshair is a way to interactively explore the data. • Upon NSTX user request, provide option to turn off animate by crosshair. • TRANSP Data Prep Web Service • Launch Animate By Crosshair Demo • Launch Crosshair Without Animation Demo
Marker Count • Designed a GUI (Graphical User Interface) to allow the user to show points and set a marker count. • Necessary when a graph has a large amount of points preventing the user to distinguish between points. • Motivated by Ben Bariteau’s API. • Eric Zatz integrated marker counting with EML (ElVis Markup Language) . • In effect, a three part project.
Marker Count Show Points On Marker Skip Count: 70 Show Points Off Original Graph Show Points On Marker Skip Count: 0
Templates • Each template has a presentation style attribute. • Templates in ElVis are saved in XML format. • Completed the functionality of presentation styles.
Saving Legend Attributes • Legend attributes specified in GraphEditor are saved to the template file. • These include attributes for the legend, the outline, expanding the graph to its full width, and filling the legend.
Presentation Styles • ElVis would replot graphs without remembering the graph’s presentation style. • (would always revert to Animated) • Fix: Save the current presentation style to a variable, and apply it once the graph is replotted.
Presentation Styles Demo Launch Presentation Styles Demo
Exponent Labels • When a graph is resized to a small size, and it contains exponents as tick mark labels, the values get jumbled. Before After
Exponent Labels Approach: Exp label begins at pixel Exp Label 0 Y X
Themes • Themes are saved to a preferences file. • “settings.props” saved in your ElVis directory. (located inside your home directory) • Automatically loads the last theme used when ElVis starts.
The ElVis Tutorials • In order for users to gain an understanding of how to use the features of ElVis, it is essential to have tutorials. • Created using free open source screen & audio recording software called CamStudio (for Windows). • http://camstudio.org/ • Deleting Tutorial
What I’ve Learned • Prior knowledge: C++ Action and Object Oriented Programming, HTML • ElVis is coded in Java. • This internship familiarized me with Java SDK and the Eclipse IDE. (Swing & Graphics2D) • Team Development Environment
What I’ve Learned • Different operating system file systems are structured in different ways. • Different OS’s have different looks and feels in Java. • Necessary to make code OS friendly. • I’ve furthered my knowledge and understanding of Linux and Mac OS X.
Acknowledgements • Eliot Feibush – Mentor • PPPL Science Education Program: • Andrew Zwicker, Christine Ritter, James Morgan • Princeton Plasma Physics Lab • ElVis Army (Eric Zatz, Matt Milano, Ben Bariteau)
Eric Zatz -CPPG summer undergrad ElVis Mark-Up Language Eliot - Mentor Ben – API, EML Matt System & Services Doug – Mentor CPPG Group Head Mike Movie Making User Enhancements Tutorials