1 Introducing the Rappture Toolkit Michael McLennan Software Architect HUBzero™ Platform for Scientific Collaboration This work licensed under Creative.

Slides:



Advertisements
Similar presentations
LabVIEW is a graphical programming development environment for data acquisition and control, data analysis, and data presentation. With LabVIEW you can.
Advertisements

Adding Rappture to MATLAB Applications
Getting Started: Ansoft HFSS 8.0
1 What’s Under the Hood? Michael McLennan HUBzero® Platform for Scientific Collaboration Purdue University This work licensed under Creative Commons See.
Computational Electronics Generalized Monte Carlo Tool for Investigating Low-Field and High Field Properties of Materials Using Non-parabolic Band Structure.
Carol Song Sr. Research Scientist Rosen Center for Advanced Computing Thanks to M. McLennan for the Rappture slides!
Rappture with C and Fortran Michael McLennan Software Architect HUBzero™ Platform for Scientific Collaboration.
1 Rappture with C and Fortran Michael McLennan Software Architect HUBzero™ Platform for Scientific Collaboration This work licensed under Creative Commons.
© by Pearson Education, Inc. All Rights Reserved.
CS320n –Visual Programming LabVIEW Foundations. Visual ProgrammingLabVIEW Foundations2 What We Will Do Today Hand back and review the midterm Look at.
Exploring the Basics of Windows XP. Objectives Start Windows XP and tour the desktop Explore the Start menu Run software programs, switch between them,
Digimap Carto is an advanced version of classic but with many more options. You need to return to the Digimap home page and this time select the “Digimap.
Chapter 4 Adding Images. Inserting and Aligning Images Using CSS When you choose graphics to add to a web page, it’s important to use graphic files in.
Exploring Office Grauer and Barber 1 Committed to Shaping the Next Generation of IT Experts. Chapter 2 – Gaining Proficiency: The Web and Business.
1 Using Workspaces to Develop Simulation Tools Michael McLennan Software Architect HUBzero™ Platform for Scientific Collaboration This work licensed under.
Exploring the Basics of Windows XP
Basic Printing using Word. 3 Components required for printing Computer Computer Printer Printer Paper Paper.
1 Uploading and Publishing New Tools Michael McLennan Software Architect HUBzero™ Platform for Scientific Collaboration This work licensed under Creative.
1 More Rappture Objects Michael McLennan Software Architect HUBzero™ Platform for Scientific Collaboration This work licensed under Creative Commons See.
CS140: Intro to CS An Overview of Programming in C by Erin Chambers.
1 More Rappture Objects Michael McLennan HUBzero® Platform for Scientific Collaboration Purdue University This work licensed under Creative Commons See.
IE 411/511: Visual Programming for Industrial Applications
USER INTERFACE.
Regression Testing Michael McLennan HUBzero® Platform for Scientific Collaboration Purdue University This work licensed under Creative Commons See license.
Designing Interface Components. Components Navigation components - the user uses these components to give instructions. Input – Components that are used.
Computational Methods of Scientific Programming Lecturers Thomas A Herring, Room A, Chris Hill, Room ,
1 Advanced Visualization Michael McLennan HUBzero® Platform for Scientific Collaboration Purdue University This work licensed under Creative Commons See.
Advanced Rappture Concepts and Tips Michael McLennan Software Architect HUBzero™ Platform for Scientific Collaboration.
Moodle (Course Management Systems). Forums, Chats, and Messaging.
VistA Imaging Workstation Configuration. October The information in this documentation includes functionality of the software after the installation.
Creating Graphical User Interfaces (GUI’s) with MATLAB By Jeffrey A. Webb OSU Gateway Coalition Member.
Lecture 3: Getting Started & Input / Output (I/O) “TRON” Copyright 1982 (Walt Disney Productions)
Software refer to all the programs that can be run on the computer.
Introducing the Rappture Toolkit Michael McLennan Software Architect HUBzero™ Platform for Scientific Collaboration.
1 Introducing the Rappture Toolkit Michael McLennan HUBzero® Platform for Scientific Collaboration Purdue University This work licensed under Creative.
Adobe Photoshop CS5 – Illustrated Unit A: Getting Started with Photoshop CS5.
What’s Under the Hood? Michael McLennan HUBzero® Platform for Scientific Collaboration Purdue University This work licensed under Creative Commons See.
Copyright © 2015 Pearson Education, Inc. Publishing as Pearson Addison-Wesley C H A P T E R 13 GUI Programming.
Web Design and Development. World Wide Web  World Wide Web (WWW or W3), collection of globally distributed text and multimedia documents and files 
NanoHUB.org: Cyberinfrastructure for Research and Education Michael McLennan Software Architect Network for Computational Nanotechnology Purdue University.
HTML Forms.
Windows 95/NT/XP. What is Windows 95/NT/XP n A program that sets up an environment for you to work in on your computer, based on colorful pictures (icons)
Using Simulation Workspaces Michael McLennan HUBzero® Platform for Scientific Collaboration Purdue University 1 This work licensed under Creative Commons.
HUBzero® Platform for Scientific Collaboration Copyright © 2012 HUBzero Foundation, LLC Collaboration and Contribution Emily Kayser Hub Liaison, HUBzero®
Project Planning Defining the project Software specification Development stages Software testing.
1 Regression Testing Michael McLennan HUBzero® Platform for Scientific Collaboration Purdue University This work licensed under Creative Commons See license.
Using & Contributing Tools Michael McLennan Director, HUBzero Platform for Scientific Collaboration Purdue University Quake Summit 2010, San Francisco,
PhotoShop Creative Suite 3 Chapter 1 The Work Area.
Advanced Visualization Michael McLennan HUBzero® Platform for Scientific Collaboration Purdue University This work licensed under Creative Commons See.
 Lesson 6: App Design. Objectives Introduce concepts such as splash screen, logo, marketing, and branding Understand how color is used to emote specific.
