Chapter 5: Solid Modeling

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.

5.2.1 Keypoints

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:

Command(s):

GUI:

Main Menu>Preprocessor>Create>Keypoints>In Active CS
Main Menu>Preprocessor>Create>Keypoints>On Working Plane

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.)

Command(s):

GUI:

Main Menu>Preprocessor>Create>Keypoints>KP between KPs

Command(s):

GUI:

Main Menu>Preprocessor>Create>Keypoints>Fill between KPs

Command(s):

GUI:

Main Menu>Preprocessor>Create>Keypoints>KP at Center

Command(s):

GUI:

Main Menu>Preprocessor>Copy>Keypoints

Command(s):

GUI:

Main Menu>Preprocessor>Reflect>Keypoints

Command(s):

GUI:

Main Menu>Preprocessor>Move / Modify>Transfer Coord>Keypoints

Command(s):

GUI:

Main Menu>Preprocessor>Move / Modify>To Intersect

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:

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

Command(s):

GUI:

Utility Menu>Plot>Keypoints
Utility Menu>Plot>Specified Entities>Keypoints

Command(s):

GUI:

Utility Menu>Select>Entities

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:

Command(s):

GUI:

Main Menu>Preprocessor>-Modeling-Check Geom>KP distances

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

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

Use the following methods to create hard points:

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

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.

Command(s):

GUI:

Utility Menu>Select>Entities

Note-In the Select Entities dialog box, choose both Lines and By 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

Command(s):

GUI:

No corresponding GUI is available

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

5.2.3 Lines

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:

Command(s):

GUI:

Main Menu>Preprocessor>Create>Lines>In Active Coord

Command(s):

GUI:

Main Menu>Preprocessor>Create>Arcs>By End KPs & Rad
Main Menu>Preprocessor>Create>Arcs>Through 3 KPs

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

Command(s):

GUI:

Main Menu>Preprocessor>Create>Arcs>By Cent & Radius
Main Menu>Preprocessor>Create>Arcs>Full Circle

Command(s):

GUI:

Main Menu>Preprocessor>Create>Splines>Segmented Spline
Main Menu>Preprocessor>Create>Splines>With Options>Segmented Spline

Command(s):

GUI:

Main Menu>Preprocessor>Create>Lines>At Angle to Line
Main Menu>Preprocessor>Create>Lines>Normal to Line

Command(s):

GUI:

Main Menu>Preprocessor>Create>Lines>Angle to 2 Lines
Main Menu>Preprocessor>Create>Lines>Norm to 2 Lines

Command(s):

GUI:

Main Menu>Preprocessor>Create>Lines>Tangent to Line

Command(s):

GUI:

Main Menu>Preprocessor>Create>Lines>Tan to 2 Lines

Command(s):

GUI:

Main Menu>Preprocessor>Create>Lines>Overlaid on Area

Command(s):

GUI:

Main Menu>Preprocessor>Operate>Extrude / Sweep>Along Lines

Command(s):

GUI:

Main Menu>Preprocessor>Operate>Extrude / Sweep>About Axis

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).

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:

Command(s):

GUI:

Main Menu>Preprocessor>Copy>Lines
Main Menu>Preprocessor>Move / Modify>Lines

Command(s):

GUI:

Main Menu>Preprocessor>Reflect>Lines

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:

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

Command(s):

GUI:

Main Menu>Preprocessor>Operate>Add>Lines

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:

5.2.4 Areas

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:

Command(s):

GUI:

Main Menu>Preprocessor>Create>Arbitrary>Through KPs

Command(s):

GUI:

Main Menu>Preprocessor>Create>Arbitrary>By Lines

Command(s):

GUI:

Main Menu>Preprocessor>Operate>Extrude / Sweep>Along Lines

Command(s):

GUI:

Main Menu>Preprocessor>Operate>Extrude / Sweep>About Axis

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.

Command(s):

GUI:

Main Menu>Preprocessor>Create>Arbitrary>By Skinning

Command(s):

GUI:

Main Menu>Preprocessor>Create>Arbitrary>By Offset

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:

Command(s):

GUI:

Main Menu>Preprocessor>Copy>Areas
Main Menu>Preprocessor>Move / Modify>Areas

Command(s):

GUI:

Main Menu>Preprocessor>Reflect>Areas

Command(s):

GUI:

Main Menu>Preprocessor>Move / Modify>Transfer Coord>Areas

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

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:

5.2.5 Volumes

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:

Command(s):

GUI:

Main Menu>Preprocessor>Create>Arbitrary>Through KPs

