Go to the Next Chapter
Go to the Previous Chapter
Go to the Table of Contents for This Manual
Go to the Guides Master Index
Chapter 1 *
Chapter 2 *
Chapter 3 *
Chapter 4 *
Chapter 5 *
Chapter 6 *
Chapter 7 *
Chapter 8 *
Chapter 9 *
Chapter 10 *
Chapter 11 *
Chapter 12 *
Chapter 13 *
Chapter 14
5.1 An Overview of Solid Modeling Operations
The purpose of using a solid model is to relieve you of the time-consuming task of
building a complicated finite element model by direct generation. Let's take a brief
look at some of the solid modeling and meshing operations that you can use to
speed up the creation of your final analysis model:
Building your model from the bottom up: Keypoints, the points that define the
vertices of your model, are the "lowest-order" solid model entities. If, in building
your solid model, you first create your keypoints, and then use those keypoints to
define the "higher-order" solid model entities (that is, lines, areas, and volumes),
you are said to be building your model "from the bottom up." Keep in mind that
models built from the bottom up are defined within the currently active coordinate
system.
Figure 5-1 "Bottom up" construction
Building your model from the top down: The ANSYS program also gives you
the ability to assemble your model using geometric primitives, which are
fully-defined lines, areas, and volumes. As you create a primitive, the program
automatically creates all the "lower" entities associated with it. If your modeling
effort begins with the "higher" primitive entities, you are said to be building your
model "from the top down." You can freely combine bottom up and top down
modeling techniques, as appropriate, in any model. Remember that geometric
primitives are built within the working plane while bottom up techniques are
defined against the active coordinate system. If you are mixing techniques, you
may wish to consider using the CSYS,WP or
CSYS, 4 command to force the coordinate
system to follow the working plane.
Figure 5-2 "Top down" constructions (primitives)
Note-Solid modeling operations in a toroidal coordinate system are not
recommended. Areas or volumes generated may not be what you expect.
Using Boolean operators: You can "sculpt" your solid model using intersections,
subtractions, and other Boolean operations. Booleans allow you to work directly
with higher solid model entities to create complex shapes. (Both bottom up and
top down creations can be used in Boolean operations.)
Figure 5-3 Create complex shapes with Boolean operations
Dragging and rotating: Boolean operators, although convenient, can be
computationally expensive. Sometimes a model can be constructed more
efficiently by dragging, or rotating.
Figure 5-4 Dragging an area to create a volume [VDRAG]
Moving and copying solid model entities: A complicated area or volume that
appears repetitively in your model need only be constructed once; it can then be
moved, rotated, and copied to a new location on your model. You might also find
it more convenient to place geometric primitives in their proper location by moving
them, rather than by changing the working plane.
Figure 5-5 Copying an area
Meshing: Your ultimate objective in building a solid model is to mesh that model
with nodes and elements. Once you have completed the solid model, set element
attributes, and established meshing controls, you can then turn the ANSYS
program loose to generate the finite element mesh. By taking care to meet
certain requirements, you can request a "mapped" mesh containing all
quadrilateral, all triangular, or all brick elements.
Figure 5-6 Free and mapped meshes
Moving and copying nodes and elements: Automatic meshing is a huge
improvement over direct generation of nodes and elements, but it can sometimes
be computationally time consuming. If your model contains repetitive features,
you might find that the most efficient approach to model generation would be to
model and mesh a pattern region of your model, then generate copies of that
meshed region. (Copying a mesh in this manner will generally be faster than
separately meshing repeated features.)
Figure 5-7 Copying a meshed area
Solid model loads: In the ANSYS program, loads are normally associated with
nodes and elements. However, using solid modeling, you will often find it
inconvenient to define loads at nodes and elements. Fortunately, you may assign
loads directly to the solid model; when you initiate the solution calculations (with a
SOLVE command), the program will
automatically transfer these solid model loads to the finite element model.
Revising your model (clearing and deleting): Before you can revise your
model, you need to be aware of the hierarchy of solid model and finite element
model entities. A lower order entity cannot be deleted if it is attached to a
higher-order entity. Thus, a volume cannot be deleted if it has been meshed, a
line cannot be deleted if it is attached to an area, and so forth. If an entity is
attached to any loads, deleting or redefining that entity will delete the attached
loads from the database. The hierarchy of modeling entities is as listed below:
| Highest
|
Elements (and Element Loads)
|
|
|
Nodes (and Nodal Loads)
|
|
|
Volumes (and Solid-Model Body Loads)
|
|
|
Areas (and Solid-Model Surface Loads)
|
|
|
Lines (and Solid-Model Line Loads)
|
| Lowest
|
Keypoints (and Solid-Model Point Loads)
|
If you need to revise a solid model after it has been meshed, you must usually first
delete all the nodes and elements in the portion of the model to be revised, using
the xCLEAR commands (Main Menu>Preprocessor>Clear). Once the solid
model is cleared, you can delete (from the top down) and redefine solid model
entities to revise your model. As an alternative to clearing, deleting, and
redefining, you can sometimes consider modifying the keypoints directly, using
one of these methods:
Command(s):
GUI:
Main Menu>Preprocessor>Move / Modify>Set of KPs
Main Menu>Preprocessor>Move / Modify>Single KP
By using KMODIF, you automatically
clear and redefine the attached lines, areas, and volumes. After you have revised
your solid model, you will need to remesh the portions that were cleared.
Figure 5-8 Revising a meshed solid model
5.2 Creating Your Solid Model from the
Bottom Up
Any solid model, whether assembled from the bottom up or from the top down, is
defined in terms of keypoints, lines, areas, and volumes. Figure 5-9 illustrates
these entities.
Figure 5-9 Basic solid model entities
Keypoints are the vertices, lines are the edges, areas are the faces, and volumes
are the interior of the object. Notice that there is a hierarchy in these entities:
volumes, the highest-order entities, are bounded by areas, which are bounded by
lines, which in turn are bounded by keypoints.
Note-Solid modeling operations in a toroidal coordinate system are not
recommended. Areas or volumes generated may not be what you expect.
When building your model from the bottom up, you begin by defining the
lowest-order solid model entities, keypoints. Keypoints are defined within the
currently active coordinate system. You can then define lines, areas, and volumes
connecting these keypoints. You do not always have to explicitly define all entities
in ascending order to create higher-order entities: you can define areas and
volumes directly in terms of the keypoints at their vertices. The intermediate
entities will then be generated automatically as needed. For example, if you
define a brick-like volume in terms of the eight keypoints at its corners, the
program will automatically generate the bounding areas and lines.
5.2.1.1 Defining Keypoints
ANSYS provides various methods that you can use for defining keypoints,
including:
- To define individual keypoints:
Command(s):
GUI:
Main Menu>Preprocessor>Create>Keypoints>In Active CS
Main Menu>Preprocessor>Create>Keypoints>On Working Plane
- To define keypoints at a given location on an existing line:
Command(s):
GUI:
Main Menu>Preprocessor>Create>Keypoints>On Line
Main Menu>Preprocessor>Create>Keypoints>On Line w/Ratio
5.2.1.2 Generating Keypoints from Existing Keypoints
Once you have created an initial pattern of keypoints, you can generate additional
keypoints using the methods listed below. (Many of the Boolean commands will
also create keypoints.)
- To create a keypoint between two existing keypoints:
Command(s):
GUI:
Main Menu>Preprocessor>Create>Keypoints>KP between KPs
- To generate keypoints between two keypoints:
Command(s):
GUI:
Main Menu>Preprocessor>Create>Keypoints>Fill between KPs
- To create a keypoint at the center of a circular arc defined by three
locations:
Command(s):
GUI:
Main Menu>Preprocessor>Create>Keypoints>KP at Center
- To generate additional keypoints from a pattern of keypoints:
Command(s):
GUI:
Main Menu>Preprocessor>Copy>Keypoints
- To generate a scaled pattern of keypoints from a given keypoint pattern,
use the KSCALE command. You
cannot access the KSCALE
command directly in the GUI.
- To generate a reflected set of keypoints:
Command(s):
GUI:
Main Menu>Preprocessor>Reflect>Keypoints
- To transfer a pattern of keypoints to another coordinate system:
Command(s):
GUI:
Main Menu>Preprocessor>Move / Modify>Transfer Coord>Keypoints
- To define a default location for undefined nodes or keypoints, use the SOURCE command. You cannot
access the SOURCE command
directly in the GUI.
- To calculate and move a keypoint to an intersection:
Command(s):
GUI:
Main Menu>Preprocessor>Move / Modify>To Intersect
- To define a keypoint at an existing node location:
Command(s):
GUI:
Main Menu>Preprocessor>Create>Keypoints>On Node
5.2.1.3 Viewing, Selecting, and Deleting Keypoints
You can maintain keypoints using the methods listed below:
- To list defined keypoints:
Command(s):
GUI:
Utility Menu>List>Keypoints>Coordinates +Attributes
Utility Menu>List>Keypoints>Coordinates only
Utility Menu>List>Keypoints>Hard Points
Utility Menu>List>Picked Entities>Keypoints>Coordinates Only
Utility Menu>List>Picked Entities>Keypoints>Coords +Attributes
- To display selected keypoints:
Command(s):
GUI:
Utility Menu>Plot>Keypoints
Utility Menu>Plot>Specified Entities>Keypoints
Command(s):
GUI:
Utility Menu>Select>Entities
- To delete unmeshed keypoints:
Command(s):
GUI:
Main Menu>Preprocessor>Delete>Keypoints
If you have issued the command /PNUM,KP,1 (Utility Menu>PlotCtrls>
Numbering), keypoint numbers will also appear in line, area, and volume displays
[LPLOT, APLOT, and VPLOT] for keypoints attached to these
higher-order entities.
5.2.1.4 Using Miscellaneous Keypoint Commands
ANSYS also provides these methods for working with keypoints:
- To calculate the distance between two keypoints:
Command(s):
GUI:
Main Menu>Preprocessor>-Modeling-Check Geom>KP distances
- To modify the coordinates defining a keypoint (that is, move a keypoint to a
new location), use one of the methods shown below. Doing so will
automatically clear any meshed region attached to the specified keypoint,
and will also redefine the higher-order entities attached to that keypoint. (A
keypoint can also be redefined using the K
command, but only if it is still "free"; that is, not yet attached to a line, nor
meshed.)
Command(s):
GUI:
Main Menu>Preprocessor>Move / Modify>Set of KPs
Main Menu>Preprocessor>Move / Modify>Single KP
5.2.2 Hard Points
Hard points are actually a special type of keypoints. You can use hard points to
apply loads or obtain data from arbitrary points on lines and areas within your
model. Hard points do not modify either the geometry or topology of your model.
Most of the keypoint commands, such as FK,
KLIST, and KSEL, can be applied to hard points. In
addition, hard points have their own set of commands and extension in the GUI.
If you issue any commands that update the geometry of an entity, such as
Boolean or simplification commands, any hard points associated with that entity
are deleted. Therefore, you should add any hard points after completing the solid
model. If you delete an entity that has associated hard points, those hard points
are either
- Deleted along with the entity (if the hard point is not associated with any
other entities).
- Detached from the deleted entity (if the hard point is associated with
additional entities).
Note-You cannot manipulate hard points with commands to copy, move, modify,
or modify keypoints. Hard points have their own suite of commands and GUI
controls.
Note-Mapped meshing is not supported when hard points are used.
5.2.2.1 Defining Hard Points
You can define hard points on existing lines or areas. In both cases, you can
define the location of hard points on such entities by
- Picking (unavailable for models imported from IGES files).
- Specifying ratios (available for lines only).
- Specifying global X,Y, and Z coordinates.
Use the following methods to create hard points:
- To define individual hard points on an existing line:
Command(s):
GUI:
Main Menu>Preprocessor>Create>Keypoints>Hard PT on Line>
Hard PT by ratio
Main Menu>Preprocessor>Create>Keypoints>Hard PT on Line>
Hard PT by coord
Main Menu>Preprocessor>Create>Keypoints>Hard PT on Line>
Hard PT by picki
- To define individual hard points on an existing area:
Command(s):
GUI:
Main Menu>Preprocessor>Create>Keypoints>Hard PT on area>
Hard PT by ratio
Main Menu>Preprocessor>Create>Keypoints>Hard PT on area>
Hard PT by coord
Main Menu>Preprocessor>Create>Keypoints>Hard PT on area>
Hard PT by picki
5.2.2.2 Selecting Hard Points
You can select hard points or geometric entities with associated hard points using
any of these methods:
Command(s):
GUI:
Utility Menu>Select>Entities
Note-In the Select Entities dialog box, choose both Keypoints and By Hard
Points.
- To select lines with associated hard points:
Command(s):
GUI:
Utility Menu>Select>Entities
Note-In the Select Entities dialog box, choose both Lines and By Hard Points.
- To select areas with associated hard points:
Command(s):
GUI:
Utility Menu>Select>Entities
Note-In the Select Entities dialog box, choose both Areas and By Hard Points.
5.2.2.3 Viewing and Deleting Hard Points
You can maintain hard points using any of these methods:
Command(s):
GUI:
Utility Menu>List>Keypoints>Hard Points
- To list lines with associated hard points:
Command(s):
GUI:
No corresponding GUI is available
- To list areas with associated hard points:
Command(s):
GUI:
No corresponding GUI is available
Command(s):
GUI:
Utility Menu>Plot>Keypoints>Hard Points
Command(s):
GUI:
Main Menu>Preprocessor>Delete>Keypoints>Hard Points
Lines are mainly used to represent the edges of an object. As with keypoints,
lines are defined within the currently active coordinate system. You do not always
need to define all lines explicitly, because the program will generate the necessary
lines in many instances when an area or volume is defined. Lines are required if
you wish to generate line elements (such as beams) or if you wish to create areas
from lines.
5.2.3.1 Defining Lines
For those situations where you have decided to define a line explicitly, you can
use any of the following methods, as appropriate:
- To generate either a "straight" or cubic line between two specified
keypoints:
Command(s):
GUI:
Main Menu>Preprocessor>Create>Lines>In Active Coord
- To generate a circular line through three keypoints (or between two
keypoints, if you specify a radius):
Command(s):
GUI:
Main Menu>Preprocessor>Create>Arcs>By End KPs & Rad
Main Menu>Preprocessor>Create>Arcs>Through 3 KPs
- To generate a cubic line from a spline fit to a series of keypoints:
Command(s):
GUI:
Main Menu>Preprocessor>Create>Splines>Spline thru KPs
Main Menu>Preprocessor>Create>Splines>Spline thru Locs
Main Menu>Preprocessor>Create>Splines>With Options>
Spline thru KPs
Main Menu>Preprocessor>Create>Splines>With Options>
Spline thru Locs
- To generate circular arc lines:
Command(s):
GUI:
Main Menu>Preprocessor>Create>Arcs>By Cent & Radius
Main Menu>Preprocessor>Create>Arcs>Full Circle
- To generate a segmented spline through a series of keypoints:
Command(s):
GUI:
Main Menu>Preprocessor>Create>Splines>Segmented Spline
Main Menu>Preprocessor>Create>Splines>With Options>Segmented
Spline
- To generate a straight line at an angle with a line:
Command(s):
GUI:
Main Menu>Preprocessor>Create>Lines>At Angle to Line
Main Menu>Preprocessor>Create>Lines>Normal to Line
- To generate a line at an angle with two existing lines:
Command(s):
GUI:
Main Menu>Preprocessor>Create>Lines>Angle to 2 Lines
Main Menu>Preprocessor>Create>Lines>Norm to 2 Lines
- To generate a line at the end of, and tangent to, an existing line:
Command(s):
GUI:
Main Menu>Preprocessor>Create>Lines>Tangent to Line
- To generate a line tangent to two lines:
Command(s):
GUI:
Main Menu>Preprocessor>Create>Lines>Tan to 2 Lines
- To generate the shortest line between two keypoints on an area:
Command(s):
GUI:
Main Menu>Preprocessor>Create>Lines>Overlaid on Area
- To generate lines by sweeping a keypoint pattern along a path:
Command(s):
GUI:
Main Menu>Preprocessor>Operate>Extrude / Sweep>Along Lines
- To generate circular lines by rotating a keypoint pattern about an axis:
Command(s):
GUI:
Main Menu>Preprocessor>Operate>Extrude / Sweep>About Axis
- To generate a fillet line between two intersecting lines:
Command(s):
GUI:
Main Menu>Preprocessor>Create>Line Fillet
For those commands that create a "straight" line, the actual shape of the line will
be determined by the active coordinate system. Thus, for a "straight" line in a
Cartesian coordinate system, dX/dL, dY/dL, and dZ/dL will each be constant along
the length (L) of that line, producing a line that is truly straight. For a "straight" line
in a cylindrical coordinate system, dR/dL, d
/dL, and dZ/dL will each be constant,
producing a line that could be a helical spiral (if all three components of slope
were non-zero).
- To produce a truly straight line no matter what coordinate system is active,
use one of these methods:
Command(s):
GUI:
Main Menu>Preprocessor>Create>Lines>Straight Line
5.2.3.2 Generating Lines from Existing Lines
A pattern of lines may be copied to generate additional lines, using any of the
following methods, as appropriate:
- To generate additional lines from a pattern of lines:
Command(s):
GUI:
Main Menu>Preprocessor>Copy>Lines
Main Menu>Preprocessor>Move / Modify>Lines
- To generate lines from a line pattern by symmetry reflection:
Command(s):
GUI:
Main Menu>Preprocessor>Reflect>Lines
- To transfer a pattern of lines to another coordinate system:
Command(s):
GUI:
Main Menu>Preprocessor>Move / Modify>Transfer Coord>Lines
5.2.3.3 Modifying Lines
You can modify a line by redefining it (that is, by reissuing L), or by using any of these methods:
- To divide up a line into smaller lines:
Command(s):
GUI:
Main Menu>Preprocessor>Operate>Divide>Line into 2 Ln's
Main Menu>Preprocessor>Operate>Divide>Line into N Ln's
Main Menu>Preprocessor>Operate>Divide>Lines w/ Options
- To combine a line with a second line:
Command(s):
GUI:
Main Menu>Preprocessor>Operate>Add>Lines
- To extend a line at one end:
Command(s):
GUI:
Main Menu>Preprocessor>Operate>Extend Line
5.2.3.4 Viewing and Deleting Lines
You can view and delete lines using these methods:
Command(s):
GUI:
Utility Menu>List>Lines
Utility Menu>List>Picked Entities>Lines
Command(s):
GUI:
Utility Menu>Plot>Lines
Utility Menu>Plot>Specified Entities>Lines
Command(s):
GUI:
Utility Menu>Select>Entities
Command(s):
GUI:
Main Menu>Preprocessor>Delete>Line and Below
Main Menu>Preprocessor>Delete>Lines Only
If you have issued the command /PNUM,Line,1 (Utility Menu>PlotCtrls>
Numbering), line numbers will also appear in area and volume displays [APLOT and VPLOT] for lines that are attached to these
higher-order entities.
5.2.3.5 Notes on Lines
Keep this information in mind when working with lines:
- Only unmeshed lines that are not attached to an area can be redefined,
modified, or deleted. (LDIV, LCOMB, and LFILLT provide exceptions to this rule.
You can use these three commands to modify unmeshed lines, even if they
are attached to areas. The attached areas will be updated, even if they are
attached to volumes.)
- Several geometric primitives and Boolean commands can also be used to
generate or modify lines.
Flat areas are used to represent 2-D solid objects (such as flat plates or
axisymmetric solids). Curved as well as flat areas are used to represent 3-D
surfaces, such as shells, and the faces of 3-D solid objects. Areas are required if
you wish to use area elements or if you wish to create volumes from areas. Most
commands that create areas will also automatically generate the necessary lines
and keypoints; similarly, many areas can be conveniently generated by defining
volumes.
5.2.4.1 Defining Areas
To define an area explicitly, you can use any of the following commands, as
appropriate:
- To define an area in terms of its vertices (that is, through keypoints):
Command(s):
GUI:
Main Menu>Preprocessor>Create>Arbitrary>Through KPs
- To define an area in terms of its boundaries (that is, in terms of a set of
lines defining the perimeter):
Command(s):
GUI:
Main Menu>Preprocessor>Create>Arbitrary>By Lines
- To generate an area by "sweeping" a line along a characteristic path:
Command(s):
GUI:
Main Menu>Preprocessor>Operate>Extrude / Sweep>Along Lines
- To generate an area by rotating a line pattern about an axis:
Command(s):
GUI:
Main Menu>Preprocessor>Operate>Extrude / Sweep>About Axis
- To generate a fillet at the intersection of two areas:
Command(s):
GUI:
Main Menu>Preprocessor>Create>Area Fillet
You might experience difficulties due to the underlying Boolean operations used
by this command. You may wish to use rotate or extrude operations (VROTAT or VEXT) to perform the same operations. See
Section 5.10.2 for additional information.
- To generate an area by "skinning" a surface through guiding line:
Command(s):
GUI:
Main Menu>Preprocessor>Create>Arbitrary>By Skinning
- To generate an area by offsetting an existing area (similar to what happens
when a balloon is inflated or deflated):
Command(s):
GUI:
Main Menu>Preprocessor>Create>Arbitrary>By Offset
You might experience difficulties if you attempt to "deflate" an area by a
distance that equals or exceeds its least radius of curvature. Using this
process will not generate a new surface when such problems arise (you will
receive a warning if the process fails).
See Figure 5-10 for examples of the operations you can perform with the AROTAT, ADRAG, AFILLT, ASKIN, and AOFFST commands.
Figure 5-10 AROTAT, ADRAG, AFILLT, ASKIN, and AOFFST operations
5.2.4.2 Generating Areas from Existing Areas
Existing areas can be copied to generate additional areas using any of the
methods described below:
- To generate additional areas from a pattern of areas:
Command(s):
GUI:
Main Menu>Preprocessor>Copy>Areas
Main Menu>Preprocessor>Move / Modify>Areas
- To generate areas from an area pattern by symmetry reflection:
Command(s):
GUI:
Main Menu>Preprocessor>Reflect>Areas
- To transfer a pattern of areas to another coordinate system:
Command(s):
GUI:
Main Menu>Preprocessor>Move / Modify>Transfer Coord>Areas
- To copy a portion of an area:
Command(s):
GUI:
Main Menu>Preprocessor>Create>Arbitrary>Overlaid on Area
5.2.4.3 Viewing, Selecting, and Deleting Areas
You can maintain areas using any of these methods:
Command(s):
GUI:
Utility Menu>List>Areas
Utility Menu>List>Picked Entities>Areas
Command(s):
GUI:
Utility Menu>Plot>Areas
Utility Menu>Plot>Specified Entities>Areas
Command(s):
GUI:
Utility Menu>Select>Entities
- To delete unmeshed areas:
Command(s):
GUI:
Main Menu>Preprocessor>Delete>Area and Below
Main Menu>Preprocessor>Delete>Areas Only
If you have issued the command /PNUM,AREA,1 (Utility Menu>PlotCtrls>
Numbering), area numbers will also appear in volume displays [VPLOT] for areas that are attached to
volumes.
Two features of an area listing [ALIST]
require some explanation. The area (topographical measure) of an area (solid
model entity) will be included in an ALIST
only if you previously executed ASUM (Main
Menu>Preprocessor> Operate>Calc Geom Items). Also, the "loop" numbers
shown refer to the closed strings of lines that define the boundaries of an area, as
illustrated in the figure below.
Figure 5-11 Loops bound an area
NO.LOOP LINES AREA #NODES #ELEM MAT REAL TYP ESYS
1 1 1 2 3 4 N/A 0 0 0 0 0 0
2 12 13 11
3 5 10 9 8
7 6
5.2.4.4 Notes on Areas
Keep this information in mind when working with areas:
- Only unmeshed areas that are not attached to a volume can be redefined
or deleted.
- Several geometric primitives and Boolean commands can also be used to
generate or modify areas.
Volumes are used to represent 3-D objects, and are required only if you wish to
use volume elements. Most commands that create volumes will also
automatically generate the necessary lower-order entities.
5.2.5.1 Defining Volumes
Use any of the following methods to define volumes:
- To define a volume in terms of its vertices (that is, through keypoints):
Command(s):
GUI:
Main Menu>Preprocessor>Create>Arbitrary>Through KPs
- To define a volume in terms of its boundaries (that is, in terms of a set of
areas defining the surfaces):
Command(s):
GUI:
Main Menu>Preprocessor>Create>Arbitrary>By Areas
- To generate volumes by "sweeping" an area pattern along a characteristic
path:
Command(s):
GUI:
Main Menu>Preprocessor>Operate>Extrude / Sweep>Along Lines
- To generate volumes by rotating an area pattern about an axis:
Command(s):
GUI:
Main Menu>Preprocessor>Operate>Extrude / Sweep>About Axis
- To generate a volume by offsetting an area in the area's positive normal
direction (see Figure 5-12):
Command(s):
GUI:
Main Menu>Preprocessor>Operate>Extrude / Sweep>Along Normal
- To generate volumes by extruding and scaling a pattern of areas in the
active coordinate system (see Figure 5-12):
Command(s):
GUI:
Main Menu>Preprocessor>Operate>Extrude / Sweep>By XYZ Offset
Figure 5-12 VOFFST and VEXT operations
5.2.5.2 Hints on Extruding Volumes
Keep this information in mind when extruding volumes:
- If the area that is being extruded (used as the pattern for the resulting
volume) with the VROTAT, VEXT, VOFFST, or VDRAG command is meshed (or
belongs to a meshed volume), that mesh will be used as a pattern for the
mesh of the volume that is created (see Figure 5-13). (Compare these
commands to the VSWEEP
command, which is described in Section 5.2.5.3.)
If you are interested in extruding your mesh, follow these steps:
1. Mesh the area that is to be extruded, dragged, offset, or rotated (using
shell elements).
2. Select an appropriate 3-D element type [ET] (match the shape and number of
nodes to the shell element). Activate the selection [TYPE].
3. Specify the desired number of element divisions in the extruded,
rotated, or offset direction (NDIV argument on ESIZE command). If using VDRAG, specify the number of
element divisions on the drag path line(s) (LESIZE or ESIZE,,NDIV).
- Concatenated areas [ACCAT] or
areas that have concatenated lines [LCCAT] cannot be extruded. You can
get around the concatenated line limitation by first meshing the area(s),
then deleting the concatenated lines, and finally extruding the area(s) into
meshed volume(s).
- If element attributes have been associated with the pattern area via the AATT command, the opposite area
generated by the VDRAG, VEXT, VOFFST, or VROTAT operation will also have those
attributes (i.e., the element attributes from the pattern area are copied to
the opposite area). Note that only the area opposite the pattern area will
have the same attributes as the pattern area; the areas adjacent to the
pattern area will not.
- Use the following command to make the generation of meshed volumes
from 2-D models easier:
Command(s):
GUI:
Main Menu>Preprocessor>-Modeling-Operate>Extrude / Sweep>Elem
Ext Opts
Main Menu>Preprocessor>-Meshing-Mesh>-Volume Sweep-Sweep
Opts
EXTOPT controls options relating
to the generation of volume elements from area elements using the VEXT, VROTAT, VOFFST, VDRAG, and VSWEEP commands. It enables
carry-over of material attributes, real constant attributes, and element
coordinate system attributes of the pattern area elements to the created
volume elements (except for VSWEEP as noted below).
The EXTOPT control options
include the following:
- When using VEXT, VROTAT, VOFFST, or VDRAG, you can set controls to
carry-over material attributes, real constant attributes, and element
coordinate attributes of the pattern area elements to the meshed volume
elements. (When using VSWEEP, since the volume
already exists, use the VATT
command to assign attributes before sweeping.)
- When using VEXT, VROTAT, VOFFST, or VDRAG, you can set controls to
carry-over particular attributes (materials, real constants or element
coordinate systems) of the pattern area elements to the generated
volume elements or you can set controls to use particular attributes
(material, real constants or element coordinate systems) of the current
MAT, REAL, and ESYS command settings for the
generated volume elements.
- You can set controls to set the number of element divisions and spacing
ratio in the direction of volume generation.
- When using VEXT, VROTAT, VOFFST, or VDRAG, you can set controls to
clear the pattern area mesh when volume generations are done. (When
you are using VSWEEP, if
selected, the area meshes on the pattern (source), target, and/or side
areas clear when volume sweeping is done.)
The carry-over of the attributes of the pattern area elements saves you
time that would otherwise be required to prepare the 3-D model extrusion
of multiple areas with differing attributes.
Figure 5-13 Extruding (and scaling) meshed areas into meshed volumes
5.2.5.3 Sweeping Volumes
To fill an existing unmeshed volume with elements by sweeping the mesh from an
adjacent area throughout the volume:
Command(s):
GUI:
Main Menu>Preprocessor>-Meshing-Mesh>-Volume Sweep-Sweep
When you use the VROTAT, VEXT, VOFFST, and VDRAG commands to extrude a meshed area
into a meshed volume, ANSYS creates the volume and the volume mesh
simultaneously. In contrast, you use the VSWEEP command in an existing unmeshed
volume. Thus VSWEEP is particularly
useful when you are importing a solid model that was created in a CAD program.
For detailed information about volume sweeping, see Section 7.5.5 of this
manual, as well as the description of the VSWEEP command in the ANSYS Commands Reference.
5.2.5.4 Generating Volumes from Existing Volumes
To generate additional volumes from existing volumes, use any of the methods
described below.
- To generate additional volumes from a pattern of volumes:
Command(s):
GUI:
Main Menu>Preprocessor>Copy>Volumes
Main Menu>Preprocessor>Move / Modify>Volumes
- To generate volumes from a volume pattern by symmetry reflection:
Command(s):
GUI:
Main Menu>Preprocessor>Reflect>Volumes
- To transfer a pattern of volumes to another coordinate system:
Command(s):
GUI:
Main Menu>Preprocessor>Move / Modify>Transfer Coord>Volumes
5.2.5.5 Viewing and Deleting Volumes
To view and delete volumes:
Command(s):
GUI:
Utility Menu>List>Picked Entities>Volumes
Utility Menu>List>Volumes
Command(s):
GUI:
Utility Menu>Plot>Specified Entities>Volumes
Utility Menu>Plot>Volumes
Command(s):
GUI:
Utility Menu>Select>Entities
Command(s):
GUI:
Main Menu>Preprocessor>Delete>Volume and Below
Main Menu>Preprocessor>Delete>Volumes Only
A volume listing indicates that the volumes are composed of a number of shells.
A shell is the volumetric equivalent of a loop-a set of entities that define a
continuous closed boundary.
5.2.5.6 Notes on Volumes
Keep this information in mind when working with volumes:
- Only unmeshed volumes can be redefined or deleted.
- Several geometric primitives and Boolean commands can also be used to
generate or modify volumes.
5.2.6 Drag Operations
For best results when using drag operations (LDRAG, ADRAG or VDRAG), minimize the distance (shown as
distance "d" in Figure 5-14) from the drag path plane to the entities to be dragged.
Also the entity plane should be as close to parallel to the drag path plane as
possible. Both of these guidelines can be met if the entities to be dragged are in
the drag path plane. The drag path plane is automatically defined to be
orthogonal to and located at the start of the drag path.
Figure 5-14 Drag operation suggestions
5.3 Creating Your Solid Model from the Top
Down: Primitives
5.3.1 What Is a Primitive?
A geometric primitive is a commonly used solid modeling shape (such as a sphere
or regular prism) that can be created with a single ANSYS command.
Because primitives are higher-order entities that can be constructed without first
defining any keypoints, model generation that uses primitives is sometimes
referred to as "top down" modeling. (When you create a primitive, the program
automatically creates all the necessary lower-order entities, including keypoints.)
Geometric primitives are created within the working plane.
5.3.2 How to Create Area Primitives
You can define area primitives on the working plane using the commands and GUI
paths described in this section.
5.3.2.1 Creating a Rectangle
Use any of these methods to create a rectangle:
- To create a rectangular area anywhere on the working plane:
Command(s):
GUI:
Main Menu>Preprocessor>Create>Rectangle>By Dimensions
- To create a rectangular area by corner points:
Command(s):
GUI:
Main Menu>Preprocessor>Create>Rectangle>By 2 Corners
- To create a rectangular area by center and corner points:
Command(s):
GUI:
Main Menu>Preprocessor>Create>Rectangle>By Centr & Cornr
5.3.2.2 Creating a Circle or Circular Segment
Use any of these methods to create a circle or circular segment:
- To create a circular area centered about the working plane origin:
Command(s):
GUI:
Main Menu>Preprocessor>Create>Circle>By Dimensions
- To create a circular area anywhere on the working plane:
Command(s):
GUI:
Main Menu>Preprocessor>Create>Circle>Annulus
Main Menu>Preprocessor>Create>Circle>Partial Annulus
Main Menu>Preprocessor>Create>Circle>Solid Circle
- To create a circular area by end points:
Command(s):
GUI:
Main Menu>Preprocessor>Create>Circle>By End Points
5.3.2.3 Creating a Regular Polygon
Use any of these methods to create a regular polygon:
- To create a regular polygonal area centered about the working plane origin:
Command(s):
GUI:
Main Menu>Preprocessor>Create>Polygon>By Circumscr Rad
Main Menu>Preprocessor>Create>Polygon>By Inscribed Rad
Main Menu>Preprocessor>Create>Polygon>By Side Length
- To create a regular polygonal area anywhere on the working plane:
Command(s):
GUI:
Main Menu>Preprocessor>Create>Polygon>Hexagon
Main Menu>Preprocessor>Create>Polygon>Octagon
Main Menu>Preprocessor>Create>Polygon>Pentagon
Main Menu>Preprocessor>Create>Polygon>Septagon
Main Menu>Preprocessor>Create>Polygon>Square
Main Menu>Preprocessor>Create>Polygon>Triangle
In addition to the regular polygons described above, you can create an arbitrary
polygonal area based on working plane coordinate pairs, using the POLY command. The POLY command must be preceded by PTXY commands. (You cannot access the POLY command directly in the GUI.)
5.3.2.4 Notes on Area Primitives
Keep this information in mind when working with area primitives:
- The areas created by the commands and GUI paths described above will
lie flat on the working plane and will be oriented according to the working
plane coordinate system. Area primitives must have surface areas greater
than zero (that is, you cannot create a degenerate area as a means of
defining a line).
- The interface between two touching primitives will create a seam of
discontinuity in the finite element model, unless you take steps to "weld"
that seam shut, using commands such as NUMMRG, AADD, or AGLUE.
- When you define an arc segment of a circular geometric primitive (PCIRC and CYL4 discussed above, or CONE, CYLIND, SPHERE, and TORUS discussed in the next section
on volume primitives) the arc sector begins at the algebraically smaller
angle, extends in a positive angular direction, and ends at the larger angle.
(The input order of THETA1, THETA2 on these commands does not define
the starting and ending angles of the arc sector.) The following figure
illustrates how these commands work:
Figure 5-15 Arc sectors of circular geometric primitives
5.3.3 How to Create Volume Primitives
You can define volume primitives using the commands described in this section.
5.3.3.1 Creating a Square-cornered Brick
Use any of these methods to create a square-cornered brick:
- To create a block volume based on working plane coordinates:
Command(s):
GUI:
Main Menu>Preprocessor>Create>Block>By Dimensions
- To create a block volume by corner points:
Command(s):
GUI:
Main Menu>Preprocessor>Create>Block>By 2 Corners & Z
- To create a block volume by center and corner points:
Command(s):
GUI:
Main Menu>Preprocessor>Create>Block>By Centr,Cornr,Z
5.3.3.2 Creating a Cylindrical Volume
Use any of these methods to create a right prismatic volume with circles or
circular segments for its ends (i.e., a cylinder):
- To create a cylindrical volume centered about the working plane origin:
Command(s):
GUI:
Main Menu>Preprocessor>Create>Cylinder>By Dimensions
- To create a cylindrical volume anywhere on the working plane:
Command(s):
GUI:
Main Menu>Preprocessor>Create>Cylinder>Hollow Cylinder
Main Menu>Preprocessor>Create>Cylinder>Partial Cylinder
Main Menu>Preprocessor>Create>Cylinder>Solid Cylinder
- To create a cylindrical volume by end points:
Command(s):
GUI:
Main Menu>Preprocessor>Create>Cylinder>By End Pts & Z
5.3.3.3 Creating a Prism Volume
Use any of these methods to create a right regular prismatic volume:
- To create a regular prism volume centered about the working plane origin:
Command(s):
GUI:
Main Menu>Preprocessor>Create>Prism>By Circumscr Rad
Main Menu>Preprocessor>Create>Prism>By Inscribed Rad
Main Menu>Preprocessor>Create>Prism>By Side Length
- To create a prism volume anywhere on the working plane:
Command(s):
GUI:
Main Menu>Preprocessor>Create>Prism>Hexagonal
Main Menu>Preprocessor>Create>Prism>Octagonal
Main Menu>Preprocessor>Create>Prism>Pentagonal
Main Menu>Preprocessor>Create>Prism>Septagonal
Main Menu>Preprocessor>Create>Prism>Square
Main Menu>Preprocessor>Create>Prism>Triangular
To create an arbitrary prism volume based on working plane coordinate pairs, use
the PRISM command. The PRISM command must be preceded by PTXY commands. (You cannot access the PRISM command directly in the GUI.)
5.3.3.4 Creating a Sphere or Spherical Segment
Use any of these methods to create a sphere or spherical segment:
- To create a spherical volume centered about the working plane origin:
Command(s):
GUI:
Main Menu>Preprocessor>Create>Sphere>By Dimensions
- To create a spherical volume anywhere on the working plane:
Command(s):
GUI:
Main Menu>Preprocessor>Create>Sphere>Hollow Sphere
Main Menu>Preprocessor>Create>Sphere>Solid Sphere
- To create a spherical volume by diameter end points:
Command(s):
GUI:
Main Menu>Preprocessor>Create>Sphere>By End Points
5.3.3.5 Creating a Cone or Truncated Cone
Use any of these methods to create a cone or truncated cone:
- To create a conical volume centered about the working plane origin:
Command(s):
GUI:
Main Menu>Preprocessor>Create>Cone>By Dimensions
- To create a conical volume anywhere on the working plane:
Command(s):
GUI:
Main Menu>Preprocessor>Create>Cone>By Picking
5.3.3.6 Creating a Torus or Toroidal Sector
To create a toroidal volume:
Command(s):
GUI:
Main Menu>Preprocessor>Create>Torus
You can use the TORUS,RAD1,RAD2,RAD3,THETA1,THETA2
command to create either a torus or a toroidal sector.
- To create a torus, you do not need to specify values for THETA1 or
THETA2. You must specify three values to define the radii of the torus
(RAD1, RAD2, and RAD3). You can specify the radii in any order. The
smallest of the values is the inner minor radius, the intermediate value is
the outer minor radius, and the largest value is the major radius. (There is
one exception regarding the order of the radii values-if you want to create
a solid torus, specify zero or blank for the inner minor radius, in which case
the zero or blank must occupy either the RAD1 or RAD2 position.) At least
two of the values that you specify must be positive values; they will be used
to define the outer minor radius and the major radius.
To create the torus shown in Figure 5-16, the command TORUS,5,1,2 was issued. Due to the
sizes of the specified radii values relative to one another, 5, 1, and 2 were
used to define the major radius, inner minor radius, and outer minor radius
of the torus, respectively. Since no values for THETA1 and THETA2 were
specified, the default values of 0 and 360 were used as the starting and
ending angles of the torus. (See Figure 5-17 for a view of a toroidal sector
showing all radii.)
- To create the toroidal sector shown in Figure 5-17, the command TORUS,5,1,2,0,180 was issued; where
5, 1, and 2 are the major radius, inner minor radius, and outer minor radius
of the torus; and 0 and 180 are the starting and ending angles of the torus.
See the description of the TORUS
command in the ANSYS Commands Reference
for additional details.
Figure 5-16 Torus primitive
Figure 5-17 Toroidal sector
5.3.3.7 Notes on Volume Primitives
Keep this information in mind when working with volume primitives:
- These volumes are positioned relative to the working plane as outlined in
their command descriptions. (The sense of
as used in these descriptions
is shown in Figure 5-16 above.)
- The interface between two touching primitives will create a seam of
discontinuity in the finite element model, unless you take steps to "weld"
that seam shut, using commands such as NUMMRG, VGLUE, or VADD.
5.4 "Sculpting" Your Model with Boolean
Operations
Boolean algebra provides a means for combining sets of data, using such logical
operators as intersect, union, subtract, etc. The ANSYS program allows you to
apply these same Boolean operators to your solid model, so that you can modify
your solid model constructions more easily.
You can apply Boolean operations to almost any solid model construction,
whether it was created from the top down or from the bottom up. The only
exceptions are that Boolean operations are not valid for entities created by
concatenation (see Section 7.1) and that some Boolean operations cannot
always be performed on entities that contain degeneracies. (See Section 5.8
called "Solid Model Loads" later in this chapter.)
Also, all solid-model loads and element attributes should be defined after you
complete your Boolean operations. If you are using Booleans to modify an
existing model, you should take care to redefine your element attributes and
solid-model loads.
The upcoming sections discuss the numerous ways in which you can use Boolean
operations to modify your model. As you review these sections, keep in mind that
you can use either of these methods to specify Boolean operation options:
Command(s):
GUI:
Main Menu>Preprocessor>Operate>Settings
5.4.1 To Keep, or Not to Keep ...
When you perform a Boolean operation on two (or more) entities, you are faced
with the decision of whether or not you want to keep the original entities. You can
control this action with the KEEP label of the BOPTN,Lab,Value command, as illustrated
schematically in Figure 5-18:
Figure 5-18 Boolean Keep options
Boolean operations on lower-order entities that are attached to higher-order
entities are generally permitted.
Boolean operations cannot be performed on meshed entities. You must clear the
mesh from the entity before performing the Boolean operation.
5.4.2 Other Useful BOPTN Settings
The label NWARN on the BOPTN
command allows you to control warning messages. A value of "0" will result in a
warning message if a Boolean operation has no effect. A value of "1" will
suppress all warning or error messages if a Boolean operation has no effect. A
value of "-1" will allow error messages if a Boolean operation has no effect. The
default value of this label is "0".
The VERSION label can be used to control which numbering scheme ANSYS will
use to number the entities produced by Boolean operations. By default, ANSYS
will number entities using the Revision 5.2 numbering scheme, but you can force
ANSYS to use the Revision 5.1 numbering scheme instead. Normally, you will
want to use the default numbering scheme when running Revision 5.2 or Revision
5.3. However, if you are reading input that was created at Revision 5.1, you
should activate Revision 5.1 numbering [BOPTN,VERSION,RV51] before reading in
the file [/INPUT] so that the input will run
properly.
Note-A command input stream created at Revision 5.1 may produce different
entity numbering at Revision 5.2 or Revision 5.3 unless the Revision 5.1
numbering scheme is specified [BOPTN,VERSION,RV51].
The label DEFA will reset all BOPTN
settings to default values. The label STAT lists the status of present settings.
5.4.3 Entity Numbering After Boolean Operations
The numbering scheme assigns numbers to Boolean output entities based on
information relating to their topology and geometry. The topology information
used for an area, for example, includes the number of loops it is defined by, the
number of lines (that is, 3-sided area, 4-sided area, etc.) making up the area, the
line numbers of any original lines (lines existing before the Boolean operation) in
the area, keypoint numbers of any original keypoints, etc. The geometry
information used for an area consists of the coordinates of its centroid, endpoints,
and other "control points" relative to some arbitrary reference coordinate system.
"Control points" are defined by the NURBS used to parametrically describe your
model. The numbering scheme first assigns numbers (beginning with the next
available number) to those output entities that can be uniquely identified by their
topology. Any remaining entities are then assigned numbers based on their
geometry. Unfortunately, entity numbering based on geometry may not be
consistent across design optimization loops, especially if the geometry changes
from loop to loop. Therefore, when geometry-based entity numbering occurs, the
program issues the following warning message:

