Support Options

Submit a Support Ticket

Creating and Deploying Scientific Tools



Published on


HUBzero lets you access simulation tools online via an ordinary web browser. Where do the tools come from? From you—hundreds of you throughout the world who are developing simulation and modeling tools for your hub. Anyone can upload their own code onto a hub and publish a tool for a limited group of colleagues or for the entire world to use. The code can be kept protected or given out as open source.

This tutorial, presented at HUBbub 2011, shows you exactly how to do that. It describes Rappture, the Rapid APPlication infrastrucTURE, a toolkit within HUBzero that makes it easy to develop graphical user interfaces for scientific modeling tools. Use the Rappture Builder to drag and drop objects that define your interface. The Builder will generate code for a variety of languages, including C/C++, Fortran, MATLAB, Octave, Python, Perl, Java, Ruby, and Tcl. The resulting application is easy to deploy on any HUBzero-powered site, so a large community of users can access it through their web browser. HUBzero guides you through the deployment process. Learn how to contribute and publish a new tool, starting with a tool registration form, going through the process of uploading code into a Subversion repository, developing and testing your code within a workspace, and finally, approving and publishing your tool. Learn how to use the Rappture Regression Tester to verify that your tool is functioning correctly as you publish each new version your code.

Cite this work

Researchers should cite this work as follows:

  • (2011), "Creating and Deploying Scientific Tools,"

    BibTex | EndNote

See also

No results found.

Lecture Number/Topic Online Lecture Video Lecture Notes Supplemental Material Suggested Exercises
Introducing the Rappture Toolkit View Notes Slides Handout
This talk provides an overview of Rappture and shows how to create tools in minutes by using the new Rappture builder.

What\'s Under the Hood? View Notes Slides Handout
This talk shows how Rappture invokes your tool, passes in input values, and extracts output results. It takes a close look at the XML language that Rappture uses to describe your tool.

More Rappture Objects View Notes Slides Handout
This talk shows how to create more complex arrangements of controls. Use the group object to group related input elements. Use the phase object to create separate panels of controls. Use the...

Advanced Visualization View Notes Slides Handout
This talk shows how to generate complex outputs and leverage Rappture's built-in visualization capabilities. Use mesh and field objects to create contour plots and surface plots. Use the...

Regression Testing View Notes Slides Handout
Assignment: ex5.tgz
This talk describes the new Rappture Regression Tester tool, which executes a series of tests that you define to verify the correct operation of your tool. Use this tool as you fix bugs and...

Uploading and Publishing New Tools Notes Uploading and Publishing New Tools
Slides Handout
This tutorial shows you exactly how to do publish a new tool, starting with the tool registration form, taking you through the process of uploading code into a Subversion repository, developing...

HUB2CAC to access Matlab clusters View
Do you have a computationally intensive Matlab tool? HUB2CAC can simplify the work needed so your tool can benefit from Matlab clusters, in particular Cornell's CAC. With only a few items in...

Copyright 2015 HUBzero Foundation, LLC. HUBzero® is a registered trademark of the HUBzero Foundation, LLC.  Accessibility Issues