VectorDisplacementPlot
VectorDisplacementPlot[{vx,vy},{x,xmin,xmax},{y,ymin,ymax}]
generates a displacement plot for the vector field {vx,vy} as a function of x and y.
VectorDisplacementPlot[{vx,vy},{x,y}∈reg]
plots the displacement over the geometric region reg.
VectorDisplacementPlot[{{vx,vy},s},…]
uses the scalar field s to style the displacement.
Details and Options
- VectorDisplacementPlot uses the vector field {vx,vy} to displace the points in a region. By default, the size of the displacement is automatically scaled so that both small and large displacements remain visible. The displaced region is by default colored according to the magnitude of the displacement.
- VectorDisplacementPlot has the same options as Graphics, with the following additions and changes: [List of all options]
-
AspectRatio Automatic ratio of height to width BoundaryStyle Automatic how to style the boundary of the displaced region ClippingStyle Automatic how to display arrows outside the vector range ColorFunction Automatic how to color the displaced region ColorFunctionScaling True whether to scale the arguments to ColorFunction EvaluationMonitor None expression to evaluate at every function evaluation Frame True whether to draw a frame around the plot FrameTicks Automatic frame tick marks Mesh None how many mesh lines in each direction to draw MeshFunctions {#1&,#2&} how to determine the placement of mesh lines MeshStyle Automatic the style for mesh lines Method Automatic methods to use for the plot PerformanceGoal $PerformanceGoal aspects of performance to try to optimize PlotLegends None legends to include PlotRange {Full,Full} range of x, y values to include PlotRangePadding Automatic how much to pad the range of values PlotStyle Automatic how to style the deformed region PlotTheme $PlotTheme overall theme for the plot RegionBoundaryStyle Automatic how to style plot region boundaries RegionFillingStyle Automatic how to style plot region interiors RegionFunction (True&) determine what region to include VectorAspectRatio Automatic width to length ratio for arrows VectorColorFunction Automatic how to color arrows VectorColorFunctionScaling True whether to scale the argument to VectorColorFunction VectorMarkers Automatic shape to use for arrows VectorPoints None the number or placement of arrows VectorRange Automatic range of vector lengths to show VectorScaling None how to scale the sizes of arrows VectorSizes Automatic sizes of displayed arrows VectorStyle None how to style arrows WorkingPrecision MachinePrecision precision to use in internal computations - By default, the displacement plot shows a representation of the original region and the displaced region.
- RegionBoundaryStyle and RegionFillingStyle can be used to change the style of the original region.
- Additional settings for VectorPoints to show displacement arrows include:
-
Automatic automatically chosen points "Boundary" points along the boundary of reg - By default, displacement arrows connect locations in the original region with the corresponding displaced locations.
- VectorSizesFull shows the full displacement rather than a scaled representation.
-
AlignmentPoint Center the default point in the graphic to align with AspectRatio Automatic ratio of height to width Axes False whether to draw axes AxesLabel None axes labels AxesOrigin Automatic where axes should cross AxesStyle {} style specifications for the axes Background None background color for the plot BaselinePosition Automatic how to align with a surrounding text baseline BaseStyle {} base style specifications for the graphic BoundaryStyle Automatic how to style the boundary of the displaced region ClippingStyle Automatic how to display arrows outside the vector range ColorFunction Automatic how to color the displaced region ColorFunctionScaling True whether to scale the arguments to ColorFunction ContentSelectable Automatic whether to allow contents to be selected CoordinatesToolOptions Automatic detailed behavior of the coordinates tool Epilog {} primitives rendered after the main plot EvaluationMonitor None expression to evaluate at every function evaluation FormatType TraditionalForm the default format type for text Frame True whether to draw a frame around the plot FrameLabel None frame labels FrameStyle {} style specifications for the frame FrameTicks Automatic frame tick marks FrameTicksStyle {} style specifications for frame ticks GridLines None grid lines to draw GridLinesStyle {} style specifications for grid lines ImageMargins 0. the margins to leave around the graphic ImagePadding All what extra padding to allow for labels etc. ImageSize Automatic the absolute size at which to render the graphic LabelStyle {} style specifications for labels Mesh None how many mesh lines in each direction to draw MeshFunctions {#1&,#2&} how to determine the placement of mesh lines MeshStyle Automatic the style for mesh lines Method Automatic methods to use for the plot PerformanceGoal $PerformanceGoal aspects of performance to try to optimize PlotLabel None an overall label for the plot PlotLegends None legends to include PlotRange {Full,Full} range of x, y values to include PlotRangeClipping False whether to clip at the plot range PlotRangePadding Automatic how much to pad the range of values PlotRegion Automatic the final display region to be filled PlotStyle Automatic how to style the deformed region PlotTheme $PlotTheme overall theme for the plot PreserveImageOptions Automatic whether to preserve image options when displaying new versions of the same graphic Prolog {} primitives rendered before the main plot RegionBoundaryStyle Automatic how to style plot region boundaries RegionFillingStyle Automatic how to style plot region interiors RegionFunction (True&) determine what region to include RotateLabel True whether to rotate y labels on the frame Ticks Automatic axes ticks TicksStyle {} style specifications for axes ticks VectorAspectRatio Automatic width to length ratio for arrows VectorColorFunction Automatic how to color arrows VectorColorFunctionScaling True whether to scale the argument to VectorColorFunction VectorMarkers Automatic shape to use for arrows VectorPoints None the number or placement of arrows VectorRange Automatic range of vector lengths to show VectorScaling None how to scale the sizes of arrows VectorSizes Automatic sizes of displayed arrows VectorStyle None how to style arrows WorkingPrecision MachinePrecision precision to use in internal computations
List of all options
Examples
open allclose allBasic Examples (5)
Plot a reference region and the corresponding (scaled) deformed region for a specified displacement field:
Include a legend for the norms of the displacements:
Show a sampling of displacement vectors that extend from points in the reference region to corresponding points in the deformed region:
Use a scalar field other than the norm of the displacement field to color the deformed region:
Plot the displacement for a bracket anchored along the bottom that is being pulled laterally:
Color the displacement according to the shear stress for the bracket:
Scope (19)
Sampling (12)
Visualize a scaled displacement field by comparing a reference and a deformed region:
Vectors are drawn from points in the reference region to corresponding points in the (scaled) deformed region:
Restrict vectors to points on the boundary:
Displacements can be drawn to scale:
Use the displacement field over a specified region:
The domain may be specified by a region:
The domain may be an ImplicitRegion:
The domain may be a ParametricRegion:
The domain may be a MeshRegion:
The domain may be a BoundaryMeshRegion:
Presentation (7)
Specify the ColorFunction for the deformed region:
Specify the VectorColorFunction independently of the ColorFunction:
Use a single color for the arrows:
Include a legend for the norms of the displacements:
Include a legend for the optional scalar field:
Include a Mesh:
Options (64)
AspectRatio (2)
BoundaryStyle (3)
By default, the boundary style matches the interior colors in the deformed region:
Specify the BoundaryStyle:
BoundaryStyle applies to regions cut by RegionFunction:
ColorFunction (4)
By default, the deformed region is colored by the norm of the field:
Specify a scalar field for the colors:
Specify a custom ColorFunction:
ColorFunctionScaling (2)
Use the natural range of norm values:
Control the scaling of the individual arguments of the ColorFunction:
Mesh (6)
Specify a Mesh to visualize the displacements:
Show the initial and final sampling mesh:
Specify 10 mesh lines in the direction and 5 in the direction:
Use mesh lines at specific values:
Highlight specific mesh lines:
Mesh lines are suppressed in the reference region if the boundary and filling of the reference region are removed:
MeshFunctions (2)
PlotLegends (3)
PlotRange (3)
The full PlotRange is used by default:
Specify an explicit limit that is shared by the and directions:
PlotStyle (4)
Remove the filling for the deformed region:
Apply a Texture to the deformed region:
Use PatternFilling to style the deformed region:
ColorFunction has precedence over PlotStyle:
RegionBoundaryStyle (2)
RegionFillingStyle (2)
RegionFunction (1)
Use a RegionFunction to specify the reference region:
VectorAspectRatio (2)
VectorColorFunction (3)
By default, if VectorColorFunction is Automatic, then the VectorColorFunction matches the ColorFunction:
Specify a VectorColorFunction that is different from the ColorFunction:
Use no VectorColorFunction:
VectorMarkers (3)
VectorPoints (9)
No vectors are shown by default:
Show vectors sampled from the entire original region:
Sample vectors from the boundary of the region:
Use symbolic names to specify the density of vectors:
Use symbolic names to specify the arrangement of vectors:
Specify the number of vectors in the and directions:
Specify a different number of vectors in the and directions:
VectorScaling (2)
VectorSizes (4)
By default, vectors extend from points in the reference region to corresponding points in the deformed region:
Specify the range of arrow lengths:
Suppress scaling of the displacement vectors so that a rotation of 45° looks appropriate:
Suppress scaling of the displacement vectors even if no vectors are displayed:
VectorStyle (1)
VectorColorFunction has precedence over VectorStyle:
Applications (24)
Basic Applications (16)
A constant displacement field moves each point in the reference region by the same amount:
Note that the displacements are automatically scaled so that very small and very large displacements are both visible:
Use VectorSizesFull to display the actual sizes of displacements:
Color is used to indicate the magnitude of the displacements:
Color the region by a different scalar function:
Use arrows to indicate initial and final locations for a sample points:
Visualize a dilation in the direction:
Visualize a contraction in the direction:
Visualize a dilation in the direction and a contraction in the direction:
Visualize a shear in the direction:
Visualize a shear in the direction:
Visualize a combined shear in the and directions:
Visualize a rotation about the origin:
Combine a rotation, a shear and a dilation:
Visualizing Eigenvalues and Eigenvectors (1)
Compute its eigenvalues and eigenvectors. Eigenvectors and eigenvalues solve the eigenvalue problem , , which can be interpreted here as finding directions that are not rotated by the matrix under multiplication:
The unit disk is stretched by a factor of 3 in the direction and a factor of 2 in the direction:
The area of the interior of the resulting ellipse is the product of the eigenvalues times the original area:
Note that multiplication by rotates all vectors except those in the eigenvector directions:
Define a matrix with one positive and one negative eigenvalue:
Use arrows to visualize how the region turns inside out in the direction because of the negative eigenvalue:
Define a matrix with a zero eigenvalue:
Observe that the original disk is stretched by a factor of 5 in the direction, but completely collapsed in the direction:
Define a matrix with a repeated real eigenvalue:
Observe that the vectors are rotated unless they point in the direction:
Define a matrix with complex eigenvalues:
The real part of the eigenvalues causes a uniform dilation and the imaginary part causes every vector to rotate:
Solid Mechanics (5)
Consider a linearly elastic bar of length and height subjected to a moment of magnitude at both ends:
Specify Young's modulus and Poisson's ratio:
Specify the magnitude of the applied moment:
The resulting displacement vector is:
The only nontrivial stress is the normal stress in the direction:
An elastica is a thin, elastic rod that bends without stretching. Consider an initially straight, vertical elastica that is clamped at the bottom end at and loaded with a weight at the top end that is sufficiently large to make the elastica parallel to the ground at the loaded end. Jacob Bernoulli famously found that the arc length is given by:
The total length of the elastica is:
Similarly, the height of a point on the deformed elastica is given by:
In terms of the parameter , the resulting displacement field is:
Create a ParametricRegion for the undeformed elastica:
Visualize the deformed elastica with the weight attached:
Consider an infinite, linearly elastic, thin plate with a hole of radius at the origin with a uniform tensile load in the horizontal direction:
Specify Young's modulus and Poisson's ratio :
Specify the magnitude of the applied tensile load:
Compute the horizontal () and vertical () displacements assuming a state of plane stress:
Plot the deformed solid region and color it by the dimensionless hoop stress. Note the stress concentration at the top and bottom of the hole:
The stress concentration factor is 3, regardless of the magnitude of the applied load:
Define an L-shaped region that is fixed at the bottom and has a uniform tensile load applied on the top-right edge:
Specify the governing equations for plane strain:
Specify the boundary conditions on the different edges of the region:
Solve the governing equations:
Plot the deformed region and note that the displacements are amplified to make them more visible:
Color the region by different stress components:
Color the region with the von Mises stress:
This example considers a sequence of deformations that correspond to an increasing load.
Consider a thin quarter-arch that is fixed at (red) with a variable vertical traction applied at (blue):
Assume a state of plane stress and define the displacement variables and the material parameters:
Compute the displacement and shear strain for the maximum load:
Compute the minimum and maximum values of the shear strain:
Create a color function for the strains that applies for all load values from zero load up to the maximum:
Create a legend that applies for all load values:
Compute and visualize the deformations for a sequence of load values, using the shear strain to color the deformed arch:
Click the following image to cycle through the loads. Note that the displacements are large because the arch is thin and that the colors are consistent across all of the load values:
Complex Variables (1)
Properties & Relations (9)
Use ListVectorDisplacementPlot to visualize a deformation based on displacement field data:
Use VectorDisplacementPlot3D to visualize the deformation of a 3D region associated with a displacement vector field:
Use ListVectorDisplacementPlot3D to visualize the same deformation based on data:
Use VectorPlot to directly plot a vector field:
Use StreamPlot to plot with streamlines instead of vectors:
Use ListVectorPlot or ListStreamPlot for plotting data:
Use VectorDensityPlot to add a density plot of the scalar field:
Use StreamDensityPlot to plot streamlines instead of vectors:
Use ListVectorDensityPlot or ListStreamDensityPlot for plotting data:
Use LineIntegralConvolutionPlot to plot the line integral convolution of a vector field:
Use VectorPlot3D and StreamPlot3D to visualize 3D vector fields:
Use ListVectorPlot3D or ListStreamPlot3D to plot with data:
Plot vectors on surfaces with SliceVectorPlot3D:
Use ListSliceVectorPlot3D to plot with data:
Use ComplexVectorPlot or ComplexStreamPlot to visualize a complex function of a complex variable as a vector field or with streamlines:
Use GeoVectorPlot to plot vectors on a map:
Use GeoStreamPlot to plot streamlines instead of vectors:
Text
Wolfram Research (2021), VectorDisplacementPlot, Wolfram Language function, https://reference.wolfram.com/language/ref/VectorDisplacementPlot.html.
CMS
Wolfram Language. 2021. "VectorDisplacementPlot." Wolfram Language & System Documentation Center. Wolfram Research. https://reference.wolfram.com/language/ref/VectorDisplacementPlot.html.
APA
Wolfram Language. (2021). VectorDisplacementPlot. Wolfram Language & System Documentation Center. Retrieved from https://reference.wolfram.com/language/ref/VectorDisplacementPlot.html