Command(s):

GUI:

Main Menu>Preprocessor>Create>Arbitrary>By Areas

Command(s):

GUI:

Main Menu>Preprocessor>Operate>Extrude / Sweep>Along Lines

Command(s):

GUI:

Main Menu>Preprocessor>Operate>Extrude / Sweep>About Axis

Command(s):

GUI:

Main Menu>Preprocessor>Operate>Extrude / Sweep>Along Normal

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:

Command(s):

GUI:

Main Menu>Preprocessor>-Modeling-Operate>Extrude / Sweep>Elem Ext Opts

Main Menu>Preprocessor>-Meshing-Mesh>-Volume Sweep-Sweep Opts

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.

Command(s):

GUI:

Main Menu>Preprocessor>Copy>Volumes
Main Menu>Preprocessor>Move / Modify>Volumes

Command(s):

GUI:

Main Menu>Preprocessor>Reflect>Volumes

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:

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:

Command(s):

GUI:

Main Menu>Preprocessor>Create>Rectangle>By Dimensions

Command(s):

GUI:

Main Menu>Preprocessor>Create>Rectangle>By 2 Corners

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:

Command(s):

GUI:

Main Menu>Preprocessor>Create>Circle>By Dimensions

Command(s):

GUI:

Main Menu>Preprocessor>Create>Circle>Annulus
Main Menu>Preprocessor>Create>Circle>Partial Annulus
Main Menu>Preprocessor>Create>Circle>Solid Circle

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:

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

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:

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:

Command(s):

GUI:

Main Menu>Preprocessor>Create>Block>By Dimensions

Command(s):

GUI:

Main Menu>Preprocessor>Create>Block>By 2 Corners & Z

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):

Command(s):

GUI:

Main Menu>Preprocessor>Create>Cylinder>By Dimensions

Command(s):

GUI:

Main Menu>Preprocessor>Create>Cylinder>Hollow Cylinder
Main Menu>Preprocessor>Create>Cylinder>Partial Cylinder
Main Menu>Preprocessor>Create>Cylinder>Solid Cylinder

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:

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

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:

Command(s):

GUI:

Main Menu>Preprocessor>Create>Sphere>By Dimensions

Command(s):

GUI:

Main Menu>Preprocessor>Create>Sphere>Hollow Sphere
Main Menu>Preprocessor>Create>Sphere>Solid Sphere

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:

Command(s):

GUI:

Main Menu>Preprocessor>Create>Cone>By Dimensions

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.

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:

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".


5.4.4 Intersect

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:

Command(s):

GUI:

Main Menu>Preprocessor>Operate>Intersect>-Common-Lines

Command(s):

GUI:

Main Menu>Preprocessor>Operate>Intersect>-Common-Areas

Command(s):

GUI:

Main Menu>Preprocessor>Operate>Intersect>-Common-Volumes

Command(s):

GUI:

Main Menu>Preprocessor>Operate>Intersect>Line with Area

Command(s):

GUI:

Main Menu>Preprocessor>Operate>Intersect>Area with 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:

Command(s):

GUI:

Main Menu>Preprocessor>Operate>Intersect>-Pairwise-Lines

Command(s):

GUI:

Main Menu>Preprocessor>Operate>Intersect>-Pairwise-Areas

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)

5.4.6 Add

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:

Command(s):

GUI:

Main Menu>Preprocessor>Operate>Add>Areas

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)

5.4.7 Subtract

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:

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

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

Command(s):

GUI:

Main Menu>Preprocessor>Operate>Subtract>Volumes
Main Menu>Preprocessor>Operate>Subtract>With Options>Volumes

Command(s):

GUI:

Main Menu>Preprocessor>Operate>Divide>Line by Area
Main Menu>Preprocessor>Operate>Divide>With Options>Line by Area

Command(s):

GUI:

Main Menu>Preprocessor>Operate>Divide>Line by Volume
Main Menu>Preprocessor>Operate>Divide>With Options>Line by Volume

Command(s):

GUI:

Main Menu>Preprocessor>Operate>Divide>Area by Volume
Main Menu>Preprocessor>Operate>Divide>With Options>Area by Volume

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.

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:

Command(s):

GUI:

Main Menu>Preprocessor>Operate>Divide>Line by WrkPlane
Main Menu>Preprocessor>Operate>Divide>With Options>Line by WrkPlane

Command(s):

GUI:

Main Menu>Preprocessor>Operate>Divide>Area by WrkPlane
Main Menu>Preprocessor>Operate>Divide>With Options>Area by WrkPlane

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)

