Design ModuleUsers Guide
C o n t a c t I n f o r m a t i o n
yVisit the Contact COMSOL page at www.comsol.com/contact to submit general inquiries, contact Technical Support, or search for an address and phone number. You can also visit the Worldwide Sales Offices page at www.comsol.com/contact/offices for address and contact information.
If you need to contact Support, an online request form is located at the COMSOL Access page at www.comsol.com/support/case.
Other useful links include:
Support Center: www.comsol.com/support
Product Download: www.comsol.com/product-download
Product Updates: www.comsol.com/support/updates
Discussion Forum: www.comsol.com/community
Events: www.comsol.com/events
COMSOL Video Gallery: www.comsol.com/video
Support Knowledge Base: www.comsol.com/support/knowledgebase
Part No. CM024001
D e s i g n M o d u l e U s e r s G u i d e 20052014 COMSOL
Protected by U.S. Patents listed on www.comsol.com/patents, and U.S. Patents 7,519,518; 7,596,474; 7,623,991; and 8,457,932. Patents pending.
This Documentation and the Programs described herein are furnished under the COMSOL Software License Agreement (www.comsol.com/comsol-license-agreement) and may be used or copied only under the terms of the license agreement. Portions of this software are owned by Siemens Product Lifecycle Management Software Inc. 19862014. All Rights Reserved. Portions of this software are owned by Spatial Corp. 19892014. All Rights Reserved.
COMSOL, COMSOL Multiphysics, Capture the Concept, COMSOL Desktop, and LiveLink are either registered trademarks or trademarks of COMSOL AB. ACIS and SAT are registered trademarks of Spatial Corporation. CATIA is a registered trademark of Dassault Systmes or its subsidiaries in the US and/or other countries. Parasolid is a trademark or registered trademark of Siemens Product Lifecycle Management Software Inc. or its subsidiaries in the United States and in other countries. All other trademarks are the property of their respective owners, and COMSOL AB and its subsidiaries and products are not affiliated with, endorsed by, sponsored by, or supported by those or the above non-COMSOL trademark owners. For a list of such trademark owners, see www.comsol.com/trademarks.
Version: October 2014 COMSOL 5.0
N T E N T S | 3
C o n t e n t s
C h a p t e r 1 : I n t r o d u c t i o n
About this Guide 6
About this Product . . . . . . . . . . . . . . . . . . . . . . 6
Where Do I Access the Documentation and Model Libraries? . . . . . . 6
C h a p t e r 2 : D e s i g n F u n c t i o n a l i t yC O
Functionality Overview 12
Available Geometry Operations . . . . . . . . . . . . . . . . . 12
Importing Files. . . . . . . . . . . . . . . . . . . . . . . . 13
Defeaturing and Repair . . . . . . . . . . . . . . . . . . . . 13
Creating CAD Objects . . . . . . . . . . . . . . . . . . . . 13
Converting Objects to COMSOL Geometry Kernel Representation . . . 14
Converting Objects to Parasolid Geometry Kernel Representation . . . 14
Creating Lofted Surfaces . . . . . . . . . . . . . . . . . . . . 15
Exporting Objects to CAD Formats . . . . . . . . . . . . . . . 15
Defeaturing Tools 16
Finding and Deleting Small Details . . . . . . . . . . . . . . . . 16
Delete Faces . . . . . . . . . . . . . . . . . . . . . . . . 17
Detach Faces . . . . . . . . . . . . . . . . . . . . . . . . 17
Geometry Operations 18
Cap Faces . . . . . . . . . . . . . . . . . . . . . . . . . 18
Chamfer . . . . . . . . . . . . . . . . . . . . . . . . . . 19
Convert to COMSOL . . . . . . . . . . . . . . . . . . . . . 20
Delete Faces . . . . . . . . . . . . . . . . . . . . . . . . 20
Delete Fillets . . . . . . . . . . . . . . . . . . . . . . . . 20
Delete Short Edges . . . . . . . . . . . . . . . . . . . . . . 21
Delete Sliver Faces . . . . . . . . . . . . . . . . . . . . . . 21
Delete Small Faces . . . . . . . . . . . . . . . . . . . . . . 21
4 | C O N T E N T S
Delete Spikes . . . . . . . . . . . . . . . . . . . . . . . . 22
Detach Faces . . . . . . . . . . . . . . . . . . . . . . . . 22
Fillet . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
Import . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
Knit to Solid . . . . . . . . . . . . . . . . . . . . . . . . 27
Loft . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
Midsurface . . . . . . . . . . . . . . . . . . . . . . . . . 31
Repair . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
Thicken . . . . . . . . . . . . . . . . . . . . . . . . . . 33
C h a p t e r 3 : P r o g r a m m i n g a n d C o m m a n d R e f e r e n c eDefeaturing Tools 36
Defeaturing ToolsFinding and Deleting Small Details. . . . . . . . . 36
Defeaturing ToolsDelete Faces. . . . . . . . . . . . . . . . . 39
Defeaturing ToolsDetach Faces . . . . . . . . . . . . . . . . 39
Summary of Commands 40
Commands Grouped by Function 41
Compatibility 43
5
1I n t r o d u c t i o n
Welcome to the Design Module! This Users Guide details features and functionality available with the product. For example, you can read about how to create and modify geometry, how to import 3D CAD files, and how to use the automatic or interactive tools for repair and defeaturing to prepare your geometry for meshing.
This introductory chapter is About this Guide.
6 | C H A P T E R 1 : I N T R
Abou t t h i s Gu i d e
This documentation covers the Design Module.
About this Product
Functionality included with the Design Module enables creating and modifying gofrfuo
TACCyo
Fdfebfl
W
AlicoDO D U C T I O N
eometry, for example by applying fillets and chamfers to 3D objects. The loft peration can generate 3D surfaces based on cross sectional profiles, which could come om an MRI scan, or could be the faces of existing geometry objects. Further nctionality such as the midsurface and thicken allows for converting a thin solid
bject into a surface, or the other way around.
he import capabilities cover the most common 3D CAD file formats: Parasolid, CIS, AutoCAD, IGES, STEP, SOLIDWORKS, Inventor, NX, PTC reo Parametric, and PTC Pro/ENGINEER. In addition, support for ATIA V5 is available as a separate add-on. To exchange data with CAD packages, u can export your geometry to the ACIS or Parasolid file formats.
inally, the product provides a wide range of tools for you to prepare an imported 3D esign for meshing and analysis. You can interactively search for and remove small atures, for example, fillets, slivers, small faces and edges. You can also modify objects y detaching a portion to form an additional computational domain, or by creating a uid domain for computation, in case the CAD design only includes the solid parts.
here Do I Access the Documentation and Model Libraries?
number of Internet resources provide more information about COMSOL, including censing and technical information. The electronic documentation, topic-based (or ntext-based) help, and the Model Libraries are all accessed through the COMSOL esktop.
If you are reading the documentation as a PDF file on your computer, the blue links do not work to open a model or content referenced in a different guide. However, if you are using the Help system in COMSOL Multiphysics, these links work to other modules (as long as you have a license), model examples, and documentation sets.
D E | 7
T H E D O C U M E N T A T I O N A N D O N L I N E H E L P
The COMSOL Multiphysics Reference Manual describes all core physics interfaces and functionality included with the COMSOL Multiphysics license. This book also has instructions about how to use COMSOL and how to access the electronic Documentation and Help content.
Opening Topic-Based HelpThe Help window is useful as it is connected to many of the features on the GUI. To lehidiby
OA B O U T T H I S G U I
arn more about a node in the Model Builder, or a window on the Desktop, click to ghlight a node or window, then press F1 to open the Help window, which then splays information about that feature (or click a node in the Model Builder followed the Help button ( ). This is called topic-based (or context) help.
pening the Documentation Window
To open the Help window:
In the Model Builder, click a node or window and then press F1.
On any toolbar (for example, Model, Definitions, or Geometry), hover the mouse over a button (for example, Browse Materials or Build All) and then press F1.
From the File menu, click Help ( ).
In the upper-right corner of the COMSOL Desktop, click the ( ) button.
To open the Help window:
In the Model Builder, click a node or window and then press F1.
On the main toolbar, click the Help ( ) button.
From the main menu, select Help>Help.
To open the Documentation window:
Press Ctrl+F1.
From the File menu select Help>Documentation ( ).
8 | C H A P T E R 1 : I N T R
T H E M O D E L L I B R A R I E S W I N D O W
Estasinapp
OuoP
OT
To open the Documentation window:
Press Ctrl+F1.
On the main toolbar, click the Documentation ( ) button.
From the main menu, select Help>Documentation.O D U C T I O N
ach model includes documentation that has the theoretical background and ep-by-step instructions to create the model. The models are available in COMSOL MPH-files that you can open for further investigation. You can use the step-by-step structions and the actual models as a template for your own modeling and plications. In most models, SI units are used to describe the relevant properties,
arameters, and dimensions in most examples, but other unit systems are available.
nce the Model Libraries window is opened, you can search by model name or browse nder a module folder name. Click to highlight any model of interest and a summary f the model and its properties is displayed, including options to open the model or a DF document.
pening the Model Libraries Windowo open the Model Libraries window ( ):
The Model Libraries Window in the COMSOL Multiphysics Reference Manual.
From the Model toolbar, click ( ) Model Libraries.
From the File menu select Model Libraries.
To include the latest versions of model examples, from the File>Help menu, select ( ) Update COMSOL Model Library.
On the main toolbar, click the Model Libraries button.
From the main menu, select Windows>Model Libraries.
To include the latest versions of model examples, from the Help menu select ( ) Update COMSOL Model Library.
D E | 9
C O N T A C T I N G C O M S O L B Y E M A I L
For general product information, contact COMSOL at [email protected].
To receive technical support from COMSOL for the COMSOL products, please contact your local COMSOL representative or send your questions to [email protected]. An automatic notification and case number is sent to you by email.
C O M S O L WE B S I T E S
C
C
S
P
P
D
E
C
SA B O U T T H I S G U I
OMSOL website www.comsol.com
ontact COMSOL www.comsol.com/contact
upport Center www.comsol.com/support
roduct Download www.comsol.com/support/download
roduct Updates www.comsol.com/support/updates
iscussion Forum www.comsol.com/community
vents www.comsol.com/events
OMSOL Video Gallery www.comsol.com/video
upport Knowledge Base www.comsol.com/support/knowledgebase
10 | C H A P T E R 1 : I N T R O D U C T I O N
11
2D e s i g n F u n c t i o n a l i t y
This section describes the tools and geometry operations available for creating, importing, and modifying 3D CAD data in the Design Module.
In this section:
Functionality Overview
Defeaturing Tools
Geometry Operations
12 | C H A P T E R 2 : D E S
Fun c t i o n a l i t y Ov e r v i ew
This section includes these topics:
Available Geometry Operations
Importing Files
Defeaturing and Repair
A
ToTkL
Tooap
TA
N
C
C
C
D
D
D
DI G N F U N C T I O N A L I T Y
Creating CAD Objects
Converting Objects to COMSOL Geometry Kernel Representation
Converting Objects to Parasolid Geometry Kernel Representation
Creating Lofted Surfaces
Exporting Objects to CAD Formats
vailable Geometry Operations
he Design Module provides a number of tools for generating and importing 3D bjects from CAD files, repairing and removing details, and modifying geometry. here is also the possibility to draw objects represented using the Parasolid geometry ernel, which is utilized by the Design Module, CAD Import Module, and all iveLink products for CAD packages.
he geometry operations can only be applied on CAD objectsthat is, geometry bjects represented using the Parasolid geometry kernel. However, you can convert bjects from the COMSOL kernel representation to CAD objects, for example by plying a Union or Convert to Solid operation on the object.
BLE 2-1: AVAILABLE GEOMETRY OPERATIONS
AME DESCRIPTION
ap Faces Add faces to fill holes or partition objects
hamfer Create a bevel on selected edges
onvert to COMSOL Convert to the COMSOL geometry kernel representation
elete Faces Delete and replace faces
elete Fillets Delete fillets
elete Short Edges Delete short edges
elete Sliver Faces Delete sliver faces
W | 13
Im
Uar
D
TT
T
T
C
BthtoSe
Delete Small Faces Delete small faces
Delete Spikes Delete spikes from faces
Detach Faces Detach faces and form a new object from them
Fillet Create rounds on selected edges
Import Import 3D CAD file
K
L
M
R
T
TABLE 2-1: AVAILABLE GEOMETRY OPERATIONS
NAME DESCRIPTIONF U N C T I O N A L I T Y O V E R V I E
porting Files
se the Import feature to import 3D CAD files. By default, small details and defects e automatically removed and the software tries to knit surface objects to form solids.
efeaturing and Repair
o find and delete small details in the imported objects, use the defeaturing tools. hese can also be used to delete or detach larger faces.
o more automatically remove small details and repair defects, use the Repair feature.
o knit surface objects to form solids, use the Knit to Solid feature.
reating CAD Objects
y default, the software uses the geometry kernel of the Design Module. This means at the geometry you draw is represented using the Parasolid kernel. If you would like use the COMSOL kernel instead, you can click the Geometry node to open the ttings window. Change Geometry representation to COMSOL kernel.
nit to Solid Knit surface object to form solid or surface object
oft Create a lofted surface through a set of profile curves
idsurface Generate midsurfaces for selected solid objects
epair Repair and removal of small details
hicken Create a solid by offsetting selected surfaces
To access these geometry operations, you need to use the CAD Import Module kernel for the geometry representation, which you can specify in the Preferences dialog box and in the Settings window for Geometry.
14 | C H A P T E R 2 : D E S
The 3D operations and primitives listed in Table 2-2 do not support the geometry kernel of the Design Module they always use the COMSOL geometry kernel. However, an automatic conversion is performed for these primitives before they are used in Boolean operations, see Converting Objects to Parasolid Geometry Kernel Representation.
C
Tu
C
IfM
pthoab
Ain
Ifpifan
TABLE 2-2: 3D OPERATIONS AND PRIMITIVES THAT DO NOT SUPPORT THE PARASOLID GEOMETRY KERNEL
FEATURE NAME FEATURE NAME
B
E
E
H
H
In
P
PI G N F U N C T I O N A L I T Y
onverting Objects to COMSOL Geometry Kernel Representation
o convert CAD objects to objects represented using the COMSOL geometry kernel, se the Convert to COMSOL feature node.
onverting Objects to Parasolid Geometry Kernel Representation
the current geometry representation for the geometry sequence is CAD Import odule kernel, an automatic conversion of COMSOL objects to CAD objects takes lace before using the objects in Boolean operations and before using the objects in e Convert to Solid, Convert to Surface, Convert to Curve, and Convert to Point
perations. This ensures that the CAD Import Module kernel is used in the ove-mentioned operations.
n automatic conversion to CAD object is also performed before exporting geometry the ACIS and Parasolid file formats.
the automatic conversion cannot be performed, the geometry operation is erformed by the COMSOL geometry kernel. The conversion cannot be performed there is an edge adjacent to three or more isolated faces, or if a face is bounded by edge loop that intersects itself.
ezier Polygon Point
ccentric Cone Polygon
xtrude Pyramid
elix Revolve
exahedron Sweep
terpolation Curve Tetrahedron
arametric Curve Torus
arametric Surface Work Plane
W | 15
The automatic conversion to CAD representation is not performed if one of the input objects to the Boolean or conversion operation is the result of a previous Convert to COMSOL operation.
Creating Lofted Surfaces
Use the Loft operation, located on the Geometry toolbar, to create a surface from a sequence of input profiles and guide curves. You can for example generate a lofted sufaob
E
TP
Tthte
th
CF U N C T I O N A L I T Y O V E R V I E
rface from MRI data in the form of a sequence of cross sections, or based on the end ces of existing 3D objects, in which case the lofted surfaces is going to connect these jects.
xporting Objects to CAD Formats
he CAD Import Module and LiveLink products for CAD packages add ACIS and arasolid to the list of supported formats for geometry export.
o export a geometry object right-click the Geometry node and select Export to File. In e File type list, select Parasolid binary file, Parasolid text file, ACIS binary file, or ACIS xt file. Use the Browse... button to choose the filename, then click Save. Finally, click e Export button.
OMSOL objects are automatically converted to CAD objects before saving the file.
The Parasolid binary and text formats do not allow coordinate values larger than 500. Therefore you might have to change the export unit in the Length unit list box to be able to export the geometry.
For details on which objects can be converted to CAD objects see Converting Objects to Parasolid Geometry Kernel Representation.
16 | C H A P T E R 2 : D E S
De f e a t u r i n g T oo l s
This section describes the defeaturing tools for removing small details from imported 3D CAD geometry. To access these features, from the Geometry toolbar, Defeaturing and Repair menu, select Delete Fillets, Delete Short Edges, Delete Sliver Faces, Delete Small Faces, Delete Spikes, Delete Faces, or Detach Faces from the submenu. You can also right-click the Geometry node and select the same options from the context menu.
Wclthap
In
F
YFa
dclwed
mofoinooI G N F U N C T I O N A L I T Y
hen you are on a defeaturing page, you can switch to another defeaturing tool by icking one of the corresponding buttons at the top of the page. Upon completion of e defeaturing operation a corresponding feature node, which you can modify, pears in the geometry sequence.
this section:
Finding and Deleting Small Details
Delete Faces
Detach Faces
inding and Deleting Small Details
ou can use any of the Delete Fillets ( ), Delete Short Edges ( ), Delete Sliver ces ( ), Delete Small Faces ( ), and Delete Spikes ( ) pages to search for and
elete details smaller than a given size. First activate the Input objects selection by icking the Active button to toggle between and . Select the objects you ant to examine in the Graphics window. In the field Maximum fillet radius, Maximum ge length, Maximum face width, Maximum face size, or Maximum spike width, enter the aximum size of the details you want to delete. When you click the Find button, a list
f details that are smaller than the given size are shown in the list below. To delete the und details, either click the Delete All button, or select a subset of the found details the list and click Delete Selected. Then, the selected details are deleted from their bjects, and a node corresponding to this operation is added to the geometry branch f the model tree.
The defeaturing tools can only be applied to objects that are represented by the Parasolid geometry kernel, also called CAD objects.
S | 17
If you want to modify the performed deletion operation, you can select the added node in the geometry branch. Then, edit the nodes form that appears in the Settings window. Click the Build Selected button ( ) to see the result of your edits.
Delete Faces
The Delete Faces ( ) page is used to delete faces and replace them either with a new face (if Heal method is Fill) or a by growing or shrinking the adjacent faces (if Heal m
apseSe
op
Ifinw
D
Tfow
Tobfa
Tfawanor
WadIfgethD E F E A T U R I N G TO O L
ethod is Patch). Select the faces you want to delete in the Graphics window. They pear in the Faces to delete list. Select the Heal as through hole check box if you have lected faces that make up a hole that you want to delete. When you click the Delete lected button, the selected faces are deleted, and a node corresponding to this eration is added to the geometry branch of the model tree.
you want to modify the performed deletion operation, you can select the added node the geometry branch. Then, edit the nodes form that appears in the Settings indow. Click the Build Selected button ( ) to see the result of your edits.
etach Faces
he Detach Faces ( ) page is used to detach faces from a solid object (the parent) to rm a new solid object (the child). Select the faces you want to detach in the Graphics indow. They appear in the Faces to detach list.
he Parent heal method list determines how to replace the detached faces in the parent ject: Fill means that a new face is constructed, and Patch means that the adjacent
ces are grown or shrunk to heal the wound.
he Child heal method list controls how to construct the child solid from the detached ces: Fill means that a new face is formed based on the surrounding edges of each ound, Patch from child means that the detached faces grow or shrink to form a solid, d Patch from parent means that the parent faces surrounding the detached faces grow shrink to form a solid together with the detached faces.
hen you click the Detach Selected button, the program detaches the selected faces and ds a node corresponding to this operation to the geometry branch of the model tree.
you want to modify the performed detach operation, select the added node in the ometry branch. Then edit the nodes form that appears in the Settings window. Click e Build Selected button ( ) to see the result of your edits.
18 | C H A P T E R 2 : D E S
Geome t r y Ope r a t i o n s
In this section:
C
YthpD
ar
AjothedcaininbIfu
Cap Faces
Chamfer
Detach Faces
FilletI G N F U N C T I O N A L I T Y
ap Faces
ou can add cap faces to fill holes in a geometry (for example, to make a domain for e void inside a cylinder geometry for simulating fluid flow inside the cylinder) or to
artition the geometry. To add cap faces to objects, from the Geometry toolbar, efeaturing and Repair menu, select Cap Faces ( ). Then select edges that form loops ound the faces you want to create. The edges display in the Bounding edges list.
cap face is created for each loop of edges in the input selection. The cap faces are ined with the original objects. If new closed volumes are created by the cap faces, ese are converted to solid domains. The selected edges can contain more than one ge loop, but no two loops can have edges or vertices in common. The selected edges n contain edges from more than one object. In this case, each object is processed dividually. This means that two edges or vertices can overlap as long as they are not the same object. It also means that if new closed volumes are created, but bounded y faces from more than one object, these volumes are not converted to solid domains. you want to perform a Cap Faces operation involving more than one object, first nite the objects using a Union operation.
Convert to COMSOL
Delete Faces
Delete Fillets
Delete Short Edges
Delete Sliver Faces
Delete Small Faces
Delete Spikes
Import
Knit to Solid
Loft
Midsurface
Repair
Thicken
S | 19
Chamfer
To chamfer edges in 3D geometry objects, on the Geometry toolbar, click Chamfer ( ) You can also right-click the Geometry node to add this node from the context menu.
E
Seinabno
Cse
R
Eofch
O
Se
G E O M E T R Y O P E R A T I O N
D G E S
lect the edges that you want to chamfer in the Graphics window. They then appear the Edges to chamfer list. If the geometry sequence includes user-defined selections ove the Chamfer node, choose Manual to select edges, or choose one of the selection des from the list next to Edges to chamfer.
lick the Active button to toggle between turning ON and OFF the Edges to chamfer lections.
A D I U S
nter the Radius of the chamfer. The size of the chamfer is determined by rolling a ball the given radius so that it is tangent to the faces that are adjacent to the edge. The amfer surface is generated by the line segment that connects the points of tangency.
P T I O N S
lect or clear the following check boxes as required.
If the Propagate to tangent edges check box is selected, the chamfer is propagated to edges that have continuous tangent to the edges selected in Edges to chamfer.
If the Preserve overlapped entities check box is selected, geometric features such as holes and bosses on faces that are overlapped by the chamfer surface are preserved.
Select the Y-shaped chamfer check box to get a y-shaped chamfer at a vertex where three or more edges meet and there are two chamfer surfaces of different convexity. In some cases, using this option is necessary for the operation to succeed.
20 | C H A P T E R 2 : D E S
S E L E C T I O N S O F R E S U L T I N G E N T I T I E S
Select the Create selections check box to create predefined selections for all entities (all or some of domains, boundaries, edges, and points) that the resulting geometric object consists of. These selections are available in all applicable selection lists but do not appear as separate selection nodes in the model tree. If you want to make the selections contribute to a cumulative selection, select a cumulative selection from the Contribute to list, or click the New button to create a new cumulative selection (see Cumulative Selections in the COMSOL Multiphysics Reference Manual).
C
TbG
gin
D
Tmdco
Insearshfa
D
TmDmg
InMI G N F U N C T I O N A L I T Y
onvert to COMSOL
o convert geometry objects represented using the Parasolid geometry kernel, used y the Design Module, to COMSOL geometry kernel representation, from the eometry toolbar, Conversions menu, select Convert to COMSOL ( ). Then select the eometry objects that you want to convert in the Graphics window. The objects display the Input objects list.
elete Faces
o delete and replace faces from an object, from the Geometry toolbar, CAD Defeaturing enu, select Delete Faces ( ). This opens the Delete Faces window. When the eletion operation has been performed, you can modify it by editing the rresponding Delete Faces node that appears in the geometry branch by clicking it.
the Faces to delete list, select the faces you want to delete. In the Heal method list, lect the method to use for replacing the deleted faces: Fill means that the deleted faces e replaced with a new face, while Patch means that the adjacent faces are grown or runk to heal the wound. Select the Heal as through hole check box if you have selected ces that make up a hole that you want to delete.
elete Fillets
o delete fillets from an object, from the Geometry toolbar, Defeaturing and Repair enu, select Delete Fillets ( ). This opens the Delete Fillets window, see Finding and eleting Small Details. When the deletion operation has been performed, you can odify it by editing the corresponding Delete Fillets node that appears in the
eometry branch by clicking it.
the Input objects list, select the objects you want to delete fillets from. In the field aximum fillet radius, enter the maximum size of the fillets you want to delete. When
S | 21
you click the Find Fillets button, a list of fillets with radius smaller that the given value is shown in the Fillet selection list. If Deletion type is All fillets, all such fillets are deleted. You can delete a subset of these fillets by clicking in the Fillet selection list, and choosing Selected fillets in the Deletion type list.
Delete Short Edges
To delete short edges from an object, from the Geometry toolbar, Defeaturing and Re
sepeth
InfieWgialed
D
TmFyoin
InfieWgialfa
D
TmFG E O M E T R Y O P E R A T I O N
pair menu, select Delete Short Edges ( ). This opens the Delete Short Edges window, e Finding and Deleting Small Details. When the deletion operation has been rformed, you can modify it by editing the corresponding Delete Short Edges node at appears in the geometry branch by clicking it.
the Input objects list, select the objects you want to delete short edges from. In the ld Maximum edge length, enter the maximum length of the edges you want to delete. hen you click the Find Short Edges button, a list of edges with length smaller that the ven value is shown in the Short edge selection list. If Deletion type is All short edges, l such edges are deleted. You can delete a subset of these edges by clicking in the Short ge selection list, and choosing Selected short edges in the Deletion type list.
elete Sliver Faces
o delete sliver faces from an object, from the Geometry toolbar, Defeaturing and Repair enu, select Delete Sliver Faces ( ). This opens the Delete Sliver Faces window, see inding and Deleting Small Details. When the deletion operation has been performed, u can modify it by editing the corresponding Delete Sliver Faces node that appears the geometry branch by clicking it.
the Input objects list, select the objects you want to delete sliver faces from. In the ld Maximum face width, enter the maximum width of the faces you want to delete. hen you click the Find Sliver Faces button, a list of faces with width smaller that the ven value are shown in the Sliver faces selection list. If Deletion type is All sliver faces, l such faces are deleted. You can delete a subset of these faces by clicking in the Sliver ce selection list, and choosing Selected sliver faces in the Deletion type list.
elete Small Faces
o delete small faces from an object, from the Geometry toolbar, Defeaturing and Repair enu, select Delete Small Faces ( ). This opens the Delete Small Faces window, see inding and Deleting Small Details. When the deletion operation has been performed,
22 | C H A P T E R 2 : D E S
you can modify it by editing the corresponding Delete Small Faces node that appears in the geometry branch by clicking it.
In the Input objects list, select the objects you want to delete small faces from. In the field Maximum face size, enter the maximum diameter of the faces you want to delete. When you click the Find Small Faces button, a list of faces with diameter smaller that the given value appears in the Small faces selection list. If Deletion type is All small faces, all such faces are deleted. You can delete a subset of these faces by clicking in the Small fa
D
Aoan
Fyog
InM
Wvaaran
D
TthDmb
Sto
TofaI G N F U N C T I O N A L I T Y
ce selection list, and choosing Selected small faces in the Deletion type list.
elete Spikes
spike is a long and narrow protrusion on an edge or corner of a face defined by two r three edges. To delete spikes from an object, from the Geometry toolbar, Defeaturing d Repair menu, select Delete Spikes ( ). This opens the Delete Spikes window, see
inding and Deleting Small Details. When the deletion operation has been performed, u can modify it by editing the corresponding Delete Spikes node that appears in the
eometry branch by clicking it.
the Input objects list, select the objects you want to delete spikes from. In the field aximum spike width, enter the maximum width of the spikes you want to delete. hen you click the Find Spikes button, a list of spikes with width smaller that the given lue are shown in the Spike selection list. If Deletion type is All spikes, all such spikes e deleted. You can delete a subset of these spikes by clicking in the Spike selection list, d choosing Selected spikes in the Deletion type list.
etach Faces
o detach faces from an object (the parent) and form a new object (the child), from e Geometry toolbar, Defeaturing and Repair menu, select Detach Faces. This opens the etach Faces window. When the detach operation has been performed, you can odify it by editing the corresponding Detach Faces node that appears in the geometry
ranch by clicking it.
elect the faces you want to detach in the Graphics window. They appear in the Faces detach list.
he Parent heal method list determines how to replace the detached faces in the parent bject: Fill means that a new face is constructed, and Patch means that the adjacent ces grow or shrink to heal the wound.
S | 23
The Child heal method list controls how to construct the child solid from the detached faces: Fill means that a new face is formed based on the surrounding edges of each wound, Patch from child means that the detached faces are grown or shrunk to form a solid, and Patch from parent means that the parent faces surrounding the detached faces are grown or shrunk to form a solid together with the detached faces.
Fillet
Tca
Tneexrobata
Wfa
IfthG E O M E T R Y O P E R A T I O N
o fillet edges in 3D geometry objects, on the Geometry toolbar, click Fillet ( ). You n also right click the Geometry node and add this node from the context menu.
he objects containing the selected edges must have manifold topology in the ighborhood of the selected edges. In particular, each edge must be adjacent to actly two faces. When you build the feature, these adjacent faces are shrunk and a lling ball fillet face is inserted in between. The new surface is generated by rolling a ll of the given radius so that it is tangent to both faces. The fillet face is therefore ngent to both original faces.
hen more than two selected edges meet at a vertex, one or several additional patch ces are inserted at the vertex to get a smooth result.
the radius is large, it can happen that the fillet face overflows the original faces. In is case the fillet face meets other, more distant, faces in the object.
24 | C H A P T E R 2 : D E S
E D G E S
Select the edges that you want to fillet in the Graphics window. They then appear in the Edges to fillet list. If the geometry sequence includes user-defined selections above the Fillet node, choose Manual to select edges, or choose one of the selection nodes from the list next to Edges to fillet.
Click the Active button to toggle between turning ON and OFF the Edges to fillet selections.
R
Era
O
S
I G N F U N C T I O N A L I T Y
A D I U S
nter the Radius of the fillet. The fillet surface is generated by rolling a ball of the given dius so that it is tangent to the faces adjacent to the edge.
P T I O N S
elect or clear the following check boxes as required.
If the Propagate to tangent edges check box is selected, the fillet is propagated to edges that have continuous tangent to the edges selected in Edges to fillet.
If the Preserve overlapped entities check box is selected, geometric features such as holes and bosses on faces that are overlapped by the fillet surface are preserved.
S | 25
Select the Y-shaped fillet check box to get a y-shaped fillet at a vertex where three or more edges meet and there are two fillet surfaces of different convexity. In some cases, using this option is necessary for the operation to succeed.
S
Seorcoapcoto
Se
Im
Ttoac
I M
FalG E O M E T R Y O P E R A T I O N
Select the Fillet sharp edges at vertices check box to get a smooth fillet surface at vertices where two filleted edges intersect at an angle.
E L E C T I O N S O F R E S U L T I N G E N T I T I E S
lect the Create selections check box to create predefined selections for all entities (all some of domains, boundaries, edges, and points) that the resulting geometric object nsists of. These selections are available in all applicable selection lists but do not pear as separate selection nodes in the model tree. If you want to make the selections ntribute to a cumulative selection, select a cumulative selection from the Contribute list, or click the New button to create a new cumulative selection (see Cumulative lections in the COMSOL Multiphysics Reference Manual).
port
o import geometry objects from a 3D CAD file, from the Model or the Geometry olbar, click Import ( ). You can modify the properties of the import operation cording to the following sections.
P O R T
rom the Geometry import list you can choose what type of data to import. The ternatives Any importable file, Geometry sequence, and COMSOL Multiphysics file are
Y-shaped fillet selected
Y-shaped fillet cleared
26 | C H A P T E R 2 : D E S
always available. In addition, you have DXF file in 2D and STL/VRML file in 3D. The option 3D CAD file in 3D is available only if you have license for the CAD Import Module or a LiveLink product for a CAD package. For a general description of the Import operation, see Import in the COMSOL Multiphysics Reference Manual.
Specify the file name in the Filename field or click the Browse button. To import the file, click the Import button. If you have changed some property, the file is automatically re-imported when you click a build button. The CAD import supports th
NM
N
NMC
N
Nfi
TA
F
A
A
C
P
IG
In
In
N
P
P
S
SI G N F U N C T I O N A L I T Y
e following 3D CAD formats:
ote 1: This format requires a license for one of the CAD Import Module, or Design odule, or LiveLink product for a CAD package.
ote 2: Only supported on Windows.
ote 3: This format requires, in addition to the CAD Import Module, or Design odule, or a LiveLink product for a CAD package, a license for the File Import for ATIA V5 module.
ote 4: Only supported on Windows and Linux.
ote 5: Embedded parts in assemblies are not supported. To import such an assembly, rst convert the embedded parts to external parts.
BLE 2-3: SUPPORTED 3D CAD FILE FORMATS
ILE FORMAT NOTES FILE EXTENSIONS SUPPORTED VERSIONS
CIS 1 .sat, .sab up to R25
utoCAD 1, 2 .dwg, .dxf 2.5-2014
ATIA V5 2, 3 .CATPart, .CATProduct
R8 to R24
TC Creo Parametric 1 .prt, .asm 1.0, 2.0
ES 1 .igs, .iges up to 5.3
ventor assembly 1, 2 .iam 11, 2008-2015
ventor part 1, 2 .ipt 6 to 11, 2008-2015
X 1, 4 .prt up to 9
arasolid 1 .x_t, .x_b up to V26
TC Pro/ENGINEER 1 .prt, .asm 16 to Wildfire 5
OLIDWORKS 1, 2, 5 .sldprt, .sldasm 98-2014
TEP 1 .step, .stp AP203E1, AP214
S | 27
The imported geometry objects are represented in the Parasolid geometry kernel, which is used by CAD Import Module and the LiveLink products interfacing CAD packages.
In the Length unit list, select From CAD document to change the geometrys length unit to the unit in the file (if the file has a length unit). Select From COMSOL to keep the geometrys length unit and scale the objects in the file to the geometrys unit.
O B J E C T S T O I M P O R T
Sebo
I M
Bthkn
Timdi
Ifim
Ifan
Ifre
IffohadoEd
K
Tan
thG E O M E T R Y O P E R A T I O N
lect the types of objects to import using the Solids, Surfaces, Curves and points check xes.
P O R T O P T I O N S
y default, the software tries to knit together surface objects to form solids. To change is behavior, select Knit surfaces (which forms surface objects by knitting) or Do not it in the list.
he Absolute import tolerance is a length measured in the geometrys unit after the port. When importing CAD files, the program merges geometric entities with a
stance smaller that this tolerance.
you select the Check imported objects for errors check box, a warning appears if the ported objects contain errors.
you select the Repair imported objects check box, the software tries to repair defects d remove details smaller than the Absolute import tolerance.
you select the Remove redundant edges and vertices check box, the software tries to move redundant edges and vertices.
the objects to import contain edges or faces that have a periodic parameterization, r example a full-revolution cylindrical edge or face, such edges/faces are cut in two lves by inserting new vertices and edges. This is done because the mesh algorithms not support periodic entities. You can ignore such inserted edges using an Ignore ges feature from Virtual Operations.
nit to Solid
o knit surface objects to form solid objects, from the Geometry toolbar, Defeaturing d Repair menu, select Knit to Solid ( ). Then select the objects to knit together in e Graphics window. They appear in the Input objects list.
28 | C H A P T E R 2 : D E S
The knitting merges edges that have a distance smaller that the Absolute repair tolerance and deletes gaps and spikes smaller than the Absolute repair tolerance.
Loft
To create a lofted object from a set of profiles in 3D, on the Geometry toolbar, click Loft ( ). You can also right click the Geometry node and add this node from the context menu. Enter the properties of the loft operation according to the following se
Eblocltosupospal
Tthp
G
S
I G N F U N C T I O N A L I T Y
ctions.
ach profile is a chain or loop of edges, also called a profile curve. The profiles must e all open or all closed, and they can have different number of edges. The output is a ft surface, which consists of one or several faces that interpolate the profiles. In the osed curve case, a profile can optionally contain a set of faces (with manifold pology) that is bounded by the profile curve. These faces can be added to the loft rface to give the resulting object. The start and end profiles can degenerate to a
oint. Also, in the closed profile case, the start and end profiles can degenerate to an pen curve. The loft can be periodic, which means that the end profile should not be ecified, since it equals the start profile (in this case the degenerate profiles are not lowed).
here can also be curves in the lofting direction that the loft surface should interpolate; ese are called guide curves. If there are no guide curves, there must be at least two
rofiles.
E N E R A L
elect or clear the following check boxes as required.
Select the Periodic loft check box to create a periodic loft, for which the start and end profiles coincide.
If the Unite with input objects check box is selected, the resulting object is the union of the loft surface with the objects containing the start and end profiles and the objects containing the start and end guide curves. The faces that might exist in the start and end profiles are always included in the resulting object.
If the Keep intermediate profile faces check box is selected, faces in the intermediate profile objects are added to the resulting object. Any faces belonging to the start and end profiles are always kept.
Select an Object typeSolid (the default) or Surface. This determines whether domains should be created in the resulting object.
S | 29
Select a Face partitioning:
- If Minimal (the default) is selected, the loft surface is divided along the loft direction only at vertices where the profile curve has a tangent discontinuity.
- If Columns is selected, the loft surface is divided along the loft direction at each vertex of the profile curves.
- If Grid is selected, in addition to the Columns partitioning, the loft surface is divided by the profile curves. The loft surface is always partitioned by the profile
P
Tse
Sesemmenob
nolis
Cse
S
U
Inse
SeserepomG E O M E T R Y O P E R A T I O N
faces when Keep intermediate profile faces is selected.
R O F I L E S
his section specifies the profiles that are not specified in the Start Profile or End Profile ctions.
lect the objects that you want to use as profiles in the Graphics window. You can lect a set of connected surface objects, curve objects, or point objects. Surface objects ust have manifold topology and be bounded by a single edge loop. Curve objects ust be a single edge loop or chain. Point objects are only allowed for use as start or d profiles and must have a single vertex. The selected objects appear in the Profile jects list. If the geometry sequence includes user-defined selections above the Loft de, choose Manual to select objects, or choose one of the selection nodes from the t next to Profile objects.
lick the Active button to toggle between turning ON and OFF the Profile objects lection.
T A R T P R O F I L E
se this section to specify the start profile in the following cases:
If you want to explicitly specify which profile should be the start profile.
If the start profile is part of a larger object.
If you want to prescribe the direction of the loft surface on the start profile.
other cases, you can specify the start profile in the Profiles section, and leave the lection in the Start Profile section empty.
lect a Geometric entity level for the profileObject, Point, Edge, or Boundary. Click to lect the entities in the Graphics window. An object selection must fulfill the quirements detailed in the Profiles section. A point selection must consist of a single int. An edge selection must form a single edge loop or chain. A boundary selection ust have manifold topology and be bounded by a single edge loop. The selected
30 | C H A P T E R 2 : D E S
entities appear in the Start profile list. If the geometry sequence includes user-defined selections above the Loft node, choose Manual to select objects or entities, or choose one of the selection nodes from the list next to Input objects.
Click the Active button to toggle between turning ON and OFF the Start profile selection.
Select a Loft directionNot prescribed (the default), Parallel, Perpendicular, or At angle. For Parallel the loft direction is prescribed along the profile curve, while for P
SW
E
Tsh
G
U
Sa choosese
CseI G N F U N C T I O N A L I T Y
erpendicular or At angle it is only prescribed at the vertices on the profile curve.
elect Relative toAdjacent faces (the default), Profile faces, or Profile edges plane. hen At angle is selected, also enter an Angle (SI unit: deg).
Adjacent faces are the faces that are adjacent to the profile edges and that are not contained in the Start profile selection.
Profile faces are the faces contained in the Start profile selection.
Profile edges' plane means that the loft direction is prescribed in relation to the plane tangent to the profile's edges at each vertex on the profile curve.
N D P R O F I L E
he settings for this section are analogous to the Start Profile section. This section ould not be used if the loft is periodic.
U I D E C U R V E S
se this section if you want to specify guide curves for the lofted object.
elect the objects that you want to use as guides in the Graphics window. You can select set of curve objects. In the non-periodic case, each guide object must be a single edge ain. In the periodic case, each guide object must be a single edge loop. Each guide
bject must have continuous tangents and intersect each profile exactly once. The bjects appear in the Guide objects list. If the geometry sequence includes user-defined lections above the Loft node, choose Manual to select objects, or choose one of the lection nodes from the list next to Guide objects.
lick the Active button to toggle between turning ON and OFF the Guide objects lection.
S | 31
S T A R T G U I D E C U R V E S
Use this section to specify the start guide curve in the following cases:
If the start guide curve is part of a larger object.
If you want to prescribe the direction of the loft surface on the start guide curve.
In other cases, you can specify the start guide curve in the Guide Curves section, and leave the selection in the Start Guide Curve section empty.
Trean
Sewth
E
Tsh
S
Seorcoapcoto
Se
M
TIt
Ocl
I N
SeapG E O M E T R Y O P E R A T I O N
he selected set of edges must form a single edge loop or chain, and fulfill the other quirements on a guide curve. Click the Active button to toggle between turning ON d OFF the Edges selection.
lect a Loft surface directionNot prescribed (the default) or Parallel to adjacent faces, hich means that the loft surface is prescribed to be tangent to the adjacent faces along e guide curve.
N D G U I D E C U R V E S
he settings for this section are analogous to the Start Guide Curve. This section ould not be used in the closed profile case.
E L E C T I O N S O F R E S U L T I N G E N T I T I E S
lect the Create selections check box to create predefined selections for all entities (all some of domains, boundaries, edges, and points) that the resulting geometric object nsists of. These selections are available in all applicable selection lists but do not pear as separate selection nodes in the model tree. If you want to make the selections ntribute to a cumulative selection, select a cumulative selection from the Contribute list, or click the New button to create a new cumulative selection (see Cumulative lections in the COMSOL Multiphysics Reference Manual).
idsurface
he Midsurface feature is the inverse of the Thicken feature (with symmetric offset). removes the thickness of a solid object, resulting in a surface object.
n the Geometry toolbar, Conversions menu, click Midsurface ( ). You can also right ick the Geometry node and add this node from the Conversions submenu.
P U T
lect the objects that you want to use as input in the Graphics window. The objects pear in the Input objects list. A midsurface object is generated for each input object
32 | C H A P T E R 2 : D E S
independently. If the geometry sequence includes user-defined selections above the Midsurface node, choose Manual to select objects, or choose one of the selection nodes from the list next to Input objects.
Click the Active button to toggle between turning ON and OFF the Input objects selection.
Select the Keep input objects check box to use the selected geometry objects for further geometry operations.
O
Sm
Ceaan
S
SocoapcotoI G N F U N C T I O N A L I T Y
P T I O N S
elect the Repair overlaps check box to repair areas where two or more generated idsurfaces overlap.
lick to select the Split in smooth components check box as required. If this is selected, ch output object is split into components, where each component is of manifold type d has smooth normal vector.
E L E C T I O N S O F R E S U L T I N G E N T I T I E S
elect the Create selections check box to create predefined selections for all entities (all r some of domains, boundaries, edges, and points) that the resulting geometric object nsists of. These selections are available in all applicable selection lists but do not pear as separate selection nodes in the model tree. If you want to make the selections ntribute to a cumulative selection, select a cumulative selection from the Contribute list, or click the New button to create a new cumulative selection (see Cumulative
Repair overlaps selected
Repair overlaps cleared
S | 33
Selections in the COMSOL Multiphysics Reference Manual).
Repair
To repair objects, from the Geometry toolbar, Defeaturing and Repair menu, select Repair ( ). Then select the objects to repair in the Graphics window. They appear in the Input objects list.
The software tries to repair defects and remove details smaller than the Absolute import to
T
Oobcasu
I N
SeinseseG E O M E T R Y O P E R A T I O N
lerance. More precisely:
Entities with invalid sense
Invalid edge and vertex tolerances
Invalid manifolds
Self-intersecting manifolds
Non-G1 manifolds
Missing edge or vertex manifolds
Missing vertex
Vertices not on curve of edge
Edges and vertices not on surface of face
Removal of surface self-intersections that lie outside the face
Splitting at edge intersections which have no vertex
Removal of discontinuities by either splitting or smoothing
Remove small features (short edges, small faces, sliver faces, and spikes)
hicken
n the Geometry toolbar, Conversions menu, click Thicken ( ) to convert a surface ject to a solid object by giving it a thickness (usually in the normal direction). You n also right click the Geometry node and add this node from the Conversions bmenu.
P U T
lect the objects that you want to thicken in the Graphics window. The objects appear the Input objects list. Each input object is thickened independently. If the geometry quence includes user-defined selections above the Thicken node, choose Manual to lect objects, or choose one of the selection nodes from the list next to Input objects.
34 | C H A P T E R 2 : D E S
Click the Active button to toggle between turning ON and OFF the Input objects selections.
Select the Keep input objects check box to use the selected geometry objects for further geometry operations.
O P T I O N S
Select an OffsetSymmetric (the default) or Asymmetric.
If
If
F
S
Socoapcoto
SI G N F U N C T I O N A L I T Y
Symmetric is selected enter a Total thickness.
Asymmetric is selected enter an Upside thickness and a Downside thickness.
or either choice:
Select a DirectionNormal (the default) or Vector. For Vector, and based on space dimension, enter values or expressions for x, y, and z (SI unit: m)
Select the Fillet offset edges check box to fillet each convex edge joining two offset faces, using the offset distance as fillet radius. The convex notion might be explained by the following figure.
E L E C T I O N S O F R E S U L T I N G E N T I T I E S
elect the Create selections check box to create predefined selections for all entities (all r some of domains, boundaries, edges, and points) that the resulting geometric object nsists of. These selections are available in all applicable selection lists but do not pear as separate selection nodes in the model tree. If you want to make the selections ntribute to a cumulative selection, select a cumulative selection from the Contribute list, or click the New button to create a new cumulative selection (see Cumulative
elections in the COMSOL Multiphysics Reference Manual).
35
3
P r o g r a m m i n g a n d C o m m a n d R e f e r e n c e
In this section you find detailed COMSOL API reference information for the geometry features in the Design Module.
In this section:
Defeaturing Tools
Summary of Commands
Commands Grouped by Function
36 | C H A P T E R 3 : P R O
De f e a t u r i n g T oo l s
To remove unnecessary details in objects imported from a 3D CAD file, you can use the defeaturing tools. You access these by typing:
model.geom().defeaturing("Fillets");model.geom().defeaturing("ShortEdges");model.geom().defeaturing("SliverFaces");
Ugcr
TD
D
resy
T
D
TS
yo
w
SG R A M M I N G A N D C O M M A N D R E F E R E N C E
model.geom().defeaturing("SmallFaces");model.geom().defeaturing("Spikes");model.geom().defeaturing("DeleteFaces");model.geom().defeaturing("DetachFaces");
sing the defeaturing tools you can search for small details, without altering your eometry. If you find small details that you want to remove, the defeaturing tool can eate a feature, which removes the details from the geometry.
he features corresponding to the defeaturing tools are DeleteFillets, eleteShortEdges, DeleteSliverFaces, DeleteSmallFaces, DeleteSpikes, eleteFaces, and DetachFaces. If you already know which details you need to move, it is also possible to create these features directly using the standard create ntax.
his section includes these topics:
Defeaturing ToolsFinding and Deleting Small Details
Defeaturing ToolsDelete Faces
Defeaturing ToolsDetach Faces
efeaturing ToolsFinding and Deleting Small Details
he defeaturing tools Fillets, ShortEdges, SliverFaces, SmallFaces, and pikes search for and delete details smaller than a given size. First select the objects u want to examine by typing, for example,
model.geom().defeaturing("Fillets"). selection("input").set();
here is a string array contains the object names.
et the maximum size of the details (fillets in this case) you want to remove by typing
model.geom().defeaturing("Fillets").set("entsize",size);
S | 37
To find the details that are smaller than the given size, type
model.geom().defeaturing("Fillets").find();
The found details appear in the selection
model.geom().defeaturing("Fillets").detail();
To get the number of found details, type
int nd = model.geom().defeaturing("Fillets").detail().size();
T
Inexde
T
T
Tgea
T
to
to
TgeD E F E A T U R I N G TO O L
o get the names of the found details, type
String[] filletNames = model.geom().defeaturing("Fillets").detail().groupNames();
general, a detail (fillet in this case) consists of a number of geometric entities. For ample, a fillet consists of a number of faces. To get the entity numbers in the nth tail, type
int[] entities = model.geom().defeaturing("Fillets"). detail().groupEntities(n);
o get the object that contains the nth detail, type
String oname = model.geom().defeaturing("Fillets"). detail().groupObject(n);
o delete all details found, type
model.geom().defeaturing("Fillets").deleteAll();
his adds a feature, tagged , that performs the deletion operation to the ometry sequence, after the current feature, and build this feature. In this case, it adds DeleteFillets feature.
o delete a subset of the details found, type, for example
model.geom().defeaturing("Fillets").detail().setGroup(2,5);
delete fillets number 2 and 5. You can also use, for example,
model.geom().defeaturing("Fillets").detail().addGroup(7,8);model.geom().defeaturing("Fillets").detail().removeGroup(3);
add and remove details from the selection. Perform the deletion by typing
model.geom().defeaturing("Fillets").delete();
his adds a DeleteFillets feature tagged after the current feature in the ometry sequence.
38 | C H A P T E R 3 : P R O
D E F E A T U R I N G M E T H O D S
model.geom().feature().find() searches for small details, for a defeaturing feature .
model.geom().defeaturing(tooltag).find() searches for small details, for a defeaturing tool tooltag.
model.geom().defeaturing(tooltag).detail().selMethod manipulates the selection of details to remove, for a defeaturing tool tooltag.
m
se
m
dsps
af
m
dspa
th
D
Fm
TdG
Ygth
iG R A M M I N G A N D C O M M A N D R E F E R E N C E
odel.geom().feature().detail().selMethod manipulates the lection of details to remove, for a defeaturing feature .
odel.geom().defeaturing(tooltag).delete() creates a efeaturing feature of type tooltag, tagged , with the properties currently ecified in the defeaturing tool. The property delete of the created feature is set to elected. If the feature can be built, it is inserted in the geometry sequence ter the current feature, otherwise the feature is discarded.
odel.geom().defeaturing(tooltag).deleteAll() creates a efeaturing feature of type tooltag, tagged , with the properties currently ecified in the defeaturing tool. The property delete of the created feature is set to ll. If the feature can be built, it is inserted in the geometry sequence after e current feature, otherwise the feature is discarded.
E F E A T U R I N G S E L E C T I O N M E T H O D S
or a defeaturing selection sel the following methods are available, in addition to the ethods available for a general geometry selection.
he find method on the corresponding feature or defeaturing tool provides the efeaturing selection with a list of details. Each detail is a group of geometric entities. roup numbers, , is an array of integers that index into the list of details.
ou can select groups either by explicitly referring to group numbers, or by selecting eometric entities. In the latter case, any group that has non-empty intersection with e provided entity selection is selected.
nt[] sel.group() returns the group numbers for the selected groups.
Geometry Object Selection Methods in the COMSOL Multiphysics Programming Reference Manual
S | 39
sel.addGroup() adds the specified groups to the selection.
sel.setGroup() sets the selection groups.
sel.removeGroup() removes the specified groups from the selection.
String[] sel.groupNames() returns a list of names of the groups found.
String sel.groupObject() returns the name of the geometry object that contains the specified detail group.
in
de
in
D
Ubythpe
Tge
D
UnelikwD E F E A T U R I N G TO O L
t[] sel.groupEntities() returns the entity numbers of the specified tail group.
t sel.size() returns the number of detail groups found.
efeaturing ToolsDelete Faces
se the DeleteFaces tool to delete faces and replace them either with a new face or growing or shrinking the adjacent faces. Select the faces to delete and properties for e operation like in the corresponding feature DeleteFaces. The deletion is rformed when you issue the command
model.geom().defeaturing("DeleteFaces").delete();
his adds a DeleteFaces feature tagged after the current feature in the ometry sequence.
efeaturing ToolsDetach Faces
se the DetachFaces tool to detach faces from a solid object (the parent) to form a w solid object (the child). Select the faces to detach and properties for the operation e in the corresponding feature DetachFaces. The detach operation is performed
hen you issue the command
model.geom().defeaturing("DetachFaces").delete();
40 | C H A P T E R 3 : P R O
S umma r y o f C ommand s
These commands are included in this section:
CapFaces
Chamfer3D
ConvertToCOMSOL
G R A M M I N G A N D C O M M A N D R E F E R E N C E
DeleteFaces
DeleteFillets
DeleteShortEdges
DeleteSliverFaces
DeleteSmallFaces
DeleteSpikes
DetachFaces
Fillet3D
Import
Knit
Loft
Midsurface
Repair
Thicken
N | 41
Command s G r oup ed b y Fun c t i o n
Commands for Defeaturing
C
C
FUNCTION PURPOSE
DeleteFaces Delete faces from CAD objects and heal the wounds
D
D
D
D
D
D
F
C
I
K
R
F
C
C
F
LC O M M A N D S G R O U P E D B Y F U N C T I O
ommands for File Import, Conversion and Repair
ommands for Geometry Creation and Modification
eleteFillets Find and delete fillets in CAD objects
eleteShortEdges Find and delete short edges in CAD objects
eleteSliverFaces Find and delete sliver faces in CAD objects
eleteSmallFaces Find and delete small faces in CAD objects
eleteSpikes Find and delete spikes in CAD objects
etachFaces Detach faces from CAD objects to form a new solid
UNCTION PURPOSE
onvertToCOMSOL Convert CAD Import Module geometry objects to COMSOL objects
mport Import geometry objects from a 3D CAD file
nit Knit surface CAD objects to form solids or surface objects
epair Repair CAD objects
UNCTION PURPOSE
apFaces Add cap faces to fill holes in CAD geometries
hamfer3D Chamfer edges in 3D geometry objects
illet3D Fillet edges in 3D geometry objects
oft Create a lofted surface through a set of profile curves
42 | C H A P T E R 3 : P R O
Midsurface Generate a surface object that is the midsurface of a solid object in 3D
Thicken Generate a solid object by thickening a surface object in 3D
FUNCTION PURPOSEG R A M M I N G A N D C O M M A N D R E F E R E N C E
43
Compa t i b i l i t y
3.5 FUNCTION 5.0 FEATURE
cad3part Not needed
cadconvert ConvertToCOMSOLcaddetachfac DetachFaces
cadfindfillets DeleteFillets
cadfindshortedg DeleteShortEdges
cadfindsliverfac DeleteSliverFaces
cadfindsmallfac DeleteSmallFaces
cadfindspikes DeleteSpikes
cadknit Knit
Repair Repair
cadrmfac DeleteFaces
cadrmfillets DeleteFillets
cadrmshortedg DeleteShortEdges
cadrmsliverfac DeleteSliverFaces
cadrmsmallfac DeleteSmallFaces
cadrmspikes DeleteSpikes
geomimport Import
geomupdate Not applicable
swbody Not applicable
swinit Not applicable
CapFaces
44 | C H A P T E R 3 : P R
CapFacesPurpose Add cap faces to objects.
Syntax model.geom().feature().create(,"CapFaces");model.geom().feature().selection(property);
Description model.geom().feature().create(,"CapFaces")
creates a CapFaces feature. A cap face is created for each loop of edges in the input selection. The cap faces are joined with the original objects. If new domains are created by the cap faces, these domains are made solid.O G R A M M I N G A N D C O M M A N D R E F E R E N C E
The input selection can contain more than one edge loop, but no two loops can have edges or vertices in common.
The input selection can contain edges from more than one object. In this case, each object is processed individually.
TABLE 3-1: AVAILABLE PROPERTIES
PROPERTY VALUE DEFAULT DESCRIPTION
input Selection The input edges
Chamfer3D
45
Chamfer3DPurpose Chamfer edges in 3D geometry objects.
Syntax model.geom().feature().create(,"Chamfer3D");model.geom().feature().selection(property);model.geom().feature().set(property,);model.geom().feature().getType(property);
Description model.geom().feature().create(,"Chamfer3D")
creates a Chamfer3D feature.
Exam
See AUse model.geom().feature().selection("edge") to select the edge to chamfer. The default selection is empty.
For information about the createselection and contributeto properties, search the online help in COMSOL Multiphysics to locate and search all the documentation.
ple Chamfer a subset of edges on a block:
Model model = ModelUtil.create("Model1");model.geom().create("geom1",3);model.geom("geom1").geomRep("cadps");model.geom("geom1").create("blk1", "Block");model.geom("geom1").create("cha1", "Chamfer3D");model.geom("geom1").feature("cha1").selection("edge").set("blk1", new int[]{2, 4, 6, 8});model.geom("geom1").feature("cha1").set("radius", "0.1");model.geom("geom1").run();
lso Fillet3D
TABLE 3-2: AVAILABLE PROPERTIES
PROPERTY VALUE DEFAULT DESCRIPTION
edge Selection Edges to chamfer
radius double 0 Radius
propagate on | off on Propagate to tangent edges
preserveoverlapped on | off off Preserve overlapped entities
yshaped on | off off Y-shaped chamfer
createselection on | off off Create selections
contributeto String none Cumulative selection to contribute to
ConvertToCOMSOL
46 | C H A P T E R 3 : P R
ConvertToCOMSOLPurpose Convert CAD Import Module geometry objects to COMSOL objects.
Syntax model.geom().feature().create(,"ConvertToCOMSOL");model.geom().feature().selection(property);
Description model.geom().feature().create(,"ConvertToCOMSOL")
creates a ConvertToCOMSOL feature.
See A
TABLE 3-3: AVAILABLE PROPERTIESO G R A M M I N G A N D C O M M A N D R E F E R E N C E
lso Import
PROPERTY VALUE DEFAULT DESCRIPTION
input Selection Names of input objects
DeleteFaces
47
DeleteFacesPurpose Delete faces from CAD objects and heal the wounds.
Syntax model.geom().feature().create(,"DeleteFaces");model.geom().feature().selection(property);model.geom().feature().set(property,);model.geom().feature().getType(property);
model.geom().defeaturing("DeleteFaces").selection(property)model.geom().defeaturing("DeleteFaces"). set(property,);
Descr
Exammodel.geom().defeaturing("DeleteFaces").delete();
iption model.geom().defeaturing("DeleteFaces").delete() creates a DeleteFaces feature tagged with the specified properties. If the feature can be built, it is inserted in the geometry sequence after the current feature, otherwise the feature is discarded.
It is also possible to create a DeleteFaces feature using the standard create method.
The faces in the property input are deleted from their objects. The resulting object is healed so that a solid object is obtained. If heal is fill, a new face is formed based on the surrounding edges of each wound. If heal is patch, the surrounding faces of each wound are grown or shrunk to heal the wound.
When you delete through holes, set the throughhole property to on to indicate that the two wounds from where the hole entered and exited the geometry are to be healed independently instead of as a single wound. If throughhole is off, the wound would be healed with a single new face that would just recreate the hole.
ple The following example imports the file defeaturing_demo_2.mphbin, and removes a hole from the geometry model.
Model model = ModelUtil.create("Model1");model.geom().create("geom1",3);model.geom("geom1").feature().create("imp1","Import");model.geom("geom1").feature("imp1").set("filename", "defeaturing_demo_2.mphbin");
TABLE 3-4: AVAILABLE PROPERTIES
PROPERTY VALUE DEFAULT DESCRIPTION
input Selection Faces to delete
heal fill | patch patch Healing method
throughhole on | off off Heal as if the removed faces are a through hole
DeleteFaces
48 | C H A P T E R 3 : P R
model.geom("geom1").run("imp1");model.geom("geom1").feature().create("dfa1","DeleteFaces");model.geom("geom1").feature("dfa1").selection("input"). set("imp1",6,7,8,9,11,12,13);model.geom("geom1").run();
Compatibility The following property is no longer supported:
See A
TABLE 3-5: OBSOLETE PROPERTIES
PROPERTY VALUE DEFAULT DESCRIPTIONO G R A M M I N G A N D C O M M A N D R E F E R E N C E
lso DeleteFillets, DeleteSliverFaces, DeleteSmallFaces, DetachFaces
Out stx | ftx | ctx | ptx
none Output variables
DeleteFillets
49
DeleteFilletsPurpose Find and delete fillets in CAD objects.
Syntax model.geom().feature().create(,"DeleteFillets");model.geom().feature().selection(property);model.geom().feature().set(property,);model.geom().feature().getType(property);model.geom().feature().find();model.geom().feature().detail();
model.geom().defeaturing("Fillets").selection(property);
Descrmodel.geom().defeaturing("Fillets").set(property,);model.geom().defeaturing("Fillets").find();model.geom().defeaturing("Fillets").detail();model.geom().defeaturing("Fillets").delete();model.geom().defeaturing("Fillets").deleteAll();
iption model.geom().defeaturing("Fillets").delete() creates a DeleteFillets feature tagged with the specified properties. The property delete is set to selected. If the feature can be built, it is inserted in the geometry sequence after the current feature, otherwise the feature is discarded.
model.geom().defeaturing("Fillets").deleteAll() works as the delete method, but the property delete is set to all.
It is also possible to create the DeleteFillets feature using the standard create method. The following properties are available.
model.geom().feature().find() searches the input objects for fillets with radius less than entsize.
model.geom().feature().detail() returns a selection object where you can select a subset of the fillets found.
The find and detail methods of model.geom().defeaturing("Fillets") has the corresponding functionality for the defeaturing tool.
TABLE 3-6: AVAILABLE PROPERTIES
PROPERTY VALUE DEFAULT DESCRIPTION
delete all | selected selected Delete all fillets of given size, or a selection. Only available for the feature.
entsize double 1e-3 Maximum fillet radius
input Selection Names of input objects
DeleteFillets
50 | C H A P T E R 3 : P R
Only faces that can be deleted without invalidating the object are deleted. If a fillet was not possible to delete, a warning is given, accessible through model.geom().feature().problem().
Compatibility The following property is no longer supported:
Exam
See A
TABLE 3-7: OBSOLETE PROPERTIES
PROPERTY VALUE DEFAULT DESCRIPTION
Out stx | ftx | ctx | none Output variablesO G R A M M I N G A N D C O M M A N D R E F E R E N C E
ple The following example imports the CAD object in the COMSOL Multiphysics geometry file defeaturing_demo_3.mphbin and finds all fillets with radius less than 4103. The first of these fillets is deleted.
Model model = ModelUtil.create("Model1");model.geom().create("geom1",3);model.geom("geom1").feature().create("imp1","Import");model.geom("geom1").feature("imp1").set("filename", "defeaturing_demo_3.mphbin");model.geom("geom1").run("imp1");model.geom("geom1").feature().create("dfi1","DeleteFillets");model.geom("geom1").feature("dfi1").selection("input"). set("imp1");model.geom("geom1").feature("dfi1").set("entsize",4e-3);model.geom("geom1").feature("dfi1").find();model.geom("geom1").feature("dfi1").detail().setGroup(1);model.geom("geom1").run();
lso DeleteFaces
ptx
DeleteShortEdges
51
DeleteShortEdgesPurpose Find and delete short edges in CAD objects.
Syntax model.geom().feature().create(,"DeleteShortEdges");model.geom().feature().selection(property);model.geom().feature().set(property,);model.geom().feature().getType(property);model.geom().feature().find();model.geom().feature().detail();
model.geom().defeaturing("ShortEdges").selection(property);
Descrmodel.geom().defeaturing("ShortEdges"). set(property,);model.geom().defeaturing("ShortEdges").find();model.geom().defeaturing("ShortEdges").detail();model.geom().defeaturing("ShortEdges").delete();model.geom().defeaturing("ShortEdges").deleteAll();
iption model.geom().defeaturing("ShortEdges").delete() creates a DeleteShortEdges feature tagged with the specified properties. The property delete is set to selected. If the feature can be built, it is inserted in the geometry sequence after the current feature, otherwise the feature is discarded.
model.geom().defeaturing("ShortEdges").deleteAll() works as the delete method, but the property delete is set to all.
It is also possible to create a DeleteShortEdges feature using the standard create method. The following properties are available.
model.geom().feature().find() searches the input objects for edges of length less than entsize.
model.geom().feature().detail() returns a selection object where you can select a subset of the edge sets found.
The find and detail methods of model.geom().defeaturing("ShortEdges") has the corresponding functionality for the defeaturing tool.
TABLE 3-8: AVAILABLE PROPERTIES
PROPERTY VALUE DEFAULT DESCRIPTION
delete all | selected selected Delete all edges of given size, or a selection. Only available for the feature.
entsize double 1e-3 Maximum edge length
input Selection Names of input objects
DeleteShortEdges
52 | C H A P T E R 3 : P R
Only edges that can be deleted without invalidating the object are deleted. If an edge was not possible to delete, a warning is given, accessible through model.geom().feature().problem().
Compatibility The lengths of the edges are no longer returned.
The following property is no longer supported:
Exam
TABLE 3-9: OBSOLETE PROPERTIESO G R A M M I N G A N D C O M M A N D R E F E R E N C E
ple The following example imports the file defeaturing_demo_4.x_b and finds all edges with length less than 3103. The first of these edges is deleted.
Model model = ModelUtil.create("Model1");model.geom().create("geom1",3);model.geom("geom1").feature().create("imp1","Import");model.geom("geom1").feature("imp1").set("filename", "defeaturing_demo_4.x_b");model.geom("geom1").runAll();model.geom("geom1").feature(). create("dse1","DeleteShortEdges");model.geom("geom1").feature("dse1").selection("input"). set("imp1");model.geom("geom1").feature("dse1").set("entsize",3e-3);model.geom("geom1").feature("dse1").find();model.geom("geom1").feature("dse1").detail().setGroup(1);model.geom("geom1").runAll();
PROPERTY VALUE DEFAULT DESCRIPTION
Out stx | ftx | ctx | ptx
none Output variables
DeleteSliverFaces
53
DeleteSliverFacesPurpose Find and delete sliver faces in CAD objects.
Syntax model.geom(gname).feature().create(,"DeleteSliverFaces");model.geom().feature().selection(property);model.geom().feature().set(property,);model.geom().feature().getType(property);model.geom().feature().find();model.geom().feature().detail();
model.geom().defeaturing("SliverFaces").selection(property);
Descrmodel.geom().defeaturing("SliverFaces"). set(property,);model.geom().defeaturing("SliverFaces").find();model.geom().defeaturing("SliverFaces").detail();model.geom().defeaturing("SliverFaces").delete();model.geom().defeaturing("SliverFaces").deleteAll();
iption model.geom().defeaturing("SliverFaces").delete() creates a DeleteSliverFaces feature tagged with the specified properties. The property delete is set to selected. If the feature can be built, it is inserted in the geometry sequence after the current feature, otherwise the feature is discarded.
model.geom().defeaturing("SliverFaces").deleteAll() works as the delete method, but the property delete is set to all.
It is also possible to create a DeleteSliverFaces feature using the standard create method. The following properties are available.
Sliver faces are narrow but long faces with large aspect ratio, which usually give rise to extremely fine local meshes in their vicinity.
model.geom().feature().find() searches the input objects for faces with width less than entsize.
model.geom().feature().detail() returns a selection object where you can select a subset of the faces found.
TABLE 3-10: AVAILABLE PROPERTIES
PROPERTY VALUE DEFAULT DESCRIPTION
delete all | selected selected Delete all sliver faces of given width, or a selection. Only available for the feature.
entsize double 1e-3 Maximum face width
input Selection Names of input objects
DeleteSliverFaces
54 | C H A P T E R 3 : P R
The find and detail methods of model.geom().defeaturing("SliverFaces") has the corresponding functionality for the defeaturing tool.
Only faces that can be deleted without invalidating the object are deleted. If a face was not possible to delete, a warning message is given.
Compatibility The following property is no longer supported:
Exam
See AO G R A M M I N G A N D C O M M A N D R E F E R E N C E
ple The following example imports the geometry model from the file defeaturing_demo_5.x_b, finds sliver faces narrower than 2103, and deletes the first of these.
Model model = ModelUtil.create("Model1");model.geom().create("geom1",3);model.geom("geom1").feature().create("imp1","Import");model.geom("geom1").feature("imp1").set("filename", "defeaturing_demo_5.x_b");model.geom("geom1").runAll();model.geom("geom1").feature().create("dsl1", "DeleteSliverFaces");model.geom("geom1").feature("dsl1").selection("input"). set("imp1");model.geom("geom1").feature("dsl1").set("entsize",2e-3);model.geom("geom1").feature("dsl1").find();model.geom("geom1").feature("dsl1").detail().setGroup(1);model.geom("geom1").runAll();
lso DeleteFaces, DeleteSmallFaces
TABLE 3-11: OBSOLETE PROPERTIES
PROPERTY VALUE DEFAULT DESCRIPTION
Out stx | ftx | ctx | ptx | status
none Output variables
DeleteSmallFaces
55
DeleteSmallFacesPurpose Find and delete small faces in CAD objects.
Syntax model.geom(gname).feature().create(,"DeleteSmallFaces");model.geom().feature().selection(property);model.geom().feature().set(property,);model.geom().feature().getType(property);model.geom().feature().find();model.geom().feature().detail();
model.geom().defeaturing("SmallFaces").selection(property);
Descrmodel.geom().defeaturing("SmallFaces"). set(property,);model.geom().defeaturing("SmallFaces").find();model.geom().defeaturing("SmallFaces").detail();model.geom().defeaturing("SmallFaces").delete();model.geom().defeaturing("SmallFaces").deleteAll();
iption model.geom().defeaturing("SmallFaces").delete() creates a DeleteSmallFaces feature tagged with the specified properties. The property delete is set to selected. If the feature can be built, it is inserted in the geometry sequence after the current feature, otherwise the feature is discarded.
model.geom().defeaturing("SmallFaces").deleteAll() works as the delete method, but the property delete is set to all.
It is also possible to create a DeleteSmallFaces feature using the standard create method. The following properties are available.
A small face is a face that fits within a sphere of specified radius, given in the property entsize.
model.geom().feature().find() searches the input objects for faces with size less than entsize.
model.geom().feature().detail() returns a selection object where you can select a subset of the faces found.
TABLE 3-12: AVAILABLE PROPERTIES
PROPERTY VALUE DEFAULT DESCRIPTION
delete all | selected selected Delete all small faces of given size, or a selection. Only available for the feature.
entsize double 1e-3 Maximum face size
input Selection Names of input objects
DeleteSmallFaces
56 | C H A P T E R 3 : P R
The find and detail methods of model.geom().defeaturing("SmallFaces") has the corresponding functionality for the defeaturing tool.
Only faces that can be deleted without invalidating the object are deleted. If a face was not possible to delete, a warning message is given, accessible through model.geom().feature().problem().
Compatibility The following property is no longer supported:
Exam
See AO G R A M M I N G A N D C O M M A N D R E F E R E N C E
ple The following example imports the geometry model from the file defeaturing_demo_6.x_b, finds sliver faces narrower than 103, and deletes the first of these.
Model model = ModelUtil.create("Model1");model.geom().create("geom1",3);model.geom("geom1").feature().create("imp1","Import");model.geom("geom1").feature("imp1").set("filename", "defeaturing_demo_6.x_b");model.geom("geom1").runAll();model.geom("geom1").feature().create("df1","DeleteSmallFaces");model.geom("geom1").feature("df1").selection("input"). set("imp1");model.geom("geom1").feature("df1").find();model.geom("geom1").feature("df1").detail().setGroup(1);model.geom("geom1").run();
lso DeleteFaces, DeleteSliverFaces
TABLE 3-13: OBSOLETE PROPERTIES
PROPERTY VALUE DEFAULT DESCRIPTION
Out stx | ftx | ctx | ptx | status
none Output variables
DeleteSpikes
57
DeleteSpikesPurpose Find and delete spikes in CAD objects.
Syntax model.geom().feature().create(,"DeleteSpikes");model.geom().feature().selection(property);model.geom().feature().set(property,);model.geom().feature().getType(property);model.geom().feature().find();model.geom().feature().detail();
model.geom().defeaturing("Spikes").selection(property);
Descrmodel.geom().defeaturing("Spikes").set(property,);model.geom().defeaturing("Spikes").find();model.geom().defeaturing("Spikes").detail();model.geom().defeaturing("Spikes").delete();model.geom().defeaturing("Spikes").deleteAll()
Top Related