[ << ]  [ < ]  [ Up ]  [ > ]  [ >> ]  [Top]  [Contents]  [Index]  [ ? ] 
8.1 Postprocessing commands
Alias View[expression];
Creates an alias of the expressionth postprocessing view.
Note that
Alias
creates a logical duplicate of the view without actually duplicating the data in memory. This is very useful when you want multiple simultaneous renderings of the same large dataset (usually with different display options), but you cannot afford to store all copies in memory. If what you really want is multiple physical copies of the data, just merge the file containing the postprocessing view multiple times.AliasWithOptions View[expression];
Creates an alias of the expressionth postprocessing view and copies all the options of the expressionth view to the new aliased view.
CopyOptions View[expression, expression];
Copy all the options from the first expressionth postprocessing view to the second one.
Combine ElementsByViewName;
Combines all the postprocessing views having the same name into new views. The combination is done “spatially”, i.e., simply by appending the elements at the end of the new views.
Combine ElementsFromAllViews  Combine Views;
Combines all the postprocessing views into a single new view. The combination is done “spatially”, i.e., simply by appending the elements at the end of the new view.
Combine ElementsFromVisibleViews;
Combines all the visible postprocessing views into a single new view. The combination is done “spatially”, i.e., simply by appending the elements at the end of the new view.
Combine TimeStepsByViewName  Combine TimeSteps;
Combines the data from all the postprocessing views having the same name into new multitimestep views. The combination is done “temporally”, i.e., as if the data in each view corresponds to a different time instant. The combination will fail if the meshes in all the views are not identical.
Combine TimeStepsFromAllViews;
Combines the data from all the postprocessing views into a new multitimestep view. The combination is done “temporally”, i.e., as if the data in each view corresponds to a different time instant. The combination will fail if the meshes in all the views are not identical.
Combine TimeStepsFromVisibleViews;
Combines the data from all the visible postprocessing views into a new multitimestep view. The combination is done “temporally”, i.e., as if the data in each view corresponds to a different time instant. The combination will fail if the meshes in all the views are not identical.
Delete View[expression];
Deletes (removes) the expressionth postprocessing view. Note that postprocessing view numbers start at 0.
Delete Empty Views;
Deletes (removes) all the empty postprocessing views.
Background Mesh View[expression];
Applies the expressionth postprocessing view as the current background mesh. Note that postprocessing view numbers start at 0.
Plugin (string) . Run;
Executes the plugin string. The list of default plugins is given in Postprocessing plugins.
Plugin (string) . string = expression  charexpression;
Sets an option for a given plugin. See Postprocessing plugins, for a list of default plugins and ‘t9.geo’, for some examples.
Save View[expression] charexpression;
Saves the the expressionth postprocessing view in a file named charexpression. If the path in charexpression is not absolute, charexpression is appended to the path of the current file.
View "string" { string < ( expressionlist ) > { expressionlist }; … };
Creates a new postprocessing view, named
"string"
. This is an easy and quite powerful way to import postprocessing data: all the values are expressions, you can embed datasets directly into your geometrical descriptions (see, e.g., ‘t4.geo’), the data can be easily generated “onthefly” (there is no header containing a priori information on the size of the dataset). The syntax is also very permissive, which makes it ideal for testing purposes.However this “parsed format” is read by Gmsh’s script parser, which makes it inefficient if there are many elements in the dataset. Also, there is no connectivity information in parsed views and all the elements are independent (all fields can be discontinuous), so a lot of information can be duplicated. For large datasets, you should thus use the meshbased postprocessing file format described in File formats, or use one of the standard formats like MED.
More explicitly, the syntax for a parsed
View
is the followingView "string" { type ( listofcoords ) { listofvalues }; … < TIME { expressionlist }; > < INTERPOLATION_SCHEME { valcoefmatrix } { valexpmatrix } < { geocoefmatrix } { geoexpmatrix } > ; > };
where the 47 object types that can be displayed are:
type #listofcoords #listofvalues  Scalar point SP 3 1 * nbtimesteps Vector point VP 3 3 * nbtimesteps Tensor point TP 3 9 * nbtimesteps Scalar line SL 6 2 * nbtimesteps Vector line VL 6 6 * nbtimesteps Tensor line TL 6 18 * nbtimesteps Scalar triangle ST 9 3 * nbtimesteps Vector triangle VT 9 9 * nbtimesteps Tensor triangle TT 9 27 * nbtimesteps Scalar quadrangle SQ 12 4 * nbtimesteps Vector quadrangle VQ 12 12 * nbtimesteps Tensor quadrangle TQ 12 36 * nbtimesteps Scalar tetrahedron SS 12 4 * nbtimesteps Vector tetrahedron VS 12 12 * nbtimesteps Tensor tetrahedron TS 12 36 * nbtimesteps Scalar hexahedron SH 24 8 * nbtimesteps Vector hexahedron VH 24 24 * nbtimesteps Tensor hexahedron TH 24 72 * nbtimesteps Scalar prism SI 18 6 * nbtimesteps Vector prism VI 18 18 * nbtimesteps Tensor prism TI 18 54 * nbtimesteps Scalar pyramid SY 15 5 * nbtimesteps Vector pyramid VY 15 15 * nbtimesteps Tensor pyramid TY 15 45 * nbtimesteps 2D text T2 3 arbitrary 3D text T3 4 arbitrary
The coordinates are given ‘by node’, i.e.,