*** WARNING ***
Entity numbers from the Boolean operation were assigned based on geometry. If you are
planning to do optimization, (or input looping), do not rely on the entity numbers for
loads, etc. To suppress this warning, issue "BOPT,NWARN,0".

An intersection defines a new set of entities which is common to every original
entity included in the operation. In other words, an intersection represents the
region of overlap of two or more entities. The new set can be of the same or
lower dimension as the original entities. For instance, the intersection of two lines
can be a keypoint (or a set of keypoints), or it can be a line (or set of lines). The
Boolean intersect commands are as follows:
- To create the intersection of lines:
Command(s):
GUI:
Main Menu>Preprocessor>Operate>Intersect>-Common-Lines
- To create the intersection of areas:
Command(s):
GUI:
Main Menu>Preprocessor>Operate>Intersect>-Common-Areas
- To create the intersection of volumes:
Command(s):
GUI:
Main Menu>Preprocessor>Operate>Intersect>-Common-Volumes
- To create the intersection of a line with an area:
Command(s):
GUI:
Main Menu>Preprocessor>Operate>Intersect>Line with Area
- To create the intersection of an area with a volume:
Command(s):
GUI:
Main Menu>Preprocessor>Operate>Intersect>Area with Volume
- To create the intersection of a line with a volume:
Command(s):
GUI:
Main Menu>Preprocessor>Operate>Intersect>Line with Volume
5.4.4.1 Illustrations of Intersection Operations
The following figures illustrate the intersection operations listed above:
Figure 5-19 LINL (Line intersect line)
Figure 5-20 AINA (Area intersect area)
Figure 5-21 VINV (Volume intersect
volume)
Figure 5-22 LINA (Line intersect area)
Figure 5-23 AINV (Area intersect
volume)
Figure 5-24 LINV (Line intersect volume)
5.4.5 Pairwise Intersect
A pairwise intersection defines a new set of entities which is any overlapping set
of entities included in the operation. In other words, a pairwise intersection
represents the region of overlap of at least any two of the original entities. The
new set can be of the same or lower dimension as the original entities. For
instance, the pairwise intersection of a set of lines can be a keypoint (or a set of
keypoints), or it can be a line (or set of lines). The Boolean pairwise intersect
commands are as follows:
- To find the pairwise intersection of lines:
Command(s):
GUI:
Main Menu>Preprocessor>Operate>Intersect>-Pairwise-Lines
- To find the pairwise intersection of areas:
Command(s):
GUI:
Main Menu>Preprocessor>Operate>Intersect>-Pairwise-Areas
- To find the pairwise intersection of volumes:
Command(s):
GUI:
Main Menu>Preprocessor>Operate>Intersect>-Pairwise-Volumes
5.4.5.1 Illustrations of Pairwise Intersection Operations
Figure 5-25, Figure 5-26, and Figure 5-27 illustrate the pairwise intersection
operations listed above:
Figure 5-25 LINP (Line intersect
pairwise)
Figure 5-26 AINP (Area intersect
pairwise)
Figure 5-27 VINP (Volume intersect
pairwise)
An addition of entities defines a new entity that includes all parts of the originals.
(This operation is also known mathematically as a union, joining, or summation.)
The resulting entity is a single seamless whole, containing no internal divisions.
(As a practical matter, "added" entities will often not mesh as well as will
"overlapped" entities.) Only volumes or coplanar 2-D areas can be added in the
ANSYS program. Areas added may contain holes within the area; that is, internal
loops. The Boolean add commands are as follows:
- To add separate areas to create a single area:
Command(s):
GUI:
Main Menu>Preprocessor>Operate>Add>Areas
- To add separate volumes to create a single volume:
Command(s):
GUI:
Main Menu>Preprocessor>Operate>Add>Volumes
5.4.6.1 Illustrations of Addition Operations
The following figures illustrate the add operations listed above.
Figure 5-28 AADD (Add areas)
Figure 5-29 VADD (Add volumes)
If you subtract one entity (E2) from another (E1), you will obtain one of two
results: Either you will create a new entity or entities (E1 - E2 => E3) that is of the
same dimensionality as E1 and that contains no overlap with E2, or, if the overlap
is of a lower dimensionality, you will simply divide E1 into two or more new entities
(E1 - E2 => E3 and E4).
If the command field SEPO on the subtract command is set to blank (default), the
subtraction of entities can result in lines with a common end point, or areas with a
common line boundary, or volumes sharing a common boundary area. If the
command field is set to "SEPO", the resulting entities will no longer share
common boundaries but have distinct but coincident boundaries. This latter
operation is not valid if the overlap of entities does not divide one of the input
entities into at least two distinct lines, areas, or volumes. The Boolean subtract
commands (and their corresponding GUI paths) are as follows:
- To subtract lines from lines:
Command(s):
GUI:
Main Menu>Preprocessor>Operate>Subtract>Lines
Main Menu>Preprocessor>Operate>Subtract>With Options>Lines
Main Menu>Preprocessor>Operate>Divide>Line by Line
Main Menu>Preprocessor>Operate>Divide>With Options>Line by Line
- To subtract areas from areas:
Command(s):
GUI:
Main Menu>Preprocessor>Operate>Subtract>Areas
Main Menu>Preprocessor>Operate>Subtract>With Options>Areas
Main Menu>Preprocessor>Operate>Divide>Area by Area
Main Menu>Preprocessor>Operate>Divide>With Options>Area by
Area
- To subtract volumes from volumes:
Command(s):
GUI:
Main Menu>Preprocessor>Operate>Subtract>Volumes
Main Menu>Preprocessor>Operate>Subtract>With Options>Volumes
- To subtract areas from lines:
Command(s):
GUI:
Main Menu>Preprocessor>Operate>Divide>Line by Area
Main Menu>Preprocessor>Operate>Divide>With Options>Line by
Area
- To subtract volumes from lines:
Command(s):
GUI:
Main Menu>Preprocessor>Operate>Divide>Line by Volume
Main Menu>Preprocessor>Operate>Divide>With Options>Line by
Volume
- To subtract volumes from areas:
Command(s):
GUI:
Main Menu>Preprocessor>Operate>Divide>Area by Volume
Main Menu>Preprocessor>Operate>Divide>With Options>Area by
Volume
- To subtract lines from areas:
Command(s):
GUI:
Main Menu>Preprocessor>Operate>Divide>Area by Line
Main Menu>Preprocessor>Operate>Divide>With Options>Area by
Line
Note-The SEPO field is not available on the ASBL command.
- To subtract areas from volumes:
Command(s):
GUI:
Main Menu>Preprocessor>Operate>Divide>Volume by Area
Main Menu>Preprocessor>Operate>Divide>With Options>Volume by
Area
5.4.7.1 Illustrations of Subtraction Operations
Figure 5-30 through Figure 5-37 illustrate simple entity subtraction operations.
See the descriptions of the LSBL, ASBA, VSBV, LSBA, LSBV, ASBV, ASBL, and VSBA commands in the ANSYS Commands Reference for more information.
Figure 5-30 LSBL (Line subtract line)
Figure 5-31 ASBA (Area subtract area)
Figure 5-32 VSBV (Volume subtract
volume)
Figure 5-33 LSBA (Line subtract area)
Figure 5-34 LSBV (Line subtract
volume)
Figure 5-35 ASBV (Area subtract
volume)
Figure 5-36 ASBL (Area subtract line)
Figure 5-37 VSBA (Volume subtract
area)
The entity subtraction commands can have multiple inputs. You can subtract one
entity from multiple entities, or you can subtract multiple entities from one entity.
You may also subtract multiple entities from multiple entities. Figures 5-38 to 5-45
illustrate multiple entity subtractions.
Figure 5-38 LSBL (Multiple line subtract
a line)
Figure 5-39 ASBA (Multiple area
subtract an area)
Figure 5-40 VSBV (Multiple volume
subtract a volume)
Figure 5-41 LSBA (Multiple line
subtract an area)
Figure 5-42 LSBV (Multiple line subtract
a volume)
Figure 5-43 ASBV (Multiple area
subtract a volume)
Figure 5-44 ASBL (Multiple area
subtract a line)
Figure 5-45 VSBA (Single volume
subtract multiple areas)
5.4.7.2 Notes on Subtract Operations
As the last figure above illustrates, you can subtract multiple entities from a single
entity. All entity subtraction commands are of the form eSBe, where "e"
represents multiple or single entities.
Note-ALL may be used in either entity field of the subtract operation. If ALL is
used in the minuend field, the entity or entities listed or picked in the subtrahend
field will be removed from all selected entities. If ALL is used in the subtrahend
field, all selected entities will be subtracted from those listed in the minuend field.
If ALL is used in both minuend and subtrahend fields for subtraction of like
entities, nothing will happen; that is, the result will be your input entities.
The KEEP(X) argument fields of the entity subtraction commands allow you to
selectively keep or delete entities. For instance, the KEEPA and KEEPL
arguments on the ASBL command allow you
to keep or delete the areas and/or lines used in an ASBL operation. This is in
contrast to the BOPTN,KEEP,Value
command which demands you either keep or delete all input entities. The KEEPL
and KEEPA arguments override previous settings made with the BOPTN command (Main
Menu>Preprocessor>Operate>Settings). If these two fields are left blank, the
default settings are controlled by the BOPTN command. The default setting for BOPTN is to delete all entities that are used
as inputs to entity subtraction commands.
5.4.8 Working Plane Subtract
The working plane can be subtracted from an entity to divide it into two or more
entities. The working plane can be subtracted from lines, areas, and volumes by
using the commands and GUI paths described below. For each of these subtract
commands, the SEPO field can be used to determine whether the entities
produced will have shared or coincident but separate boundaries. The KEEP field
can be used to retain or delete input entities regardless of the setting of the BOPTN command (Main
Menu>Preprocessor>Operate>Settings).
The working plane is often used to cut up an existing model prior to map meshing.
The Boolean working plane subtraction commands (and their corresponding GUI
paths) are as follows:
- To subtract the intersection of the working plane from lines:
Command(s):
GUI:
Main Menu>Preprocessor>Operate>Divide>Line by WrkPlane
Main Menu>Preprocessor>Operate>Divide>With Options>Line by
WrkPlane
- To subtract the intersection of the working plane from areas:
Command(s):
GUI:
Main Menu>Preprocessor>Operate>Divide>Area by WrkPlane
Main Menu>Preprocessor>Operate>Divide>With Options>Area by
WrkPlane
- To subtract the intersection of the working plane from volumes:
Command(s):
GUI:
Main Menu>Preprocessor>Operate>Divide>Volu by WrkPlane
Main Menu>Preprocessor>Operate>Divide>With Options>Volu by
WrkPlane
5.4.8.1 Illustrations of Working Plane Subtraction Operations
The following figures illustrate the working plane subtraction operations listed
above:
Figure 5-46 LSBW (Line Subtract
Working Plane)
Figure 5-47 ASBW (Area Subtract
Working Plane)
Figure 5-48 VSBW (Volume Subtract
Working Plane)
Classification is similar to subtraction, except that both the original entities are
replaced by new entities. At present, only line-line classification is possible in the
ANSYS program. To perform line-line classification, use the LCSL command. You cannot access the LCSL command directly in the GUI. The
following figure illustrates the classification operation.
Figure 5-49 LCSL (line classify line)
The overlap commands will join two or more entities to create three or more new
entities that encompass all parts of the originals. The end result is similar to an
"add" operation, except that boundaries will be created around the overlap zone.
Thus, the overlap operation produces a number of relatively uncomplicated
regions, as compared to the single relatively complicated region created by the
add operation. For this reason, overlapped entities will often mesh better than
added entities.
Overlapping is valid only if the overlap region has the same dimensionality as the
original entities. The Boolean overlap commands (and their corresponding GUI
paths) are as follows:
Command(s):
GUI:
Main Menu>Preprocessor>Operate>Overlap>Lines
Command(s):
GUI:
Main Menu>Preprocessor>Operate>Overlap>Areas
Command(s):
GUI:
Main Menu>Preprocessor>Operate>Overlap>Volumes
5.4.10.1 Illustrations of Overlap Operations
The following figures illustrate the overlap operations listed above:
Figure 5-50 LOVLAP (Line overlap
line)
Figure 5-51 AOVLAP (Area overlap
area)
Figure 5-52 VOVLAP (Volume
overlap volume)
The partition commands will join two or more entities to create three or more new
entities that encompass all parts of the originals. The end result is similar to an
"overlap" operation if the overlap is of the same dimensionality as the original
entities. However, unlike the overlap operations, non-overlapping input entities
will not be deleted. The Boolean partition commands are as follows:
Command(s):
GUI:
Main Menu>Preprocessor>Operate>Partition>Lines
Command(s):
GUI:
Main Menu>Preprocessor>Operate>Partition>Areas
Command(s):
GUI:
Main Menu>Preprocessor>Operate>Partition>Volumes
5.4.11.1 Illustrations of Partition Operations
Figure 5-53, Figure 5-54, and Figure 5-55 illustrate partition operations. See the
descriptions of the LPTN, APTN, and VPTN commands in the ANSYS Commands Reference for more information.
Figure 5-53 LPTN (Line partition)
Figure 5-54 APTN (Area partition)
Figure 5-55 VPTN (Volume partition)
5.4.12 Glue (or Merge)
Glue is similar to overlap, except that it applies only to cases in which the
intersection between entities occurs at a boundary, and is one dimension lower
than the original entities. The entities maintain their individuality (they are not
"added"), but they become connected at their intersection (they "talk" to each
other), as shown in the illustrations below. The Boolean glue commands (and
their corresponding GUI paths) are as follows:
- To generate new lines by "gluing" lines:
Command(s):
GUI:
Main Menu>Preprocessor>Operate>Glue>Lines
- To generate new areas by "gluing" areas:
Command(s):
GUI:
Main Menu>Preprocessor>Operate>Glue>Areas
- To generate new volumes by "gluing" volumes:
Command(s):
GUI:
Main Menu>Preprocessor>Operate>Glue>Volumes
5.4.12.1 Illustrations of Glue Operations
The following figures illustrate the glue operations listed above:
Figure 5-56 LGLUE (Line glue line)
Figure 5-57 AGLUE (Area glue area)
Figure 5-58 VGLUE (Volume glue
volume)
5.4.13 Alternatives to Boolean Operations
Boolean operations can sometimes be relatively slow and expensive. As a
general guideline, if you can replace a Boolean command with another, similarly
convenient command, do so. Some of the alternative procedures that can
sometimes be used in place of Booleans are described below.
Dragging and Rotating: A complicated prismatic or cylindrical volume might be
defined just as conveniently, but more efficiently, using VDRAG and VROTAT (as described below) in place of
Boolean operations. A good example would be a model of a block with a number
of holes drilled through it.
- To generate volumes by dragging an area pattern along a path:
Command(s):
GUI:
Main Menu>Preprocessor>Operate>Extrude / Sweep>Along Lines
- To generate cylindrical volumes by rotating an area pattern about an axis:
Command(s):
GUI:
Main Menu>Preprocessor>Operate>Extrude / Sweep>About Axis
Extruding and Offsetting: A 2-D cross section can also be offset or extruded into
a 3-D volume using VEXT and VOFFST (as described below). See Section
5.2, "Creating Your Solid Model from the Bottom Up" earlier in this chapter, which
also discusses how to extrude, offset, rotate, or drag meshed areas into meshed
volumes.
- To generate additional volumes by extruding areas:
Command(s):
GUI:
Main Menu>Preprocessor>Operate>Extrude / Sweep>By XYZ Offset
- To generate a volume, offset from a given area:
Command(s):
GUI:
Main Menu>Preprocessor>Operate>Extrude / Sweep>Along Normal
Utilizing the Options on Primitive Commands: A number of primitive commands
allow you to define a relatively complicated shape in a single command. For
example, you can create a hollow spherical segment of specified wall thickness,
using a single SPHERE command (Main
Menu>Preprocessor>Create>Sphere> By Dimensions):
Figure 5-59 Hollow spherical segment created with one command
It is clear from this example how exercising the full ability of one primitive
command can sometimes save the expense of performing several Boolean
operations.
5.5 Updating after Boolean Operations
Some Boolean commands will automatically update entities after the Boolean
operation is performed on attached lower-order entities. For instance, if you use
an AADD Boolean operation (Main
Menu>Preprocessor>Operate>Add>Areas) to add several areas together that
are attached to a single volume, that volume will be updated by replacing the
original areas with the newly produced area. This releases you from the work of
deleting the higher-order entity (volume in this case) and rebuilding it with bottom
up techniques. The following commands perform automatic updating of
higher-order entities:
Table 5-1 Commands that automatically update entities
| Command
|
Entities directly modified by command
|
Entities that can be updated
|
| AADD
|
Areas
|
Volumes
|
| ASBA
|
Areas and Lines
|
Areas and Volumes
|
| ASBV
|
Areas and Lines
|
Areas and Volumes
|
| ASBL
|
Areas and Lines
|
Areas and Volumes
|
| AFILLT
|
N/A
|
Areas and Volumes
|
| LSBL
|
Lines
|
Areas
|
| LSBA
|
Lines
|
Areas
|
| LSBV
|
Lines
|
Areas
|
| LCSL
|
Lines
|
Areas
|
Updating can occur only if the Boolean operation produces entities that are equal
to the original entity. For instance, if an ASBA operation (Main Menu>
Preprocessor>Operate>Divide>Area by Area, and so on) cuts an area into two
pieces, the two new pieces will replace the original area, and the underlying
volume will be updated to include the new areas. However, if the ASBA operation cuts a piece out of the original
area (to create a hole for instance), no entities can be updated.
Figure 5-60 shows an example of automatic Boolean updating. In this example, a
fillet area [AFILLT] (Main
Menu>Preprocessor>Create>Area Fillet) is placed between two intersecting
volumes. The Boolean fillet operation creates the fillet area, but also
automatically updates the areas on the surfaces of the volumes, and the volumes
are updated to replace the two original surface areas with the four new surface
areas.
Figure 5-60 Automatic Boolean updating with AFILLT
5.6 Moving and Copying Solid Model Entities
If your model repetitively uses a relatively complicated area or volume, you need
construct that part only once; you can then generate copies of that part in new
locations and new orientations as needed. For example, the elongated voids in
the plate shown below can be copied from a single such void.
Figure 5-61 Copying an area
Geometric primitives can also be considered to be "parts." As you create
geometric primitives, their location and orientation will be determined by the
current working plane. Because it is not always particularly convenient to redefine
the working plane for each new primitive that you create, you might find it more
practical to allow a primitive to be created at the "wrong" location, and then move
that primitive to its correct position. Of course, this operation is not limited to
geometric primitives: any solid model entity can be copied or moved.
The commands that you can use to move or copy solid model entities include the
xGEN commands, the xSYM(M) commands, and the xTRAN commands (and
their corresponding GUI paths). Of these, the xGEN and xTRAN commands will
probably be the most useful for moving and rotating a copy of an entity. (Copying
a higher-order entity will automatically cause all the lower-order entities
associated with it to be copied as well. In addition, if you copy an entity's
elements (NOELEM = 0), all elements associated with lower-order entities
attached to it will also be copied.) You can move an entity to a new location by
setting IMOVE = 1 in the appropriate xGEN, xSYM(M), or xTRAN command.
5.6.1 Generating Entities from a Pattern
ANSYS provides the following xGEN commands and GUI paths:
- To generate additional keypoints from a pattern of keypoints:
Command(s):
GUI:
Main Menu>Preprocessor>Copy>Keypoints
- To generate additional lines from a pattern of lines:
Command(s):
GUI:
Main Menu>Preprocessor>Copy>Lines
Main Menu>Preprocessor>Move / Modify>Lines
- To generate additional areas from a pattern of areas:
Command(s):
GUI:
Main Menu>Preprocessor>Copy>Areas
Main Menu>Preprocessor>Move / Modify>Areas
- To generate additional volumes from a pattern of volumes:
Command(s):
GUI:
Main Menu>Preprocessor>Copy>Volumes
Main Menu>Preprocessor>Move / Modify>Volumes
5.6.2 Generating Entities by Symmetry Reflection
ANSYS provides the following xSYM(M) commands and GUI paths:
- To generate a reflected set of keypoints:
Command(s):
GUI:
Main Menu>Preprocessor>Reflect>Keypoints
- To generate lines from a line pattern by symmetry reflection:
Command(s):
GUI:
Main Menu>Preprocessor>Reflect>Lines
- To generate areas from an area pattern by symmetry reflection:
Command(s):
GUI:
Main Menu>Preprocessor>Reflect>Areas
- To generate volumes from a volume pattern by symmetry reflection:
Command(s):
GUI:
Main Menu>Preprocessor>Reflect>Volumes
5.6.3 Transferring a Pattern of Entities to a Coordinate
System
ANSYS provides the following xTRAN commands and GUI paths:
- To transfer a pattern of keypoints to another coordinate system:
Command(s):
GUI:
Main Menu>Preprocessor>Move / Modify>Transfer Coord>Keypoints
- To transfer a pattern of lines to another coordinate system:
Command(s):
GUI:
Main Menu>Preprocessor>Move / Modify>Transfer Coord>Lines
- To transfer a pattern of areas to another coordinate system:
Command(s):
GUI:
Main Menu>Preprocessor>Move / Modify>Transfer Coord>Areas
- To transfer a pattern of volumes to another coordinate system:
Command(s):
GUI:
Main Menu>Preprocessor>Move / Modify>Transfer Coord>Volumes
5.7 Scaling Solid Model Entities
It is possible to scale defined entities up or down. The xSCALE family of
commands can be used to scale a single entity or a pattern of entities in the active
coordinate system.
Scale factors are applied to the X, Y, and Z keypoint coordinates for each of the
four scaling commands. If you are working in a cylindrical coordinate system
when doing a scaling operation, X,Y, and Z will be interpreted as R,
,Z, where
is
an angular offset. In spherical coordinates, X,Y, and Z will be interpreted as
R,
,
, where
and
are both angular offsets.
- To generate a scaled set of (meshed) keypoints from a pattern of
keypoints:
Command(s):
GUI:
Main Menu>Preprocessor>Operate>Scale>Keypoints
- To generate a scaled set of lines from a pattern of lines:
Command(s):
GUI:
Main Menu>Preprocessor>Operate>Scale>Lines
- To generate a scaled set of areas from a pattern of areas:
Command(s):
GUI:
Main Menu>Preprocessor>Operate>Scale>Areas
- To generate a scaled set of volumes from a pattern of volumes:
Command(s):
GUI:
Main Menu>Preprocessor>Operate>Scale>Volumes
Samples of scaled entities are shown in Figure 5-62.
Figure 5-62 Scaling entities
5.8 Solid Model Loads
You can define loads directly on the solid model at any time before you actually
initiate the solution. Thus, solid model loads may be defined before or after finite
element meshing. (Details of how to define solid model loads are discussed in
Chapter 2 of the ANSYS Basic Analysis
Procedures Guide.) The remainder of this section describes other functions
related to solid model loads.
5.8.1 Transferring Solid Model Loads
Solid model loads will be transferred to the finite element model automatically
when you begin the solution calculations (when you issue a SOLVE command (Main
Menu>Solution>Current LS)), or you may transfer them "manually" using the
following methods:
- To transfer solid model loads and boundary conditions to the finite element
model:
Command(s):
GUI:
Main Menu>Preprocessor>Loads>Operate>All Solid Lds
Main Menu>Solution>Operate>All Solid Lds
- To transfer solid model body force loads to the finite element model:
Command(s):
GUI:
Main Menu>Preprocessor>Loads>Operate>Body Loads
Main Menu>Solution>Operate>Body Loads
- To transfer solid model DOF constraints to the finite element model:
Command(s):
GUI:
Main Menu>Preprocessor>Loads>Operate>Constraints
Main Menu>Solution>Operate>Constraints
- To transfer solid model forces to the finite element model:
Command(s):
GUI:
Main Menu>Preprocessor>Loads>Operate>Forces
Main Menu>Solution>Operate>Forces
- To transfer solid model surface loads to the finite element model:
Command(s):
GUI:
Main Menu>Preprocessor>Loads>Operate>Surface Loads
Main Menu>Solution>Operate>Surface Loads
5.8.2 Displaying Load Symbols
Solid model loads may be displayed at any time after you have turned on the
appropriate load symbols:
- To show boundary condition symbols on displays, use the /PBC command. This command includes
an option to display boundary condition values, as well as symbols.
(Turning off /VSCALE scaling
before issuing the /PBC command may
help.)
- To show body force loads as contours on displays, use the /PBF command.
- To show surface load symbols on model displays, use the /PSF command.
All of these commands can be accessed in the GUI by picking Utility Menu>
PlotCtrls>Symbols.
5.8.3 Turning Off Large Symbols for Node and Keypoint
Locations
Large symbols for node and keypoint locations are displayed by default (/PSYMB,DOT,1).
- To display smaller symbols for node and keypoint locations, use one of the
following methods:
Command(s):
GUI:
Utility Menu>PlotCtrls>Symbols
5.8.4 Selecting a Format for the Graphical Display of
Numbers
You can indicate the field length and the number of digits that are displayed for the
numbers appearing on a model.
- To specify a format for the display of numbers, use the following command:
Command(s):
5.8.5 Listing Solid Model Loads
You can list all solid model loads or you can list separate types of solid model
loads using the following methods:
- To list all solid model loads:
Command(s):
GUI:
Utility Menu>List>Loads>Solid Model Loads
- To list the body force loads at keypoints:
Command(s):
GUI:
Utility Menu>List>Loads>Body Loads>On All Keypoints
Utility Menu>List>Loads>Body Loads>On Picked KPs
- To list the DOF constraints at keypoints:
Command(s):
GUI:
Utility Menu>List>Loads>DOF Constraints>On All Keypoints
Utility Menu>List>Loads>DOF Constraints>On Picked KPs
- To list the DOF constraints on a line:
Command(s):
GUI:
Utility Menu>List>Loads>DOF Constraints>On All Lines
Utility Menu>List>Loads>DOF Constraints>On Picked Lines
- To list the DOF constraints on an area:
Command(s):
GUI:
Utility Menu>List>Loads>DOF Constraints>On All Areas
Utility Menu>List>Loads>DOF Constraints>On Picked Areas
- To list the forces at keypoints:
Command(s):
GUI:
Utility Menu>List>Loads>Forces>On All Keypoints
Utility Menu>List>Loads>Forces>On Picked KPs
- To list the surface loads on lines:
Command(s):
GUI:
Utility Menu>List>Loads>Surface Loads>On All Lines
Utility Menu>List>Loads>Surface Loads>On Picked Lines
- To list the surface loads on areas:
Command(s):
GUI:
Utility Menu>List>Loads>Surface Loads>On All Areas
Utility Menu>List>Loads>Surface Loads>On Picked Areas
5.9 Mass and Inertia Calculations
The xSUM commands calculate and print geometry items associated with solid
model entities. For more details, see Chapter 15 of the ANSYS Theory
Reference.
Note-For very narrow (sliver) areas or very thin volumes, such that the ratio of
the minimum to the maximum dimension is less than 0.01, the ASUM and VSUM commands can provide erroneous area
or volume information. To ensure that such calculations are accurate, make
certain that you subdivide such areas and volumes so that the ratio of the
minimum to the maximum is at least 0.05.
- To calculate and print the centroid location, moments of inertia, and so on,
associated with selected keypoints:
Command(s):
GUI:
Main Menu>Preprocessor>Operate>Calc Geom Items>Of Keypoints
- To calculate and print the length, centroid location, moments of inertia, and
so on, for selected lines:
Command(s):
GUI:
Main Menu>Preprocessor>Operate>Calc Geom Items>Of Lines
- To calculate and print the area, centroid location, moments of inertia, and
so on, for selected areas:
Command(s):
GUI:
Main Menu>Preprocessor>Operate>Calc Geom Items>Of Areas
- To calculate and print the volume, centroid location, moments of inertia,
and so on, for selected volumes:
Command(s):
GUI:
Main Menu>Preprocessor>Operate>Calc Geom Items>Of Volumes
- To calculate and print all of the previously mentioned keypoint, line, area,
and volume geometry items at one time:
Command(s):
GUI:
Main Menu>Preprocessor>Operate>Calc Geom Items>Of Geometry
5.10 Considerations and Cautions for Solid
Modeling
5.10.1 Representation of Solid Model Entities
During the solid modeling process, it is helpful to understand the underlying
mathematical operations used by ANSYS. This knowledge is particularly useful
when you encounter degeneracies and discontinuities. For example, an error
stating that a degeneracy has been detected in a solid model Boolean operation
may occur. Knowledge of the mathematical terminology involved can aid in
overcoming such an error.
Internally, solid model entities are mathematically represented by trimmed
parametric surfaces. Trimmed parametric surfaces consist of two components:
parametric geometry and topology. Parametric geometry defines the underlying
surface of a model. The term "parametric" refers to the parametric space that
mathematically represents the geometric space. Refer to Figure 5-63 for an
illustration of the relationship between the geometric model and the parametric
model. Non-uniform Rational B-splines, or NURBS, are used in the definition of
the parametric geometry. The term "topology" refers to the trimming surfaces that
bound a model's geometry.
5.10.2 When a Boolean Operation Fails
Boolean operators provide a powerful set of tools that enable you to create
complicated geometries with a minimum amount of input. However, you might
encounter situations in which a Boolean operation will have difficulties. If this
happens, you can still sometimes work around the problem to achieve the desired
solid model. Let's examine some of the causes of and cures for Boolean failures.
Boolean operations can fail due to degeneracies. Knowing what constitutes a
degeneracy, how a degeneracy is formed, and why degeneracies sometimes
cause Booleans to fail can help you overcome such errors. Degeneracies can
arise due to issues in geometry or topology. ANSYS will classify degeneracies
(which cause a Boolean failure) as either parametric (geometry) or topological.
Parametric degeneracies result from the representation of geometric space with
an underlying parametric space. When this "shadow world" of the parametric
representation is not in dimensional harmony with the real world of the geometric
model, a degeneracy is created. For example, at the apex of a cone, a single
point on the geometric model is represented by an edge in the parametric
representation (see Figure 5-63). Such a point is termed a degenerate edge, or
more simply, a degeneracy. Figure 5-65 illustrates several common degeneracies
formed during modeling.
A degeneracy of this kind is not harmful in and of itself. A model that contains a
degeneracy can often be used in Boolean operations, can be meshed
successfully, and can yield excellent analysis results. It is only when a
degeneracy happens to cause a problem in a Boolean operation that you even
need to be aware of its existence.
Figure 5-63 Cone surface maps to a parametric square
5.10.3 Graphically Identifying Degeneracies
Degeneracies in areas or volumes can be graphically identified using the methods
described below. If you are using the command input method, including the
DEGEN label will place a red star at keypoints associated with degeneracies (see
Figure 5-64).
- To display degeneracies in areas:
Command(s):
GUI:
Main Menu>Preprocessor>Operate>Show Degeneracy>Plot Degen
Areas
- To display selected volumes:
Command(s):
GUI:
Main Menu>Preprocessor>Operate>Show Degeneracy>Plot Degen
Volus
5.10.4 Listing the Keypoints Associated with Degeneracies
You may also choose to list the keypoints associated with degeneracies:
- To list keypoints of an area that lie on a parametric degeneracy:
Command(s):
GUI:
Main Menu>Preprocessor>Operate>Show Degeneracy>List Degen
Areas
- To list keypoints of a volume that lie on a parametric degeneracy:
Command(s):
GUI:
Main Menu>Preprocessor>Operate>Show Degeneracy>List Degen
Volus
Figure 5-64 Plotting of geometric degeneracies
Another kind of degeneracy can be detected if a Boolean operation attempts to
create a degenerate boundary during any phase of its operation. A degenerate
boundary is an incomplete or zero-area loop, or an incomplete or zero-volume
shell. This type of degeneracy is commonly referred to as a topological
degeneracy. A Boolean operation will produce an error message if a degeneracy
of this nature is detected. Topological degeneracies cannot be plotted since they
do not exist prior to a Boolean operation. Examples of topological degeneracies
are illustrated in Figure 5-66 and Figure 5-67. An example of a Boolean operation
resulting in failure is shown in Figure 5-66. In this example, the triangular prism
cannot be subtracted [VSBV] from the block,
because a degenerate loop would be formed on the top surface of the block.
Other Boolean operations such as VADD, VOVLAP, etc. would also fail for these
volumes due to this degeneracy.
Figure 5-65 Examples of degeneracies
Figure 5-66 Topologically degenerate loop will be created during VSBV, VADD, VOVLAP, or other
Boolean operations involving these volumes
Figure 5-67 Examples of topologically degenerate loops and shells
Generally, discontinuities are sharp "kinks" in solid model entities. They can result
from the combination of lines [LCOMB]
with inconsistent end tangents or from an IGES import. See Figure 5-68 for an
illustration of entities containing discontinuities.
Figure 5-68 Lines and areas containing discontinuities
Many solid model operations will support entities containing discontinuities.
However, Boolean operations do not directly support discontinuities. Boolean
operations will split or divide entities at points or along lines of discontinuities prior
to the Boolean operation. For example, Figure 5-69 shows an area containing a
discontinuity involved in a Boolean subtract operation. Prior to the subtract
operation area 1 along with lines 1 and 3 are split at discontinuities.
Figure 5-69 Boolean operation involving entities with discontinuities
Note-Discontinuities can be associated with both direction and magnitude of
tangent vectors. Boolean operations will detect both types of discontinuities.
5.10.4.2 Other Causes of Boolean Failures
Boolean operations can fail due to other circumstances besides degeneracies.
For instance, intersections at tangent points can sometimes be difficult for the
Boolean operations to handle, particularly with non-primitive constructions. Also,
entities that share a boundary (such as two volumes with bounding areas on the
same surface) can potentially cause problems in a Boolean operation. Problems
might also be encountered if your geometry contains small regions with very high
curvatures, or regions with very sharp angles or transitions.
5.10.5 Some Suggested Corrective Actions
If a Boolean operation fails, you can try using one or more of the following
procedures to work around the problem.
You need not always follow these guidelines as you first build your model. You
can often create a model any way you like, and never encounter a Boolean
failure. These guidelines are provided as suggested ways to try to recover from a
Boolean failure.
Adjust the input geometries, using the following guidelines:
- Whenever possible, try to use geometric primitives as you create your solid
model. The results of Boolean operations on non-primitives can
sometimes be less accurate and efficient.
- Try to avoid creating geometries that contain degeneracies, if the
degeneracy will lie on a potential intersection curve. A few specific
examples of such geometries would include:
- An untruncated cone primitive. (See Figure 5-63.)
- A three-sided area that is neither planar nor lies on a
constant-coordinate surface in the active coordinate system. (See
Figure 5-65(a).)
- A fillet area [AFILLT] that tapers
to a point. (See Figure 5-65(b).)
- A skinned area [ASKIN] for which
two or more guiding lines intersect. (See Figure 5-65(c).)
- An area or volume created by rotation [AROTAT, VROTAT] about an axis that
intersects any of the input entities. (See Figure 5-65(d).)
- An area or volume created by dragging [ADRAG, VDRAG] along a path that has a
center of curvature that intersects any of the input entities. (See Figure
5-65(e).)
- Try to avoid performing Boolean operations on entities that are tangent to
each other. Similarly, try to avoid Boolean operations on entities that have
coincident boundaries.
- If your Boolean operation included more than two input entities, break the
operation into a series of operations with fewer input entities. For example,
replace AADD,ALL with the series
(AADD,1,2; AADD,5,3; AADD,1,4). (See Figure 5-70.) You will
have to keep track of the numbers assigned to new Boolean output entities
created throughout the series of commands.
Figure 5-70 Decompose a single operation into a series of operations
- If a failure occurs in a series of Boolean operations, try changing the order
of operations. For instance, replace the series (AADD,1,2; AADD,5,3; AADD,1,4) with a reordered series, such
as (AADD,4,3; AADD,5,2; AADD,3,1). (See Figure 5-71.)
Figure 5-71 Change the order of a series of operations
- If the Boolean operation fails, you may receive an error message
suggesting you loosen (increase) the tolerance from the default value of
1.0x10-4 (1.0E-4). This tolerance affects the precision with which Boolean
constructions are formed. Sometimes, simply changing this tolerance and
reissuing the Boolean command will suffice. At other times, you might find
that you need to retrace your steps, recreating the Boolean's input entities
using a changed tolerance, before you can successfully proceed with the
Boolean operation.
You can loosen the tolerance with the BTOL,PTOL command, where PTOL is
the new tolerance:
Command(s):
GUI:
Main Menu>Preprocessor>Operate>Settings
Once you have loosened the tolerance and re-executed the operation
successfully, you should return the tolerance to its default value. Doing so
will assure precise Boolean constructions later in your modeling effort.
5.10.6.1 Avoid Regions that Cross over Themselves
You must take care not to define an area or volume that crosses over itself. (You
might inadvertently create such an entity by means of an ADRAG or VDRAG command, for instance.) The ANSYS
program cannot always detect such a defect before meshing, but an area or
volume that crosses over itself will usually reveal itself in a meshing failure.
5.10.6.2 Use ANSYS Parameters
Use ANSYS parameters for dimensions that might change or that have a lot of
digits. Typing a number like 2.8574639 over and over is tedious and is likely to
lead to input errors.
5.10.6.3 Consider Alternatives to Boolean Commands
When appropriate, use reasonable alternatives to Boolean commands to
overcome Boolean failures or simply to reduce run times. (For example, dragging
or rotating might sometimes be preferred over comparable Boolean modeling
operations.)
5.10.6.4 Work with Lower-Dimension Constructions
Modeling sessions can sometimes be made more efficient, both with respect to
run times and memory requirements, if Boolean operations can be performed
using lower-dimension entities. For instance, replacing a line-volume subtraction
[LSBV] with a series of line-area
subtractions [LSBA] and a deletion [LDELE] might yield the same results at less
cost. (See Figure 5-72.) Of course, you must weigh the loss of convenience
against any gain that you might realize. Switching to lower-dimension operations
will probably not be justified unless you are experiencing out-of-memory errors,
extremely long run times, or other such problems.
Figure 5-72 Switching to lower-dimension operations can sometimes
save CPU time and memory requirements
5.10.6.5 Create Complex Models in Pieces
Consider creating complex solid models in pieces and combining them using the
RESUME command (Utility
Menu>File>Resume from) and CDREAD command (Main
Menu>Preprocessor>Archive Model>Read) in the preprocessor (PREP7). The
following is an example of this procedure:
/PREP7
RESUME,MODEL1,DB
CDWRITE,SOLID !Write out just solid model (to file.iges)
RESUME,MODEL2,DB !Note that this 2nd RESUME clears MODEL1 from the
!database and reads MODEL2
CDREAD,SOLID !Reads in the solid model (from file.iges)
!Solid models from MODEL1 and MODEL2 are now
!in the current database
SAVE,MODEL3,DB !Save combined model to separate file
FINISH
The CDREAD command automatically
renumbers new entities to avoid conflicts with other solid model entities that
already exist in the database. In addition, this command automatically executes a
NUMMRG,KP command to merge
duplicate solid-model entities.
Make it a habit to save your database [SAVE] (Utility Menu>File>Save as) before
attempting a new or risky operation. This way, if an operation causes your system
to hang or crash, or produces some other undesired result, you will have
preserved a clean copy of your database to help you recover from such trouble.
5.10.6.7 Tessellation Errors
It is possible, although unlikely, that you might encounter the following error
message at times as you are building your solid model:
*** WARNING ***
Error in surface tessellation for area N. This area can only be displayed
with /FACET,WIRE, and cannot be part of a V, VA, VSUM, or ASUM operation.
Tessellation is the subdividing of an area for purposes of display (that is, surface
faceting), area calculation (as in ASUM),
and volume integration (as in V, VA, or VSUM). A tessellation error produces a
warning message instead of an error message because an area that cannot be
tessellated might still mesh successfully.
The types of situations that can cause tessellation errors include: areas having
sharp knife edges, areas having too many holes, or areas having holes on
extremely warped surfaces.
Note-For very narrow (sliver) areas or very thin volumes, such that the ratio of
the minimum to the maximum dimension is less than 0.01, the ASUM and VSUM commands can provide erroneous area
or volume information. To ensure that such calculations are accurate, make
certain that you subdivide such areas and volumes so that the ratio of the
minimum to the maximum is at least 0.05.
Go to the beginning of this chapter