5.4.9 Classify

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)

5.4.10 Overlap

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)

5.4.11 Partition

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:

Command(s):

GUI:

Main Menu>Preprocessor>Operate>Glue>Lines

Command(s):

GUI:

Main Menu>Preprocessor>Operate>Glue>Areas

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.

Command(s):

GUI:

Main Menu>Preprocessor>Operate>Extrude / Sweep>Along Lines

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.

Command(s):

GUI:

Main Menu>Preprocessor>Operate>Extrude / Sweep>By XYZ Offset

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:

Command(s):

GUI:

Main Menu>Preprocessor>Copy>Keypoints

Command(s):

GUI:

Main Menu>Preprocessor>Copy>Lines
Main Menu>Preprocessor>Move / Modify>Lines

Command(s):

GUI:

Main Menu>Preprocessor>Copy>Areas
Main Menu>Preprocessor>Move / Modify>Areas

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:

Command(s):

GUI:

Main Menu>Preprocessor>Reflect>Keypoints

Command(s):

GUI:

Main Menu>Preprocessor>Reflect>Lines

Command(s):

GUI:

Main Menu>Preprocessor>Reflect>Areas

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:

Command(s):

GUI:

Main Menu>Preprocessor>Move / Modify>Transfer Coord>Keypoints

Command(s):

GUI:

Main Menu>Preprocessor>Move / Modify>Transfer Coord>Lines

Command(s):

GUI:

Main Menu>Preprocessor>Move / Modify>Transfer Coord>Areas

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.

Command(s):

GUI:

Main Menu>Preprocessor>Operate>Scale>Keypoints

Command(s):

GUI:

Main Menu>Preprocessor>Operate>Scale>Lines

Command(s):

GUI:

Main Menu>Preprocessor>Operate>Scale>Areas

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:

Command(s):

GUI:

Main Menu>Preprocessor>Loads>Operate>All Solid Lds
Main Menu>Solution>Operate>All Solid Lds

Command(s):

GUI:

Main Menu>Preprocessor>Loads>Operate>Body Loads
Main Menu>Solution>Operate>Body Loads

Command(s):

GUI:

Main Menu>Preprocessor>Loads>Operate>Constraints
Main Menu>Solution>Operate>Constraints

Command(s):

GUI:

Main Menu>Preprocessor>Loads>Operate>Forces
Main Menu>Solution>Operate>Forces

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:

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).

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.

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:

Command(s):

GUI:

Utility Menu>List>Loads>Solid Model Loads

Command(s):

GUI:

Utility Menu>List>Loads>Body Loads>On All Keypoints
Utility Menu>List>Loads>Body Loads>On Picked KPs

Command(s):

GUI:

Utility Menu>List>Loads>DOF Constraints>On All Keypoints
Utility Menu>List>Loads>DOF Constraints>On Picked KPs

Command(s):

GUI:

Utility Menu>List>Loads>DOF Constraints>On All Lines
Utility Menu>List>Loads>DOF Constraints>On Picked Lines

Command(s):

GUI:

Utility Menu>List>Loads>DOF Constraints>On All Areas
Utility Menu>List>Loads>DOF Constraints>On Picked Areas

Command(s):

GUI:

Utility Menu>List>Loads>Forces>On All Keypoints
Utility Menu>List>Loads>Forces>On Picked KPs

Command(s):

GUI:

Utility Menu>List>Loads>Surface Loads>On All Lines
Utility Menu>List>Loads>Surface Loads>On Picked Lines

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.

Command(s):

GUI:

Main Menu>Preprocessor>Operate>Calc Geom Items>Of Keypoints

Command(s):

GUI:

Main Menu>Preprocessor>Operate>Calc Geom Items>Of Lines

Command(s):

GUI:

Main Menu>Preprocessor>Operate>Calc Geom Items>Of Areas

Command(s):

GUI:

Main Menu>Preprocessor>Operate>Calc Geom Items>Of Volumes

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.

5.10.2.1 Degeneracies

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).

Command(s):

GUI:

Main Menu>Preprocessor>Operate>Show Degeneracy>Plot Degen Areas

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:

Command(s):

GUI:

Main Menu>Preprocessor>Operate>Show Degeneracy>List Degen Areas

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

5.10.4.1 Discontinuities

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:

Figure 5-70 Decompose a single operation into a series of operations

Figure 5-71 Change the order of a series of operations

Command(s):

GUI:

Main Menu>Preprocessor>Operate>Settings

5.10.6 Other Hints

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.

5.10.6.6 Don't Forget to SAVE

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