Using CVUSD Print Center Desktop Printer Chino Valley Unified School District.
Photoshop CS6 – Nelson Unit 3: Photoshop CS6. Objectives Define photo editing software Start Photoshop and view the workspace Use the Zoom tool and the.
Rappture with Fortran Michael McLennan HUBzero® Platform for Scientific Collaboration Purdue University This work licensed under Creative Commons See license.
Lecture 3: Getting Started & Input / Output (I/O)
Development Environment
Getting Started with Adobe Photoshop CS6
Val Manes Department of Math & Computer Science
Topics Graphical User Interfaces Using the tkinter Module
Using simulation workspaces to “submit” jobs and workflows
PhotoShop Creative Suite 3
Microsoft Word 2010.
Lecture 25.
Assistant lecturer Nisreen A. Jabr
Chapter 2 – Introduction to the Visual Studio .NET IDE
Exploring the Basics of Windows XP
Patents e-Commerce Update: Public and Private PAIR
Patents e-Commerce Update: Public and Private PAIR
Tutorial Introduction to help.ebsco.com.
TA: Nouf Al-Harbi NoufNaief.net :::
TERMS AND CONDITIONS   These PowerPoint slides are a tool for lecturers, and as such: YOU MAY add content to the slides, delete content from the slides,
Presentation transcript:

1 Introducing the Rappture Toolkit Michael McLennan Software Architect HUBzero™ Platform for Scientific Collaboration This work licensed under Creative Commons See license online: by-nc-sa/3.0

2 Publish ANY X11/Linux Tool GNU Chess MATLAB Program

3 What if you have a C/C++ or Fortran program? #include int main(int argc, char *argv[]) { double T, Ef, E, dE, kT, Emin, Emax, f; printf("Enter the Fermi energy in eV:\n"); scanf("%lg", &Ef); printf("Enter the Temperature in K:\n"); scanf("%lg", &T); kT = e-5 * T; Emin = Ef - 10*kT; Emax = Ef + 10*kT; E = Emin; dE = 0.005*(Emax-Emin); while (E < Emax) { f = 1.0/(1.0 + exp((E - Ef)/kT)); printf("%f %f\n",f, E); E = E + dE; } return 0; } #include int main(int argc, char *argv[]) { double T, Ef, E, dE, kT, Emin, Emax, f; printf("Enter the Fermi energy in eV:\n"); scanf("%lg", &Ef); printf("Enter the Temperature in K:\n"); scanf("%lg", &T); kT = e-5 * T; Emin = Ef - 10*kT; Emax = Ef + 10*kT; E = Emin; dE = 0.005*(Emax-Emin); while (E < Emax) { f = 1.0/(1.0 + exp((E - Ef)/kT)); printf("%f %f\n",f, E); E = E + dE; } return 0; }

4 The Rappture Toolkit Scientist Rapid Application Infrastructure Released in May 2005 Open Source (rappture.org)rappture.org Create standard desktop apps Works with your favorite programming language Rappture = Simulation Code

5 Create tools like this Demo at >>

6 Used to Create/Deploy Hundreds of Tools

