Toggle commands
There are a large number of Surface Evolver features that can
be turned on or off with simple "toggle" commands. The
general syntax is "togglename ON" or "togglename OFF", with
just "togglename" being a synonym for "togglename ON".
The toggle names below have brief descriptions
of their actions in the ON state. Toggles will usually print
their previous state. A togglename used in an arithmetic
expression is the current value of the toggle, 0 for OFF and
1 for ON. The current value of a toggle may be
found by "print togglename".
All toggles are reset when a surface is loaded. Default values
are OFF unless otherwise noted.
These full-word toggle commands are not to be confused with
various single-letter toggle commands, which always
change the state. All single-letter toggles have full word
toggle equivalents.
AMBIENT_PRESSURE
Toggles ideal gas mode
with ambient pressure outside bodies.
The external pressure can be set with the
pressure
phrase in the topwith the top of the datafile, or at runtime
with the command, e.g. p 10.
APPROXIMATE_CURVATURE
Evolver toggle command.
Use
polyhedral curvature
(linear interpolation over facets for metric) for
mean curvature vector. Actually establishes the inner product
for forms or vectors to be integration over facets of euclidean
inner products of linear
interpolation of values at vertices. Synonyms: APPROX_CURV,
APPROX_CURVATURE.
AREA_NORMALIZATION
Evolver toggle command.
Convert
force on vertex to mean curvature vector by dividing force by
area of star around vertex.
ASSUME_ORIENTED
Evolver toggle command.
Tells squared mean curvature routines that they can assume the surface
is locally consistently oriented. Significant only for extreme shapes.
AUTOCHOP
Evolver toggle command.
Do autochopping of long edges each iteration.
Use "AUTOCHOP := expr" to set autochop length.
Each iteration, any edge that is
projected to become longer than the cutoff is
bisected. If any bisections are done, the
motion calculation is redone.
AUTODISPLAY
Evolver toggle command.
Toggles automatic redrawing of graphics whenever the surface changes.
Default ON.
Same function as the 'D' command.
AUTOPOP
Evolver toggle command.
Toggles automatic deletion of short edges and
popping of improper vertices each iteration.
Before each iteration, any edge projected to
shorten to under the critical length is deleted
by identifying its endpoints. The critical length
is calculated as L = sqrt(2*dt), where
dt is the time step or
scale factor.
Hence this should be used only with a fixed
scale, not optimizing scale factor. The critical
length is chosen so that instabilities do not
arise in motion by mean curvature. If any edges
are deleted, then vertices are examined for
improper vertices as in the 'o'
command.
Useful in string
model. Not fully implemented in soapfilm model yet,
since it doesn't check facet areas.
AUTORECALC
Evolver toggle command.
Toggles automatic recalculation of the surface whenever adjustable
parameters or energy quantity moduli are changed. Default is OFF.
BACKCULL
Evolver toggle command.
Prevents display of facets with normal away from viewer. May have
different effects in different graphics displays. For example,
to see the inside back of a body only, "set frontcolor clear" alone works in
2D displays, but needs backcull also for direct 3D.
BOUNDARY_CURVATURE
Evolver toggle command.
When doing integrals of mean curvature or squared curvature,
the curvature of a boundary vertex cannot be defined by its
neighbor vertices, so the area of the boundary vertex star
instead is counted with an adjacent interior vertex.
BUNCH_KAUFMAN
BUNCH_KAUFMAN
Evolver toggle command.
Toggles Bunch-Kaufman factoring of the
Hessian in the alternative minimal degree
factoring method (ysmp off).
This factors the Hessian as LBL^T
where L is lower triangular with ones on the diagonal, and B is
block diagonal, with 1x1 or 2x2 blocks. Supposed to be more stable
when factoring indefinite Hessians.
CHECK_INCREASE
Evolver toggle command.
Toggles checking for increase of energy in an
iteration step.
If energy increases, then
the step is undone and any iteration loop is halted.
Meant for early
detection of instabilities and other problems
causing the surface to misbehave. Useful in
doing a multiple iteration with a fixed scale.
Also applies to the hessian
command.
Caution: there are circumstances where an energy
increase is appropriate, for example when there
are volume or quantity constraints and conforming
to the constraints means an energy increase
initially.
CLIPPED
Evolver toggle command.
Sets torus model display to
clip to the fundamental region.
Not an on-off toggle. 3-way toggle with
raw_cells and
connected. Synonym: clipped_cells.
COLORMAP
Evolver toggle command.
Use colormap from file in certain graphics output.
See the P command.
Use COLORMAP := "filename" to set file.
CONF_EDGE
Evolver toggle command.
Calculation of squared curvature by fitting sphere to edge and adjacent
vertices (conformal curvature).
CONJ_GRAD
Evolver toggle command.
Use conjugate gradient method
in g command. See also
U command and RIBIERE.
CONNECTED
Evolver toggle command.
Sets torus model
display to do each body as a connected, wrapped
surface.
Not an on-off toggle. 3-way toggle with
clipped and
raw_cells. Synonym: connected_cells.
CONVERT_TO_QUANTITIES
Evolver toggle command.
This will do an automatic
conversion of old-style energies to new-style named quantities.
This has the same effect as the -q
command line option, but
can be done from the Evolver command prompt. Useful when
hessian complains about not being able to do a type of energy.
A few energies don't convert yet. It is my intention that
this will be the default sometime in the near future,
if it can be made sufficiently fast and reliable.
CROSSINGFLAG
Evolver toggle command.
When on and the string model
is in effect, the postscript
command will show background edges with a break where foreground edges
pass in front.
DEBUG
Evolver toggle command.
Print YACC debug trace of parsing of commands.
DETURCK
Evolver toggle command.
Motion by unit velocity along normal, instead of by curvature vector.
DIFFUSION
Evolver toggle command.
Activates diffusion step each
g command.
EFFECTIVE_AREA
Evolver toggle command.
In area normalization,
the resistance factor to motion is taken to
be only the projection of the vertex star area perpendicular to the
motion. If squared mean curvature is being calculated, this projected
area is used in calculating the curvature.
ESTIMATE
Evolver toggle command.
Activates estimation of energy decrease in each gradient descent step
(g command). Computes inner product of
energy gradient with actual motion. Useful
only for a fixed scale factor much less than optimizing, so linear
approximation is good.
FACET_COLORS
Evolver toggle command.
Enables coloring of facets in certain graphics interfaces (e.g. xgraph).
If off, facet color is white. Default on.
GRAVITY
Evolver toggle command.
Includes the gravitational energy
of bodies with density in total energy. The gravitational constant
can be set in the top of the datafile with "gravity_constant = value",
or with the runtime command "G value".
GRIDFLAG
Evolver toggle command.
If toggled on, the postscript
command will show all edges of displayed facets,
instead of just those satisfying the
current edge show condition.
GV_BINARY
Evolver toggle command.
Toggles sending data to geomview in binary format, which
is faster than ascii. Default is binary on SGI, ascii on other systems,
since there have been problems with binary format on some systems.
Ascii is also useful for debugging.
HESSIAN_DIFF
Evolver toggle command.
Toggles computing the hessian matrix by finite differences.
Used only for debugging, since it is very slow.
HESSIAN_DOUBLE_NORMAL
Evolver toggle command.
When hessian_normal is also on,
and the space dimension is even, then the normal vector components
in the last half of the dimensions are copies of the components in
the first half. Sounds weird, huh? But it is useful in calculating
the stability of cylindrically symmetric surfaces using a string
model in 4D.
HESSIAN_NORMAL
Evolver toggle command.
Constrains Hessian
to move each vertex perpendicular
to the surface. This eliminates all the fiddly sideways movement
of vertices that makes convergence difficult. Perpendicular is
usually defined as the volume gradient, but at triple (and higher)
junction lines it is a subspace perpendicular to the line, and singular
points where several triple lines meet have full degrees of freedom.
See hessian_normal_one to alter this
behavior.
HESSIAN_NORMAL_ONE
Evolver toggle command.
If this and hessian_normal are on,
then the normal at any point will be one dimensional. This is meant
for soap films with Plateau borders, where there are triple junctions
with tangent films. Ordinary hessian_normal permits lateral
movement of such triple junctions, but hessian_normal_one
does not. Valid only for string model
in 2D and soapfilm model in 3D.
The normal vector is computed as the eigenvector of the largest
eigenvalue of the sum of the normal projection matrices of all edges
or facets adjoining a vertex.
HESSIAN_NORMAL_PERP
Evolver toggle command.
If this is on, then the Hessian linear_metric
uses only the component of the normal perpendicular to the facet or edge.
This raises eigenvalues slightly.
HESSIAN_QUIET
Evolver toggle command.
Toggles suppression of printing of information during hessian calculations. Default is on.
HESSIAN_SPECIAL_NORMAL
Evolver toggle command.
Toggles a private Hessian normal mode.
HOMOTHETY
Evolver toggle command.
Adjust total volume of all bodies to fixed value after each
iteration
by uniformly scaling entire surface.
INTERP_BDRY_PARAM
Evolver toggle command.
For edges on
parametric boundaries, calculate the parameter values of
new vertices (introduced by refining) by interpolating parameter
values, rather than extrapolating from one endpoint. Useful only
when parameters are not periodic.
INTERP_NORMALS
Evolver toggle command.
Display using interpolated vertex normals for shading for those graphics
interfaces that support it.
ITDEBUG
Evolver toggle command.
Prints some debugging information during a 'g' step. For gurus only.
JIGGLE
Evolver toggle command.
Toggles jiggling on every iteration.
KUSNER
Evolver toggle command.
Calculation of squared curvature by edge formula rather than vertex formula.
LABELFLAG
Evolver toggle command.
When on, the postscript
command will print element labels in the
postscript file.
LINEAR_METRIC
Evolver toggle command.
Eigenvalues and eigenvectors of the
Hessian are defined with respect to
a metric.
This command toggles a metric that imitates the smooth
surface natural metric of L_2 integration on the surface. Use
with hessian_normal to get eigenvalues and eigenvectors
similar to those on smooth surfaces.
MEMDEBUG
Evolver toggle command.
When ON, the 'c' command prints
full memory usage statistics on some systems.
Also, each allocation or freeing of memory is printed. Causes heap checking
to be done on some systems at each memory operation.
METIS_FACTOR
Evolver toggle command.
Computes and uses an ordering for Hessian factoring using the
METIS
library of Karypis and Kumar, if this library has been compiled into
the Evolver.
METRIC_CONVERT
Evolver toggle command.
If a Riemannian metric
is defined, whether to use the metric
to do gradient form to vector conversions.
Synonym: metric_conversion.
NORMAL_CURVATURE
Evolver toggle command.
Calculation of squared curvature by taking area of vertex to be
the component of the volume gradient parallel to the mean curvature
vector.
NORMAL_MOTION
Evolver toggle command.
Projects motion to surface normal, defined as the volume gradient.
May be useful with squared curvature if vertices tend to slither
sideways into ugly patterns.
OLD_AREA
Evolver toggle command.
In the string model with area normalization, at a triple vertex
Evolver normally tries to calculate the motion so that Von Neumann's
Law will be obeyed, that is, the rate of area change is proportional
to the number of sides of a cell. If old_area is ON, then motion is
calculated simply by dividing force by star area.
PINNING
Evolver toggle command.
Check for vertices that can't move because adjacent
vertices are not on same constraint when they could be.
Obscure.
PSCOLORFLAG
Evolver toggle command.
When on, the postscript
command will do color.
QUANTITIES_ONLY
Evolver toggle command.
Inactivates all energies except named quantities. Meant for
programmer's debugging use.
QUIET
Evolver toggle command.
Suppresses all normal output messages. Good while running scripts.
nterrupting a command will turn QUIET off, for sanity.
QUIETGO
Evolver toggle command.
Suppresses only g iteration step output.
POST_PROJECT
Evolver toggle command.
Introduces extra projections to volume and fixed quantity constraints
each g
iteration. If convergence fails after 10 iterations,
you will get a warning message, repeated iterations will stop, and the
internal variable iteration_counter
will be negative.
RAW_CELLS
Evolver toggle command.
Sets torus model
display for plain, unwrapped facets.
Not an on-off toggle; 3-way toggle with
clippedand
connected.
RIBIERE
Evolver toggle command.
Makes the conjugate gradient method
use the Polak-Ribiere version
instead of Fletcher-Reeves. (The toggle doesn't turn on conjugate gradient.)
Polak-Ribiere seems to recover much better from stalling.
Ribiere is the default mode.
RUNGE_KUTTA
Evolver toggle command.
Use Runge-Kutta method in a g iteration step
(fixed scale factor only).
SELF_SIMILAR
Evolver toggle command.
If squared mean curvature energy is being used, this scales the
velocity toward a self-similar motion.
SHADING
Evolver toggle command.
Toggles facet shading in certain graphics interfaces
(xgraph, psgraph). Darkness of facet depends on angle of
normal from vertical, simulating a light source above surface.
Default is ON.
SHOW_ALL_QUANTITIES
Evolver toggle command.
By default, only explicitly user-defined
named quantities are
shown by the A or
v commands. If show_all_quantities
is on, then all internal quantities created by option
-q or by doing
convert_to_quantities
are also shown.
SHOW_INNER
Evolver toggle command.
Display interior facets, those on 2 bodies.
SHOW_OUTER
Evolver toggle command.
Display outer facets, those on 0 or 1 body.
SQUARED_GRADIENT
Evolver toggle command.
In hessian_seek,
use minimizing the square of the gradient of the energy as
the objective rather than minimizing the energy.
THICKEN
Evolver toggle command.
Whether to display differently colored sides of a facet separated
by thickness. Default on.
This helps prevent weird striping due to limited resolution of
depth buffers.
TORUS_FILLED
Evolver toggle command.
Whether Evolver should treat one fixed volume as not fixed,
for the purpose of avoiding redundant constraints in the
case of a torus space being completely filled with bodies
of fixed volume, for example a periodic foam.
TRANSFORMS
Evolver toggle command.
Toggles graphing multiple images of the surface, according to
the view transforms defined
in the datafile, or according to the current
transform expression
applied to the view transform
generators defined in the datafile.
VIEW_4D
Evolver toggle command.
Toggles sending 4D information to geomview.
VERBOSE
Evolver toggle command.
Toggles printing of progress messages during surface modification
commands such as refine, delete, notch, edgeswap, o, O.
VOLGRADS_EVERY
Evolver toggle command.
Toggles recalculating volume constraint gradients every projection
step during constraint enforcement. Good for stiff problems.
YSMP
Evolver toggle command.
Toggles between Yale Sparse Matrix Package routines for factoring hessians,
and my own minimal degree factoring. Default is YSMP.
ZENER_DRAG
Evolver toggle command.
Toggles Zener drag feature, in which the velocity of the surface is
reduced by a magnitude given by the variable zener_coeff, and the
velocity is set to zero if it is smaller than zener_coeff.
Back to top of Surface Evolver documentation.