Skip to content
Snippets Groups Projects
opt_plugin.texi 34.9 KiB
Newer Older
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
@c
@c This file is generated automatically by running "gmsh -doc".
@c Do not edit by hand!
@c

Christophe Geuzaine's avatar
Christophe Geuzaine committed
@ftable @code
Christophe Geuzaine's avatar
Christophe Geuzaine committed
@item Plugin(AnalyseCurvedMesh)
Plugin(AnalyseCurvedMesh) check the jacobian of all elements of dimension 'Dim' or the greater model dimension if 'Dim' is either <0 or >3.

 Analysis : 0 do nothing
          +1 find invalid elements (*)
          +2 compute J_min and J_max of all elements and print some statistics

Effect (for *) : 0 do nothing
                +1 print a list of invalid elements
                +2 print some statistics
                +4 hide valid elements (for GUI)

Christophe Geuzaine's avatar
Christophe Geuzaine committed
MaxDepth = 0,1,...
Christophe Geuzaine's avatar
Christophe Geuzaine committed
         0 : only sample the jacobian
         1 : compute Bezier coefficients
        2+ : execute a maximum of 1+ subdivision(s)

JacBreak = [0,1[ : if a value of the jacobian <= 'JacBreak' is found, the element is said to be invalid

BezBreak = [0,JacBreak[ : if all Bezier coefficients are > 'BezBreak', the element is said to be valid

Tolerance = R+ , << 1 : tolerance (relatively to J_min and J_max) used during the computation of J_min and J_max
Numeric options:
@table @code
@item Dim
Default value: @code{-1}
@item Analysis
Default value: @code{2}
@item Effect (1)
Default value: @code{6}
@item JacBreak (1)
Default value: @code{0}
@item BezBreak (1)
Default value: @code{0}
@item MaxDepth (1,2)
Default value: @code{20}
@item Tolerance (2)
Default value: @code{0.001}
@end table

@item Plugin(Annotate)
Plugin(Annotate) adds the text string `Text', in font `Font' and size `FontSize', in the view `View'. The string is aligned according to `Align'.
Christophe Geuzaine's avatar
Christophe Geuzaine committed

If `ThreeD' is equal to 1, the plugin inserts the string in model coordinates at the position (`X',`Y',`Z'). If `ThreeD' is equal to 0, the plugin inserts the string in screen coordinates at the position (`X',`Y').
Christophe Geuzaine's avatar
Christophe Geuzaine committed

If `View' < 0, the plugin is run on the current view.
Plugin(Annotate) is executed in-place for list-based datasets or creates a new view for other datasets.
String options:
@table @code
@item Text
Default value: @code{"My Text"}
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
@item Font
Default value: @code{"Helvetica"}
@item Align
Default value: @code{"Left"}
@end table
Numeric options:
@table @code
@item X
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
Default value: @code{50}
@item Y
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
Default value: @code{30}
@item Z
Default value: @code{0}
Christophe Geuzaine's avatar
Christophe Geuzaine committed
@item ThreeD
Default value: @code{0}
@item FontSize
Default value: @code{14}
Christophe Geuzaine's avatar
Christophe Geuzaine committed
@item View
Default value: @code{-1}
@end table

@item Plugin(Bubbles)
Plugin(Bubbles) constructs a geometry consisting of `bubbles' inscribed in the Voronoi of an input triangulation. `ShrinkFactor' allows to change the size of the bubbles. The plugin expects a triangulation in the `z = 0' plane to exist in the current model.

Plugin(Bubbles) creates one `.geo' file.
String options:
@table @code
@item OutputFile
Default value: @code{"bubbles.geo"}
@end table
Numeric options:
@table @code
@item ShrinkFactor
Default value: @code{0}
@end table

Christophe Geuzaine's avatar
Christophe Geuzaine committed
@item Plugin(Crack)
Plugin(Crack) creates a crack around the physical group `PhysicalGroup' of dimension `Dimension' (1 or 2). The plugin duplicates the vertices and the elements on the crack and stores them in a new discrete curve (Dimension = 1) or surface (Dimension = 2). The elements touching the crack on the negative side are modified to use the newly generated vertices.
Christophe Geuzaine's avatar
Christophe Geuzaine committed
Numeric options:
@table @code
@item Dimension
Default value: @code{1}
@item PhysicalGroup
Default value: @code{1}
@end table

Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
@item Plugin(Curl)
Plugin(Curl) computes the curl of the field in the view `View'.
Christophe Geuzaine's avatar
Christophe Geuzaine committed

If `View' < 0, the plugin is run on the current view.
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed

Plugin(Curl) creates one new view.
Numeric options:
@table @code
Christophe Geuzaine's avatar
Christophe Geuzaine committed
@item View
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
Default value: @code{-1}
@end table

@item Plugin(CutBox)
Plugin(CutBox) cuts the view `View' with a rectangular box defined by the 4 points (`X0',`Y0',`Z0') (origin), (`X1',`Y1',`Z1') (axis of U), (`X2',`Y2',`Z2') (axis of V) and (`X3',`Y3',`Z3') (axis of W).

The number of points along U, V, W is set with the options `NumPointsU', `NumPointsV' and `NumPointsW'.

If `ConnectPoints' is zero, the plugin creates points; otherwise, the plugin generates hexahedra, quadrangles, lines or points depending on the values of `NumPointsU', `NumPointsV' and `NumPointsW'.

If `Boundary' is zero, the plugin interpolates the view inside the box; otherwise the plugin interpolates the view at its boundary.

If `View' < 0, the plugin is run on the current view.

Plugin(CutBox) creates one new view.
Numeric options:
@table @code
@item X0
Default value: @code{0}
@item Y0
Default value: @code{0}
@item Z0
Default value: @code{0}
@item X1
Default value: @code{1}
@item Y1
Default value: @code{0}
@item Z1
Default value: @code{0}
@item X2
Default value: @code{0}
@item Y2
Default value: @code{1}
@item Z2
Default value: @code{0}
@item X3
Default value: @code{0}
@item Y3
Default value: @code{0}
@item Z3
Default value: @code{1}
@item NumPointsU
Default value: @code{20}
@item NumPointsV
Default value: @code{20}
@item NumPointsW
Default value: @code{20}
@item ConnectPoints
Default value: @code{1}
@item Boundary
Default value: @code{1}
@item View
Default value: @code{-1}
@end table

Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
@item Plugin(CutGrid)
Plugin(CutGrid) cuts the view `View' with a rectangular grid defined by the 3 points (`X0',`Y0',`Z0') (origin), (`X1',`Y1',`Z1') (axis of U) and (`X2',`Y2',`Z2') (axis of V).
Christophe Geuzaine's avatar
Christophe Geuzaine committed

The number of points along U and V is set with the options `NumPointsU' and `NumPointsV'.
Christophe Geuzaine's avatar
Christophe Geuzaine committed

If `ConnectPoints' is zero, the plugin creates points; otherwise, the plugin generates quadrangles, lines or points depending on the values of `NumPointsU' and `NumPointsV'.
Christophe Geuzaine's avatar
Christophe Geuzaine committed

If `View' < 0, the plugin is run on the current view.
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed

Plugin(CutGrid) creates one new view.
Numeric options:
@table @code
@item X0
Default value: @code{0}
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
@item Y0
Default value: @code{0}
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
@item Z0
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
Default value: @code{0}
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
@item X1
Default value: @code{1}
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
@item Y1
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
Default value: @code{0}
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
@item Z1
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
Default value: @code{0}
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
@item X2
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
Default value: @code{0}
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
@item Y2
Default value: @code{1}
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
@item Z2
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
Default value: @code{0}
Christophe Geuzaine's avatar
Christophe Geuzaine committed
@item NumPointsU
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
Default value: @code{20}
Christophe Geuzaine's avatar
Christophe Geuzaine committed
@item NumPointsV
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
Default value: @code{20}
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
@item ConnectPoints
Default value: @code{1}
Christophe Geuzaine's avatar
Christophe Geuzaine committed
@item View
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
Default value: @code{-1}
Christophe Geuzaine's avatar
Christophe Geuzaine committed
@end table

Christophe Geuzaine's avatar
Christophe Geuzaine committed
@item Plugin(CutParametric)
Christophe Geuzaine's avatar
Christophe Geuzaine committed
Plugin(CutParametric) cuts the view `View' with the parametric function (`X'(u,v), `Y'(u,v), `Z'(u,v)), using `NumPointsU' values of the parameter u in [`MinU', `MaxU'] and `NumPointsV' values of the parameter v in [`MinV', `MaxV'].
Christophe Geuzaine's avatar
Christophe Geuzaine committed

Christophe Geuzaine's avatar
Christophe Geuzaine committed
If `ConnectPoints' is set, the plugin creates surface or line elements; otherwise, the plugin generates points.
Christophe Geuzaine's avatar
Christophe Geuzaine committed

If `View' < 0, the plugin is run on the current view.
Christophe Geuzaine's avatar
Christophe Geuzaine committed

Plugin(CutParametric) creates one new view.
String options:
@table @code
@item X
Christophe Geuzaine's avatar
Christophe Geuzaine committed
Default value: @code{"2 * Cos(u) * Sin(v)"}
Christophe Geuzaine's avatar
Christophe Geuzaine committed
@item Y
Christophe Geuzaine's avatar
Christophe Geuzaine committed
Default value: @code{"4 * Sin(u) * Sin(v)"}
Christophe Geuzaine's avatar
Christophe Geuzaine committed
@item Z
Christophe Geuzaine's avatar
Christophe Geuzaine committed
Default value: @code{"0.1 + 0.5 * Cos(v)"}
Christophe Geuzaine's avatar
Christophe Geuzaine committed
@end table
Numeric options:
@table @code
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
@item MinU
Christophe Geuzaine's avatar
Christophe Geuzaine committed
Default value: @code{0}
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
@item MaxU
Default value: @code{6.2832}
Christophe Geuzaine's avatar
Christophe Geuzaine committed
@item NumPointsU
Christophe Geuzaine's avatar
Christophe Geuzaine committed
Default value: @code{180}
@item MinV
Default value: @code{0}
@item MaxV
Default value: @code{6.2832}
@item NumPointsV
Default value: @code{180}
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
@item ConnectPoints
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
Default value: @code{0}
Christophe Geuzaine's avatar
Christophe Geuzaine committed
@item View
Christophe Geuzaine's avatar
Christophe Geuzaine committed
Default value: @code{-1}
@end table

Christophe Geuzaine's avatar
Christophe Geuzaine committed
@item Plugin(CutPlane)
Plugin(CutPlane) cuts the view `View' with the plane `A'*X + `B'*Y + `C'*Z + `D' = 0.
Christophe Geuzaine's avatar
Christophe Geuzaine committed

If `ExtractVolume' is nonzero, the plugin extracts the elements on one side of the plane (depending on the sign of `ExtractVolume').
Christophe Geuzaine's avatar
Christophe Geuzaine committed

If `View' < 0, the plugin is run on the current view.
Christophe Geuzaine's avatar
Christophe Geuzaine committed

Plugin(CutPlane) creates one new view.
Numeric options:
@table @code
@item A
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
Default value: @code{1}
Christophe Geuzaine's avatar
Christophe Geuzaine committed
@item B
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
Default value: @code{0}
Christophe Geuzaine's avatar
Christophe Geuzaine committed
@item C
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
Default value: @code{0}
Christophe Geuzaine's avatar
Christophe Geuzaine committed
@item D
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
Default value: @code{-0.01}
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
@item ExtractVolume
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
Default value: @code{0}
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
@item RecurLevel
Default value: @code{4}
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
@item TargetError
Default value: @code{0}
Christophe Geuzaine's avatar
Christophe Geuzaine committed
@item View
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
Default value: @code{-1}
Christophe Geuzaine's avatar
Christophe Geuzaine committed
@end table

@item Plugin(CutSphere)
Plugin(CutSphere) cuts the view `View' with the sphere (X-`Xc')^2 + (Y-`Yc')^2 + (Z-`Zc')^2 = `R'^2.
Christophe Geuzaine's avatar
Christophe Geuzaine committed

If `ExtractVolume' is nonzero, the plugin extracts the elements inside (if `ExtractVolume' < 0) or outside (if `ExtractVolume' > 0) the sphere.
Christophe Geuzaine's avatar
Christophe Geuzaine committed

If `View' < 0, the plugin is run on the current view.
Christophe Geuzaine's avatar
Christophe Geuzaine committed

Plugin(CutSphere) creates one new view.
Numeric options:
@table @code
@item Xc
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
Default value: @code{0}
Christophe Geuzaine's avatar
Christophe Geuzaine committed
@item Yc
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
Default value: @code{0}
Christophe Geuzaine's avatar
Christophe Geuzaine committed
@item Zc
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
Default value: @code{0}
Christophe Geuzaine's avatar
Christophe Geuzaine committed
@item R
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
Default value: @code{0.25}
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
@item ExtractVolume
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
Default value: @code{0}
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
@item RecurLevel
Default value: @code{4}
Christophe Geuzaine's avatar
Christophe Geuzaine committed
@item TargetError
Default value: @code{0}
@item View
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
Default value: @code{-1}
Christophe Geuzaine's avatar
Christophe Geuzaine committed
@end table

@item Plugin(DiscretizationError)
Plugin(DiscretizationError) computes the error between the mesh and the geometry. It does so by supersampling the elements and computing the distance between the supersampled points dans their projection on the geometry.
Numeric options:
@table @code
@item SuperSamplingNodes
Default value: @code{10}
@end table

Plugin(Distance) computes distances to physical entities in a mesh.

Define the physical entities to which the distance is computed. If Point=0, Line=0, and Surface=0, then the distance is computed to all the boundaries of the mesh (edges in 2D and faces in 3D).

Computation<0. computes the geometrical euclidian distance (warning: different than the geodesic distance), and  Computation=a>0.0 solves a PDE on the mesh with the diffusion constant mu = a*bbox, with bbox being the max size of the bounding box of the mesh (see paper Legrand 2006).
Min Scale and max Scale, scale the distance function. If min Scale<0 and max Scale<0, then no scaling is applied to the distance function.

Plugin(Distance) creates a new distance view and also saves the view in the fileName.pos file.
String options:
@table @code
@item Filename
Default value: @code{"distance.pos"}
@end table
Numeric options:
@table @code
@item PhysPoint
Default value: @code{0}
@item PhysLine
Default value: @code{0}
@item PhysSurface
Default value: @code{0}
@item Computation
Default value: @code{-1}
@item MinScale
Default value: @code{-1}
@item MaxScale
Default value: @code{-1}
@item Orthogonal
Default value: @code{-1}
@end table
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
@item Plugin(Divergence)
Plugin(Divergence) computes the divergence of the field in the view `View'.
Christophe Geuzaine's avatar
Christophe Geuzaine committed

If `View' < 0, the plugin is run on the current view.
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed

Plugin(Divergence) creates one new view.
Numeric options:
@table @code
Christophe Geuzaine's avatar
Christophe Geuzaine committed
@item View
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
Default value: @code{-1}
@end table

Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
@item Plugin(Eigenvalues)
Plugin(Eigenvalues) computes the three real eigenvalues of each tensor in the view `View'.
Christophe Geuzaine's avatar
Christophe Geuzaine committed

If `View' < 0, the plugin is run on the current view.
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed

Plugin(Eigenvalues) creates three new scalar views.
Numeric options:
@table @code
Christophe Geuzaine's avatar
Christophe Geuzaine committed
@item View
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
Default value: @code{-1}
@end table

Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
@item Plugin(Eigenvectors)
Plugin(Eigenvectors) computes the three (right) eigenvectors of each tensor in the view `View' and sorts them according to the value of the associated eigenvalues.
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed

If `ScaleByEigenvalues' is set, each eigenvector is scaled by its associated eigenvalue. The plugin gives an error if the eigenvectors are complex.
Christophe Geuzaine's avatar
Christophe Geuzaine committed

Christophe Geuzaine's avatar
Christophe Geuzaine committed
If `View' < 0, the plugin is run on the current view.
Christophe Geuzaine's avatar
Christophe Geuzaine committed

Christophe Geuzaine's avatar
Christophe Geuzaine committed
Plugin(Eigenvectors) creates three new vector view.
Christophe Geuzaine's avatar
Christophe Geuzaine committed
Numeric options:
@table @code
Christophe Geuzaine's avatar
Christophe Geuzaine committed
@item ScaleByEigenvalues
Default value: @code{1}
@item View
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
Default value: @code{-1}
@end table

@item Plugin(ExtractEdges)
Plugin(ExtractEdges) extracts sharp edges from a triangular mesh.

Plugin(ExtractEdges) creates one new view.
Numeric options:
@table @code
@item Angle
Default value: @code{40}
@item IncludeBoundary
Default value: @code{1}
@end table

@item Plugin(ExtractElements)
Plugin(ExtractElements) extracts some elements from the view `View'. If `MinVal' != `MaxVal', it extracts the elements whose `TimeStep'-th values (averaged by element) are comprised between `MinVal' and `MaxVal'. If `Visible' != 0, it extracts visible elements. 
Christophe Geuzaine's avatar
Christophe Geuzaine committed

If `View' < 0, the plugin is run on the current view.

Plugin(ExtractElements) creates one new view.
Numeric options:
@table @code
@item MinVal
Default value: @code{0}
@item MaxVal
@item TimeStep
Default value: @code{0}
@item Dimension
Default value: @code{-1}
Christophe Geuzaine's avatar
Christophe Geuzaine committed
@item View
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
Default value: @code{-1}
@end table

@item Plugin(FieldFromAmplitudePhase)
Plugin(FieldFromAmplitudePhase) builds a complex field 'u' from amplitude 'a' (complex) and phase 'phi' given in two different 'Views' u = a * exp(k*phi), with k the wavenumber. 

The result is to be interpolated in a sufficiently fine mesh: 'MeshFile'. 

Plugin(FieldFromAmplitudePhase) generates one new view.
String options:
@table @code
@item MeshFile
Default value: @code{"fine.msh"}
@end table
Numeric options:
@table @code
@item Wavenumber
Default value: @code{5}
@item AmplitudeView
Default value: @code{0}
@item PhaseView
Default value: @code{1}
@end table

Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
@item Plugin(Gradient)
Plugin(Gradient) computes the gradient of the field in the view `View'.
Christophe Geuzaine's avatar
Christophe Geuzaine committed

If `View' < 0, the plugin is run on the current view.
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed

Plugin(Gradient) creates one new view.
Numeric options:
@table @code
Christophe Geuzaine's avatar
Christophe Geuzaine committed
@item View
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
Default value: @code{-1}
Christophe Geuzaine's avatar
Christophe Geuzaine committed
@end table

Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
@item Plugin(HarmonicToTime)
Plugin(HarmonicToTime) takes the values in the time steps `RealPart' and `ImaginaryPart' of the view `View', and creates a new view containing
Christophe Geuzaine's avatar
Christophe Geuzaine committed

`View'[`RealPart'] * cos(p) - `View'[`ImaginaryPart'] * sin(p)

with p = 2*Pi*k/`NumSteps', k = 0, ..., `NumSteps'-1.

If `View' < 0, the plugin is run on the current view.
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed

Plugin(HarmonicToTime) creates one new view.
Numeric options:
@table @code
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
@item RealPart
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
Default value: @code{0}
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
@item ImaginaryPart
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
Default value: @code{1}
Christophe Geuzaine's avatar
Christophe Geuzaine committed
@item NumSteps
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
Default value: @code{20}
Christophe Geuzaine's avatar
Christophe Geuzaine committed
@item View
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
Default value: @code{-1}
@end table

Christophe Geuzaine's avatar
Christophe Geuzaine committed
@item Plugin(HomologyComputation)
Plugin(HomologyComputation) computes representative chains of basis elements of (relative) homology and cohomology spaces.
Christophe Geuzaine's avatar
Christophe Geuzaine committed

Define physical groups in order to specify the computation domain and the relative subdomain. Otherwise the whole mesh is the domain and the relative subdomain is empty. 

Christophe Geuzaine's avatar
Christophe Geuzaine committed
Plugin(HomologyComputation) creates new views, one for each basis element. The resulting basis chains of desired dimension together with the mesh are saved to the given file.
Christophe Geuzaine's avatar
Christophe Geuzaine committed
String options:
@table @code
Christophe Geuzaine's avatar
Christophe Geuzaine committed
@item DomainPhysicalGroups
Default value: @code{""}
@item SubdomainPhysicalGroups
Default value: @code{""}
@item ReductionImmunePhysicalGroups
Default value: @code{""}
@item DimensionOfChainsToSave
Default value: @code{"0, 1, 2, 3"}
Christophe Geuzaine's avatar
Christophe Geuzaine committed
@item Filename
Default value: @code{"homology.msh"}
@end table
Numeric options:
@table @code
Christophe Geuzaine's avatar
Christophe Geuzaine committed
@item ComputeHomology
Christophe Geuzaine's avatar
Christophe Geuzaine committed
Default value: @code{1}
Christophe Geuzaine's avatar
Christophe Geuzaine committed
@item ComputeCohomology
Christophe Geuzaine's avatar
Christophe Geuzaine committed
Default value: @code{0}
Christophe Geuzaine's avatar
Christophe Geuzaine committed
@item HomologyPhysicalGroupsBegin
Default value: @code{-1}
@item CohomologyPhysicalGroupsBegin
Default value: @code{-1}
@item CreatePostProcessingViews
Default value: @code{1}
@item ReductionOmit
Default value: @code{1}
@item ReductionCombine
Christophe Geuzaine's avatar
Christophe Geuzaine committed
Default value: @code{3}
Christophe Geuzaine's avatar
Christophe Geuzaine committed
@item PostProcessSimplify
Default value: @code{1}
@item ReductionHeuristic
Default value: @code{1}
Christophe Geuzaine's avatar
Christophe Geuzaine committed
@end table

@item Plugin(HomologyPostProcessing)
Plugin(HomologyPostProcessing) operates on representative basis chains of homology and cohomology spaces. Functionality:

1. (co)homology basis transformation:
 'TransformationMatrix': Integer matrix of the transformation.
 'PhysicalGroupsOfOperatedChains': (Co)chains of a (co)homology space basis to be transformed.
 Results a new (co)chain basis that is an integer cobination of the given basis. 

2. Make basis representations of a homology space and a cohomology space compatible: 
'PhysicalGroupsOfOperatedChains': Chains of a homology space basis.
'PhysicalGroupsOfOperatedChains2': Cochains of a cohomology space basis.
Results a new basis for the homology space such that the incidence matrix of the new basis and the basis of the cohomology space is the identity matrix.

Options:
Christophe Geuzaine's avatar
Christophe Geuzaine committed
'PhysicalGroupsToTraceResults': Trace the resulting (co)chains to the given physical groups.
'PhysicalGroupsToProjectResults': Project the resulting (co)chains to the complement of the given physical groups.
Christophe Geuzaine's avatar
Christophe Geuzaine committed
'NameForResultChains': Post-processing view name prefix for the results.
'ApplyBoundaryOperatorToResults': Apply boundary operator to the resulting chains.

String options:
@table @code
@item TransformationMatrix
Default value: @code{"1, 0; 0, 1"}
@item PhysicalGroupsOfOperatedChains
Default value: @code{"1, 2"}
@item PhysicalGroupsOfOperatedChains2
Default value: @code{""}
@item PhysicalGroupsToTraceResults
Default value: @code{""}
Christophe Geuzaine's avatar
Christophe Geuzaine committed
@item PhysicalGroupsToProjectResults
Default value: @code{""}
Christophe Geuzaine's avatar
Christophe Geuzaine committed
@item NameForResultChains
Default value: @code{"c"}
@end table
Numeric options:
@table @code
@item ApplyBoundaryOperatorToResults
Default value: @code{0}
Christophe Geuzaine's avatar
Christophe Geuzaine committed
@end table

Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
@item Plugin(Integrate)
Plugin(Integrate) integrates a scalar field over all the elements of the view `View' (if `Dimension' < 0), or over all elements of the prescribed dimension (if `Dimension' > 0). If the field is a vector field,the circulation/flux of the field over line/surface elements is calculated.
Christophe Geuzaine's avatar
Christophe Geuzaine committed

If `View' < 0, the plugin is run on the current view.
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed

If `OverTime' = 1 , the plugin integrates the scalar view over time instead of over space.
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
Plugin(Integrate) creates one new view.
Numeric options:
@table @code
Christophe Geuzaine's avatar
Christophe Geuzaine committed
@item View
Default value: @code{-1}
Christophe Geuzaine's avatar
Christophe Geuzaine committed
@item OverTime
Default value: @code{-1}
@item Dimension
Default value: @code{-1}
Christophe Geuzaine's avatar
Christophe Geuzaine committed
@end table

@item Plugin(Isosurface)
Plugin(Isosurface) extracts the isosurface of value `Value' from the view `View', and draws the `OtherTimeStep'-th step of the view `OtherView' on this isosurface.
Christophe Geuzaine's avatar
Christophe Geuzaine committed

If `ExtractVolume' is nonzero, the plugin extracts the isovolume with values greater (if `ExtractVolume' > 0) or smaller (if `ExtractVolume' < 0) than the isosurface `Value'.
Christophe Geuzaine's avatar
Christophe Geuzaine committed

If `OtherTimeStep' < 0, the plugin uses, for each time step in `View', the corresponding time step in `OtherView'. If `OtherView' < 0, the plugin uses `View' as the value source.
Christophe Geuzaine's avatar
Christophe Geuzaine committed

If `View' < 0, the plugin is run on the current view.

Plugin(Isosurface) creates as many views as there are time steps in `View'.
Christophe Geuzaine's avatar
Christophe Geuzaine committed
Numeric options:
@table @code
@item Value
Default value: @code{0}
@item ExtractVolume
Default value: @code{0}
@item RecurLevel
Default value: @code{4}
@item TargetError
Default value: @code{0}
@item View
Default value: @code{-1}
@item OtherTimeStep
Default value: @code{-1}
@item OtherView
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
Default value: @code{-1}
@end table

Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
@item Plugin(Lambda2)
Plugin(Lambda2) computes the eigenvalues Lambda(1,2,3) of the tensor (S_ik S_kj + Om_ik Om_kj), where S_ij = 0.5 (ui,j + uj,i) and Om_ij = 0.5 (ui,j - uj,i) are respectively the symmetric and antisymmetric parts of the velocity gradient tensor.

Vortices are well represented by regions where Lambda(2) is negative.

If `View' contains tensor elements, the plugin directly uses the tensors as the values of the velocity gradient tensor; if `View' contains vector elements, the plugin uses them as the velocities from which to derive the velocity gradient tensor.
Christophe Geuzaine's avatar
Christophe Geuzaine committed

If `View' < 0, the plugin is run on the current view.
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed

Plugin(Lambda2) creates one new view.
Numeric options:
@table @code
@item Eigenvalue
Default value: @code{2}
Christophe Geuzaine's avatar
Christophe Geuzaine committed
@item View
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
Default value: @code{-1}
@end table

Christophe Geuzaine's avatar
Christophe Geuzaine committed
@item Plugin(LongitudeLatitude)
Plugin(LongituteLatitude) projects the view `View' in longitude-latitude.
Christophe Geuzaine's avatar
Christophe Geuzaine committed

If `View' < 0, the plugin is run on the current view.
Christophe Geuzaine's avatar
Christophe Geuzaine committed

Plugin(LongituteLatitude) is executed in place.
Numeric options:
@table @code
Christophe Geuzaine's avatar
Christophe Geuzaine committed
@item View
Christophe Geuzaine's avatar
Christophe Geuzaine committed
Default value: @code{-1}
@end table

Christophe Geuzaine's avatar
Christophe Geuzaine committed
@item Plugin(MakeSimplex)
Plugin(MakeSimplex) decomposes all non-simplectic elements (quadrangles, prisms, hexahedra, pyramids) in the view `View' into simplices (triangles, tetrahedra).
Christophe Geuzaine's avatar
Christophe Geuzaine committed

If `View' < 0, the plugin is run on the current view.

Plugin(MakeSimplex) is executed in-place.
Numeric options:
@table @code
@item View
Default value: @code{-1}
@end table

@item Plugin(MathEval)
Plugin(MathEval) creates a new view using data from the time step `TimeStep' in the view `View'.
Christophe Geuzaine's avatar
Christophe Geuzaine committed

If only `Expression0' is given (and `Expression1', ..., `Expression8' are all empty), the plugin creates a scalar view. If `Expression0', `Expression1' and/or `Expression2' are given (and `Expression3', ..., `Expression8' are all empty) the plugin creates a vector view. Otherwise the plugin creates a tensor view.
Christophe Geuzaine's avatar
Christophe Geuzaine committed

In addition to the usual mathematical functions (Exp, Log, Sqrt, Sin, Cos, Fabs, etc.) and operators (+, -, *, /, ^), all expressions can contain:
Christophe Geuzaine's avatar
Christophe Geuzaine committed

- the symbols v0, v1, v2, ..., vn, which represent the n components in `View';
Christophe Geuzaine's avatar
Christophe Geuzaine committed

- the symbols w0, w1, w2, ..., wn, which represent the n components of `OtherView', at time step `OtherTimeStep';
Christophe Geuzaine's avatar
Christophe Geuzaine committed

- the symbols x, y and z, which represent the three spatial coordinates.
Christophe Geuzaine's avatar
Christophe Geuzaine committed

If `TimeStep' < 0, the plugin extracts data from all the time steps in the view.
Christophe Geuzaine's avatar
Christophe Geuzaine committed

If `View' < 0, the plugin is run on the current view.

Plugin(MathEval) creates one new view.If `PhysicalRegion' < 0, the plugin is run on all physical regions.
Christophe Geuzaine's avatar
Christophe Geuzaine committed
Plugin(MathEval) creates one new view.
String options:
@table @code
@item Expression0
Default value: @code{"Sqrt(v0^2+v1^2+v2^2)"}
@item Expression1
Default value: @code{""}
@item Expression2
Default value: @code{""}
@item Expression3
Default value: @code{""}
@item Expression4
Default value: @code{""}
@item Expression5
Default value: @code{""}
@item Expression6
Default value: @code{""}
@item Expression7
Default value: @code{""}
@item Expression8
Default value: @code{""}
@end table
Numeric options:
@table @code
@item TimeStep
Default value: @code{-1}
@item View
Default value: @code{-1}
@item OtherTimeStep
Default value: @code{-1}
@item OtherView
Default value: @code{-1}
@item ForceInterpolation
Default value: @code{0}
Christophe Geuzaine's avatar
Christophe Geuzaine committed
@item PhysicalRegion
Default value: @code{-1}
Christophe Geuzaine's avatar
Christophe Geuzaine committed
@end table

@item Plugin(MinMax)
Plugin(MinMax) computes the min/max of a view.

If `View' < 0, the plugin is run on the current view.

Christophe Geuzaine's avatar
Christophe Geuzaine committed
If `OverTime' = 1, calculates the min/max over space AND time

If `Argument' = 1, calculates the min/max AND the argmin/argmax
Plugin(MinMax) creates two new views.
Numeric options:
@table @code
@item View
Default value: @code{-1}
Christophe Geuzaine's avatar
Christophe Geuzaine committed
@item OverTime
Default value: @code{0}
Christophe Geuzaine's avatar
Christophe Geuzaine committed
@item Argument
Default value: @code{0}
Christophe Geuzaine's avatar
Christophe Geuzaine committed
@item Plugin(ModifyComponent)
Plugin(ModifyComponent) sets the `Component'-th component of the `TimeStep'-th time step in the view `View' to the expression `Expression'.
Christophe Geuzaine's avatar
Christophe Geuzaine committed

`Expression' can contain:

- the usual mathematical functions (Log, Sqrt, Sin, Cos, Fabs, ...) and operators (+, -, *, /, ^);
Christophe Geuzaine's avatar
Christophe Geuzaine committed

- the symbols x, y and z, to retrieve the coordinates of the current node;
Christophe Geuzaine's avatar
Christophe Geuzaine committed

- the symbols Time and TimeStep, to retrieve the current time and time step values;
Christophe Geuzaine's avatar
Christophe Geuzaine committed

- the symbol v, to retrieve the `Component'-th component of the field in `View' at the `TimeStep'-th time step;
Christophe Geuzaine's avatar
Christophe Geuzaine committed

- the symbols v0, v1, v2, ..., v8, to retrieve each component of the field in `View' at the `TimeStep'-th time step;
Christophe Geuzaine's avatar
Christophe Geuzaine committed

- the symbol w, to retrieve the `Component'-th component of the field in `OtherView' at the `OtherTimeStep'-th time step. If `OtherView' and `View' are based on different spatial grids, or if their data types are different, `OtherView' is interpolated onto `View';
Christophe Geuzaine's avatar
Christophe Geuzaine committed

- the symbols w0, w1, w2, ..., w8, to retrieve each component of the field in `OtherView' at the `OtherTimeStep'-th time step.
Christophe Geuzaine's avatar
Christophe Geuzaine committed

If `TimeStep' < 0, the plugin automatically loops over all the time steps in `View' and evaluates `Expression' for each one.
Christophe Geuzaine's avatar
Christophe Geuzaine committed

If `OtherTimeStep' < 0, the plugin uses `TimeStep' instead.
Christophe Geuzaine's avatar
Christophe Geuzaine committed

If `Component' < 0, the plugin automatically  ops
over all the components in the view and evaluates `Expression' for each one.
Christophe Geuzaine's avatar
Christophe Geuzaine committed

If `View' < 0, the plugin is run on the current view.

If `OtherView' < 0, the plugin uses `View' instead.
Christophe Geuzaine's avatar
Christophe Geuzaine committed
Plugin(ModifyComponent) is executed in-place.
String options:
@table @code
@item Expression
Default value: @code{"v0 * Sin(x)"}
@end table
Christophe Geuzaine's avatar
Christophe Geuzaine committed
Numeric options:
@table @code
Christophe Geuzaine's avatar
Christophe Geuzaine committed
@item Component
Default value: @code{-1}
@item TimeStep
Default value: @code{-1}
@item View
Default value: @code{-1}
@item OtherTimeStep
Default value: @code{-1}
@item OtherView
Christophe Geuzaine's avatar
Christophe Geuzaine committed
Default value: @code{-1}
@item ForceInterpolation
Default value: @code{0}
Christophe Geuzaine's avatar
Christophe Geuzaine committed
@end table

Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
@item Plugin(ModulusPhase)
Plugin(ModulusPhase) interprets the time steps `realPart' and `imaginaryPart' in the view `View' as the real and imaginary parts of a complex field and replaces them with their corresponding modulus and phase.
Christophe Geuzaine's avatar
Christophe Geuzaine committed

If `View' < 0, the plugin is run on the current view.
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed

Plugin(ModulusPhase) is executed in-place.
Numeric options:
@table @code
@item RealPart
Default value: @code{0}
@item ImaginaryPart
Default value: @code{1}
Christophe Geuzaine's avatar
Christophe Geuzaine committed
@item View
Default value: @code{-1}
@end table

Christophe Geuzaine's avatar
Christophe Geuzaine committed
Plugin(NearToFarField) computes the far field pattern from the near electric E and magnetic H fields on a surface enclosing the radiating device (antenna).
Christophe Geuzaine's avatar
Christophe Geuzaine committed
Parameters: the wavenumber, the angular discretisation (phi in [0, 2*Pi] and theta in [0, Pi]) of the far field sphere and the indices of the views containing the complex-valued E and H fields. If `Normalize' is set, the far field is normalized to 1. If `dB' is set, the far field is computed in dB. If `NegativeTime' is set, E and H are assumed to have exp(-iwt) time dependency; otherwise they are assume to have exp(+iwt) time dependency. If `MatlabOutputFile' is given the raw far field data is also exported in Matlab format.
Christophe Geuzaine's avatar
Christophe Geuzaine committed
String options:
@table @code
@item MatlabOutputFile
Default value: @code{"farfield.m"}
@end table
Numeric options:
@table @code
@item Wavenumber
Default value: @code{1}
Christophe Geuzaine's avatar
Christophe Geuzaine committed
@item PhiStart
Default value: @code{0}
@item PhiEnd
Default value: @code{6.28319}
Christophe Geuzaine's avatar
Christophe Geuzaine committed
@item ThetaStart
Default value: @code{0}
@item ThetaEnd
Default value: @code{3.14159}
@item NumPointsTheta
Default value: @code{30}
@item EView
Default value: @code{0}
@item HView
Default value: @code{1}
@item Normalize
Default value: @code{1}
@item dB
Default value: @code{1}
Christophe Geuzaine's avatar
Christophe Geuzaine committed
@item NegativeTime
Default value: @code{0}
Christophe Geuzaine's avatar
Christophe Geuzaine committed
@item RFar
Default value: @code{0}
@item Plugin(NearestNeighbor)
Plugin(NearestNeighbor) computes the distance from each point in `View' to its nearest neighbor.

If `View' < 0, the plugin is run on the current view.

Plugin(NearestNeighbor) is executed in-place.
Numeric options:
@table @code
@item View
Default value: @code{-1}
@end table

Christophe Geuzaine's avatar
Christophe Geuzaine committed
@item Plugin(NewView)
Plugin(NewView) creates a new view from a mesh.
Numeric options:
@table @code
@item View
Default value: @code{-1}
@end table

Christophe Geuzaine's avatar
Christophe Geuzaine committed
@item Plugin(Particles)
Plugin(Particles) computes the trajectory of particules in the force field given by the `TimeStep'-th time step of a vector view `View'.
Christophe Geuzaine's avatar
Christophe Geuzaine committed

The plugin takes as input a grid defined by the 3 points (`X0',`Y0',`Z0') (origin), (`X1',`Y1',`Z1') (axis of U) and (`X2',`Y2',`Z2') (axis of V).
Christophe Geuzaine's avatar
Christophe Geuzaine committed

The number of particles along U and V that are to be transported is set with the options `NumPointsU' and `NumPointsV'. The equation
Christophe Geuzaine's avatar
Christophe Geuzaine committed

A2 * d^2X(t)/dt^2 + A1 * dX(t)/dt + A0 * X(t) = F

is then solved with the initial conditions X(t=0) chosen as the grid, dX/dt(t=0)=0, and with F interpolated from the vector view.
Christophe Geuzaine's avatar
Christophe Geuzaine committed

Time stepping is done using a Newmark scheme with step size `DT' and `MaxIter' maximum number of iterations.
Christophe Geuzaine's avatar
Christophe Geuzaine committed

If `View' < 0, the plugin is run on the current view.

Plugin(Particles) creates one new view containing multi-step vector points.
Christophe Geuzaine's avatar
Christophe Geuzaine committed
Numeric options:
@table @code
@item X0
Default value: @code{0}
@item Y0
Default value: @code{0}
@item Z0
Default value: @code{0}
@item X1
Default value: @code{1}
@item Y1
Default value: @code{0}
@item Z1
Default value: @code{0}
@item X2
Default value: @code{0}
@item Y2
Default value: @code{1}
@item Z2
Default value: @code{0}
@item NumPointsU
Default value: @code{10}
@item NumPointsV
Default value: @code{1}
@item A2
Default value: @code{1}
@item A1
Default value: @code{0}
@item A0
Default value: @code{0}
@item DT
Default value: @code{0.1}
@item MaxIter
Default value: @code{100}
@item TimeStep
Default value: @code{0}
@item View
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
Default value: @code{-1}
@end table

@item Plugin(Probe)
Plugin(Probe) gets the value of the view `View' at the point (`X',`Y',`Z').
Christophe Geuzaine's avatar
Christophe Geuzaine committed

If `View' < 0, the plugin is run on the current view.

Plugin(Probe) creates one new view.
Numeric options:
@table @code
@item X
Default value: @code{0}
@item Y
Default value: @code{0}
@item Z
Default value: @code{0}
Christophe Geuzaine's avatar
Christophe Geuzaine committed
@item View
Default value: @code{-1}
@end table

@item Plugin(Remove)
Plugin(Remove) removes the marked items from the view `View'.
Christophe Geuzaine's avatar
Christophe Geuzaine committed

If `View' < 0, the plugin is run on the current view.

Plugin(Remove) is executed in-place.
Numeric options:
@table @code
@item Text2D
Default value: @code{1}
@item Text3D
Default value: @code{1}
@item Points
Default value: @code{0}
@item Lines
Default value: @code{0}
@item Triangles
Default value: @code{0}
@item Quadrangles
Default value: @code{0}
@item Tetrahedra
Default value: @code{0}
@item Hexahedra
Default value: @code{0}
@item Prisms
Default value: @code{0}
@item Pyramids
Default value: @code{0}
@item Scalar
Default value: @code{1}
@item Vector
Default value: @code{1}
@item Tensor
Default value: @code{1}
Christophe Geuzaine's avatar
Christophe Geuzaine committed
@item View
Default value: @code{-1}
@end table

Christophe Geuzaine's avatar
Christophe Geuzaine committed
@item Plugin(Scal2Vec)
Christophe Geuzaine's avatar
Christophe Geuzaine committed
Plugin(Scal2Vec) converts the scalar fields of 'ViewX', 'ViewY' and/or 'ViewZ' into a vectorial field. The new view 'NameNewView' contains it.
Christophe Geuzaine's avatar
Christophe Geuzaine committed
If the value of 'ViewX', 'ViewY' or 'ViewZ' is -1, the value of the vectorial field in the corresponding direction is 0.
Christophe Geuzaine's avatar
Christophe Geuzaine committed
String options:
@table @code
Christophe Geuzaine's avatar
Christophe Geuzaine committed
@item NameNewView
Christophe Geuzaine's avatar
Christophe Geuzaine committed
Default value: @code{"NewView"}
@end table
Numeric options:
@table @code
Christophe Geuzaine's avatar
Christophe Geuzaine committed
@item ViewX
Christophe Geuzaine's avatar
Christophe Geuzaine committed
Default value: @code{-1}
Christophe Geuzaine's avatar
Christophe Geuzaine committed
@item ViewY
Christophe Geuzaine's avatar
Christophe Geuzaine committed
Default value: @code{-1}
Christophe Geuzaine's avatar
Christophe Geuzaine committed
@item ViewZ
Christophe Geuzaine's avatar
Christophe Geuzaine committed
Default value: @code{-1}
@end table

@item Plugin(SimplePartition)
Plugin(SimplePartition) partitions the current mesh into `NumSlices' slices, along the X-, Y- or Z-axis depending on the value of `Direction' (0,1,2). The plugin creates partition boundaries if `CreateBoundaries' is set.
Christophe Geuzaine's avatar
Christophe Geuzaine committed
String options:
@table @code
@item Mapping
Default value: @code{"t"}
@end table
Numeric options:
@table @code
@item NumSlices
Default value: @code{4}
@item Direction
Default value: @code{0}
@item CreateBoundaries
Default value: @code{1}
@end table

Christophe Geuzaine's avatar
Christophe Geuzaine committed
@item Plugin(Skin)
Christophe Geuzaine's avatar
Christophe Geuzaine committed
Plugin(Skin) extracts the boundary (skin) of the current mesh (if `FromMesh' = 1), or from the the view `View' (in which case it creates a new view). If `View' < 0 and `FromMesh' = 0, the plugin is run on the current view.
If `Visible' is set, the plugin only extracts the skin of visible entities.
Christophe Geuzaine's avatar
Christophe Geuzaine committed
Numeric options:
@table @code