<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://wiki.openwfm.org/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Jdaniels</id>
	<title>openwfm - User contributions [en]</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.openwfm.org/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Jdaniels"/>
	<link rel="alternate" type="text/html" href="https://wiki.openwfm.org/wiki/Special:Contributions/Jdaniels"/>
	<updated>2026-04-22T15:48:30Z</updated>
	<subtitle>User contributions</subtitle>
	<generator>MediaWiki 1.41.5</generator>
	<entry>
		<id>https://wiki.openwfm.org/index.php?title=File:Sc2009history.visualize.png&amp;diff=1133</id>
		<title>File:Sc2009history.visualize.png</title>
		<link rel="alternate" type="text/html" href="https://wiki.openwfm.org/index.php?title=File:Sc2009history.visualize.png&amp;diff=1133"/>
		<updated>2010-07-09T22:12:56Z</updated>

		<summary type="html">&lt;p&gt;Jdaniels: uploaded a new version of &amp;quot;File:Sc2009history.visualize.png&amp;quot;:&amp;amp;#32;added an arrow to explicitly show the correct node to highlight.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;history vistrails view for the possible nodes now being stored within the super computing demo vistrail shared on the wildfire database.&lt;/div&gt;</summary>
		<author><name>Jdaniels</name></author>
	</entry>
	<entry>
		<id>https://wiki.openwfm.org/index.php?title=File:Sc2009history.convert.png&amp;diff=1132</id>
		<title>File:Sc2009history.convert.png</title>
		<link rel="alternate" type="text/html" href="https://wiki.openwfm.org/index.php?title=File:Sc2009history.convert.png&amp;diff=1132"/>
		<updated>2010-07-09T22:12:41Z</updated>

		<summary type="html">&lt;p&gt;Jdaniels: uploaded a new version of &amp;quot;File:Sc2009history.convert.png&amp;quot;:&amp;amp;#32;added an arrow to explicitly show the correct node to highlight.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;history vistrails view for the possible nodes now being stored within the super computing demo vistrail shared on the wildfire database.&lt;/div&gt;</summary>
		<author><name>Jdaniels</name></author>
	</entry>
	<entry>
		<id>https://wiki.openwfm.org/index.php?title=How_to_visualize_WRF-Fire_output_in_VisTrails&amp;diff=1124</id>
		<title>How to visualize WRF-Fire output in VisTrails</title>
		<link rel="alternate" type="text/html" href="https://wiki.openwfm.org/index.php?title=How_to_visualize_WRF-Fire_output_in_VisTrails&amp;diff=1124"/>
		<updated>2010-07-08T16:44:36Z</updated>

		<summary type="html">&lt;p&gt;Jdaniels: /* Interacting with the Visualization */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Simulation Visualization Setup ==&lt;br /&gt;
&lt;br /&gt;
=== Vistrails Setup ===&lt;br /&gt;
&lt;br /&gt;
* Download and install [http://www.vistrails.org VisTrails]&lt;br /&gt;
* Delete the &#039;&#039;&#039;~/.vistrails&#039;&#039;&#039; directory, if it exists, and run VisTrails at least once. This will recreate the &#039;&#039;&#039;~/.vistrails&#039;&#039;&#039; directory with known contents and make sure there are no out-of-date files lurking there.&lt;br /&gt;
* Get a copy of the &#039;&#039;&#039;wrf_vistrails&#039;&#039;&#039; repository, containing the necessary userpackages. &lt;br /&gt;
** This is currently restricted to developers who have a shell account at &#039;&#039;&#039;math.ucdenver.edu&#039;&#039;&#039;  &lt;br /&gt;
** NOTE: substitute &#039;&#039;&#039;user&#039;&#039;&#039; for your own username&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
git clone ssh://user@math.ucdenver.edu/home/grads/jbeezley/wrf_vistrails.git&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Place the VisTrails packages (the respective directories inside the &#039;&#039;userpackages&#039;&#039; directory) into &#039;&#039;&#039;/Users/XXX/.vistrails/userpackages/&#039;&#039;&#039;&lt;br /&gt;
** &#039;&#039;&#039;NumSciPy&#039;&#039;&#039; -- contains the wrapper modules for NumPy and SciPy functions&lt;br /&gt;
** &#039;&#039;&#039;WRFtoVTK&#039;&#039;&#039; -- contains the wrf to vtk file conversion modules&lt;br /&gt;
** &#039;&#039;&#039;extendDialog&#039;&#039;&#039; -- contains masked text dialogs for passwords&lt;br /&gt;
** &#039;&#039;&#039;namelist&#039;&#039;&#039; -- contains utilities for creating wrf namelist parameter files&lt;br /&gt;
** &#039;&#039;&#039;jbeezley_util&#039;&#039;&#039; -- contains something Jon did.&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
cd wrf_vistrails/userpackages&lt;br /&gt;
cp -a WRFtoVTK NumSciPy extendDialog namelist jbeezley_utils ~/.vistrails/userpackages&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Setup the Vistrails database and load vistrails workflows&lt;br /&gt;
** Start Vistrails then go to &#039;&#039;&#039;File-&amp;gt;Import-&amp;gt;From DB...&#039;&#039;&#039; (opens a dialog)&lt;br /&gt;
** If the wildfire database is not shown (first time use)&lt;br /&gt;
*** Click on the plus button to add a new database&lt;br /&gt;
*** Fill in the fields:&lt;br /&gt;
**** Save as Connection Name: &#039;&#039;&#039;wildfire&#039;&#039;&#039;&lt;br /&gt;
**** Server Hostname: &#039;&#039;&#039;vistrails.sci.utah.edu&#039;&#039;&#039;&lt;br /&gt;
**** Port: &#039;&#039;&#039;3306&#039;&#039;&#039;&lt;br /&gt;
**** Username: &#039;&#039;&#039;user&#039;&#039;&#039; (Note: substitute &#039;&#039;&#039;user&#039;&#039;&#039; with your own username)&lt;br /&gt;
**** Password: &#039;&#039;&#039;****&#039;&#039;&#039; (Note: substitute &#039;&#039;&#039;****&#039;&#039;&#039; with your own password)&lt;br /&gt;
**** Database: &#039;&#039;&#039;wildfire&#039;&#039;&#039;&lt;br /&gt;
*** Click test (this should open a dialog reporting success)&lt;br /&gt;
*** Click update to obtain the list of available vistrails within the database&lt;br /&gt;
*** Select the &#039;&#039;&#039;fireDemoSC2009.mashup&#039;&#039;&#039; and click open.&lt;br /&gt;
*** If popups appear enable packages by clicking &#039;&#039;&#039;YES&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
===Simulation Execution===&lt;br /&gt;
&lt;br /&gt;
* [[How to run WRF-Fire|Download, install and run WRF-Fire]]&lt;br /&gt;
** NOTE: This can be done on a different computer; you will only need to move the output files.&lt;br /&gt;
* To get enough frames, before running WRF-Fire, change in &#039;&#039;&#039;namelist.input&#039;&#039;&#039; the variable &#039;&#039;&#039;history_interval&#039;&#039;&#039; to the desired frame interval in seconds (i.e., &#039;&#039;&#039;history_interval_s=1&#039;&#039;&#039;) &lt;br /&gt;
* If the visualization computer is different from the computer where you run WRF-Fire, transfer the resulting &#039;&#039;&#039;wrfout&#039;&#039;&#039; files to the visualization computer&lt;br /&gt;
* Store the &#039;&#039;&#039;wrfout&#039;&#039;&#039; files within a known directory (i.e. &#039;&#039;&#039;/Users/XXX/VisTrails&#039;&#039;&#039;)&lt;br /&gt;
* Setup an empty directory to save VTK files that will be generated from the &#039;&#039;&#039;wrfout&#039;&#039;&#039; files (i.e. &#039;&#039;&#039;/Users/XXX/VisTrails/vtkFiles/&#039;&#039;)&lt;br /&gt;
&lt;br /&gt;
=== Converting Simulation Results ===&lt;br /&gt;
&lt;br /&gt;
[[File:Sc2009history.convert.png|600px]]&lt;br /&gt;
&lt;br /&gt;
* Run VisTrails and open the workflow from the wildfire database &lt;br /&gt;
** Open the &#039;&#039;&#039;fireDemoSC2009.mashup&#039;&#039;&#039; vistrails (see also &#039;&#039;&#039;Vistrails Setup&#039;&#039;&#039;)&lt;br /&gt;
** NOTE: If at this time or later during navigation of the history tree, a dialog pops up saying that vistrails need to enable some package, select yes to continue.&lt;br /&gt;
* Begin by navigating the history tree (a.k.a. Click the &#039;&#039;&#039;History&#039;&#039;&#039; button on Vistrails toolbar)&lt;br /&gt;
** If the type in the nodes is too small to read, ctrl-left click on it and move the mouse down. Use arrow keys to move the whole tree in the window.&lt;br /&gt;
* Execute the &#039;&#039;&#039;WRFOUT Conversion&#039;&#039;&#039; node (top node of a middle branch)&lt;br /&gt;
** NOTE: to &#039;execute&#039; a node, you must select the node so that it is highlighted and the corresponding workflow is shown in the smaller view window on the top right, then click on the &#039;execute&#039; button.&lt;br /&gt;
** Prompts for the &#039;&#039;WRF directory&#039;&#039; (&#039;&#039;/Users/XXX/Desktop/visExample/sc2009outputs/&#039;&#039;)&lt;br /&gt;
** Prompts for the &#039;&#039;VTK directory&#039;&#039; (&#039;&#039;/Users/XXX/Desktop/visExample/sc2009outputs/vtkFiles&#039;&#039;)&lt;br /&gt;
** NOTE: the prompts are asking for UNIX-style &#039;&#039;&#039;directory&#039;&#039;&#039; paths. That is, in this case you should type &#039;&#039;/Users/XXX/Desktop/visExample/sc2009outputs/vtkFiles&#039;&#039; and press OK.&lt;br /&gt;
* Wait for the conversion to complete (all modules turn green)&lt;br /&gt;
** NOTE: the version node &#039;&#039;&#039;WRFOUT Conversion (threaded)&#039;&#039;&#039; will also convert the files with identical prompt boxes, however the workflow is &#039;&#039;non-blocking&#039;&#039; meaning that all boxes will turn green immediately while the conversion continues in the background.&lt;br /&gt;
&lt;br /&gt;
=== Visualizing Simulation Results ===&lt;br /&gt;
&lt;br /&gt;
[[File:Sc2009history.visualize.png|600px]]&lt;br /&gt;
&lt;br /&gt;
* Execute the &#039;&#039;&#039;Local Fire Visualization&#039;&#039;&#039; node (top of the right-most branch)&lt;br /&gt;
** Prompts for the &#039;&#039;VTK directory&#039;&#039; (&#039;&#039;/Users/XXX/Desktop/visExample/sc2009outputs/vtkFiles&#039;&#039;)&lt;br /&gt;
*** NOTE: this prompt are asking for the &#039;&#039;&#039;complete directory path&#039;&#039;&#039;&lt;br /&gt;
** Prompts for the &#039;&#039;Animation Delay&#039;&#039; (hit enter)&lt;br /&gt;
** View the spread sheet to interact with the visualization&lt;br /&gt;
&lt;br /&gt;
=== Interacting with the Visualization ===&lt;br /&gt;
&lt;br /&gt;
[[File:Sc2009results.png|600px]]&lt;br /&gt;
&lt;br /&gt;
* left click (&#039;&#039;and move the mouse!&#039;&#039;) will rotate the visualization&lt;br /&gt;
* Shift-left click (&#039;&#039;and move the mouse!&#039;&#039;) will pan the visualization&lt;br /&gt;
* Ctrl-left click (&#039;&#039;and move the mouse!&#039;&#039;) will zoom the visualization&lt;br /&gt;
* &#039;&#039;&#039;l&#039;&#039;&#039; (lower case L) toggles the streamline widget&lt;br /&gt;
* left click on the sreamline widget (&#039;&#039;and move the mouse!&#039;&#039;) moves it around&lt;br /&gt;
* left click on the play widgets (left to right):&lt;br /&gt;
** &#039;&#039;step back&#039;&#039; -- step backwards one frame in the simulation&lt;br /&gt;
** &#039;&#039;play back&#039;&#039; -- play the simulation backwards&lt;br /&gt;
** &#039;&#039;stop&#039;&#039; -- pauses the simulation animation&lt;br /&gt;
** &#039;&#039;play forward&#039;&#039; -- play the simulation forward&lt;br /&gt;
** &#039;&#039;step forward&#039;&#039; -- step forward one frame in the simulation&lt;br /&gt;
&lt;br /&gt;
== Cluster-based Simulation Execution ==&lt;br /&gt;
=== Setting up the Python server on a remote machine or cluster ===&lt;br /&gt;
* Build the simulation binaries on the cluster&lt;br /&gt;
* On the cluster setup a home directory for the server&lt;br /&gt;
* Within this directory create virtual links to:&lt;br /&gt;
** &#039;&#039;&#039;ideal.exe&#039;&#039;&#039; -- the ideal simulation setup executable&lt;br /&gt;
** &#039;&#039;&#039;real.exe&#039;&#039;&#039; -- the real simulation setup executable&lt;br /&gt;
** &#039;&#039;&#039;wrf.exe&#039;&#039;&#039; -- the simulation binary&lt;br /&gt;
* Within this directory copy over the server files from the previous tar ball&lt;br /&gt;
** &#039;&#039;&#039;demoNetwork/execServer.py&#039;&#039;&#039; -- to be used on the cluster to launch the server&lt;br /&gt;
** &#039;&#039;&#039;demoNetwork/fireServer.py&#039;&#039;&#039; -- the server code&lt;br /&gt;
** &#039;&#039;&#039;demoNetwork/fireMessages.py&#039;&#039;&#039; -- the message passing scheme and code&lt;br /&gt;
** &#039;&#039;&#039;demoNetwork/userRegistration.py&#039;&#039;&#039; -- user registration script&lt;br /&gt;
** &#039;&#039;&#039;demoNetwork/README.txt&#039;&#039;&#039; -- a readme file explaining server setup in more detail&lt;br /&gt;
* Execute the python script to start the server (requires python 2.5 or greater)&lt;br /&gt;
** On the command line within the directory: &#039;&#039;python execServer.py&#039;&#039;&lt;br /&gt;
* View and remember the listening port output by the server&lt;br /&gt;
&lt;br /&gt;
=== Registering New Users with the Server ===&lt;br /&gt;
* Log in to the cluster hosting the server&lt;br /&gt;
* Change to the server home directory on the cluster&lt;br /&gt;
* Execute the python script for user registration&lt;br /&gt;
** On the command line: &#039;&#039;python userRegistration.py &amp;lt;username&amp;gt; &amp;lt;password&amp;gt;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
=== Executing Remote Simulations ===&lt;br /&gt;
* Run VisTrails and open the workflow (&#039;&#039;&#039;fireDemoSC2009.vt&#039;&#039;&#039;)&lt;br /&gt;
&lt;br /&gt;
* The &#039;&#039;&#039;Execute Simulation (real)&#039;&#039;&#039; node (top of the middle branch): Execution of this workflow sends an execution request to the server.  The VisTrails client communicates with the remote server using the md5 checksum of the simulation input files as a unique identifier.  The server will execute the simulation IFF it is not already stored within the user database.  Consequently, repeated execution requests of the same simulations will be ignored, only the first being executed.&lt;br /&gt;
** Prompts for the &#039;&#039;Server Name&#039;&#039;&lt;br /&gt;
** Prompts for the &#039;&#039;Username&#039;&#039;&lt;br /&gt;
** Prompts for the &#039;&#039;Password&#039;&#039; (this is the &#039;&#039;user registered&#039;&#039; password)&lt;br /&gt;
** Prompts for the &#039;&#039;Local Simulation Directory&#039;&#039; (&#039;&#039;/Users/XXX/Desktop/visExample/sc2009inputs/&#039;&#039;)&lt;br /&gt;
** Prompts for the &#039;&#039;Server port&#039;&#039; (this is the number remembered during server setup)&lt;br /&gt;
&lt;br /&gt;
* The &#039;&#039;&#039;Update Simulation (real)&#039;&#039;&#039; node (upper middle of the middle branch): Execution of this workflow will query the server for the latest &#039;&#039;WRFOUT&#039;&#039; files produced by the simulation for the given input files.  If the md5 checksum of the &#039;&#039;WRFOUT&#039;&#039; does not match between the server and the client, then the file is sent from the cluster to your local machine.  No files are sent from the server to the client if the md5 checksums are the same or if the server does not have a simulation recorded for the given input files.&lt;br /&gt;
** Prompts for the &#039;&#039;Server Name&#039;&#039;&lt;br /&gt;
** Prompts for the &#039;&#039;Username&#039;&#039;&lt;br /&gt;
** Prompts for the &#039;&#039;Password&#039;&#039; (this is the &#039;&#039;user registered&#039;&#039; password)&lt;br /&gt;
** Prompts for the &#039;&#039;Local Simulation Directory&#039;&#039; (&#039;&#039;/Users/XXX/Desktop/visExample/sc2009inputs/&#039;&#039;)&lt;br /&gt;
** Prompts for the &#039;&#039;Server port&#039;&#039; (this is the number remembered during server setup)&lt;br /&gt;
&lt;br /&gt;
* The &#039;&#039;&#039;Stop Simulation (real)&#039;&#039;&#039; node (lower middle of the middle branch): Execution of this workflow will send a termination request of the simulation to the server.  For simulations that run indefinitely, or are running for a long time, the user can explicitly terminate their continued computation.  The workflow prompts the user for the local directory of the input files, used as a means of identifying the simulation to which the user is referring.&lt;br /&gt;
** Prompts for the &#039;&#039;Server Name&#039;&#039;&lt;br /&gt;
** Prompts for the &#039;&#039;Username&#039;&#039;&lt;br /&gt;
** Prompts for the &#039;&#039;Password&#039;&#039; (this is the &#039;&#039;user registered&#039;&#039; password)&lt;br /&gt;
** Prompts for the &#039;&#039;Local Simulation Directory&#039;&#039; (&#039;&#039;/Users/XXX/Desktop/visExample/sc2009inputs/&#039;&#039;)&lt;br /&gt;
** Prompts for the &#039;&#039;Server port&#039;&#039; (this is the number remembered during server setup)&lt;br /&gt;
&lt;br /&gt;
* The &#039;&#039;&#039;Delete Simulation (real)&#039;&#039;&#039; node (lower middle of the middle branch): Execution of this workflow will send a deletion request of the simulation to the server.  After a simulation is run, it will remain on the server until it is explicitly deleted by the user.  Consequently, if a user terminates a simulation, then wishes to re-run the simulation, they must first delete it.  Otherwise, subsequent re-runs of the simulation will not occur because the server views the simulation as already executed.&lt;br /&gt;
** Prompts for the &#039;&#039;Server Name&#039;&#039;&lt;br /&gt;
** Prompts for the &#039;&#039;Username&#039;&#039;&lt;br /&gt;
** Prompts for the &#039;&#039;Password&#039;&#039; (this is the &#039;&#039;user registered&#039;&#039; password)&lt;br /&gt;
** Prompts for the &#039;&#039;Local Simulation Directory&#039;&#039; (&#039;&#039;/Users/XXX/Desktop/visExample/sc2009inputs/&#039;&#039;)&lt;br /&gt;
** Prompts for the &#039;&#039;Server port&#039;&#039; (this is the number remembered during server setup)&lt;br /&gt;
&lt;br /&gt;
== Super Computing 2009 Demo ==&lt;br /&gt;
* A full simulation to visualization scenario:&lt;br /&gt;
** Execute the &#039;&#039;&#039;Execute Simulation (real)&#039;&#039;&#039; workflow&lt;br /&gt;
** Wait.&lt;br /&gt;
** Execute the &#039;&#039;&#039;Update Simulation (real)&#039;&#039;&#039; workflow&lt;br /&gt;
** Execute the &#039;&#039;&#039;WRFOUT Conversion&#039;&#039;&#039; workflow&lt;br /&gt;
** Execute the &#039;&#039;&#039;Fire Demo Visualization&#039;&#039;&#039; workflow&lt;br /&gt;
&lt;br /&gt;
== Works with ==&lt;br /&gt;
&lt;br /&gt;
* VisTrails 1.4.1 revision 1693 (2010-01-28 14:00) on Mac OS X 10.6.2&lt;br /&gt;
* WRF-Fire {{WRF-Fire-commit|d08007ddfcd8c59095caf42f7633048b9a541732|d08007ddfcd8c59095caf42f7633048b9a541732}} on Rocks 5.1 Centos 5.3 gfortran-gcc  4.1.2, openmpi_gcc-1.2.8&lt;br /&gt;
&lt;br /&gt;
[[Category:WRF-Fire]]&lt;br /&gt;
[[Category:Howtos|Visualize WRF-Fire output in VisTrails]]&lt;/div&gt;</summary>
		<author><name>Jdaniels</name></author>
	</entry>
	<entry>
		<id>https://wiki.openwfm.org/index.php?title=File:Sc2009history.convert.png&amp;diff=1123</id>
		<title>File:Sc2009history.convert.png</title>
		<link rel="alternate" type="text/html" href="https://wiki.openwfm.org/index.php?title=File:Sc2009history.convert.png&amp;diff=1123"/>
		<updated>2010-07-08T16:40:30Z</updated>

		<summary type="html">&lt;p&gt;Jdaniels: uploaded a new version of &amp;quot;File:Sc2009history.convert.png&amp;quot;:&amp;amp;#32;The new history node for the conversion vistrails is shifted slightly due to a new history node on the far right.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;history vistrails view for the possible nodes now being stored within the super computing demo vistrail shared on the wildfire database.&lt;/div&gt;</summary>
		<author><name>Jdaniels</name></author>
	</entry>
	<entry>
		<id>https://wiki.openwfm.org/index.php?title=File:Sc2009history.visualize.png&amp;diff=1122</id>
		<title>File:Sc2009history.visualize.png</title>
		<link rel="alternate" type="text/html" href="https://wiki.openwfm.org/index.php?title=File:Sc2009history.visualize.png&amp;diff=1122"/>
		<updated>2010-07-08T16:39:43Z</updated>

		<summary type="html">&lt;p&gt;Jdaniels: uploaded a new version of &amp;quot;File:Sc2009history.visualize.png&amp;quot;:&amp;amp;#32;the new workflow node for visualizations is on the far right.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;history vistrails view for the possible nodes now being stored within the super computing demo vistrail shared on the wildfire database.&lt;/div&gt;</summary>
		<author><name>Jdaniels</name></author>
	</entry>
	<entry>
		<id>https://wiki.openwfm.org/index.php?title=How_to_visualize_WRF-Fire_output_in_VisTrails&amp;diff=1121</id>
		<title>How to visualize WRF-Fire output in VisTrails</title>
		<link rel="alternate" type="text/html" href="https://wiki.openwfm.org/index.php?title=How_to_visualize_WRF-Fire_output_in_VisTrails&amp;diff=1121"/>
		<updated>2010-07-08T16:36:10Z</updated>

		<summary type="html">&lt;p&gt;Jdaniels: /* Visualizing Simulation Results */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Simulation Visualization Setup ==&lt;br /&gt;
&lt;br /&gt;
=== Vistrails Setup ===&lt;br /&gt;
&lt;br /&gt;
* Download and install [http://www.vistrails.org VisTrails]&lt;br /&gt;
* Delete the &#039;&#039;&#039;~/.vistrails&#039;&#039;&#039; directory, if it exists, and run VisTrails at least once. This will recreate the &#039;&#039;&#039;~/.vistrails&#039;&#039;&#039; directory with known contents and make sure there are no out-of-date files lurking there.&lt;br /&gt;
* Get a copy of the &#039;&#039;&#039;wrf_vistrails&#039;&#039;&#039; repository, containing the necessary userpackages. &lt;br /&gt;
** This is currently restricted to developers who have a shell account at &#039;&#039;&#039;math.ucdenver.edu&#039;&#039;&#039;  &lt;br /&gt;
** NOTE: substitute &#039;&#039;&#039;user&#039;&#039;&#039; for your own username&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
git clone ssh://user@math.ucdenver.edu/home/grads/jbeezley/wrf_vistrails.git&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Place the VisTrails packages (the respective directories inside the &#039;&#039;userpackages&#039;&#039; directory) into &#039;&#039;&#039;/Users/XXX/.vistrails/userpackages/&#039;&#039;&#039;&lt;br /&gt;
** &#039;&#039;&#039;NumSciPy&#039;&#039;&#039; -- contains the wrapper modules for NumPy and SciPy functions&lt;br /&gt;
** &#039;&#039;&#039;WRFtoVTK&#039;&#039;&#039; -- contains the wrf to vtk file conversion modules&lt;br /&gt;
** &#039;&#039;&#039;extendDialog&#039;&#039;&#039; -- contains masked text dialogs for passwords&lt;br /&gt;
** &#039;&#039;&#039;namelist&#039;&#039;&#039; -- contains utilities for creating wrf namelist parameter files&lt;br /&gt;
** &#039;&#039;&#039;jbeezley_util&#039;&#039;&#039; -- contains something Jon did.&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
cd wrf_vistrails/userpackages&lt;br /&gt;
cp -a WRFtoVTK NumSciPy extendDialog namelist jbeezley_utils ~/.vistrails/userpackages&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Setup the Vistrails database and load vistrails workflows&lt;br /&gt;
** Start Vistrails then go to &#039;&#039;&#039;File-&amp;gt;Import-&amp;gt;From DB...&#039;&#039;&#039; (opens a dialog)&lt;br /&gt;
** If the wildfire database is not shown (first time use)&lt;br /&gt;
*** Click on the plus button to add a new database&lt;br /&gt;
*** Fill in the fields:&lt;br /&gt;
**** Save as Connection Name: &#039;&#039;&#039;wildfire&#039;&#039;&#039;&lt;br /&gt;
**** Server Hostname: &#039;&#039;&#039;vistrails.sci.utah.edu&#039;&#039;&#039;&lt;br /&gt;
**** Port: &#039;&#039;&#039;3306&#039;&#039;&#039;&lt;br /&gt;
**** Username: &#039;&#039;&#039;user&#039;&#039;&#039; (Note: substitute &#039;&#039;&#039;user&#039;&#039;&#039; with your own username)&lt;br /&gt;
**** Password: &#039;&#039;&#039;****&#039;&#039;&#039; (Note: substitute &#039;&#039;&#039;****&#039;&#039;&#039; with your own password)&lt;br /&gt;
**** Database: &#039;&#039;&#039;wildfire&#039;&#039;&#039;&lt;br /&gt;
*** Click test (this should open a dialog reporting success)&lt;br /&gt;
*** Click update to obtain the list of available vistrails within the database&lt;br /&gt;
*** Select the &#039;&#039;&#039;fireDemoSC2009.mashup&#039;&#039;&#039; and click open.&lt;br /&gt;
*** If popups appear enable packages by clicking &#039;&#039;&#039;YES&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
===Simulation Execution===&lt;br /&gt;
&lt;br /&gt;
* [[How to run WRF-Fire|Download, install and run WRF-Fire]]&lt;br /&gt;
** NOTE: This can be done on a different computer; you will only need to move the output files.&lt;br /&gt;
* To get enough frames, before running WRF-Fire, change in &#039;&#039;&#039;namelist.input&#039;&#039;&#039; the variable &#039;&#039;&#039;history_interval&#039;&#039;&#039; to the desired frame interval in seconds (i.e., &#039;&#039;&#039;history_interval_s=1&#039;&#039;&#039;) &lt;br /&gt;
* If the visualization computer is different from the computer where you run WRF-Fire, transfer the resulting &#039;&#039;&#039;wrfout&#039;&#039;&#039; files to the visualization computer&lt;br /&gt;
* Store the &#039;&#039;&#039;wrfout&#039;&#039;&#039; files within a known directory (i.e. &#039;&#039;&#039;/Users/XXX/VisTrails&#039;&#039;&#039;)&lt;br /&gt;
* Setup an empty directory to save VTK files that will be generated from the &#039;&#039;&#039;wrfout&#039;&#039;&#039; files (i.e. &#039;&#039;&#039;/Users/XXX/VisTrails/vtkFiles/&#039;&#039;)&lt;br /&gt;
&lt;br /&gt;
=== Converting Simulation Results ===&lt;br /&gt;
&lt;br /&gt;
[[File:Sc2009history.convert.png|600px]]&lt;br /&gt;
&lt;br /&gt;
* Run VisTrails and open the workflow from the wildfire database &lt;br /&gt;
** Open the &#039;&#039;&#039;fireDemoSC2009.mashup&#039;&#039;&#039; vistrails (see also &#039;&#039;&#039;Vistrails Setup&#039;&#039;&#039;)&lt;br /&gt;
** NOTE: If at this time or later during navigation of the history tree, a dialog pops up saying that vistrails need to enable some package, select yes to continue.&lt;br /&gt;
* Begin by navigating the history tree (a.k.a. Click the &#039;&#039;&#039;History&#039;&#039;&#039; button on Vistrails toolbar)&lt;br /&gt;
** If the type in the nodes is too small to read, ctrl-left click on it and move the mouse down. Use arrow keys to move the whole tree in the window.&lt;br /&gt;
* Execute the &#039;&#039;&#039;WRFOUT Conversion&#039;&#039;&#039; node (top node of a middle branch)&lt;br /&gt;
** NOTE: to &#039;execute&#039; a node, you must select the node so that it is highlighted and the corresponding workflow is shown in the smaller view window on the top right, then click on the &#039;execute&#039; button.&lt;br /&gt;
** Prompts for the &#039;&#039;WRF directory&#039;&#039; (&#039;&#039;/Users/XXX/Desktop/visExample/sc2009outputs/&#039;&#039;)&lt;br /&gt;
** Prompts for the &#039;&#039;VTK directory&#039;&#039; (&#039;&#039;/Users/XXX/Desktop/visExample/sc2009outputs/vtkFiles&#039;&#039;)&lt;br /&gt;
** NOTE: the prompts are asking for UNIX-style &#039;&#039;&#039;directory&#039;&#039;&#039; paths. That is, in this case you should type &#039;&#039;/Users/XXX/Desktop/visExample/sc2009outputs/vtkFiles&#039;&#039; and press OK.&lt;br /&gt;
* Wait for the conversion to complete (all modules turn green)&lt;br /&gt;
** NOTE: the version node &#039;&#039;&#039;WRFOUT Conversion (threaded)&#039;&#039;&#039; will also convert the files with identical prompt boxes, however the workflow is &#039;&#039;non-blocking&#039;&#039; meaning that all boxes will turn green immediately while the conversion continues in the background.&lt;br /&gt;
&lt;br /&gt;
=== Visualizing Simulation Results ===&lt;br /&gt;
&lt;br /&gt;
[[File:Sc2009history.visualize.png|600px]]&lt;br /&gt;
&lt;br /&gt;
* Execute the &#039;&#039;&#039;Local Fire Visualization&#039;&#039;&#039; node (top of the right-most branch)&lt;br /&gt;
** Prompts for the &#039;&#039;VTK directory&#039;&#039; (&#039;&#039;/Users/XXX/Desktop/visExample/sc2009outputs/vtkFiles&#039;&#039;)&lt;br /&gt;
*** NOTE: this prompt are asking for the &#039;&#039;&#039;complete directory path&#039;&#039;&#039;&lt;br /&gt;
** Prompts for the &#039;&#039;Animation Delay&#039;&#039; (hit enter)&lt;br /&gt;
** View the spread sheet to interact with the visualization&lt;br /&gt;
&lt;br /&gt;
=== Interacting with the Visualization ===&lt;br /&gt;
&lt;br /&gt;
[[File:Sc2009results.png|600px]]&lt;br /&gt;
&lt;br /&gt;
* left click will rotate the visualization&lt;br /&gt;
* Shift-left click will pan the visualization&lt;br /&gt;
* Ctrl-left click will zoom the visualization&lt;br /&gt;
* &#039;&#039;&#039;l&#039;&#039;&#039; (lower case L) toggles the streamline widget&lt;br /&gt;
* left click on the sreamline widget moves it around&lt;br /&gt;
* left click on the play widgets (left to right)&lt;br /&gt;
** &#039;&#039;step back&#039;&#039; -- step backwards one frame in the simulation&lt;br /&gt;
** &#039;&#039;play back&#039;&#039; -- play the simulation backwards&lt;br /&gt;
** &#039;&#039;stop&#039;&#039; -- pauses the simulation animation&lt;br /&gt;
** &#039;&#039;play forward&#039;&#039; -- play the simulation forward&lt;br /&gt;
** &#039;&#039;step forward&#039;&#039; -- step forward one frame in the simulation&lt;br /&gt;
&lt;br /&gt;
== Cluster-based Simulation Execution ==&lt;br /&gt;
=== Setting up the Python server on a remote machine or cluster ===&lt;br /&gt;
* Build the simulation binaries on the cluster&lt;br /&gt;
* On the cluster setup a home directory for the server&lt;br /&gt;
* Within this directory create virtual links to:&lt;br /&gt;
** &#039;&#039;&#039;ideal.exe&#039;&#039;&#039; -- the ideal simulation setup executable&lt;br /&gt;
** &#039;&#039;&#039;real.exe&#039;&#039;&#039; -- the real simulation setup executable&lt;br /&gt;
** &#039;&#039;&#039;wrf.exe&#039;&#039;&#039; -- the simulation binary&lt;br /&gt;
* Within this directory copy over the server files from the previous tar ball&lt;br /&gt;
** &#039;&#039;&#039;demoNetwork/execServer.py&#039;&#039;&#039; -- to be used on the cluster to launch the server&lt;br /&gt;
** &#039;&#039;&#039;demoNetwork/fireServer.py&#039;&#039;&#039; -- the server code&lt;br /&gt;
** &#039;&#039;&#039;demoNetwork/fireMessages.py&#039;&#039;&#039; -- the message passing scheme and code&lt;br /&gt;
** &#039;&#039;&#039;demoNetwork/userRegistration.py&#039;&#039;&#039; -- user registration script&lt;br /&gt;
** &#039;&#039;&#039;demoNetwork/README.txt&#039;&#039;&#039; -- a readme file explaining server setup in more detail&lt;br /&gt;
* Execute the python script to start the server (requires python 2.5 or greater)&lt;br /&gt;
** On the command line within the directory: &#039;&#039;python execServer.py&#039;&#039;&lt;br /&gt;
* View and remember the listening port output by the server&lt;br /&gt;
&lt;br /&gt;
=== Registering New Users with the Server ===&lt;br /&gt;
* Log in to the cluster hosting the server&lt;br /&gt;
* Change to the server home directory on the cluster&lt;br /&gt;
* Execute the python script for user registration&lt;br /&gt;
** On the command line: &#039;&#039;python userRegistration.py &amp;lt;username&amp;gt; &amp;lt;password&amp;gt;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
=== Executing Remote Simulations ===&lt;br /&gt;
* Run VisTrails and open the workflow (&#039;&#039;&#039;fireDemoSC2009.vt&#039;&#039;&#039;)&lt;br /&gt;
&lt;br /&gt;
* The &#039;&#039;&#039;Execute Simulation (real)&#039;&#039;&#039; node (top of the middle branch): Execution of this workflow sends an execution request to the server.  The VisTrails client communicates with the remote server using the md5 checksum of the simulation input files as a unique identifier.  The server will execute the simulation IFF it is not already stored within the user database.  Consequently, repeated execution requests of the same simulations will be ignored, only the first being executed.&lt;br /&gt;
** Prompts for the &#039;&#039;Server Name&#039;&#039;&lt;br /&gt;
** Prompts for the &#039;&#039;Username&#039;&#039;&lt;br /&gt;
** Prompts for the &#039;&#039;Password&#039;&#039; (this is the &#039;&#039;user registered&#039;&#039; password)&lt;br /&gt;
** Prompts for the &#039;&#039;Local Simulation Directory&#039;&#039; (&#039;&#039;/Users/XXX/Desktop/visExample/sc2009inputs/&#039;&#039;)&lt;br /&gt;
** Prompts for the &#039;&#039;Server port&#039;&#039; (this is the number remembered during server setup)&lt;br /&gt;
&lt;br /&gt;
* The &#039;&#039;&#039;Update Simulation (real)&#039;&#039;&#039; node (upper middle of the middle branch): Execution of this workflow will query the server for the latest &#039;&#039;WRFOUT&#039;&#039; files produced by the simulation for the given input files.  If the md5 checksum of the &#039;&#039;WRFOUT&#039;&#039; does not match between the server and the client, then the file is sent from the cluster to your local machine.  No files are sent from the server to the client if the md5 checksums are the same or if the server does not have a simulation recorded for the given input files.&lt;br /&gt;
** Prompts for the &#039;&#039;Server Name&#039;&#039;&lt;br /&gt;
** Prompts for the &#039;&#039;Username&#039;&#039;&lt;br /&gt;
** Prompts for the &#039;&#039;Password&#039;&#039; (this is the &#039;&#039;user registered&#039;&#039; password)&lt;br /&gt;
** Prompts for the &#039;&#039;Local Simulation Directory&#039;&#039; (&#039;&#039;/Users/XXX/Desktop/visExample/sc2009inputs/&#039;&#039;)&lt;br /&gt;
** Prompts for the &#039;&#039;Server port&#039;&#039; (this is the number remembered during server setup)&lt;br /&gt;
&lt;br /&gt;
* The &#039;&#039;&#039;Stop Simulation (real)&#039;&#039;&#039; node (lower middle of the middle branch): Execution of this workflow will send a termination request of the simulation to the server.  For simulations that run indefinitely, or are running for a long time, the user can explicitly terminate their continued computation.  The workflow prompts the user for the local directory of the input files, used as a means of identifying the simulation to which the user is referring.&lt;br /&gt;
** Prompts for the &#039;&#039;Server Name&#039;&#039;&lt;br /&gt;
** Prompts for the &#039;&#039;Username&#039;&#039;&lt;br /&gt;
** Prompts for the &#039;&#039;Password&#039;&#039; (this is the &#039;&#039;user registered&#039;&#039; password)&lt;br /&gt;
** Prompts for the &#039;&#039;Local Simulation Directory&#039;&#039; (&#039;&#039;/Users/XXX/Desktop/visExample/sc2009inputs/&#039;&#039;)&lt;br /&gt;
** Prompts for the &#039;&#039;Server port&#039;&#039; (this is the number remembered during server setup)&lt;br /&gt;
&lt;br /&gt;
* The &#039;&#039;&#039;Delete Simulation (real)&#039;&#039;&#039; node (lower middle of the middle branch): Execution of this workflow will send a deletion request of the simulation to the server.  After a simulation is run, it will remain on the server until it is explicitly deleted by the user.  Consequently, if a user terminates a simulation, then wishes to re-run the simulation, they must first delete it.  Otherwise, subsequent re-runs of the simulation will not occur because the server views the simulation as already executed.&lt;br /&gt;
** Prompts for the &#039;&#039;Server Name&#039;&#039;&lt;br /&gt;
** Prompts for the &#039;&#039;Username&#039;&#039;&lt;br /&gt;
** Prompts for the &#039;&#039;Password&#039;&#039; (this is the &#039;&#039;user registered&#039;&#039; password)&lt;br /&gt;
** Prompts for the &#039;&#039;Local Simulation Directory&#039;&#039; (&#039;&#039;/Users/XXX/Desktop/visExample/sc2009inputs/&#039;&#039;)&lt;br /&gt;
** Prompts for the &#039;&#039;Server port&#039;&#039; (this is the number remembered during server setup)&lt;br /&gt;
&lt;br /&gt;
== Super Computing 2009 Demo ==&lt;br /&gt;
* A full simulation to visualization scenario:&lt;br /&gt;
** Execute the &#039;&#039;&#039;Execute Simulation (real)&#039;&#039;&#039; workflow&lt;br /&gt;
** Wait.&lt;br /&gt;
** Execute the &#039;&#039;&#039;Update Simulation (real)&#039;&#039;&#039; workflow&lt;br /&gt;
** Execute the &#039;&#039;&#039;WRFOUT Conversion&#039;&#039;&#039; workflow&lt;br /&gt;
** Execute the &#039;&#039;&#039;Fire Demo Visualization&#039;&#039;&#039; workflow&lt;br /&gt;
&lt;br /&gt;
== Works with ==&lt;br /&gt;
&lt;br /&gt;
* VisTrails 1.4.1 revision 1693 (2010-01-28 14:00) on Mac OS X 10.6.2&lt;br /&gt;
* WRF-Fire {{WRF-Fire-commit|d08007ddfcd8c59095caf42f7633048b9a541732|d08007ddfcd8c59095caf42f7633048b9a541732}} on Rocks 5.1 Centos 5.3 gfortran-gcc  4.1.2, openmpi_gcc-1.2.8&lt;br /&gt;
&lt;br /&gt;
[[Category:WRF-Fire]]&lt;br /&gt;
[[Category:Howtos|Visualize WRF-Fire output in VisTrails]]&lt;/div&gt;</summary>
		<author><name>Jdaniels</name></author>
	</entry>
	<entry>
		<id>https://wiki.openwfm.org/index.php?title=File:Sc2009history.visualize.png&amp;diff=1099</id>
		<title>File:Sc2009history.visualize.png</title>
		<link rel="alternate" type="text/html" href="https://wiki.openwfm.org/index.php?title=File:Sc2009history.visualize.png&amp;diff=1099"/>
		<updated>2010-07-06T23:27:44Z</updated>

		<summary type="html">&lt;p&gt;Jdaniels: history vistrails view for the possible nodes now being stored within the super computing demo vistrail shared on the wildfire database.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;history vistrails view for the possible nodes now being stored within the super computing demo vistrail shared on the wildfire database.&lt;/div&gt;</summary>
		<author><name>Jdaniels</name></author>
	</entry>
	<entry>
		<id>https://wiki.openwfm.org/index.php?title=File:Sc2009history.convert.png&amp;diff=1098</id>
		<title>File:Sc2009history.convert.png</title>
		<link rel="alternate" type="text/html" href="https://wiki.openwfm.org/index.php?title=File:Sc2009history.convert.png&amp;diff=1098"/>
		<updated>2010-07-06T23:27:18Z</updated>

		<summary type="html">&lt;p&gt;Jdaniels: history vistrails view for the possible nodes now being stored within the super computing demo vistrail shared on the wildfire database.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;history vistrails view for the possible nodes now being stored within the super computing demo vistrail shared on the wildfire database.&lt;/div&gt;</summary>
		<author><name>Jdaniels</name></author>
	</entry>
	<entry>
		<id>https://wiki.openwfm.org/index.php?title=How_to_visualize_WRF-Fire_output_in_VisTrails&amp;diff=1097</id>
		<title>How to visualize WRF-Fire output in VisTrails</title>
		<link rel="alternate" type="text/html" href="https://wiki.openwfm.org/index.php?title=How_to_visualize_WRF-Fire_output_in_VisTrails&amp;diff=1097"/>
		<updated>2010-07-06T23:26:25Z</updated>

		<summary type="html">&lt;p&gt;Jdaniels: /* Simulation Execution */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Simulation Visualization Setup ==&lt;br /&gt;
&lt;br /&gt;
=== Vistrails Setup ===&lt;br /&gt;
&lt;br /&gt;
* Download and install [http://www.vistrails.org VisTrails], and run it at least once.&lt;br /&gt;
* Get a copy of the &#039;&#039;&#039;wrf_vistrails&#039;&#039;&#039; repository, containing the necessary userpackages. &lt;br /&gt;
** This is currently restricted to developers who have a shell account at &#039;&#039;&#039;math.ucdenver.edu&#039;&#039;&#039;  &lt;br /&gt;
** NOTE: substitute &#039;&#039;&#039;user&#039;&#039;&#039; for your own username&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
git clone ssh://user@math.ucdenver.edu/home/grads/jbeezley/wrf_vistrails.git&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Place the VisTrails packages (the respective directories inside the &#039;&#039;userpackages&#039;&#039; directory) into &#039;&#039;&#039;/Users/XXX/.vistrails/userpackages/&#039;&#039;&#039;&lt;br /&gt;
** &#039;&#039;&#039;NumSciPy&#039;&#039;&#039; -- contains the wrapper modules for NumPy and SciPy functions&lt;br /&gt;
** &#039;&#039;&#039;WRFtoVTK&#039;&#039;&#039; -- contains the wrf to vtk file conversion modules&lt;br /&gt;
** &#039;&#039;&#039;extendDialog&#039;&#039;&#039; -- contains masked text dialogs for passwords&lt;br /&gt;
** &#039;&#039;&#039;namelist&#039;&#039;&#039; -- contains utilities for creating wrf namelist parameter files&lt;br /&gt;
** &#039;&#039;&#039;jbeezley_util&#039;&#039;&#039; -- contains something Jon did.&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
cd wrf_vistrails&lt;br /&gt;
cp -a WRFtoVTK NumSciPy extendDialog ~/.vistrails/userpackages&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Setup the Vistrails database and load vistrails workflows&lt;br /&gt;
** Start Vistrails then go to &#039;&#039;&#039;File-&amp;gt;Import-&amp;gt;From DB...&#039;&#039;&#039; (opens a dialog)&lt;br /&gt;
** If the wildfire database is not shown (first time use)&lt;br /&gt;
*** Click on the plus button to add a new database&lt;br /&gt;
*** Fill in the fields:&lt;br /&gt;
**** Save as Connection Name: &#039;&#039;&#039;wildfire&#039;&#039;&#039;&lt;br /&gt;
**** Server Hostname: &#039;&#039;&#039;vistrails.sci.utah.edu&#039;&#039;&#039;&lt;br /&gt;
**** Port: &#039;&#039;&#039;3306&#039;&#039;&#039;&lt;br /&gt;
**** Username: &#039;&#039;&#039;user&#039;&#039;&#039; (Note: substitute &#039;&#039;&#039;user&#039;&#039;&#039; with your own username)&lt;br /&gt;
**** Password: &#039;&#039;&#039;****&#039;&#039;&#039; (Note: substitute &#039;&#039;&#039;****&#039;&#039;&#039; with your own password)&lt;br /&gt;
**** Database: &#039;&#039;&#039;wildfire&#039;&#039;&#039;&lt;br /&gt;
*** Click test (this should open a dialog reporting success)&lt;br /&gt;
*** Click update to obtain the list of available vistrails within the database&lt;br /&gt;
*** Select the &#039;&#039;&#039;fireDemoSC2009.mashup&#039;&#039;&#039; and click open.&lt;br /&gt;
*** If popups appear enable packages by clicking &#039;&#039;&#039;YES&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
=== Simulation Execution ===&lt;br /&gt;
&lt;br /&gt;
* Move the simulation inputs to a known location (i.e. &#039;&#039;/Users/XXX/Desktop/visExample/sc2009inputs/&#039;&#039;)&lt;br /&gt;
** &#039;&#039;&#039;sc2009inputs&#039;&#039;&#039; -- contains example simulation input files&lt;br /&gt;
&lt;br /&gt;
* Run the simulation with the example inputs (&#039;&#039;&#039;/Users/XXX/Desktop/visExample/sc2009inputs/&#039;&#039;&#039;)&lt;br /&gt;
** [[How to run WRF-Fire|Download, install and run WRF-Fire]]&lt;br /&gt;
** NOTE: This can be done on a different computer; you will only need to move the output files.&lt;br /&gt;
** To get enough frames, before running WRF-Fire, change in &#039;&#039;&#039;namelist.input&#039;&#039;&#039;:&lt;br /&gt;
*** &#039;&#039;&#039;history_interval&#039;&#039;&#039; to the desired frame interval in seconds (i.e., &#039;&#039;&#039;history_interval_s=1&#039;&#039;&#039;) &lt;br /&gt;
** Run WRF-Fire. The pictures below are from the &amp;quot;hill&amp;quot; ideal run in WRF-Fire.&lt;br /&gt;
&lt;br /&gt;
* If the visualization computer is different from the computer where you run WRF-Fire, transfer the resulting &#039;&#039;&#039;wrfout&#039;&#039;&#039; files to the visualization computer&lt;br /&gt;
&lt;br /&gt;
* Store the WRFOUT files within a known directory (i.e. &#039;&#039;/Users/XXX/Desktop/visExample/sc2009outputs/&#039;&#039;)&lt;br /&gt;
** Setup an empty directory to save VTK files that will be generated from WRFOUT (i.e. &#039;&#039;/Users/XXX/Desktop/visExample/sc2009outputs/vtkFiles/&#039;&#039;)&lt;br /&gt;
&lt;br /&gt;
=== Converting Simulation Results ===&lt;br /&gt;
&lt;br /&gt;
[[File:Sc2009history.convert.png|600px]]&lt;br /&gt;
&lt;br /&gt;
* Run VisTrails and open the workflow from the wildfire database &lt;br /&gt;
** Open the &#039;&#039;&#039;fireDemoSC2009.mashup&#039;&#039;&#039; vistrails (see also &#039;&#039;&#039;Vistrails Setup&#039;&#039;&#039;)&lt;br /&gt;
** NOTE: If at this time or later during navigation of the history tree, a dialog pops up saying that vistrails need to enable some package, select yes to continue.&lt;br /&gt;
&lt;br /&gt;
* Begin by navigating the history tree (a.k.a. Click the &#039;&#039;&#039;History&#039;&#039;&#039; button on Vistrails toolbar)&lt;br /&gt;
* Execute the &#039;&#039;&#039;WRFOUT Conversion&#039;&#039;&#039; node (top node of a middle branch)&lt;br /&gt;
** NOTE: to &#039;execute&#039; a node, you must select the node so that it is highlighted and the corresponding workflow is shown in the smaller view window on the top right, then click on the &#039;execute&#039; button.&lt;br /&gt;
** Prompts for the &#039;&#039;WRF directory&#039;&#039; (&#039;&#039;/Users/XXX/Desktop/visExample/sc2009outputs/&#039;&#039;)&lt;br /&gt;
** Prompts for the &#039;&#039;VTK directory&#039;&#039; (&#039;&#039;/Users/XXX/Desktop/visExample/sc2009outputs/vtkFiles&#039;&#039;)&lt;br /&gt;
** NOTE: the prompts are asking for UNIX-style &#039;&#039;&#039;directory&#039;&#039;&#039; paths. That is, in this case you should type &#039;&#039;/Users/XXX/Desktop/visExample/sc2009outputs/vtkFiles&#039;&#039; and press OK.&lt;br /&gt;
* Wait for the conversion to complete (all modules turn green)&lt;br /&gt;
** NOTE: the version node &#039;&#039;&#039;WRFOUT Conversion (threaded)&#039;&#039;&#039; will also convert the files with identical prompt boxes, however the workflow is &#039;&#039;non-blocking&#039;&#039; meaning that all boxes will turn green immediately while the conversion continues in the background. &lt;br /&gt;
&lt;br /&gt;
=== Visualizing Simulation Results ===&lt;br /&gt;
&lt;br /&gt;
[[File:Sc2009history.visualize.png|600px]]&lt;br /&gt;
&lt;br /&gt;
* Execute the &#039;&#039;&#039;Fire Demo Visualization&#039;&#039;&#039; node (top of the left-most branch)&lt;br /&gt;
** Modify the workflow nodes associated with the vtk file reading&lt;br /&gt;
*** Direct these files to the appropriate vtk paths used earlier&lt;br /&gt;
*** NOTE: you may run the workflow at this point but it will fail without changes these boxes. Running the workflow in this way will highlight the nodes that require changes. They will be colored red to indicate points of failure in the pipeline execution.&lt;br /&gt;
&lt;br /&gt;
* The &#039;&#039;&#039;Fire Demo Visualization&#039;&#039;&#039; node (top of the left-most branch)&lt;br /&gt;
** This node is intended to prompt the user for the files rather than requiring intervention with the workflows.  Currently there is a bug within the workflow.&lt;br /&gt;
** Prompts for the &#039;&#039;VTK directory&#039;&#039; (&#039;&#039;/Users/XXX/Desktop/visExample/sc2009outputs/vtkFiles&#039;&#039;)&lt;br /&gt;
** Prompts for the &#039;&#039;Animation Delay&#039;&#039; (hit enter)&lt;br /&gt;
** View the spread sheet to interact with the visualization&lt;br /&gt;
&lt;br /&gt;
=== Interacting with the Visualization ===&lt;br /&gt;
&lt;br /&gt;
[[File:Sc2009results.png|600px]]&lt;br /&gt;
&lt;br /&gt;
* left click will rotate the visualization&lt;br /&gt;
* Shift-left click will pan the visualization&lt;br /&gt;
* Ctrl-left click will zoom the visualization&lt;br /&gt;
* &#039;&#039;&#039;l&#039;&#039;&#039; (lower case L) toggles the streamline widget&lt;br /&gt;
* left click on the sreamline widget moves it around&lt;br /&gt;
* left click on the play widgets (left to right)&lt;br /&gt;
** &#039;&#039;step back&#039;&#039; -- step backwards one frame in the simulation&lt;br /&gt;
** &#039;&#039;play back&#039;&#039; -- play the simulation backwards&lt;br /&gt;
** &#039;&#039;stop&#039;&#039; -- pauses the simulation animation&lt;br /&gt;
** &#039;&#039;play forward&#039;&#039; -- play the simulation forward&lt;br /&gt;
** &#039;&#039;step forward&#039;&#039; -- step forward one frame in the simulation&lt;br /&gt;
&lt;br /&gt;
== Cluster-based Simulation Execution ==&lt;br /&gt;
=== Setting up the Python server on a remote machine or cluster ===&lt;br /&gt;
* Build the simulation binaries on the cluster&lt;br /&gt;
* On the cluster setup a home directory for the server&lt;br /&gt;
* Within this directory create virtual links to:&lt;br /&gt;
** &#039;&#039;&#039;ideal.exe&#039;&#039;&#039; -- the ideal simulation setup executable&lt;br /&gt;
** &#039;&#039;&#039;real.exe&#039;&#039;&#039; -- the real simulation setup executable&lt;br /&gt;
** &#039;&#039;&#039;wrf.exe&#039;&#039;&#039; -- the simulation binary&lt;br /&gt;
* Within this directory copy over the server files from the previous tar ball&lt;br /&gt;
** &#039;&#039;&#039;demoNetwork/execServer.py&#039;&#039;&#039; -- to be used on the cluster to launch the server&lt;br /&gt;
** &#039;&#039;&#039;demoNetwork/fireServer.py&#039;&#039;&#039; -- the server code&lt;br /&gt;
** &#039;&#039;&#039;demoNetwork/fireMessages.py&#039;&#039;&#039; -- the message passing scheme and code&lt;br /&gt;
** &#039;&#039;&#039;demoNetwork/userRegistration.py&#039;&#039;&#039; -- user registration script&lt;br /&gt;
** &#039;&#039;&#039;demoNetwork/README.txt&#039;&#039;&#039; -- a readme file explaining server setup in more detail&lt;br /&gt;
* Execute the python script to start the server (requires python 2.5 or greater)&lt;br /&gt;
** On the command line within the directory: &#039;&#039;python execServer.py&#039;&#039;&lt;br /&gt;
* View and remember the listening port output by the server&lt;br /&gt;
&lt;br /&gt;
=== Registering New Users with the Server ===&lt;br /&gt;
* Log in to the cluster hosting the server&lt;br /&gt;
* Change to the server home directory on the cluster&lt;br /&gt;
* Execute the python script for user registration&lt;br /&gt;
** On the command line: &#039;&#039;python userRegistration.py &amp;lt;username&amp;gt; &amp;lt;password&amp;gt;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
=== Executing Remote Simulations ===&lt;br /&gt;
* Run VisTrails and open the workflow (&#039;&#039;&#039;fireDemoSC2009.vt&#039;&#039;&#039;)&lt;br /&gt;
&lt;br /&gt;
* The &#039;&#039;&#039;Execute Simulation (real)&#039;&#039;&#039; node (top of the middle branch): Execution of this workflow sends an execution request to the server.  The VisTrails client communicates with the remote server using the md5 checksum of the simulation input files as a unique identifier.  The server will execute the simulation IFF it is not already stored within the user database.  Consequently, repeated execution requests of the same simulations will be ignored, only the first being executed.&lt;br /&gt;
** Prompts for the &#039;&#039;Server Name&#039;&#039;&lt;br /&gt;
** Prompts for the &#039;&#039;Username&#039;&#039;&lt;br /&gt;
** Prompts for the &#039;&#039;Password&#039;&#039; (this is the &#039;&#039;user registered&#039;&#039; password)&lt;br /&gt;
** Prompts for the &#039;&#039;Local Simulation Directory&#039;&#039; (&#039;&#039;/Users/XXX/Desktop/visExample/sc2009inputs/&#039;&#039;)&lt;br /&gt;
** Prompts for the &#039;&#039;Server port&#039;&#039; (this is the number remembered during server setup)&lt;br /&gt;
&lt;br /&gt;
* The &#039;&#039;&#039;Update Simulation (real)&#039;&#039;&#039; node (upper middle of the middle branch): Execution of this workflow will query the server for the latest &#039;&#039;WRFOUT&#039;&#039; files produced by the simulation for the given input files.  If the md5 checksum of the &#039;&#039;WRFOUT&#039;&#039; does not match between the server and the client, then the file is sent from the cluster to your local machine.  No files are sent from the server to the client if the md5 checksums are the same or if the server does not have a simulation recorded for the given input files.&lt;br /&gt;
** Prompts for the &#039;&#039;Server Name&#039;&#039;&lt;br /&gt;
** Prompts for the &#039;&#039;Username&#039;&#039;&lt;br /&gt;
** Prompts for the &#039;&#039;Password&#039;&#039; (this is the &#039;&#039;user registered&#039;&#039; password)&lt;br /&gt;
** Prompts for the &#039;&#039;Local Simulation Directory&#039;&#039; (&#039;&#039;/Users/XXX/Desktop/visExample/sc2009inputs/&#039;&#039;)&lt;br /&gt;
** Prompts for the &#039;&#039;Server port&#039;&#039; (this is the number remembered during server setup)&lt;br /&gt;
&lt;br /&gt;
* The &#039;&#039;&#039;Stop Simulation (real)&#039;&#039;&#039; node (lower middle of the middle branch): Execution of this workflow will send a termination request of the simulation to the server.  For simulations that run indefinitely, or are running for a long time, the user can explicitly terminate their continued computation.  The workflow prompts the user for the local directory of the input files, used as a means of identifying the simulation to which the user is referring.&lt;br /&gt;
** Prompts for the &#039;&#039;Server Name&#039;&#039;&lt;br /&gt;
** Prompts for the &#039;&#039;Username&#039;&#039;&lt;br /&gt;
** Prompts for the &#039;&#039;Password&#039;&#039; (this is the &#039;&#039;user registered&#039;&#039; password)&lt;br /&gt;
** Prompts for the &#039;&#039;Local Simulation Directory&#039;&#039; (&#039;&#039;/Users/XXX/Desktop/visExample/sc2009inputs/&#039;&#039;)&lt;br /&gt;
** Prompts for the &#039;&#039;Server port&#039;&#039; (this is the number remembered during server setup)&lt;br /&gt;
&lt;br /&gt;
* The &#039;&#039;&#039;Delete Simulation (real)&#039;&#039;&#039; node (lower middle of the middle branch): Execution of this workflow will send a deletion request of the simulation to the server.  After a simulation is run, it will remain on the server until it is explicitly deleted by the user.  Consequently, if a user terminates a simulation, then wishes to re-run the simulation, they must first delete it.  Otherwise, subsequent re-runs of the simulation will not occur because the server views the simulation as already executed.&lt;br /&gt;
** Prompts for the &#039;&#039;Server Name&#039;&#039;&lt;br /&gt;
** Prompts for the &#039;&#039;Username&#039;&#039;&lt;br /&gt;
** Prompts for the &#039;&#039;Password&#039;&#039; (this is the &#039;&#039;user registered&#039;&#039; password)&lt;br /&gt;
** Prompts for the &#039;&#039;Local Simulation Directory&#039;&#039; (&#039;&#039;/Users/XXX/Desktop/visExample/sc2009inputs/&#039;&#039;)&lt;br /&gt;
** Prompts for the &#039;&#039;Server port&#039;&#039; (this is the number remembered during server setup)&lt;br /&gt;
&lt;br /&gt;
== Super Computing 2009 Demo ==&lt;br /&gt;
* A full simulation to visualization scenario:&lt;br /&gt;
** Execute the &#039;&#039;&#039;Execute Simulation (real)&#039;&#039;&#039; workflow&lt;br /&gt;
** Wait.&lt;br /&gt;
** Execute the &#039;&#039;&#039;Update Simulation (real)&#039;&#039;&#039; workflow&lt;br /&gt;
** Execute the &#039;&#039;&#039;WRFOUT Conversion&#039;&#039;&#039; workflow&lt;br /&gt;
** Execute the &#039;&#039;&#039;Fire Demo Visualization&#039;&#039;&#039; workflow&lt;br /&gt;
&lt;br /&gt;
== Works with ==&lt;br /&gt;
&lt;br /&gt;
* VisTrails 1.4.1 revision 1693 (2010-01-28 14:00) on Mac OS X 10.6.2&lt;br /&gt;
* WRF-Fire {{WRF-Fire-commit|d08007ddfcd8c59095caf42f7633048b9a541732|d08007ddfcd8c59095caf42f7633048b9a541732}} on Rocks 5.1 Centos 5.3 gfortran-gcc  4.1.2, openmpi_gcc-1.2.8&lt;br /&gt;
&lt;br /&gt;
[[Category:WRF-Fire]]&lt;br /&gt;
[[Category:Howtos|Visualize WRF-Fire output in VisTrails]]&lt;/div&gt;</summary>
		<author><name>Jdaniels</name></author>
	</entry>
	<entry>
		<id>https://wiki.openwfm.org/index.php?title=How_to_visualize_WRF-Fire_output_in_VisTrails&amp;diff=1096</id>
		<title>How to visualize WRF-Fire output in VisTrails</title>
		<link rel="alternate" type="text/html" href="https://wiki.openwfm.org/index.php?title=How_to_visualize_WRF-Fire_output_in_VisTrails&amp;diff=1096"/>
		<updated>2010-07-06T23:24:38Z</updated>

		<summary type="html">&lt;p&gt;Jdaniels: /* Simulation Execution */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Simulation Visualization Setup ==&lt;br /&gt;
&lt;br /&gt;
=== Vistrails Setup ===&lt;br /&gt;
&lt;br /&gt;
* Download and install [http://www.vistrails.org VisTrails], and run it at least once.&lt;br /&gt;
* Get a copy of the &#039;&#039;&#039;wrf_vistrails&#039;&#039;&#039; repository, containing the necessary userpackages. &lt;br /&gt;
** This is currently restricted to developers who have a shell account at &#039;&#039;&#039;math.ucdenver.edu&#039;&#039;&#039;  &lt;br /&gt;
** NOTE: substitute &#039;&#039;&#039;user&#039;&#039;&#039; for your own username&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
git clone ssh://user@math.ucdenver.edu/home/grads/jbeezley/wrf_vistrails.git&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Place the VisTrails packages (the respective directories inside the &#039;&#039;userpackages&#039;&#039; directory) into &#039;&#039;&#039;/Users/XXX/.vistrails/userpackages/&#039;&#039;&#039;&lt;br /&gt;
** &#039;&#039;&#039;NumSciPy&#039;&#039;&#039; -- contains the wrapper modules for NumPy and SciPy functions&lt;br /&gt;
** &#039;&#039;&#039;WRFtoVTK&#039;&#039;&#039; -- contains the wrf to vtk file conversion modules&lt;br /&gt;
** &#039;&#039;&#039;extendDialog&#039;&#039;&#039; -- contains masked text dialogs for passwords&lt;br /&gt;
** &#039;&#039;&#039;namelist&#039;&#039;&#039; -- contains utilities for creating wrf namelist parameter files&lt;br /&gt;
** &#039;&#039;&#039;jbeezley_util&#039;&#039;&#039; -- contains something Jon did.&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
cd wrf_vistrails&lt;br /&gt;
cp -a WRFtoVTK NumSciPy extendDialog ~/.vistrails/userpackages&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Setup the Vistrails database and load vistrails workflows&lt;br /&gt;
** Start Vistrails then go to &#039;&#039;&#039;File-&amp;gt;Import-&amp;gt;From DB...&#039;&#039;&#039; (opens a dialog)&lt;br /&gt;
** If the wildfire database is not shown (first time use)&lt;br /&gt;
*** Click on the plus button to add a new database&lt;br /&gt;
*** Fill in the fields:&lt;br /&gt;
**** Save as Connection Name: &#039;&#039;&#039;wildfire&#039;&#039;&#039;&lt;br /&gt;
**** Server Hostname: &#039;&#039;&#039;vistrails.sci.utah.edu&#039;&#039;&#039;&lt;br /&gt;
**** Port: &#039;&#039;&#039;3306&#039;&#039;&#039;&lt;br /&gt;
**** Username: &#039;&#039;&#039;user&#039;&#039;&#039; (Note: substitute &#039;&#039;&#039;user&#039;&#039;&#039; with your own username)&lt;br /&gt;
**** Password: &#039;&#039;&#039;****&#039;&#039;&#039; (Note: substitute &#039;&#039;&#039;****&#039;&#039;&#039; with your own password)&lt;br /&gt;
**** Database: &#039;&#039;&#039;wildfire&#039;&#039;&#039;&lt;br /&gt;
*** Click test (this should open a dialog reporting success)&lt;br /&gt;
*** Click update to obtain the list of available vistrails within the database&lt;br /&gt;
*** Select the &#039;&#039;&#039;fireDemoSC2009.mashup&#039;&#039;&#039; and click open.&lt;br /&gt;
*** If popups appear enable packages by clicking &#039;&#039;&#039;YES&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
=== Simulation Execution ===&lt;br /&gt;
&lt;br /&gt;
* Move the simulation inputs to a known location (i.e. &#039;&#039;/Users/XXX/Desktop/visExample/sc2009inputs/&#039;&#039;)&lt;br /&gt;
** &#039;&#039;&#039;sc2009inputs&#039;&#039;&#039; -- contains example simulation input files&lt;br /&gt;
&lt;br /&gt;
* Run the simulation with the example inputs (&#039;&#039;&#039;/Users/XXX/Desktop/visExample/sc2009inputs/&#039;&#039;&#039;)&lt;br /&gt;
** See pre-requisites above for details about the running and obtaining better time steps&lt;br /&gt;
** Wait for the simulation to complete&lt;br /&gt;
&lt;br /&gt;
* Store the WRFOUT files within a known directory (i.e. &#039;&#039;/Users/XXX/Desktop/visExample/sc2009outputs/&#039;&#039;)&lt;br /&gt;
** Setup an empty directory to save VTK files that will be generated from WRFOUT (i.e. &#039;&#039;/Users/XXX/Desktop/visExample/sc2009outputs/vtkFiles/&#039;&#039;)&lt;br /&gt;
&lt;br /&gt;
=== Converting Simulation Results ===&lt;br /&gt;
&lt;br /&gt;
[[File:Sc2009history.convert.png|600px]]&lt;br /&gt;
&lt;br /&gt;
* Run VisTrails and open the workflow from the wildfire database &lt;br /&gt;
** Open the &#039;&#039;&#039;fireDemoSC2009.mashup&#039;&#039;&#039; vistrails (see also &#039;&#039;&#039;Vistrails Setup&#039;&#039;&#039;)&lt;br /&gt;
** NOTE: If at this time or later during navigation of the history tree, a dialog pops up saying that vistrails need to enable some package, select yes to continue.&lt;br /&gt;
&lt;br /&gt;
* Begin by navigating the history tree (a.k.a. Click the &#039;&#039;&#039;History&#039;&#039;&#039; button on Vistrails toolbar)&lt;br /&gt;
* Execute the &#039;&#039;&#039;WRFOUT Conversion&#039;&#039;&#039; node (top node of a middle branch)&lt;br /&gt;
** NOTE: to &#039;execute&#039; a node, you must select the node so that it is highlighted and the corresponding workflow is shown in the smaller view window on the top right, then click on the &#039;execute&#039; button.&lt;br /&gt;
** Prompts for the &#039;&#039;WRF directory&#039;&#039; (&#039;&#039;/Users/XXX/Desktop/visExample/sc2009outputs/&#039;&#039;)&lt;br /&gt;
** Prompts for the &#039;&#039;VTK directory&#039;&#039; (&#039;&#039;/Users/XXX/Desktop/visExample/sc2009outputs/vtkFiles&#039;&#039;)&lt;br /&gt;
** NOTE: the prompts are asking for UNIX-style &#039;&#039;&#039;directory&#039;&#039;&#039; paths. That is, in this case you should type &#039;&#039;/Users/XXX/Desktop/visExample/sc2009outputs/vtkFiles&#039;&#039; and press OK.&lt;br /&gt;
* Wait for the conversion to complete (all modules turn green)&lt;br /&gt;
** NOTE: the version node &#039;&#039;&#039;WRFOUT Conversion (threaded)&#039;&#039;&#039; will also convert the files with identical prompt boxes, however the workflow is &#039;&#039;non-blocking&#039;&#039; meaning that all boxes will turn green immediately while the conversion continues in the background. &lt;br /&gt;
&lt;br /&gt;
=== Visualizing Simulation Results ===&lt;br /&gt;
&lt;br /&gt;
[[File:Sc2009history.visualize.png|600px]]&lt;br /&gt;
&lt;br /&gt;
* Execute the &#039;&#039;&#039;Fire Demo Visualization&#039;&#039;&#039; node (top of the left-most branch)&lt;br /&gt;
** Modify the workflow nodes associated with the vtk file reading&lt;br /&gt;
*** Direct these files to the appropriate vtk paths used earlier&lt;br /&gt;
*** NOTE: you may run the workflow at this point but it will fail without changes these boxes. Running the workflow in this way will highlight the nodes that require changes. They will be colored red to indicate points of failure in the pipeline execution.&lt;br /&gt;
&lt;br /&gt;
* The &#039;&#039;&#039;Fire Demo Visualization&#039;&#039;&#039; node (top of the left-most branch)&lt;br /&gt;
** This node is intended to prompt the user for the files rather than requiring intervention with the workflows.  Currently there is a bug within the workflow.&lt;br /&gt;
** Prompts for the &#039;&#039;VTK directory&#039;&#039; (&#039;&#039;/Users/XXX/Desktop/visExample/sc2009outputs/vtkFiles&#039;&#039;)&lt;br /&gt;
** Prompts for the &#039;&#039;Animation Delay&#039;&#039; (hit enter)&lt;br /&gt;
** View the spread sheet to interact with the visualization&lt;br /&gt;
&lt;br /&gt;
=== Interacting with the Visualization ===&lt;br /&gt;
&lt;br /&gt;
[[File:Sc2009results.png|600px]]&lt;br /&gt;
&lt;br /&gt;
* left click will rotate the visualization&lt;br /&gt;
* Shift-left click will pan the visualization&lt;br /&gt;
* Ctrl-left click will zoom the visualization&lt;br /&gt;
* &#039;&#039;&#039;l&#039;&#039;&#039; (lower case L) toggles the streamline widget&lt;br /&gt;
* left click on the sreamline widget moves it around&lt;br /&gt;
* left click on the play widgets (left to right)&lt;br /&gt;
** &#039;&#039;step back&#039;&#039; -- step backwards one frame in the simulation&lt;br /&gt;
** &#039;&#039;play back&#039;&#039; -- play the simulation backwards&lt;br /&gt;
** &#039;&#039;stop&#039;&#039; -- pauses the simulation animation&lt;br /&gt;
** &#039;&#039;play forward&#039;&#039; -- play the simulation forward&lt;br /&gt;
** &#039;&#039;step forward&#039;&#039; -- step forward one frame in the simulation&lt;br /&gt;
&lt;br /&gt;
== Cluster-based Simulation Execution ==&lt;br /&gt;
=== Setting up the Python server on a remote machine or cluster ===&lt;br /&gt;
* Build the simulation binaries on the cluster&lt;br /&gt;
* On the cluster setup a home directory for the server&lt;br /&gt;
* Within this directory create virtual links to:&lt;br /&gt;
** &#039;&#039;&#039;ideal.exe&#039;&#039;&#039; -- the ideal simulation setup executable&lt;br /&gt;
** &#039;&#039;&#039;real.exe&#039;&#039;&#039; -- the real simulation setup executable&lt;br /&gt;
** &#039;&#039;&#039;wrf.exe&#039;&#039;&#039; -- the simulation binary&lt;br /&gt;
* Within this directory copy over the server files from the previous tar ball&lt;br /&gt;
** &#039;&#039;&#039;demoNetwork/execServer.py&#039;&#039;&#039; -- to be used on the cluster to launch the server&lt;br /&gt;
** &#039;&#039;&#039;demoNetwork/fireServer.py&#039;&#039;&#039; -- the server code&lt;br /&gt;
** &#039;&#039;&#039;demoNetwork/fireMessages.py&#039;&#039;&#039; -- the message passing scheme and code&lt;br /&gt;
** &#039;&#039;&#039;demoNetwork/userRegistration.py&#039;&#039;&#039; -- user registration script&lt;br /&gt;
** &#039;&#039;&#039;demoNetwork/README.txt&#039;&#039;&#039; -- a readme file explaining server setup in more detail&lt;br /&gt;
* Execute the python script to start the server (requires python 2.5 or greater)&lt;br /&gt;
** On the command line within the directory: &#039;&#039;python execServer.py&#039;&#039;&lt;br /&gt;
* View and remember the listening port output by the server&lt;br /&gt;
&lt;br /&gt;
=== Registering New Users with the Server ===&lt;br /&gt;
* Log in to the cluster hosting the server&lt;br /&gt;
* Change to the server home directory on the cluster&lt;br /&gt;
* Execute the python script for user registration&lt;br /&gt;
** On the command line: &#039;&#039;python userRegistration.py &amp;lt;username&amp;gt; &amp;lt;password&amp;gt;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
=== Executing Remote Simulations ===&lt;br /&gt;
* Run VisTrails and open the workflow (&#039;&#039;&#039;fireDemoSC2009.vt&#039;&#039;&#039;)&lt;br /&gt;
&lt;br /&gt;
* The &#039;&#039;&#039;Execute Simulation (real)&#039;&#039;&#039; node (top of the middle branch): Execution of this workflow sends an execution request to the server.  The VisTrails client communicates with the remote server using the md5 checksum of the simulation input files as a unique identifier.  The server will execute the simulation IFF it is not already stored within the user database.  Consequently, repeated execution requests of the same simulations will be ignored, only the first being executed.&lt;br /&gt;
** Prompts for the &#039;&#039;Server Name&#039;&#039;&lt;br /&gt;
** Prompts for the &#039;&#039;Username&#039;&#039;&lt;br /&gt;
** Prompts for the &#039;&#039;Password&#039;&#039; (this is the &#039;&#039;user registered&#039;&#039; password)&lt;br /&gt;
** Prompts for the &#039;&#039;Local Simulation Directory&#039;&#039; (&#039;&#039;/Users/XXX/Desktop/visExample/sc2009inputs/&#039;&#039;)&lt;br /&gt;
** Prompts for the &#039;&#039;Server port&#039;&#039; (this is the number remembered during server setup)&lt;br /&gt;
&lt;br /&gt;
* The &#039;&#039;&#039;Update Simulation (real)&#039;&#039;&#039; node (upper middle of the middle branch): Execution of this workflow will query the server for the latest &#039;&#039;WRFOUT&#039;&#039; files produced by the simulation for the given input files.  If the md5 checksum of the &#039;&#039;WRFOUT&#039;&#039; does not match between the server and the client, then the file is sent from the cluster to your local machine.  No files are sent from the server to the client if the md5 checksums are the same or if the server does not have a simulation recorded for the given input files.&lt;br /&gt;
** Prompts for the &#039;&#039;Server Name&#039;&#039;&lt;br /&gt;
** Prompts for the &#039;&#039;Username&#039;&#039;&lt;br /&gt;
** Prompts for the &#039;&#039;Password&#039;&#039; (this is the &#039;&#039;user registered&#039;&#039; password)&lt;br /&gt;
** Prompts for the &#039;&#039;Local Simulation Directory&#039;&#039; (&#039;&#039;/Users/XXX/Desktop/visExample/sc2009inputs/&#039;&#039;)&lt;br /&gt;
** Prompts for the &#039;&#039;Server port&#039;&#039; (this is the number remembered during server setup)&lt;br /&gt;
&lt;br /&gt;
* The &#039;&#039;&#039;Stop Simulation (real)&#039;&#039;&#039; node (lower middle of the middle branch): Execution of this workflow will send a termination request of the simulation to the server.  For simulations that run indefinitely, or are running for a long time, the user can explicitly terminate their continued computation.  The workflow prompts the user for the local directory of the input files, used as a means of identifying the simulation to which the user is referring.&lt;br /&gt;
** Prompts for the &#039;&#039;Server Name&#039;&#039;&lt;br /&gt;
** Prompts for the &#039;&#039;Username&#039;&#039;&lt;br /&gt;
** Prompts for the &#039;&#039;Password&#039;&#039; (this is the &#039;&#039;user registered&#039;&#039; password)&lt;br /&gt;
** Prompts for the &#039;&#039;Local Simulation Directory&#039;&#039; (&#039;&#039;/Users/XXX/Desktop/visExample/sc2009inputs/&#039;&#039;)&lt;br /&gt;
** Prompts for the &#039;&#039;Server port&#039;&#039; (this is the number remembered during server setup)&lt;br /&gt;
&lt;br /&gt;
* The &#039;&#039;&#039;Delete Simulation (real)&#039;&#039;&#039; node (lower middle of the middle branch): Execution of this workflow will send a deletion request of the simulation to the server.  After a simulation is run, it will remain on the server until it is explicitly deleted by the user.  Consequently, if a user terminates a simulation, then wishes to re-run the simulation, they must first delete it.  Otherwise, subsequent re-runs of the simulation will not occur because the server views the simulation as already executed.&lt;br /&gt;
** Prompts for the &#039;&#039;Server Name&#039;&#039;&lt;br /&gt;
** Prompts for the &#039;&#039;Username&#039;&#039;&lt;br /&gt;
** Prompts for the &#039;&#039;Password&#039;&#039; (this is the &#039;&#039;user registered&#039;&#039; password)&lt;br /&gt;
** Prompts for the &#039;&#039;Local Simulation Directory&#039;&#039; (&#039;&#039;/Users/XXX/Desktop/visExample/sc2009inputs/&#039;&#039;)&lt;br /&gt;
** Prompts for the &#039;&#039;Server port&#039;&#039; (this is the number remembered during server setup)&lt;br /&gt;
&lt;br /&gt;
== Super Computing 2009 Demo ==&lt;br /&gt;
* A full simulation to visualization scenario:&lt;br /&gt;
** Execute the &#039;&#039;&#039;Execute Simulation (real)&#039;&#039;&#039; workflow&lt;br /&gt;
** Wait.&lt;br /&gt;
** Execute the &#039;&#039;&#039;Update Simulation (real)&#039;&#039;&#039; workflow&lt;br /&gt;
** Execute the &#039;&#039;&#039;WRFOUT Conversion&#039;&#039;&#039; workflow&lt;br /&gt;
** Execute the &#039;&#039;&#039;Fire Demo Visualization&#039;&#039;&#039; workflow&lt;br /&gt;
&lt;br /&gt;
== Works with ==&lt;br /&gt;
&lt;br /&gt;
* VisTrails 1.4.1 revision 1693 (2010-01-28 14:00) on Mac OS X 10.6.2&lt;br /&gt;
* WRF-Fire {{WRF-Fire-commit|d08007ddfcd8c59095caf42f7633048b9a541732|d08007ddfcd8c59095caf42f7633048b9a541732}} on Rocks 5.1 Centos 5.3 gfortran-gcc  4.1.2, openmpi_gcc-1.2.8&lt;br /&gt;
&lt;br /&gt;
[[Category:WRF-Fire]]&lt;br /&gt;
[[Category:Howtos|Visualize WRF-Fire output in VisTrails]]&lt;/div&gt;</summary>
		<author><name>Jdaniels</name></author>
	</entry>
	<entry>
		<id>https://wiki.openwfm.org/index.php?title=How_to_visualize_WRF-Fire_output_in_VisTrails&amp;diff=1095</id>
		<title>How to visualize WRF-Fire output in VisTrails</title>
		<link rel="alternate" type="text/html" href="https://wiki.openwfm.org/index.php?title=How_to_visualize_WRF-Fire_output_in_VisTrails&amp;diff=1095"/>
		<updated>2010-07-06T23:24:09Z</updated>

		<summary type="html">&lt;p&gt;Jdaniels: /* Simulation Visualization Setup */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Simulation Execution ==&lt;br /&gt;
&lt;br /&gt;
* [[How to run WRF-Fire|Download, install and run WRF-Fire]]. This can be done on a different computer; you will only need to move the output files.&lt;br /&gt;
** To get enough frames, before running WRF-Fire, change in &#039;&#039;&#039;namelist.input&#039;&#039;&#039; the line with &#039;&#039;&#039;history_interval&#039;&#039;&#039; to the desired frame interval in seconds, for example &#039;&#039;&#039;history_interval_s=1&#039;&#039;&#039;. &lt;br /&gt;
* Run WRF-Fire. The pictures below are from the &amp;quot;hill&amp;quot; ideal run in WRF-Fire.&lt;br /&gt;
* If the visualization computer is different from the computer where you run WRF-Fire, transfer the resulting &#039;&#039;&#039;wrfout&#039;&#039;&#039; files to the visualization computer&lt;br /&gt;
&lt;br /&gt;
== Simulation Visualization Setup ==&lt;br /&gt;
&lt;br /&gt;
=== Vistrails Setup ===&lt;br /&gt;
&lt;br /&gt;
* Download and install [http://www.vistrails.org VisTrails], and run it at least once.&lt;br /&gt;
* Get a copy of the &#039;&#039;&#039;wrf_vistrails&#039;&#039;&#039; repository, containing the necessary userpackages. &lt;br /&gt;
** This is currently restricted to developers who have a shell account at &#039;&#039;&#039;math.ucdenver.edu&#039;&#039;&#039;  &lt;br /&gt;
** NOTE: substitute &#039;&#039;&#039;user&#039;&#039;&#039; for your own username&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
git clone ssh://user@math.ucdenver.edu/home/grads/jbeezley/wrf_vistrails.git&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Place the VisTrails packages (the respective directories inside the &#039;&#039;userpackages&#039;&#039; directory) into &#039;&#039;&#039;/Users/XXX/.vistrails/userpackages/&#039;&#039;&#039;&lt;br /&gt;
** &#039;&#039;&#039;NumSciPy&#039;&#039;&#039; -- contains the wrapper modules for NumPy and SciPy functions&lt;br /&gt;
** &#039;&#039;&#039;WRFtoVTK&#039;&#039;&#039; -- contains the wrf to vtk file conversion modules&lt;br /&gt;
** &#039;&#039;&#039;extendDialog&#039;&#039;&#039; -- contains masked text dialogs for passwords&lt;br /&gt;
** &#039;&#039;&#039;namelist&#039;&#039;&#039; -- contains utilities for creating wrf namelist parameter files&lt;br /&gt;
** &#039;&#039;&#039;jbeezley_util&#039;&#039;&#039; -- contains something Jon did.&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
cd wrf_vistrails&lt;br /&gt;
cp -a WRFtoVTK NumSciPy extendDialog ~/.vistrails/userpackages&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Setup the Vistrails database and load vistrails workflows&lt;br /&gt;
** Start Vistrails then go to &#039;&#039;&#039;File-&amp;gt;Import-&amp;gt;From DB...&#039;&#039;&#039; (opens a dialog)&lt;br /&gt;
** If the wildfire database is not shown (first time use)&lt;br /&gt;
*** Click on the plus button to add a new database&lt;br /&gt;
*** Fill in the fields:&lt;br /&gt;
**** Save as Connection Name: &#039;&#039;&#039;wildfire&#039;&#039;&#039;&lt;br /&gt;
**** Server Hostname: &#039;&#039;&#039;vistrails.sci.utah.edu&#039;&#039;&#039;&lt;br /&gt;
**** Port: &#039;&#039;&#039;3306&#039;&#039;&#039;&lt;br /&gt;
**** Username: &#039;&#039;&#039;user&#039;&#039;&#039; (Note: substitute &#039;&#039;&#039;user&#039;&#039;&#039; with your own username)&lt;br /&gt;
**** Password: &#039;&#039;&#039;****&#039;&#039;&#039; (Note: substitute &#039;&#039;&#039;****&#039;&#039;&#039; with your own password)&lt;br /&gt;
**** Database: &#039;&#039;&#039;wildfire&#039;&#039;&#039;&lt;br /&gt;
*** Click test (this should open a dialog reporting success)&lt;br /&gt;
*** Click update to obtain the list of available vistrails within the database&lt;br /&gt;
*** Select the &#039;&#039;&#039;fireDemoSC2009.mashup&#039;&#039;&#039; and click open.&lt;br /&gt;
*** If popups appear enable packages by clicking &#039;&#039;&#039;YES&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
=== Simulation Execution ===&lt;br /&gt;
&lt;br /&gt;
* Move the simulation inputs to a known location (i.e. &#039;&#039;/Users/XXX/Desktop/visExample/sc2009inputs/&#039;&#039;)&lt;br /&gt;
** &#039;&#039;&#039;sc2009inputs&#039;&#039;&#039; -- contains example simulation input files&lt;br /&gt;
&lt;br /&gt;
* Run the simulation with the example inputs (&#039;&#039;&#039;/Users/XXX/Desktop/visExample/sc2009inputs/&#039;&#039;&#039;)&lt;br /&gt;
** See pre-requisites above for details about the running and obtaining better time steps&lt;br /&gt;
** Wait for the simulation to complete&lt;br /&gt;
&lt;br /&gt;
* Store the WRFOUT files within a known directory (i.e. &#039;&#039;/Users/XXX/Desktop/visExample/sc2009outputs/&#039;&#039;)&lt;br /&gt;
** Setup an empty directory to save VTK files that will be generated from WRFOUT (i.e. &#039;&#039;/Users/XXX/Desktop/visExample/sc2009outputs/vtkFiles/&#039;&#039;)&lt;br /&gt;
&lt;br /&gt;
=== Converting Simulation Results ===&lt;br /&gt;
&lt;br /&gt;
[[File:Sc2009history.convert.png|600px]]&lt;br /&gt;
&lt;br /&gt;
* Run VisTrails and open the workflow from the wildfire database &lt;br /&gt;
** Open the &#039;&#039;&#039;fireDemoSC2009.mashup&#039;&#039;&#039; vistrails (see also &#039;&#039;&#039;Vistrails Setup&#039;&#039;&#039;)&lt;br /&gt;
** NOTE: If at this time or later during navigation of the history tree, a dialog pops up saying that vistrails need to enable some package, select yes to continue.&lt;br /&gt;
&lt;br /&gt;
* Begin by navigating the history tree (a.k.a. Click the &#039;&#039;&#039;History&#039;&#039;&#039; button on Vistrails toolbar)&lt;br /&gt;
* Execute the &#039;&#039;&#039;WRFOUT Conversion&#039;&#039;&#039; node (top node of a middle branch)&lt;br /&gt;
** NOTE: to &#039;execute&#039; a node, you must select the node so that it is highlighted and the corresponding workflow is shown in the smaller view window on the top right, then click on the &#039;execute&#039; button.&lt;br /&gt;
** Prompts for the &#039;&#039;WRF directory&#039;&#039; (&#039;&#039;/Users/XXX/Desktop/visExample/sc2009outputs/&#039;&#039;)&lt;br /&gt;
** Prompts for the &#039;&#039;VTK directory&#039;&#039; (&#039;&#039;/Users/XXX/Desktop/visExample/sc2009outputs/vtkFiles&#039;&#039;)&lt;br /&gt;
** NOTE: the prompts are asking for UNIX-style &#039;&#039;&#039;directory&#039;&#039;&#039; paths. That is, in this case you should type &#039;&#039;/Users/XXX/Desktop/visExample/sc2009outputs/vtkFiles&#039;&#039; and press OK.&lt;br /&gt;
* Wait for the conversion to complete (all modules turn green)&lt;br /&gt;
** NOTE: the version node &#039;&#039;&#039;WRFOUT Conversion (threaded)&#039;&#039;&#039; will also convert the files with identical prompt boxes, however the workflow is &#039;&#039;non-blocking&#039;&#039; meaning that all boxes will turn green immediately while the conversion continues in the background. &lt;br /&gt;
&lt;br /&gt;
=== Visualizing Simulation Results ===&lt;br /&gt;
&lt;br /&gt;
[[File:Sc2009history.visualize.png|600px]]&lt;br /&gt;
&lt;br /&gt;
* Execute the &#039;&#039;&#039;Fire Demo Visualization&#039;&#039;&#039; node (top of the left-most branch)&lt;br /&gt;
** Modify the workflow nodes associated with the vtk file reading&lt;br /&gt;
*** Direct these files to the appropriate vtk paths used earlier&lt;br /&gt;
*** NOTE: you may run the workflow at this point but it will fail without changes these boxes. Running the workflow in this way will highlight the nodes that require changes. They will be colored red to indicate points of failure in the pipeline execution.&lt;br /&gt;
&lt;br /&gt;
* The &#039;&#039;&#039;Fire Demo Visualization&#039;&#039;&#039; node (top of the left-most branch)&lt;br /&gt;
** This node is intended to prompt the user for the files rather than requiring intervention with the workflows.  Currently there is a bug within the workflow.&lt;br /&gt;
** Prompts for the &#039;&#039;VTK directory&#039;&#039; (&#039;&#039;/Users/XXX/Desktop/visExample/sc2009outputs/vtkFiles&#039;&#039;)&lt;br /&gt;
** Prompts for the &#039;&#039;Animation Delay&#039;&#039; (hit enter)&lt;br /&gt;
** View the spread sheet to interact with the visualization&lt;br /&gt;
&lt;br /&gt;
=== Interacting with the Visualization ===&lt;br /&gt;
&lt;br /&gt;
[[File:Sc2009results.png|600px]]&lt;br /&gt;
&lt;br /&gt;
* left click will rotate the visualization&lt;br /&gt;
* Shift-left click will pan the visualization&lt;br /&gt;
* Ctrl-left click will zoom the visualization&lt;br /&gt;
* &#039;&#039;&#039;l&#039;&#039;&#039; (lower case L) toggles the streamline widget&lt;br /&gt;
* left click on the sreamline widget moves it around&lt;br /&gt;
* left click on the play widgets (left to right)&lt;br /&gt;
** &#039;&#039;step back&#039;&#039; -- step backwards one frame in the simulation&lt;br /&gt;
** &#039;&#039;play back&#039;&#039; -- play the simulation backwards&lt;br /&gt;
** &#039;&#039;stop&#039;&#039; -- pauses the simulation animation&lt;br /&gt;
** &#039;&#039;play forward&#039;&#039; -- play the simulation forward&lt;br /&gt;
** &#039;&#039;step forward&#039;&#039; -- step forward one frame in the simulation&lt;br /&gt;
&lt;br /&gt;
== Cluster-based Simulation Execution ==&lt;br /&gt;
=== Setting up the Python server on a remote machine or cluster ===&lt;br /&gt;
* Build the simulation binaries on the cluster&lt;br /&gt;
* On the cluster setup a home directory for the server&lt;br /&gt;
* Within this directory create virtual links to:&lt;br /&gt;
** &#039;&#039;&#039;ideal.exe&#039;&#039;&#039; -- the ideal simulation setup executable&lt;br /&gt;
** &#039;&#039;&#039;real.exe&#039;&#039;&#039; -- the real simulation setup executable&lt;br /&gt;
** &#039;&#039;&#039;wrf.exe&#039;&#039;&#039; -- the simulation binary&lt;br /&gt;
* Within this directory copy over the server files from the previous tar ball&lt;br /&gt;
** &#039;&#039;&#039;demoNetwork/execServer.py&#039;&#039;&#039; -- to be used on the cluster to launch the server&lt;br /&gt;
** &#039;&#039;&#039;demoNetwork/fireServer.py&#039;&#039;&#039; -- the server code&lt;br /&gt;
** &#039;&#039;&#039;demoNetwork/fireMessages.py&#039;&#039;&#039; -- the message passing scheme and code&lt;br /&gt;
** &#039;&#039;&#039;demoNetwork/userRegistration.py&#039;&#039;&#039; -- user registration script&lt;br /&gt;
** &#039;&#039;&#039;demoNetwork/README.txt&#039;&#039;&#039; -- a readme file explaining server setup in more detail&lt;br /&gt;
* Execute the python script to start the server (requires python 2.5 or greater)&lt;br /&gt;
** On the command line within the directory: &#039;&#039;python execServer.py&#039;&#039;&lt;br /&gt;
* View and remember the listening port output by the server&lt;br /&gt;
&lt;br /&gt;
=== Registering New Users with the Server ===&lt;br /&gt;
* Log in to the cluster hosting the server&lt;br /&gt;
* Change to the server home directory on the cluster&lt;br /&gt;
* Execute the python script for user registration&lt;br /&gt;
** On the command line: &#039;&#039;python userRegistration.py &amp;lt;username&amp;gt; &amp;lt;password&amp;gt;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
=== Executing Remote Simulations ===&lt;br /&gt;
* Run VisTrails and open the workflow (&#039;&#039;&#039;fireDemoSC2009.vt&#039;&#039;&#039;)&lt;br /&gt;
&lt;br /&gt;
* The &#039;&#039;&#039;Execute Simulation (real)&#039;&#039;&#039; node (top of the middle branch): Execution of this workflow sends an execution request to the server.  The VisTrails client communicates with the remote server using the md5 checksum of the simulation input files as a unique identifier.  The server will execute the simulation IFF it is not already stored within the user database.  Consequently, repeated execution requests of the same simulations will be ignored, only the first being executed.&lt;br /&gt;
** Prompts for the &#039;&#039;Server Name&#039;&#039;&lt;br /&gt;
** Prompts for the &#039;&#039;Username&#039;&#039;&lt;br /&gt;
** Prompts for the &#039;&#039;Password&#039;&#039; (this is the &#039;&#039;user registered&#039;&#039; password)&lt;br /&gt;
** Prompts for the &#039;&#039;Local Simulation Directory&#039;&#039; (&#039;&#039;/Users/XXX/Desktop/visExample/sc2009inputs/&#039;&#039;)&lt;br /&gt;
** Prompts for the &#039;&#039;Server port&#039;&#039; (this is the number remembered during server setup)&lt;br /&gt;
&lt;br /&gt;
* The &#039;&#039;&#039;Update Simulation (real)&#039;&#039;&#039; node (upper middle of the middle branch): Execution of this workflow will query the server for the latest &#039;&#039;WRFOUT&#039;&#039; files produced by the simulation for the given input files.  If the md5 checksum of the &#039;&#039;WRFOUT&#039;&#039; does not match between the server and the client, then the file is sent from the cluster to your local machine.  No files are sent from the server to the client if the md5 checksums are the same or if the server does not have a simulation recorded for the given input files.&lt;br /&gt;
** Prompts for the &#039;&#039;Server Name&#039;&#039;&lt;br /&gt;
** Prompts for the &#039;&#039;Username&#039;&#039;&lt;br /&gt;
** Prompts for the &#039;&#039;Password&#039;&#039; (this is the &#039;&#039;user registered&#039;&#039; password)&lt;br /&gt;
** Prompts for the &#039;&#039;Local Simulation Directory&#039;&#039; (&#039;&#039;/Users/XXX/Desktop/visExample/sc2009inputs/&#039;&#039;)&lt;br /&gt;
** Prompts for the &#039;&#039;Server port&#039;&#039; (this is the number remembered during server setup)&lt;br /&gt;
&lt;br /&gt;
* The &#039;&#039;&#039;Stop Simulation (real)&#039;&#039;&#039; node (lower middle of the middle branch): Execution of this workflow will send a termination request of the simulation to the server.  For simulations that run indefinitely, or are running for a long time, the user can explicitly terminate their continued computation.  The workflow prompts the user for the local directory of the input files, used as a means of identifying the simulation to which the user is referring.&lt;br /&gt;
** Prompts for the &#039;&#039;Server Name&#039;&#039;&lt;br /&gt;
** Prompts for the &#039;&#039;Username&#039;&#039;&lt;br /&gt;
** Prompts for the &#039;&#039;Password&#039;&#039; (this is the &#039;&#039;user registered&#039;&#039; password)&lt;br /&gt;
** Prompts for the &#039;&#039;Local Simulation Directory&#039;&#039; (&#039;&#039;/Users/XXX/Desktop/visExample/sc2009inputs/&#039;&#039;)&lt;br /&gt;
** Prompts for the &#039;&#039;Server port&#039;&#039; (this is the number remembered during server setup)&lt;br /&gt;
&lt;br /&gt;
* The &#039;&#039;&#039;Delete Simulation (real)&#039;&#039;&#039; node (lower middle of the middle branch): Execution of this workflow will send a deletion request of the simulation to the server.  After a simulation is run, it will remain on the server until it is explicitly deleted by the user.  Consequently, if a user terminates a simulation, then wishes to re-run the simulation, they must first delete it.  Otherwise, subsequent re-runs of the simulation will not occur because the server views the simulation as already executed.&lt;br /&gt;
** Prompts for the &#039;&#039;Server Name&#039;&#039;&lt;br /&gt;
** Prompts for the &#039;&#039;Username&#039;&#039;&lt;br /&gt;
** Prompts for the &#039;&#039;Password&#039;&#039; (this is the &#039;&#039;user registered&#039;&#039; password)&lt;br /&gt;
** Prompts for the &#039;&#039;Local Simulation Directory&#039;&#039; (&#039;&#039;/Users/XXX/Desktop/visExample/sc2009inputs/&#039;&#039;)&lt;br /&gt;
** Prompts for the &#039;&#039;Server port&#039;&#039; (this is the number remembered during server setup)&lt;br /&gt;
&lt;br /&gt;
== Super Computing 2009 Demo ==&lt;br /&gt;
* A full simulation to visualization scenario:&lt;br /&gt;
** Execute the &#039;&#039;&#039;Execute Simulation (real)&#039;&#039;&#039; workflow&lt;br /&gt;
** Wait.&lt;br /&gt;
** Execute the &#039;&#039;&#039;Update Simulation (real)&#039;&#039;&#039; workflow&lt;br /&gt;
** Execute the &#039;&#039;&#039;WRFOUT Conversion&#039;&#039;&#039; workflow&lt;br /&gt;
** Execute the &#039;&#039;&#039;Fire Demo Visualization&#039;&#039;&#039; workflow&lt;br /&gt;
&lt;br /&gt;
== Works with ==&lt;br /&gt;
&lt;br /&gt;
* VisTrails 1.4.1 revision 1693 (2010-01-28 14:00) on Mac OS X 10.6.2&lt;br /&gt;
* WRF-Fire {{WRF-Fire-commit|d08007ddfcd8c59095caf42f7633048b9a541732|d08007ddfcd8c59095caf42f7633048b9a541732}} on Rocks 5.1 Centos 5.3 gfortran-gcc  4.1.2, openmpi_gcc-1.2.8&lt;br /&gt;
&lt;br /&gt;
[[Category:WRF-Fire]]&lt;br /&gt;
[[Category:Howtos|Visualize WRF-Fire output in VisTrails]]&lt;/div&gt;</summary>
		<author><name>Jdaniels</name></author>
	</entry>
	<entry>
		<id>https://wiki.openwfm.org/index.php?title=How_to_visualize_WRF-Fire_output_in_VisTrails&amp;diff=1080</id>
		<title>How to visualize WRF-Fire output in VisTrails</title>
		<link rel="alternate" type="text/html" href="https://wiki.openwfm.org/index.php?title=How_to_visualize_WRF-Fire_output_in_VisTrails&amp;diff=1080"/>
		<updated>2010-06-28T22:28:20Z</updated>

		<summary type="html">&lt;p&gt;Jdaniels: /* Visualizing Simulation Results */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Simulation Execution ==&lt;br /&gt;
&lt;br /&gt;
* [[How to run WRF-Fire|Download, install and run WRF-Fire]]. This can be done on a different computer; you will only need to move the output files.&lt;br /&gt;
** To get enough frames, before running WRF-Fire, change in &#039;&#039;&#039;namelist.input&#039;&#039;&#039; the line with &#039;&#039;&#039;history_interval&#039;&#039;&#039; to the desired frame interval in seconds, for example &#039;&#039;&#039;history_interval_s=1&#039;&#039;&#039;. &lt;br /&gt;
* Run WRF-Fire. The pictures below are from the &amp;quot;hill&amp;quot; ideal run in WRF-Fire.&lt;br /&gt;
* If the visualization computer is different from the computer where you run WRF-Fire, transfer the resulting &#039;&#039;&#039;wrfout&#039;&#039;&#039; files to the visualization computer&lt;br /&gt;
&lt;br /&gt;
== Simulation Visualization Setup ==&lt;br /&gt;
* Download and install [http://www.vistrails.org VisTrails], and run it at least once.&lt;br /&gt;
* Get a copy of the &#039;&#039;&#039;wrf_vistrails&#039;&#039;&#039; repository. &lt;br /&gt;
** This is currently restricted to developers who have a shell account at &#039;&#039;&#039;math.ucdenver.edu&#039;&#039;&#039;  &lt;br /&gt;
** NOTE: substitute &#039;&#039;&#039;user&#039;&#039;&#039; for your own username&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
git clone ssh://user@math.ucdenver.edu/home/grads/jbeezley/wrf_vistrails.git&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Place the VisTrails packages into &#039;&#039;&#039;/Users/XXX/.vistrails/userpackages/&#039;&#039;&#039;&lt;br /&gt;
** &#039;&#039;&#039;NumSciPy&#039;&#039;&#039; -- contains the wrapper modules for NumPy and SciPy functions&lt;br /&gt;
** &#039;&#039;&#039;WRFtoVTK&#039;&#039;&#039; -- contains the wrf to vtk file conversion modules&lt;br /&gt;
** &#039;&#039;&#039;extendDialog&#039;&#039;&#039; -- contains masked text dialogs for passwords&lt;br /&gt;
&lt;br /&gt;
* Move the VisTrails workflow to a known location (i.e. &#039;&#039;/Users/XXX/Desktop/visExample/&#039;&#039;)&lt;br /&gt;
** &#039;&#039;&#039;fireDemoSC2009.new.vt&#039;&#039;&#039; -- the VisTrails workflow for conversion and visualization&lt;br /&gt;
&lt;br /&gt;
* Move the simulation inputs to a known location (i.e. &#039;&#039;/Users/XXX/Desktop/visExample/sc2009inputs/&#039;&#039;)&lt;br /&gt;
** &#039;&#039;&#039;sc2009inputs&#039;&#039;&#039; -- contains example simulation input files&lt;br /&gt;
&lt;br /&gt;
* Run the simulation with the example inputs (&#039;&#039;&#039;/Users/XXX/Desktop/visExample/sc2009inputs/&#039;&#039;&#039;)&lt;br /&gt;
** See pre-requisites above for details about the running and obtaining better time steps&lt;br /&gt;
** Wait for the simulation to complete&lt;br /&gt;
&lt;br /&gt;
* Store the WRFOUT within a known directory (i.e. &#039;&#039;/Users/XXX/Desktop/visExample/sc2009outputs/&#039;&#039;)&lt;br /&gt;
** Setup a directory to save VTK files that will be generated from WRFOUT (i.e. &#039;&#039;/Users/XXX/Desktop/visExample/sc2009outputs/vtkFiles/&#039;&#039;)&lt;br /&gt;
&lt;br /&gt;
=== Converting Simulation Results ===&lt;br /&gt;
&lt;br /&gt;
* Run VisTrails and open the workflow (&#039;&#039;&#039;fireDemoSC2009.vt&#039;&#039;&#039;)&lt;br /&gt;
** Ignore the initial error concerning missing pipeline initialization failure&lt;br /&gt;
** NOTE: until Jon includes his userpackages within the git repository we will be unable to avoid this error.  However, because these pipelines are unrelated to the simulation execution, conversion and visualization we may ignore them.&lt;br /&gt;
&lt;br /&gt;
* Begin by navigating the history tree&lt;br /&gt;
* Execute the &#039;&#039;&#039;WRFOUT Conversion&#039;&#039;&#039; node (top of the right-center branch)&lt;br /&gt;
** NOTE: to &#039;execute&#039; a node, you must select the node so that it is highlighted and the corresponding workflow is shown in the smaller view window, then click on the &#039;execute&#039; button.&lt;br /&gt;
** Prompts for the &#039;&#039;WRF directory&#039;&#039; (&#039;&#039;/Users/XXX/Desktop/visExample/sc2009outputs/&#039;&#039;)&lt;br /&gt;
** Prompts for the &#039;&#039;VTK directory&#039;&#039; (&#039;&#039;/Users/XXX/Desktop/visExample/sc2009outputs/vtkFiles&#039;&#039;)&lt;br /&gt;
** NOTE: the prompts are asking for &#039;&#039;&#039;directory&#039;&#039;&#039; paths.&lt;br /&gt;
* Wait for the conversion to complete (all modules turn green)&lt;br /&gt;
&lt;br /&gt;
[[File:Sc2009history.png|600px]]&lt;br /&gt;
&lt;br /&gt;
=== Visualizing Simulation Results ===&lt;br /&gt;
&lt;br /&gt;
* Execute the &#039;&#039;&#039;Fire Demo Visualization Mashup&#039;&#039;&#039; node (bottom of the left-most branch)&lt;br /&gt;
** Modify the workflow nodes associated with the vtk file reading&lt;br /&gt;
*** Direct these files to the appropriate vtk paths used earlier&lt;br /&gt;
*** NOTE: you may run the workflow at this point but it will fail without changes these boxes. Running the workflow in this way will highlight the nodes that require changes. They will be colored red to indicate points of failure in the pipeline execution.&lt;br /&gt;
&lt;br /&gt;
* The &#039;&#039;&#039;Fire Demo Visualization&#039;&#039;&#039; node (top of the left-most branch)&lt;br /&gt;
** This node is intended to prompt the user for the files rather than requiring intervention with the workflows.  Currently there is a bug within the workflow.&lt;br /&gt;
** Prompts for the &#039;&#039;VTK directory&#039;&#039; (&#039;&#039;/Users/XXX/Desktop/visExample/sc2009outputs/vtkFiles&#039;&#039;)&lt;br /&gt;
** Prompts for the &#039;&#039;Animation Delay&#039;&#039; (hit enter)&lt;br /&gt;
** View the spread sheet to interact with the visualization&lt;br /&gt;
&lt;br /&gt;
=== Interacting with the Visualization ===&lt;br /&gt;
[[File:Sc2009results.png|600px]]&lt;br /&gt;
* left click will rotate the visualization&lt;br /&gt;
* Shift-left click will pan the visualization&lt;br /&gt;
* Ctrl-left click will zoom the visualization&lt;br /&gt;
* &#039;&#039;&#039;l&#039;&#039;&#039; (lower case L) toggles the streamline widget&lt;br /&gt;
* left click on the sreamline widget moves it around&lt;br /&gt;
* left click on the play widgets (left to right)&lt;br /&gt;
** &#039;&#039;step back&#039;&#039; -- step backwards one frame in the simulation&lt;br /&gt;
** &#039;&#039;play back&#039;&#039; -- play the simulation backwards&lt;br /&gt;
** &#039;&#039;stop&#039;&#039; -- pauses the simulation animation&lt;br /&gt;
** &#039;&#039;play forward&#039;&#039; -- play the simulation forward&lt;br /&gt;
** &#039;&#039;step forward&#039;&#039; -- step forward one frame in the simulation&lt;br /&gt;
&lt;br /&gt;
== Cluster-based Simulation Execution ==&lt;br /&gt;
=== Setting up the Python server on a remote machine or cluster ===&lt;br /&gt;
* Build the simulation binaries on the cluster&lt;br /&gt;
* On the cluster setup a home directory for the server&lt;br /&gt;
* Within this directory create virtual links to:&lt;br /&gt;
** &#039;&#039;&#039;ideal.exe&#039;&#039;&#039; -- the ideal simulation setup executable&lt;br /&gt;
** &#039;&#039;&#039;real.exe&#039;&#039;&#039; -- the real simulation setup executable&lt;br /&gt;
** &#039;&#039;&#039;wrf.exe&#039;&#039;&#039; -- the simulation binary&lt;br /&gt;
* Within this directory copy over the server files from the previous tar ball&lt;br /&gt;
** &#039;&#039;&#039;demoNetwork/execServer.py&#039;&#039;&#039; -- to be used on the cluster to launch the server&lt;br /&gt;
** &#039;&#039;&#039;demoNetwork/fireServer.py&#039;&#039;&#039; -- the server code&lt;br /&gt;
** &#039;&#039;&#039;demoNetwork/fireMessages.py&#039;&#039;&#039; -- the message passing scheme and code&lt;br /&gt;
** &#039;&#039;&#039;demoNetwork/userRegistration.py&#039;&#039;&#039; -- user registration script&lt;br /&gt;
** &#039;&#039;&#039;demoNetwork/README.txt&#039;&#039;&#039; -- a readme file explaining server setup in more detail&lt;br /&gt;
* Execute the python script to start the server (requires python 2.5 or greater)&lt;br /&gt;
** On the command line within the directory: &#039;&#039;python execServer.py&#039;&#039;&lt;br /&gt;
* View and remember the listening port output by the server&lt;br /&gt;
&lt;br /&gt;
=== Registering New Users with the Server ===&lt;br /&gt;
* Log in to the cluster hosting the server&lt;br /&gt;
* Change to the server home directory on the cluster&lt;br /&gt;
* Execute the python script for user registration&lt;br /&gt;
** On the command line: &#039;&#039;python userRegistration.py &amp;lt;username&amp;gt; &amp;lt;password&amp;gt;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
=== Executing Remote Simulations ===&lt;br /&gt;
* Run VisTrails and open the workflow (&#039;&#039;&#039;fireDemoSC2009.vt&#039;&#039;&#039;)&lt;br /&gt;
&lt;br /&gt;
* The &#039;&#039;&#039;Execute Simulation (real)&#039;&#039;&#039; node (top of the middle branch): Execution of this workflow sends an execution request to the server.  The VisTrails client communicates with the remote server using the md5 checksum of the simulation input files as a unique identifier.  The server will execute the simulation IFF it is not already stored within the user database.  Consequently, repeated execution requests of the same simulations will be ignored, only the first being executed.&lt;br /&gt;
** Prompts for the &#039;&#039;Server Name&#039;&#039;&lt;br /&gt;
** Prompts for the &#039;&#039;Username&#039;&#039;&lt;br /&gt;
** Prompts for the &#039;&#039;Password&#039;&#039; (this is the &#039;&#039;user registered&#039;&#039; password)&lt;br /&gt;
** Prompts for the &#039;&#039;Local Simulation Directory&#039;&#039; (&#039;&#039;/Users/XXX/Desktop/visExample/sc2009inputs/&#039;&#039;)&lt;br /&gt;
** Prompts for the &#039;&#039;Server port&#039;&#039; (this is the number remembered during server setup)&lt;br /&gt;
&lt;br /&gt;
* The &#039;&#039;&#039;Update Simulation (real)&#039;&#039;&#039; node (upper middle of the middle branch): Execution of this workflow will query the server for the latest &#039;&#039;WRFOUT&#039;&#039; files produced by the simulation for the given input files.  If the md5 checksum of the &#039;&#039;WRFOUT&#039;&#039; does not match between the server and the client, then the file is sent from the cluster to your local machine.  No files are sent from the server to the client if the md5 checksums are the same or if the server does not have a simulation recorded for the given input files.&lt;br /&gt;
** Prompts for the &#039;&#039;Server Name&#039;&#039;&lt;br /&gt;
** Prompts for the &#039;&#039;Username&#039;&#039;&lt;br /&gt;
** Prompts for the &#039;&#039;Password&#039;&#039; (this is the &#039;&#039;user registered&#039;&#039; password)&lt;br /&gt;
** Prompts for the &#039;&#039;Local Simulation Directory&#039;&#039; (&#039;&#039;/Users/XXX/Desktop/visExample/sc2009inputs/&#039;&#039;)&lt;br /&gt;
** Prompts for the &#039;&#039;Server port&#039;&#039; (this is the number remembered during server setup)&lt;br /&gt;
&lt;br /&gt;
* The &#039;&#039;&#039;Stop Simulation (real)&#039;&#039;&#039; node (lower middle of the middle branch): Execution of this workflow will send a termination request of the simulation to the server.  For simulations that run indefinitely, or are running for a long time, the user can explicitly terminate their continued computation.  The workflow prompts the user for the local directory of the input files, used as a means of identifying the simulation to which the user is referring.&lt;br /&gt;
** Prompts for the &#039;&#039;Server Name&#039;&#039;&lt;br /&gt;
** Prompts for the &#039;&#039;Username&#039;&#039;&lt;br /&gt;
** Prompts for the &#039;&#039;Password&#039;&#039; (this is the &#039;&#039;user registered&#039;&#039; password)&lt;br /&gt;
** Prompts for the &#039;&#039;Local Simulation Directory&#039;&#039; (&#039;&#039;/Users/XXX/Desktop/visExample/sc2009inputs/&#039;&#039;)&lt;br /&gt;
** Prompts for the &#039;&#039;Server port&#039;&#039; (this is the number remembered during server setup)&lt;br /&gt;
&lt;br /&gt;
* The &#039;&#039;&#039;Delete Simulation (real)&#039;&#039;&#039; node (lower middle of the middle branch): Execution of this workflow will send a deletion request of the simulation to the server.  After a simulation is run, it will remain on the server until it is explicitly deleted by the user.  Consequently, if a user terminates a simulation, then wishes to re-run the simulation, they must first delete it.  Otherwise, subsequent re-runs of the simulation will not occur because the server views the simulation as already executed.&lt;br /&gt;
** Prompts for the &#039;&#039;Server Name&#039;&#039;&lt;br /&gt;
** Prompts for the &#039;&#039;Username&#039;&#039;&lt;br /&gt;
** Prompts for the &#039;&#039;Password&#039;&#039; (this is the &#039;&#039;user registered&#039;&#039; password)&lt;br /&gt;
** Prompts for the &#039;&#039;Local Simulation Directory&#039;&#039; (&#039;&#039;/Users/XXX/Desktop/visExample/sc2009inputs/&#039;&#039;)&lt;br /&gt;
** Prompts for the &#039;&#039;Server port&#039;&#039; (this is the number remembered during server setup)&lt;br /&gt;
&lt;br /&gt;
== Super Computing 2009 Demo ==&lt;br /&gt;
* A full simulation to visualization scenario:&lt;br /&gt;
** Execute the &#039;&#039;&#039;Execute Simulation (real)&#039;&#039;&#039; workflow&lt;br /&gt;
** Wait.&lt;br /&gt;
** Execute the &#039;&#039;&#039;Update Simulation (real)&#039;&#039;&#039; workflow&lt;br /&gt;
** Execute the &#039;&#039;&#039;WRFOUT Conversion&#039;&#039;&#039; workflow&lt;br /&gt;
** Execute the &#039;&#039;&#039;Fire Demo Visualization&#039;&#039;&#039; workflow&lt;br /&gt;
&lt;br /&gt;
== Works with ==&lt;br /&gt;
&lt;br /&gt;
* VisTrails 1.4.1 revision 1693 (2010-01-28 14:00) on Mac OS X 10.6.2&lt;br /&gt;
* WRF-Fire {{WRF-Fire-commit|d08007ddfcd8c59095caf42f7633048b9a541732|d08007ddfcd8c59095caf42f7633048b9a541732}} on Rocks 5.1 Centos 5.3 gfortran-gcc  4.1.2, openmpi_gcc-1.2.8&lt;br /&gt;
&lt;br /&gt;
[[Category:WRF-Fire]]&lt;br /&gt;
[[Category:Howtos|Visualize WRF-Fire output in VisTrails]]&lt;/div&gt;</summary>
		<author><name>Jdaniels</name></author>
	</entry>
	<entry>
		<id>https://wiki.openwfm.org/index.php?title=How_to_visualize_WRF-Fire_output_in_VisTrails&amp;diff=1079</id>
		<title>How to visualize WRF-Fire output in VisTrails</title>
		<link rel="alternate" type="text/html" href="https://wiki.openwfm.org/index.php?title=How_to_visualize_WRF-Fire_output_in_VisTrails&amp;diff=1079"/>
		<updated>2010-06-28T22:27:53Z</updated>

		<summary type="html">&lt;p&gt;Jdaniels: /* Visualizing Simulation Results */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Simulation Execution ==&lt;br /&gt;
&lt;br /&gt;
* [[How to run WRF-Fire|Download, install and run WRF-Fire]]. This can be done on a different computer; you will only need to move the output files.&lt;br /&gt;
** To get enough frames, before running WRF-Fire, change in &#039;&#039;&#039;namelist.input&#039;&#039;&#039; the line with &#039;&#039;&#039;history_interval&#039;&#039;&#039; to the desired frame interval in seconds, for example &#039;&#039;&#039;history_interval_s=1&#039;&#039;&#039;. &lt;br /&gt;
* Run WRF-Fire. The pictures below are from the &amp;quot;hill&amp;quot; ideal run in WRF-Fire.&lt;br /&gt;
* If the visualization computer is different from the computer where you run WRF-Fire, transfer the resulting &#039;&#039;&#039;wrfout&#039;&#039;&#039; files to the visualization computer&lt;br /&gt;
&lt;br /&gt;
== Simulation Visualization Setup ==&lt;br /&gt;
* Download and install [http://www.vistrails.org VisTrails], and run it at least once.&lt;br /&gt;
* Get a copy of the &#039;&#039;&#039;wrf_vistrails&#039;&#039;&#039; repository. &lt;br /&gt;
** This is currently restricted to developers who have a shell account at &#039;&#039;&#039;math.ucdenver.edu&#039;&#039;&#039;  &lt;br /&gt;
** NOTE: substitute &#039;&#039;&#039;user&#039;&#039;&#039; for your own username&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
git clone ssh://user@math.ucdenver.edu/home/grads/jbeezley/wrf_vistrails.git&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Place the VisTrails packages into &#039;&#039;&#039;/Users/XXX/.vistrails/userpackages/&#039;&#039;&#039;&lt;br /&gt;
** &#039;&#039;&#039;NumSciPy&#039;&#039;&#039; -- contains the wrapper modules for NumPy and SciPy functions&lt;br /&gt;
** &#039;&#039;&#039;WRFtoVTK&#039;&#039;&#039; -- contains the wrf to vtk file conversion modules&lt;br /&gt;
** &#039;&#039;&#039;extendDialog&#039;&#039;&#039; -- contains masked text dialogs for passwords&lt;br /&gt;
&lt;br /&gt;
* Move the VisTrails workflow to a known location (i.e. &#039;&#039;/Users/XXX/Desktop/visExample/&#039;&#039;)&lt;br /&gt;
** &#039;&#039;&#039;fireDemoSC2009.new.vt&#039;&#039;&#039; -- the VisTrails workflow for conversion and visualization&lt;br /&gt;
&lt;br /&gt;
* Move the simulation inputs to a known location (i.e. &#039;&#039;/Users/XXX/Desktop/visExample/sc2009inputs/&#039;&#039;)&lt;br /&gt;
** &#039;&#039;&#039;sc2009inputs&#039;&#039;&#039; -- contains example simulation input files&lt;br /&gt;
&lt;br /&gt;
* Run the simulation with the example inputs (&#039;&#039;&#039;/Users/XXX/Desktop/visExample/sc2009inputs/&#039;&#039;&#039;)&lt;br /&gt;
** See pre-requisites above for details about the running and obtaining better time steps&lt;br /&gt;
** Wait for the simulation to complete&lt;br /&gt;
&lt;br /&gt;
* Store the WRFOUT within a known directory (i.e. &#039;&#039;/Users/XXX/Desktop/visExample/sc2009outputs/&#039;&#039;)&lt;br /&gt;
** Setup a directory to save VTK files that will be generated from WRFOUT (i.e. &#039;&#039;/Users/XXX/Desktop/visExample/sc2009outputs/vtkFiles/&#039;&#039;)&lt;br /&gt;
&lt;br /&gt;
=== Converting Simulation Results ===&lt;br /&gt;
&lt;br /&gt;
* Run VisTrails and open the workflow (&#039;&#039;&#039;fireDemoSC2009.vt&#039;&#039;&#039;)&lt;br /&gt;
** Ignore the initial error concerning missing pipeline initialization failure&lt;br /&gt;
** NOTE: until Jon includes his userpackages within the git repository we will be unable to avoid this error.  However, because these pipelines are unrelated to the simulation execution, conversion and visualization we may ignore them.&lt;br /&gt;
&lt;br /&gt;
* Begin by navigating the history tree&lt;br /&gt;
* Execute the &#039;&#039;&#039;WRFOUT Conversion&#039;&#039;&#039; node (top of the right-center branch)&lt;br /&gt;
** NOTE: to &#039;execute&#039; a node, you must select the node so that it is highlighted and the corresponding workflow is shown in the smaller view window, then click on the &#039;execute&#039; button.&lt;br /&gt;
** Prompts for the &#039;&#039;WRF directory&#039;&#039; (&#039;&#039;/Users/XXX/Desktop/visExample/sc2009outputs/&#039;&#039;)&lt;br /&gt;
** Prompts for the &#039;&#039;VTK directory&#039;&#039; (&#039;&#039;/Users/XXX/Desktop/visExample/sc2009outputs/vtkFiles&#039;&#039;)&lt;br /&gt;
** NOTE: the prompts are asking for &#039;&#039;&#039;directory&#039;&#039;&#039; paths.&lt;br /&gt;
* Wait for the conversion to complete (all modules turn green)&lt;br /&gt;
&lt;br /&gt;
[[File:Sc2009history.png|600px]]&lt;br /&gt;
&lt;br /&gt;
=== Visualizing Simulation Results ===&lt;br /&gt;
&lt;br /&gt;
* Execute the &#039;&#039;&#039;Fire Demo Visualization Mashup&#039;&#039;&#039; node (bottom of the left-most branch)&lt;br /&gt;
** Modify the reader nodes associated with the vtk files&lt;br /&gt;
*** Direct these files to the appropriate vtk paths used earlier&lt;br /&gt;
*** NOTE: you may run the workflow at this point but it will fail without changes these boxes. Running the workflow in this way will highlight the nodes that require changes. They will be colored red to indicate points of failure in the pipeline execution.&lt;br /&gt;
&lt;br /&gt;
* The &#039;&#039;&#039;Fire Demo Visualization&#039;&#039;&#039; node (top of the left-most branch)&lt;br /&gt;
** This node is intended to prompt the user for the files rather than requiring intervention with the workflows.  Currently there is a bug within the workflow.&lt;br /&gt;
** Prompts for the &#039;&#039;VTK directory&#039;&#039; (&#039;&#039;/Users/XXX/Desktop/visExample/sc2009outputs/vtkFiles&#039;&#039;)&lt;br /&gt;
** Prompts for the &#039;&#039;Animation Delay&#039;&#039; (hit enter)&lt;br /&gt;
** View the spread sheet to interact with the visualization&lt;br /&gt;
&lt;br /&gt;
=== Interacting with the Visualization ===&lt;br /&gt;
[[File:Sc2009results.png|600px]]&lt;br /&gt;
* left click will rotate the visualization&lt;br /&gt;
* Shift-left click will pan the visualization&lt;br /&gt;
* Ctrl-left click will zoom the visualization&lt;br /&gt;
* &#039;&#039;&#039;l&#039;&#039;&#039; (lower case L) toggles the streamline widget&lt;br /&gt;
* left click on the sreamline widget moves it around&lt;br /&gt;
* left click on the play widgets (left to right)&lt;br /&gt;
** &#039;&#039;step back&#039;&#039; -- step backwards one frame in the simulation&lt;br /&gt;
** &#039;&#039;play back&#039;&#039; -- play the simulation backwards&lt;br /&gt;
** &#039;&#039;stop&#039;&#039; -- pauses the simulation animation&lt;br /&gt;
** &#039;&#039;play forward&#039;&#039; -- play the simulation forward&lt;br /&gt;
** &#039;&#039;step forward&#039;&#039; -- step forward one frame in the simulation&lt;br /&gt;
&lt;br /&gt;
== Cluster-based Simulation Execution ==&lt;br /&gt;
=== Setting up the Python server on a remote machine or cluster ===&lt;br /&gt;
* Build the simulation binaries on the cluster&lt;br /&gt;
* On the cluster setup a home directory for the server&lt;br /&gt;
* Within this directory create virtual links to:&lt;br /&gt;
** &#039;&#039;&#039;ideal.exe&#039;&#039;&#039; -- the ideal simulation setup executable&lt;br /&gt;
** &#039;&#039;&#039;real.exe&#039;&#039;&#039; -- the real simulation setup executable&lt;br /&gt;
** &#039;&#039;&#039;wrf.exe&#039;&#039;&#039; -- the simulation binary&lt;br /&gt;
* Within this directory copy over the server files from the previous tar ball&lt;br /&gt;
** &#039;&#039;&#039;demoNetwork/execServer.py&#039;&#039;&#039; -- to be used on the cluster to launch the server&lt;br /&gt;
** &#039;&#039;&#039;demoNetwork/fireServer.py&#039;&#039;&#039; -- the server code&lt;br /&gt;
** &#039;&#039;&#039;demoNetwork/fireMessages.py&#039;&#039;&#039; -- the message passing scheme and code&lt;br /&gt;
** &#039;&#039;&#039;demoNetwork/userRegistration.py&#039;&#039;&#039; -- user registration script&lt;br /&gt;
** &#039;&#039;&#039;demoNetwork/README.txt&#039;&#039;&#039; -- a readme file explaining server setup in more detail&lt;br /&gt;
* Execute the python script to start the server (requires python 2.5 or greater)&lt;br /&gt;
** On the command line within the directory: &#039;&#039;python execServer.py&#039;&#039;&lt;br /&gt;
* View and remember the listening port output by the server&lt;br /&gt;
&lt;br /&gt;
=== Registering New Users with the Server ===&lt;br /&gt;
* Log in to the cluster hosting the server&lt;br /&gt;
* Change to the server home directory on the cluster&lt;br /&gt;
* Execute the python script for user registration&lt;br /&gt;
** On the command line: &#039;&#039;python userRegistration.py &amp;lt;username&amp;gt; &amp;lt;password&amp;gt;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
=== Executing Remote Simulations ===&lt;br /&gt;
* Run VisTrails and open the workflow (&#039;&#039;&#039;fireDemoSC2009.vt&#039;&#039;&#039;)&lt;br /&gt;
&lt;br /&gt;
* The &#039;&#039;&#039;Execute Simulation (real)&#039;&#039;&#039; node (top of the middle branch): Execution of this workflow sends an execution request to the server.  The VisTrails client communicates with the remote server using the md5 checksum of the simulation input files as a unique identifier.  The server will execute the simulation IFF it is not already stored within the user database.  Consequently, repeated execution requests of the same simulations will be ignored, only the first being executed.&lt;br /&gt;
** Prompts for the &#039;&#039;Server Name&#039;&#039;&lt;br /&gt;
** Prompts for the &#039;&#039;Username&#039;&#039;&lt;br /&gt;
** Prompts for the &#039;&#039;Password&#039;&#039; (this is the &#039;&#039;user registered&#039;&#039; password)&lt;br /&gt;
** Prompts for the &#039;&#039;Local Simulation Directory&#039;&#039; (&#039;&#039;/Users/XXX/Desktop/visExample/sc2009inputs/&#039;&#039;)&lt;br /&gt;
** Prompts for the &#039;&#039;Server port&#039;&#039; (this is the number remembered during server setup)&lt;br /&gt;
&lt;br /&gt;
* The &#039;&#039;&#039;Update Simulation (real)&#039;&#039;&#039; node (upper middle of the middle branch): Execution of this workflow will query the server for the latest &#039;&#039;WRFOUT&#039;&#039; files produced by the simulation for the given input files.  If the md5 checksum of the &#039;&#039;WRFOUT&#039;&#039; does not match between the server and the client, then the file is sent from the cluster to your local machine.  No files are sent from the server to the client if the md5 checksums are the same or if the server does not have a simulation recorded for the given input files.&lt;br /&gt;
** Prompts for the &#039;&#039;Server Name&#039;&#039;&lt;br /&gt;
** Prompts for the &#039;&#039;Username&#039;&#039;&lt;br /&gt;
** Prompts for the &#039;&#039;Password&#039;&#039; (this is the &#039;&#039;user registered&#039;&#039; password)&lt;br /&gt;
** Prompts for the &#039;&#039;Local Simulation Directory&#039;&#039; (&#039;&#039;/Users/XXX/Desktop/visExample/sc2009inputs/&#039;&#039;)&lt;br /&gt;
** Prompts for the &#039;&#039;Server port&#039;&#039; (this is the number remembered during server setup)&lt;br /&gt;
&lt;br /&gt;
* The &#039;&#039;&#039;Stop Simulation (real)&#039;&#039;&#039; node (lower middle of the middle branch): Execution of this workflow will send a termination request of the simulation to the server.  For simulations that run indefinitely, or are running for a long time, the user can explicitly terminate their continued computation.  The workflow prompts the user for the local directory of the input files, used as a means of identifying the simulation to which the user is referring.&lt;br /&gt;
** Prompts for the &#039;&#039;Server Name&#039;&#039;&lt;br /&gt;
** Prompts for the &#039;&#039;Username&#039;&#039;&lt;br /&gt;
** Prompts for the &#039;&#039;Password&#039;&#039; (this is the &#039;&#039;user registered&#039;&#039; password)&lt;br /&gt;
** Prompts for the &#039;&#039;Local Simulation Directory&#039;&#039; (&#039;&#039;/Users/XXX/Desktop/visExample/sc2009inputs/&#039;&#039;)&lt;br /&gt;
** Prompts for the &#039;&#039;Server port&#039;&#039; (this is the number remembered during server setup)&lt;br /&gt;
&lt;br /&gt;
* The &#039;&#039;&#039;Delete Simulation (real)&#039;&#039;&#039; node (lower middle of the middle branch): Execution of this workflow will send a deletion request of the simulation to the server.  After a simulation is run, it will remain on the server until it is explicitly deleted by the user.  Consequently, if a user terminates a simulation, then wishes to re-run the simulation, they must first delete it.  Otherwise, subsequent re-runs of the simulation will not occur because the server views the simulation as already executed.&lt;br /&gt;
** Prompts for the &#039;&#039;Server Name&#039;&#039;&lt;br /&gt;
** Prompts for the &#039;&#039;Username&#039;&#039;&lt;br /&gt;
** Prompts for the &#039;&#039;Password&#039;&#039; (this is the &#039;&#039;user registered&#039;&#039; password)&lt;br /&gt;
** Prompts for the &#039;&#039;Local Simulation Directory&#039;&#039; (&#039;&#039;/Users/XXX/Desktop/visExample/sc2009inputs/&#039;&#039;)&lt;br /&gt;
** Prompts for the &#039;&#039;Server port&#039;&#039; (this is the number remembered during server setup)&lt;br /&gt;
&lt;br /&gt;
== Super Computing 2009 Demo ==&lt;br /&gt;
* A full simulation to visualization scenario:&lt;br /&gt;
** Execute the &#039;&#039;&#039;Execute Simulation (real)&#039;&#039;&#039; workflow&lt;br /&gt;
** Wait.&lt;br /&gt;
** Execute the &#039;&#039;&#039;Update Simulation (real)&#039;&#039;&#039; workflow&lt;br /&gt;
** Execute the &#039;&#039;&#039;WRFOUT Conversion&#039;&#039;&#039; workflow&lt;br /&gt;
** Execute the &#039;&#039;&#039;Fire Demo Visualization&#039;&#039;&#039; workflow&lt;br /&gt;
&lt;br /&gt;
== Works with ==&lt;br /&gt;
&lt;br /&gt;
* VisTrails 1.4.1 revision 1693 (2010-01-28 14:00) on Mac OS X 10.6.2&lt;br /&gt;
* WRF-Fire {{WRF-Fire-commit|d08007ddfcd8c59095caf42f7633048b9a541732|d08007ddfcd8c59095caf42f7633048b9a541732}} on Rocks 5.1 Centos 5.3 gfortran-gcc  4.1.2, openmpi_gcc-1.2.8&lt;br /&gt;
&lt;br /&gt;
[[Category:WRF-Fire]]&lt;br /&gt;
[[Category:Howtos|Visualize WRF-Fire output in VisTrails]]&lt;/div&gt;</summary>
		<author><name>Jdaniels</name></author>
	</entry>
	<entry>
		<id>https://wiki.openwfm.org/index.php?title=How_to_visualize_WRF-Fire_output_in_VisTrails&amp;diff=1078</id>
		<title>How to visualize WRF-Fire output in VisTrails</title>
		<link rel="alternate" type="text/html" href="https://wiki.openwfm.org/index.php?title=How_to_visualize_WRF-Fire_output_in_VisTrails&amp;diff=1078"/>
		<updated>2010-06-28T22:22:13Z</updated>

		<summary type="html">&lt;p&gt;Jdaniels: /* Converting Simulation Results */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Simulation Execution ==&lt;br /&gt;
&lt;br /&gt;
* [[How to run WRF-Fire|Download, install and run WRF-Fire]]. This can be done on a different computer; you will only need to move the output files.&lt;br /&gt;
** To get enough frames, before running WRF-Fire, change in &#039;&#039;&#039;namelist.input&#039;&#039;&#039; the line with &#039;&#039;&#039;history_interval&#039;&#039;&#039; to the desired frame interval in seconds, for example &#039;&#039;&#039;history_interval_s=1&#039;&#039;&#039;. &lt;br /&gt;
* Run WRF-Fire. The pictures below are from the &amp;quot;hill&amp;quot; ideal run in WRF-Fire.&lt;br /&gt;
* If the visualization computer is different from the computer where you run WRF-Fire, transfer the resulting &#039;&#039;&#039;wrfout&#039;&#039;&#039; files to the visualization computer&lt;br /&gt;
&lt;br /&gt;
== Simulation Visualization Setup ==&lt;br /&gt;
* Download and install [http://www.vistrails.org VisTrails], and run it at least once.&lt;br /&gt;
* Get a copy of the &#039;&#039;&#039;wrf_vistrails&#039;&#039;&#039; repository. &lt;br /&gt;
** This is currently restricted to developers who have a shell account at &#039;&#039;&#039;math.ucdenver.edu&#039;&#039;&#039;  &lt;br /&gt;
** NOTE: substitute &#039;&#039;&#039;user&#039;&#039;&#039; for your own username&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
git clone ssh://user@math.ucdenver.edu/home/grads/jbeezley/wrf_vistrails.git&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Place the VisTrails packages into &#039;&#039;&#039;/Users/XXX/.vistrails/userpackages/&#039;&#039;&#039;&lt;br /&gt;
** &#039;&#039;&#039;NumSciPy&#039;&#039;&#039; -- contains the wrapper modules for NumPy and SciPy functions&lt;br /&gt;
** &#039;&#039;&#039;WRFtoVTK&#039;&#039;&#039; -- contains the wrf to vtk file conversion modules&lt;br /&gt;
** &#039;&#039;&#039;extendDialog&#039;&#039;&#039; -- contains masked text dialogs for passwords&lt;br /&gt;
&lt;br /&gt;
* Move the VisTrails workflow to a known location (i.e. &#039;&#039;/Users/XXX/Desktop/visExample/&#039;&#039;)&lt;br /&gt;
** &#039;&#039;&#039;fireDemoSC2009.new.vt&#039;&#039;&#039; -- the VisTrails workflow for conversion and visualization&lt;br /&gt;
&lt;br /&gt;
* Move the simulation inputs to a known location (i.e. &#039;&#039;/Users/XXX/Desktop/visExample/sc2009inputs/&#039;&#039;)&lt;br /&gt;
** &#039;&#039;&#039;sc2009inputs&#039;&#039;&#039; -- contains example simulation input files&lt;br /&gt;
&lt;br /&gt;
* Run the simulation with the example inputs (&#039;&#039;&#039;/Users/XXX/Desktop/visExample/sc2009inputs/&#039;&#039;&#039;)&lt;br /&gt;
** See pre-requisites above for details about the running and obtaining better time steps&lt;br /&gt;
** Wait for the simulation to complete&lt;br /&gt;
&lt;br /&gt;
* Store the WRFOUT within a known directory (i.e. &#039;&#039;/Users/XXX/Desktop/visExample/sc2009outputs/&#039;&#039;)&lt;br /&gt;
** Setup a directory to save VTK files that will be generated from WRFOUT (i.e. &#039;&#039;/Users/XXX/Desktop/visExample/sc2009outputs/vtkFiles/&#039;&#039;)&lt;br /&gt;
&lt;br /&gt;
=== Converting Simulation Results ===&lt;br /&gt;
&lt;br /&gt;
* Run VisTrails and open the workflow (&#039;&#039;&#039;fireDemoSC2009.vt&#039;&#039;&#039;)&lt;br /&gt;
** Ignore the initial error concerning missing pipeline initialization failure&lt;br /&gt;
** NOTE: until Jon includes his userpackages within the git repository we will be unable to avoid this error.  However, because these pipelines are unrelated to the simulation execution, conversion and visualization we may ignore them.&lt;br /&gt;
&lt;br /&gt;
* Begin by navigating the history tree&lt;br /&gt;
* Execute the &#039;&#039;&#039;WRFOUT Conversion&#039;&#039;&#039; node (top of the right-center branch)&lt;br /&gt;
** NOTE: to &#039;execute&#039; a node, you must select the node so that it is highlighted and the corresponding workflow is shown in the smaller view window, then click on the &#039;execute&#039; button.&lt;br /&gt;
** Prompts for the &#039;&#039;WRF directory&#039;&#039; (&#039;&#039;/Users/XXX/Desktop/visExample/sc2009outputs/&#039;&#039;)&lt;br /&gt;
** Prompts for the &#039;&#039;VTK directory&#039;&#039; (&#039;&#039;/Users/XXX/Desktop/visExample/sc2009outputs/vtkFiles&#039;&#039;)&lt;br /&gt;
** NOTE: the prompts are asking for &#039;&#039;&#039;directory&#039;&#039;&#039; paths.&lt;br /&gt;
* Wait for the conversion to complete (all modules turn green)&lt;br /&gt;
&lt;br /&gt;
[[File:Sc2009history.png|600px]]&lt;br /&gt;
&lt;br /&gt;
=== Visualizing Simulation Results ===&lt;br /&gt;
&lt;br /&gt;
* Execute the &#039;&#039;&#039;Fire Demo Visualization&#039;&#039;&#039; node (top of the left most branch)&lt;br /&gt;
** Prompts for the &#039;&#039;VTK directory&#039;&#039; (&#039;&#039;/Users/XXX/Desktop/visExample/sc2009outputs/vtkFiles&#039;&#039;)&lt;br /&gt;
** Prompts for the &#039;&#039;Animation Delay&#039;&#039; (hit enter)&lt;br /&gt;
** View the spread sheet to interact with the visualization&lt;br /&gt;
&lt;br /&gt;
=== Interacting with the Visualization ===&lt;br /&gt;
[[File:Sc2009results.png|600px]]&lt;br /&gt;
* left click will rotate the visualization&lt;br /&gt;
* Shift-left click will pan the visualization&lt;br /&gt;
* Ctrl-left click will zoom the visualization&lt;br /&gt;
* &#039;&#039;&#039;l&#039;&#039;&#039; (lower case L) toggles the streamline widget&lt;br /&gt;
* left click on the sreamline widget moves it around&lt;br /&gt;
* left click on the play widgets (left to right)&lt;br /&gt;
** &#039;&#039;step back&#039;&#039; -- step backwards one frame in the simulation&lt;br /&gt;
** &#039;&#039;play back&#039;&#039; -- play the simulation backwards&lt;br /&gt;
** &#039;&#039;stop&#039;&#039; -- pauses the simulation animation&lt;br /&gt;
** &#039;&#039;play forward&#039;&#039; -- play the simulation forward&lt;br /&gt;
** &#039;&#039;step forward&#039;&#039; -- step forward one frame in the simulation&lt;br /&gt;
&lt;br /&gt;
== Cluster-based Simulation Execution ==&lt;br /&gt;
=== Setting up the Python server on a remote machine or cluster ===&lt;br /&gt;
* Build the simulation binaries on the cluster&lt;br /&gt;
* On the cluster setup a home directory for the server&lt;br /&gt;
* Within this directory create virtual links to:&lt;br /&gt;
** &#039;&#039;&#039;ideal.exe&#039;&#039;&#039; -- the ideal simulation setup executable&lt;br /&gt;
** &#039;&#039;&#039;real.exe&#039;&#039;&#039; -- the real simulation setup executable&lt;br /&gt;
** &#039;&#039;&#039;wrf.exe&#039;&#039;&#039; -- the simulation binary&lt;br /&gt;
* Within this directory copy over the server files from the previous tar ball&lt;br /&gt;
** &#039;&#039;&#039;demoNetwork/execServer.py&#039;&#039;&#039; -- to be used on the cluster to launch the server&lt;br /&gt;
** &#039;&#039;&#039;demoNetwork/fireServer.py&#039;&#039;&#039; -- the server code&lt;br /&gt;
** &#039;&#039;&#039;demoNetwork/fireMessages.py&#039;&#039;&#039; -- the message passing scheme and code&lt;br /&gt;
** &#039;&#039;&#039;demoNetwork/userRegistration.py&#039;&#039;&#039; -- user registration script&lt;br /&gt;
** &#039;&#039;&#039;demoNetwork/README.txt&#039;&#039;&#039; -- a readme file explaining server setup in more detail&lt;br /&gt;
* Execute the python script to start the server (requires python 2.5 or greater)&lt;br /&gt;
** On the command line within the directory: &#039;&#039;python execServer.py&#039;&#039;&lt;br /&gt;
* View and remember the listening port output by the server&lt;br /&gt;
&lt;br /&gt;
=== Registering New Users with the Server ===&lt;br /&gt;
* Log in to the cluster hosting the server&lt;br /&gt;
* Change to the server home directory on the cluster&lt;br /&gt;
* Execute the python script for user registration&lt;br /&gt;
** On the command line: &#039;&#039;python userRegistration.py &amp;lt;username&amp;gt; &amp;lt;password&amp;gt;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
=== Executing Remote Simulations ===&lt;br /&gt;
* Run VisTrails and open the workflow (&#039;&#039;&#039;fireDemoSC2009.vt&#039;&#039;&#039;)&lt;br /&gt;
&lt;br /&gt;
* The &#039;&#039;&#039;Execute Simulation (real)&#039;&#039;&#039; node (top of the middle branch): Execution of this workflow sends an execution request to the server.  The VisTrails client communicates with the remote server using the md5 checksum of the simulation input files as a unique identifier.  The server will execute the simulation IFF it is not already stored within the user database.  Consequently, repeated execution requests of the same simulations will be ignored, only the first being executed.&lt;br /&gt;
** Prompts for the &#039;&#039;Server Name&#039;&#039;&lt;br /&gt;
** Prompts for the &#039;&#039;Username&#039;&#039;&lt;br /&gt;
** Prompts for the &#039;&#039;Password&#039;&#039; (this is the &#039;&#039;user registered&#039;&#039; password)&lt;br /&gt;
** Prompts for the &#039;&#039;Local Simulation Directory&#039;&#039; (&#039;&#039;/Users/XXX/Desktop/visExample/sc2009inputs/&#039;&#039;)&lt;br /&gt;
** Prompts for the &#039;&#039;Server port&#039;&#039; (this is the number remembered during server setup)&lt;br /&gt;
&lt;br /&gt;
* The &#039;&#039;&#039;Update Simulation (real)&#039;&#039;&#039; node (upper middle of the middle branch): Execution of this workflow will query the server for the latest &#039;&#039;WRFOUT&#039;&#039; files produced by the simulation for the given input files.  If the md5 checksum of the &#039;&#039;WRFOUT&#039;&#039; does not match between the server and the client, then the file is sent from the cluster to your local machine.  No files are sent from the server to the client if the md5 checksums are the same or if the server does not have a simulation recorded for the given input files.&lt;br /&gt;
** Prompts for the &#039;&#039;Server Name&#039;&#039;&lt;br /&gt;
** Prompts for the &#039;&#039;Username&#039;&#039;&lt;br /&gt;
** Prompts for the &#039;&#039;Password&#039;&#039; (this is the &#039;&#039;user registered&#039;&#039; password)&lt;br /&gt;
** Prompts for the &#039;&#039;Local Simulation Directory&#039;&#039; (&#039;&#039;/Users/XXX/Desktop/visExample/sc2009inputs/&#039;&#039;)&lt;br /&gt;
** Prompts for the &#039;&#039;Server port&#039;&#039; (this is the number remembered during server setup)&lt;br /&gt;
&lt;br /&gt;
* The &#039;&#039;&#039;Stop Simulation (real)&#039;&#039;&#039; node (lower middle of the middle branch): Execution of this workflow will send a termination request of the simulation to the server.  For simulations that run indefinitely, or are running for a long time, the user can explicitly terminate their continued computation.  The workflow prompts the user for the local directory of the input files, used as a means of identifying the simulation to which the user is referring.&lt;br /&gt;
** Prompts for the &#039;&#039;Server Name&#039;&#039;&lt;br /&gt;
** Prompts for the &#039;&#039;Username&#039;&#039;&lt;br /&gt;
** Prompts for the &#039;&#039;Password&#039;&#039; (this is the &#039;&#039;user registered&#039;&#039; password)&lt;br /&gt;
** Prompts for the &#039;&#039;Local Simulation Directory&#039;&#039; (&#039;&#039;/Users/XXX/Desktop/visExample/sc2009inputs/&#039;&#039;)&lt;br /&gt;
** Prompts for the &#039;&#039;Server port&#039;&#039; (this is the number remembered during server setup)&lt;br /&gt;
&lt;br /&gt;
* The &#039;&#039;&#039;Delete Simulation (real)&#039;&#039;&#039; node (lower middle of the middle branch): Execution of this workflow will send a deletion request of the simulation to the server.  After a simulation is run, it will remain on the server until it is explicitly deleted by the user.  Consequently, if a user terminates a simulation, then wishes to re-run the simulation, they must first delete it.  Otherwise, subsequent re-runs of the simulation will not occur because the server views the simulation as already executed.&lt;br /&gt;
** Prompts for the &#039;&#039;Server Name&#039;&#039;&lt;br /&gt;
** Prompts for the &#039;&#039;Username&#039;&#039;&lt;br /&gt;
** Prompts for the &#039;&#039;Password&#039;&#039; (this is the &#039;&#039;user registered&#039;&#039; password)&lt;br /&gt;
** Prompts for the &#039;&#039;Local Simulation Directory&#039;&#039; (&#039;&#039;/Users/XXX/Desktop/visExample/sc2009inputs/&#039;&#039;)&lt;br /&gt;
** Prompts for the &#039;&#039;Server port&#039;&#039; (this is the number remembered during server setup)&lt;br /&gt;
&lt;br /&gt;
== Super Computing 2009 Demo ==&lt;br /&gt;
* A full simulation to visualization scenario:&lt;br /&gt;
** Execute the &#039;&#039;&#039;Execute Simulation (real)&#039;&#039;&#039; workflow&lt;br /&gt;
** Wait.&lt;br /&gt;
** Execute the &#039;&#039;&#039;Update Simulation (real)&#039;&#039;&#039; workflow&lt;br /&gt;
** Execute the &#039;&#039;&#039;WRFOUT Conversion&#039;&#039;&#039; workflow&lt;br /&gt;
** Execute the &#039;&#039;&#039;Fire Demo Visualization&#039;&#039;&#039; workflow&lt;br /&gt;
&lt;br /&gt;
== Works with ==&lt;br /&gt;
&lt;br /&gt;
* VisTrails 1.4.1 revision 1693 (2010-01-28 14:00) on Mac OS X 10.6.2&lt;br /&gt;
* WRF-Fire {{WRF-Fire-commit|d08007ddfcd8c59095caf42f7633048b9a541732|d08007ddfcd8c59095caf42f7633048b9a541732}} on Rocks 5.1 Centos 5.3 gfortran-gcc  4.1.2, openmpi_gcc-1.2.8&lt;br /&gt;
&lt;br /&gt;
[[Category:WRF-Fire]]&lt;br /&gt;
[[Category:Howtos|Visualize WRF-Fire output in VisTrails]]&lt;/div&gt;</summary>
		<author><name>Jdaniels</name></author>
	</entry>
	<entry>
		<id>https://wiki.openwfm.org/index.php?title=How_to_visualize_WRF-Fire_output_in_VisTrails&amp;diff=1077</id>
		<title>How to visualize WRF-Fire output in VisTrails</title>
		<link rel="alternate" type="text/html" href="https://wiki.openwfm.org/index.php?title=How_to_visualize_WRF-Fire_output_in_VisTrails&amp;diff=1077"/>
		<updated>2010-06-28T22:13:07Z</updated>

		<summary type="html">&lt;p&gt;Jdaniels: /* Simulation Visualization Setup */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Simulation Execution ==&lt;br /&gt;
&lt;br /&gt;
* [[How to run WRF-Fire|Download, install and run WRF-Fire]]. This can be done on a different computer; you will only need to move the output files.&lt;br /&gt;
** To get enough frames, before running WRF-Fire, change in &#039;&#039;&#039;namelist.input&#039;&#039;&#039; the line with &#039;&#039;&#039;history_interval&#039;&#039;&#039; to the desired frame interval in seconds, for example &#039;&#039;&#039;history_interval_s=1&#039;&#039;&#039;. &lt;br /&gt;
* Run WRF-Fire. The pictures below are from the &amp;quot;hill&amp;quot; ideal run in WRF-Fire.&lt;br /&gt;
* If the visualization computer is different from the computer where you run WRF-Fire, transfer the resulting &#039;&#039;&#039;wrfout&#039;&#039;&#039; files to the visualization computer&lt;br /&gt;
&lt;br /&gt;
== Simulation Visualization Setup ==&lt;br /&gt;
* Download and install [http://www.vistrails.org VisTrails], and run it at least once.&lt;br /&gt;
* Get a copy of the &#039;&#039;&#039;wrf_vistrails&#039;&#039;&#039; repository. &lt;br /&gt;
** This is currently restricted to developers who have a shell account at &#039;&#039;&#039;math.ucdenver.edu&#039;&#039;&#039;  &lt;br /&gt;
** NOTE: substitute &#039;&#039;&#039;user&#039;&#039;&#039; for your own username&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
git clone ssh://user@math.ucdenver.edu/home/grads/jbeezley/wrf_vistrails.git&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Place the VisTrails packages into &#039;&#039;&#039;/Users/XXX/.vistrails/userpackages/&#039;&#039;&#039;&lt;br /&gt;
** &#039;&#039;&#039;NumSciPy&#039;&#039;&#039; -- contains the wrapper modules for NumPy and SciPy functions&lt;br /&gt;
** &#039;&#039;&#039;WRFtoVTK&#039;&#039;&#039; -- contains the wrf to vtk file conversion modules&lt;br /&gt;
** &#039;&#039;&#039;extendDialog&#039;&#039;&#039; -- contains masked text dialogs for passwords&lt;br /&gt;
&lt;br /&gt;
* Move the VisTrails workflow to a known location (i.e. &#039;&#039;/Users/XXX/Desktop/visExample/&#039;&#039;)&lt;br /&gt;
** &#039;&#039;&#039;fireDemoSC2009.new.vt&#039;&#039;&#039; -- the VisTrails workflow for conversion and visualization&lt;br /&gt;
&lt;br /&gt;
* Move the simulation inputs to a known location (i.e. &#039;&#039;/Users/XXX/Desktop/visExample/sc2009inputs/&#039;&#039;)&lt;br /&gt;
** &#039;&#039;&#039;sc2009inputs&#039;&#039;&#039; -- contains example simulation input files&lt;br /&gt;
&lt;br /&gt;
* Run the simulation with the example inputs (&#039;&#039;&#039;/Users/XXX/Desktop/visExample/sc2009inputs/&#039;&#039;&#039;)&lt;br /&gt;
** See pre-requisites above for details about the running and obtaining better time steps&lt;br /&gt;
** Wait for the simulation to complete&lt;br /&gt;
&lt;br /&gt;
* Store the WRFOUT within a known directory (i.e. &#039;&#039;/Users/XXX/Desktop/visExample/sc2009outputs/&#039;&#039;)&lt;br /&gt;
** Setup a directory to save VTK files that will be generated from WRFOUT (i.e. &#039;&#039;/Users/XXX/Desktop/visExample/sc2009outputs/vtkFiles/&#039;&#039;)&lt;br /&gt;
&lt;br /&gt;
=== Converting Simulation Results ===&lt;br /&gt;
&lt;br /&gt;
* Run VisTrails and open the workflow (&#039;&#039;&#039;fireDemoSC2009.new.vt&#039;&#039;&#039;)&lt;br /&gt;
** Ignore the initial error concerning missing pipeline initialization failure&lt;br /&gt;
** NOTE: until Jon includes his userpackages within the git repository we will be unable to avoid this error.  However, because these pipelines are unrelated to the simulation execution, conversion and visualization we may ignore them.&lt;br /&gt;
&lt;br /&gt;
* Begin by navigating the history tree&lt;br /&gt;
* Execute the &#039;&#039;&#039;WRFOUT Conversion&#039;&#039;&#039; node (top of the right-center branch)&lt;br /&gt;
** NOTE: to &#039;execute&#039; a node, you must select the node so that it is highlighted and the corresponding workflow is shown in the smaller view window, then click on the &#039;execute&#039; button.&lt;br /&gt;
** Prompts for the &#039;&#039;WRF directory&#039;&#039; (&#039;&#039;/Users/XXX/Desktop/visExample/sc2009outputs/&#039;&#039;)&lt;br /&gt;
** Prompts for the &#039;&#039;VTK directory&#039;&#039; (&#039;&#039;/Users/XXX/Desktop/visExample/sc2009outputs/vtkFiles&#039;&#039;)&lt;br /&gt;
** NOTE: the prompts are asking for &#039;&#039;&#039;directory&#039;&#039;&#039; paths.&lt;br /&gt;
* Wait for the conversion to complete (all modules turn green)&lt;br /&gt;
&lt;br /&gt;
[[File:Sc2009history.png|600px]]&lt;br /&gt;
&lt;br /&gt;
=== Visualizing Simulation Results ===&lt;br /&gt;
&lt;br /&gt;
* Execute the &#039;&#039;&#039;Fire Demo Visualization&#039;&#039;&#039; node (top of the left most branch)&lt;br /&gt;
** Prompts for the &#039;&#039;VTK directory&#039;&#039; (&#039;&#039;/Users/XXX/Desktop/visExample/sc2009outputs/vtkFiles&#039;&#039;)&lt;br /&gt;
** Prompts for the &#039;&#039;Animation Delay&#039;&#039; (hit enter)&lt;br /&gt;
** View the spread sheet to interact with the visualization&lt;br /&gt;
&lt;br /&gt;
=== Interacting with the Visualization ===&lt;br /&gt;
[[File:Sc2009results.png|600px]]&lt;br /&gt;
* left click will rotate the visualization&lt;br /&gt;
* Shift-left click will pan the visualization&lt;br /&gt;
* Ctrl-left click will zoom the visualization&lt;br /&gt;
* &#039;&#039;&#039;l&#039;&#039;&#039; (lower case L) toggles the streamline widget&lt;br /&gt;
* left click on the sreamline widget moves it around&lt;br /&gt;
* left click on the play widgets (left to right)&lt;br /&gt;
** &#039;&#039;step back&#039;&#039; -- step backwards one frame in the simulation&lt;br /&gt;
** &#039;&#039;play back&#039;&#039; -- play the simulation backwards&lt;br /&gt;
** &#039;&#039;stop&#039;&#039; -- pauses the simulation animation&lt;br /&gt;
** &#039;&#039;play forward&#039;&#039; -- play the simulation forward&lt;br /&gt;
** &#039;&#039;step forward&#039;&#039; -- step forward one frame in the simulation&lt;br /&gt;
&lt;br /&gt;
== Cluster-based Simulation Execution ==&lt;br /&gt;
=== Setting up the Python server on a remote machine or cluster ===&lt;br /&gt;
* Build the simulation binaries on the cluster&lt;br /&gt;
* On the cluster setup a home directory for the server&lt;br /&gt;
* Within this directory create virtual links to:&lt;br /&gt;
** &#039;&#039;&#039;ideal.exe&#039;&#039;&#039; -- the ideal simulation setup executable&lt;br /&gt;
** &#039;&#039;&#039;real.exe&#039;&#039;&#039; -- the real simulation setup executable&lt;br /&gt;
** &#039;&#039;&#039;wrf.exe&#039;&#039;&#039; -- the simulation binary&lt;br /&gt;
* Within this directory copy over the server files from the previous tar ball&lt;br /&gt;
** &#039;&#039;&#039;demoNetwork/execServer.py&#039;&#039;&#039; -- to be used on the cluster to launch the server&lt;br /&gt;
** &#039;&#039;&#039;demoNetwork/fireServer.py&#039;&#039;&#039; -- the server code&lt;br /&gt;
** &#039;&#039;&#039;demoNetwork/fireMessages.py&#039;&#039;&#039; -- the message passing scheme and code&lt;br /&gt;
** &#039;&#039;&#039;demoNetwork/userRegistration.py&#039;&#039;&#039; -- user registration script&lt;br /&gt;
** &#039;&#039;&#039;demoNetwork/README.txt&#039;&#039;&#039; -- a readme file explaining server setup in more detail&lt;br /&gt;
* Execute the python script to start the server (requires python 2.5 or greater)&lt;br /&gt;
** On the command line within the directory: &#039;&#039;python execServer.py&#039;&#039;&lt;br /&gt;
* View and remember the listening port output by the server&lt;br /&gt;
&lt;br /&gt;
=== Registering New Users with the Server ===&lt;br /&gt;
* Log in to the cluster hosting the server&lt;br /&gt;
* Change to the server home directory on the cluster&lt;br /&gt;
* Execute the python script for user registration&lt;br /&gt;
** On the command line: &#039;&#039;python userRegistration.py &amp;lt;username&amp;gt; &amp;lt;password&amp;gt;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
=== Executing Remote Simulations ===&lt;br /&gt;
* Run VisTrails and open the workflow (&#039;&#039;&#039;fireDemoSC2009.vt&#039;&#039;&#039;)&lt;br /&gt;
&lt;br /&gt;
* The &#039;&#039;&#039;Execute Simulation (real)&#039;&#039;&#039; node (top of the middle branch): Execution of this workflow sends an execution request to the server.  The VisTrails client communicates with the remote server using the md5 checksum of the simulation input files as a unique identifier.  The server will execute the simulation IFF it is not already stored within the user database.  Consequently, repeated execution requests of the same simulations will be ignored, only the first being executed.&lt;br /&gt;
** Prompts for the &#039;&#039;Server Name&#039;&#039;&lt;br /&gt;
** Prompts for the &#039;&#039;Username&#039;&#039;&lt;br /&gt;
** Prompts for the &#039;&#039;Password&#039;&#039; (this is the &#039;&#039;user registered&#039;&#039; password)&lt;br /&gt;
** Prompts for the &#039;&#039;Local Simulation Directory&#039;&#039; (&#039;&#039;/Users/XXX/Desktop/visExample/sc2009inputs/&#039;&#039;)&lt;br /&gt;
** Prompts for the &#039;&#039;Server port&#039;&#039; (this is the number remembered during server setup)&lt;br /&gt;
&lt;br /&gt;
* The &#039;&#039;&#039;Update Simulation (real)&#039;&#039;&#039; node (upper middle of the middle branch): Execution of this workflow will query the server for the latest &#039;&#039;WRFOUT&#039;&#039; files produced by the simulation for the given input files.  If the md5 checksum of the &#039;&#039;WRFOUT&#039;&#039; does not match between the server and the client, then the file is sent from the cluster to your local machine.  No files are sent from the server to the client if the md5 checksums are the same or if the server does not have a simulation recorded for the given input files.&lt;br /&gt;
** Prompts for the &#039;&#039;Server Name&#039;&#039;&lt;br /&gt;
** Prompts for the &#039;&#039;Username&#039;&#039;&lt;br /&gt;
** Prompts for the &#039;&#039;Password&#039;&#039; (this is the &#039;&#039;user registered&#039;&#039; password)&lt;br /&gt;
** Prompts for the &#039;&#039;Local Simulation Directory&#039;&#039; (&#039;&#039;/Users/XXX/Desktop/visExample/sc2009inputs/&#039;&#039;)&lt;br /&gt;
** Prompts for the &#039;&#039;Server port&#039;&#039; (this is the number remembered during server setup)&lt;br /&gt;
&lt;br /&gt;
* The &#039;&#039;&#039;Stop Simulation (real)&#039;&#039;&#039; node (lower middle of the middle branch): Execution of this workflow will send a termination request of the simulation to the server.  For simulations that run indefinitely, or are running for a long time, the user can explicitly terminate their continued computation.  The workflow prompts the user for the local directory of the input files, used as a means of identifying the simulation to which the user is referring.&lt;br /&gt;
** Prompts for the &#039;&#039;Server Name&#039;&#039;&lt;br /&gt;
** Prompts for the &#039;&#039;Username&#039;&#039;&lt;br /&gt;
** Prompts for the &#039;&#039;Password&#039;&#039; (this is the &#039;&#039;user registered&#039;&#039; password)&lt;br /&gt;
** Prompts for the &#039;&#039;Local Simulation Directory&#039;&#039; (&#039;&#039;/Users/XXX/Desktop/visExample/sc2009inputs/&#039;&#039;)&lt;br /&gt;
** Prompts for the &#039;&#039;Server port&#039;&#039; (this is the number remembered during server setup)&lt;br /&gt;
&lt;br /&gt;
* The &#039;&#039;&#039;Delete Simulation (real)&#039;&#039;&#039; node (lower middle of the middle branch): Execution of this workflow will send a deletion request of the simulation to the server.  After a simulation is run, it will remain on the server until it is explicitly deleted by the user.  Consequently, if a user terminates a simulation, then wishes to re-run the simulation, they must first delete it.  Otherwise, subsequent re-runs of the simulation will not occur because the server views the simulation as already executed.&lt;br /&gt;
** Prompts for the &#039;&#039;Server Name&#039;&#039;&lt;br /&gt;
** Prompts for the &#039;&#039;Username&#039;&#039;&lt;br /&gt;
** Prompts for the &#039;&#039;Password&#039;&#039; (this is the &#039;&#039;user registered&#039;&#039; password)&lt;br /&gt;
** Prompts for the &#039;&#039;Local Simulation Directory&#039;&#039; (&#039;&#039;/Users/XXX/Desktop/visExample/sc2009inputs/&#039;&#039;)&lt;br /&gt;
** Prompts for the &#039;&#039;Server port&#039;&#039; (this is the number remembered during server setup)&lt;br /&gt;
&lt;br /&gt;
== Super Computing 2009 Demo ==&lt;br /&gt;
* A full simulation to visualization scenario:&lt;br /&gt;
** Execute the &#039;&#039;&#039;Execute Simulation (real)&#039;&#039;&#039; workflow&lt;br /&gt;
** Wait.&lt;br /&gt;
** Execute the &#039;&#039;&#039;Update Simulation (real)&#039;&#039;&#039; workflow&lt;br /&gt;
** Execute the &#039;&#039;&#039;WRFOUT Conversion&#039;&#039;&#039; workflow&lt;br /&gt;
** Execute the &#039;&#039;&#039;Fire Demo Visualization&#039;&#039;&#039; workflow&lt;br /&gt;
&lt;br /&gt;
== Works with ==&lt;br /&gt;
&lt;br /&gt;
* VisTrails 1.4.1 revision 1693 (2010-01-28 14:00) on Mac OS X 10.6.2&lt;br /&gt;
* WRF-Fire {{WRF-Fire-commit|d08007ddfcd8c59095caf42f7633048b9a541732|d08007ddfcd8c59095caf42f7633048b9a541732}} on Rocks 5.1 Centos 5.3 gfortran-gcc  4.1.2, openmpi_gcc-1.2.8&lt;br /&gt;
&lt;br /&gt;
[[Category:WRF-Fire]]&lt;br /&gt;
[[Category:Howtos|Visualize WRF-Fire output in VisTrails]]&lt;/div&gt;</summary>
		<author><name>Jdaniels</name></author>
	</entry>
	<entry>
		<id>https://wiki.openwfm.org/index.php?title=How_to_visualize_WRF-Fire_output_in_VisTrails&amp;diff=1076</id>
		<title>How to visualize WRF-Fire output in VisTrails</title>
		<link rel="alternate" type="text/html" href="https://wiki.openwfm.org/index.php?title=How_to_visualize_WRF-Fire_output_in_VisTrails&amp;diff=1076"/>
		<updated>2010-06-28T22:10:49Z</updated>

		<summary type="html">&lt;p&gt;Jdaniels: /* Converting Simulation Results */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Simulation Execution ==&lt;br /&gt;
&lt;br /&gt;
* [[How to run WRF-Fire|Download, install and run WRF-Fire]]. This can be done on a different computer; you will only need to move the output files.&lt;br /&gt;
** To get enough frames, before running WRF-Fire, change in &#039;&#039;&#039;namelist.input&#039;&#039;&#039; the line with &#039;&#039;&#039;history_interval&#039;&#039;&#039; to the desired frame interval in seconds, for example &#039;&#039;&#039;history_interval_s=1&#039;&#039;&#039;. &lt;br /&gt;
* Run WRF-Fire. The pictures below are from the &amp;quot;hill&amp;quot; ideal run in WRF-Fire.&lt;br /&gt;
* If the visualization computer is different from the computer where you run WRF-Fire, transfer the resulting &#039;&#039;&#039;wrfout&#039;&#039;&#039; files to the visualization computer&lt;br /&gt;
&lt;br /&gt;
== Simulation Visualization Setup ==&lt;br /&gt;
* Download and install [http://www.vistrails.org VisTrails], and run it at least once.&lt;br /&gt;
* Get a copy of the &#039;&#039;&#039;wrf_vistrails&#039;&#039;&#039; repository. &lt;br /&gt;
** This is currently restricted to developers who have a shell account at &#039;&#039;&#039;math.ucdenver.edu&#039;&#039;&#039;  (substitute &#039;&#039;&#039;user&#039;&#039;&#039; for your own username)&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
git clone ssh://user@math.ucdenver.edu/home/grads/jbeezley/wrf_vistrails.git&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Place the VisTrails packages into &#039;&#039;&#039;/Users/XXX/.vistrails/userpackages/&#039;&#039;&#039;&lt;br /&gt;
** &#039;&#039;&#039;NumSciPy&#039;&#039;&#039; -- contains the wrapper modules for NumPy and SciPy functions&lt;br /&gt;
** &#039;&#039;&#039;WRFtoVTK&#039;&#039;&#039; -- contains the wrf to vtk file conversion modules&lt;br /&gt;
** &#039;&#039;&#039;extendDialog&#039;&#039;&#039; -- contains masked text dialogs for passwords&lt;br /&gt;
&lt;br /&gt;
* Move the VisTrails workflow to a known location (i.e. &#039;&#039;/Users/XXX/Desktop/visExample/&#039;&#039;)&lt;br /&gt;
** &#039;&#039;&#039;fireDemoSC2009.new.vt&#039;&#039;&#039; -- the VisTrails workflow for conversion and visualization&lt;br /&gt;
&lt;br /&gt;
* Move the simulation inputs to a known location (i.e. &#039;&#039;/Users/XXX/Desktop/visExample/sc2009inputs/&#039;&#039;)&lt;br /&gt;
** &#039;&#039;&#039;sc2009inputs&#039;&#039;&#039; -- contains example simulation input files&lt;br /&gt;
&lt;br /&gt;
* Run the simulation with the example inputs (&#039;&#039;&#039;/Users/XXX/Desktop/visExample/sc2009inputs/&#039;&#039;&#039;)&lt;br /&gt;
** See pre-requisites above for details about the running and obtaining better time steps&lt;br /&gt;
** Wait for the simulation to complete&lt;br /&gt;
&lt;br /&gt;
* Store the WRFOUT within a known directory (i.e. &#039;&#039;/Users/XXX/Desktop/visExample/sc2009outputs/&#039;&#039;)&lt;br /&gt;
** Setup a directory to save VTK files that will be generated from WRFOUT (i.e. &#039;&#039;/Users/XXX/Desktop/visExample/sc2009outputs/vtkFiles/&#039;&#039;)&lt;br /&gt;
&lt;br /&gt;
=== Converting Simulation Results ===&lt;br /&gt;
&lt;br /&gt;
[[File:Sc2009history.png|600px]]&lt;br /&gt;
&lt;br /&gt;
* Run VisTrails and open the workflow (&#039;&#039;&#039;fireDemoSC2009.new.vt&#039;&#039;&#039;)&lt;br /&gt;
** Ignore the initial error concerning missing pipeline initialization failure&lt;br /&gt;
** NOTE: until Jon includes his userpackages within the git repository we will be unable to avoid this error.  However, because these pipelines are unrelated to the simulation execution, conversion and visualization we may ignore them.&lt;br /&gt;
&lt;br /&gt;
* Begin by navigating the history tree&lt;br /&gt;
* Execute the &#039;&#039;&#039;WRFOUT Conversion&#039;&#039;&#039; node (top of the right-center branch)&lt;br /&gt;
** NOTE: to &#039;execute&#039; a node, you must select the node so that it is highlighted and the corresponding workflow is shown in the smaller view window, then click on the &#039;execute&#039; button.&lt;br /&gt;
** Prompts for the &#039;&#039;WRF directory&#039;&#039; (&#039;&#039;/Users/XXX/Desktop/visExample/sc2009outputs/&#039;&#039;)&lt;br /&gt;
** Prompts for the &#039;&#039;VTK directory&#039;&#039; (&#039;&#039;/Users/XXX/Desktop/visExample/sc2009outputs/vtkFiles&#039;&#039;)&lt;br /&gt;
** NOTE: the prompts are asking for &#039;&#039;&#039;directory&#039;&#039;&#039; paths.&lt;br /&gt;
* Wait for the conversion to complete (all modules turn green)&lt;br /&gt;
&lt;br /&gt;
=== Visualizing Simulation Results ===&lt;br /&gt;
&lt;br /&gt;
* Execute the &#039;&#039;&#039;Fire Demo Visualization&#039;&#039;&#039; node (top of the left most branch)&lt;br /&gt;
** Prompts for the &#039;&#039;VTK directory&#039;&#039; (&#039;&#039;/Users/XXX/Desktop/visExample/sc2009outputs/vtkFiles&#039;&#039;)&lt;br /&gt;
** Prompts for the &#039;&#039;Animation Delay&#039;&#039; (hit enter)&lt;br /&gt;
** View the spread sheet to interact with the visualization&lt;br /&gt;
&lt;br /&gt;
=== Interacting with the Visualization ===&lt;br /&gt;
[[File:Sc2009results.png|600px]]&lt;br /&gt;
* left click will rotate the visualization&lt;br /&gt;
* Shift-left click will pan the visualization&lt;br /&gt;
* Ctrl-left click will zoom the visualization&lt;br /&gt;
* &#039;&#039;&#039;l&#039;&#039;&#039; (lower case L) toggles the streamline widget&lt;br /&gt;
* left click on the sreamline widget moves it around&lt;br /&gt;
* left click on the play widgets (left to right)&lt;br /&gt;
** &#039;&#039;step back&#039;&#039; -- step backwards one frame in the simulation&lt;br /&gt;
** &#039;&#039;play back&#039;&#039; -- play the simulation backwards&lt;br /&gt;
** &#039;&#039;stop&#039;&#039; -- pauses the simulation animation&lt;br /&gt;
** &#039;&#039;play forward&#039;&#039; -- play the simulation forward&lt;br /&gt;
** &#039;&#039;step forward&#039;&#039; -- step forward one frame in the simulation&lt;br /&gt;
&lt;br /&gt;
== Cluster-based Simulation Execution ==&lt;br /&gt;
=== Setting up the Python server on a remote machine or cluster ===&lt;br /&gt;
* Build the simulation binaries on the cluster&lt;br /&gt;
* On the cluster setup a home directory for the server&lt;br /&gt;
* Within this directory create virtual links to:&lt;br /&gt;
** &#039;&#039;&#039;ideal.exe&#039;&#039;&#039; -- the ideal simulation setup executable&lt;br /&gt;
** &#039;&#039;&#039;real.exe&#039;&#039;&#039; -- the real simulation setup executable&lt;br /&gt;
** &#039;&#039;&#039;wrf.exe&#039;&#039;&#039; -- the simulation binary&lt;br /&gt;
* Within this directory copy over the server files from the previous tar ball&lt;br /&gt;
** &#039;&#039;&#039;demoNetwork/execServer.py&#039;&#039;&#039; -- to be used on the cluster to launch the server&lt;br /&gt;
** &#039;&#039;&#039;demoNetwork/fireServer.py&#039;&#039;&#039; -- the server code&lt;br /&gt;
** &#039;&#039;&#039;demoNetwork/fireMessages.py&#039;&#039;&#039; -- the message passing scheme and code&lt;br /&gt;
** &#039;&#039;&#039;demoNetwork/userRegistration.py&#039;&#039;&#039; -- user registration script&lt;br /&gt;
** &#039;&#039;&#039;demoNetwork/README.txt&#039;&#039;&#039; -- a readme file explaining server setup in more detail&lt;br /&gt;
* Execute the python script to start the server (requires python 2.5 or greater)&lt;br /&gt;
** On the command line within the directory: &#039;&#039;python execServer.py&#039;&#039;&lt;br /&gt;
* View and remember the listening port output by the server&lt;br /&gt;
&lt;br /&gt;
=== Registering New Users with the Server ===&lt;br /&gt;
* Log in to the cluster hosting the server&lt;br /&gt;
* Change to the server home directory on the cluster&lt;br /&gt;
* Execute the python script for user registration&lt;br /&gt;
** On the command line: &#039;&#039;python userRegistration.py &amp;lt;username&amp;gt; &amp;lt;password&amp;gt;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
=== Executing Remote Simulations ===&lt;br /&gt;
* Run VisTrails and open the workflow (&#039;&#039;&#039;fireDemoSC2009.vt&#039;&#039;&#039;)&lt;br /&gt;
&lt;br /&gt;
* The &#039;&#039;&#039;Execute Simulation (real)&#039;&#039;&#039; node (top of the middle branch): Execution of this workflow sends an execution request to the server.  The VisTrails client communicates with the remote server using the md5 checksum of the simulation input files as a unique identifier.  The server will execute the simulation IFF it is not already stored within the user database.  Consequently, repeated execution requests of the same simulations will be ignored, only the first being executed.&lt;br /&gt;
** Prompts for the &#039;&#039;Server Name&#039;&#039;&lt;br /&gt;
** Prompts for the &#039;&#039;Username&#039;&#039;&lt;br /&gt;
** Prompts for the &#039;&#039;Password&#039;&#039; (this is the &#039;&#039;user registered&#039;&#039; password)&lt;br /&gt;
** Prompts for the &#039;&#039;Local Simulation Directory&#039;&#039; (&#039;&#039;/Users/XXX/Desktop/visExample/sc2009inputs/&#039;&#039;)&lt;br /&gt;
** Prompts for the &#039;&#039;Server port&#039;&#039; (this is the number remembered during server setup)&lt;br /&gt;
&lt;br /&gt;
* The &#039;&#039;&#039;Update Simulation (real)&#039;&#039;&#039; node (upper middle of the middle branch): Execution of this workflow will query the server for the latest &#039;&#039;WRFOUT&#039;&#039; files produced by the simulation for the given input files.  If the md5 checksum of the &#039;&#039;WRFOUT&#039;&#039; does not match between the server and the client, then the file is sent from the cluster to your local machine.  No files are sent from the server to the client if the md5 checksums are the same or if the server does not have a simulation recorded for the given input files.&lt;br /&gt;
** Prompts for the &#039;&#039;Server Name&#039;&#039;&lt;br /&gt;
** Prompts for the &#039;&#039;Username&#039;&#039;&lt;br /&gt;
** Prompts for the &#039;&#039;Password&#039;&#039; (this is the &#039;&#039;user registered&#039;&#039; password)&lt;br /&gt;
** Prompts for the &#039;&#039;Local Simulation Directory&#039;&#039; (&#039;&#039;/Users/XXX/Desktop/visExample/sc2009inputs/&#039;&#039;)&lt;br /&gt;
** Prompts for the &#039;&#039;Server port&#039;&#039; (this is the number remembered during server setup)&lt;br /&gt;
&lt;br /&gt;
* The &#039;&#039;&#039;Stop Simulation (real)&#039;&#039;&#039; node (lower middle of the middle branch): Execution of this workflow will send a termination request of the simulation to the server.  For simulations that run indefinitely, or are running for a long time, the user can explicitly terminate their continued computation.  The workflow prompts the user for the local directory of the input files, used as a means of identifying the simulation to which the user is referring.&lt;br /&gt;
** Prompts for the &#039;&#039;Server Name&#039;&#039;&lt;br /&gt;
** Prompts for the &#039;&#039;Username&#039;&#039;&lt;br /&gt;
** Prompts for the &#039;&#039;Password&#039;&#039; (this is the &#039;&#039;user registered&#039;&#039; password)&lt;br /&gt;
** Prompts for the &#039;&#039;Local Simulation Directory&#039;&#039; (&#039;&#039;/Users/XXX/Desktop/visExample/sc2009inputs/&#039;&#039;)&lt;br /&gt;
** Prompts for the &#039;&#039;Server port&#039;&#039; (this is the number remembered during server setup)&lt;br /&gt;
&lt;br /&gt;
* The &#039;&#039;&#039;Delete Simulation (real)&#039;&#039;&#039; node (lower middle of the middle branch): Execution of this workflow will send a deletion request of the simulation to the server.  After a simulation is run, it will remain on the server until it is explicitly deleted by the user.  Consequently, if a user terminates a simulation, then wishes to re-run the simulation, they must first delete it.  Otherwise, subsequent re-runs of the simulation will not occur because the server views the simulation as already executed.&lt;br /&gt;
** Prompts for the &#039;&#039;Server Name&#039;&#039;&lt;br /&gt;
** Prompts for the &#039;&#039;Username&#039;&#039;&lt;br /&gt;
** Prompts for the &#039;&#039;Password&#039;&#039; (this is the &#039;&#039;user registered&#039;&#039; password)&lt;br /&gt;
** Prompts for the &#039;&#039;Local Simulation Directory&#039;&#039; (&#039;&#039;/Users/XXX/Desktop/visExample/sc2009inputs/&#039;&#039;)&lt;br /&gt;
** Prompts for the &#039;&#039;Server port&#039;&#039; (this is the number remembered during server setup)&lt;br /&gt;
&lt;br /&gt;
== Super Computing 2009 Demo ==&lt;br /&gt;
* A full simulation to visualization scenario:&lt;br /&gt;
** Execute the &#039;&#039;&#039;Execute Simulation (real)&#039;&#039;&#039; workflow&lt;br /&gt;
** Wait.&lt;br /&gt;
** Execute the &#039;&#039;&#039;Update Simulation (real)&#039;&#039;&#039; workflow&lt;br /&gt;
** Execute the &#039;&#039;&#039;WRFOUT Conversion&#039;&#039;&#039; workflow&lt;br /&gt;
** Execute the &#039;&#039;&#039;Fire Demo Visualization&#039;&#039;&#039; workflow&lt;br /&gt;
&lt;br /&gt;
== Works with ==&lt;br /&gt;
&lt;br /&gt;
* VisTrails 1.4.1 revision 1693 (2010-01-28 14:00) on Mac OS X 10.6.2&lt;br /&gt;
* WRF-Fire {{WRF-Fire-commit|d08007ddfcd8c59095caf42f7633048b9a541732|d08007ddfcd8c59095caf42f7633048b9a541732}} on Rocks 5.1 Centos 5.3 gfortran-gcc  4.1.2, openmpi_gcc-1.2.8&lt;br /&gt;
&lt;br /&gt;
[[Category:WRF-Fire]]&lt;br /&gt;
[[Category:Howtos|Visualize WRF-Fire output in VisTrails]]&lt;/div&gt;</summary>
		<author><name>Jdaniels</name></author>
	</entry>
	<entry>
		<id>https://wiki.openwfm.org/index.php?title=How_to_visualize_WRF-Fire_output_in_VisTrails&amp;diff=1075</id>
		<title>How to visualize WRF-Fire output in VisTrails</title>
		<link rel="alternate" type="text/html" href="https://wiki.openwfm.org/index.php?title=How_to_visualize_WRF-Fire_output_in_VisTrails&amp;diff=1075"/>
		<updated>2010-06-28T22:07:59Z</updated>

		<summary type="html">&lt;p&gt;Jdaniels: /* Visualization of Simulation Results */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Simulation Execution ==&lt;br /&gt;
&lt;br /&gt;
* [[How to run WRF-Fire|Download, install and run WRF-Fire]]. This can be done on a different computer; you will only need to move the output files.&lt;br /&gt;
** To get enough frames, before running WRF-Fire, change in &#039;&#039;&#039;namelist.input&#039;&#039;&#039; the line with &#039;&#039;&#039;history_interval&#039;&#039;&#039; to the desired frame interval in seconds, for example &#039;&#039;&#039;history_interval_s=1&#039;&#039;&#039;. &lt;br /&gt;
* Run WRF-Fire. The pictures below are from the &amp;quot;hill&amp;quot; ideal run in WRF-Fire.&lt;br /&gt;
* If the visualization computer is different from the computer where you run WRF-Fire, transfer the resulting &#039;&#039;&#039;wrfout&#039;&#039;&#039; files to the visualization computer&lt;br /&gt;
&lt;br /&gt;
== Simulation Visualization Setup ==&lt;br /&gt;
* Download and install [http://www.vistrails.org VisTrails], and run it at least once.&lt;br /&gt;
* Get a copy of the &#039;&#039;&#039;wrf_vistrails&#039;&#039;&#039; repository. &lt;br /&gt;
** This is currently restricted to developers who have a shell account at &#039;&#039;&#039;math.ucdenver.edu&#039;&#039;&#039;  (substitute &#039;&#039;&#039;user&#039;&#039;&#039; for your own username)&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
git clone ssh://user@math.ucdenver.edu/home/grads/jbeezley/wrf_vistrails.git&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Place the VisTrails packages into &#039;&#039;&#039;/Users/XXX/.vistrails/userpackages/&#039;&#039;&#039;&lt;br /&gt;
** &#039;&#039;&#039;NumSciPy&#039;&#039;&#039; -- contains the wrapper modules for NumPy and SciPy functions&lt;br /&gt;
** &#039;&#039;&#039;WRFtoVTK&#039;&#039;&#039; -- contains the wrf to vtk file conversion modules&lt;br /&gt;
** &#039;&#039;&#039;extendDialog&#039;&#039;&#039; -- contains masked text dialogs for passwords&lt;br /&gt;
&lt;br /&gt;
* Move the VisTrails workflow to a known location (i.e. &#039;&#039;/Users/XXX/Desktop/visExample/&#039;&#039;)&lt;br /&gt;
** &#039;&#039;&#039;fireDemoSC2009.new.vt&#039;&#039;&#039; -- the VisTrails workflow for conversion and visualization&lt;br /&gt;
&lt;br /&gt;
* Move the simulation inputs to a known location (i.e. &#039;&#039;/Users/XXX/Desktop/visExample/sc2009inputs/&#039;&#039;)&lt;br /&gt;
** &#039;&#039;&#039;sc2009inputs&#039;&#039;&#039; -- contains example simulation input files&lt;br /&gt;
&lt;br /&gt;
* Run the simulation with the example inputs (&#039;&#039;&#039;/Users/XXX/Desktop/visExample/sc2009inputs/&#039;&#039;&#039;)&lt;br /&gt;
** See pre-requisites above for details about the running and obtaining better time steps&lt;br /&gt;
** Wait for the simulation to complete&lt;br /&gt;
&lt;br /&gt;
* Store the WRFOUT within a known directory (i.e. &#039;&#039;/Users/XXX/Desktop/visExample/sc2009outputs/&#039;&#039;)&lt;br /&gt;
** Setup a directory to save VTK files that will be generated from WRFOUT (i.e. &#039;&#039;/Users/XXX/Desktop/visExample/sc2009outputs/vtkFiles/&#039;&#039;)&lt;br /&gt;
&lt;br /&gt;
=== Converting Simulation Results ===&lt;br /&gt;
&lt;br /&gt;
[[File:Sc2009history.png|600px]]&lt;br /&gt;
&lt;br /&gt;
* Run VisTrails and open the workflow (&#039;&#039;&#039;fireDemoSC2009.new.vt&#039;&#039;&#039;)&lt;br /&gt;
** Ignore the initial error concerning missing pipeline initialization failure&lt;br /&gt;
** NOTE: Jon Beezley must include his userpackages within the git repository to avoid this error, currently however, we may ignore these warnings because the errors are within pipelines that are unrelated to the simulation execution, conversion and visualization.&lt;br /&gt;
&lt;br /&gt;
* Begin by navigating the history tree&lt;br /&gt;
* Execute the &#039;&#039;&#039;WRFOUT Conversion&#039;&#039;&#039; node (top of the right-center branch)&lt;br /&gt;
** NOTE: to &#039;execute&#039; a node, you must select the node so that it is highlighted and the corresponding workflow is shown in the smaller view window, then click on the &#039;execute&#039; button.&lt;br /&gt;
** Prompts for the &#039;&#039;WRF directory&#039;&#039; (&#039;&#039;/Users/XXX/Desktop/visExample/sc2009outputs/&#039;&#039;)&lt;br /&gt;
*** NOTE: this is the directory that &#039;&#039;contains&#039;&#039; the &#039;&#039;wrfout&#039;&#039; file.&lt;br /&gt;
** Prompts for the &#039;&#039;VTK directory&#039;&#039; (&#039;&#039;/Users/XXX/Desktop/visExample/sc2009outputs/vtkFiles&#039;&#039;)&lt;br /&gt;
** Wait for the conversion to complete (all modules turn green)&lt;br /&gt;
&lt;br /&gt;
=== Visualizing Simulation Results ===&lt;br /&gt;
&lt;br /&gt;
* Execute the &#039;&#039;&#039;Fire Demo Visualization&#039;&#039;&#039; node (top of the left most branch)&lt;br /&gt;
** Prompts for the &#039;&#039;VTK directory&#039;&#039; (&#039;&#039;/Users/XXX/Desktop/visExample/sc2009outputs/vtkFiles&#039;&#039;)&lt;br /&gt;
** Prompts for the &#039;&#039;Animation Delay&#039;&#039; (hit enter)&lt;br /&gt;
** View the spread sheet to interact with the visualization&lt;br /&gt;
&lt;br /&gt;
=== Interacting with the Visualization ===&lt;br /&gt;
[[File:Sc2009results.png|600px]]&lt;br /&gt;
* left click will rotate the visualization&lt;br /&gt;
* Shift-left click will pan the visualization&lt;br /&gt;
* Ctrl-left click will zoom the visualization&lt;br /&gt;
* &#039;&#039;&#039;l&#039;&#039;&#039; (lower case L) toggles the streamline widget&lt;br /&gt;
* left click on the sreamline widget moves it around&lt;br /&gt;
* left click on the play widgets (left to right)&lt;br /&gt;
** &#039;&#039;step back&#039;&#039; -- step backwards one frame in the simulation&lt;br /&gt;
** &#039;&#039;play back&#039;&#039; -- play the simulation backwards&lt;br /&gt;
** &#039;&#039;stop&#039;&#039; -- pauses the simulation animation&lt;br /&gt;
** &#039;&#039;play forward&#039;&#039; -- play the simulation forward&lt;br /&gt;
** &#039;&#039;step forward&#039;&#039; -- step forward one frame in the simulation&lt;br /&gt;
&lt;br /&gt;
== Cluster-based Simulation Execution ==&lt;br /&gt;
=== Setting up the Python server on a remote machine or cluster ===&lt;br /&gt;
* Build the simulation binaries on the cluster&lt;br /&gt;
* On the cluster setup a home directory for the server&lt;br /&gt;
* Within this directory create virtual links to:&lt;br /&gt;
** &#039;&#039;&#039;ideal.exe&#039;&#039;&#039; -- the ideal simulation setup executable&lt;br /&gt;
** &#039;&#039;&#039;real.exe&#039;&#039;&#039; -- the real simulation setup executable&lt;br /&gt;
** &#039;&#039;&#039;wrf.exe&#039;&#039;&#039; -- the simulation binary&lt;br /&gt;
* Within this directory copy over the server files from the previous tar ball&lt;br /&gt;
** &#039;&#039;&#039;demoNetwork/execServer.py&#039;&#039;&#039; -- to be used on the cluster to launch the server&lt;br /&gt;
** &#039;&#039;&#039;demoNetwork/fireServer.py&#039;&#039;&#039; -- the server code&lt;br /&gt;
** &#039;&#039;&#039;demoNetwork/fireMessages.py&#039;&#039;&#039; -- the message passing scheme and code&lt;br /&gt;
** &#039;&#039;&#039;demoNetwork/userRegistration.py&#039;&#039;&#039; -- user registration script&lt;br /&gt;
** &#039;&#039;&#039;demoNetwork/README.txt&#039;&#039;&#039; -- a readme file explaining server setup in more detail&lt;br /&gt;
* Execute the python script to start the server (requires python 2.5 or greater)&lt;br /&gt;
** On the command line within the directory: &#039;&#039;python execServer.py&#039;&#039;&lt;br /&gt;
* View and remember the listening port output by the server&lt;br /&gt;
&lt;br /&gt;
=== Registering New Users with the Server ===&lt;br /&gt;
* Log in to the cluster hosting the server&lt;br /&gt;
* Change to the server home directory on the cluster&lt;br /&gt;
* Execute the python script for user registration&lt;br /&gt;
** On the command line: &#039;&#039;python userRegistration.py &amp;lt;username&amp;gt; &amp;lt;password&amp;gt;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
=== Executing Remote Simulations ===&lt;br /&gt;
* Run VisTrails and open the workflow (&#039;&#039;&#039;fireDemoSC2009.vt&#039;&#039;&#039;)&lt;br /&gt;
&lt;br /&gt;
* The &#039;&#039;&#039;Execute Simulation (real)&#039;&#039;&#039; node (top of the middle branch): Execution of this workflow sends an execution request to the server.  The VisTrails client communicates with the remote server using the md5 checksum of the simulation input files as a unique identifier.  The server will execute the simulation IFF it is not already stored within the user database.  Consequently, repeated execution requests of the same simulations will be ignored, only the first being executed.&lt;br /&gt;
** Prompts for the &#039;&#039;Server Name&#039;&#039;&lt;br /&gt;
** Prompts for the &#039;&#039;Username&#039;&#039;&lt;br /&gt;
** Prompts for the &#039;&#039;Password&#039;&#039; (this is the &#039;&#039;user registered&#039;&#039; password)&lt;br /&gt;
** Prompts for the &#039;&#039;Local Simulation Directory&#039;&#039; (&#039;&#039;/Users/XXX/Desktop/visExample/sc2009inputs/&#039;&#039;)&lt;br /&gt;
** Prompts for the &#039;&#039;Server port&#039;&#039; (this is the number remembered during server setup)&lt;br /&gt;
&lt;br /&gt;
* The &#039;&#039;&#039;Update Simulation (real)&#039;&#039;&#039; node (upper middle of the middle branch): Execution of this workflow will query the server for the latest &#039;&#039;WRFOUT&#039;&#039; files produced by the simulation for the given input files.  If the md5 checksum of the &#039;&#039;WRFOUT&#039;&#039; does not match between the server and the client, then the file is sent from the cluster to your local machine.  No files are sent from the server to the client if the md5 checksums are the same or if the server does not have a simulation recorded for the given input files.&lt;br /&gt;
** Prompts for the &#039;&#039;Server Name&#039;&#039;&lt;br /&gt;
** Prompts for the &#039;&#039;Username&#039;&#039;&lt;br /&gt;
** Prompts for the &#039;&#039;Password&#039;&#039; (this is the &#039;&#039;user registered&#039;&#039; password)&lt;br /&gt;
** Prompts for the &#039;&#039;Local Simulation Directory&#039;&#039; (&#039;&#039;/Users/XXX/Desktop/visExample/sc2009inputs/&#039;&#039;)&lt;br /&gt;
** Prompts for the &#039;&#039;Server port&#039;&#039; (this is the number remembered during server setup)&lt;br /&gt;
&lt;br /&gt;
* The &#039;&#039;&#039;Stop Simulation (real)&#039;&#039;&#039; node (lower middle of the middle branch): Execution of this workflow will send a termination request of the simulation to the server.  For simulations that run indefinitely, or are running for a long time, the user can explicitly terminate their continued computation.  The workflow prompts the user for the local directory of the input files, used as a means of identifying the simulation to which the user is referring.&lt;br /&gt;
** Prompts for the &#039;&#039;Server Name&#039;&#039;&lt;br /&gt;
** Prompts for the &#039;&#039;Username&#039;&#039;&lt;br /&gt;
** Prompts for the &#039;&#039;Password&#039;&#039; (this is the &#039;&#039;user registered&#039;&#039; password)&lt;br /&gt;
** Prompts for the &#039;&#039;Local Simulation Directory&#039;&#039; (&#039;&#039;/Users/XXX/Desktop/visExample/sc2009inputs/&#039;&#039;)&lt;br /&gt;
** Prompts for the &#039;&#039;Server port&#039;&#039; (this is the number remembered during server setup)&lt;br /&gt;
&lt;br /&gt;
* The &#039;&#039;&#039;Delete Simulation (real)&#039;&#039;&#039; node (lower middle of the middle branch): Execution of this workflow will send a deletion request of the simulation to the server.  After a simulation is run, it will remain on the server until it is explicitly deleted by the user.  Consequently, if a user terminates a simulation, then wishes to re-run the simulation, they must first delete it.  Otherwise, subsequent re-runs of the simulation will not occur because the server views the simulation as already executed.&lt;br /&gt;
** Prompts for the &#039;&#039;Server Name&#039;&#039;&lt;br /&gt;
** Prompts for the &#039;&#039;Username&#039;&#039;&lt;br /&gt;
** Prompts for the &#039;&#039;Password&#039;&#039; (this is the &#039;&#039;user registered&#039;&#039; password)&lt;br /&gt;
** Prompts for the &#039;&#039;Local Simulation Directory&#039;&#039; (&#039;&#039;/Users/XXX/Desktop/visExample/sc2009inputs/&#039;&#039;)&lt;br /&gt;
** Prompts for the &#039;&#039;Server port&#039;&#039; (this is the number remembered during server setup)&lt;br /&gt;
&lt;br /&gt;
== Super Computing 2009 Demo ==&lt;br /&gt;
* A full simulation to visualization scenario:&lt;br /&gt;
** Execute the &#039;&#039;&#039;Execute Simulation (real)&#039;&#039;&#039; workflow&lt;br /&gt;
** Wait.&lt;br /&gt;
** Execute the &#039;&#039;&#039;Update Simulation (real)&#039;&#039;&#039; workflow&lt;br /&gt;
** Execute the &#039;&#039;&#039;WRFOUT Conversion&#039;&#039;&#039; workflow&lt;br /&gt;
** Execute the &#039;&#039;&#039;Fire Demo Visualization&#039;&#039;&#039; workflow&lt;br /&gt;
&lt;br /&gt;
== Works with ==&lt;br /&gt;
&lt;br /&gt;
* VisTrails 1.4.1 revision 1693 (2010-01-28 14:00) on Mac OS X 10.6.2&lt;br /&gt;
* WRF-Fire {{WRF-Fire-commit|d08007ddfcd8c59095caf42f7633048b9a541732|d08007ddfcd8c59095caf42f7633048b9a541732}} on Rocks 5.1 Centos 5.3 gfortran-gcc  4.1.2, openmpi_gcc-1.2.8&lt;br /&gt;
&lt;br /&gt;
[[Category:WRF-Fire]]&lt;br /&gt;
[[Category:Howtos|Visualize WRF-Fire output in VisTrails]]&lt;/div&gt;</summary>
		<author><name>Jdaniels</name></author>
	</entry>
	<entry>
		<id>https://wiki.openwfm.org/index.php?title=How_to_visualize_WRF-Fire_output_in_VisTrails&amp;diff=1074</id>
		<title>How to visualize WRF-Fire output in VisTrails</title>
		<link rel="alternate" type="text/html" href="https://wiki.openwfm.org/index.php?title=How_to_visualize_WRF-Fire_output_in_VisTrails&amp;diff=1074"/>
		<updated>2010-06-28T21:58:56Z</updated>

		<summary type="html">&lt;p&gt;Jdaniels: /* Visualization of Simulation Results */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Simulation Execution ==&lt;br /&gt;
&lt;br /&gt;
* [[How to run WRF-Fire|Download, install and run WRF-Fire]]. This can be done on a different computer; you will only need to move the output files.&lt;br /&gt;
** To get enough frames, before running WRF-Fire, change in &#039;&#039;&#039;namelist.input&#039;&#039;&#039; the line with &#039;&#039;&#039;history_interval&#039;&#039;&#039; to the desired frame interval in seconds, for example &#039;&#039;&#039;history_interval_s=1&#039;&#039;&#039;. &lt;br /&gt;
* Run WRF-Fire. The pictures below are from the &amp;quot;hill&amp;quot; ideal run in WRF-Fire.&lt;br /&gt;
* If the visualization computer is different from the computer where you run WRF-Fire, transfer the resulting &#039;&#039;&#039;wrfout&#039;&#039;&#039; files to the visualization computer&lt;br /&gt;
&lt;br /&gt;
== Simulation Visualization Setup ==&lt;br /&gt;
* Download and install [http://www.vistrails.org VisTrails], and run it at least once.&lt;br /&gt;
* Get a copy of the &#039;&#039;&#039;wrf_vistrails&#039;&#039;&#039; repository. &lt;br /&gt;
** This is currently restricted to developers who have a shell account at &#039;&#039;&#039;math.ucdenver.edu&#039;&#039;&#039;  (substitute &#039;&#039;&#039;user&#039;&#039;&#039; for your own username)&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
git clone ssh://user@math.ucdenver.edu/home/grads/jbeezley/wrf_vistrails.git&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Place the VisTrails packages into &#039;&#039;&#039;/Users/XXX/.vistrails/userpackages/&#039;&#039;&#039;&lt;br /&gt;
** &#039;&#039;&#039;NumSciPy&#039;&#039;&#039; -- contains the wrapper modules for NumPy and SciPy functions&lt;br /&gt;
** &#039;&#039;&#039;WRFtoVTK&#039;&#039;&#039; -- contains the wrf to vtk file conversion modules&lt;br /&gt;
** &#039;&#039;&#039;extendDialog&#039;&#039;&#039; -- contains masked text dialogs for passwords&lt;br /&gt;
&lt;br /&gt;
* Move the VisTrails workflow to a known location (i.e. &#039;&#039;/Users/XXX/Desktop/visExample/&#039;&#039;)&lt;br /&gt;
** &#039;&#039;&#039;fireDemoSC2009.new.vt&#039;&#039;&#039; -- the VisTrails workflow for conversion and visualization&lt;br /&gt;
&lt;br /&gt;
* Move the simulation inputs to a known location (i.e. &#039;&#039;/Users/XXX/Desktop/visExample/sc2009inputs/&#039;&#039;)&lt;br /&gt;
** &#039;&#039;&#039;sc2009inputs&#039;&#039;&#039; -- contains example simulation input files&lt;br /&gt;
&lt;br /&gt;
* Run the simulation with the example inputs (&#039;&#039;&#039;/Users/XXX/Desktop/visExample/sc2009inputs/&#039;&#039;&#039;)&lt;br /&gt;
** See pre-requisites above for details about the running and obtaining better time steps&lt;br /&gt;
** Wait for the simulation to complete&lt;br /&gt;
&lt;br /&gt;
* Store the WRFOUT within a known directory (i.e. &#039;&#039;/Users/XXX/Desktop/visExample/sc2009outputs/&#039;&#039;)&lt;br /&gt;
** Setup a directory to save VTK files that will be generated from WRFOUT (i.e. &#039;&#039;/Users/XXX/Desktop/visExample/sc2009outputs/vtkFiles/&#039;&#039;)&lt;br /&gt;
&lt;br /&gt;
=== Visualization of Simulation Results ===&lt;br /&gt;
&lt;br /&gt;
[[File:Sc2009history.png|600px]]&lt;br /&gt;
&lt;br /&gt;
* Run VisTrails and open the workflow (&#039;&#039;&#039;fireDemoSC2009.new.vt&#039;&#039;&#039;)&lt;br /&gt;
** Ignore the initial error concerning missing pipeline initialization failure&lt;br /&gt;
*** NOTE: Jon Beezley must include his userpackages within the git repository to avoid this error, currently however, we may ignore these warnings because the errors are within pipelines that are unrelated to the simulation execution, conversion and visualization.&lt;br /&gt;
&lt;br /&gt;
* Begin by navigating the history tree&lt;br /&gt;
* Execute the &#039;&#039;&#039;WRFOUT Conversion&#039;&#039;&#039; node (top of the right branch)&lt;br /&gt;
** NOTE: to &#039;execute&#039; a node, you must select the node so that it is highlighted and the corresponding workflow is shown in the smaller view window, then click on the &#039;execute&#039; button.&lt;br /&gt;
** Prompts for the &#039;&#039;WRF directory&#039;&#039; (&#039;&#039;/Users/XXX/Desktop/visExample/sc2009outputs/&#039;&#039;)&lt;br /&gt;
** Prompts for the &#039;&#039;VTK directory&#039;&#039; (&#039;&#039;/Users/XXX/Desktop/visExample/sc2009outputs/vtkFiles&#039;&#039;)&lt;br /&gt;
** Wait for the conversion to complete (all modules turn green)&lt;br /&gt;
&lt;br /&gt;
* Execute the &#039;&#039;&#039;Fire Demo Visualization&#039;&#039;&#039; node (top of the left most branch)&lt;br /&gt;
** Prompts for the &#039;&#039;VTK directory&#039;&#039; (&#039;&#039;/Users/XXX/Desktop/visExample/sc2009outputs/vtkFiles&#039;&#039;)&lt;br /&gt;
** Prompts for the &#039;&#039;Animation Delay&#039;&#039; (hit enter)&lt;br /&gt;
** View the spread sheet to interact with the visualization&lt;br /&gt;
&lt;br /&gt;
=== Interacting with the Visualization ===&lt;br /&gt;
[[File:Sc2009results.png|600px]]&lt;br /&gt;
* left click will rotate the visualization&lt;br /&gt;
* Shift-left click will pan the visualization&lt;br /&gt;
* Ctrl-left click will zoom the visualization&lt;br /&gt;
* &#039;&#039;&#039;l&#039;&#039;&#039; (lower case L) toggles the streamline widget&lt;br /&gt;
* left click on the sreamline widget moves it around&lt;br /&gt;
* left click on the play widgets (left to right)&lt;br /&gt;
** &#039;&#039;step back&#039;&#039; -- step backwards one frame in the simulation&lt;br /&gt;
** &#039;&#039;play back&#039;&#039; -- play the simulation backwards&lt;br /&gt;
** &#039;&#039;stop&#039;&#039; -- pauses the simulation animation&lt;br /&gt;
** &#039;&#039;play forward&#039;&#039; -- play the simulation forward&lt;br /&gt;
** &#039;&#039;step forward&#039;&#039; -- step forward one frame in the simulation&lt;br /&gt;
&lt;br /&gt;
== Cluster-based Simulation Execution ==&lt;br /&gt;
=== Setting up the Python server on a remote machine or cluster ===&lt;br /&gt;
* Build the simulation binaries on the cluster&lt;br /&gt;
* On the cluster setup a home directory for the server&lt;br /&gt;
* Within this directory create virtual links to:&lt;br /&gt;
** &#039;&#039;&#039;ideal.exe&#039;&#039;&#039; -- the ideal simulation setup executable&lt;br /&gt;
** &#039;&#039;&#039;real.exe&#039;&#039;&#039; -- the real simulation setup executable&lt;br /&gt;
** &#039;&#039;&#039;wrf.exe&#039;&#039;&#039; -- the simulation binary&lt;br /&gt;
* Within this directory copy over the server files from the previous tar ball&lt;br /&gt;
** &#039;&#039;&#039;demoNetwork/execServer.py&#039;&#039;&#039; -- to be used on the cluster to launch the server&lt;br /&gt;
** &#039;&#039;&#039;demoNetwork/fireServer.py&#039;&#039;&#039; -- the server code&lt;br /&gt;
** &#039;&#039;&#039;demoNetwork/fireMessages.py&#039;&#039;&#039; -- the message passing scheme and code&lt;br /&gt;
** &#039;&#039;&#039;demoNetwork/userRegistration.py&#039;&#039;&#039; -- user registration script&lt;br /&gt;
** &#039;&#039;&#039;demoNetwork/README.txt&#039;&#039;&#039; -- a readme file explaining server setup in more detail&lt;br /&gt;
* Execute the python script to start the server (requires python 2.5 or greater)&lt;br /&gt;
** On the command line within the directory: &#039;&#039;python execServer.py&#039;&#039;&lt;br /&gt;
* View and remember the listening port output by the server&lt;br /&gt;
&lt;br /&gt;
=== Registering New Users with the Server ===&lt;br /&gt;
* Log in to the cluster hosting the server&lt;br /&gt;
* Change to the server home directory on the cluster&lt;br /&gt;
* Execute the python script for user registration&lt;br /&gt;
** On the command line: &#039;&#039;python userRegistration.py &amp;lt;username&amp;gt; &amp;lt;password&amp;gt;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
=== Executing Remote Simulations ===&lt;br /&gt;
* Run VisTrails and open the workflow (&#039;&#039;&#039;fireDemoSC2009.vt&#039;&#039;&#039;)&lt;br /&gt;
&lt;br /&gt;
* The &#039;&#039;&#039;Execute Simulation (real)&#039;&#039;&#039; node (top of the middle branch): Execution of this workflow sends an execution request to the server.  The VisTrails client communicates with the remote server using the md5 checksum of the simulation input files as a unique identifier.  The server will execute the simulation IFF it is not already stored within the user database.  Consequently, repeated execution requests of the same simulations will be ignored, only the first being executed.&lt;br /&gt;
** Prompts for the &#039;&#039;Server Name&#039;&#039;&lt;br /&gt;
** Prompts for the &#039;&#039;Username&#039;&#039;&lt;br /&gt;
** Prompts for the &#039;&#039;Password&#039;&#039; (this is the &#039;&#039;user registered&#039;&#039; password)&lt;br /&gt;
** Prompts for the &#039;&#039;Local Simulation Directory&#039;&#039; (&#039;&#039;/Users/XXX/Desktop/visExample/sc2009inputs/&#039;&#039;)&lt;br /&gt;
** Prompts for the &#039;&#039;Server port&#039;&#039; (this is the number remembered during server setup)&lt;br /&gt;
&lt;br /&gt;
* The &#039;&#039;&#039;Update Simulation (real)&#039;&#039;&#039; node (upper middle of the middle branch): Execution of this workflow will query the server for the latest &#039;&#039;WRFOUT&#039;&#039; files produced by the simulation for the given input files.  If the md5 checksum of the &#039;&#039;WRFOUT&#039;&#039; does not match between the server and the client, then the file is sent from the cluster to your local machine.  No files are sent from the server to the client if the md5 checksums are the same or if the server does not have a simulation recorded for the given input files.&lt;br /&gt;
** Prompts for the &#039;&#039;Server Name&#039;&#039;&lt;br /&gt;
** Prompts for the &#039;&#039;Username&#039;&#039;&lt;br /&gt;
** Prompts for the &#039;&#039;Password&#039;&#039; (this is the &#039;&#039;user registered&#039;&#039; password)&lt;br /&gt;
** Prompts for the &#039;&#039;Local Simulation Directory&#039;&#039; (&#039;&#039;/Users/XXX/Desktop/visExample/sc2009inputs/&#039;&#039;)&lt;br /&gt;
** Prompts for the &#039;&#039;Server port&#039;&#039; (this is the number remembered during server setup)&lt;br /&gt;
&lt;br /&gt;
* The &#039;&#039;&#039;Stop Simulation (real)&#039;&#039;&#039; node (lower middle of the middle branch): Execution of this workflow will send a termination request of the simulation to the server.  For simulations that run indefinitely, or are running for a long time, the user can explicitly terminate their continued computation.  The workflow prompts the user for the local directory of the input files, used as a means of identifying the simulation to which the user is referring.&lt;br /&gt;
** Prompts for the &#039;&#039;Server Name&#039;&#039;&lt;br /&gt;
** Prompts for the &#039;&#039;Username&#039;&#039;&lt;br /&gt;
** Prompts for the &#039;&#039;Password&#039;&#039; (this is the &#039;&#039;user registered&#039;&#039; password)&lt;br /&gt;
** Prompts for the &#039;&#039;Local Simulation Directory&#039;&#039; (&#039;&#039;/Users/XXX/Desktop/visExample/sc2009inputs/&#039;&#039;)&lt;br /&gt;
** Prompts for the &#039;&#039;Server port&#039;&#039; (this is the number remembered during server setup)&lt;br /&gt;
&lt;br /&gt;
* The &#039;&#039;&#039;Delete Simulation (real)&#039;&#039;&#039; node (lower middle of the middle branch): Execution of this workflow will send a deletion request of the simulation to the server.  After a simulation is run, it will remain on the server until it is explicitly deleted by the user.  Consequently, if a user terminates a simulation, then wishes to re-run the simulation, they must first delete it.  Otherwise, subsequent re-runs of the simulation will not occur because the server views the simulation as already executed.&lt;br /&gt;
** Prompts for the &#039;&#039;Server Name&#039;&#039;&lt;br /&gt;
** Prompts for the &#039;&#039;Username&#039;&#039;&lt;br /&gt;
** Prompts for the &#039;&#039;Password&#039;&#039; (this is the &#039;&#039;user registered&#039;&#039; password)&lt;br /&gt;
** Prompts for the &#039;&#039;Local Simulation Directory&#039;&#039; (&#039;&#039;/Users/XXX/Desktop/visExample/sc2009inputs/&#039;&#039;)&lt;br /&gt;
** Prompts for the &#039;&#039;Server port&#039;&#039; (this is the number remembered during server setup)&lt;br /&gt;
&lt;br /&gt;
== Super Computing 2009 Demo ==&lt;br /&gt;
* A full simulation to visualization scenario:&lt;br /&gt;
** Execute the &#039;&#039;&#039;Execute Simulation (real)&#039;&#039;&#039; workflow&lt;br /&gt;
** Wait.&lt;br /&gt;
** Execute the &#039;&#039;&#039;Update Simulation (real)&#039;&#039;&#039; workflow&lt;br /&gt;
** Execute the &#039;&#039;&#039;WRFOUT Conversion&#039;&#039;&#039; workflow&lt;br /&gt;
** Execute the &#039;&#039;&#039;Fire Demo Visualization&#039;&#039;&#039; workflow&lt;br /&gt;
&lt;br /&gt;
== Works with ==&lt;br /&gt;
&lt;br /&gt;
* VisTrails 1.4.1 revision 1693 (2010-01-28 14:00) on Mac OS X 10.6.2&lt;br /&gt;
* WRF-Fire {{WRF-Fire-commit|d08007ddfcd8c59095caf42f7633048b9a541732|d08007ddfcd8c59095caf42f7633048b9a541732}} on Rocks 5.1 Centos 5.3 gfortran-gcc  4.1.2, openmpi_gcc-1.2.8&lt;br /&gt;
&lt;br /&gt;
[[Category:WRF-Fire]]&lt;br /&gt;
[[Category:Howtos|Visualize WRF-Fire output in VisTrails]]&lt;/div&gt;</summary>
		<author><name>Jdaniels</name></author>
	</entry>
	<entry>
		<id>https://wiki.openwfm.org/index.php?title=How_to_visualize_WRF-Fire_output_in_VisTrails&amp;diff=1073</id>
		<title>How to visualize WRF-Fire output in VisTrails</title>
		<link rel="alternate" type="text/html" href="https://wiki.openwfm.org/index.php?title=How_to_visualize_WRF-Fire_output_in_VisTrails&amp;diff=1073"/>
		<updated>2010-06-28T21:55:03Z</updated>

		<summary type="html">&lt;p&gt;Jdaniels: /* Simulation Visualization */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Simulation Execution ==&lt;br /&gt;
&lt;br /&gt;
* [[How to run WRF-Fire|Download, install and run WRF-Fire]]. This can be done on a different computer; you will only need to move the output files.&lt;br /&gt;
** To get enough frames, before running WRF-Fire, change in &#039;&#039;&#039;namelist.input&#039;&#039;&#039; the line with &#039;&#039;&#039;history_interval&#039;&#039;&#039; to the desired frame interval in seconds, for example &#039;&#039;&#039;history_interval_s=1&#039;&#039;&#039;. &lt;br /&gt;
* Run WRF-Fire. The pictures below are from the &amp;quot;hill&amp;quot; ideal run in WRF-Fire.&lt;br /&gt;
* If the visualization computer is different from the computer where you run WRF-Fire, transfer the resulting &#039;&#039;&#039;wrfout&#039;&#039;&#039; files to the visualization computer&lt;br /&gt;
&lt;br /&gt;
== Simulation Visualization Setup ==&lt;br /&gt;
* Download and install [http://www.vistrails.org VisTrails], and run it at least once.&lt;br /&gt;
* Get a copy of the &#039;&#039;&#039;wrf_vistrails&#039;&#039;&#039; repository. &lt;br /&gt;
** This is currently restricted to developers who have a shell account at &#039;&#039;&#039;math.ucdenver.edu&#039;&#039;&#039;  (substitute &#039;&#039;&#039;user&#039;&#039;&#039; for your own username)&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
git clone ssh://user@math.ucdenver.edu/home/grads/jbeezley/wrf_vistrails.git&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Place the VisTrails packages into &#039;&#039;&#039;/Users/XXX/.vistrails/userpackages/&#039;&#039;&#039;&lt;br /&gt;
** &#039;&#039;&#039;NumSciPy&#039;&#039;&#039; -- contains the wrapper modules for NumPy and SciPy functions&lt;br /&gt;
** &#039;&#039;&#039;WRFtoVTK&#039;&#039;&#039; -- contains the wrf to vtk file conversion modules&lt;br /&gt;
** &#039;&#039;&#039;extendDialog&#039;&#039;&#039; -- contains masked text dialogs for passwords&lt;br /&gt;
&lt;br /&gt;
* Move the VisTrails workflow to a known location (i.e. &#039;&#039;/Users/XXX/Desktop/visExample/&#039;&#039;)&lt;br /&gt;
** &#039;&#039;&#039;fireDemoSC2009.new.vt&#039;&#039;&#039; -- the VisTrails workflow for conversion and visualization&lt;br /&gt;
&lt;br /&gt;
* Move the simulation inputs to a known location (i.e. &#039;&#039;/Users/XXX/Desktop/visExample/sc2009inputs/&#039;&#039;)&lt;br /&gt;
** &#039;&#039;&#039;sc2009inputs&#039;&#039;&#039; -- contains example simulation input files&lt;br /&gt;
&lt;br /&gt;
* Run the simulation with the example inputs (&#039;&#039;&#039;/Users/XXX/Desktop/visExample/sc2009inputs/&#039;&#039;&#039;)&lt;br /&gt;
** See pre-requisites above for details about the running and obtaining better time steps&lt;br /&gt;
** Wait for the simulation to complete&lt;br /&gt;
&lt;br /&gt;
* Store the WRFOUT within a known directory (i.e. &#039;&#039;/Users/XXX/Desktop/visExample/sc2009outputs/&#039;&#039;)&lt;br /&gt;
** Setup a directory to save VTK files that will be generated from WRFOUT (i.e. &#039;&#039;/Users/XXX/Desktop/visExample/sc2009outputs/vtkFiles/&#039;&#039;)&lt;br /&gt;
&lt;br /&gt;
=== Visualization of Simulation Results ===&lt;br /&gt;
&lt;br /&gt;
[[File:Sc2009history.png|600px]]&lt;br /&gt;
* Run VisTrails and open the workflow (&#039;&#039;&#039;fireDemoSC2009.new.vt&#039;&#039;&#039;)&lt;br /&gt;
** Begin by navigating the history tree&lt;br /&gt;
** Execute the &#039;&#039;&#039;WRFOUT Conversion&#039;&#039;&#039; node (top of the right branch)&lt;br /&gt;
*** NOTE: to &#039;execute&#039; a node, you must select the node so that it is highlighted and the corresponding workflow is shown in the smaller view window, then click on the &#039;execute&#039; button.&lt;br /&gt;
*** Prompts for the &#039;&#039;WRF directory&#039;&#039; (&#039;&#039;/Users/XXX/Desktop/visExample/sc2009outputs/&#039;&#039;)&lt;br /&gt;
*** Prompts for the &#039;&#039;VTK directory&#039;&#039; (&#039;&#039;/Users/XXX/Desktop/visExample/sc2009outputs/vtkFiles&#039;&#039;)&lt;br /&gt;
*** Wait for the conversion to complete (all modules turn green)&lt;br /&gt;
** Execute the &#039;&#039;&#039;Fire Demo Visualization&#039;&#039;&#039; node (top of the left most branch)&lt;br /&gt;
*** Prompts for the &#039;&#039;VTK directory&#039;&#039; (&#039;&#039;/Users/XXX/Desktop/visExample/sc2009outputs/vtkFiles&#039;&#039;)&lt;br /&gt;
*** Prompts for the &#039;&#039;Animation Delay&#039;&#039; (hit enter)&lt;br /&gt;
*** View the spread sheet to interact with the visualization&lt;br /&gt;
&lt;br /&gt;
=== Interacting with the Visualization ===&lt;br /&gt;
[[File:Sc2009results.png|600px]]&lt;br /&gt;
* left click will rotate the visualization&lt;br /&gt;
* Shift-left click will pan the visualization&lt;br /&gt;
* Ctrl-left click will zoom the visualization&lt;br /&gt;
* &#039;&#039;&#039;l&#039;&#039;&#039; (lower case L) toggles the streamline widget&lt;br /&gt;
* left click on the sreamline widget moves it around&lt;br /&gt;
* left click on the play widgets (left to right)&lt;br /&gt;
** &#039;&#039;step back&#039;&#039; -- step backwards one frame in the simulation&lt;br /&gt;
** &#039;&#039;play back&#039;&#039; -- play the simulation backwards&lt;br /&gt;
** &#039;&#039;stop&#039;&#039; -- pauses the simulation animation&lt;br /&gt;
** &#039;&#039;play forward&#039;&#039; -- play the simulation forward&lt;br /&gt;
** &#039;&#039;step forward&#039;&#039; -- step forward one frame in the simulation&lt;br /&gt;
&lt;br /&gt;
== Cluster-based Simulation Execution ==&lt;br /&gt;
=== Setting up the Python server on a remote machine or cluster ===&lt;br /&gt;
* Build the simulation binaries on the cluster&lt;br /&gt;
* On the cluster setup a home directory for the server&lt;br /&gt;
* Within this directory create virtual links to:&lt;br /&gt;
** &#039;&#039;&#039;ideal.exe&#039;&#039;&#039; -- the ideal simulation setup executable&lt;br /&gt;
** &#039;&#039;&#039;real.exe&#039;&#039;&#039; -- the real simulation setup executable&lt;br /&gt;
** &#039;&#039;&#039;wrf.exe&#039;&#039;&#039; -- the simulation binary&lt;br /&gt;
* Within this directory copy over the server files from the previous tar ball&lt;br /&gt;
** &#039;&#039;&#039;demoNetwork/execServer.py&#039;&#039;&#039; -- to be used on the cluster to launch the server&lt;br /&gt;
** &#039;&#039;&#039;demoNetwork/fireServer.py&#039;&#039;&#039; -- the server code&lt;br /&gt;
** &#039;&#039;&#039;demoNetwork/fireMessages.py&#039;&#039;&#039; -- the message passing scheme and code&lt;br /&gt;
** &#039;&#039;&#039;demoNetwork/userRegistration.py&#039;&#039;&#039; -- user registration script&lt;br /&gt;
** &#039;&#039;&#039;demoNetwork/README.txt&#039;&#039;&#039; -- a readme file explaining server setup in more detail&lt;br /&gt;
* Execute the python script to start the server (requires python 2.5 or greater)&lt;br /&gt;
** On the command line within the directory: &#039;&#039;python execServer.py&#039;&#039;&lt;br /&gt;
* View and remember the listening port output by the server&lt;br /&gt;
&lt;br /&gt;
=== Registering New Users with the Server ===&lt;br /&gt;
* Log in to the cluster hosting the server&lt;br /&gt;
* Change to the server home directory on the cluster&lt;br /&gt;
* Execute the python script for user registration&lt;br /&gt;
** On the command line: &#039;&#039;python userRegistration.py &amp;lt;username&amp;gt; &amp;lt;password&amp;gt;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
=== Executing Remote Simulations ===&lt;br /&gt;
* Run VisTrails and open the workflow (&#039;&#039;&#039;fireDemoSC2009.vt&#039;&#039;&#039;)&lt;br /&gt;
&lt;br /&gt;
* The &#039;&#039;&#039;Execute Simulation (real)&#039;&#039;&#039; node (top of the middle branch): Execution of this workflow sends an execution request to the server.  The VisTrails client communicates with the remote server using the md5 checksum of the simulation input files as a unique identifier.  The server will execute the simulation IFF it is not already stored within the user database.  Consequently, repeated execution requests of the same simulations will be ignored, only the first being executed.&lt;br /&gt;
** Prompts for the &#039;&#039;Server Name&#039;&#039;&lt;br /&gt;
** Prompts for the &#039;&#039;Username&#039;&#039;&lt;br /&gt;
** Prompts for the &#039;&#039;Password&#039;&#039; (this is the &#039;&#039;user registered&#039;&#039; password)&lt;br /&gt;
** Prompts for the &#039;&#039;Local Simulation Directory&#039;&#039; (&#039;&#039;/Users/XXX/Desktop/visExample/sc2009inputs/&#039;&#039;)&lt;br /&gt;
** Prompts for the &#039;&#039;Server port&#039;&#039; (this is the number remembered during server setup)&lt;br /&gt;
&lt;br /&gt;
* The &#039;&#039;&#039;Update Simulation (real)&#039;&#039;&#039; node (upper middle of the middle branch): Execution of this workflow will query the server for the latest &#039;&#039;WRFOUT&#039;&#039; files produced by the simulation for the given input files.  If the md5 checksum of the &#039;&#039;WRFOUT&#039;&#039; does not match between the server and the client, then the file is sent from the cluster to your local machine.  No files are sent from the server to the client if the md5 checksums are the same or if the server does not have a simulation recorded for the given input files.&lt;br /&gt;
** Prompts for the &#039;&#039;Server Name&#039;&#039;&lt;br /&gt;
** Prompts for the &#039;&#039;Username&#039;&#039;&lt;br /&gt;
** Prompts for the &#039;&#039;Password&#039;&#039; (this is the &#039;&#039;user registered&#039;&#039; password)&lt;br /&gt;
** Prompts for the &#039;&#039;Local Simulation Directory&#039;&#039; (&#039;&#039;/Users/XXX/Desktop/visExample/sc2009inputs/&#039;&#039;)&lt;br /&gt;
** Prompts for the &#039;&#039;Server port&#039;&#039; (this is the number remembered during server setup)&lt;br /&gt;
&lt;br /&gt;
* The &#039;&#039;&#039;Stop Simulation (real)&#039;&#039;&#039; node (lower middle of the middle branch): Execution of this workflow will send a termination request of the simulation to the server.  For simulations that run indefinitely, or are running for a long time, the user can explicitly terminate their continued computation.  The workflow prompts the user for the local directory of the input files, used as a means of identifying the simulation to which the user is referring.&lt;br /&gt;
** Prompts for the &#039;&#039;Server Name&#039;&#039;&lt;br /&gt;
** Prompts for the &#039;&#039;Username&#039;&#039;&lt;br /&gt;
** Prompts for the &#039;&#039;Password&#039;&#039; (this is the &#039;&#039;user registered&#039;&#039; password)&lt;br /&gt;
** Prompts for the &#039;&#039;Local Simulation Directory&#039;&#039; (&#039;&#039;/Users/XXX/Desktop/visExample/sc2009inputs/&#039;&#039;)&lt;br /&gt;
** Prompts for the &#039;&#039;Server port&#039;&#039; (this is the number remembered during server setup)&lt;br /&gt;
&lt;br /&gt;
* The &#039;&#039;&#039;Delete Simulation (real)&#039;&#039;&#039; node (lower middle of the middle branch): Execution of this workflow will send a deletion request of the simulation to the server.  After a simulation is run, it will remain on the server until it is explicitly deleted by the user.  Consequently, if a user terminates a simulation, then wishes to re-run the simulation, they must first delete it.  Otherwise, subsequent re-runs of the simulation will not occur because the server views the simulation as already executed.&lt;br /&gt;
** Prompts for the &#039;&#039;Server Name&#039;&#039;&lt;br /&gt;
** Prompts for the &#039;&#039;Username&#039;&#039;&lt;br /&gt;
** Prompts for the &#039;&#039;Password&#039;&#039; (this is the &#039;&#039;user registered&#039;&#039; password)&lt;br /&gt;
** Prompts for the &#039;&#039;Local Simulation Directory&#039;&#039; (&#039;&#039;/Users/XXX/Desktop/visExample/sc2009inputs/&#039;&#039;)&lt;br /&gt;
** Prompts for the &#039;&#039;Server port&#039;&#039; (this is the number remembered during server setup)&lt;br /&gt;
&lt;br /&gt;
== Super Computing 2009 Demo ==&lt;br /&gt;
* A full simulation to visualization scenario:&lt;br /&gt;
** Execute the &#039;&#039;&#039;Execute Simulation (real)&#039;&#039;&#039; workflow&lt;br /&gt;
** Wait.&lt;br /&gt;
** Execute the &#039;&#039;&#039;Update Simulation (real)&#039;&#039;&#039; workflow&lt;br /&gt;
** Execute the &#039;&#039;&#039;WRFOUT Conversion&#039;&#039;&#039; workflow&lt;br /&gt;
** Execute the &#039;&#039;&#039;Fire Demo Visualization&#039;&#039;&#039; workflow&lt;br /&gt;
&lt;br /&gt;
== Works with ==&lt;br /&gt;
&lt;br /&gt;
* VisTrails 1.4.1 revision 1693 (2010-01-28 14:00) on Mac OS X 10.6.2&lt;br /&gt;
* WRF-Fire {{WRF-Fire-commit|d08007ddfcd8c59095caf42f7633048b9a541732|d08007ddfcd8c59095caf42f7633048b9a541732}} on Rocks 5.1 Centos 5.3 gfortran-gcc  4.1.2, openmpi_gcc-1.2.8&lt;br /&gt;
&lt;br /&gt;
[[Category:WRF-Fire]]&lt;br /&gt;
[[Category:Howtos|Visualize WRF-Fire output in VisTrails]]&lt;/div&gt;</summary>
		<author><name>Jdaniels</name></author>
	</entry>
	<entry>
		<id>https://wiki.openwfm.org/index.php?title=How_to_visualize_WRF-Fire_output_in_VisTrails&amp;diff=1072</id>
		<title>How to visualize WRF-Fire output in VisTrails</title>
		<link rel="alternate" type="text/html" href="https://wiki.openwfm.org/index.php?title=How_to_visualize_WRF-Fire_output_in_VisTrails&amp;diff=1072"/>
		<updated>2010-06-28T21:47:53Z</updated>

		<summary type="html">&lt;p&gt;Jdaniels: /* Local Simulation Execution */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Simulation Execution ==&lt;br /&gt;
&lt;br /&gt;
* [[How to run WRF-Fire|Download, install and run WRF-Fire]]. This can be done on a different computer; you will only need to move the output files.&lt;br /&gt;
** To get enough frames, before running WRF-Fire, change in &#039;&#039;&#039;namelist.input&#039;&#039;&#039; the line with &#039;&#039;&#039;history_interval&#039;&#039;&#039; to the desired frame interval in seconds, for example &#039;&#039;&#039;history_interval_s=1&#039;&#039;&#039;. &lt;br /&gt;
* Run WRF-Fire. The pictures below are from the &amp;quot;hill&amp;quot; ideal run in WRF-Fire.&lt;br /&gt;
* If the visualization computer is different from the computer where you run WRF-Fire, transfer the resulting &#039;&#039;&#039;wrfout&#039;&#039;&#039; files to the visualization computer&lt;br /&gt;
&lt;br /&gt;
== Simulation Visualization ==&lt;br /&gt;
* Download and install [http://www.vistrails.org VisTrails], and run it at least once.&lt;br /&gt;
* Get a copy of the &#039;&#039;&#039;wrf_vistrails&#039;&#039;&#039; repository. &lt;br /&gt;
** This is currently restricted to developers who have a shell account at &#039;&#039;&#039;math.ucdenver.edu&#039;&#039;&#039;  (substitute &#039;&#039;&#039;user&#039;&#039;&#039; for your own username)&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
git clone ssh://user@math.ucdenver.edu/home/grads/jbeezley/wrf_vistrails.git&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Download the tar ball ([http://math.ucdenver.edu/~jmandel/fires/scDemo2009.tar.gz])&lt;br /&gt;
** Place the VisTrails packages into &#039;&#039;&#039;/Users/XXX/.vistrails/userpackages/&#039;&#039;&#039;&lt;br /&gt;
*** &#039;&#039;&#039;NumSciPy&#039;&#039;&#039; -- contains the wrapper modules for NumPy and SciPy functions&lt;br /&gt;
*** &#039;&#039;&#039;WRFtoVTK&#039;&#039;&#039; -- contains the wrf to vtk file conversion modules&lt;br /&gt;
*** &#039;&#039;&#039;demoNetwork&#039;&#039;&#039; -- contains the client modules to communicate with the server&lt;br /&gt;
*** &#039;&#039;&#039;extendDialog&#039;&#039;&#039; -- contains masked text dialogs for passwords&lt;br /&gt;
** Move the VisTrails workflow to a known location (i.e. &#039;&#039;/Users/XXX/Desktop/visExample/&#039;&#039;)&lt;br /&gt;
*** &#039;&#039;&#039;fireDemoSC2009.vt&#039;&#039;&#039; -- the VisTrails workflow for conversion and visualization&lt;br /&gt;
** Move the simulation inputs to a known location (i.e. &#039;&#039;/Users/XXX/Desktop/visExample/&#039;&#039;)&lt;br /&gt;
*** &#039;&#039;&#039;sc2009inputs&#039;&#039;&#039; -- contains example simulation input files&lt;br /&gt;
&lt;br /&gt;
* Run the simulation with the example inputs (&#039;&#039;&#039;/Users/XXX/Desktop/visExample/sc2009inputs/&#039;&#039;&#039;)&lt;br /&gt;
** See pre-requisites above for details about the running and obtaining better time steps&lt;br /&gt;
** Wait for the simulation to complete&lt;br /&gt;
* Store the WRFOUT within a known directory (i.e. &#039;&#039;/Users/XXX/Desktop/visExample/sc2009outputs/&#039;&#039;)&lt;br /&gt;
** Setup a directory to save VTK files that will be generated from WRFOUT (i.e. &#039;&#039;/Users/XXX/Desktop/visExample/sc2009outputs/vtkFiles/&#039;&#039;)&lt;br /&gt;
&lt;br /&gt;
=== Visualization of Simulation Results ===&lt;br /&gt;
&lt;br /&gt;
[[File:Sc2009history.png|600px]]&lt;br /&gt;
* Run VisTrails and open the workflow (&#039;&#039;&#039;fireDemoSC2009.vt&#039;&#039;&#039;)&lt;br /&gt;
** Begin by navigating the history tree&lt;br /&gt;
** Execute the &#039;&#039;&#039;WRFOUT Conversion&#039;&#039;&#039; node (top of the right most branch)&lt;br /&gt;
*** NOTE: to &#039;execute&#039; a node, you must select the node so that it is highlighted and the corresponding workflow is shown in the smaller view window, then click on the &#039;execute&#039; button.&lt;br /&gt;
*** Prompts for the &#039;&#039;WRF directory&#039;&#039; (&#039;&#039;/Users/XXX/Desktop/visExample/sc2009outputs/&#039;&#039;)&lt;br /&gt;
*** Prompts for the &#039;&#039;VTK directory&#039;&#039; (&#039;&#039;/Users/XXX/Desktop/visExample/sc2009outputs/vtkFiles&#039;&#039;)&lt;br /&gt;
*** Wait for the conversion to complete (all modules turn green)&lt;br /&gt;
** Execute the &#039;&#039;&#039;Fire Demo Visualization&#039;&#039;&#039; node (top of the left most branch)&lt;br /&gt;
*** Prompts for the &#039;&#039;VTK directory&#039;&#039; (&#039;&#039;/Users/XXX/Desktop/visExample/sc2009outputs/vtkFiles&#039;&#039;)&lt;br /&gt;
*** Prompts for the &#039;&#039;Animation Delay&#039;&#039; (hit enter)&lt;br /&gt;
*** View the spread sheet to interact with the visualization&lt;br /&gt;
&lt;br /&gt;
=== Interacting with the Visualization ===&lt;br /&gt;
[[File:Sc2009results.png|600px]]&lt;br /&gt;
* left click will rotate the visualization&lt;br /&gt;
* Shift-left click will pan the visualization&lt;br /&gt;
* Ctrl-left click will zoom the visualization&lt;br /&gt;
* &#039;&#039;&#039;l&#039;&#039;&#039; (lower case L) toggles the streamline widget&lt;br /&gt;
* left click on the sreamline widget moves it around&lt;br /&gt;
* left click on the play widgets (left to right)&lt;br /&gt;
** &#039;&#039;step back&#039;&#039; -- step backwards one frame in the simulation&lt;br /&gt;
** &#039;&#039;play back&#039;&#039; -- play the simulation backwards&lt;br /&gt;
** &#039;&#039;stop&#039;&#039; -- pauses the simulation animation&lt;br /&gt;
** &#039;&#039;play forward&#039;&#039; -- play the simulation forward&lt;br /&gt;
** &#039;&#039;step forward&#039;&#039; -- step forward one frame in the simulation&lt;br /&gt;
&lt;br /&gt;
== Cluster-based Simulation Execution ==&lt;br /&gt;
=== Setting up the Python server on a remote machine or cluster ===&lt;br /&gt;
* Build the simulation binaries on the cluster&lt;br /&gt;
* On the cluster setup a home directory for the server&lt;br /&gt;
* Within this directory create virtual links to:&lt;br /&gt;
** &#039;&#039;&#039;ideal.exe&#039;&#039;&#039; -- the ideal simulation setup executable&lt;br /&gt;
** &#039;&#039;&#039;real.exe&#039;&#039;&#039; -- the real simulation setup executable&lt;br /&gt;
** &#039;&#039;&#039;wrf.exe&#039;&#039;&#039; -- the simulation binary&lt;br /&gt;
* Within this directory copy over the server files from the previous tar ball&lt;br /&gt;
** &#039;&#039;&#039;demoNetwork/execServer.py&#039;&#039;&#039; -- to be used on the cluster to launch the server&lt;br /&gt;
** &#039;&#039;&#039;demoNetwork/fireServer.py&#039;&#039;&#039; -- the server code&lt;br /&gt;
** &#039;&#039;&#039;demoNetwork/fireMessages.py&#039;&#039;&#039; -- the message passing scheme and code&lt;br /&gt;
** &#039;&#039;&#039;demoNetwork/userRegistration.py&#039;&#039;&#039; -- user registration script&lt;br /&gt;
** &#039;&#039;&#039;demoNetwork/README.txt&#039;&#039;&#039; -- a readme file explaining server setup in more detail&lt;br /&gt;
* Execute the python script to start the server (requires python 2.5 or greater)&lt;br /&gt;
** On the command line within the directory: &#039;&#039;python execServer.py&#039;&#039;&lt;br /&gt;
* View and remember the listening port output by the server&lt;br /&gt;
&lt;br /&gt;
=== Registering New Users with the Server ===&lt;br /&gt;
* Log in to the cluster hosting the server&lt;br /&gt;
* Change to the server home directory on the cluster&lt;br /&gt;
* Execute the python script for user registration&lt;br /&gt;
** On the command line: &#039;&#039;python userRegistration.py &amp;lt;username&amp;gt; &amp;lt;password&amp;gt;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
=== Executing Remote Simulations ===&lt;br /&gt;
* Run VisTrails and open the workflow (&#039;&#039;&#039;fireDemoSC2009.vt&#039;&#039;&#039;)&lt;br /&gt;
&lt;br /&gt;
* The &#039;&#039;&#039;Execute Simulation (real)&#039;&#039;&#039; node (top of the middle branch): Execution of this workflow sends an execution request to the server.  The VisTrails client communicates with the remote server using the md5 checksum of the simulation input files as a unique identifier.  The server will execute the simulation IFF it is not already stored within the user database.  Consequently, repeated execution requests of the same simulations will be ignored, only the first being executed.&lt;br /&gt;
** Prompts for the &#039;&#039;Server Name&#039;&#039;&lt;br /&gt;
** Prompts for the &#039;&#039;Username&#039;&#039;&lt;br /&gt;
** Prompts for the &#039;&#039;Password&#039;&#039; (this is the &#039;&#039;user registered&#039;&#039; password)&lt;br /&gt;
** Prompts for the &#039;&#039;Local Simulation Directory&#039;&#039; (&#039;&#039;/Users/XXX/Desktop/visExample/sc2009inputs/&#039;&#039;)&lt;br /&gt;
** Prompts for the &#039;&#039;Server port&#039;&#039; (this is the number remembered during server setup)&lt;br /&gt;
&lt;br /&gt;
* The &#039;&#039;&#039;Update Simulation (real)&#039;&#039;&#039; node (upper middle of the middle branch): Execution of this workflow will query the server for the latest &#039;&#039;WRFOUT&#039;&#039; files produced by the simulation for the given input files.  If the md5 checksum of the &#039;&#039;WRFOUT&#039;&#039; does not match between the server and the client, then the file is sent from the cluster to your local machine.  No files are sent from the server to the client if the md5 checksums are the same or if the server does not have a simulation recorded for the given input files.&lt;br /&gt;
** Prompts for the &#039;&#039;Server Name&#039;&#039;&lt;br /&gt;
** Prompts for the &#039;&#039;Username&#039;&#039;&lt;br /&gt;
** Prompts for the &#039;&#039;Password&#039;&#039; (this is the &#039;&#039;user registered&#039;&#039; password)&lt;br /&gt;
** Prompts for the &#039;&#039;Local Simulation Directory&#039;&#039; (&#039;&#039;/Users/XXX/Desktop/visExample/sc2009inputs/&#039;&#039;)&lt;br /&gt;
** Prompts for the &#039;&#039;Server port&#039;&#039; (this is the number remembered during server setup)&lt;br /&gt;
&lt;br /&gt;
* The &#039;&#039;&#039;Stop Simulation (real)&#039;&#039;&#039; node (lower middle of the middle branch): Execution of this workflow will send a termination request of the simulation to the server.  For simulations that run indefinitely, or are running for a long time, the user can explicitly terminate their continued computation.  The workflow prompts the user for the local directory of the input files, used as a means of identifying the simulation to which the user is referring.&lt;br /&gt;
** Prompts for the &#039;&#039;Server Name&#039;&#039;&lt;br /&gt;
** Prompts for the &#039;&#039;Username&#039;&#039;&lt;br /&gt;
** Prompts for the &#039;&#039;Password&#039;&#039; (this is the &#039;&#039;user registered&#039;&#039; password)&lt;br /&gt;
** Prompts for the &#039;&#039;Local Simulation Directory&#039;&#039; (&#039;&#039;/Users/XXX/Desktop/visExample/sc2009inputs/&#039;&#039;)&lt;br /&gt;
** Prompts for the &#039;&#039;Server port&#039;&#039; (this is the number remembered during server setup)&lt;br /&gt;
&lt;br /&gt;
* The &#039;&#039;&#039;Delete Simulation (real)&#039;&#039;&#039; node (lower middle of the middle branch): Execution of this workflow will send a deletion request of the simulation to the server.  After a simulation is run, it will remain on the server until it is explicitly deleted by the user.  Consequently, if a user terminates a simulation, then wishes to re-run the simulation, they must first delete it.  Otherwise, subsequent re-runs of the simulation will not occur because the server views the simulation as already executed.&lt;br /&gt;
** Prompts for the &#039;&#039;Server Name&#039;&#039;&lt;br /&gt;
** Prompts for the &#039;&#039;Username&#039;&#039;&lt;br /&gt;
** Prompts for the &#039;&#039;Password&#039;&#039; (this is the &#039;&#039;user registered&#039;&#039; password)&lt;br /&gt;
** Prompts for the &#039;&#039;Local Simulation Directory&#039;&#039; (&#039;&#039;/Users/XXX/Desktop/visExample/sc2009inputs/&#039;&#039;)&lt;br /&gt;
** Prompts for the &#039;&#039;Server port&#039;&#039; (this is the number remembered during server setup)&lt;br /&gt;
&lt;br /&gt;
== Super Computing 2009 Demo ==&lt;br /&gt;
* A full simulation to visualization scenario:&lt;br /&gt;
** Execute the &#039;&#039;&#039;Execute Simulation (real)&#039;&#039;&#039; workflow&lt;br /&gt;
** Wait.&lt;br /&gt;
** Execute the &#039;&#039;&#039;Update Simulation (real)&#039;&#039;&#039; workflow&lt;br /&gt;
** Execute the &#039;&#039;&#039;WRFOUT Conversion&#039;&#039;&#039; workflow&lt;br /&gt;
** Execute the &#039;&#039;&#039;Fire Demo Visualization&#039;&#039;&#039; workflow&lt;br /&gt;
&lt;br /&gt;
== Works with ==&lt;br /&gt;
&lt;br /&gt;
* VisTrails 1.4.1 revision 1693 (2010-01-28 14:00) on Mac OS X 10.6.2&lt;br /&gt;
* WRF-Fire {{WRF-Fire-commit|d08007ddfcd8c59095caf42f7633048b9a541732|d08007ddfcd8c59095caf42f7633048b9a541732}} on Rocks 5.1 Centos 5.3 gfortran-gcc  4.1.2, openmpi_gcc-1.2.8&lt;br /&gt;
&lt;br /&gt;
[[Category:WRF-Fire]]&lt;br /&gt;
[[Category:Howtos|Visualize WRF-Fire output in VisTrails]]&lt;/div&gt;</summary>
		<author><name>Jdaniels</name></author>
	</entry>
	<entry>
		<id>https://wiki.openwfm.org/index.php?title=How_to_visualize_WRF-Fire_output_in_VisTrails&amp;diff=1071</id>
		<title>How to visualize WRF-Fire output in VisTrails</title>
		<link rel="alternate" type="text/html" href="https://wiki.openwfm.org/index.php?title=How_to_visualize_WRF-Fire_output_in_VisTrails&amp;diff=1071"/>
		<updated>2010-06-28T20:56:03Z</updated>

		<summary type="html">&lt;p&gt;Jdaniels: /* Simulation Visualization */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Simulation Execution ==&lt;br /&gt;
&lt;br /&gt;
* [[How to run WRF-Fire|Download, install and run WRF-Fire]]. This can be done on a different computer; you will only need to move the output files.&lt;br /&gt;
** To get enough frames, before running WRF-Fire, change in &#039;&#039;&#039;namelist.input&#039;&#039;&#039; the line with &#039;&#039;&#039;history_interval&#039;&#039;&#039; to the desired frame interval in seconds, for example &#039;&#039;&#039;history_interval_s=1&#039;&#039;&#039;. &lt;br /&gt;
* Run WRF-Fire. The pictures below are from the &amp;quot;hill&amp;quot; ideal run in WRF-Fire.&lt;br /&gt;
* If the visualization computer is different from the computer where you run WRF-Fire, transfer the resulting &#039;&#039;&#039;wrfout&#039;&#039;&#039; files to the visualization computer&lt;br /&gt;
&lt;br /&gt;
== Simulation Visualization ==&lt;br /&gt;
* Download and install [http://www.vistrails.org VisTrails], and run it at least once.&lt;br /&gt;
* Get a copy of the &#039;&#039;&#039;wrf_vistrails&#039;&#039;&#039; repository. &lt;br /&gt;
** This is currently restricted to developers who have a shell account at &#039;&#039;&#039;math.ucdenver.edu&#039;&#039;&#039;  (substitute &#039;&#039;&#039;user&#039;&#039;&#039; for your own username)&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
git clone ssh://user@math.ucdenver.edu/home/grads/jbeezley/wrf_vistrails.git&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Local Simulation Execution ==&lt;br /&gt;
&lt;br /&gt;
* Download the tar ball ([http://math.ucdenver.edu/~jmandel/fires/scDemo2009.tar.gz])&lt;br /&gt;
** Place the VisTrails packages into &#039;&#039;&#039;/Users/XXX/.vistrails/userpackages/&#039;&#039;&#039;&lt;br /&gt;
*** &#039;&#039;&#039;NumSciPy&#039;&#039;&#039; -- contains the wrapper modules for NumPy and SciPy functions&lt;br /&gt;
*** &#039;&#039;&#039;WRFtoVTK&#039;&#039;&#039; -- contains the wrf to vtk file conversion modules&lt;br /&gt;
*** &#039;&#039;&#039;demoNetwork&#039;&#039;&#039; -- contains the client modules to communicate with the server&lt;br /&gt;
*** &#039;&#039;&#039;extendDialog&#039;&#039;&#039; -- contains masked text dialogs for passwords&lt;br /&gt;
** Move the VisTrails workflow to a known location (i.e. &#039;&#039;/Users/XXX/Desktop/visExample/&#039;&#039;)&lt;br /&gt;
*** &#039;&#039;&#039;fireDemoSC2009.vt&#039;&#039;&#039; -- the VisTrails workflow for conversion and visualization&lt;br /&gt;
** Move the simulation inputs to a known location (i.e. &#039;&#039;/Users/XXX/Desktop/visExample/&#039;&#039;)&lt;br /&gt;
*** &#039;&#039;&#039;sc2009inputs&#039;&#039;&#039; -- contains example simulation input files&lt;br /&gt;
&lt;br /&gt;
* Run the simulation with the example inputs (&#039;&#039;&#039;/Users/XXX/Desktop/visExample/sc2009inputs/&#039;&#039;&#039;)&lt;br /&gt;
** See pre-requisites above for details about the running and obtaining better time steps&lt;br /&gt;
** Wait for the simulation to complete&lt;br /&gt;
* Store the WRFOUT within a known directory (i.e. &#039;&#039;/Users/XXX/Desktop/visExample/sc2009outputs/&#039;&#039;)&lt;br /&gt;
** Setup a directory to save VTK files that will be generated from WRFOUT (i.e. &#039;&#039;/Users/XXX/Desktop/visExample/sc2009outputs/vtkFiles/&#039;&#039;)&lt;br /&gt;
&lt;br /&gt;
=== Visualization of Simulation Results ===&lt;br /&gt;
&lt;br /&gt;
[[File:Sc2009history.png|600px]]&lt;br /&gt;
* Run VisTrails and open the workflow (&#039;&#039;&#039;fireDemoSC2009.vt&#039;&#039;&#039;)&lt;br /&gt;
** Begin by navigating the history tree&lt;br /&gt;
** Execute the &#039;&#039;&#039;WRFOUT Conversion&#039;&#039;&#039; node (top of the right most branch)&lt;br /&gt;
*** NOTE: to &#039;execute&#039; a node, you must select the node so that it is highlighted and the corresponding workflow is shown in the smaller view window, then click on the &#039;execute&#039; button.&lt;br /&gt;
*** Prompts for the &#039;&#039;WRF directory&#039;&#039; (&#039;&#039;/Users/XXX/Desktop/visExample/sc2009outputs/&#039;&#039;)&lt;br /&gt;
*** Prompts for the &#039;&#039;VTK directory&#039;&#039; (&#039;&#039;/Users/XXX/Desktop/visExample/sc2009outputs/vtkFiles&#039;&#039;)&lt;br /&gt;
*** Wait for the conversion to complete (all modules turn green)&lt;br /&gt;
** Execute the &#039;&#039;&#039;Fire Demo Visualization&#039;&#039;&#039; node (top of the left most branch)&lt;br /&gt;
*** Prompts for the &#039;&#039;VTK directory&#039;&#039; (&#039;&#039;/Users/XXX/Desktop/visExample/sc2009outputs/vtkFiles&#039;&#039;)&lt;br /&gt;
*** Prompts for the &#039;&#039;Animation Delay&#039;&#039; (hit enter)&lt;br /&gt;
*** View the spread sheet to interact with the visualization&lt;br /&gt;
&lt;br /&gt;
=== Interacting with the Visualization ===&lt;br /&gt;
[[File:Sc2009results.png|600px]]&lt;br /&gt;
* left click will rotate the visualization&lt;br /&gt;
* Shift-left click will pan the visualization&lt;br /&gt;
* Ctrl-left click will zoom the visualization&lt;br /&gt;
* &#039;&#039;&#039;l&#039;&#039;&#039; (lower case L) toggles the streamline widget&lt;br /&gt;
* left click on the sreamline widget moves it around&lt;br /&gt;
* left click on the play widgets (left to right)&lt;br /&gt;
** &#039;&#039;step back&#039;&#039; -- step backwards one frame in the simulation&lt;br /&gt;
** &#039;&#039;play back&#039;&#039; -- play the simulation backwards&lt;br /&gt;
** &#039;&#039;stop&#039;&#039; -- pauses the simulation animation&lt;br /&gt;
** &#039;&#039;play forward&#039;&#039; -- play the simulation forward&lt;br /&gt;
** &#039;&#039;step forward&#039;&#039; -- step forward one frame in the simulation&lt;br /&gt;
&lt;br /&gt;
== Cluster-based Simulation Execution ==&lt;br /&gt;
=== Setting up the Python server on a remote machine or cluster ===&lt;br /&gt;
* Build the simulation binaries on the cluster&lt;br /&gt;
* On the cluster setup a home directory for the server&lt;br /&gt;
* Within this directory create virtual links to:&lt;br /&gt;
** &#039;&#039;&#039;ideal.exe&#039;&#039;&#039; -- the ideal simulation setup executable&lt;br /&gt;
** &#039;&#039;&#039;real.exe&#039;&#039;&#039; -- the real simulation setup executable&lt;br /&gt;
** &#039;&#039;&#039;wrf.exe&#039;&#039;&#039; -- the simulation binary&lt;br /&gt;
* Within this directory copy over the server files from the previous tar ball&lt;br /&gt;
** &#039;&#039;&#039;demoNetwork/execServer.py&#039;&#039;&#039; -- to be used on the cluster to launch the server&lt;br /&gt;
** &#039;&#039;&#039;demoNetwork/fireServer.py&#039;&#039;&#039; -- the server code&lt;br /&gt;
** &#039;&#039;&#039;demoNetwork/fireMessages.py&#039;&#039;&#039; -- the message passing scheme and code&lt;br /&gt;
** &#039;&#039;&#039;demoNetwork/userRegistration.py&#039;&#039;&#039; -- user registration script&lt;br /&gt;
** &#039;&#039;&#039;demoNetwork/README.txt&#039;&#039;&#039; -- a readme file explaining server setup in more detail&lt;br /&gt;
* Execute the python script to start the server (requires python 2.5 or greater)&lt;br /&gt;
** On the command line within the directory: &#039;&#039;python execServer.py&#039;&#039;&lt;br /&gt;
* View and remember the listening port output by the server&lt;br /&gt;
&lt;br /&gt;
=== Registering New Users with the Server ===&lt;br /&gt;
* Log in to the cluster hosting the server&lt;br /&gt;
* Change to the server home directory on the cluster&lt;br /&gt;
* Execute the python script for user registration&lt;br /&gt;
** On the command line: &#039;&#039;python userRegistration.py &amp;lt;username&amp;gt; &amp;lt;password&amp;gt;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
=== Executing Remote Simulations ===&lt;br /&gt;
* Run VisTrails and open the workflow (&#039;&#039;&#039;fireDemoSC2009.vt&#039;&#039;&#039;)&lt;br /&gt;
&lt;br /&gt;
* The &#039;&#039;&#039;Execute Simulation (real)&#039;&#039;&#039; node (top of the middle branch): Execution of this workflow sends an execution request to the server.  The VisTrails client communicates with the remote server using the md5 checksum of the simulation input files as a unique identifier.  The server will execute the simulation IFF it is not already stored within the user database.  Consequently, repeated execution requests of the same simulations will be ignored, only the first being executed.&lt;br /&gt;
** Prompts for the &#039;&#039;Server Name&#039;&#039;&lt;br /&gt;
** Prompts for the &#039;&#039;Username&#039;&#039;&lt;br /&gt;
** Prompts for the &#039;&#039;Password&#039;&#039; (this is the &#039;&#039;user registered&#039;&#039; password)&lt;br /&gt;
** Prompts for the &#039;&#039;Local Simulation Directory&#039;&#039; (&#039;&#039;/Users/XXX/Desktop/visExample/sc2009inputs/&#039;&#039;)&lt;br /&gt;
** Prompts for the &#039;&#039;Server port&#039;&#039; (this is the number remembered during server setup)&lt;br /&gt;
&lt;br /&gt;
* The &#039;&#039;&#039;Update Simulation (real)&#039;&#039;&#039; node (upper middle of the middle branch): Execution of this workflow will query the server for the latest &#039;&#039;WRFOUT&#039;&#039; files produced by the simulation for the given input files.  If the md5 checksum of the &#039;&#039;WRFOUT&#039;&#039; does not match between the server and the client, then the file is sent from the cluster to your local machine.  No files are sent from the server to the client if the md5 checksums are the same or if the server does not have a simulation recorded for the given input files.&lt;br /&gt;
** Prompts for the &#039;&#039;Server Name&#039;&#039;&lt;br /&gt;
** Prompts for the &#039;&#039;Username&#039;&#039;&lt;br /&gt;
** Prompts for the &#039;&#039;Password&#039;&#039; (this is the &#039;&#039;user registered&#039;&#039; password)&lt;br /&gt;
** Prompts for the &#039;&#039;Local Simulation Directory&#039;&#039; (&#039;&#039;/Users/XXX/Desktop/visExample/sc2009inputs/&#039;&#039;)&lt;br /&gt;
** Prompts for the &#039;&#039;Server port&#039;&#039; (this is the number remembered during server setup)&lt;br /&gt;
&lt;br /&gt;
* The &#039;&#039;&#039;Stop Simulation (real)&#039;&#039;&#039; node (lower middle of the middle branch): Execution of this workflow will send a termination request of the simulation to the server.  For simulations that run indefinitely, or are running for a long time, the user can explicitly terminate their continued computation.  The workflow prompts the user for the local directory of the input files, used as a means of identifying the simulation to which the user is referring.&lt;br /&gt;
** Prompts for the &#039;&#039;Server Name&#039;&#039;&lt;br /&gt;
** Prompts for the &#039;&#039;Username&#039;&#039;&lt;br /&gt;
** Prompts for the &#039;&#039;Password&#039;&#039; (this is the &#039;&#039;user registered&#039;&#039; password)&lt;br /&gt;
** Prompts for the &#039;&#039;Local Simulation Directory&#039;&#039; (&#039;&#039;/Users/XXX/Desktop/visExample/sc2009inputs/&#039;&#039;)&lt;br /&gt;
** Prompts for the &#039;&#039;Server port&#039;&#039; (this is the number remembered during server setup)&lt;br /&gt;
&lt;br /&gt;
* The &#039;&#039;&#039;Delete Simulation (real)&#039;&#039;&#039; node (lower middle of the middle branch): Execution of this workflow will send a deletion request of the simulation to the server.  After a simulation is run, it will remain on the server until it is explicitly deleted by the user.  Consequently, if a user terminates a simulation, then wishes to re-run the simulation, they must first delete it.  Otherwise, subsequent re-runs of the simulation will not occur because the server views the simulation as already executed.&lt;br /&gt;
** Prompts for the &#039;&#039;Server Name&#039;&#039;&lt;br /&gt;
** Prompts for the &#039;&#039;Username&#039;&#039;&lt;br /&gt;
** Prompts for the &#039;&#039;Password&#039;&#039; (this is the &#039;&#039;user registered&#039;&#039; password)&lt;br /&gt;
** Prompts for the &#039;&#039;Local Simulation Directory&#039;&#039; (&#039;&#039;/Users/XXX/Desktop/visExample/sc2009inputs/&#039;&#039;)&lt;br /&gt;
** Prompts for the &#039;&#039;Server port&#039;&#039; (this is the number remembered during server setup)&lt;br /&gt;
&lt;br /&gt;
== Super Computing 2009 Demo ==&lt;br /&gt;
* A full simulation to visualization scenario:&lt;br /&gt;
** Execute the &#039;&#039;&#039;Execute Simulation (real)&#039;&#039;&#039; workflow&lt;br /&gt;
** Wait.&lt;br /&gt;
** Execute the &#039;&#039;&#039;Update Simulation (real)&#039;&#039;&#039; workflow&lt;br /&gt;
** Execute the &#039;&#039;&#039;WRFOUT Conversion&#039;&#039;&#039; workflow&lt;br /&gt;
** Execute the &#039;&#039;&#039;Fire Demo Visualization&#039;&#039;&#039; workflow&lt;br /&gt;
&lt;br /&gt;
== Works with ==&lt;br /&gt;
&lt;br /&gt;
* VisTrails 1.4.1 revision 1693 (2010-01-28 14:00) on Mac OS X 10.6.2&lt;br /&gt;
* WRF-Fire {{WRF-Fire-commit|d08007ddfcd8c59095caf42f7633048b9a541732|d08007ddfcd8c59095caf42f7633048b9a541732}} on Rocks 5.1 Centos 5.3 gfortran-gcc  4.1.2, openmpi_gcc-1.2.8&lt;br /&gt;
&lt;br /&gt;
[[Category:WRF-Fire]]&lt;br /&gt;
[[Category:Howtos|Visualize WRF-Fire output in VisTrails]]&lt;/div&gt;</summary>
		<author><name>Jdaniels</name></author>
	</entry>
	<entry>
		<id>https://wiki.openwfm.org/index.php?title=How_to_visualize_WRF-Fire_output_in_VisTrails&amp;diff=1070</id>
		<title>How to visualize WRF-Fire output in VisTrails</title>
		<link rel="alternate" type="text/html" href="https://wiki.openwfm.org/index.php?title=How_to_visualize_WRF-Fire_output_in_VisTrails&amp;diff=1070"/>
		<updated>2010-06-28T20:55:17Z</updated>

		<summary type="html">&lt;p&gt;Jdaniels: /* Prerequisities */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Simulation Execution ==&lt;br /&gt;
&lt;br /&gt;
* [[How to run WRF-Fire|Download, install and run WRF-Fire]]. This can be done on a different computer; you will only need to move the output files.&lt;br /&gt;
** To get enough frames, before running WRF-Fire, change in &#039;&#039;&#039;namelist.input&#039;&#039;&#039; the line with &#039;&#039;&#039;history_interval&#039;&#039;&#039; to the desired frame interval in seconds, for example &#039;&#039;&#039;history_interval_s=1&#039;&#039;&#039;. &lt;br /&gt;
* Run WRF-Fire. The pictures below are from the &amp;quot;hill&amp;quot; ideal run in WRF-Fire.&lt;br /&gt;
* If the visualization computer is different from the computer where you run WRF-Fire, transfer the resulting &#039;&#039;&#039;wrfout&#039;&#039;&#039; files to the visualization computer&lt;br /&gt;
&lt;br /&gt;
== Simulation Visualization ==&lt;br /&gt;
* Download and install [http://www.vistrails.org VisTrails], and run it at least once.&lt;br /&gt;
* Get a copy of the &#039;&#039;&#039;wrf_vistrails&#039;&#039;&#039; repository. This is currently restricted to developers who have a shell account at &#039;&#039;&#039;math.ucdenver.edu&#039;&#039;&#039;  (substitute &#039;&#039;&#039;user&#039;&#039;&#039; for your own username)&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
git clone ssh://user@math.ucdenver.edu/home/grads/jbeezley/wrf_vistrails.git&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Local Simulation Execution ==&lt;br /&gt;
&lt;br /&gt;
* Download the tar ball ([http://math.ucdenver.edu/~jmandel/fires/scDemo2009.tar.gz])&lt;br /&gt;
** Place the VisTrails packages into &#039;&#039;&#039;/Users/XXX/.vistrails/userpackages/&#039;&#039;&#039;&lt;br /&gt;
*** &#039;&#039;&#039;NumSciPy&#039;&#039;&#039; -- contains the wrapper modules for NumPy and SciPy functions&lt;br /&gt;
*** &#039;&#039;&#039;WRFtoVTK&#039;&#039;&#039; -- contains the wrf to vtk file conversion modules&lt;br /&gt;
*** &#039;&#039;&#039;demoNetwork&#039;&#039;&#039; -- contains the client modules to communicate with the server&lt;br /&gt;
*** &#039;&#039;&#039;extendDialog&#039;&#039;&#039; -- contains masked text dialogs for passwords&lt;br /&gt;
** Move the VisTrails workflow to a known location (i.e. &#039;&#039;/Users/XXX/Desktop/visExample/&#039;&#039;)&lt;br /&gt;
*** &#039;&#039;&#039;fireDemoSC2009.vt&#039;&#039;&#039; -- the VisTrails workflow for conversion and visualization&lt;br /&gt;
** Move the simulation inputs to a known location (i.e. &#039;&#039;/Users/XXX/Desktop/visExample/&#039;&#039;)&lt;br /&gt;
*** &#039;&#039;&#039;sc2009inputs&#039;&#039;&#039; -- contains example simulation input files&lt;br /&gt;
&lt;br /&gt;
* Run the simulation with the example inputs (&#039;&#039;&#039;/Users/XXX/Desktop/visExample/sc2009inputs/&#039;&#039;&#039;)&lt;br /&gt;
** See pre-requisites above for details about the running and obtaining better time steps&lt;br /&gt;
** Wait for the simulation to complete&lt;br /&gt;
* Store the WRFOUT within a known directory (i.e. &#039;&#039;/Users/XXX/Desktop/visExample/sc2009outputs/&#039;&#039;)&lt;br /&gt;
** Setup a directory to save VTK files that will be generated from WRFOUT (i.e. &#039;&#039;/Users/XXX/Desktop/visExample/sc2009outputs/vtkFiles/&#039;&#039;)&lt;br /&gt;
&lt;br /&gt;
=== Visualization of Simulation Results ===&lt;br /&gt;
&lt;br /&gt;
[[File:Sc2009history.png|600px]]&lt;br /&gt;
* Run VisTrails and open the workflow (&#039;&#039;&#039;fireDemoSC2009.vt&#039;&#039;&#039;)&lt;br /&gt;
** Begin by navigating the history tree&lt;br /&gt;
** Execute the &#039;&#039;&#039;WRFOUT Conversion&#039;&#039;&#039; node (top of the right most branch)&lt;br /&gt;
*** NOTE: to &#039;execute&#039; a node, you must select the node so that it is highlighted and the corresponding workflow is shown in the smaller view window, then click on the &#039;execute&#039; button.&lt;br /&gt;
*** Prompts for the &#039;&#039;WRF directory&#039;&#039; (&#039;&#039;/Users/XXX/Desktop/visExample/sc2009outputs/&#039;&#039;)&lt;br /&gt;
*** Prompts for the &#039;&#039;VTK directory&#039;&#039; (&#039;&#039;/Users/XXX/Desktop/visExample/sc2009outputs/vtkFiles&#039;&#039;)&lt;br /&gt;
*** Wait for the conversion to complete (all modules turn green)&lt;br /&gt;
** Execute the &#039;&#039;&#039;Fire Demo Visualization&#039;&#039;&#039; node (top of the left most branch)&lt;br /&gt;
*** Prompts for the &#039;&#039;VTK directory&#039;&#039; (&#039;&#039;/Users/XXX/Desktop/visExample/sc2009outputs/vtkFiles&#039;&#039;)&lt;br /&gt;
*** Prompts for the &#039;&#039;Animation Delay&#039;&#039; (hit enter)&lt;br /&gt;
*** View the spread sheet to interact with the visualization&lt;br /&gt;
&lt;br /&gt;
=== Interacting with the Visualization ===&lt;br /&gt;
[[File:Sc2009results.png|600px]]&lt;br /&gt;
* left click will rotate the visualization&lt;br /&gt;
* Shift-left click will pan the visualization&lt;br /&gt;
* Ctrl-left click will zoom the visualization&lt;br /&gt;
* &#039;&#039;&#039;l&#039;&#039;&#039; (lower case L) toggles the streamline widget&lt;br /&gt;
* left click on the sreamline widget moves it around&lt;br /&gt;
* left click on the play widgets (left to right)&lt;br /&gt;
** &#039;&#039;step back&#039;&#039; -- step backwards one frame in the simulation&lt;br /&gt;
** &#039;&#039;play back&#039;&#039; -- play the simulation backwards&lt;br /&gt;
** &#039;&#039;stop&#039;&#039; -- pauses the simulation animation&lt;br /&gt;
** &#039;&#039;play forward&#039;&#039; -- play the simulation forward&lt;br /&gt;
** &#039;&#039;step forward&#039;&#039; -- step forward one frame in the simulation&lt;br /&gt;
&lt;br /&gt;
== Cluster-based Simulation Execution ==&lt;br /&gt;
=== Setting up the Python server on a remote machine or cluster ===&lt;br /&gt;
* Build the simulation binaries on the cluster&lt;br /&gt;
* On the cluster setup a home directory for the server&lt;br /&gt;
* Within this directory create virtual links to:&lt;br /&gt;
** &#039;&#039;&#039;ideal.exe&#039;&#039;&#039; -- the ideal simulation setup executable&lt;br /&gt;
** &#039;&#039;&#039;real.exe&#039;&#039;&#039; -- the real simulation setup executable&lt;br /&gt;
** &#039;&#039;&#039;wrf.exe&#039;&#039;&#039; -- the simulation binary&lt;br /&gt;
* Within this directory copy over the server files from the previous tar ball&lt;br /&gt;
** &#039;&#039;&#039;demoNetwork/execServer.py&#039;&#039;&#039; -- to be used on the cluster to launch the server&lt;br /&gt;
** &#039;&#039;&#039;demoNetwork/fireServer.py&#039;&#039;&#039; -- the server code&lt;br /&gt;
** &#039;&#039;&#039;demoNetwork/fireMessages.py&#039;&#039;&#039; -- the message passing scheme and code&lt;br /&gt;
** &#039;&#039;&#039;demoNetwork/userRegistration.py&#039;&#039;&#039; -- user registration script&lt;br /&gt;
** &#039;&#039;&#039;demoNetwork/README.txt&#039;&#039;&#039; -- a readme file explaining server setup in more detail&lt;br /&gt;
* Execute the python script to start the server (requires python 2.5 or greater)&lt;br /&gt;
** On the command line within the directory: &#039;&#039;python execServer.py&#039;&#039;&lt;br /&gt;
* View and remember the listening port output by the server&lt;br /&gt;
&lt;br /&gt;
=== Registering New Users with the Server ===&lt;br /&gt;
* Log in to the cluster hosting the server&lt;br /&gt;
* Change to the server home directory on the cluster&lt;br /&gt;
* Execute the python script for user registration&lt;br /&gt;
** On the command line: &#039;&#039;python userRegistration.py &amp;lt;username&amp;gt; &amp;lt;password&amp;gt;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
=== Executing Remote Simulations ===&lt;br /&gt;
* Run VisTrails and open the workflow (&#039;&#039;&#039;fireDemoSC2009.vt&#039;&#039;&#039;)&lt;br /&gt;
&lt;br /&gt;
* The &#039;&#039;&#039;Execute Simulation (real)&#039;&#039;&#039; node (top of the middle branch): Execution of this workflow sends an execution request to the server.  The VisTrails client communicates with the remote server using the md5 checksum of the simulation input files as a unique identifier.  The server will execute the simulation IFF it is not already stored within the user database.  Consequently, repeated execution requests of the same simulations will be ignored, only the first being executed.&lt;br /&gt;
** Prompts for the &#039;&#039;Server Name&#039;&#039;&lt;br /&gt;
** Prompts for the &#039;&#039;Username&#039;&#039;&lt;br /&gt;
** Prompts for the &#039;&#039;Password&#039;&#039; (this is the &#039;&#039;user registered&#039;&#039; password)&lt;br /&gt;
** Prompts for the &#039;&#039;Local Simulation Directory&#039;&#039; (&#039;&#039;/Users/XXX/Desktop/visExample/sc2009inputs/&#039;&#039;)&lt;br /&gt;
** Prompts for the &#039;&#039;Server port&#039;&#039; (this is the number remembered during server setup)&lt;br /&gt;
&lt;br /&gt;
* The &#039;&#039;&#039;Update Simulation (real)&#039;&#039;&#039; node (upper middle of the middle branch): Execution of this workflow will query the server for the latest &#039;&#039;WRFOUT&#039;&#039; files produced by the simulation for the given input files.  If the md5 checksum of the &#039;&#039;WRFOUT&#039;&#039; does not match between the server and the client, then the file is sent from the cluster to your local machine.  No files are sent from the server to the client if the md5 checksums are the same or if the server does not have a simulation recorded for the given input files.&lt;br /&gt;
** Prompts for the &#039;&#039;Server Name&#039;&#039;&lt;br /&gt;
** Prompts for the &#039;&#039;Username&#039;&#039;&lt;br /&gt;
** Prompts for the &#039;&#039;Password&#039;&#039; (this is the &#039;&#039;user registered&#039;&#039; password)&lt;br /&gt;
** Prompts for the &#039;&#039;Local Simulation Directory&#039;&#039; (&#039;&#039;/Users/XXX/Desktop/visExample/sc2009inputs/&#039;&#039;)&lt;br /&gt;
** Prompts for the &#039;&#039;Server port&#039;&#039; (this is the number remembered during server setup)&lt;br /&gt;
&lt;br /&gt;
* The &#039;&#039;&#039;Stop Simulation (real)&#039;&#039;&#039; node (lower middle of the middle branch): Execution of this workflow will send a termination request of the simulation to the server.  For simulations that run indefinitely, or are running for a long time, the user can explicitly terminate their continued computation.  The workflow prompts the user for the local directory of the input files, used as a means of identifying the simulation to which the user is referring.&lt;br /&gt;
** Prompts for the &#039;&#039;Server Name&#039;&#039;&lt;br /&gt;
** Prompts for the &#039;&#039;Username&#039;&#039;&lt;br /&gt;
** Prompts for the &#039;&#039;Password&#039;&#039; (this is the &#039;&#039;user registered&#039;&#039; password)&lt;br /&gt;
** Prompts for the &#039;&#039;Local Simulation Directory&#039;&#039; (&#039;&#039;/Users/XXX/Desktop/visExample/sc2009inputs/&#039;&#039;)&lt;br /&gt;
** Prompts for the &#039;&#039;Server port&#039;&#039; (this is the number remembered during server setup)&lt;br /&gt;
&lt;br /&gt;
* The &#039;&#039;&#039;Delete Simulation (real)&#039;&#039;&#039; node (lower middle of the middle branch): Execution of this workflow will send a deletion request of the simulation to the server.  After a simulation is run, it will remain on the server until it is explicitly deleted by the user.  Consequently, if a user terminates a simulation, then wishes to re-run the simulation, they must first delete it.  Otherwise, subsequent re-runs of the simulation will not occur because the server views the simulation as already executed.&lt;br /&gt;
** Prompts for the &#039;&#039;Server Name&#039;&#039;&lt;br /&gt;
** Prompts for the &#039;&#039;Username&#039;&#039;&lt;br /&gt;
** Prompts for the &#039;&#039;Password&#039;&#039; (this is the &#039;&#039;user registered&#039;&#039; password)&lt;br /&gt;
** Prompts for the &#039;&#039;Local Simulation Directory&#039;&#039; (&#039;&#039;/Users/XXX/Desktop/visExample/sc2009inputs/&#039;&#039;)&lt;br /&gt;
** Prompts for the &#039;&#039;Server port&#039;&#039; (this is the number remembered during server setup)&lt;br /&gt;
&lt;br /&gt;
== Super Computing 2009 Demo ==&lt;br /&gt;
* A full simulation to visualization scenario:&lt;br /&gt;
** Execute the &#039;&#039;&#039;Execute Simulation (real)&#039;&#039;&#039; workflow&lt;br /&gt;
** Wait.&lt;br /&gt;
** Execute the &#039;&#039;&#039;Update Simulation (real)&#039;&#039;&#039; workflow&lt;br /&gt;
** Execute the &#039;&#039;&#039;WRFOUT Conversion&#039;&#039;&#039; workflow&lt;br /&gt;
** Execute the &#039;&#039;&#039;Fire Demo Visualization&#039;&#039;&#039; workflow&lt;br /&gt;
&lt;br /&gt;
== Works with ==&lt;br /&gt;
&lt;br /&gt;
* VisTrails 1.4.1 revision 1693 (2010-01-28 14:00) on Mac OS X 10.6.2&lt;br /&gt;
* WRF-Fire {{WRF-Fire-commit|d08007ddfcd8c59095caf42f7633048b9a541732|d08007ddfcd8c59095caf42f7633048b9a541732}} on Rocks 5.1 Centos 5.3 gfortran-gcc  4.1.2, openmpi_gcc-1.2.8&lt;br /&gt;
&lt;br /&gt;
[[Category:WRF-Fire]]&lt;br /&gt;
[[Category:Howtos|Visualize WRF-Fire output in VisTrails]]&lt;/div&gt;</summary>
		<author><name>Jdaniels</name></author>
	</entry>
	<entry>
		<id>https://wiki.openwfm.org/index.php?title=How_to_visualize_WRF-Fire_output_in_VisTrails&amp;diff=1056</id>
		<title>How to visualize WRF-Fire output in VisTrails</title>
		<link rel="alternate" type="text/html" href="https://wiki.openwfm.org/index.php?title=How_to_visualize_WRF-Fire_output_in_VisTrails&amp;diff=1056"/>
		<updated>2010-06-25T16:36:43Z</updated>

		<summary type="html">&lt;p&gt;Jdaniels: /* Local Simulation Execution */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Prerequisities ==&lt;br /&gt;
&lt;br /&gt;
* Download and install [http://www.vistrails.org VisTrails], and run it at least once.&lt;br /&gt;
* [[How to run WRF-Fire|Download, install and run WRF-Fire]]. This can be done on a different computer; you will only need to move the output files.&lt;br /&gt;
** To get enough frames, before running WRF-Fire, change in &#039;&#039;&#039;namelist.input&#039;&#039;&#039; the line with &#039;&#039;&#039;history_interval&#039;&#039;&#039; to the desired frame interval in seconds, for example &#039;&#039;&#039;history_interval_s=1&#039;&#039;&#039;. &lt;br /&gt;
* Run WRF-Fire. The pictures below are from the &amp;quot;hill&amp;quot; ideal run in WRF-Fire.&lt;br /&gt;
* If the visualization computer is different from the computer where you run WRF-Fire, transfer the resulting &#039;&#039;&#039;wrfout&#039;&#039;&#039; files to the visualization computer&lt;br /&gt;
&lt;br /&gt;
== Local Simulation Execution ==&lt;br /&gt;
&lt;br /&gt;
* Download the tar ball ([http://math.ucdenver.edu/~jmandel/fires/scDemo2009.tar.gz])&lt;br /&gt;
** Place the VisTrails packages into &#039;&#039;&#039;/Users/XXX/.vistrails/userpackages/&#039;&#039;&#039;&lt;br /&gt;
*** &#039;&#039;&#039;NumSciPy&#039;&#039;&#039; -- contains the wrapper modules for NumPy and SciPy functions&lt;br /&gt;
*** &#039;&#039;&#039;WRFtoVTK&#039;&#039;&#039; -- contains the wrf to vtk file conversion modules&lt;br /&gt;
*** &#039;&#039;&#039;demoNetwork&#039;&#039;&#039; -- contains the client modules to communicate with the server&lt;br /&gt;
*** &#039;&#039;&#039;extendDialog&#039;&#039;&#039; -- contains masked text dialogs for passwords&lt;br /&gt;
** Move the VisTrails workflow to a known location (i.e. &#039;&#039;/Users/XXX/Desktop/visExample/&#039;&#039;)&lt;br /&gt;
*** &#039;&#039;&#039;fireDemoSC2009.vt&#039;&#039;&#039; -- the VisTrails workflow for conversion and visualization&lt;br /&gt;
** Move the simulation inputs to a known location (i.e. &#039;&#039;/Users/XXX/Desktop/visExample/&#039;&#039;)&lt;br /&gt;
*** &#039;&#039;&#039;sc2009inputs&#039;&#039;&#039; -- contains example simulation input files&lt;br /&gt;
&lt;br /&gt;
* Run the simulation with the example inputs (&#039;&#039;&#039;/Users/XXX/Desktop/visExample/sc2009inputs/&#039;&#039;&#039;)&lt;br /&gt;
** See pre-requisites above for details about the running and obtaining better time steps&lt;br /&gt;
** Wait for the simulation to complete&lt;br /&gt;
* Store the WRFOUT within a known directory (i.e. &#039;&#039;/Users/XXX/Desktop/visExample/sc2009outputs/&#039;&#039;)&lt;br /&gt;
** Setup a directory to save VTK files that will be generated from WRFOUT (i.e. &#039;&#039;/Users/XXX/Desktop/visExample/sc2009outputs/vtkFiles/&#039;&#039;)&lt;br /&gt;
&lt;br /&gt;
=== Visualization of Simulation Results ===&lt;br /&gt;
&lt;br /&gt;
[[File:Sc2009history.png|600px]]&lt;br /&gt;
* Run VisTrails and open the workflow (&#039;&#039;&#039;fireDemoSC2009.vt&#039;&#039;&#039;)&lt;br /&gt;
** Begin by navigating the history tree&lt;br /&gt;
** Execute the &#039;&#039;&#039;WRFOUT Conversion&#039;&#039;&#039; node (top of the right most branch)&lt;br /&gt;
*** NOTE: to &#039;execute&#039; a node, you must select the node so that it is highlighted and the corresponding workflow is shown in the smaller view window, then click on the &#039;execute&#039; button.&lt;br /&gt;
*** Prompts for the &#039;&#039;WRF directory&#039;&#039; (&#039;&#039;/Users/XXX/Desktop/visExample/sc2009outputs/&#039;&#039;)&lt;br /&gt;
*** Prompts for the &#039;&#039;VTK directory&#039;&#039; (&#039;&#039;/Users/XXX/Desktop/visExample/sc2009outputs/vtkFiles&#039;&#039;)&lt;br /&gt;
*** Wait for the conversion to complete (all modules turn green)&lt;br /&gt;
** Execute the &#039;&#039;&#039;Fire Demo Visualization&#039;&#039;&#039; node (top of the left most branch)&lt;br /&gt;
*** Prompts for the &#039;&#039;VTK directory&#039;&#039; (&#039;&#039;/Users/XXX/Desktop/visExample/sc2009outputs/vtkFiles&#039;&#039;)&lt;br /&gt;
*** Prompts for the &#039;&#039;Animation Delay&#039;&#039; (hit enter)&lt;br /&gt;
*** View the spread sheet to interact with the visualization&lt;br /&gt;
&lt;br /&gt;
=== Interacting with the Visualization ===&lt;br /&gt;
[[File:Sc2009results.png|600px]]&lt;br /&gt;
* left click will rotate the visualization&lt;br /&gt;
* Shift-left click will pan the visualization&lt;br /&gt;
* Ctrl-left click will zoom the visualization&lt;br /&gt;
* &#039;&#039;&#039;l&#039;&#039;&#039; (lower case L) toggles the streamline widget&lt;br /&gt;
* left click on the sreamline widget moves it around&lt;br /&gt;
* left click on the play widgets (left to right)&lt;br /&gt;
** &#039;&#039;step back&#039;&#039; -- step backwards one frame in the simulation&lt;br /&gt;
** &#039;&#039;play back&#039;&#039; -- play the simulation backwards&lt;br /&gt;
** &#039;&#039;stop&#039;&#039; -- pauses the simulation animation&lt;br /&gt;
** &#039;&#039;play forward&#039;&#039; -- play the simulation forward&lt;br /&gt;
** &#039;&#039;step forward&#039;&#039; -- step forward one frame in the simulation&lt;br /&gt;
&lt;br /&gt;
== Cluster-based Simulation Execution ==&lt;br /&gt;
=== Setting up the Python server on a remote machine or cluster ===&lt;br /&gt;
* Build the simulation binaries on the cluster&lt;br /&gt;
* On the cluster setup a home directory for the server&lt;br /&gt;
* Within this directory create virtual links to:&lt;br /&gt;
** &#039;&#039;&#039;ideal.exe&#039;&#039;&#039; -- the ideal simulation setup executable&lt;br /&gt;
** &#039;&#039;&#039;real.exe&#039;&#039;&#039; -- the real simulation setup executable&lt;br /&gt;
** &#039;&#039;&#039;wrf.exe&#039;&#039;&#039; -- the simulation binary&lt;br /&gt;
* Within this directory copy over the server files from the previous tar ball&lt;br /&gt;
** &#039;&#039;&#039;demoNetwork/execServer.py&#039;&#039;&#039; -- to be used on the cluster to launch the server&lt;br /&gt;
** &#039;&#039;&#039;demoNetwork/fireServer.py&#039;&#039;&#039; -- the server code&lt;br /&gt;
** &#039;&#039;&#039;demoNetwork/fireMessages.py&#039;&#039;&#039; -- the message passing scheme and code&lt;br /&gt;
** &#039;&#039;&#039;demoNetwork/userRegistration.py&#039;&#039;&#039; -- user registration script&lt;br /&gt;
** &#039;&#039;&#039;demoNetwork/README.txt&#039;&#039;&#039; -- a readme file explaining server setup in more detail&lt;br /&gt;
* Execute the python script to start the server (requires python 2.5 or greater)&lt;br /&gt;
** On the command line within the directory: &#039;&#039;python execServer.py&#039;&#039;&lt;br /&gt;
* View and remember the listening port output by the server&lt;br /&gt;
&lt;br /&gt;
=== Registering New Users with the Server ===&lt;br /&gt;
* Log in to the cluster hosting the server&lt;br /&gt;
* Change to the server home directory on the cluster&lt;br /&gt;
* Execute the python script for user registration&lt;br /&gt;
** On the command line: &#039;&#039;python userRegistration.py &amp;lt;username&amp;gt; &amp;lt;password&amp;gt;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
=== Executing Remote Simulations ===&lt;br /&gt;
* Run VisTrails and open the workflow (&#039;&#039;&#039;fireDemoSC2009.vt&#039;&#039;&#039;)&lt;br /&gt;
&lt;br /&gt;
* The &#039;&#039;&#039;Execute Simulation (real)&#039;&#039;&#039; node (top of the middle branch): Execution of this workflow sends an execution request to the server.  The VisTrails client communicates with the remote server using the md5 checksum of the simulation input files as a unique identifier.  The server will execute the simulation IFF it is not already stored within the user database.  Consequently, repeated execution requests of the same simulations will be ignored, only the first being executed.&lt;br /&gt;
** Prompts for the &#039;&#039;Server Name&#039;&#039;&lt;br /&gt;
** Prompts for the &#039;&#039;Username&#039;&#039;&lt;br /&gt;
** Prompts for the &#039;&#039;Password&#039;&#039; (this is the &#039;&#039;user registered&#039;&#039; password)&lt;br /&gt;
** Prompts for the &#039;&#039;Local Simulation Directory&#039;&#039; (&#039;&#039;/Users/XXX/Desktop/visExample/sc2009inputs/&#039;&#039;)&lt;br /&gt;
** Prompts for the &#039;&#039;Server port&#039;&#039; (this is the number remembered during server setup)&lt;br /&gt;
&lt;br /&gt;
* The &#039;&#039;&#039;Update Simulation (real)&#039;&#039;&#039; node (upper middle of the middle branch): Execution of this workflow will query the server for the latest &#039;&#039;WRFOUT&#039;&#039; files produced by the simulation for the given input files.  If the md5 checksum of the &#039;&#039;WRFOUT&#039;&#039; does not match between the server and the client, then the file is sent from the cluster to your local machine.  No files are sent from the server to the client if the md5 checksums are the same or if the server does not have a simulation recorded for the given input files.&lt;br /&gt;
** Prompts for the &#039;&#039;Server Name&#039;&#039;&lt;br /&gt;
** Prompts for the &#039;&#039;Username&#039;&#039;&lt;br /&gt;
** Prompts for the &#039;&#039;Password&#039;&#039; (this is the &#039;&#039;user registered&#039;&#039; password)&lt;br /&gt;
** Prompts for the &#039;&#039;Local Simulation Directory&#039;&#039; (&#039;&#039;/Users/XXX/Desktop/visExample/sc2009inputs/&#039;&#039;)&lt;br /&gt;
** Prompts for the &#039;&#039;Server port&#039;&#039; (this is the number remembered during server setup)&lt;br /&gt;
&lt;br /&gt;
* The &#039;&#039;&#039;Stop Simulation (real)&#039;&#039;&#039; node (lower middle of the middle branch): Execution of this workflow will send a termination request of the simulation to the server.  For simulations that run indefinitely, or are running for a long time, the user can explicitly terminate their continued computation.  The workflow prompts the user for the local directory of the input files, used as a means of identifying the simulation to which the user is referring.&lt;br /&gt;
** Prompts for the &#039;&#039;Server Name&#039;&#039;&lt;br /&gt;
** Prompts for the &#039;&#039;Username&#039;&#039;&lt;br /&gt;
** Prompts for the &#039;&#039;Password&#039;&#039; (this is the &#039;&#039;user registered&#039;&#039; password)&lt;br /&gt;
** Prompts for the &#039;&#039;Local Simulation Directory&#039;&#039; (&#039;&#039;/Users/XXX/Desktop/visExample/sc2009inputs/&#039;&#039;)&lt;br /&gt;
** Prompts for the &#039;&#039;Server port&#039;&#039; (this is the number remembered during server setup)&lt;br /&gt;
&lt;br /&gt;
* The &#039;&#039;&#039;Delete Simulation (real)&#039;&#039;&#039; node (lower middle of the middle branch): Execution of this workflow will send a deletion request of the simulation to the server.  After a simulation is run, it will remain on the server until it is explicitly deleted by the user.  Consequently, if a user terminates a simulation, then wishes to re-run the simulation, they must first delete it.  Otherwise, subsequent re-runs of the simulation will not occur because the server views the simulation as already executed.&lt;br /&gt;
** Prompts for the &#039;&#039;Server Name&#039;&#039;&lt;br /&gt;
** Prompts for the &#039;&#039;Username&#039;&#039;&lt;br /&gt;
** Prompts for the &#039;&#039;Password&#039;&#039; (this is the &#039;&#039;user registered&#039;&#039; password)&lt;br /&gt;
** Prompts for the &#039;&#039;Local Simulation Directory&#039;&#039; (&#039;&#039;/Users/XXX/Desktop/visExample/sc2009inputs/&#039;&#039;)&lt;br /&gt;
** Prompts for the &#039;&#039;Server port&#039;&#039; (this is the number remembered during server setup)&lt;br /&gt;
&lt;br /&gt;
== Super Computing 2009 Demo ==&lt;br /&gt;
* A full simulation to visualization scenario:&lt;br /&gt;
** Execute the &#039;&#039;&#039;Execute Simulation (real)&#039;&#039;&#039; workflow&lt;br /&gt;
** Wait.&lt;br /&gt;
** Execute the &#039;&#039;&#039;Update Simulation (real)&#039;&#039;&#039; workflow&lt;br /&gt;
** Execute the &#039;&#039;&#039;WRFOUT Conversion&#039;&#039;&#039; workflow&lt;br /&gt;
** Execute the &#039;&#039;&#039;Fire Demo Visualization&#039;&#039;&#039; workflow&lt;br /&gt;
&lt;br /&gt;
== Works with ==&lt;br /&gt;
&lt;br /&gt;
* VisTrails 1.4.1 revision 1693 (2010-01-28 14:00) on Mac OS X 10.6.2&lt;br /&gt;
* WRF-Fire {{WRF-Fire-commit|d08007ddfcd8c59095caf42f7633048b9a541732|d08007ddfcd8c59095caf42f7633048b9a541732}} on Rocks 5.1 Centos 5.3 gfortran-gcc  4.1.2, openmpi_gcc-1.2.8&lt;br /&gt;
&lt;br /&gt;
[[Category:WRF-Fire]]&lt;br /&gt;
[[Category:Howtos|Visualize WRF-Fire output in VisTrails]]&lt;/div&gt;</summary>
		<author><name>Jdaniels</name></author>
	</entry>
	<entry>
		<id>https://wiki.openwfm.org/index.php?title=How_to_visualize_WRF-Fire_output_in_VisTrails&amp;diff=1055</id>
		<title>How to visualize WRF-Fire output in VisTrails</title>
		<link rel="alternate" type="text/html" href="https://wiki.openwfm.org/index.php?title=How_to_visualize_WRF-Fire_output_in_VisTrails&amp;diff=1055"/>
		<updated>2010-06-25T16:35:58Z</updated>

		<summary type="html">&lt;p&gt;Jdaniels: /* Local Simulation Execution */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Prerequisities ==&lt;br /&gt;
&lt;br /&gt;
* Download and install [http://www.vistrails.org VisTrails], and run it at least once.&lt;br /&gt;
* [[How to run WRF-Fire|Download, install and run WRF-Fire]]. This can be done on a different computer; you will only need to move the output files.&lt;br /&gt;
** To get enough frames, before running WRF-Fire, change in &#039;&#039;&#039;namelist.input&#039;&#039;&#039; the line with &#039;&#039;&#039;history_interval&#039;&#039;&#039; to the desired frame interval in seconds, for example &#039;&#039;&#039;history_interval_s=1&#039;&#039;&#039;. &lt;br /&gt;
* Run WRF-Fire. The pictures below are from the &amp;quot;hill&amp;quot; ideal run in WRF-Fire.&lt;br /&gt;
* If the visualization computer is different from the computer where you run WRF-Fire, transfer the resulting &#039;&#039;&#039;wrfout&#039;&#039;&#039; files to the visualization computer&lt;br /&gt;
&lt;br /&gt;
== Local Simulation Execution ==&lt;br /&gt;
&lt;br /&gt;
* Download the tar ball ([http://www.cs.utah.edu/~jdaniels/research/wrf/scDemo2009.tar.gz] or the mirror [http://math.ucdenver.edu/~jmandel/fires/scDemo2009.tar.gz])&lt;br /&gt;
** Place the VisTrails packages into &#039;&#039;&#039;/Users/XXX/.vistrails/userpackages/&#039;&#039;&#039;&lt;br /&gt;
*** &#039;&#039;&#039;NumSciPy&#039;&#039;&#039; -- contains the wrapper modules for NumPy and SciPy functions&lt;br /&gt;
*** &#039;&#039;&#039;WRFtoVTK&#039;&#039;&#039; -- contains the wrf to vtk file conversion modules&lt;br /&gt;
*** &#039;&#039;&#039;demoNetwork&#039;&#039;&#039; -- contains the client modules to communicate with the server&lt;br /&gt;
*** &#039;&#039;&#039;extendDialog&#039;&#039;&#039; -- contains masked text dialogs for passwords&lt;br /&gt;
** Move the VisTrails workflow to a known location (i.e. &#039;&#039;/Users/XXX/Desktop/visExample/&#039;&#039;)&lt;br /&gt;
*** &#039;&#039;&#039;fireDemoSC2009.vt&#039;&#039;&#039; -- the VisTrails workflow for conversion and visualization&lt;br /&gt;
** Move the simulation inputs to a known location (i.e. &#039;&#039;/Users/XXX/Desktop/visExample/&#039;&#039;)&lt;br /&gt;
*** &#039;&#039;&#039;sc2009inputs&#039;&#039;&#039; -- contains example simulation input files&lt;br /&gt;
&lt;br /&gt;
* Run the simulation with the example inputs (&#039;&#039;&#039;/Users/XXX/Desktop/visExample/sc2009inputs/&#039;&#039;&#039;)&lt;br /&gt;
** See pre-requisites above for details about the running and obtaining better time steps&lt;br /&gt;
** Wait for the simulation to complete&lt;br /&gt;
* Store the WRFOUT within a known directory (i.e. &#039;&#039;/Users/XXX/Desktop/visExample/sc2009outputs/&#039;&#039;)&lt;br /&gt;
** Setup a directory to save VTK files that will be generated from WRFOUT (i.e. &#039;&#039;/Users/XXX/Desktop/visExample/sc2009outputs/vtkFiles/&#039;&#039;)&lt;br /&gt;
&lt;br /&gt;
=== Visualization of Simulation Results ===&lt;br /&gt;
&lt;br /&gt;
[[File:Sc2009history.png|600px]]&lt;br /&gt;
* Run VisTrails and open the workflow (&#039;&#039;&#039;fireDemoSC2009.vt&#039;&#039;&#039;)&lt;br /&gt;
** Begin by navigating the history tree&lt;br /&gt;
** Execute the &#039;&#039;&#039;WRFOUT Conversion&#039;&#039;&#039; node (top of the right most branch)&lt;br /&gt;
*** NOTE: to &#039;execute&#039; a node, you must select the node so that it is highlighted and the corresponding workflow is shown in the smaller view window, then click on the &#039;execute&#039; button.&lt;br /&gt;
*** Prompts for the &#039;&#039;WRF directory&#039;&#039; (&#039;&#039;/Users/XXX/Desktop/visExample/sc2009outputs/&#039;&#039;)&lt;br /&gt;
*** Prompts for the &#039;&#039;VTK directory&#039;&#039; (&#039;&#039;/Users/XXX/Desktop/visExample/sc2009outputs/vtkFiles&#039;&#039;)&lt;br /&gt;
*** Wait for the conversion to complete (all modules turn green)&lt;br /&gt;
** Execute the &#039;&#039;&#039;Fire Demo Visualization&#039;&#039;&#039; node (top of the left most branch)&lt;br /&gt;
*** Prompts for the &#039;&#039;VTK directory&#039;&#039; (&#039;&#039;/Users/XXX/Desktop/visExample/sc2009outputs/vtkFiles&#039;&#039;)&lt;br /&gt;
*** Prompts for the &#039;&#039;Animation Delay&#039;&#039; (hit enter)&lt;br /&gt;
*** View the spread sheet to interact with the visualization&lt;br /&gt;
&lt;br /&gt;
=== Interacting with the Visualization ===&lt;br /&gt;
[[File:Sc2009results.png|600px]]&lt;br /&gt;
* left click will rotate the visualization&lt;br /&gt;
* Shift-left click will pan the visualization&lt;br /&gt;
* Ctrl-left click will zoom the visualization&lt;br /&gt;
* &#039;&#039;&#039;l&#039;&#039;&#039; (lower case L) toggles the streamline widget&lt;br /&gt;
* left click on the sreamline widget moves it around&lt;br /&gt;
* left click on the play widgets (left to right)&lt;br /&gt;
** &#039;&#039;step back&#039;&#039; -- step backwards one frame in the simulation&lt;br /&gt;
** &#039;&#039;play back&#039;&#039; -- play the simulation backwards&lt;br /&gt;
** &#039;&#039;stop&#039;&#039; -- pauses the simulation animation&lt;br /&gt;
** &#039;&#039;play forward&#039;&#039; -- play the simulation forward&lt;br /&gt;
** &#039;&#039;step forward&#039;&#039; -- step forward one frame in the simulation&lt;br /&gt;
&lt;br /&gt;
== Cluster-based Simulation Execution ==&lt;br /&gt;
=== Setting up the Python server on a remote machine or cluster ===&lt;br /&gt;
* Build the simulation binaries on the cluster&lt;br /&gt;
* On the cluster setup a home directory for the server&lt;br /&gt;
* Within this directory create virtual links to:&lt;br /&gt;
** &#039;&#039;&#039;ideal.exe&#039;&#039;&#039; -- the ideal simulation setup executable&lt;br /&gt;
** &#039;&#039;&#039;real.exe&#039;&#039;&#039; -- the real simulation setup executable&lt;br /&gt;
** &#039;&#039;&#039;wrf.exe&#039;&#039;&#039; -- the simulation binary&lt;br /&gt;
* Within this directory copy over the server files from the previous tar ball&lt;br /&gt;
** &#039;&#039;&#039;demoNetwork/execServer.py&#039;&#039;&#039; -- to be used on the cluster to launch the server&lt;br /&gt;
** &#039;&#039;&#039;demoNetwork/fireServer.py&#039;&#039;&#039; -- the server code&lt;br /&gt;
** &#039;&#039;&#039;demoNetwork/fireMessages.py&#039;&#039;&#039; -- the message passing scheme and code&lt;br /&gt;
** &#039;&#039;&#039;demoNetwork/userRegistration.py&#039;&#039;&#039; -- user registration script&lt;br /&gt;
** &#039;&#039;&#039;demoNetwork/README.txt&#039;&#039;&#039; -- a readme file explaining server setup in more detail&lt;br /&gt;
* Execute the python script to start the server (requires python 2.5 or greater)&lt;br /&gt;
** On the command line within the directory: &#039;&#039;python execServer.py&#039;&#039;&lt;br /&gt;
* View and remember the listening port output by the server&lt;br /&gt;
&lt;br /&gt;
=== Registering New Users with the Server ===&lt;br /&gt;
* Log in to the cluster hosting the server&lt;br /&gt;
* Change to the server home directory on the cluster&lt;br /&gt;
* Execute the python script for user registration&lt;br /&gt;
** On the command line: &#039;&#039;python userRegistration.py &amp;lt;username&amp;gt; &amp;lt;password&amp;gt;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
=== Executing Remote Simulations ===&lt;br /&gt;
* Run VisTrails and open the workflow (&#039;&#039;&#039;fireDemoSC2009.vt&#039;&#039;&#039;)&lt;br /&gt;
&lt;br /&gt;
* The &#039;&#039;&#039;Execute Simulation (real)&#039;&#039;&#039; node (top of the middle branch): Execution of this workflow sends an execution request to the server.  The VisTrails client communicates with the remote server using the md5 checksum of the simulation input files as a unique identifier.  The server will execute the simulation IFF it is not already stored within the user database.  Consequently, repeated execution requests of the same simulations will be ignored, only the first being executed.&lt;br /&gt;
** Prompts for the &#039;&#039;Server Name&#039;&#039;&lt;br /&gt;
** Prompts for the &#039;&#039;Username&#039;&#039;&lt;br /&gt;
** Prompts for the &#039;&#039;Password&#039;&#039; (this is the &#039;&#039;user registered&#039;&#039; password)&lt;br /&gt;
** Prompts for the &#039;&#039;Local Simulation Directory&#039;&#039; (&#039;&#039;/Users/XXX/Desktop/visExample/sc2009inputs/&#039;&#039;)&lt;br /&gt;
** Prompts for the &#039;&#039;Server port&#039;&#039; (this is the number remembered during server setup)&lt;br /&gt;
&lt;br /&gt;
* The &#039;&#039;&#039;Update Simulation (real)&#039;&#039;&#039; node (upper middle of the middle branch): Execution of this workflow will query the server for the latest &#039;&#039;WRFOUT&#039;&#039; files produced by the simulation for the given input files.  If the md5 checksum of the &#039;&#039;WRFOUT&#039;&#039; does not match between the server and the client, then the file is sent from the cluster to your local machine.  No files are sent from the server to the client if the md5 checksums are the same or if the server does not have a simulation recorded for the given input files.&lt;br /&gt;
** Prompts for the &#039;&#039;Server Name&#039;&#039;&lt;br /&gt;
** Prompts for the &#039;&#039;Username&#039;&#039;&lt;br /&gt;
** Prompts for the &#039;&#039;Password&#039;&#039; (this is the &#039;&#039;user registered&#039;&#039; password)&lt;br /&gt;
** Prompts for the &#039;&#039;Local Simulation Directory&#039;&#039; (&#039;&#039;/Users/XXX/Desktop/visExample/sc2009inputs/&#039;&#039;)&lt;br /&gt;
** Prompts for the &#039;&#039;Server port&#039;&#039; (this is the number remembered during server setup)&lt;br /&gt;
&lt;br /&gt;
* The &#039;&#039;&#039;Stop Simulation (real)&#039;&#039;&#039; node (lower middle of the middle branch): Execution of this workflow will send a termination request of the simulation to the server.  For simulations that run indefinitely, or are running for a long time, the user can explicitly terminate their continued computation.  The workflow prompts the user for the local directory of the input files, used as a means of identifying the simulation to which the user is referring.&lt;br /&gt;
** Prompts for the &#039;&#039;Server Name&#039;&#039;&lt;br /&gt;
** Prompts for the &#039;&#039;Username&#039;&#039;&lt;br /&gt;
** Prompts for the &#039;&#039;Password&#039;&#039; (this is the &#039;&#039;user registered&#039;&#039; password)&lt;br /&gt;
** Prompts for the &#039;&#039;Local Simulation Directory&#039;&#039; (&#039;&#039;/Users/XXX/Desktop/visExample/sc2009inputs/&#039;&#039;)&lt;br /&gt;
** Prompts for the &#039;&#039;Server port&#039;&#039; (this is the number remembered during server setup)&lt;br /&gt;
&lt;br /&gt;
* The &#039;&#039;&#039;Delete Simulation (real)&#039;&#039;&#039; node (lower middle of the middle branch): Execution of this workflow will send a deletion request of the simulation to the server.  After a simulation is run, it will remain on the server until it is explicitly deleted by the user.  Consequently, if a user terminates a simulation, then wishes to re-run the simulation, they must first delete it.  Otherwise, subsequent re-runs of the simulation will not occur because the server views the simulation as already executed.&lt;br /&gt;
** Prompts for the &#039;&#039;Server Name&#039;&#039;&lt;br /&gt;
** Prompts for the &#039;&#039;Username&#039;&#039;&lt;br /&gt;
** Prompts for the &#039;&#039;Password&#039;&#039; (this is the &#039;&#039;user registered&#039;&#039; password)&lt;br /&gt;
** Prompts for the &#039;&#039;Local Simulation Directory&#039;&#039; (&#039;&#039;/Users/XXX/Desktop/visExample/sc2009inputs/&#039;&#039;)&lt;br /&gt;
** Prompts for the &#039;&#039;Server port&#039;&#039; (this is the number remembered during server setup)&lt;br /&gt;
&lt;br /&gt;
== Super Computing 2009 Demo ==&lt;br /&gt;
* A full simulation to visualization scenario:&lt;br /&gt;
** Execute the &#039;&#039;&#039;Execute Simulation (real)&#039;&#039;&#039; workflow&lt;br /&gt;
** Wait.&lt;br /&gt;
** Execute the &#039;&#039;&#039;Update Simulation (real)&#039;&#039;&#039; workflow&lt;br /&gt;
** Execute the &#039;&#039;&#039;WRFOUT Conversion&#039;&#039;&#039; workflow&lt;br /&gt;
** Execute the &#039;&#039;&#039;Fire Demo Visualization&#039;&#039;&#039; workflow&lt;br /&gt;
&lt;br /&gt;
== Works with ==&lt;br /&gt;
&lt;br /&gt;
* VisTrails 1.4.1 revision 1693 (2010-01-28 14:00) on Mac OS X 10.6.2&lt;br /&gt;
* WRF-Fire {{WRF-Fire-commit|d08007ddfcd8c59095caf42f7633048b9a541732|d08007ddfcd8c59095caf42f7633048b9a541732}} on Rocks 5.1 Centos 5.3 gfortran-gcc  4.1.2, openmpi_gcc-1.2.8&lt;br /&gt;
&lt;br /&gt;
[[Category:WRF-Fire]]&lt;br /&gt;
[[Category:Howtos|Visualize WRF-Fire output in VisTrails]]&lt;/div&gt;</summary>
		<author><name>Jdaniels</name></author>
	</entry>
	<entry>
		<id>https://wiki.openwfm.org/index.php?title=How_to_visualize_WRF-Fire_output_in_VisTrails&amp;diff=266</id>
		<title>How to visualize WRF-Fire output in VisTrails</title>
		<link rel="alternate" type="text/html" href="https://wiki.openwfm.org/index.php?title=How_to_visualize_WRF-Fire_output_in_VisTrails&amp;diff=266"/>
		<updated>2010-02-27T00:07:20Z</updated>

		<summary type="html">&lt;p&gt;Jdaniels: /* Interacting with the Visualization */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Prerequisities ==&lt;br /&gt;
&lt;br /&gt;
* Download and install [http://www.vistrails.org VisTrails], and run it at least once.&lt;br /&gt;
* Download and install WRF-Fire. This can be done on a different computer; you will only need to move the input and output files.&lt;br /&gt;
** [[How to run WRF-Fire|Download, install and run WRF-Fire]] on the simple ideal example provided. If you get complaints about &#039;&#039;&#039;mpif90 -f90=compiler_name&#039;&#039;&#039;, edit the file &#039;&#039;&#039;wrf-fire/WRFV3/configure.wrf&#039;&#039;&#039;, look for &#039;&#039;&#039;mpif90 -f90=$(FC)&#039;&#039;&#039; and delete the &#039;&#039;&#039;-f90=$(FC)&#039;&#039;&#039; flag.&lt;br /&gt;
** In &#039;&#039;&#039;wrf-fire/WRFV3&#039;&#039;&#039;, run &#039;&#039;&#039;compile em_real&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
== Local Simulation Execution ==&lt;br /&gt;
&lt;br /&gt;
* Download the tar ball ([http://www.cs.utah.edu/~jdaniels/research/wrf/scDemo2009.tar.gz] or the mirror [http://math.ucdenver.edu/~jmandel/fires/scDemo2009.tar.gz])&lt;br /&gt;
** Place the VisTrails packages into &#039;&#039;&#039;/Users/XXX/.vistrails/userpackages/&#039;&#039;&#039;&lt;br /&gt;
*** &#039;&#039;&#039;NumSciPy&#039;&#039;&#039; -- contains the wrapper modules for NumPy and SciPy functions&lt;br /&gt;
*** &#039;&#039;&#039;WRFtoVTK&#039;&#039;&#039; -- contains the wrf to vtk file conversion modules&lt;br /&gt;
*** &#039;&#039;&#039;demoNetwork&#039;&#039;&#039; -- contains the client modules to communicate with the server&lt;br /&gt;
*** &#039;&#039;&#039;extendDialog&#039;&#039;&#039; -- contains masked text dialogs for passwords&lt;br /&gt;
** Move the VisTrails workflow to a known location (i.e. &#039;&#039;/Users/XXX/Desktop/visExample/&#039;&#039;)&lt;br /&gt;
*** &#039;&#039;&#039;fireDemoSC2009.vt&#039;&#039;&#039; -- the VisTrails workflow for conversion and visualization&lt;br /&gt;
** Move the simulation inputs to a known location (i.e. &#039;&#039;/Users/XXX/Desktop/visExample&#039;&#039;)&lt;br /&gt;
*** &#039;&#039;&#039;sc2009inputs&#039;&#039;&#039; -- contains example simulation input files&lt;br /&gt;
&lt;br /&gt;
* Run the simulation with the example inputs (&#039;&#039;&#039;/Users/XXX/Desktop/visExample/sc2009inputs/&#039;&#039;&#039;)&lt;br /&gt;
** Wait for the simulation to complete&lt;br /&gt;
* Store the WRFOUT within a known directory (i.e. &#039;&#039;/Users/XXX/Desktop/visExample/sc2009outputs/&#039;&#039;)&lt;br /&gt;
** Setup a directory to save VTK files that will be generated from WRFOUT (i.e. &#039;&#039;/Users/XXX/Desktop/visExample/sc2009outputs/vtkFiles/&#039;&#039;)&lt;br /&gt;
&lt;br /&gt;
=== Visualization of Simulation Results ===&lt;br /&gt;
&lt;br /&gt;
[[File:Sc2009history.png|600px]]&lt;br /&gt;
* Run VisTrails and open the workflow (&#039;&#039;&#039;fireDemoSC2009.vt&#039;&#039;&#039;)&lt;br /&gt;
** Begin by navigating the history tree&lt;br /&gt;
** Execute the &#039;&#039;&#039;WRFOUT Conversion&#039;&#039;&#039; node (top of the right most branch)&lt;br /&gt;
*** NOTE: to &#039;execute&#039; a node, you must select the node so that it is highlighted and the corresponding workflow is shown in the smaller view window, then click on the &#039;execute&#039; button.&lt;br /&gt;
*** Prompts for the &#039;&#039;WRF directory&#039;&#039; (&#039;&#039;/Users/XXX/Desktop/visExample/sc2009outputs/&#039;&#039;)&lt;br /&gt;
*** Prompts for the &#039;&#039;VTK directory&#039;&#039; (&#039;&#039;/Users/XXX/Desktop/visExample/sc2009outputs/vtkFiles&#039;&#039;)&lt;br /&gt;
*** Wait for the conversion to complete (all modules turn green)&lt;br /&gt;
** Execute the &#039;&#039;&#039;Fire Demo Visualization&#039;&#039;&#039; node (top of the left most branch)&lt;br /&gt;
*** Prompts for the &#039;&#039;VTK directory&#039;&#039; (&#039;&#039;/Users/XXX/Desktop/visExample/sc2009outputs/vtkFiles&#039;&#039;)&lt;br /&gt;
*** Prompts for the &#039;&#039;Animation Delay&#039;&#039; (hit enter)&lt;br /&gt;
*** View the spread sheet to interact with the visualization&lt;br /&gt;
&lt;br /&gt;
=== Interacting with the Visualization ===&lt;br /&gt;
[[File:Sc2009results.png|600px]]&lt;br /&gt;
* left click will rotate the visualization&lt;br /&gt;
* Shift-left click will pan the visualization&lt;br /&gt;
* Ctrl-left click will zoom the visualization&lt;br /&gt;
* &#039;&#039;&#039;l&#039;&#039;&#039; (lower case L) toggles the streamline widget&lt;br /&gt;
* left click on the sreamline widget moves it around&lt;br /&gt;
* left click on the play widgets (left to right)&lt;br /&gt;
** &#039;&#039;step back&#039;&#039; -- step backwards one frame in the simulation&lt;br /&gt;
** &#039;&#039;play back&#039;&#039; -- play the simulation backwards&lt;br /&gt;
** &#039;&#039;stop&#039;&#039; -- pauses the simulation animation&lt;br /&gt;
** &#039;&#039;play forward&#039;&#039; -- play the simulation forward&lt;br /&gt;
** &#039;&#039;step forward&#039;&#039; -- step forward one frame in the simulation&lt;br /&gt;
&lt;br /&gt;
== Cluster-based Simulation Execution ==&lt;br /&gt;
=== Setting up the Python server on a remote machine or cluster ===&lt;br /&gt;
* Build the simulation binaries on the cluster&lt;br /&gt;
* On the cluster setup a home directory for the server&lt;br /&gt;
* Within this directory create virtual links to:&lt;br /&gt;
** &#039;&#039;&#039;ideal.exe&#039;&#039;&#039; -- the ideal simulation setup executable&lt;br /&gt;
** &#039;&#039;&#039;real.exe&#039;&#039;&#039; -- the real simulation setup executable&lt;br /&gt;
** &#039;&#039;&#039;wrf.exe&#039;&#039;&#039; -- the simulation binary&lt;br /&gt;
* Within this directory copy over the server files from the previous tar ball&lt;br /&gt;
** &#039;&#039;&#039;demoNetwork/execServer.py&#039;&#039;&#039; -- to be used on the cluster to launch the server&lt;br /&gt;
** &#039;&#039;&#039;demoNetwork/fireServer.py&#039;&#039;&#039; -- the server code&lt;br /&gt;
** &#039;&#039;&#039;demoNetwork/fireMessages.py&#039;&#039;&#039; -- the message passing scheme and code&lt;br /&gt;
** &#039;&#039;&#039;demoNetwork/userRegistration.py&#039;&#039;&#039; -- user registration script&lt;br /&gt;
** &#039;&#039;&#039;demoNetwork/README.txt&#039;&#039;&#039; -- a readme file explaining server setup in more detail&lt;br /&gt;
* Execute the python script to start the server (requires python 2.5 or greater)&lt;br /&gt;
** On the command line within the directory: &#039;&#039;python execServer.py&#039;&#039;&lt;br /&gt;
* View and remember the listening port output by the server&lt;br /&gt;
&lt;br /&gt;
=== Registering New Users with the Server ===&lt;br /&gt;
* Log in to the cluster hosting the server&lt;br /&gt;
* Change to the server home directory on the cluster&lt;br /&gt;
* Execute the python script for user registration&lt;br /&gt;
** On the command line: &#039;&#039;python userRegistration.py &amp;lt;username&amp;gt; &amp;lt;password&amp;gt;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
=== Executing Remote Simulations ===&lt;br /&gt;
* Run VisTrails and open the workflow (&#039;&#039;&#039;fireDemoSC2009.vt&#039;&#039;&#039;)&lt;br /&gt;
&lt;br /&gt;
* The &#039;&#039;&#039;Execute Simulation (real)&#039;&#039;&#039; node (top of the middle branch): Execution of this workflow sends an execution request to the server.  The VisTrails client communicates with the remote server using the md5 checksum of the simulation input files as a unique identifier.  The server will execute the simulation IFF it is not already stored within the user database.  Consequently, repeated execution requests of the same simulations will be ignored, only the first being executed.&lt;br /&gt;
** Prompts for the &#039;&#039;Server Name&#039;&#039;&lt;br /&gt;
** Prompts for the &#039;&#039;Username&#039;&#039;&lt;br /&gt;
** Prompts for the &#039;&#039;Password&#039;&#039; (this is the &#039;&#039;user registered&#039;&#039; password)&lt;br /&gt;
** Prompts for the &#039;&#039;Local Simulation Directory&#039;&#039; (&#039;&#039;/Users/XXX/Desktop/visExample/sc2009inputs/&#039;&#039;)&lt;br /&gt;
** Prompts for the &#039;&#039;Server port&#039;&#039; (this is the number remembered during server setup)&lt;br /&gt;
&lt;br /&gt;
* The &#039;&#039;&#039;Update Simulation (real)&#039;&#039;&#039; node (upper middle of the middle branch): Execution of this workflow will query the server for the latest &#039;&#039;WRFOUT&#039;&#039; files produced by the simulation for the given input files.  If the md5 checksum of the &#039;&#039;WRFOUT&#039;&#039; does not match between the server and the client, then the file is sent from the cluster to your local machine.  No files are sent from the server to the client if the md5 checksums are the same or if the server does not have a simulation recorded for the given input files.&lt;br /&gt;
** Prompts for the &#039;&#039;Server Name&#039;&#039;&lt;br /&gt;
** Prompts for the &#039;&#039;Username&#039;&#039;&lt;br /&gt;
** Prompts for the &#039;&#039;Password&#039;&#039; (this is the &#039;&#039;user registered&#039;&#039; password)&lt;br /&gt;
** Prompts for the &#039;&#039;Local Simulation Directory&#039;&#039; (&#039;&#039;/Users/XXX/Desktop/visExample/sc2009inputs/&#039;&#039;)&lt;br /&gt;
** Prompts for the &#039;&#039;Server port&#039;&#039; (this is the number remembered during server setup)&lt;br /&gt;
&lt;br /&gt;
* The &#039;&#039;&#039;Stop Simulation (real)&#039;&#039;&#039; node (lower middle of the middle branch): Execution of this workflow will send a termination request of the simulation to the server.  For simulations that run indefinitely, or are running for a long time, the user can explicitly terminate their continued computation.  The workflow prompts the user for the local directory of the input files, used as a means of identifying the simulation to which the user is referring.&lt;br /&gt;
** Prompts for the &#039;&#039;Server Name&#039;&#039;&lt;br /&gt;
** Prompts for the &#039;&#039;Username&#039;&#039;&lt;br /&gt;
** Prompts for the &#039;&#039;Password&#039;&#039; (this is the &#039;&#039;user registered&#039;&#039; password)&lt;br /&gt;
** Prompts for the &#039;&#039;Local Simulation Directory&#039;&#039; (&#039;&#039;/Users/XXX/Desktop/visExample/sc2009inputs/&#039;&#039;)&lt;br /&gt;
** Prompts for the &#039;&#039;Server port&#039;&#039; (this is the number remembered during server setup)&lt;br /&gt;
&lt;br /&gt;
* The &#039;&#039;&#039;Delete Simulation (real)&#039;&#039;&#039; node (lower middle of the middle branch): Execution of this workflow will send a deletion request of the simulation to the server.  After a simulation is run, it will remain on the server until it is explicitly deleted by the user.  Consequently, if a user terminates a simulation, then wishes to re-run the simulation, they must first delete it.  Otherwise, subsequent re-runs of the simulation will not occur because the server views the simulation as already executed.&lt;br /&gt;
** Prompts for the &#039;&#039;Server Name&#039;&#039;&lt;br /&gt;
** Prompts for the &#039;&#039;Username&#039;&#039;&lt;br /&gt;
** Prompts for the &#039;&#039;Password&#039;&#039; (this is the &#039;&#039;user registered&#039;&#039; password)&lt;br /&gt;
** Prompts for the &#039;&#039;Local Simulation Directory&#039;&#039; (&#039;&#039;/Users/XXX/Desktop/visExample/sc2009inputs/&#039;&#039;)&lt;br /&gt;
** Prompts for the &#039;&#039;Server port&#039;&#039; (this is the number remembered during server setup)&lt;br /&gt;
&lt;br /&gt;
== Super Computing 2009 Demo ==&lt;br /&gt;
* A full simulation to visualization scenario:&lt;br /&gt;
** Execute the &#039;&#039;&#039;Execute Simulation (real)&#039;&#039;&#039; workflow&lt;br /&gt;
** Wait.&lt;br /&gt;
** Execute the &#039;&#039;&#039;Update Simulation (real)&#039;&#039;&#039; workflow&lt;br /&gt;
** Execute the &#039;&#039;&#039;WRFOUT Conversion&#039;&#039;&#039; workflow&lt;br /&gt;
** Execute the &#039;&#039;&#039;Fire Demo Visualization&#039;&#039;&#039; workflow&lt;br /&gt;
&lt;br /&gt;
[[Category:WRF]]&lt;br /&gt;
[[Category:Howtos|Supercomputing 2009 Demo]]&lt;br /&gt;
&lt;br /&gt;
== Works with ==&lt;br /&gt;
&lt;br /&gt;
* VisTrails 1.4.1 revision 1693 (2010-01-28 14:00) on Mac OS X 10.6.2&lt;br /&gt;
* WRF-Fire d08007ddfcd8c59095caf42f7633048b9a541732 on Rocks 5.1 Centos 5.3 gfortran-gcc  4.1.2, openmpi_gcc-1.2.8&lt;/div&gt;</summary>
		<author><name>Jdaniels</name></author>
	</entry>
	<entry>
		<id>https://wiki.openwfm.org/index.php?title=How_to_visualize_WRF-Fire_output_in_VisTrails&amp;diff=262</id>
		<title>How to visualize WRF-Fire output in VisTrails</title>
		<link rel="alternate" type="text/html" href="https://wiki.openwfm.org/index.php?title=How_to_visualize_WRF-Fire_output_in_VisTrails&amp;diff=262"/>
		<updated>2010-02-19T16:01:08Z</updated>

		<summary type="html">&lt;p&gt;Jdaniels: /* Visualization of Simulation Results */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Prerequisities ==&lt;br /&gt;
&lt;br /&gt;
* Download and install [http://www.vistrails.org VisTrails], and run it at least once.&lt;br /&gt;
* Download and install WRF-Fire. This can be done on a different computer; you will only need to move the input and output files.&lt;br /&gt;
** [[How to run WRF-Fire|Download, install and run WRF-Fire]] on the simple ideal example provided. If you get complaints about &#039;&#039;&#039;mpif90 -f90=gfortran&#039;&#039;&#039;, edit the file &#039;&#039;&#039;wrf-fire/WRFV3/configure.wrf&#039;&#039;&#039;, look for &#039;&#039;&#039;mpif90 -f90=$(FC)&#039;&#039;&#039; and delete the &#039;&#039;&#039;-f90=$(FC)&#039;&#039;&#039; flag.&lt;br /&gt;
** In &#039;&#039;&#039;wrf-fire/WRFV3&#039;&#039;&#039;, run &#039;&#039;&#039;compile em_real&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
== Local Simulation Execution ==&lt;br /&gt;
&lt;br /&gt;
* Download the tar ball ([http://www.cs.utah.edu/~jdaniels/research/wrf/scDemo2009.tar.gz] or the mirror [http://math.ucdenver.edu/~jmandel/fires/scDemo2009.tar.gz])&lt;br /&gt;
** Place the VisTrails packages into &#039;&#039;&#039;/Users/XXX/.vistrails/userpackages/&#039;&#039;&#039;&lt;br /&gt;
*** &#039;&#039;&#039;NumSciPy&#039;&#039;&#039; -- contains the wrapper modules for NumPy and SciPy functions&lt;br /&gt;
*** &#039;&#039;&#039;WRFtoVTK&#039;&#039;&#039; -- contains the wrf to vtk file conversion modules&lt;br /&gt;
*** &#039;&#039;&#039;demoNetwork&#039;&#039;&#039; -- contains the client modules to communicate with the server&lt;br /&gt;
*** &#039;&#039;&#039;extendDialog&#039;&#039;&#039; -- contains masked text dialogs for passwords&lt;br /&gt;
** Move the VisTrails workflow to a known location (i.e. &#039;&#039;/Users/XXX/Desktop/visExample/&#039;&#039;)&lt;br /&gt;
*** &#039;&#039;&#039;fireDemoSC2009.vt&#039;&#039;&#039; -- the VisTrails workflow for conversion and visualization&lt;br /&gt;
** Move the simulation inputs to a known location (i.e. &#039;&#039;/Users/XXX/Desktop/visExample&#039;&#039;)&lt;br /&gt;
*** &#039;&#039;&#039;sc2009inputs&#039;&#039;&#039; -- contains example simulation input files&lt;br /&gt;
&lt;br /&gt;
* Run the simulation with the example inputs (&#039;&#039;&#039;/Users/XXX/Desktop/visExample/sc2009inputs/&#039;&#039;&#039;)&lt;br /&gt;
** Wait for the simulation to complete&lt;br /&gt;
* Store the WRFOUT within a known directory (i.e. &#039;&#039;/Users/XXX/Desktop/visExample/sc2009outputs/&#039;&#039;)&lt;br /&gt;
** Setup a directory to save VTK files that will be generated from WRFOUT (i.e. &#039;&#039;/Users/XXX/Desktop/visExample/sc2009outputs/vtkFiles/&#039;&#039;)&lt;br /&gt;
&lt;br /&gt;
=== Visualization of Simulation Results ===&lt;br /&gt;
&lt;br /&gt;
[[File:Sc2009history.png|600px]]&lt;br /&gt;
* Run VisTrails and open the workflow (&#039;&#039;&#039;fireDemoSC2009.vt&#039;&#039;&#039;)&lt;br /&gt;
** Begin by navigating the history tree&lt;br /&gt;
** Execute the &#039;&#039;&#039;WRFOUT Conversion&#039;&#039;&#039; node (top of the right most branch)&lt;br /&gt;
*** NOTE: to &#039;execute&#039; a node, you must select the node.  It is highlighted and the corresponding workflow is shown in the smaller view window, then click on the &#039;execute&#039; button.&lt;br /&gt;
*** Prompts for the &#039;&#039;WRF directory&#039;&#039; (&#039;&#039;/Users/XXX/Desktop/visExample/sc2009outputs/&#039;&#039;)&lt;br /&gt;
*** Prompts for the &#039;&#039;VTK directory&#039;&#039; (&#039;&#039;/Users/XXX/Desktop/visExample/sc2009outputs/vtkFiles&#039;&#039;)&lt;br /&gt;
*** Wait for the conversion to complete (all modules turn green)&lt;br /&gt;
** Execute the &#039;&#039;&#039;Fire Demo Visualization&#039;&#039;&#039; node (top of the left most branch)&lt;br /&gt;
*** Prompts for the &#039;&#039;VTK directory&#039;&#039; (&#039;&#039;/Users/XXX/Desktop/visExample/sc2009outputs/vtkFiles&#039;&#039;)&lt;br /&gt;
*** Prompts for the &#039;&#039;Animation Delay&#039;&#039; (hit enter)&lt;br /&gt;
*** View the spread sheet to interact with the visualization&lt;br /&gt;
&lt;br /&gt;
=== Interacting with the Visualization ===&lt;br /&gt;
[[File:Sc2009results.png|600px]]&lt;br /&gt;
* left click will rotate the visualization&lt;br /&gt;
* Shift-left click will pan the visualization&lt;br /&gt;
* Ctrl-left click will zoom the visualization&lt;br /&gt;
* &#039;&#039;&#039;l&#039;&#039;&#039; toggles the streamline widget&lt;br /&gt;
* left click on the sreamline widget moves it around&lt;br /&gt;
* left click on the play widgets (left to right)&lt;br /&gt;
** &#039;&#039;step back&#039;&#039; -- step backwards one frame in the simulation&lt;br /&gt;
** &#039;&#039;play back&#039;&#039; -- play the simulation backwards&lt;br /&gt;
** &#039;&#039;stop&#039;&#039; -- pauses the simulation animation&lt;br /&gt;
** &#039;&#039;play forward&#039;&#039; -- play the simulation forward&lt;br /&gt;
** &#039;&#039;step forward&#039;&#039; -- step forward one frame in the simulation&lt;br /&gt;
&lt;br /&gt;
== Cluster-based Simulation Execution ==&lt;br /&gt;
=== Setting up the Python server on a remote machine or cluster ===&lt;br /&gt;
* Build the simulation binaries on the cluster&lt;br /&gt;
* On the cluster setup a home directory for the server&lt;br /&gt;
* Within this directory create virtual links to:&lt;br /&gt;
** &#039;&#039;&#039;ideal.exe&#039;&#039;&#039; -- the ideal simulation setup executable&lt;br /&gt;
** &#039;&#039;&#039;real.exe&#039;&#039;&#039; -- the real simulation setup executable&lt;br /&gt;
** &#039;&#039;&#039;wrf.exe&#039;&#039;&#039; -- the simulation binary&lt;br /&gt;
* Within this directory copy over the server files from the previous tar ball&lt;br /&gt;
** &#039;&#039;&#039;demoNetwork/execServer.py&#039;&#039;&#039; -- to be used on the cluster to launch the server&lt;br /&gt;
** &#039;&#039;&#039;demoNetwork/fireServer.py&#039;&#039;&#039; -- the server code&lt;br /&gt;
** &#039;&#039;&#039;demoNetwork/fireMessages.py&#039;&#039;&#039; -- the message passing scheme and code&lt;br /&gt;
** &#039;&#039;&#039;demoNetwork/userRegistration.py&#039;&#039;&#039; -- user registration script&lt;br /&gt;
** &#039;&#039;&#039;demoNetwork/README.txt&#039;&#039;&#039; -- a readme file explaining server setup in more detail&lt;br /&gt;
* Execute the python script to start the server (requires python 2.5 or greater)&lt;br /&gt;
** On the command line within the directory: &#039;&#039;python execServer.py&#039;&#039;&lt;br /&gt;
* View and remember the listening port output by the server&lt;br /&gt;
&lt;br /&gt;
=== Registering New Users with the Server ===&lt;br /&gt;
* Log in to the cluster hosting the server&lt;br /&gt;
* Change to the server home directory on the cluster&lt;br /&gt;
* Execute the python script for user registration&lt;br /&gt;
** On the command line: &#039;&#039;python userRegistration.py &amp;lt;username&amp;gt; &amp;lt;password&amp;gt;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
=== Executing Remote Simulations ===&lt;br /&gt;
* Run VisTrails and open the workflow (&#039;&#039;&#039;fireDemoSC2009.vt&#039;&#039;&#039;)&lt;br /&gt;
&lt;br /&gt;
* The &#039;&#039;&#039;Execute Simulation (real)&#039;&#039;&#039; node (top of the middle branch): Execution of this workflow sends an execution request to the server.  The VisTrails client communicates with the remote server using the md5 checksum of the simulation input files as a unique identifier.  The server will execute the simulation IFF it is not already stored within the user database.  Consequently, repeated execution requests of the same simulations will be ignored, only the first being executed.&lt;br /&gt;
** Prompts for the &#039;&#039;Server Name&#039;&#039;&lt;br /&gt;
** Prompts for the &#039;&#039;Username&#039;&#039;&lt;br /&gt;
** Prompts for the &#039;&#039;Password&#039;&#039; (this is the &#039;&#039;user registered&#039;&#039; password)&lt;br /&gt;
** Prompts for the &#039;&#039;Local Simulation Directory&#039;&#039; (&#039;&#039;/Users/XXX/Desktop/visExample/sc2009inputs/&#039;&#039;)&lt;br /&gt;
** Prompts for the &#039;&#039;Server port&#039;&#039; (this is the number remembered during server setup)&lt;br /&gt;
&lt;br /&gt;
* The &#039;&#039;&#039;Update Simulation (real)&#039;&#039;&#039; node (upper middle of the middle branch): Execution of this workflow will query the server for the latest &#039;&#039;WRFOUT&#039;&#039; files produced by the simulation for the given input files.  If the md5 checksum of the &#039;&#039;WRFOUT&#039;&#039; does not match between the server and the client, then the file is sent from the cluster to your local machine.  No files are sent from the server to the client if the md5 checksums are the same or if the server does not have a simulation recorded for the given input files.&lt;br /&gt;
** Prompts for the &#039;&#039;Server Name&#039;&#039;&lt;br /&gt;
** Prompts for the &#039;&#039;Username&#039;&#039;&lt;br /&gt;
** Prompts for the &#039;&#039;Password&#039;&#039; (this is the &#039;&#039;user registered&#039;&#039; password)&lt;br /&gt;
** Prompts for the &#039;&#039;Local Simulation Directory&#039;&#039; (&#039;&#039;/Users/XXX/Desktop/visExample/sc2009inputs/&#039;&#039;)&lt;br /&gt;
** Prompts for the &#039;&#039;Server port&#039;&#039; (this is the number remembered during server setup)&lt;br /&gt;
&lt;br /&gt;
* The &#039;&#039;&#039;Stop Simulation (real)&#039;&#039;&#039; node (lower middle of the middle branch): Execution of this workflow will send a termination request of the simulation to the server.  For simulations that run indefinitely, or are running for a long time, the user can explicitly terminate their continued computation.  The workflow prompts the user for the local directory of the input files, used as a means of identifying the simulation to which the user is referring.&lt;br /&gt;
** Prompts for the &#039;&#039;Server Name&#039;&#039;&lt;br /&gt;
** Prompts for the &#039;&#039;Username&#039;&#039;&lt;br /&gt;
** Prompts for the &#039;&#039;Password&#039;&#039; (this is the &#039;&#039;user registered&#039;&#039; password)&lt;br /&gt;
** Prompts for the &#039;&#039;Local Simulation Directory&#039;&#039; (&#039;&#039;/Users/XXX/Desktop/visExample/sc2009inputs/&#039;&#039;)&lt;br /&gt;
** Prompts for the &#039;&#039;Server port&#039;&#039; (this is the number remembered during server setup)&lt;br /&gt;
&lt;br /&gt;
* The &#039;&#039;&#039;Delete Simulation (real)&#039;&#039;&#039; node (lower middle of the middle branch): Execution of this workflow will send a deletion request of the simulation to the server.  After a simulation is run, it will remain on the server until it is explicitly deleted by the user.  Consequently, if a user terminates a simulation, then wishes to re-run the simulation, they must first delete it.  Otherwise, subsequent re-runs of the simulation will not occur because the server views the simulation as already executed.&lt;br /&gt;
** Prompts for the &#039;&#039;Server Name&#039;&#039;&lt;br /&gt;
** Prompts for the &#039;&#039;Username&#039;&#039;&lt;br /&gt;
** Prompts for the &#039;&#039;Password&#039;&#039; (this is the &#039;&#039;user registered&#039;&#039; password)&lt;br /&gt;
** Prompts for the &#039;&#039;Local Simulation Directory&#039;&#039; (&#039;&#039;/Users/XXX/Desktop/visExample/sc2009inputs/&#039;&#039;)&lt;br /&gt;
** Prompts for the &#039;&#039;Server port&#039;&#039; (this is the number remembered during server setup)&lt;br /&gt;
&lt;br /&gt;
== Super Computing 2009 Demo ==&lt;br /&gt;
* A full simulation to visualization scenario:&lt;br /&gt;
** Execute the &#039;&#039;&#039;Execute Simulation (real)&#039;&#039;&#039; workflow&lt;br /&gt;
** Wait.&lt;br /&gt;
** Execute the &#039;&#039;&#039;Update Simulation (real)&#039;&#039;&#039; workflow&lt;br /&gt;
** Execute the &#039;&#039;&#039;WRFOUT Conversion&#039;&#039;&#039; workflow&lt;br /&gt;
** Execute the &#039;&#039;&#039;Fire Demo Visualization&#039;&#039;&#039; workflow&lt;br /&gt;
&lt;br /&gt;
[[Category:WRF]]&lt;br /&gt;
[[Category:Howtos|Supercomputing 2009 Demo]]&lt;br /&gt;
&lt;br /&gt;
== Works with ==&lt;br /&gt;
&lt;br /&gt;
* VisTrails 1.4.1 revision 1693 (2010-01-28 14:00) on Mac OS X 10.6.2&lt;br /&gt;
* WRF-Fire d08007ddfcd8c59095caf42f7633048b9a541732 on Rocks 5.1 Centos 5.3 gfortran-gcc  4.1.2, openmpi_gcc-1.2.8&lt;/div&gt;</summary>
		<author><name>Jdaniels</name></author>
	</entry>
	<entry>
		<id>https://wiki.openwfm.org/index.php?title=How_to_visualize_WRF-Fire_output_in_VisTrails&amp;diff=261</id>
		<title>How to visualize WRF-Fire output in VisTrails</title>
		<link rel="alternate" type="text/html" href="https://wiki.openwfm.org/index.php?title=How_to_visualize_WRF-Fire_output_in_VisTrails&amp;diff=261"/>
		<updated>2010-02-19T16:00:07Z</updated>

		<summary type="html">&lt;p&gt;Jdaniels: /* Visualization of Simulation Results */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Prerequisities ==&lt;br /&gt;
&lt;br /&gt;
* Download and install [http://www.vistrails.org VisTrails], and run it at least once.&lt;br /&gt;
* Download and install WRF-Fire. This can be done on a different computer; you will only need to move the input and output files.&lt;br /&gt;
** [[How to run WRF-Fire|Download, install and run WRF-Fire]] on the simple ideal example provided. If you get complaints about &#039;&#039;&#039;mpif90 -f90=gfortran&#039;&#039;&#039;, edit the file &#039;&#039;&#039;wrf-fire/WRFV3/configure.wrf&#039;&#039;&#039;, look for &#039;&#039;&#039;mpif90 -f90=$(FC)&#039;&#039;&#039; and delete the &#039;&#039;&#039;-f90=$(FC)&#039;&#039;&#039; flag.&lt;br /&gt;
** In &#039;&#039;&#039;wrf-fire/WRFV3&#039;&#039;&#039;, run &#039;&#039;&#039;compile em_real&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
== Local Simulation Execution ==&lt;br /&gt;
&lt;br /&gt;
* Download the tar ball ([http://www.cs.utah.edu/~jdaniels/research/wrf/scDemo2009.tar.gz] or the mirror [http://math.ucdenver.edu/~jmandel/fires/scDemo2009.tar.gz])&lt;br /&gt;
** Place the VisTrails packages into &#039;&#039;&#039;/Users/XXX/.vistrails/userpackages/&#039;&#039;&#039;&lt;br /&gt;
*** &#039;&#039;&#039;NumSciPy&#039;&#039;&#039; -- contains the wrapper modules for NumPy and SciPy functions&lt;br /&gt;
*** &#039;&#039;&#039;WRFtoVTK&#039;&#039;&#039; -- contains the wrf to vtk file conversion modules&lt;br /&gt;
*** &#039;&#039;&#039;demoNetwork&#039;&#039;&#039; -- contains the client modules to communicate with the server&lt;br /&gt;
*** &#039;&#039;&#039;extendDialog&#039;&#039;&#039; -- contains masked text dialogs for passwords&lt;br /&gt;
** Move the VisTrails workflow to a known location (i.e. &#039;&#039;/Users/XXX/Desktop/visExample/&#039;&#039;)&lt;br /&gt;
*** &#039;&#039;&#039;fireDemoSC2009.vt&#039;&#039;&#039; -- the VisTrails workflow for conversion and visualization&lt;br /&gt;
** Move the simulation inputs to a known location (i.e. &#039;&#039;/Users/XXX/Desktop/visExample&#039;&#039;)&lt;br /&gt;
*** &#039;&#039;&#039;sc2009inputs&#039;&#039;&#039; -- contains example simulation input files&lt;br /&gt;
&lt;br /&gt;
* Run the simulation with the example inputs (&#039;&#039;&#039;/Users/XXX/Desktop/visExample/sc2009inputs/&#039;&#039;&#039;)&lt;br /&gt;
** Wait for the simulation to complete&lt;br /&gt;
* Store the WRFOUT within a known directory (i.e. &#039;&#039;/Users/XXX/Desktop/visExample/sc2009outputs/&#039;&#039;)&lt;br /&gt;
** Setup a directory to save VTK files that will be generated from WRFOUT (i.e. &#039;&#039;/Users/XXX/Desktop/visExample/sc2009outputs/vtkFiles/&#039;&#039;)&lt;br /&gt;
&lt;br /&gt;
=== Visualization of Simulation Results ===&lt;br /&gt;
&lt;br /&gt;
[[File:Sc2009history.png|600px]]&lt;br /&gt;
* Run VisTrails and open the workflow (&#039;&#039;&#039;fireDemoSC2009.vt&#039;&#039;&#039;)&lt;br /&gt;
** Begin by navigating the history tree&lt;br /&gt;
** Execute the &#039;&#039;&#039;WRFOUT Conversion&#039;&#039;&#039; node (top of the right most branch)&lt;br /&gt;
*** NOTE: to &#039;execute&#039; a node, you must select the node (it is highlighted and the corresponding&lt;br /&gt;
workflow is shown in the smaller view window), then click on the &#039;execute&#039; button.&lt;br /&gt;
*** Prompts for the &#039;&#039;WRF directory&#039;&#039; (&#039;&#039;/Users/XXX/Desktop/visExample/sc2009outputs/&#039;&#039;)&lt;br /&gt;
*** Prompts for the &#039;&#039;VTK directory&#039;&#039; (&#039;&#039;/Users/XXX/Desktop/visExample/sc2009outputs/vtkFiles&#039;&#039;)&lt;br /&gt;
*** Wait for the conversion to complete (all modules turn green)&lt;br /&gt;
** Execute the &#039;&#039;&#039;Fire Demo Visualization&#039;&#039;&#039; node (top of the left most branch)&lt;br /&gt;
*** Prompts for the &#039;&#039;VTK directory&#039;&#039; (&#039;&#039;/Users/XXX/Desktop/visExample/sc2009outputs/vtkFiles&#039;&#039;)&lt;br /&gt;
*** Prompts for the &#039;&#039;Animation Delay&#039;&#039; (hit enter)&lt;br /&gt;
*** View the spread sheet to interact with the visualization&lt;br /&gt;
&lt;br /&gt;
=== Interacting with the Visualization ===&lt;br /&gt;
[[File:Sc2009results.png|600px]]&lt;br /&gt;
* left click will rotate the visualization&lt;br /&gt;
* Shift-left click will pan the visualization&lt;br /&gt;
* Ctrl-left click will zoom the visualization&lt;br /&gt;
* &#039;&#039;&#039;l&#039;&#039;&#039; toggles the streamline widget&lt;br /&gt;
* left click on the sreamline widget moves it around&lt;br /&gt;
* left click on the play widgets (left to right)&lt;br /&gt;
** &#039;&#039;step back&#039;&#039; -- step backwards one frame in the simulation&lt;br /&gt;
** &#039;&#039;play back&#039;&#039; -- play the simulation backwards&lt;br /&gt;
** &#039;&#039;stop&#039;&#039; -- pauses the simulation animation&lt;br /&gt;
** &#039;&#039;play forward&#039;&#039; -- play the simulation forward&lt;br /&gt;
** &#039;&#039;step forward&#039;&#039; -- step forward one frame in the simulation&lt;br /&gt;
&lt;br /&gt;
== Cluster-based Simulation Execution ==&lt;br /&gt;
=== Setting up the Python server on a remote machine or cluster ===&lt;br /&gt;
* Build the simulation binaries on the cluster&lt;br /&gt;
* On the cluster setup a home directory for the server&lt;br /&gt;
* Within this directory create virtual links to:&lt;br /&gt;
** &#039;&#039;&#039;ideal.exe&#039;&#039;&#039; -- the ideal simulation setup executable&lt;br /&gt;
** &#039;&#039;&#039;real.exe&#039;&#039;&#039; -- the real simulation setup executable&lt;br /&gt;
** &#039;&#039;&#039;wrf.exe&#039;&#039;&#039; -- the simulation binary&lt;br /&gt;
* Within this directory copy over the server files from the previous tar ball&lt;br /&gt;
** &#039;&#039;&#039;demoNetwork/execServer.py&#039;&#039;&#039; -- to be used on the cluster to launch the server&lt;br /&gt;
** &#039;&#039;&#039;demoNetwork/fireServer.py&#039;&#039;&#039; -- the server code&lt;br /&gt;
** &#039;&#039;&#039;demoNetwork/fireMessages.py&#039;&#039;&#039; -- the message passing scheme and code&lt;br /&gt;
** &#039;&#039;&#039;demoNetwork/userRegistration.py&#039;&#039;&#039; -- user registration script&lt;br /&gt;
** &#039;&#039;&#039;demoNetwork/README.txt&#039;&#039;&#039; -- a readme file explaining server setup in more detail&lt;br /&gt;
* Execute the python script to start the server (requires python 2.5 or greater)&lt;br /&gt;
** On the command line within the directory: &#039;&#039;python execServer.py&#039;&#039;&lt;br /&gt;
* View and remember the listening port output by the server&lt;br /&gt;
&lt;br /&gt;
=== Registering New Users with the Server ===&lt;br /&gt;
* Log in to the cluster hosting the server&lt;br /&gt;
* Change to the server home directory on the cluster&lt;br /&gt;
* Execute the python script for user registration&lt;br /&gt;
** On the command line: &#039;&#039;python userRegistration.py &amp;lt;username&amp;gt; &amp;lt;password&amp;gt;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
=== Executing Remote Simulations ===&lt;br /&gt;
* Run VisTrails and open the workflow (&#039;&#039;&#039;fireDemoSC2009.vt&#039;&#039;&#039;)&lt;br /&gt;
&lt;br /&gt;
* The &#039;&#039;&#039;Execute Simulation (real)&#039;&#039;&#039; node (top of the middle branch): Execution of this workflow sends an execution request to the server.  The VisTrails client communicates with the remote server using the md5 checksum of the simulation input files as a unique identifier.  The server will execute the simulation IFF it is not already stored within the user database.  Consequently, repeated execution requests of the same simulations will be ignored, only the first being executed.&lt;br /&gt;
** Prompts for the &#039;&#039;Server Name&#039;&#039;&lt;br /&gt;
** Prompts for the &#039;&#039;Username&#039;&#039;&lt;br /&gt;
** Prompts for the &#039;&#039;Password&#039;&#039; (this is the &#039;&#039;user registered&#039;&#039; password)&lt;br /&gt;
** Prompts for the &#039;&#039;Local Simulation Directory&#039;&#039; (&#039;&#039;/Users/XXX/Desktop/visExample/sc2009inputs/&#039;&#039;)&lt;br /&gt;
** Prompts for the &#039;&#039;Server port&#039;&#039; (this is the number remembered during server setup)&lt;br /&gt;
&lt;br /&gt;
* The &#039;&#039;&#039;Update Simulation (real)&#039;&#039;&#039; node (upper middle of the middle branch): Execution of this workflow will query the server for the latest &#039;&#039;WRFOUT&#039;&#039; files produced by the simulation for the given input files.  If the md5 checksum of the &#039;&#039;WRFOUT&#039;&#039; does not match between the server and the client, then the file is sent from the cluster to your local machine.  No files are sent from the server to the client if the md5 checksums are the same or if the server does not have a simulation recorded for the given input files.&lt;br /&gt;
** Prompts for the &#039;&#039;Server Name&#039;&#039;&lt;br /&gt;
** Prompts for the &#039;&#039;Username&#039;&#039;&lt;br /&gt;
** Prompts for the &#039;&#039;Password&#039;&#039; (this is the &#039;&#039;user registered&#039;&#039; password)&lt;br /&gt;
** Prompts for the &#039;&#039;Local Simulation Directory&#039;&#039; (&#039;&#039;/Users/XXX/Desktop/visExample/sc2009inputs/&#039;&#039;)&lt;br /&gt;
** Prompts for the &#039;&#039;Server port&#039;&#039; (this is the number remembered during server setup)&lt;br /&gt;
&lt;br /&gt;
* The &#039;&#039;&#039;Stop Simulation (real)&#039;&#039;&#039; node (lower middle of the middle branch): Execution of this workflow will send a termination request of the simulation to the server.  For simulations that run indefinitely, or are running for a long time, the user can explicitly terminate their continued computation.  The workflow prompts the user for the local directory of the input files, used as a means of identifying the simulation to which the user is referring.&lt;br /&gt;
** Prompts for the &#039;&#039;Server Name&#039;&#039;&lt;br /&gt;
** Prompts for the &#039;&#039;Username&#039;&#039;&lt;br /&gt;
** Prompts for the &#039;&#039;Password&#039;&#039; (this is the &#039;&#039;user registered&#039;&#039; password)&lt;br /&gt;
** Prompts for the &#039;&#039;Local Simulation Directory&#039;&#039; (&#039;&#039;/Users/XXX/Desktop/visExample/sc2009inputs/&#039;&#039;)&lt;br /&gt;
** Prompts for the &#039;&#039;Server port&#039;&#039; (this is the number remembered during server setup)&lt;br /&gt;
&lt;br /&gt;
* The &#039;&#039;&#039;Delete Simulation (real)&#039;&#039;&#039; node (lower middle of the middle branch): Execution of this workflow will send a deletion request of the simulation to the server.  After a simulation is run, it will remain on the server until it is explicitly deleted by the user.  Consequently, if a user terminates a simulation, then wishes to re-run the simulation, they must first delete it.  Otherwise, subsequent re-runs of the simulation will not occur because the server views the simulation as already executed.&lt;br /&gt;
** Prompts for the &#039;&#039;Server Name&#039;&#039;&lt;br /&gt;
** Prompts for the &#039;&#039;Username&#039;&#039;&lt;br /&gt;
** Prompts for the &#039;&#039;Password&#039;&#039; (this is the &#039;&#039;user registered&#039;&#039; password)&lt;br /&gt;
** Prompts for the &#039;&#039;Local Simulation Directory&#039;&#039; (&#039;&#039;/Users/XXX/Desktop/visExample/sc2009inputs/&#039;&#039;)&lt;br /&gt;
** Prompts for the &#039;&#039;Server port&#039;&#039; (this is the number remembered during server setup)&lt;br /&gt;
&lt;br /&gt;
== Super Computing 2009 Demo ==&lt;br /&gt;
* A full simulation to visualization scenario:&lt;br /&gt;
** Execute the &#039;&#039;&#039;Execute Simulation (real)&#039;&#039;&#039; workflow&lt;br /&gt;
** Wait.&lt;br /&gt;
** Execute the &#039;&#039;&#039;Update Simulation (real)&#039;&#039;&#039; workflow&lt;br /&gt;
** Execute the &#039;&#039;&#039;WRFOUT Conversion&#039;&#039;&#039; workflow&lt;br /&gt;
** Execute the &#039;&#039;&#039;Fire Demo Visualization&#039;&#039;&#039; workflow&lt;br /&gt;
&lt;br /&gt;
[[Category:WRF]]&lt;br /&gt;
[[Category:Howtos|Supercomputing 2009 Demo]]&lt;br /&gt;
&lt;br /&gt;
== Works with ==&lt;br /&gt;
&lt;br /&gt;
* VisTrails 1.4.1 revision 1693 (2010-01-28 14:00) on Mac OS X 10.6.2&lt;br /&gt;
* WRF-Fire d08007ddfcd8c59095caf42f7633048b9a541732 on Rocks 5.1 Centos 5.3 gfortran-gcc  4.1.2, openmpi_gcc-1.2.8&lt;/div&gt;</summary>
		<author><name>Jdaniels</name></author>
	</entry>
	<entry>
		<id>https://wiki.openwfm.org/index.php?title=How_to_visualize_WRF-Fire_output_in_VisTrails&amp;diff=238</id>
		<title>How to visualize WRF-Fire output in VisTrails</title>
		<link rel="alternate" type="text/html" href="https://wiki.openwfm.org/index.php?title=How_to_visualize_WRF-Fire_output_in_VisTrails&amp;diff=238"/>
		<updated>2010-02-10T22:16:04Z</updated>

		<summary type="html">&lt;p&gt;Jdaniels: /* Super Computing 2009 Demo */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Local Simulation Execution ==&lt;br /&gt;
&lt;br /&gt;
* Download the tar ball ([http://www.cs.utah.edu/~jdaniels/research/wrf/scDemo2009.tar.gz])&lt;br /&gt;
** Place the VisTrails packages into &#039;&#039;&#039;/Users/XXX/.vistrails/userpackages/&#039;&#039;&#039;&lt;br /&gt;
*** &#039;&#039;&#039;NumSciPy&#039;&#039;&#039; -- contains the wrapper modules for NumPy and SciPy functions&lt;br /&gt;
*** &#039;&#039;&#039;WRFtoVTK&#039;&#039;&#039; -- contains the wrf to vtk file conversion modules&lt;br /&gt;
*** &#039;&#039;&#039;demoNetwork&#039;&#039;&#039; -- contains the client modules to communicate with the server&lt;br /&gt;
*** &#039;&#039;&#039;extendDialog&#039;&#039;&#039; -- contains masked text dialogs for passwords&lt;br /&gt;
** Move the VisTrails workflow to a known location (i.e. &#039;&#039;/Users/XXX/Desktop/visExample/&#039;&#039;)&lt;br /&gt;
*** &#039;&#039;&#039;fireDemoSC2009.vt&#039;&#039;&#039; -- the VisTrails workflow for conversion and visualization&lt;br /&gt;
** Move the simulation inputs to a known location (i.e. &#039;&#039;/Users/XXX/Desktop/visExample&#039;&#039;)&lt;br /&gt;
*** &#039;&#039;&#039;sc2009inputs&#039;&#039;&#039; -- contains example simulation input files&lt;br /&gt;
&lt;br /&gt;
* Run the simulation with the example inputs (&#039;&#039;&#039;/Users/XXX/Desktop/visExample/sc2009inputs/&#039;&#039;&#039;)&lt;br /&gt;
** Wait for the simulation to complete&lt;br /&gt;
* Store the WRFOUT within a known directory (i.e. &#039;&#039;/Users/XXX/Desktop/visExample/sc2009outputs/&#039;&#039;)&lt;br /&gt;
** Setup a directory to save VTK files that will be generated from WRFOUT (i.e. &#039;&#039;/Users/XXX/Desktop/visExample/sc2009outputs/vtkFiles/&#039;&#039;)&lt;br /&gt;
&lt;br /&gt;
=== Visualization of Simulation Results ===&lt;br /&gt;
&lt;br /&gt;
[[File:Sc2009history.png|600px]]&lt;br /&gt;
* Run VisTrails and open the workflow (&#039;&#039;&#039;fireDemoSC2009.vt&#039;&#039;&#039;)&lt;br /&gt;
** Begin by navigating the history tree&lt;br /&gt;
** Execute the &#039;&#039;&#039;WRFOUT Conversion&#039;&#039;&#039; node (top of the right most branch)&lt;br /&gt;
*** Prompts for the &#039;&#039;WRF directory&#039;&#039; (&#039;&#039;/Users/XXX/Desktop/visExample/sc2009outputs/&#039;&#039;)&lt;br /&gt;
*** Prompts for the &#039;&#039;VTK directory&#039;&#039; (&#039;&#039;/Users/XXX/Desktop/visExample/sc2009outputs/vtkFiles&#039;&#039;)&lt;br /&gt;
*** Wait for the conversion to complete (all modules turn green)&lt;br /&gt;
** Execute the &#039;&#039;&#039;Fire Demo Visualization&#039;&#039;&#039; node (top of the left most branch)&lt;br /&gt;
*** Prompts for the &#039;&#039;VTK directory&#039;&#039; (&#039;&#039;/Users/XXX/Desktop/visExample/sc2009outputs/vtkFiles&#039;&#039;)&lt;br /&gt;
*** Prompts for the &#039;&#039;Animation Delay&#039;&#039; (hit enter)&lt;br /&gt;
*** View the spread sheet to interact with the visualization&lt;br /&gt;
&lt;br /&gt;
=== Interacting with the Visualization ===&lt;br /&gt;
[[File:Sc2009results.png|600px]]&lt;br /&gt;
* left click will rotate the visualization&lt;br /&gt;
* Shift-left click will pan the visualization&lt;br /&gt;
* Ctrl-left click will zoom the visualization&lt;br /&gt;
* &#039;&#039;&#039;l&#039;&#039;&#039; toggles the streamline widget&lt;br /&gt;
* left click on the sreamline widget moves it around&lt;br /&gt;
* left click on the play widgets (left to right)&lt;br /&gt;
** &#039;&#039;step back&#039;&#039; -- step backwards one frame in the simulation&lt;br /&gt;
** &#039;&#039;play back&#039;&#039; -- play the simulation backwards&lt;br /&gt;
** &#039;&#039;stop&#039;&#039; -- pauses the simulation animation&lt;br /&gt;
** &#039;&#039;play forward&#039;&#039; -- play the simulation forward&lt;br /&gt;
** &#039;&#039;step forward&#039;&#039; -- step forward one frame in the simulation&lt;br /&gt;
&lt;br /&gt;
== Cluster-based Simulation Execution ==&lt;br /&gt;
=== Setting up the Python server on a remote machine or cluster ===&lt;br /&gt;
* Build the simulation binaries on the cluster&lt;br /&gt;
* On the cluster setup a home directory for the server&lt;br /&gt;
* Within this directory create virtual links to:&lt;br /&gt;
** &#039;&#039;&#039;ideal.exe&#039;&#039;&#039; -- the ideal simulation setup executable&lt;br /&gt;
** &#039;&#039;&#039;real.exe&#039;&#039;&#039; -- the real simulation setup executable&lt;br /&gt;
** &#039;&#039;&#039;wrf.exe&#039;&#039;&#039; -- the simulation binary&lt;br /&gt;
* Within this directory copy over the server files from the previous tar ball&lt;br /&gt;
** &#039;&#039;&#039;demoNetwork/execServer.py&#039;&#039;&#039; -- to be used on the cluster to launch the server&lt;br /&gt;
** &#039;&#039;&#039;demoNetwork/fireServer.py&#039;&#039;&#039; -- the server code&lt;br /&gt;
** &#039;&#039;&#039;demoNetwork/fireMessages.py&#039;&#039;&#039; -- the message passing scheme and code&lt;br /&gt;
** &#039;&#039;&#039;demoNetwork/userRegistration.py&#039;&#039;&#039; -- user registration script&lt;br /&gt;
** &#039;&#039;&#039;demoNetwork/README.txt&#039;&#039;&#039; -- a readme file explaining server setup in more detail&lt;br /&gt;
* Execute the python script to start the server (requires python 2.5 or greater)&lt;br /&gt;
** On the command line within the directory: &#039;&#039;python execServer.py&#039;&#039;&lt;br /&gt;
* View and remember the listening port output by the server&lt;br /&gt;
&lt;br /&gt;
=== Registering New Users with the Server ===&lt;br /&gt;
* Log in to the cluster hosting the server&lt;br /&gt;
* Change to the server home directory on the cluster&lt;br /&gt;
* Execute the python script for user registration&lt;br /&gt;
** On the command line: &#039;&#039;python userRegistration.py &amp;lt;username&amp;gt; &amp;lt;password&amp;gt;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
=== Executing Remote Simulations ===&lt;br /&gt;
* Run VisTrails and open the workflow (&#039;&#039;&#039;fireDemoSC2009.vt&#039;&#039;&#039;)&lt;br /&gt;
&lt;br /&gt;
* The &#039;&#039;&#039;Execute Simulation (real)&#039;&#039;&#039; node (top of the middle branch): Execution of this workflow sends an execution request to the server.  The VisTrails client communicates with the remote server using the md5 checksum of the simulation input files as a unique identifier.  The server will execute the simulation IFF it is not already stored within the user database.  Consequently, repeated execution requests of the same simulations will be ignored, only the first being executed.&lt;br /&gt;
** Prompts for the &#039;&#039;Server Name&#039;&#039;&lt;br /&gt;
** Prompts for the &#039;&#039;Username&#039;&#039;&lt;br /&gt;
** Prompts for the &#039;&#039;Password&#039;&#039; (this is the &#039;&#039;user registered&#039;&#039; password)&lt;br /&gt;
** Prompts for the &#039;&#039;Local Simulation Directory&#039;&#039; (&#039;&#039;/Users/XXX/Desktop/visExample/sc2009inputs/&#039;&#039;)&lt;br /&gt;
** Prompts for the &#039;&#039;Server port&#039;&#039; (this is the number remembered during server setup)&lt;br /&gt;
&lt;br /&gt;
* The &#039;&#039;&#039;Update Simulation (real)&#039;&#039;&#039; node (upper middle of the middle branch): Execution of this workflow will query the server for the latest &#039;&#039;WRFOUT&#039;&#039; files produced by the simulation for the given input files.  If the md5 checksum of the &#039;&#039;WRFOUT&#039;&#039; does not match between the server and the client, then the file is sent from the cluster to your local machine.  No files are sent from the server to the client if the md5 checksums are the same or if the server does not have a simulation recorded for the given input files.&lt;br /&gt;
** Prompts for the &#039;&#039;Server Name&#039;&#039;&lt;br /&gt;
** Prompts for the &#039;&#039;Username&#039;&#039;&lt;br /&gt;
** Prompts for the &#039;&#039;Password&#039;&#039; (this is the &#039;&#039;user registered&#039;&#039; password)&lt;br /&gt;
** Prompts for the &#039;&#039;Local Simulation Directory&#039;&#039; (&#039;&#039;/Users/XXX/Desktop/visExample/sc2009inputs/&#039;&#039;)&lt;br /&gt;
** Prompts for the &#039;&#039;Server port&#039;&#039; (this is the number remembered during server setup)&lt;br /&gt;
&lt;br /&gt;
* The &#039;&#039;&#039;Stop Simulation (real)&#039;&#039;&#039; node (lower middle of the middle branch): Execution of this workflow will send a termination request of the simulation to the server.  For simulations that run indefinitely, or are running for a long time, the user can explicitly terminate their continued computation.  The workflow prompts the user for the local directory of the input files, used as a means of identifying the simulation to which the user is referring.&lt;br /&gt;
** Prompts for the &#039;&#039;Server Name&#039;&#039;&lt;br /&gt;
** Prompts for the &#039;&#039;Username&#039;&#039;&lt;br /&gt;
** Prompts for the &#039;&#039;Password&#039;&#039; (this is the &#039;&#039;user registered&#039;&#039; password)&lt;br /&gt;
** Prompts for the &#039;&#039;Local Simulation Directory&#039;&#039; (&#039;&#039;/Users/XXX/Desktop/visExample/sc2009inputs/&#039;&#039;)&lt;br /&gt;
** Prompts for the &#039;&#039;Server port&#039;&#039; (this is the number remembered during server setup)&lt;br /&gt;
&lt;br /&gt;
* The &#039;&#039;&#039;Delete Simulation (real)&#039;&#039;&#039; node (lower middle of the middle branch): Execution of this workflow will send a deletion request of the simulation to the server.  After a simulation is run, it will remain on the server until it is explicitly deleted by the user.  Consequently, if a user terminates a simulation, then wishes to re-run the simulation, they must first delete it.  Otherwise, subsequent re-runs of the simulation will not occur because the server views the simulation as already executed.&lt;br /&gt;
** Prompts for the &#039;&#039;Server Name&#039;&#039;&lt;br /&gt;
** Prompts for the &#039;&#039;Username&#039;&#039;&lt;br /&gt;
** Prompts for the &#039;&#039;Password&#039;&#039; (this is the &#039;&#039;user registered&#039;&#039; password)&lt;br /&gt;
** Prompts for the &#039;&#039;Local Simulation Directory&#039;&#039; (&#039;&#039;/Users/XXX/Desktop/visExample/sc2009inputs/&#039;&#039;)&lt;br /&gt;
** Prompts for the &#039;&#039;Server port&#039;&#039; (this is the number remembered during server setup)&lt;br /&gt;
&lt;br /&gt;
== Super Computing 2009 Demo ==&lt;br /&gt;
* A full simulation to visualization scenario:&lt;br /&gt;
** Execute the &#039;&#039;&#039;Execute Simulation (real)&#039;&#039;&#039; workflow&lt;br /&gt;
** Wait.&lt;br /&gt;
** Execute the &#039;&#039;&#039;Update Simulation (real)&#039;&#039;&#039; workflow&lt;br /&gt;
** Execute the &#039;&#039;&#039;WRFOUT Conversion&#039;&#039;&#039; workflow&lt;br /&gt;
** Execute the &#039;&#039;&#039;Fire Demo Visualization&#039;&#039;&#039; workflow&lt;br /&gt;
&lt;br /&gt;
[[Category:WRF]]&lt;br /&gt;
[[Category:Howtos|Supercomputing 2009 Demo]]&lt;/div&gt;</summary>
		<author><name>Jdaniels</name></author>
	</entry>
	<entry>
		<id>https://wiki.openwfm.org/index.php?title=How_to_visualize_WRF-Fire_output_in_VisTrails&amp;diff=237</id>
		<title>How to visualize WRF-Fire output in VisTrails</title>
		<link rel="alternate" type="text/html" href="https://wiki.openwfm.org/index.php?title=How_to_visualize_WRF-Fire_output_in_VisTrails&amp;diff=237"/>
		<updated>2010-02-10T22:15:29Z</updated>

		<summary type="html">&lt;p&gt;Jdaniels: /* Local Simulation Execution */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Local Simulation Execution ==&lt;br /&gt;
&lt;br /&gt;
* Download the tar ball ([http://www.cs.utah.edu/~jdaniels/research/wrf/scDemo2009.tar.gz])&lt;br /&gt;
** Place the VisTrails packages into &#039;&#039;&#039;/Users/XXX/.vistrails/userpackages/&#039;&#039;&#039;&lt;br /&gt;
*** &#039;&#039;&#039;NumSciPy&#039;&#039;&#039; -- contains the wrapper modules for NumPy and SciPy functions&lt;br /&gt;
*** &#039;&#039;&#039;WRFtoVTK&#039;&#039;&#039; -- contains the wrf to vtk file conversion modules&lt;br /&gt;
*** &#039;&#039;&#039;demoNetwork&#039;&#039;&#039; -- contains the client modules to communicate with the server&lt;br /&gt;
*** &#039;&#039;&#039;extendDialog&#039;&#039;&#039; -- contains masked text dialogs for passwords&lt;br /&gt;
** Move the VisTrails workflow to a known location (i.e. &#039;&#039;/Users/XXX/Desktop/visExample/&#039;&#039;)&lt;br /&gt;
*** &#039;&#039;&#039;fireDemoSC2009.vt&#039;&#039;&#039; -- the VisTrails workflow for conversion and visualization&lt;br /&gt;
** Move the simulation inputs to a known location (i.e. &#039;&#039;/Users/XXX/Desktop/visExample&#039;&#039;)&lt;br /&gt;
*** &#039;&#039;&#039;sc2009inputs&#039;&#039;&#039; -- contains example simulation input files&lt;br /&gt;
&lt;br /&gt;
* Run the simulation with the example inputs (&#039;&#039;&#039;/Users/XXX/Desktop/visExample/sc2009inputs/&#039;&#039;&#039;)&lt;br /&gt;
** Wait for the simulation to complete&lt;br /&gt;
* Store the WRFOUT within a known directory (i.e. &#039;&#039;/Users/XXX/Desktop/visExample/sc2009outputs/&#039;&#039;)&lt;br /&gt;
** Setup a directory to save VTK files that will be generated from WRFOUT (i.e. &#039;&#039;/Users/XXX/Desktop/visExample/sc2009outputs/vtkFiles/&#039;&#039;)&lt;br /&gt;
&lt;br /&gt;
=== Visualization of Simulation Results ===&lt;br /&gt;
&lt;br /&gt;
[[File:Sc2009history.png|600px]]&lt;br /&gt;
* Run VisTrails and open the workflow (&#039;&#039;&#039;fireDemoSC2009.vt&#039;&#039;&#039;)&lt;br /&gt;
** Begin by navigating the history tree&lt;br /&gt;
** Execute the &#039;&#039;&#039;WRFOUT Conversion&#039;&#039;&#039; node (top of the right most branch)&lt;br /&gt;
*** Prompts for the &#039;&#039;WRF directory&#039;&#039; (&#039;&#039;/Users/XXX/Desktop/visExample/sc2009outputs/&#039;&#039;)&lt;br /&gt;
*** Prompts for the &#039;&#039;VTK directory&#039;&#039; (&#039;&#039;/Users/XXX/Desktop/visExample/sc2009outputs/vtkFiles&#039;&#039;)&lt;br /&gt;
*** Wait for the conversion to complete (all modules turn green)&lt;br /&gt;
** Execute the &#039;&#039;&#039;Fire Demo Visualization&#039;&#039;&#039; node (top of the left most branch)&lt;br /&gt;
*** Prompts for the &#039;&#039;VTK directory&#039;&#039; (&#039;&#039;/Users/XXX/Desktop/visExample/sc2009outputs/vtkFiles&#039;&#039;)&lt;br /&gt;
*** Prompts for the &#039;&#039;Animation Delay&#039;&#039; (hit enter)&lt;br /&gt;
*** View the spread sheet to interact with the visualization&lt;br /&gt;
&lt;br /&gt;
=== Interacting with the Visualization ===&lt;br /&gt;
[[File:Sc2009results.png|600px]]&lt;br /&gt;
* left click will rotate the visualization&lt;br /&gt;
* Shift-left click will pan the visualization&lt;br /&gt;
* Ctrl-left click will zoom the visualization&lt;br /&gt;
* &#039;&#039;&#039;l&#039;&#039;&#039; toggles the streamline widget&lt;br /&gt;
* left click on the sreamline widget moves it around&lt;br /&gt;
* left click on the play widgets (left to right)&lt;br /&gt;
** &#039;&#039;step back&#039;&#039; -- step backwards one frame in the simulation&lt;br /&gt;
** &#039;&#039;play back&#039;&#039; -- play the simulation backwards&lt;br /&gt;
** &#039;&#039;stop&#039;&#039; -- pauses the simulation animation&lt;br /&gt;
** &#039;&#039;play forward&#039;&#039; -- play the simulation forward&lt;br /&gt;
** &#039;&#039;step forward&#039;&#039; -- step forward one frame in the simulation&lt;br /&gt;
&lt;br /&gt;
== Cluster-based Simulation Execution ==&lt;br /&gt;
=== Setting up the Python server on a remote machine or cluster ===&lt;br /&gt;
* Build the simulation binaries on the cluster&lt;br /&gt;
* On the cluster setup a home directory for the server&lt;br /&gt;
* Within this directory create virtual links to:&lt;br /&gt;
** &#039;&#039;&#039;ideal.exe&#039;&#039;&#039; -- the ideal simulation setup executable&lt;br /&gt;
** &#039;&#039;&#039;real.exe&#039;&#039;&#039; -- the real simulation setup executable&lt;br /&gt;
** &#039;&#039;&#039;wrf.exe&#039;&#039;&#039; -- the simulation binary&lt;br /&gt;
* Within this directory copy over the server files from the previous tar ball&lt;br /&gt;
** &#039;&#039;&#039;demoNetwork/execServer.py&#039;&#039;&#039; -- to be used on the cluster to launch the server&lt;br /&gt;
** &#039;&#039;&#039;demoNetwork/fireServer.py&#039;&#039;&#039; -- the server code&lt;br /&gt;
** &#039;&#039;&#039;demoNetwork/fireMessages.py&#039;&#039;&#039; -- the message passing scheme and code&lt;br /&gt;
** &#039;&#039;&#039;demoNetwork/userRegistration.py&#039;&#039;&#039; -- user registration script&lt;br /&gt;
** &#039;&#039;&#039;demoNetwork/README.txt&#039;&#039;&#039; -- a readme file explaining server setup in more detail&lt;br /&gt;
* Execute the python script to start the server (requires python 2.5 or greater)&lt;br /&gt;
** On the command line within the directory: &#039;&#039;python execServer.py&#039;&#039;&lt;br /&gt;
* View and remember the listening port output by the server&lt;br /&gt;
&lt;br /&gt;
=== Registering New Users with the Server ===&lt;br /&gt;
* Log in to the cluster hosting the server&lt;br /&gt;
* Change to the server home directory on the cluster&lt;br /&gt;
* Execute the python script for user registration&lt;br /&gt;
** On the command line: &#039;&#039;python userRegistration.py &amp;lt;username&amp;gt; &amp;lt;password&amp;gt;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
=== Executing Remote Simulations ===&lt;br /&gt;
* Run VisTrails and open the workflow (&#039;&#039;&#039;fireDemoSC2009.vt&#039;&#039;&#039;)&lt;br /&gt;
&lt;br /&gt;
* The &#039;&#039;&#039;Execute Simulation (real)&#039;&#039;&#039; node (top of the middle branch): Execution of this workflow sends an execution request to the server.  The VisTrails client communicates with the remote server using the md5 checksum of the simulation input files as a unique identifier.  The server will execute the simulation IFF it is not already stored within the user database.  Consequently, repeated execution requests of the same simulations will be ignored, only the first being executed.&lt;br /&gt;
** Prompts for the &#039;&#039;Server Name&#039;&#039;&lt;br /&gt;
** Prompts for the &#039;&#039;Username&#039;&#039;&lt;br /&gt;
** Prompts for the &#039;&#039;Password&#039;&#039; (this is the &#039;&#039;user registered&#039;&#039; password)&lt;br /&gt;
** Prompts for the &#039;&#039;Local Simulation Directory&#039;&#039; (&#039;&#039;/Users/XXX/Desktop/visExample/sc2009inputs/&#039;&#039;)&lt;br /&gt;
** Prompts for the &#039;&#039;Server port&#039;&#039; (this is the number remembered during server setup)&lt;br /&gt;
&lt;br /&gt;
* The &#039;&#039;&#039;Update Simulation (real)&#039;&#039;&#039; node (upper middle of the middle branch): Execution of this workflow will query the server for the latest &#039;&#039;WRFOUT&#039;&#039; files produced by the simulation for the given input files.  If the md5 checksum of the &#039;&#039;WRFOUT&#039;&#039; does not match between the server and the client, then the file is sent from the cluster to your local machine.  No files are sent from the server to the client if the md5 checksums are the same or if the server does not have a simulation recorded for the given input files.&lt;br /&gt;
** Prompts for the &#039;&#039;Server Name&#039;&#039;&lt;br /&gt;
** Prompts for the &#039;&#039;Username&#039;&#039;&lt;br /&gt;
** Prompts for the &#039;&#039;Password&#039;&#039; (this is the &#039;&#039;user registered&#039;&#039; password)&lt;br /&gt;
** Prompts for the &#039;&#039;Local Simulation Directory&#039;&#039; (&#039;&#039;/Users/XXX/Desktop/visExample/sc2009inputs/&#039;&#039;)&lt;br /&gt;
** Prompts for the &#039;&#039;Server port&#039;&#039; (this is the number remembered during server setup)&lt;br /&gt;
&lt;br /&gt;
* The &#039;&#039;&#039;Stop Simulation (real)&#039;&#039;&#039; node (lower middle of the middle branch): Execution of this workflow will send a termination request of the simulation to the server.  For simulations that run indefinitely, or are running for a long time, the user can explicitly terminate their continued computation.  The workflow prompts the user for the local directory of the input files, used as a means of identifying the simulation to which the user is referring.&lt;br /&gt;
** Prompts for the &#039;&#039;Server Name&#039;&#039;&lt;br /&gt;
** Prompts for the &#039;&#039;Username&#039;&#039;&lt;br /&gt;
** Prompts for the &#039;&#039;Password&#039;&#039; (this is the &#039;&#039;user registered&#039;&#039; password)&lt;br /&gt;
** Prompts for the &#039;&#039;Local Simulation Directory&#039;&#039; (&#039;&#039;/Users/XXX/Desktop/visExample/sc2009inputs/&#039;&#039;)&lt;br /&gt;
** Prompts for the &#039;&#039;Server port&#039;&#039; (this is the number remembered during server setup)&lt;br /&gt;
&lt;br /&gt;
* The &#039;&#039;&#039;Delete Simulation (real)&#039;&#039;&#039; node (lower middle of the middle branch): Execution of this workflow will send a deletion request of the simulation to the server.  After a simulation is run, it will remain on the server until it is explicitly deleted by the user.  Consequently, if a user terminates a simulation, then wishes to re-run the simulation, they must first delete it.  Otherwise, subsequent re-runs of the simulation will not occur because the server views the simulation as already executed.&lt;br /&gt;
** Prompts for the &#039;&#039;Server Name&#039;&#039;&lt;br /&gt;
** Prompts for the &#039;&#039;Username&#039;&#039;&lt;br /&gt;
** Prompts for the &#039;&#039;Password&#039;&#039; (this is the &#039;&#039;user registered&#039;&#039; password)&lt;br /&gt;
** Prompts for the &#039;&#039;Local Simulation Directory&#039;&#039; (&#039;&#039;/Users/XXX/Desktop/visExample/sc2009inputs/&#039;&#039;)&lt;br /&gt;
** Prompts for the &#039;&#039;Server port&#039;&#039; (this is the number remembered during server setup)&lt;br /&gt;
&lt;br /&gt;
=== Super Computing 2009 Demo ===&lt;br /&gt;
* A full simulation to visualization scenario:&lt;br /&gt;
** Execute the &#039;&#039;&#039;Execute Simulation (real)&#039;&#039;&#039; workflow&lt;br /&gt;
** Wait.&lt;br /&gt;
** Execute the &#039;&#039;&#039;Update Simulation (real)&#039;&#039;&#039; workflow&lt;br /&gt;
** Execute the &#039;&#039;&#039;WRFOUT Conversion&#039;&#039;&#039; workflow&lt;br /&gt;
** Execute the &#039;&#039;&#039;Fire Demo Visualization&#039;&#039;&#039; workflow&lt;br /&gt;
&lt;br /&gt;
[[Category:WRF]]&lt;br /&gt;
[[Category:Howtos|Supercomputing 2009 Demo]]&lt;/div&gt;</summary>
		<author><name>Jdaniels</name></author>
	</entry>
	<entry>
		<id>https://wiki.openwfm.org/index.php?title=How_to_visualize_WRF-Fire_output_in_VisTrails&amp;diff=236</id>
		<title>How to visualize WRF-Fire output in VisTrails</title>
		<link rel="alternate" type="text/html" href="https://wiki.openwfm.org/index.php?title=How_to_visualize_WRF-Fire_output_in_VisTrails&amp;diff=236"/>
		<updated>2010-02-10T22:05:28Z</updated>

		<summary type="html">&lt;p&gt;Jdaniels: /* Visualization of Simulation Results */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Local Simulation Execution ==&lt;br /&gt;
&lt;br /&gt;
* Download the tar ball ([http://www.cs.utah.edu/~jdaniels/research/wrf/sc2009.new.vt])&lt;br /&gt;
** Place the VisTrails packages into &#039;&#039;&#039;/Users/XXX/.vistrails/userpackages/&#039;&#039;&#039;&lt;br /&gt;
*** &#039;&#039;&#039;NumSciPy&#039;&#039;&#039; -- contains the wrapper modules for NumPy and SciPy functions&lt;br /&gt;
*** &#039;&#039;&#039;WRFtoVTK&#039;&#039;&#039; -- contains the wrf to vtk file conversion modules&lt;br /&gt;
*** &#039;&#039;&#039;demoNetwork&#039;&#039;&#039; -- contains the client modules to communicate with the server&lt;br /&gt;
*** &#039;&#039;&#039;extendDialog&#039;&#039;&#039; -- contains masked text dialogs for passwords&lt;br /&gt;
** Move the VisTrails workflow to a known location (i.e. &#039;&#039;/Users/XXX/Desktop/visExample/&#039;&#039;)&lt;br /&gt;
*** &#039;&#039;&#039;fireDemoSC2009.vt&#039;&#039;&#039; -- the VisTrails workflow for conversion and visualization&lt;br /&gt;
** Move the simulation inputs to a known location (i.e. &#039;&#039;/Users/XXX/Desktop/visExample&#039;&#039;)&lt;br /&gt;
*** &#039;&#039;&#039;sc2009inputs&#039;&#039;&#039; -- contains example simulation input files&lt;br /&gt;
&lt;br /&gt;
* Run the simulation with the example inputs (&#039;&#039;&#039;/Users/XXX/Desktop/visExample/sc2009inputs/&#039;&#039;&#039;)&lt;br /&gt;
** Wait for the simulation to complete&lt;br /&gt;
* Store the WRFOUT within a known directory (i.e. &#039;&#039;/Users/XXX/Desktop/visExample/sc2009outputs/&#039;&#039;)&lt;br /&gt;
** Setup a directory to save VTK files that will be generated from WRFOUT (i.e. &#039;&#039;/Users/XXX/Desktop/visExample/sc2009outputs/vtkFiles/&#039;&#039;)&lt;br /&gt;
&lt;br /&gt;
=== Visualization of Simulation Results ===&lt;br /&gt;
&lt;br /&gt;
[[File:Sc2009history.png|600px]]&lt;br /&gt;
* Run VisTrails and open the workflow (&#039;&#039;&#039;fireDemoSC2009.vt&#039;&#039;&#039;)&lt;br /&gt;
** Begin by navigating the history tree&lt;br /&gt;
** Execute the &#039;&#039;&#039;WRFOUT Conversion&#039;&#039;&#039; node (top of the right most branch)&lt;br /&gt;
*** Prompts for the &#039;&#039;WRF directory&#039;&#039; (&#039;&#039;/Users/XXX/Desktop/visExample/sc2009outputs/&#039;&#039;)&lt;br /&gt;
*** Prompts for the &#039;&#039;VTK directory&#039;&#039; (&#039;&#039;/Users/XXX/Desktop/visExample/sc2009outputs/vtkFiles&#039;&#039;)&lt;br /&gt;
*** Wait for the conversion to complete (all modules turn green)&lt;br /&gt;
** Execute the &#039;&#039;&#039;Fire Demo Visualization&#039;&#039;&#039; node (top of the left most branch)&lt;br /&gt;
*** Prompts for the &#039;&#039;VTK directory&#039;&#039; (&#039;&#039;/Users/XXX/Desktop/visExample/sc2009outputs/vtkFiles&#039;&#039;)&lt;br /&gt;
*** Prompts for the &#039;&#039;Animation Delay&#039;&#039; (hit enter)&lt;br /&gt;
*** View the spread sheet to interact with the visualization&lt;br /&gt;
&lt;br /&gt;
=== Interacting with the Visualization ===&lt;br /&gt;
[[File:Sc2009results.png|600px]]&lt;br /&gt;
* left click will rotate the visualization&lt;br /&gt;
* Shift-left click will pan the visualization&lt;br /&gt;
* Ctrl-left click will zoom the visualization&lt;br /&gt;
* &#039;&#039;&#039;l&#039;&#039;&#039; toggles the streamline widget&lt;br /&gt;
* left click on the sreamline widget moves it around&lt;br /&gt;
* left click on the play widgets (left to right)&lt;br /&gt;
** &#039;&#039;step back&#039;&#039; -- step backwards one frame in the simulation&lt;br /&gt;
** &#039;&#039;play back&#039;&#039; -- play the simulation backwards&lt;br /&gt;
** &#039;&#039;stop&#039;&#039; -- pauses the simulation animation&lt;br /&gt;
** &#039;&#039;play forward&#039;&#039; -- play the simulation forward&lt;br /&gt;
** &#039;&#039;step forward&#039;&#039; -- step forward one frame in the simulation&lt;br /&gt;
&lt;br /&gt;
== Cluster-based Simulation Execution ==&lt;br /&gt;
=== Setting up the Python server on a remote machine or cluster ===&lt;br /&gt;
* Build the simulation binaries on the cluster&lt;br /&gt;
* On the cluster setup a home directory for the server&lt;br /&gt;
* Within this directory create virtual links to:&lt;br /&gt;
** &#039;&#039;&#039;ideal.exe&#039;&#039;&#039; -- the ideal simulation setup executable&lt;br /&gt;
** &#039;&#039;&#039;real.exe&#039;&#039;&#039; -- the real simulation setup executable&lt;br /&gt;
** &#039;&#039;&#039;wrf.exe&#039;&#039;&#039; -- the simulation binary&lt;br /&gt;
* Within this directory copy over the server files from the previous tar ball&lt;br /&gt;
** &#039;&#039;&#039;demoNetwork/execServer.py&#039;&#039;&#039; -- to be used on the cluster to launch the server&lt;br /&gt;
** &#039;&#039;&#039;demoNetwork/fireServer.py&#039;&#039;&#039; -- the server code&lt;br /&gt;
** &#039;&#039;&#039;demoNetwork/fireMessages.py&#039;&#039;&#039; -- the message passing scheme and code&lt;br /&gt;
** &#039;&#039;&#039;demoNetwork/userRegistration.py&#039;&#039;&#039; -- user registration script&lt;br /&gt;
** &#039;&#039;&#039;demoNetwork/README.txt&#039;&#039;&#039; -- a readme file explaining server setup in more detail&lt;br /&gt;
* Execute the python script to start the server (requires python 2.5 or greater)&lt;br /&gt;
** On the command line within the directory: &#039;&#039;python execServer.py&#039;&#039;&lt;br /&gt;
* View and remember the listening port output by the server&lt;br /&gt;
&lt;br /&gt;
=== Registering New Users with the Server ===&lt;br /&gt;
* Log in to the cluster hosting the server&lt;br /&gt;
* Change to the server home directory on the cluster&lt;br /&gt;
* Execute the python script for user registration&lt;br /&gt;
** On the command line: &#039;&#039;python userRegistration.py &amp;lt;username&amp;gt; &amp;lt;password&amp;gt;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
=== Executing Remote Simulations ===&lt;br /&gt;
* Run VisTrails and open the workflow (&#039;&#039;&#039;fireDemoSC2009.vt&#039;&#039;&#039;)&lt;br /&gt;
&lt;br /&gt;
* The &#039;&#039;&#039;Execute Simulation (real)&#039;&#039;&#039; node (top of the middle branch): Execution of this workflow sends an execution request to the server.  The VisTrails client communicates with the remote server using the md5 checksum of the simulation input files as a unique identifier.  The server will execute the simulation IFF it is not already stored within the user database.  Consequently, repeated execution requests of the same simulations will be ignored, only the first being executed.&lt;br /&gt;
** Prompts for the &#039;&#039;Server Name&#039;&#039;&lt;br /&gt;
** Prompts for the &#039;&#039;Username&#039;&#039;&lt;br /&gt;
** Prompts for the &#039;&#039;Password&#039;&#039; (this is the &#039;&#039;user registered&#039;&#039; password)&lt;br /&gt;
** Prompts for the &#039;&#039;Local Simulation Directory&#039;&#039; (&#039;&#039;/Users/XXX/Desktop/visExample/sc2009inputs/&#039;&#039;)&lt;br /&gt;
** Prompts for the &#039;&#039;Server port&#039;&#039; (this is the number remembered during server setup)&lt;br /&gt;
&lt;br /&gt;
* The &#039;&#039;&#039;Update Simulation (real)&#039;&#039;&#039; node (upper middle of the middle branch): Execution of this workflow will query the server for the latest &#039;&#039;WRFOUT&#039;&#039; files produced by the simulation for the given input files.  If the md5 checksum of the &#039;&#039;WRFOUT&#039;&#039; does not match between the server and the client, then the file is sent from the cluster to your local machine.  No files are sent from the server to the client if the md5 checksums are the same or if the server does not have a simulation recorded for the given input files.&lt;br /&gt;
** Prompts for the &#039;&#039;Server Name&#039;&#039;&lt;br /&gt;
** Prompts for the &#039;&#039;Username&#039;&#039;&lt;br /&gt;
** Prompts for the &#039;&#039;Password&#039;&#039; (this is the &#039;&#039;user registered&#039;&#039; password)&lt;br /&gt;
** Prompts for the &#039;&#039;Local Simulation Directory&#039;&#039; (&#039;&#039;/Users/XXX/Desktop/visExample/sc2009inputs/&#039;&#039;)&lt;br /&gt;
** Prompts for the &#039;&#039;Server port&#039;&#039; (this is the number remembered during server setup)&lt;br /&gt;
&lt;br /&gt;
* The &#039;&#039;&#039;Stop Simulation (real)&#039;&#039;&#039; node (lower middle of the middle branch): Execution of this workflow will send a termination request of the simulation to the server.  For simulations that run indefinitely, or are running for a long time, the user can explicitly terminate their continued computation.  The workflow prompts the user for the local directory of the input files, used as a means of identifying the simulation to which the user is referring.&lt;br /&gt;
** Prompts for the &#039;&#039;Server Name&#039;&#039;&lt;br /&gt;
** Prompts for the &#039;&#039;Username&#039;&#039;&lt;br /&gt;
** Prompts for the &#039;&#039;Password&#039;&#039; (this is the &#039;&#039;user registered&#039;&#039; password)&lt;br /&gt;
** Prompts for the &#039;&#039;Local Simulation Directory&#039;&#039; (&#039;&#039;/Users/XXX/Desktop/visExample/sc2009inputs/&#039;&#039;)&lt;br /&gt;
** Prompts for the &#039;&#039;Server port&#039;&#039; (this is the number remembered during server setup)&lt;br /&gt;
&lt;br /&gt;
* The &#039;&#039;&#039;Delete Simulation (real)&#039;&#039;&#039; node (lower middle of the middle branch): Execution of this workflow will send a deletion request of the simulation to the server.  After a simulation is run, it will remain on the server until it is explicitly deleted by the user.  Consequently, if a user terminates a simulation, then wishes to re-run the simulation, they must first delete it.  Otherwise, subsequent re-runs of the simulation will not occur because the server views the simulation as already executed.&lt;br /&gt;
** Prompts for the &#039;&#039;Server Name&#039;&#039;&lt;br /&gt;
** Prompts for the &#039;&#039;Username&#039;&#039;&lt;br /&gt;
** Prompts for the &#039;&#039;Password&#039;&#039; (this is the &#039;&#039;user registered&#039;&#039; password)&lt;br /&gt;
** Prompts for the &#039;&#039;Local Simulation Directory&#039;&#039; (&#039;&#039;/Users/XXX/Desktop/visExample/sc2009inputs/&#039;&#039;)&lt;br /&gt;
** Prompts for the &#039;&#039;Server port&#039;&#039; (this is the number remembered during server setup)&lt;br /&gt;
&lt;br /&gt;
=== Super Computing 2009 Demo ===&lt;br /&gt;
* A full simulation to visualization scenario:&lt;br /&gt;
** Execute the &#039;&#039;&#039;Execute Simulation (real)&#039;&#039;&#039; workflow&lt;br /&gt;
** Wait.&lt;br /&gt;
** Execute the &#039;&#039;&#039;Update Simulation (real)&#039;&#039;&#039; workflow&lt;br /&gt;
** Execute the &#039;&#039;&#039;WRFOUT Conversion&#039;&#039;&#039; workflow&lt;br /&gt;
** Execute the &#039;&#039;&#039;Fire Demo Visualization&#039;&#039;&#039; workflow&lt;br /&gt;
&lt;br /&gt;
[[Category:WRF]]&lt;br /&gt;
[[Category:Howtos|Supercomputing 2009 Demo]]&lt;/div&gt;</summary>
		<author><name>Jdaniels</name></author>
	</entry>
	<entry>
		<id>https://wiki.openwfm.org/index.php?title=File:Sc2009results.png&amp;diff=235</id>
		<title>File:Sc2009results.png</title>
		<link rel="alternate" type="text/html" href="https://wiki.openwfm.org/index.php?title=File:Sc2009results.png&amp;diff=235"/>
		<updated>2010-02-10T22:00:47Z</updated>

		<summary type="html">&lt;p&gt;Jdaniels: Results of a visualization running using the supercomputing 2009 input file and vistrails workflow.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Results of a visualization running using the supercomputing 2009 input file and vistrails workflow.&lt;/div&gt;</summary>
		<author><name>Jdaniels</name></author>
	</entry>
	<entry>
		<id>https://wiki.openwfm.org/index.php?title=How_to_visualize_WRF-Fire_output_in_VisTrails&amp;diff=234</id>
		<title>How to visualize WRF-Fire output in VisTrails</title>
		<link rel="alternate" type="text/html" href="https://wiki.openwfm.org/index.php?title=How_to_visualize_WRF-Fire_output_in_VisTrails&amp;diff=234"/>
		<updated>2010-02-10T21:55:52Z</updated>

		<summary type="html">&lt;p&gt;Jdaniels: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Local Simulation Execution ==&lt;br /&gt;
&lt;br /&gt;
* Download the tar ball ([http://www.cs.utah.edu/~jdaniels/research/wrf/sc2009.new.vt])&lt;br /&gt;
** Place the VisTrails packages into &#039;&#039;&#039;/Users/XXX/.vistrails/userpackages/&#039;&#039;&#039;&lt;br /&gt;
*** &#039;&#039;&#039;NumSciPy&#039;&#039;&#039; -- contains the wrapper modules for NumPy and SciPy functions&lt;br /&gt;
*** &#039;&#039;&#039;WRFtoVTK&#039;&#039;&#039; -- contains the wrf to vtk file conversion modules&lt;br /&gt;
*** &#039;&#039;&#039;demoNetwork&#039;&#039;&#039; -- contains the client modules to communicate with the server&lt;br /&gt;
*** &#039;&#039;&#039;extendDialog&#039;&#039;&#039; -- contains masked text dialogs for passwords&lt;br /&gt;
** Move the VisTrails workflow to a known location (i.e. &#039;&#039;/Users/XXX/Desktop/visExample/&#039;&#039;)&lt;br /&gt;
*** &#039;&#039;&#039;fireDemoSC2009.vt&#039;&#039;&#039; -- the VisTrails workflow for conversion and visualization&lt;br /&gt;
** Move the simulation inputs to a known location (i.e. &#039;&#039;/Users/XXX/Desktop/visExample&#039;&#039;)&lt;br /&gt;
*** &#039;&#039;&#039;sc2009inputs&#039;&#039;&#039; -- contains example simulation input files&lt;br /&gt;
&lt;br /&gt;
* Run the simulation with the example inputs (&#039;&#039;&#039;/Users/XXX/Desktop/visExample/sc2009inputs/&#039;&#039;&#039;)&lt;br /&gt;
** Wait for the simulation to complete&lt;br /&gt;
* Store the WRFOUT within a known directory (i.e. &#039;&#039;/Users/XXX/Desktop/visExample/sc2009outputs/&#039;&#039;)&lt;br /&gt;
** Setup a directory to save VTK files that will be generated from WRFOUT (i.e. &#039;&#039;/Users/XXX/Desktop/visExample/sc2009outputs/vtkFiles/&#039;&#039;)&lt;br /&gt;
&lt;br /&gt;
=== Visualization of Simulation Results ===&lt;br /&gt;
&lt;br /&gt;
[[File:Sc2009history.png|600px]]&lt;br /&gt;
* Run VisTrails and open the workflow (&#039;&#039;&#039;fireDemoSC2009.vt&#039;&#039;&#039;)&lt;br /&gt;
** Begin by navigating the history tree&lt;br /&gt;
** Execute the &#039;&#039;&#039;WRFOUT Conversion&#039;&#039;&#039; node (top of the right most branch)&lt;br /&gt;
*** Prompts for the &#039;&#039;WRF directory&#039;&#039; (&#039;&#039;/Users/XXX/Desktop/visExample/sc2009outputs/&#039;&#039;)&lt;br /&gt;
*** Prompts for the &#039;&#039;VTK directory&#039;&#039; (&#039;&#039;/Users/XXX/Desktop/visExample/sc2009outputs/vtkFiles&#039;&#039;)&lt;br /&gt;
*** Wait for the conversion to complete (all modules turn green)&lt;br /&gt;
** Execute the &#039;&#039;&#039;Fire Demo Visualization&#039;&#039;&#039; node (top of the left most branch)&lt;br /&gt;
*** Prompts for the &#039;&#039;VTK directory&#039;&#039; (&#039;&#039;/Users/XXX/Desktop/visExample/sc2009outputs/vtkFiles&#039;&#039;)&lt;br /&gt;
*** Prompts for the &#039;&#039;Animation Delay&#039;&#039; (hit enter)&lt;br /&gt;
*** View the spread sheet to interact with the visualization&lt;br /&gt;
[[File:Sc2009results.png|600px]]&lt;br /&gt;
&lt;br /&gt;
== Cluster-based Simulation Execution ==&lt;br /&gt;
=== Setting up the Python server on a remote machine or cluster ===&lt;br /&gt;
* Build the simulation binaries on the cluster&lt;br /&gt;
* On the cluster setup a home directory for the server&lt;br /&gt;
* Within this directory create virtual links to:&lt;br /&gt;
** &#039;&#039;&#039;ideal.exe&#039;&#039;&#039; -- the ideal simulation setup executable&lt;br /&gt;
** &#039;&#039;&#039;real.exe&#039;&#039;&#039; -- the real simulation setup executable&lt;br /&gt;
** &#039;&#039;&#039;wrf.exe&#039;&#039;&#039; -- the simulation binary&lt;br /&gt;
* Within this directory copy over the server files from the previous tar ball&lt;br /&gt;
** &#039;&#039;&#039;demoNetwork/execServer.py&#039;&#039;&#039; -- to be used on the cluster to launch the server&lt;br /&gt;
** &#039;&#039;&#039;demoNetwork/fireServer.py&#039;&#039;&#039; -- the server code&lt;br /&gt;
** &#039;&#039;&#039;demoNetwork/fireMessages.py&#039;&#039;&#039; -- the message passing scheme and code&lt;br /&gt;
** &#039;&#039;&#039;demoNetwork/userRegistration.py&#039;&#039;&#039; -- user registration script&lt;br /&gt;
** &#039;&#039;&#039;demoNetwork/README.txt&#039;&#039;&#039; -- a readme file explaining server setup in more detail&lt;br /&gt;
* Execute the python script to start the server (requires python 2.5 or greater)&lt;br /&gt;
** On the command line within the directory: &#039;&#039;python execServer.py&#039;&#039;&lt;br /&gt;
* View and remember the listening port output by the server&lt;br /&gt;
&lt;br /&gt;
=== Registering New Users with the Server ===&lt;br /&gt;
* Log in to the cluster hosting the server&lt;br /&gt;
* Change to the server home directory on the cluster&lt;br /&gt;
* Execute the python script for user registration&lt;br /&gt;
** On the command line: &#039;&#039;python userRegistration.py &amp;lt;username&amp;gt; &amp;lt;password&amp;gt;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
=== Executing Remote Simulations ===&lt;br /&gt;
* Run VisTrails and open the workflow (&#039;&#039;&#039;fireDemoSC2009.vt&#039;&#039;&#039;)&lt;br /&gt;
&lt;br /&gt;
* The &#039;&#039;&#039;Execute Simulation (real)&#039;&#039;&#039; node (top of the middle branch): Execution of this workflow sends an execution request to the server.  The VisTrails client communicates with the remote server using the md5 checksum of the simulation input files as a unique identifier.  The server will execute the simulation IFF it is not already stored within the user database.  Consequently, repeated execution requests of the same simulations will be ignored, only the first being executed.&lt;br /&gt;
** Prompts for the &#039;&#039;Server Name&#039;&#039;&lt;br /&gt;
** Prompts for the &#039;&#039;Username&#039;&#039;&lt;br /&gt;
** Prompts for the &#039;&#039;Password&#039;&#039; (this is the &#039;&#039;user registered&#039;&#039; password)&lt;br /&gt;
** Prompts for the &#039;&#039;Local Simulation Directory&#039;&#039; (&#039;&#039;/Users/XXX/Desktop/visExample/sc2009inputs/&#039;&#039;)&lt;br /&gt;
** Prompts for the &#039;&#039;Server port&#039;&#039; (this is the number remembered during server setup)&lt;br /&gt;
&lt;br /&gt;
* The &#039;&#039;&#039;Update Simulation (real)&#039;&#039;&#039; node (upper middle of the middle branch): Execution of this workflow will query the server for the latest &#039;&#039;WRFOUT&#039;&#039; files produced by the simulation for the given input files.  If the md5 checksum of the &#039;&#039;WRFOUT&#039;&#039; does not match between the server and the client, then the file is sent from the cluster to your local machine.  No files are sent from the server to the client if the md5 checksums are the same or if the server does not have a simulation recorded for the given input files.&lt;br /&gt;
** Prompts for the &#039;&#039;Server Name&#039;&#039;&lt;br /&gt;
** Prompts for the &#039;&#039;Username&#039;&#039;&lt;br /&gt;
** Prompts for the &#039;&#039;Password&#039;&#039; (this is the &#039;&#039;user registered&#039;&#039; password)&lt;br /&gt;
** Prompts for the &#039;&#039;Local Simulation Directory&#039;&#039; (&#039;&#039;/Users/XXX/Desktop/visExample/sc2009inputs/&#039;&#039;)&lt;br /&gt;
** Prompts for the &#039;&#039;Server port&#039;&#039; (this is the number remembered during server setup)&lt;br /&gt;
&lt;br /&gt;
* The &#039;&#039;&#039;Stop Simulation (real)&#039;&#039;&#039; node (lower middle of the middle branch): Execution of this workflow will send a termination request of the simulation to the server.  For simulations that run indefinitely, or are running for a long time, the user can explicitly terminate their continued computation.  The workflow prompts the user for the local directory of the input files, used as a means of identifying the simulation to which the user is referring.&lt;br /&gt;
** Prompts for the &#039;&#039;Server Name&#039;&#039;&lt;br /&gt;
** Prompts for the &#039;&#039;Username&#039;&#039;&lt;br /&gt;
** Prompts for the &#039;&#039;Password&#039;&#039; (this is the &#039;&#039;user registered&#039;&#039; password)&lt;br /&gt;
** Prompts for the &#039;&#039;Local Simulation Directory&#039;&#039; (&#039;&#039;/Users/XXX/Desktop/visExample/sc2009inputs/&#039;&#039;)&lt;br /&gt;
** Prompts for the &#039;&#039;Server port&#039;&#039; (this is the number remembered during server setup)&lt;br /&gt;
&lt;br /&gt;
* The &#039;&#039;&#039;Delete Simulation (real)&#039;&#039;&#039; node (lower middle of the middle branch): Execution of this workflow will send a deletion request of the simulation to the server.  After a simulation is run, it will remain on the server until it is explicitly deleted by the user.  Consequently, if a user terminates a simulation, then wishes to re-run the simulation, they must first delete it.  Otherwise, subsequent re-runs of the simulation will not occur because the server views the simulation as already executed.&lt;br /&gt;
** Prompts for the &#039;&#039;Server Name&#039;&#039;&lt;br /&gt;
** Prompts for the &#039;&#039;Username&#039;&#039;&lt;br /&gt;
** Prompts for the &#039;&#039;Password&#039;&#039; (this is the &#039;&#039;user registered&#039;&#039; password)&lt;br /&gt;
** Prompts for the &#039;&#039;Local Simulation Directory&#039;&#039; (&#039;&#039;/Users/XXX/Desktop/visExample/sc2009inputs/&#039;&#039;)&lt;br /&gt;
** Prompts for the &#039;&#039;Server port&#039;&#039; (this is the number remembered during server setup)&lt;br /&gt;
&lt;br /&gt;
=== Super Computing 2009 Demo ===&lt;br /&gt;
* A full simulation to visualization scenario:&lt;br /&gt;
** Execute the &#039;&#039;&#039;Execute Simulation (real)&#039;&#039;&#039; workflow&lt;br /&gt;
** Wait.&lt;br /&gt;
** Execute the &#039;&#039;&#039;Update Simulation (real)&#039;&#039;&#039; workflow&lt;br /&gt;
** Execute the &#039;&#039;&#039;WRFOUT Conversion&#039;&#039;&#039; workflow&lt;br /&gt;
** Execute the &#039;&#039;&#039;Fire Demo Visualization&#039;&#039;&#039; workflow&lt;br /&gt;
&lt;br /&gt;
[[Category:WRF]]&lt;br /&gt;
[[Category:Howtos|Supercomputing 2009 Demo]]&lt;/div&gt;</summary>
		<author><name>Jdaniels</name></author>
	</entry>
	<entry>
		<id>https://wiki.openwfm.org/index.php?title=File:Sc2009history.png&amp;diff=233</id>
		<title>File:Sc2009history.png</title>
		<link rel="alternate" type="text/html" href="https://wiki.openwfm.org/index.php?title=File:Sc2009history.png&amp;diff=233"/>
		<updated>2010-02-10T21:51:27Z</updated>

		<summary type="html">&lt;p&gt;Jdaniels: The history view of the vistrails super computing 2009 demo.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;The history view of the vistrails super computing 2009 demo.&lt;/div&gt;</summary>
		<author><name>Jdaniels</name></author>
	</entry>
	<entry>
		<id>https://wiki.openwfm.org/index.php?title=How_to_visualize_WRF-Fire_output_in_VisTrails&amp;diff=232</id>
		<title>How to visualize WRF-Fire output in VisTrails</title>
		<link rel="alternate" type="text/html" href="https://wiki.openwfm.org/index.php?title=How_to_visualize_WRF-Fire_output_in_VisTrails&amp;diff=232"/>
		<updated>2010-02-10T21:50:09Z</updated>

		<summary type="html">&lt;p&gt;Jdaniels: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Local Simulation Execution ==&lt;br /&gt;
&lt;br /&gt;
* Download the tar ball ([http://www.cs.utah.edu/~jdaniels/research/wrf/sc2009.new.vt])&lt;br /&gt;
** Place the VisTrails packages into &#039;&#039;&#039;/Users/XXX/.vistrails/userpackages/&#039;&#039;&#039;&lt;br /&gt;
*** &#039;&#039;&#039;NumSciPy&#039;&#039;&#039; -- contains the wrapper modules for NumPy and SciPy functions&lt;br /&gt;
*** &#039;&#039;&#039;WRFtoVTK&#039;&#039;&#039; -- contains the wrf to vtk file conversion modules&lt;br /&gt;
*** &#039;&#039;&#039;demoNetwork&#039;&#039;&#039; -- contains the client modules to communicate with the server&lt;br /&gt;
*** &#039;&#039;&#039;extendDialog&#039;&#039;&#039; -- contains masked text dialogs for passwords&lt;br /&gt;
** Move the VisTrails workflow to a known location (i.e. &#039;&#039;/Users/XXX/Desktop/visExample/&#039;&#039;)&lt;br /&gt;
*** &#039;&#039;&#039;fireDemoSC2009.vt&#039;&#039;&#039; -- the VisTrails workflow for conversion and visualization&lt;br /&gt;
** Move the simulation inputs to a known location (i.e. &#039;&#039;/Users/XXX/Desktop/visExample&#039;&#039;)&lt;br /&gt;
*** &#039;&#039;&#039;sc2009inputs&#039;&#039;&#039; -- contains example simulation input files&lt;br /&gt;
&lt;br /&gt;
* Run the simulation with the example inputs (&#039;&#039;&#039;/Users/XXX/Desktop/visExample/sc2009inputs/&#039;&#039;&#039;)&lt;br /&gt;
** Wait for the simulation to complete&lt;br /&gt;
* Store the WRFOUT within a known directory (i.e. &#039;&#039;/Users/XXX/Desktop/visExample/sc2009outputs/&#039;&#039;)&lt;br /&gt;
** Setup a directory to save VTK files that will be generated from WRFOUT (i.e. &#039;&#039;/Users/XXX/Desktop/visExample/sc2009outputs/vtkFiles/&#039;&#039;)&lt;br /&gt;
&lt;br /&gt;
* Run VisTrails and open the workflow (&#039;&#039;&#039;fireDemoSC2009.vt&#039;&#039;&#039;)&lt;br /&gt;
** Begin by navigating the history tree&lt;br /&gt;
** Execute the &#039;&#039;&#039;WRFOUT Conversion&#039;&#039;&#039; node (top of the right most branch)&lt;br /&gt;
*** Prompts for the &#039;&#039;WRF directory&#039;&#039; (&#039;&#039;/Users/XXX/Desktop/visExample/sc2009outputs/&#039;&#039;)&lt;br /&gt;
*** Prompts for the &#039;&#039;VTK directory&#039;&#039; (&#039;&#039;/Users/XXX/Desktop/visExample/sc2009outputs/vtkFiles&#039;&#039;)&lt;br /&gt;
*** Wait for the conversion to complete (all modules turn green)&lt;br /&gt;
** Execute the &#039;&#039;&#039;Fire Demo Visualization&#039;&#039;&#039; node (top of the left most branch)&lt;br /&gt;
*** Prompts for the &#039;&#039;VTK directory&#039;&#039; (&#039;&#039;/Users/XXX/Desktop/visExample/sc2009outputs/vtkFiles&#039;&#039;)&lt;br /&gt;
*** Prompts for the &#039;&#039;Animation Delay&#039;&#039; (hit enter)&lt;br /&gt;
*** View the spread sheet to interact with the visualization&lt;br /&gt;
&lt;br /&gt;
== Cluster-based Simulation Execution ==&lt;br /&gt;
=== Setting up the Python server on a remote machine or cluster ===&lt;br /&gt;
* Build the simulation binaries on the cluster&lt;br /&gt;
* On the cluster setup a home directory for the server&lt;br /&gt;
* Within this directory create virtual links to:&lt;br /&gt;
** &#039;&#039;&#039;ideal.exe&#039;&#039;&#039; -- the ideal simulation setup executable&lt;br /&gt;
** &#039;&#039;&#039;real.exe&#039;&#039;&#039; -- the real simulation setup executable&lt;br /&gt;
** &#039;&#039;&#039;wrf.exe&#039;&#039;&#039; -- the simulation binary&lt;br /&gt;
* Within this directory copy over the server files from the previous tar ball&lt;br /&gt;
** &#039;&#039;&#039;demoNetwork/execServer.py&#039;&#039;&#039; -- to be used on the cluster to launch the server&lt;br /&gt;
** &#039;&#039;&#039;demoNetwork/fireServer.py&#039;&#039;&#039; -- the server code&lt;br /&gt;
** &#039;&#039;&#039;demoNetwork/fireMessages.py&#039;&#039;&#039; -- the message passing scheme and code&lt;br /&gt;
** &#039;&#039;&#039;demoNetwork/userRegistration.py&#039;&#039;&#039; -- user registration script&lt;br /&gt;
** &#039;&#039;&#039;demoNetwork/README.txt&#039;&#039;&#039; -- a readme file explaining server setup in more detail&lt;br /&gt;
* Execute the python script to start the server (requires python 2.5 or greater)&lt;br /&gt;
** On the command line within the directory: &#039;&#039;python execServer.py&#039;&#039;&lt;br /&gt;
* View and remember the listening port output by the server&lt;br /&gt;
&lt;br /&gt;
=== Registering New Users with the Server ===&lt;br /&gt;
* Log in to the cluster hosting the server&lt;br /&gt;
* Change to the server home directory on the cluster&lt;br /&gt;
* Execute the python script for user registration&lt;br /&gt;
** On the command line: &#039;&#039;python userRegistration.py &amp;lt;username&amp;gt; &amp;lt;password&amp;gt;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
=== Executing Remote Simulations ===&lt;br /&gt;
* Run VisTrails and open the workflow (&#039;&#039;&#039;fireDemoSC2009.vt&#039;&#039;&#039;)&lt;br /&gt;
&lt;br /&gt;
* The &#039;&#039;&#039;Execute Simulation (real)&#039;&#039;&#039; node (top of the middle branch): Execution of this workflow sends an execution request to the server.  The VisTrails client communicates with the remote server using the md5 checksum of the simulation input files as a unique identifier.  The server will execute the simulation IFF it is not already stored within the user database.  Consequently, repeated execution requests of the same simulations will be ignored, only the first being executed.&lt;br /&gt;
** Prompts for the &#039;&#039;Server Name&#039;&#039;&lt;br /&gt;
** Prompts for the &#039;&#039;Username&#039;&#039;&lt;br /&gt;
** Prompts for the &#039;&#039;Password&#039;&#039; (this is the &#039;&#039;user registered&#039;&#039; password)&lt;br /&gt;
** Prompts for the &#039;&#039;Local Simulation Directory&#039;&#039; (&#039;&#039;/Users/XXX/Desktop/visExample/sc2009inputs/&#039;&#039;)&lt;br /&gt;
** Prompts for the &#039;&#039;Server port&#039;&#039; (this is the number remembered during server setup)&lt;br /&gt;
&lt;br /&gt;
* The &#039;&#039;&#039;Update Simulation (real)&#039;&#039;&#039; node (upper middle of the middle branch): Execution of this workflow will query the server for the latest &#039;&#039;WRFOUT&#039;&#039; files produced by the simulation for the given input files.  If the md5 checksum of the &#039;&#039;WRFOUT&#039;&#039; does not match between the server and the client, then the file is sent from the cluster to your local machine.  No files are sent from the server to the client if the md5 checksums are the same or if the server does not have a simulation recorded for the given input files.&lt;br /&gt;
** Prompts for the &#039;&#039;Server Name&#039;&#039;&lt;br /&gt;
** Prompts for the &#039;&#039;Username&#039;&#039;&lt;br /&gt;
** Prompts for the &#039;&#039;Password&#039;&#039; (this is the &#039;&#039;user registered&#039;&#039; password)&lt;br /&gt;
** Prompts for the &#039;&#039;Local Simulation Directory&#039;&#039; (&#039;&#039;/Users/XXX/Desktop/visExample/sc2009inputs/&#039;&#039;)&lt;br /&gt;
** Prompts for the &#039;&#039;Server port&#039;&#039; (this is the number remembered during server setup)&lt;br /&gt;
&lt;br /&gt;
* The &#039;&#039;&#039;Stop Simulation (real)&#039;&#039;&#039; node (lower middle of the middle branch): Execution of this workflow will send a termination request of the simulation to the server.  For simulations that run indefinitely, or are running for a long time, the user can explicitly terminate their continued computation.  The workflow prompts the user for the local directory of the input files, used as a means of identifying the simulation to which the user is referring.&lt;br /&gt;
** Prompts for the &#039;&#039;Server Name&#039;&#039;&lt;br /&gt;
** Prompts for the &#039;&#039;Username&#039;&#039;&lt;br /&gt;
** Prompts for the &#039;&#039;Password&#039;&#039; (this is the &#039;&#039;user registered&#039;&#039; password)&lt;br /&gt;
** Prompts for the &#039;&#039;Local Simulation Directory&#039;&#039; (&#039;&#039;/Users/XXX/Desktop/visExample/sc2009inputs/&#039;&#039;)&lt;br /&gt;
** Prompts for the &#039;&#039;Server port&#039;&#039; (this is the number remembered during server setup)&lt;br /&gt;
&lt;br /&gt;
* The &#039;&#039;&#039;Delete Simulation (real)&#039;&#039;&#039; node (lower middle of the middle branch): Execution of this workflow will send a deletion request of the simulation to the server.  After a simulation is run, it will remain on the server until it is explicitly deleted by the user.  Consequently, if a user terminates a simulation, then wishes to re-run the simulation, they must first delete it.  Otherwise, subsequent re-runs of the simulation will not occur because the server views the simulation as already executed.&lt;br /&gt;
** Prompts for the &#039;&#039;Server Name&#039;&#039;&lt;br /&gt;
** Prompts for the &#039;&#039;Username&#039;&#039;&lt;br /&gt;
** Prompts for the &#039;&#039;Password&#039;&#039; (this is the &#039;&#039;user registered&#039;&#039; password)&lt;br /&gt;
** Prompts for the &#039;&#039;Local Simulation Directory&#039;&#039; (&#039;&#039;/Users/XXX/Desktop/visExample/sc2009inputs/&#039;&#039;)&lt;br /&gt;
** Prompts for the &#039;&#039;Server port&#039;&#039; (this is the number remembered during server setup)&lt;br /&gt;
&lt;br /&gt;
=== Super Computing 2009 Demo ===&lt;br /&gt;
* A full simulation to visualization scenario:&lt;br /&gt;
** Execute the &#039;&#039;&#039;Execute Simulation (real)&#039;&#039;&#039; workflow&lt;br /&gt;
** Wait.&lt;br /&gt;
** Execute the &#039;&#039;&#039;Update Simulation (real)&#039;&#039;&#039; workflow&lt;br /&gt;
** Execute the &#039;&#039;&#039;WRFOUT Conversion&#039;&#039;&#039; workflow&lt;br /&gt;
** Execute the &#039;&#039;&#039;Fire Demo Visualization&#039;&#039;&#039; workflow&lt;br /&gt;
&lt;br /&gt;
[[Category:WRF]]&lt;br /&gt;
[[Category:Howtos|Supercomputing 2009 Demo]]&lt;/div&gt;</summary>
		<author><name>Jdaniels</name></author>
	</entry>
	<entry>
		<id>https://wiki.openwfm.org/index.php?title=How_to_visualize_WRF-Fire_output_in_VisTrails&amp;diff=231</id>
		<title>How to visualize WRF-Fire output in VisTrails</title>
		<link rel="alternate" type="text/html" href="https://wiki.openwfm.org/index.php?title=How_to_visualize_WRF-Fire_output_in_VisTrails&amp;diff=231"/>
		<updated>2010-02-10T20:28:29Z</updated>

		<summary type="html">&lt;p&gt;Jdaniels: /* Registerating New Users with the Server */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Local Simulation Execution ==&lt;br /&gt;
&lt;br /&gt;
* Download the tar ball ([http://www.cs.utah.edu/~jdaniels/research/wrf/sc2009.new.vt])&lt;br /&gt;
** Place the VisTrails packages into &#039;&#039;&#039;/Users/XXX/.vistrails/userpackages/&#039;&#039;&#039;&lt;br /&gt;
*** &#039;&#039;&#039;NumSciPy&#039;&#039;&#039; -- contains the wrapper modules for NumPy and SciPy functions&lt;br /&gt;
*** &#039;&#039;&#039;WRFtoVTK&#039;&#039;&#039; -- contains the wrf to vtk file conversion modules&lt;br /&gt;
*** &#039;&#039;&#039;demoNetwork&#039;&#039;&#039; -- contains the client modules to communicate with the server&lt;br /&gt;
*** &#039;&#039;&#039;extendDialog&#039;&#039;&#039; -- contains masked text dialogs for passwords&lt;br /&gt;
** Move the VisTrails workflow to a known location (i.e. &#039;&#039;/Users/XXX/Desktop/visExample/&#039;&#039;)&lt;br /&gt;
*** &#039;&#039;&#039;fireDemoSC2009.vt&#039;&#039;&#039; -- the VisTrails workflow for conversion and visualization&lt;br /&gt;
** Move the simulation inputs to a known location (i.e. &#039;&#039;/Users/XXX/Desktop/visExample&#039;&#039;)&lt;br /&gt;
*** &#039;&#039;&#039;sc2009inputs&#039;&#039;&#039; -- contains example simulation input files&lt;br /&gt;
&lt;br /&gt;
* Run the simulation with the example inputs (&#039;&#039;&#039;/Users/XXX/Desktop/visExample/sc2009inputs/&#039;&#039;&#039;)&lt;br /&gt;
** Wait for the simulation to complete&lt;br /&gt;
* Store the WRFOUT within a known directory (i.e. &#039;&#039;/Users/XXX/Desktop/visExample/sc2009outputs/&#039;&#039;)&lt;br /&gt;
** Setup a directory to save VTK files that will be generated from WRFOUT (i.e. &#039;&#039;/Users/XXX/Desktop/visExample/sc2009outputs/vtkFiles/&#039;&#039;)&lt;br /&gt;
&lt;br /&gt;
* Run VisTrails and open the workflow (&#039;&#039;&#039;fireDemoSC2009.vt&#039;&#039;&#039;)&lt;br /&gt;
** Begin by navigating the history tree&lt;br /&gt;
** Execute the &#039;WRFOUT Conversion&#039; node (top of the right most branch)&lt;br /&gt;
*** Prompts for the &#039;&#039;WRF directory&#039;&#039; (&#039;&#039;/Users/XXX/Desktop/visExample/sc2009outputs/&#039;&#039;)&lt;br /&gt;
*** Prompts for the &#039;&#039;VTK directory&#039;&#039; (&#039;&#039;/Users/XXX/Desktop/visExample/sc2009outputs/vtkFiles&#039;&#039;)&lt;br /&gt;
*** Wait for the conversion to complete (all modules turn green)&lt;br /&gt;
** Execute the &#039;Fire Demo Visualization&#039; node (top of the left most branch)&lt;br /&gt;
*** Prompts for the &#039;&#039;VTK directory&#039;&#039; (&#039;&#039;/Users/XXX/Desktop/visExample/sc2009outputs/vtkFiles&#039;&#039;)&lt;br /&gt;
*** Prompts for the &#039;&#039;Animation Delay&#039;&#039; (hit enter)&lt;br /&gt;
*** View the spread sheet to interact with the visualization&lt;br /&gt;
&lt;br /&gt;
== Cluster-based Simulation Execution ==&lt;br /&gt;
=== Setting up the Python server on a remote machine or cluster ===&lt;br /&gt;
* Build the simulation binaries on the cluster&lt;br /&gt;
* On the cluster setup a home directory for the server&lt;br /&gt;
* Within this directory create virtual links to:&lt;br /&gt;
** &#039;&#039;&#039;ideal.exe&#039;&#039;&#039; -- the ideal simulation setup executable&lt;br /&gt;
** &#039;&#039;&#039;real.exe&#039;&#039;&#039; -- the real simulation setup executable&lt;br /&gt;
** &#039;&#039;&#039;wrf.exe&#039;&#039;&#039; -- the simulation binary&lt;br /&gt;
* Within this directory copy over the server files from the previous tar ball&lt;br /&gt;
** &#039;&#039;&#039;demoNetwork/execServer.py&#039;&#039;&#039; -- to be used on the cluster to launch the server&lt;br /&gt;
** &#039;&#039;&#039;demoNetwork/fireServer.py&#039;&#039;&#039; -- the server code&lt;br /&gt;
** &#039;&#039;&#039;demoNetwork/fireMessages.py&#039;&#039;&#039; -- the message passing scheme and code&lt;br /&gt;
** &#039;&#039;&#039;demoNetwork/userRegistration.py&#039;&#039;&#039; -- user registration script&lt;br /&gt;
** &#039;&#039;&#039;demoNetwork/README.txt&#039;&#039;&#039; -- a readme file explaining server setup in more detail&lt;br /&gt;
* Execute the python script to start the server (requires python 2.5 or greater)&lt;br /&gt;
** On the command line within the directory: &#039;&#039;python execServer.py&#039;&#039;&lt;br /&gt;
* View and remember the listening port output by the server&lt;br /&gt;
&lt;br /&gt;
=== Registering New Users with the Server ===&lt;br /&gt;
* Log in to the cluster hosting the server&lt;br /&gt;
* Change to the server home directory on the cluster&lt;br /&gt;
* Execute the python script for user registration&lt;br /&gt;
** On the command line: &#039;&#039;python userRegistration.py &amp;lt;username&amp;gt; &amp;lt;password&amp;gt;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
=== Executing Remote Simulation Computations ===&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category:WRF]]&lt;br /&gt;
[[Category:Howtos|Supercomputing 2009 Demo]]&lt;/div&gt;</summary>
		<author><name>Jdaniels</name></author>
	</entry>
	<entry>
		<id>https://wiki.openwfm.org/index.php?title=How_to_visualize_WRF-Fire_output_in_VisTrails&amp;diff=230</id>
		<title>How to visualize WRF-Fire output in VisTrails</title>
		<link rel="alternate" type="text/html" href="https://wiki.openwfm.org/index.php?title=How_to_visualize_WRF-Fire_output_in_VisTrails&amp;diff=230"/>
		<updated>2010-02-10T20:27:46Z</updated>

		<summary type="html">&lt;p&gt;Jdaniels: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Local Simulation Execution ==&lt;br /&gt;
&lt;br /&gt;
* Download the tar ball ([http://www.cs.utah.edu/~jdaniels/research/wrf/sc2009.new.vt])&lt;br /&gt;
** Place the VisTrails packages into &#039;&#039;&#039;/Users/XXX/.vistrails/userpackages/&#039;&#039;&#039;&lt;br /&gt;
*** &#039;&#039;&#039;NumSciPy&#039;&#039;&#039; -- contains the wrapper modules for NumPy and SciPy functions&lt;br /&gt;
*** &#039;&#039;&#039;WRFtoVTK&#039;&#039;&#039; -- contains the wrf to vtk file conversion modules&lt;br /&gt;
*** &#039;&#039;&#039;demoNetwork&#039;&#039;&#039; -- contains the client modules to communicate with the server&lt;br /&gt;
*** &#039;&#039;&#039;extendDialog&#039;&#039;&#039; -- contains masked text dialogs for passwords&lt;br /&gt;
** Move the VisTrails workflow to a known location (i.e. &#039;&#039;/Users/XXX/Desktop/visExample/&#039;&#039;)&lt;br /&gt;
*** &#039;&#039;&#039;fireDemoSC2009.vt&#039;&#039;&#039; -- the VisTrails workflow for conversion and visualization&lt;br /&gt;
** Move the simulation inputs to a known location (i.e. &#039;&#039;/Users/XXX/Desktop/visExample&#039;&#039;)&lt;br /&gt;
*** &#039;&#039;&#039;sc2009inputs&#039;&#039;&#039; -- contains example simulation input files&lt;br /&gt;
&lt;br /&gt;
* Run the simulation with the example inputs (&#039;&#039;&#039;/Users/XXX/Desktop/visExample/sc2009inputs/&#039;&#039;&#039;)&lt;br /&gt;
** Wait for the simulation to complete&lt;br /&gt;
* Store the WRFOUT within a known directory (i.e. &#039;&#039;/Users/XXX/Desktop/visExample/sc2009outputs/&#039;&#039;)&lt;br /&gt;
** Setup a directory to save VTK files that will be generated from WRFOUT (i.e. &#039;&#039;/Users/XXX/Desktop/visExample/sc2009outputs/vtkFiles/&#039;&#039;)&lt;br /&gt;
&lt;br /&gt;
* Run VisTrails and open the workflow (&#039;&#039;&#039;fireDemoSC2009.vt&#039;&#039;&#039;)&lt;br /&gt;
** Begin by navigating the history tree&lt;br /&gt;
** Execute the &#039;WRFOUT Conversion&#039; node (top of the right most branch)&lt;br /&gt;
*** Prompts for the &#039;&#039;WRF directory&#039;&#039; (&#039;&#039;/Users/XXX/Desktop/visExample/sc2009outputs/&#039;&#039;)&lt;br /&gt;
*** Prompts for the &#039;&#039;VTK directory&#039;&#039; (&#039;&#039;/Users/XXX/Desktop/visExample/sc2009outputs/vtkFiles&#039;&#039;)&lt;br /&gt;
*** Wait for the conversion to complete (all modules turn green)&lt;br /&gt;
** Execute the &#039;Fire Demo Visualization&#039; node (top of the left most branch)&lt;br /&gt;
*** Prompts for the &#039;&#039;VTK directory&#039;&#039; (&#039;&#039;/Users/XXX/Desktop/visExample/sc2009outputs/vtkFiles&#039;&#039;)&lt;br /&gt;
*** Prompts for the &#039;&#039;Animation Delay&#039;&#039; (hit enter)&lt;br /&gt;
*** View the spread sheet to interact with the visualization&lt;br /&gt;
&lt;br /&gt;
== Cluster-based Simulation Execution ==&lt;br /&gt;
=== Setting up the Python server on a remote machine or cluster ===&lt;br /&gt;
* Build the simulation binaries on the cluster&lt;br /&gt;
* On the cluster setup a home directory for the server&lt;br /&gt;
* Within this directory create virtual links to:&lt;br /&gt;
** &#039;&#039;&#039;ideal.exe&#039;&#039;&#039; -- the ideal simulation setup executable&lt;br /&gt;
** &#039;&#039;&#039;real.exe&#039;&#039;&#039; -- the real simulation setup executable&lt;br /&gt;
** &#039;&#039;&#039;wrf.exe&#039;&#039;&#039; -- the simulation binary&lt;br /&gt;
* Within this directory copy over the server files from the previous tar ball&lt;br /&gt;
** &#039;&#039;&#039;demoNetwork/execServer.py&#039;&#039;&#039; -- to be used on the cluster to launch the server&lt;br /&gt;
** &#039;&#039;&#039;demoNetwork/fireServer.py&#039;&#039;&#039; -- the server code&lt;br /&gt;
** &#039;&#039;&#039;demoNetwork/fireMessages.py&#039;&#039;&#039; -- the message passing scheme and code&lt;br /&gt;
** &#039;&#039;&#039;demoNetwork/userRegistration.py&#039;&#039;&#039; -- user registration script&lt;br /&gt;
** &#039;&#039;&#039;demoNetwork/README.txt&#039;&#039;&#039; -- a readme file explaining server setup in more detail&lt;br /&gt;
* Execute the python script to start the server (requires python 2.5 or greater)&lt;br /&gt;
** On the command line within the directory: &#039;&#039;python execServer.py&#039;&#039;&lt;br /&gt;
* View and remember the listening port output by the server&lt;br /&gt;
&lt;br /&gt;
=== Registerating New Users with the Server ===&lt;br /&gt;
* Log in to the cluster hosting the server&lt;br /&gt;
* Change to the server home directory on the cluster&lt;br /&gt;
* Execute the python script for user registration&lt;br /&gt;
** On the command line: &#039;&#039;python userRegistration.py &amp;lt;username&amp;gt; &amp;lt;password&amp;gt;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
=== Executing Remote Simulation Computations ===&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category:WRF]]&lt;br /&gt;
[[Category:Howtos|Supercomputing 2009 Demo]]&lt;/div&gt;</summary>
		<author><name>Jdaniels</name></author>
	</entry>
</feed>