1<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 3//EN"> 2<HTML><HEAD> 3 <TITLE>User's Reference - Streamline</TITLE> 4 <META HTTP-EQUIV="keywords" CONTENT="GRAPHICS VISUALIZATION VISUAL PROGRAM DATA 5MINING"> 6 <meta http-equiv="content-type" content="text/html;charset=ISO-8859-1"> 7</HEAD><BODY BGCOLOR="#FFFFFF" link="#00004b" vlink="#4b004b"> 8 <TABLE width=510 border=0 cellpadding=0 cellspacing=0> 9 <TR> 10 <TD><IMG src="../images/spacer.gif" width=80 height=1></TD> 11 <TD><IMG src="../images/spacer.gif" width=49 height=1></TD> 12 <TD><IMG src="../images/spacer.gif" width=24 height=1></TD> 13 <TD><IMG src="../images/spacer.gif" width=100 height=1></TD> 14 <TD><IMG src="../images/spacer.gif" width=3 height=1></TD> 15 <TD><IMG src="../images/spacer.gif" width=127 height=1></TD> 16 <TD><IMG src="../images/spacer.gif" width=6 height=1></TD> 17 <TD><IMG src="../images/spacer.gif" width=50 height=1></TD> 18 <TD><IMG src="../images/spacer.gif" width=71 height=1></TD> 19 </TR> 20 <TR> 21 <TD colspan=9><IMG src="../images/flcgh_01.gif" width=510 height=24 alt="OpenDX - Documentation"></TD> 22 </TR> 23 <TR> 24 <TD colspan=2><A href="../allguide.htm"><IMG src="../images/flcgh_02.gif" width=129 height=25 border="0" alt="Full Contents"></A></TD> 25 <TD colspan=3><A href="../qikguide.htm"><IMG src="../images/flcgh_03.gif" width=127 height=25 border="0" alt="QuickStart Guide"></A></TD> 26 <TD><A href="../usrguide.htm"><IMG src="../images/flcgh_04.gif" width=127 height=25 border="0" alt="User's Guide"></A></TD> 27 <TD colspan=3><B><A href="../refguide.htm"><IMG src="../images/flcgh_05d.gif" width=127 height=25 border="0" alt="User's Reference"></A></B></TD> 28 </TR> 29 <TR> 30 <TD><A href="refgu148.htm"><IMG src="../images/flcgh_06.gif" width=80 height=17 border="0" alt="Previous Page"></A></TD> 31 <TD colspan=2><A href="refgu150.htm"><IMG src="../images/flcgh_07.gif" width=73 height=17 border="0" alt="Next Page"></A></TD> 32 <TD><A href="../refguide.htm"><IMG src="../images/flcgh_08.gif" width=100 height=17 border="0" alt="Table of Contents"></A></TD> 33 <TD colspan=3><A href="refgu009.htm"><IMG src="../images/flcgh_09.gif" width=136 height=17 border="0" alt="Partial Table of Contents"></A></TD> 34 <TD><A href="refgu175.htm"><IMG src="../images/flcgh_10.gif" width=50 height=17 border="0" alt="Index"></A></TD> 35 <TD><A href="../srchindx.htm"><IMG src="../images/flcgh_11.gif" width=71 height=17 border="0" alt="Search"></A></TD> 36 </TR> 37 </TABLE> 38 <H3><A name="HDRSTREAML" ></A>Streamline</H3> 39 <A NAME="IDX728"></A><A NAME="IDX729"></A> 40<A NAME="IDX730"></A> 41<P><STRONG>Category</STRONG> 42<P> 43<A HREF="refgu008.htm#HDRCATREL">Realization</A> 44<P><STRONG>Function</STRONG> 45<P> 46Computes streamlines to represent the movement of particles through 47static vector fields. 48<P><STRONG>Syntax</STRONG> 49<PRE> 50<STRONG>line</STRONG> = Streamline(<STRONG>data, start, time, head, curl, flag, stepscale</STRONG>); 51</PRE> 52<P><STRONG>Inputs</STRONG> 53<BR> 54<TABLE BORDER> 55<TR> 56<TH ALIGN="LEFT" VALIGN="TOP" WIDTH="20%">Name 57</TH><TH ALIGN="LEFT" VALIGN="TOP" WIDTH="20%">Type 58</TH><TH ALIGN="LEFT" VALIGN="TOP" WIDTH="20%">Default 59</TH><TH ALIGN="LEFT" VALIGN="TOP" WIDTH="40%">Description 60</TH></TR><TR> 61<TD ALIGN="LEFT" VALIGN="TOP" WIDTH="20%"><TT><STRONG>data</STRONG></TT> 62</TD><TD ALIGN="LEFT" VALIGN="TOP" WIDTH="20%">vector field 63</TD><TD ALIGN="LEFT" VALIGN="TOP" WIDTH="20%">none 64</TD><TD ALIGN="LEFT" VALIGN="TOP" WIDTH="40%">vector field 65</TD></TR><TR> 66<TD ALIGN="LEFT" VALIGN="TOP" WIDTH="20%"><TT><STRONG>start</STRONG></TT> 67</TD><TD ALIGN="LEFT" VALIGN="TOP" WIDTH="20%">vector list or geometric field 68</TD><TD ALIGN="LEFT" VALIGN="TOP" WIDTH="20%">center of the first series member 69</TD><TD ALIGN="LEFT" VALIGN="TOP" WIDTH="40%">starting point(s) 70</TD></TR><TR> 71<TD ALIGN="LEFT" VALIGN="TOP" WIDTH="20%"><TT><STRONG>time</STRONG></TT> 72</TD><TD ALIGN="LEFT" VALIGN="TOP" WIDTH="20%">scalar list 73</TD><TD ALIGN="LEFT" VALIGN="TOP" WIDTH="20%">series start time(s) 74</TD><TD ALIGN="LEFT" VALIGN="TOP" WIDTH="40%">starting time(s) 75</TD></TR><TR> 76<TD ALIGN="LEFT" VALIGN="TOP" WIDTH="20%"><TT><STRONG>head</STRONG></TT> 77</TD><TD ALIGN="LEFT" VALIGN="TOP" WIDTH="20%">integer 78</TD><TD ALIGN="LEFT" VALIGN="TOP" WIDTH="20%">final series frame number 79</TD><TD ALIGN="LEFT" VALIGN="TOP" WIDTH="40%">series time-step at which the 80streamlines end 81</TD></TR><TR> 82<TD ALIGN="LEFT" VALIGN="TOP" WIDTH="20%"><TT><STRONG>curl</STRONG></TT> 83</TD><TD ALIGN="LEFT" VALIGN="TOP" WIDTH="20%">vector field 84</TD><TD ALIGN="LEFT" VALIGN="TOP" WIDTH="20%">no curl 85</TD><TD ALIGN="LEFT" VALIGN="TOP" WIDTH="40%">vorticity of vector field(s) 86</TD></TR><TR> 87<TD ALIGN="LEFT" VALIGN="TOP" WIDTH="20%"><TT><STRONG>flag</STRONG></TT> 88</TD><TD ALIGN="LEFT" VALIGN="TOP" WIDTH="20%">flag 89</TD><TD ALIGN="LEFT" VALIGN="TOP" WIDTH="20%">input dependent 90</TD><TD ALIGN="LEFT" VALIGN="TOP" WIDTH="40%"> 910: curl not used 92<BR> 931: curl used to generate twist of streamline(s) 94<BR></TD></TR><TR> 95<TD ALIGN="LEFT" VALIGN="TOP" WIDTH="20%"><TT><STRONG>stepscale</STRONG></TT> 96</TD><TD ALIGN="LEFT" VALIGN="TOP" WIDTH="20%">value 97</TD><TD ALIGN="LEFT" VALIGN="TOP" WIDTH="20%">0.1 98</TD><TD ALIGN="LEFT" VALIGN="TOP" WIDTH="40%">step length as a fraction of the 99size of the connection 100element 101</TD></TR></TABLE> 102<P><STRONG>Outputs</STRONG> 103<BR> 104<TABLE BORDER> 105<TR> 106<TH ALIGN="LEFT" VALIGN="TOP" WIDTH="25%">Name 107</TH><TH ALIGN="LEFT" VALIGN="TOP" WIDTH="25%">Type 108</TH><TH ALIGN="LEFT" VALIGN="TOP" WIDTH="50%">Description 109</TH></TR><TR> 110<TD ALIGN="LEFT" VALIGN="TOP" WIDTH="25%"><TT><STRONG>line</STRONG></TT> 111</TD><TD ALIGN="LEFT" VALIGN="TOP" WIDTH="25%">field or group 112</TD><TD ALIGN="LEFT" VALIGN="TOP" WIDTH="50%">one or more streamlines 113</TD></TR></TABLE> 114<P><STRONG>Functional Details</STRONG> 115<P> 116This module traces the path of a particle through a static vector field 117in discrete steps. 118The visual form of this trace is a streamline, which starts at a 119specified time and continues until the particle it represents 120exits from the field or reaches a region of zero velocity. 121<TABLE CELLPADDING="3"> 122<TR VALIGN="TOP"><TD><P><B><TT><STRONG>data</STRONG></TT> 123</B></TD><TD><P>specifies a vector field. 124Vector fields are limited to <I>n</I>-D vectors defined in 125<I>n</I> space; for example, 2-D vectors on a 2-D sheet or 1263-D vectors defined in a 3-D volume. 127</TD></TR><TR VALIGN="TOP"><TD><P><B><TT><STRONG>start</STRONG></TT> 128</B></TD><TD><P>specifies a set of positions at which streamlines originate. 129It can be either a list of positions or a geometric field (e.g., the 130output of a Grid module or even an isosurface). 131</TD></TR><TR VALIGN="TOP"><TD><P><B><TT><STRONG>time</STRONG></TT> 132</B></TD><TD><P>specifies a set of times at which streamlines begin to be 133traced. 134The units of time correspond to the units of the vector field. 135That is, a particle travelling at a unit velocity moves one unit of 136distance in one unit of time. 137<P> 138Both <TT><STRONG>time</STRONG></TT> and <TT><STRONG>start</STRONG></TT> can 139contain 140single or multiple elements. 141If either parameter contains a single element, that element is 142associated with each element of the other list. 143If both parameters contain multiple elements, they must contain the 144same number of elements, which are then matched in pairs. 145<P> 146 147You can use the time parameter to start different streamlines at 148different times. Note that for the static vector fields used by 149Streamline, a particle at a given location will trace the same 150streamline, regardless of what time it is started. 151 152</TD></TR><TR VALIGN="TOP"><TD><P><B><TT><STRONG>head</STRONG></TT> 153</B></TD><TD><P>specifies an expiration time for streamlines that have not 154otherwise terminated. 155The streamline points are computed iteratively, and the spacing between 156the points depends on the element size of the connections and the 157stepscale. 158If this maximum is reached, a warning is produced and the streamline 159is terminated. 160The maximum number of streamline points is 25,000. 161</TD></TR><TR VALIGN="TOP"><TD><P><B><TT><STRONG>curl</STRONG></TT> 162</B></TD><TD><P>causes Streamline to produce normals and binormals components 163that represent the vorticity of the vector field. 164<A HREF="refgu049.htm#HDRDIVCURL">DivCurl</A>). 165In that case, the default value for <TT><STRONG>flag</STRONG></TT> 166is 1. 167The "normals" and "binormals" components of the resulting 168streamlines rotate according to the vorticity of the vector 169field. 170This information is either interpolated from the vector field passed 171in as the <TT><STRONG>curl</STRONG></TT> parameter or is computed 172internally. 173</TD></TR><TR VALIGN="TOP"><TD><P><B><TT><STRONG>flag</STRONG></TT> 174</B></TD><TD><P>specifies whether or not the twist specified by 175<TT><STRONG>curl</STRONG></TT> is enabled. 176A setting of 0 (zero) disables the twist. 177<P> 178However, if <TT><STRONG>curl</STRONG></TT> is not specified, the default 179value for <TT><STRONG>flag</STRONG></TT> is 0, and no twist is 180produced. 181In that case you have the option of setting <TT><STRONG>flag</STRONG></TT> 182to 1, which causes Streamline to compute the curl internally. 183</TD></TR><TR VALIGN="TOP"><TD><P><B><TT><STRONG>stepscale</STRONG></TT> 184</B></TD><TD><P>specifies the accuracy of the interpolation. 185Streamline traces the path of a particle through the vector field in 186discrete steps. 187These steps are determined by interpolating a vector from the vector 188field at the current end of the streamline and appending a new 189segment that extends the streamline in the direction of the 190vector. 191<P> 192The length of the new segment is determined by two factors. 193First, the length of the projection of the segment along the edges of 194the cells of the prior and subsequent vector fields in which the 195starting point of the segment is found does not exceed a 196proportion (specified by the <TT><STRONG>stepscale</STRONG></TT> 197parameter) of the length of the edge. 198Second, if grid is irregular, the segment is truncated at the boundary 199of the element in which it begins. 200This allows the segment length to be determined anew for the next 201element. 202<P> 203Thus the <TT><STRONG>stepscale</STRONG></TT> parameter offers the user control 204over the accuracy of the streamline. 205If <TT><STRONG>stepscale</STRONG></TT> is a small value (perhaps in the range 206of 0.01 to 0.05), the resulting streamline contains a relatively 207large number of segments that closely trace small variations 208in the vector field. 209If <TT><STRONG>stepscale</STRONG></TT> is assigned a large number (0.5 to 1), 210the steps are larger and less accurate, but require less execution 211time. 212Note, however, that since the step is determined as a proportion of the 213size of the grid cell in which it is contained, the segments are 214small in areas in which the grid elements are small, and 215proportionally larger in areas in which the grid 216elements are large. 217</TD></TR></TABLE> 218<P> 219Streamlines trace particles through time. 220Associated with the streamline is a "time" component that 221indicates, for each position of the streamline, the time at 222which the particle reached that position. 223The initial value in this component, therefore, is equal to the 224starting time for that stream, which is by default the first 225series position, or settable by the user using the 226<TT><STRONG>time</STRONG></TT> parameter. 227The final value in the time component is equal to (1) the time at which 228the particle exits from the vector field or (2) the time specified 229by the <TT><STRONG>head</STRONG></TT> parameter. 230<P> 231The output streamlines also contain a "data" component that 232indicates the velocity of the data field at each position 233in the streamline. 234<P><STRONG>Components</STRONG> 235<P> 236Creates new 237"positions," 238"connections," 239"data," 240"time," and 241"colors" 242components. 243If the flag argument is set, "normals" and "binormals" 244components are also created. 245<P><STRONG>Example Visual Programs</STRONG> 246<PRE> 247Interop.net 248InvalidData.net 249RubberTube.net 250Streamline.net 251ThunderStreamlines.net 252</PRE> 253<P><STRONG>See Also</STRONG> 254<P> 255 <A HREF="refgu049.htm#HDRDIVCURL">DivCurl</A>, 256 <A HREF="refgu068.htm#HDRGLYPH">Glyph</A>, 257 <A HREF="refgu122.htm#HDRRIBBON">Ribbon</A>, 258 <A HREF="refgu148.htm#HDRSTREAKL">Streakline</A>, 259 <A HREF="refgu163.htm#HDRTUBE">Tube</A> 260 <P> 261 <HR> 262 <DIV align="center"> 263 <P><A href="../allguide.htm"><IMG src="../images/foot-fc.gif" width="94" height="18" border="0" alt="Full Contents"></A> <A href="../qikguide.htm"><IMG src="../images/foot-qs.gif" width="94" height="18" border="0" alt="QuickStart Guide"></A> <A href="../usrguide.htm"><IMG src="../images/foot-ug.gif" width="94" height="18" border="0" alt="User's Guide"></A> <A href="../refguide.htm"><IMG src="../images/foot-ur.gif" width="94" height="18" border="0" alt="User's Reference"></A></P> 264 </DIV> 265 <DIV align="center"> 266 <P><FONT size="-1">[ <A href="http://www.research.ibm.com/dx">OpenDX Home at IBM</A> | <A href="http://www.opendx.org/">OpenDX.org</A> ] </FONT></P> 267 <P></P> 268 </DIV> 269 <P></P> 270 </BODY></HTML> 271