7 tool.xml How does it work? executable Rappture GUI description of tool, including inputs and outputs Produces the user interface automatically!

8 Focus on tool.xml executable Same objects act as either inputs or outputs * * not always true, but should be tool.xml Rappture GUI Produces the user interface automatically! This is my tool. … This is my tool. … description of tool, including inputs and outputs

9 Tour the zoo Zoo of Examples Complete catalog of data objects onlineComplete catalog See screen shots Copy xml code

10 Similar structure Multiple curves This is an example that has multiple curves. … Ambient temperature This is the temperature in the environment around the device. … All objects have an section with and This is the temperature in the environment around the device. This is an example that has multiple curves.

11 Voltage Sweep +/- This determines the voltage sweep used to obtain results from the model. R0lGODlhGgASAKEBAAAAAP///////////yH+FUNyZWF0ZWQgd2l0a CBUaGUgR0lNUAAh+QQBCgAB ACwAAAAAGgASAAACLoyPqcvtD8CRj8VZrYw8h/tRn2eA4Eiaosa1q ttC1EmW81qrtbYvdG8DCodE RQEAOw== V 0V 10V purple 4V Voltage Sweep +/- This determines the voltage sweep used to obtain results from the model. R0lGODlhGgASAKEBAAAAAP///////////yH+FUNyZWF0ZWQgd2l0a CBUaGUgR0lNUAAh+QQBCgAB ACwAAAAAGgASAAACLoyPqcvtD8CRj8VZrYw8h/tRn2eA4Eiaosa1q ttC1EmW81qrtbYvdG8DCodE RQEAOw== V 0V 10V purple 4V Optional system of units Constrain input values Start with this by default Optional color is used if min/max values are set Optional base-64 (mime) encoded GIF image for icon Real number with optional units

12 Presets create a little drop-down menu of common choices Ambient temperature This is the temperature in the environment around the device. K 50K 1000K 300K 300K 300K (room temperature) 77K 77K (liquid nitrogen) Ambient temperature This is the temperature in the environment around the device. K 50K 1000K 300K 300K 300K (room temperature) 77K 77K (liquid nitrogen) Temperature gauge appears if units are for temperature Real number with optional units

13 Grid points Number of nodes used in the simulation mesh Grid points Number of nodes used in the simulation mesh Constrain input values Start with this by default Buttons to adjust value up/down Like a, but accepts only integer values

14 Impact Ionization Model Used to enable/disable the effects of impact ionization on the mobility model. yes Impact Ionization Model Used to enable/disable the effects of impact ionization on the mobility model. yes Start with this by default Simple on/off value

15 Carrier Statistics Determines the model… Boltzmann From the Boltzmann transport equation bte … Boltzmann Carrier Statistics Determines the model… Boltzmann From the Boltzmann transport equation bte … Boltzmann This by default Set of mutually exclusive options Optional. If specified, then report this value when this option is selected

16 Title Title for all plots. untitled Title Title for all plots. untitled Quick line of text, or even a whole file! Binary files too. Input This is the control file for the program. EXAMPLE:.print ac vm(11) 40x10 Enter your SPICE commands here. Input This is the control file for the program. EXAMPLE:.print ac vm(11) 40x10 Enter your SPICE commands here. width x height in characters

17 R0lGODlhtAA8APcAAFeBu////0VurKW829Ld7YSjQ1 8Y+r0rHE31aAus3Y6VJ5sEpysEdvrXeVwlV+uVB6tVZ/uEhwrlV/u tkZol5yy0092q0dqmVV+t053tElxr0VmlEVnlU92qlR8tFN7sk12s... R0lGODlhtAA8APcAAFeBu////0VurKW829Ld7YSjQ1 8Y+r0rHE31aAus3Y6VJ5sEpysEdvrXeVwlV+uVB6tVZ/uEhwrlV/u tkZol5yy0092q0dqmVV+t053tElxr0VmlEVnlU92qlR8tFN7sk12s... Data for image processing GIF, JPEG, or PNG in base-64 format Can use as a decoration on the input side, but there are better ways to do that now.better ways

18 Better User Interfaces Temperature gauge Validation of inputs Units conversion Adjust knob to compare simulations Zoom in/out

19 More Information What is Rappture? Getting Started Documentation Downloads Mailing list: Post: Subscribe: with subject subscribe Examples: /apps/rappture/current/examples In your workspace, type: /apps/rappture/copy_rappture_examples cd rappture_examples ls

20 Exercise #2: Create a Rappture Interface Write the tool.xml file to create this tool: See