(coord1, coord2, coord3)
for a point, 
(coord1node1, coord2node1, coord3node1,
coord1node2, coord2node2, coord3node2)
for a line, 
(coord1node1, coord2node1, coord3node1,
coord1node2, coord2node2, coord3node2,
coord1node3, coord2node3, coord3node3)
for a triangle,  etc.
The ordering of the nodes is given in Node ordering.
The values are given by time step, by node and by component, i.e.:
comp1node1time1, comp2node1time1, comp3node1time1, comp1node2time1, comp2node2time1, comp3node2time1, comp1node3time1, comp2node3time1, comp3node3time1, comp1node1time2, comp2node1time2, comp3node1time2, comp1node2time2, comp2node2time2, comp3node2time2, comp1node3time2, comp2node3time2, comp3node3time2, …
For the 2D text objects, the two first expressions in listofcoords give the XY position of the string in screen coordinates, measured from the topleft corner of the window. If the first (respectively second) expression is negative, the position is measured from the right (respectively bottom) edge of the window. If the value of the first (respectively second) expression is larger than 99999, the string is centered horizontally (respectively vertically). If the third expression is equal to zero, the text is aligned bottomleft and displayed using the default font and size. Otherwise, the third expression is converted into an integer whose eight lower bits give the font size, whose eight next bits select the font (the index corresponds to the position in the font menu in the GUI), and whose eight next bits define the text alignment (0=bottomleft, 1=bottomcenter, 2=bottomright, 3=topleft, 4=topcenter, 5=topright, 6=centerleft, 7=centercenter, 8=centerright).
For the 3D text objects, the three first expressions in listofcoords give the XYZ position of the string in model (real world) coordinates. The fourth expression has the same meaning as the third expression in 2D text objects.
For both 2D and 3D text objects, the listofvalues can contain an arbitrary number of charexpressions.
The optional
TIME
list can contain a list of expressions giving the value of the time (or any other variable) for which an evolution was saved.The optional
INTERPOLATION_SCHEME
lists can contain the interpolation matrices used for highorder adaptive visualization.Let us assume that the approximation of the view’s value over an element is written as a linear combination of d basis functions f[i], i=0, ..., d1 (the coefficients being stored in listofvalues). Defining f[i] = Sum(j=0, ..., d1) F[i][j] p[j], with p[j] = u^P[j][0] v^P[j][1] w^P[j][2] (u, v and w being the coordinates in the element’s parameter space), then valcoefmatrix denotes the d x d matrix F and valexpmatrix denotes the d x 3 matrix P.
In the same way, let us also assume that the coordinates x, y and z of the element are obtained through a geometrical mapping from parameter space as a linear combination of m basis functions g[i], i=0, ..., m1 (the coefficients being stored in listofcoords). Defining g[i] = Sum(j=0, ..., m1) G[i][j] q[j], with q[j] = u^Q[j][0] v^Q[j][1] w^Q[j][2], then valcoefmatrix denotes the m x m matrix G and valexpmatrix denotes the m x 3 matrix Q.
Here are for example the interpolation matrices for a first order quadrangle:
INTERPOLATION_SCHEME { {1/4,1/4, 1/4,1/4}, {1/4, 1/4,1/4,1/4}, {1/4, 1/4, 1/4, 1/4}, {1/4,1/4,1/4, 1/4} } { {0, 0, 0}, {1, 0, 0}, {0, 1, 0}, {1, 1, 0} };

[ << ]  [ < ]  [ Up ]  [ > ]  [ >> ]  [Top]  [Contents]  [Index]  [ ? ] 
This document was generated on February 9, 2014 using texi2html 5.0.