|MATLAB Function Reference|
Display stream particles
draws stream particles of a vector field. Stream particles are usually represented by markers and can show the position and velocity of a streamline.
vertices is a cell array of 2-D or 3-D vertices (as if produced by
n to determine how many stream particles to draw. The
ParticleAlignment property controls how
n is interpreted.
ParticleAlignmentis set to
off(the default) and
nis greater than
1, then approximately
nparticles are drawn evenly spaced over the streamline vertices.
nis less than or equal to
nis interpreted as a fraction of the original stream vertices; for example, if
0.2, approximately 20% of the vertices are used.
ndetermines the number of particles on the streamline having the most vertices and sets the spacing on the other streamlines to this value. The default value is
n = 1.
streamparticles(...,' controls the stream particles using named properties and specified values. Any unspecified properties have default values. MATLAB ignores the case of property names.
Stream Particle Properties
Animate - Stream particle motion [non-negative integer]
The number of times to animate the stream particles. The default is
0, which does not animate.
Inf animates until you enter ctrl-c.
FrameRate - Animation frames per second [non-negative integer]
This property specifies the number of frames per second for the animation.
Inf, the default draws the animation as fast as possible. Note that speed of the animation may be limited by the speed of the computer. In such cases, the value of
FrameRate can not necessarily be achieved.
ParticleAlignment - Align particles with stream lines [
Set this property to
on to draw particles at the beginning of each the stream line. This property controls how
streamparticles interprets the argument
n (number of stream particles).
Stream particles are line objects. In addition to stream particle properties, you can specify any line object property, such as
streamparticles sets the following line properties when called.
||Value Set by streamparticles
You can override any of these properties by specifying a property name and value as arguments to
streamparticles. For example, this statement uses RGB values to set the
MarkerFaceColor to medium gray:
uses the line object identified by
line_handle to draw the stream particles.
h = streamparticles(...)
returns a vector of handles to the line objects it creates.
This example combines stream lines with stream particle animation. The
interpstreamspeed function determines the vertices along the stream lines where stream particles will be drawn during the animation, thereby controlling the speed of the animation. Setting the axes
DrawMode property to
fast provides faster rendering.
load wind [sx sy sz] = meshgrid(80,20:1:55,5); verts = stream3(x,y,z,u,v,w,sx,sy,sz); sl = streamline(verts); iverts = interpstreamspeed(x,y,z,u,v,w,verts,.025); axis tight; view(30,30); daspect([1 1 .125]) camproj perspective; camva(8) set(gca,'DrawMode','fast') box on streamparticles(iverts,35,'animate',10,'ParticleAlignment','on' )
The following picture is a static view of the animation.
This example uses the stream lines in the
z = 5 plane to animate the flow along these lines with steamparticles.
load wind daspect([1 1 1]); view(2) [verts averts] = streamslice(x,y,z,u,v,w,,,); sl = streamline([verts averts]); axis tight off; set(sl,'Visible','off') iverts = interpstreamspeed(x,y,z,u,v,w,verts,.05); set(gca,'DrawMode','fast','Position',[0 0 1 1],'ZLim',[4.9 5.1]) set(gcf,'Color','black') streamparticles(iverts, 200, ... 'Animate',100,'FrameRate',40, ... 'MarkerSize',10,'MarkerFaceColor','yellow')
Volume Visualization for related functions
Creating Stream Particle Animations for more details
Specifying Starting Points for Stream Plots for related information