A plot operation option. There are three choices, clipp , reflectp , and symmetry . The format for each option is:
clipp([dist= number ,] longitude, latitude, radius )
r eflectp(xmin, xmax, ymin, ymax, zmin, zmax)
symmetry(ppp, npp, nnp, pnp, ppn, npn, nnn, pnn)
args Arguments to the matching operation option.
For the clipp option, these are:
longitude Longitude relative to object
latitude Latitude relative to object
radius Radius relative to object
dist=
number
Offset the clipped section by some floating point distance. This option can occur at any point in the argument string.
For the clipp2 option, these are:
origin X,Y,Z triplet of the origin of a clipping plane
normal X,Y,Z triplet of the normal of the clipping plane
For the reflectp option, the values are:
xmin , xmax X line of reflection
ymin , ymax Y line of reflection
zmin , zmax Z line of reflection
zmin and zmax are only used for 3D plots. At least one argument is required, though all can be used, in any combination or order.
For the symmetry option, the values specify quadrants:
ppp Positive X, Positive Y, Positive Z
npp Negative X, Positive Y, Positive Z
nnp Negative X, Negative Y, Positive Z
pnp Positive X, Negative Y, Positive Z
ppn Positive X, Positive Y, Negative Z
npn Negative X, Positive Y, Negative Z
nnn Negative X, Negative Y, Negative Z
pnn Positive X, Negative Y, Negative Z
For 2D plots, use pp , pn , np , or nn .
Plot operations are operations that are performed on the geometry generated by the plots. Only one plot operator may be applied at a time.
The clipp operator allows the user to "prune" parts of a generated plot by defining a clipping plane. This is sometimes called the "erase" operator. The normal of the plane is specified with a longitude, latitude, and radius, and points which lie to that side of the plane will be plotted. Points on the opposite side of the plane will not be plotted unless the dist option is used. When the dist option is used, those points will be displaced along the inverse of the normal by the specified floating point value. Note that the clipp operator doesn't recreate data on the surface of the clipping plane. For example, if you apply the clipp operator to a pseudocolor plot, the resulting plot would be hollow at the point where the clipping plane intersected the plot.
The clipp2 operator functions very similarly to the clipp command, although it has two major differences. The first is that it takes an origin/normal specification instead of a latitude/longitude/radius specification. Second, although both operators allow multiple planes to be specified in a single command, the clipp2 operator performs intersections of the resulting half-spaces (while clipp performs unions).
The reflectp operator reflects the plot about the upper and lower boundaries along the various spacial directions. The user can independently control whether a reflection is done about a particular boundary. If a reflection is performed about both the upper and lower boundaries of a particular spacial direction, then the reflection about the upper boundary is done first. In addition, performing reflections about both the upper and lower boundaries results in 4 times the area/volume (not 3).
The symmetry operator is like the reflectp operator in some ways. For example you can achieve the same effect with both. For example, to have a mirror image of a mesh appear in the pn quadrant of a 2D mesh, you can say one of the following:
But the symmetry command can also plot just the mirror image in the pn quadrant by leaving out the pp specification:
so you could get a mesh in the pp quadrant, a couple of pseudocolor plots in the nn and pn quadrants, and a filled boundary plot in the np quadrant. For an example, look at the file curv2d.silo (possibly located in /usr/local/meshtv/data; ask the person who installed MeshTV if you can't find it). Open it in meshtvx and type the following:
mesh var=curvemesh2d; plot mesh
pc var=d pop=symmetry(nmn); plot pc
pc var=u pop=symmetry(pn); plot pc
smat var=mat1 pop=symmetry(np); plot smat
This gives you an example of the power of the symmetry operator.
bnd pop=clipp(0.0, 0.0, 1.0, dist=-4.0)