untitled

Similar documents
Altair? HyperMesh? 初级培训DAY 1

file:///E|/软件学习资料/HyperWorks/hyperworks学习捷径总结/Hypermesh总结——几何清理篇.txt

Microsoft Word - 3D手册2.doc

手册 doc


一 登录 crm Mobile 系统 : 输入 ShijiCare 用户名和密码, 登录系统, 如图所示 : 第 2 页共 32 页

Converting image (bmp/jpg) file into binary format

晶体结构立体模型建构软件-Diamond的使用

C++ 程序设计 告别 OJ1 - 参考答案 MASTER 2019 年 5 月 3 日 1

WinMDI 28

Move Component Object selection Component selection UV Maya Hotkeys editor Maya USING MAYA POLYGONAL MODELING 55

Photoshop CS6 艺术设计案例教程 ( 第二版 ) 1.1 Photoshop 的应用领域 Photoshop,,, Photoshop Photoshop 的用途 Photoshop CIS ( ) ( ) 案例展现 ~ 1

coverage2.ppt

epub83-1

エスポラージュ株式会社 住所 : 東京都江東区大島 東急ドエルアルス大島 HP: ******************* * 关于 Java 测试试题 ******

Text 文字输入功能 , 使用者可自行定义文字 高度, 旋转角度 , 行距 , 字间距离 和 倾斜角度。

Autodesk Product Design Suite Standard 系统统需求 典型用户户和工作流 Autodesk Product Design Suite Standard 版本为为负责创建非凡凡产品的设计师师和工程师提供供基本方案设计和和制图工具, 以获得令人惊叹叹的产品

PowerPoint 演示文稿

PowerPoint 演示文稿

f2.eps

FPGAs in Next Generation Wireless Networks WPChinese

Microsoft Word - template.doc

AL-M200 Series

自动化接口

<C8EBC3C5C6AAA3A8B5DA31D5C2A3A92E696E6464>

绘制OpenCascade中的曲线


论文,,, ( &, ), 1 ( -, : - ), ; (, ), ; ;, ( &, ),,,,,, (, ),,,, (, ) (, ),,, :. : ( ), ( ) ( ) ( ) ( ) ( ) ( ) ( ) ( ), ( ),,,, 1 原译作 修补者, 但在英译版本中, 被译作

Microsoft Word - SupplyIT manual 3_cn_david.doc

untitled

1 1 大概思路 创建 WebAPI 创建 CrossMainController 并编写 Nuget 安装 microsoft.aspnet.webapi.cors 跨域设置路由 编写 Jquery EasyUI 界面 运行效果 2 创建 WebAPI 创建 WebAPI, 新建 -> 项目 ->

HyperMesh常用操作技巧


目录 1 IPv6 快速转发 IPv6 快速转发配置命令 display ipv6 fast-forwarding aging-time display ipv6 fast-forwarding cache ipv6 fas

Cadence Poqi

目录 1 IPv6 快速转发 IPv6 快速转发配置命令 display ipv6 fast-forwarding aging-time display ipv6 fast-forwarding cache ipv6 fas

2782_OME_KM_Cover.qxd

RAID RAID 0 RAID 1 RAID 5 RAID * ( -1)* ( /2)* No Yes Yes Yes A. B. BIOS SATA C. RAID BIOS RAID ( ) D. SATA RAID/AHCI ( ) SATA M.2 SSD ( )

(Guangzhou) AIT Co, Ltd V 110V [ ]! 2

VenomX_Setup_Instruction_ZH

无类继承.key

Epson

帝国CMS下在PHP文件中调用数据库类执行SQL语句实例

Microsoft Word - HFSS软件系统介绍.doc

res/layout 目录下的 main.xml 源码 : <?xml version="1.0" encoding="utf 8"?> <TabHost android:layout_height="fill_parent" xml

els0xu_zh_nf_v8.book Page Wednesday, June, 009 9:5 AM ELS-0/0C.8

(Microsoft Word - PK254P\262\331\327\366\312\326\262\341.doc)

言1.PDF

Chapter 24 DC Battery Sizing

大漠 伪前端, 就职于淘宝

untitled

錄...1 說...2 說 說...5 六 率 POST PAY PREPAY DEPOSIT 更

ebook140-9

安全注意事项 2. 设置对焦模式 3. 变焦 1. 安装和卸下镜头 4. 固定变焦环 1 2 CHI-2


Gerolor Motors Series Dimensions A,B C T L L G1/2 M8 G1/ A 4 C H4 E

ebook140-8

Gerotor Motors Series Dimensions A,B C T L L G1/2 M G1/ A 4 C H4 E

圖 1. 手 工 搭 棚 [ 與 PCB 印 刷 電 路 板 PCB 除 了 電 路 之 外, 也 放 置 各 種 電 子 零 件 如 圖 2 所 示, 電 子 零 件 與 PCB 的 接 合 方 式 有 二 : 插 件 式 (Pin Through Hole, PT

KDC-U5049 KDC-U4049 Made for ipod, and Made for iphone mean that an electronic accessory has been designed to connect specifically to ipod, or iphone,

F515_CS_Book.book

Important Notice SUNPLUS TECHNOLOGY CO. reserves the right to change this documentation without prior notice. Information provided by SUNPLUS TECHNOLO

Microsoft Word - InoTouch Editor编程软件手册 doc

ARM JTAG实时仿真器安装使用指南

ChinaBI企业会员服务- BI企业

K301Q-D VRT中英文说明书141009

PTS7_Manual.PDF

USING MAYA ANIMATION Keyset set Maya sets partitions MEL MEL copykey cutkey pastekey scalekey snapkey keytangent bakeresults MEL Command Reference Edi

Ác Åé å Serial ATA ( Sil3132) S A T A (1) SATA (2) BIOS SATA (3)* RAID BIOS RAID (4) SATA (5) SATA (a) S A T A ( S A T A R A I D ) (b) (c) Windows XP

ANSYS 12.0软件培训

Business Objects 5.1 Windows BusinessObjects 1

LSI U320 SCSI卡用户手册.doc

第 29 卷第 9 期 Vol. 29 NO. 9 重庆工商大学学报 ( 自然科学版 ) J Chongqing Technol Business Univ. Nat Sci Ed Sept X * ABAQUS 1 2

0 配置 Host MIB 设备 V ( 简体版 ) 0 Update: 2016/1/30

Microsoft Word - Front cover_white.doc

K7VT2_QIG_v3

如何在可支持影拓压感触控笔的 apps 中连接压感触控笔 重要 : 在您开始使用前, 请打开 ipad 上的蓝牙功能 影拓压感触控笔不会出现在您 ipad 上的蓝牙设备列表里 影拓压感触控笔需要在每个单独的 app 里进行连接 找到软件并按照以下步骤来连接您的影拓压感触控笔 同时, 为防止误触控,

Product Type Batteries (only) Circuit Breatkers & Load Protection Connection Devices Contactors Ethernet Switches, Stratix Switches I/O Modules; PLC N

1.ai

Windows XP

专注于做最好的嵌入式计算机系统供应商

LSC操作说明

! " # " " $ % " " # # " $ " # " #! " $ "!" # "# # #! &$! ( % "!!! )$ % " (!!!! *$ ( % " (!!!! +$ % " #! $!, $ $ $ $ $ $ $, $ $ "--. %/ % $ %% " $ "--/

SA-DK2-U3Rユーザーズマニュアル

X713_CS_Book.book

WebSphere Studio Application Developer IBM Portal Toolkit... 2/21 1. WebSphere Portal Portal WebSphere Application Server stopserver.bat -configfile..

(Load Project) (Save Project) (OffLine Mode) (Help) Intel Hex Motor

IDEO_HCD_0716

Ioncube Php Encoder 8 3 Crack 4. llamaba octobre traslado General Search colony

PCB设计问题集

Transcription:

Altair HyperMesh v. 6.0

86-21-53930011 ~ 9:00AM~5:30PM 86-21-53930859 Email support@altair.com.cn www.altair.com.cn Altair, HyperWorks, HyperForm, HyperGraph, HyperMesh, MotionView, OptiStruct, HyperStudy, HyperView HyperView Player Altair ( ) HyperWorks tutorials/hm/training/ support@altair.com.cn

Altair HyperMesh.....1 HyperMesh......... 2 HyperMesh........ 3 (Graphics Area).........3 (Header Bar)....3 (Main Menu)...4.......4 (Macro Menu)..4 1.1:........ 5 (Permanent Menu)....... 6 Toggles switches...7 1.2:......7....9 (Secondary Menu)......10...11 1.3:......14 (Standard and Performance Graphics)......17....18... 19 Files...21 Collectors... 22 1.4: Card... 23 HyperMesh... 24........ 26......26 2.1: HyperMesh...... 26 2.2: (Material Collectors).... 27 2.3: (Component Collectors)... 28 2.4: Spline......29 2.5: Line Drag.... 31 2.6:... 32 2.7: (Load Collectors)...... 32 2.8:... 33 2.9:... 35 2.10:.......38 2.11: OptiStruct.....40... 41 2.12:....... 42 2.13:... 42

...... 45. 45 Geometry Cleanup... 46 Defeature...... 48 Surface Edit / Filler Surface... 49 3.1:...... 50 3.2:...52 3.3:... 58 3.4:.....62 3.5:.......63

前言 基础培训面向的对象 基础培训课程是为那些没有使用过 HyperMesh 而希望利用它来掌握有限元分析技术的工程人员设计的 这一课程包含了如下内容 : HyperMesh 的界面介绍 有限元模型处理 几何清理和曲面网格划分 每一个部分都包含了简单的练习来帮助您熟悉所有提到的新技术 手册的符号 这本手册使用了下列符号 : courier 字体表示你应当用键盘输入的内容 bold italic 粗斜体字体表示面板的名称 按键的名称和子面板的名称非常重要的内容和警告信息会出现在一个注释方框中 这是一个注释框的例子, 重要信息会注释在这里 这是一个警告框的例子, 危险信息会出现在这里 更多帮助 如果您对这一课程的资料需要其它帮助, 您可以在这本手册的首页找到必要的联系方式 对这本培训手册的意见和建议可以直接发送到 support@altair.com.cn - 1 -

第一章 HyperMesh 简介 HyperMesh 是一个高性能的有限元前后处理器, 可以用它建立有限元模型 观察计算结果 和进行数据分析 此外, 还可以使用 Altair 公司的软件产品 OptiStruct 求解器来快速地进行 产品性能分析并改进产品的设计 在计算机辅助工程 (CAE) 里,HyperMesh 是一个很重要的工具, 下图是整个 CAE 的处理过 程 : - 2 -

HyperMesh 窗口界面 HyperMesh 的窗口界面包含五个主要区域 : 图形区 (graphics area) 宏菜单 (Macro Menu) 标题栏 (header bar) 主菜单 (main menu) 和永久菜单 (Permanent Menu) 此外还可以使 用键盘上的功能键进入主菜单下的二级菜单 下图是 HyperMesh 的主界面 : 图形区 (Graphics Area) 图形区显示几何 有限元模型 XY 曲线图和结果图 标题栏 (Header Bar) 标题栏主要显示当前操作面板的名称和模型的状态信息 此外, 如果系统有提示信息, 这 些信息会暂时覆盖掉面板的名称和状态信息 - 3 -

主菜单 (Main Menu) 主菜单内包括非常多的子菜单,HyperMesh 根据其功能不同, 将之分成七页 : 页面 Geom 1D 2D 3D BCs Tool Post 功能线的创建和几何的编辑功能一维单元的创建和编辑功能二维的曲面和单元的创建和编辑功能三维的几何和单元的创建和编辑功能边界条件 系统和载荷的创建功能模型编辑 模型质量检查和有关模型信息的功能后处理和绘制 xy 曲线图的功能 鼠标的使用 鼠标对于 HyperMesh 的使用是非常重要的, 在几乎任何需要用户输入信息的地方都会用到 它 在 HyperMesh 中可以使用双键或者三键鼠标 鼠标的按键有下列功能 鼠标左键鼠标右键鼠标中键 CTRL 键 + 鼠标左键 CTRL 键 + 鼠标中键 CTRL 键 + 鼠标右键 执行选择操作在图形区中执行反向选择并放弃图形操作在永久菜单上选择 (r) 或 (a) 进行旋转操作时, 在模型中用中键点击一个节点意味着你选择了一个新的旋转中心动态地旋转模型对模型的某一区域进行局部放大平移模型 此外, 用户还可以利用 CTRL+C 和 CTRL+V 的组合键来剪切和粘贴数字信息 宏菜单 (Macro Menu) 用户可以在宏菜单区中个性化地设置 HyperMesh 界面, 这种界面可以包含功能键 单选框 和文本等控件, 用户可以用 TCL/TK 语言开发出 HyperMesh 支持的宏, 并可以将自定义的 宏与上述这些控件相关联 这个宏菜单的默认位置在屏幕的右边, 在永久菜单的上方 宏菜单的显示和可用的操作是由一个宏文件来控制的 而用户可以更改的属性包括 : 显示这个菜单的页面 控件中显示的文字 - 4 -

菜单的位置和大小 在菜单标题栏中显示的帮助信息 调用的宏及其需要的可选参数 参考 在线帮助 中的 宏菜单 部分可以获得更多的有关创建和定制宏 菜单的信息 练习 1.1: 打开数据文件 提取 HyperMesh 数据文件 1. 从任何一个页面中选择 files 面板 ; 2. 点击单选框选择 hm file 子面板 ; 这个单选框变成白色表示这个 files/hm file 子面板已被激活 3. 点击 retrieve... 并用浏览器选择 bumper.hm 这个文件 ; 这个文件 bumper.hm 应当会位于当前课程的工作目录下 如果您属于自学, 该文件的位置 在 HyperWorks 安装目录下的 altair/tutorials/hm/training 子目录中 4. 在浏览器窗口上点击 open 按钮 ; 5. 点击 return 退出 files 面板 - 5 -

永久菜单 (Permanent Menu) 用户可以使用永久菜单 (Permanent Menu) 控制察看模型的视角, 控制在图形区中需要显 示哪些 collectors, 设置全局的模型参数并编辑与特定求解器有关的数据 下面列举出永久菜单中的模型察看功能菜单, 可以通过点击永久菜单上的相应按钮来改变 图形区的的模型显示, 这些功能也可以通过键盘上相同的字母或者加减号按键来实现 当 然, 还可以使用键盘的方向键来旋转模型 z (zoom) p (plot) 放大模型局部, 放大的部分可以由在图形区中划出的封闭图形来指定 刷新图形区 将模型绕屏幕的 x 和 y 轴旋转一定角度, 该角度是在 options/modeling 子面板里设定的 逐渐地将模型绕屏幕的 z 轴沿逆时针或者顺时针地旋转 w (window) 定位 xy 曲线图的窗口, 修改 XY 轴的比例和窗口标题等 f (fill) 在图形区中将所显示的 collectors 的视图最大化 r (rotate) 动态地将模型绕屏幕的 x 和 y 轴进行旋转 如果有鼠标中键, 还可以用其来点击一个节点或者几何点使其成为旋转中心 ( 但在动画处理或者察看网格的时候是不能选取旋转中心的 ) s (slide zoom) 前后移动鼠标动态地将模型放大和缩小 c (center) 通过选择新的中心传送模型或平移模型 t (true view) 通过使用局部向量或输入视角的绝对值选择模型视图 a (arc rotate) 通过点击然后拖动鼠标来动态地旋转模型 如果有鼠标中键, 可以用其点击一个节点或几何点确定旋转中心 ( 但在动画处理或者察看网格的时候是不能选取旋转中心的 ) + - 从屏幕中心位置放大或缩小一定比例, 这一比例是在 options/modeling 子面板中指定的 - 6 -

b view 返回前一个视图 从一些基本视角显示模型并可以保存和恢复模型的不同视图 可以使用下面永久菜单中的项目进入一些面板, 在这些面板中, 可以设定全局参数 定制 界面和控制屏幕显示等 菜单项 功能和子面板 options 为视图和模型处理定义参数 : modeling 指定几何和模型的容差 显示设定 graphics 设定标准和定制图形模式 menu config 为面板和图形标签设定字体大小, 也设定和激活宏 菜单 colors 设定背景颜色 面板颜色 坐标轴颜色和几何清理 的颜色 page names 用来更改页面名称 postscript 指定后处理的打印选项 Spaceball 为 spaceball 设定敏感度 card 在 Card 格式中编辑求解器的特定数据 global 定义全局参数, 这些全局参数是可以被不同的面板调用的 help 调用 HyperMesh 的在线帮助文档 disp 控制在图形区中显示哪些 collectors 以一个组件和装配的树状结构示意图来察看 HyperMesh 模型 vis 控制显示选项 仅当定制图形模式被激活时才可使用 Toggles 和 switches 按钮 这些关于 toggles 和 switches 的图标出现在一些面板和子面板中 Toggle: Switch: 在两个选项之间切换 提供一个弹出菜单, 其中有很多选项可以选择 练习 1.2: 显示单元和几何 在这个练习中, 通过使用永久菜单中的 display 面板打开和关闭单元或几何的显示 有标记的复选框表示该项处于激活状态, 没有标记表示未被激活 - 7 -

改变屏幕的显示 1. 在永久菜单中, 选择 disp 面板 2. 点击 comps 左边的开关 (switch, 如下图 ) 这样就出现了一个弹出菜单列表, 列表中列出可以打开或关闭的 collector 的类型 当将鼠 标指针移出弹出菜单以后, 这个弹出菜单就关闭了 3. 从弹出菜单中选择 comps 以指定要显示的 components 一旦选定了 comps, 弹出菜 单就关闭了 4. 点击 elems 左边的 toggle 键切换到 geoms, 这样几何类型的 component 就被激活 在上面的图中可以看到 toggle 键的位置 一个列表显示了包含几何的 component collectors 在 mid1_and_lines 这个 component collector 前面的复选框中有一个标记, 它表示该 component 的几何现在显示在图形区内 5. 在 mid1_and_lines 这个 component 前的复选框上或者该 component 的名称上点击鼠 标右键, 这个复选框中就不再有白色标记了 该 component 中的几何显示就被关闭 6. 在永久菜单上点击 p 刷新图形区 7. 点击 toggle 键将其切换到 elems 一个列表显示了包含单元的 component collectors 在 end1,end2, mid1_and_lines 和 mid2 这些 component collector 前面的复选框中有一个标记 8. 在 end1 和 mid1_and_lines 这两个 component 前的复选框上或者其名称上点击鼠标右 键, 其中就不再有白色标记了 这两个 component 中的单元显示就被关闭 9. 在永久菜单上点击 p 刷新图形区 10. 在图形区中, 点击一个蓝色的单元 ( 在靠近其控制点的地方点击 ) 单元的控制点 (handle) 是指其质心的那个点 于是相应的在 end2 之前的那个复选框中的白色标记也消失 了 整个 end2 这个 collector 的所有单元的显示都被关闭 - 8 -

11. 在 end2 这个 component 前的复选框上或是其名称上点击鼠标左键 复选框中出现了白 色标记了 这两个 component 中的单元显示重新被打开 12. 点击 all 这个按钮 所有 component 中的所有单元都被显示出来, 相应的复选框里也都 有了标记 13. 点击 return 退出 display 面板 使用模型浏览器控制模型的显示 控制模型的显示属性的另一个方法是使用模型浏览器 通过这个方式, 模型的层次展现在 一个树状结构中 component 的显示属性, 例如颜色 显示类型 名称和当前 component 等, 都可以通过一个菜单来设置 这个菜单可以用鼠标右键点击模型浏览器来激活 1. 点击永久菜单上的模型浏览器按钮来激活模型浏览器 模型浏览器出现在一个新的窗口中 重新设置该窗口的大小或者为其重新定位的过程与原 先的 HyperMesh 窗口无关 2. 点击模型浏览器顶部 Elems 旁边的单选键 3. 点击对应于某个 component 的复选框可以控制该 component 的显示, 选中表示打开, 去 掉表示关闭 4. 在 mid1_and_lines 这个 component 的名称上点击鼠标左键 环绕这个 component 名称的蓝色的光标表示它已经被选中了 5. 点击鼠标右键 出现一个弹出菜单, 这个菜单上有一系列可以应用于这个被选中的 component 的选项 6. 选择 Make current 这个选项 于是 mid1_and_lines 这个 component 的名称变成了粗斜体字母, 它表示这个 component 是当前被激活的 component 菜单上对这个 component 可用的选项包括 : 激活该 component 使之成为当前 component, 改变其颜色, 改变其显示方式 ( 仅当处于 performance 图形模式下 ), 以及重命名或者删除该 component 菜单上有些选项是不可用的, 这是因为它们不能被用于指定的 component 这些不可用的选项包括 : 在 standard 和 performance 这两种图形模式间切换, 创建新的装配或组件, 或者改变名称的显示模式 要使用这些选项, 在模型浏览器的窗口里 ( 但不要在某个特定的 - 9 -

component 名称上 ) 点击鼠标右键 7. 在 component 列表之外点击鼠标右键, 然后在弹出菜单中选择 Create new assembly, 如果需要可以改变新建装配的名称 装配是指组件的功能性群组, 它被用来组织模型 在模型浏览器中, 可以通过拖拽鼠标将组件添加到一个装配中 8. 将 end1, end2 mid1_and_lines 和 mid2 这些 component 拖到这个新的装配中 在拖拽过程中, 当装配的名称出现高亮度时放开鼠标 现在, 点击这个装配对应的复选框就可以控制整个装配的显示了 同样, 点击树状结构上这个装配前面的减号就可以不显示装配中的组件 9. 在 component 列表之外点击鼠标右键, 然后从弹出菜单中选择 Change graphics mode, 再选择 performance 切换到定制的图形模式 在 performance 图形模式中, 可以点击 component 当前显示方式的按钮, 随后可以在出现的选项里控制该 component 的显示方式 同时还可以使用每个 component 的 Change style 菜单来控制其显示方式 10. 点击模型浏览器右上角的小 X 按钮关闭模型浏览器 第二级菜单 (Secondary Menu) 通过 F1 到 F12 以及 SHIFT+F1 到 F12 这些功能键, 可以调用主菜单的第二级菜单 调用二级菜单时, 这些二级功能会暂时中断主面板的功能, 但不会影响主面板的所有设置和选择 当二级功能完成以后, 初始的主面板功能就被恢复了 Altair 公司有键盘的模板, 它标明了每一个功能键调用的面板 还可以用 Tool 页面的 build menu 面板来重新定义功能键的调用功能 - 10 -

菜单项目简介 面板可以包含子面板 功能按钮 切换按钮 多选按钮 操作对象选择器 方向选择器 数据登入区域 输入区域和弹出菜单 每个面板的菜单项目帮助用户指定实现面板功能所需的设置和输入信息 在 HyperMesh 工作区的面板的布置是从左到右分布的 面板的左边包含了许多为操作收集工具的信息, 面板的右边是执行操作的执行按键 在 Tool 页面中, 使用 translate 面板为例来观察这一部分描述的菜单项目 操作对象选择器 Entity Selector 用户在执行一项功能时, 首先需要用操作对象选择器来指定要被操作的对象类型 它可能有一个 switch 按钮, 但是当执行的功能只针对一种类型的操作对象时, 则没有 switch 按钮 操作对象选择器的按钮是黄色的, 当按钮被蓝色的方框包围时, 表示这个控件处于激活状态, 可以用它来选择要被处理的操作对象 方向选择器 Direction Selector 用户可以用方向选择器定义一个平面或者方向, 定义的方式有多种, 例如使用全局的 x y 或者 z 轴, 或者使用一个基准点, 或者选定一个向量, 或者在数据模型上选定一些节点 点击 switch 按钮打开选择方向的弹出菜单 - 11 -

x-, y-, and z-axis 用户可以指定沿着总体坐标系的某个坐标轴的一个方向 N1, N2, N3 用户可以创建一个用户自己定义的方向 如果选择两个节点 N1 和 N2, 表示定义了一个向量方向, 该向量的方向是从基准点 N1 到 N2 如果选择三个节点 N1 N2 和 N3, 表示定义了一个以 N1 为基准点 ( 除非特别指定 ) 的平面 向量垂直于这个平面, 其方向服从右手法则 Vector 用户可以使用预先存在的向量 ( 可以使用 vector 面板来创建向量 ) 来 定义一个方向 base 定义一个方向向量的基准点, 该向量的方向沿着一条无限长的直线, 这个方向和这个基准点定义了需要的平面 设想一个平面的镜子定义了一个垂直于一把尺子的平面 你可以沿着尺子移动这面镜子, 基准点定义了将镜子移动到尺子的哪个位置 edit 点击这个按钮进入方向选择器的 Node Vector Edit 面板 ( 如下图 ) 在这个面板中, 用户可以通过输入节点的值来定义或者编辑 N1, N2 和 N3 和 ( 或者 ) 基准点的坐标 - 12 -

reset 清除所有节点的选择 在在线帮助中, 方向选择器是由 plane and vector collector 表示的 输入区域 输入区域被用来输入文本或者数值 输入区域前面有输入类型的描述 对数值输入区域来说, 可以双击这个输入区域并使用 HyperMesh 的计算器来输入数值 弹出菜单 (Pop-up Menus) 弹出菜单会显示一些供选择的选项 用户可以使用扩展的操作对象选择菜单来指定选择当前类型的操作对象的方法 点击操作对象选择器黄色的数据类型按钮就可以使用这种扩展的菜单 当做出选择后, 这个菜单会自动关闭 下图是一个扩展操作对象选择菜单的例子 - 13 -

弹出菜单的另一个例子是 view 菜单, 用户可以用它来指定不同的观看模型方式 HyperMesh 立即处理做出的选择, 随后等待做出更多选择 这个弹出菜单会保留在屏幕上, 直到用户将鼠标指针移动到菜单之外 功能按键 (Function Buttons) 菜单按键的颜色是与按键的功能对应的 : 绿色 执行一个功能或者一个命令 红色 退出一个面板或者放弃一条指令 练习 1.3: 单元平移 在这个练习中, 学习使用 view 菜单选择模型的新视角, 并使用 translate 面板将单元沿着一个向量平移 这些技巧经常被用于 HyperMesh 的建模工作 调用 translate 面板 1. 在主菜单上选中 Tool 旁边的单选项可以进入 Tool 页面 2. 点击 translate 用一个不同的视角显示模型 1. 在永久菜单上点击 view View 的弹出菜单就会出现 2. 在弹出菜单中点击 top 3. 将鼠标指针移出弹出菜单的区域 此时,View 的弹出菜单就会自动关闭 - 14 -

选定要平移的单元 1. 点击 translate 面板左上角的操作对象选择器开关 出现一个弹出菜单, 显示出所有可以用 translate 面板的功能来处理的操作对象类型 此时 鼠标指针的位置是在这个弹出菜单的中心 2. 选择 elems 就表示指定 elements 作为想要平移的操作对象类型 当选择 elems 后, 弹出菜单自动关闭 黄色的操作对象选择器按钮会显示 elems, 按钮 有一个蓝色的边界表示它当前处于激活状态 3. 点击 elems 弹出扩展的操作对象选择菜单, 此时鼠标指针位于这个弹出菜单的中心 4. 点击 by collector, 表示希望通过 collector 来选择单元 选择 by collector 之后, 会出现一个所有 component collector 的列表 在图形区内, 点击一个桔红色的单元 选择这个单元的同时也就选择了包含这个单元的 component collector, 在这个例子中就是 end1 被选中的单元立刻就变成白色, 同时 end1 名称前面的复选框中就出现了白色标记 5. 点击 select 就选择了 end1 的所有单元, 这些就是希望利用 translate 功能进行修改的单元 Translate 面板再次出现, 此时图形区中 end1 的所有单元显示为白色 为被选中的单元指定要平移的方向 1. 点击方向选择器开关 一个菜单列出了平移选中操作对象的平面和向量选项的列表 此时鼠标指针位于这个弹出 菜单的中心 2. 点击 N1,N2, N3 确定使用 N1, N2, N3 这个方法 当选择 N1, N2, N3 以后, 弹出菜单就自动关闭 3. 点击 N1 N1 这个按钮出现了蓝色的边界表明它已被激活 同时在图形区中被选定的单元变成灰色, 这是因为此时操作对象选择器不再处于激活状态 4. 在图形区中点击一个节点 node 图形区中被选中的节点出现一个绿色的圆圈 同时 N1 按钮上的蓝色边界转移到 N2 按钮上, - 15 -

表示现在 N2 已被激活 5. 在图形区中, 点击任意一个节点 图形区中被选中的节点出现一个蓝色的圆圈 同时 N2 按钮上的蓝色边界转移到 N3 按钮上, 表示现在 N2 已被激活, 但此时并不指定 N3 节点 只选择两个节点为平移方向定义了一个向量 如果选择第三个节点则表示定义一个平面, 而平移的方向垂直于这个平面 6. 在图形区中, 在 N2 节点的蓝色圆圈上点击鼠标右键取消选定 蓝色的 N2 节点就消失了, 同时 N2 按钮重新出现了蓝色边界 7. 在图形区中点击一个不同的节点 图形区中被选中的节点上出现一个蓝色的圆圈 测量这个保险杠某一部分的尺寸 1. 在键盘上按下 F4 功能键暂时中断 translate 面板并调用 distance 面板 Distance 面板中的 N1 按钮上有蓝色边界表示它当前被激活 2. 点击 edit 出现 Node Vector Edit 面板 3. 在图形区中为 N1 选一个节点 可以为 N1 编辑 x, y 和 z 坐标 4. 为 N2 选定另一个节点 可以为 N2 编辑 x, y 和 z 坐标 5. 点击 return 退出 Node Vector Edit 面板 Distance 重新出现 节点 N1 和 N2 的绝对距离就自动出现在 distance = 后面的输入框中 6. 要退出 distance 面板, 点击 return Translate 面板重新出现 在使用 distance 面板之前选定的单元和 N1 N2 两个节点仍处于 被选定状态 为选定的单元指定平移距离 1. 双击 magnitude = 出现计算器的弹出菜单 - 16 -

2. 在计算器菜单中按顺序点击 5 和 0 3. 点击计算器菜单中的 exit 计算器的弹出菜单被关闭 在计算器菜单中输入的数值 50 就出现在 magnitude = 后面的数 据栏中 平移选定的单元 1. 点击 translate + 这样选定的单元沿着 N1-N2 向量 ( 这个向量以 N1 为基准点并穿过 N2) 的正方向平移了 50 个单位 2. 在永久菜单上点击 f 模型根据屏幕自动调整大小达到最大化 3. 在永久菜单上使用旋转 r 或者弧度旋转 a 来旋转模型, 观察模型是如何变化的 4. 点击 translate - 选定的单元沿着 N1-N2 向量的负方向平移了 50 个单位 这样单元重新出现在它们初始的位 置 5. 在方向选择器上点击 reset N1 按钮上出现了蓝色边界表明它现在又被激活 6. 尝试利用 N1, N2, N3 功能, 通过定义一个平面来将选定的单元沿 X 轴正方向平移 7. 点击 return, 退出 translate 面板 标准和定制图形 (Standard and Performance Graphics) HyperMesh 有两个图形驱动器 :standard 和 performance 两者之间的区别如下: HyperMesh 的特征 Standard 图形驱动模式 Performance 图形驱动模式 Vis 面板 不可用 仅当处于 performance 图形模式时, 才可以从永久菜单中调用 vis 面板来控制单元的显示特性 鼠标点击选择的控制点 所有的几何和单元都有选择的控制点 通过在 options/modeling 子面板中激活相应的选项, 可以控制几何和单元的选择控制点在图形区中的显示 只有 1 维单元才有选择控制点 通过在 options/modeling 子面板中激活相应的选项, 可以控制 1 维单元的选择控制点在图形区中的显示 - 17 -

在图形区中选择节点 直接点击希望选择的节点 直接点击节点或者按住鼠标左键拖动来选择 在一个单元的任意位置按住鼠标左键并拖动鼠标指针直到该单元变亮, 然后将鼠标指针移动到这个单元上靠近所需要的节点的位置, 放开左键 在图形区中选择几何和 单元 模型显示属性 按住鼠标左键将鼠标指针拖动到靠近选择控制点的地方, 当所要选择的线 曲面或单元变亮时放开左键 只能以 wireframe 模式观看模型 在 hidden line contour vector plot deformed transient 和 replay 面板中, 可以通过 wireframe 和 hidden line 模式察看模型 1 维单元的选择与 standard 图形模式中的选择方式相同 对其他类型的操作对象, 在所要选择的操作对象上的任意位置, 按住鼠标左键并拖动鼠标指针, 在其变亮后放开左键, 即表示选定 可在任何情况下以 wireframe hidden line hidden line with mesh lines hidden line with feature lines 和 ( 或者 ) transparent 模式察看模型 AVI 和 H3D 文件的创建不可用 可以创建 AVI 和 H3D 文件 当采用 performance 图形驱动模式时, 有五个单元显示属性可供选择 这些属性的设置是 在 vis 面板中 : wireframe 单元的显示形态为网格线条显示 hidden line 单元的显示形态为颜色填充, 无网格线显示 hidden line with mesh lines 单元的显示形态为颜色填充, 且具有网格线 hidden line with feature lines 单元的显示形态为颜色填充, 显示 特征 边, 无网格线 transparent 单元显示为透明 宏菜单介绍 用户可以在宏菜单区中个性化地设置 HyperMesh 界面, 这种界面可以包含功能键 单选框 和文本, 用户可以用 TCL/TK 语言开发 HyperMesh 支持的宏与上述这些控件相关联 这个 宏菜单的默认位置在屏幕的右边, 在永久菜单的上方 宏菜单的显示和可用的操作是由一个宏文件来控制的 而用户可以更改的属性包括 : - 18 -

显示这个菜单的页面 控件中显示的文字 菜单的位置和大小 在菜单标题栏中显示的帮助信息 调用的宏及其需要的可选参数 这些宏所包含的任何有效的命令行文件指令都在 *beginmacro() 和 *endmacro() 这两条指令之间 宏可以接受变量参数, 并将它们传递给控件, 传递过程中使用 $1 $2 等参数, 指定这些变量参数应被替代的位置 用户可以用 *callmacro() 命令从一个宏的内部调用另一个宏, 这样可以创建标准的可用宏的组 当 HyperMesh 启动以后, 如果在当前主机 ( 只针对 UNIX 系统 ) 上或者应用程序初始目录下有一个名称为 hm.mac 的宏文件, 则这个文件会自动运行, 它定义了宏菜单的属性和内容 也可以在 HyperMesh 启动之后再运行一个宏文件, 或者从 options/menu config 面板中确定宏菜单的显示 虽然宏在很大程度上非常灵活, 但应当记住 : 一旦执行了宏指令, 就不能再取消执行或者拒绝执行的结果 一个宏也不能递归调用其本身 默认的宏菜单 宏菜单位于图形区的右边 Disp 这个宏菜单参见右图 它分为三个区域 : 宏 显示和页面 每一个区域都有多个选项 页面选择按钮位于宏菜单的底部 quit 按键的上面 六个预先设定的按钮分别是 QA Mesh User1 off Disp 和 Geom 每一个页面都包含不同的工具和宏 利用这些工具按键, 用户可以迅速地执行一些功能, 而通常这些 功能的执行需要很多步骤 每一个页面都有自己的工具设置 在 Geom 页面上有三个工具 : Isolate surf 从一个 3 维模型中提出一个内部或外部表面层 这个宏只作用于与选定的曲面附着在一起的曲面 其它的层和厚度随后被放在一个临时目录里被隐藏掉 Washer Adj circ pts 将圆周长放大一定倍数 ( 默认值为 1.5), 随后用这条新的圆周线来切分 曲面 这个功能可以帮助在圆孔周围实现更好的网格质量 在一条内部线上放置三个额外的固定点, 然后将这些固定点映射到一条 - 19 -

同心的线上 这个功能可以帮助生成高质量的网格 在 QA 页面上有 12 个宏工具, 利用它们可以迅速地清理在图形显示区中的网格 其中的 8 个宏工具可以用来分离出任何不能通过某项单元质量检查的单元 这些宏只显示那些不合格的单元 下述指标的含义可以在帮助文档中 2-D subpanel - check elems 中找到, 检查的门槛值可以在 hm.mac 文件里更改, 其默认值是 Length < 5.0 Jacobian < 0.5 Warpage > 20.0 Aspect Ratio > 5.0 Max Angle Quad > 150.0 Max Angle Tria > 140.0 Min Angle Quad < 20.0 Min Angle Tria < 10.0 最后可以使用其它四个宏迅速地修改那些不合格的单元 : Find attached Remesh Smooth Find between 找出所有与当前显示出来的单元 ( 不合格的单元 ) 相连的单元 重新划分选定的单元和与这些单元相连的 1~3 层单元 重新划分不改变当前的单元大小, 不破坏原有的连接, 但使用混合的单元类型 对选定的单元和与这些单元相连的 1~3 层单元应用 smooth 算法提高其质量和外观 寻找被两个 component 同时共享的单元 Mesh 页面上有六个宏 : Auto Connectors 自动创建连接单元 Del Elems by surf 删除附着在选定的曲面上的面单元 Remesh 与 QA 页面上的相同 Smooth 与 QA 页面上的相同 Split warped 处理整个模型, 将所有 warpage 大于某个设定值 ( 默认值为 20) 的 四边形单元沿其对角线拆分为三角形单元 R-Mesh 对曲面按照弦差方式划分网格 Disp 宏菜单上有很多处理光源和镜像的宏以及控制显示的按钮 可以通过它们用很多方式 来改变图形的显示 : Geom Elems 打开或关闭模型中所有的几何 打开或关闭模型中所有的单元 - 20 -

Shrink 将模型中的单元缩小 20% Gfx 选择模型的显示模式,performance 还是 standard Vis opts 为模型选择拓扑显示模式, 有以下四个模式可供选择 : 0 标准模式, 该模式是最常用的 1 component 颜色模式, 模型的边始终与其所属的 component 的颜色保持相同, 即使在 automesh 面板中 2 拓扑模式, 曲面的边的显示取决其连结特性, 显示方式与在 geom cleanup 面板中相同. 3 阴影模式, 无论当前在哪个面板下都可以用阴影模式来显示模型 Surf Line 在模型中显示曲面线, 可以选择在每个曲面上显示一条 两条 三条线或不显示线 Only comps 关闭所有除了 componet collector 以外的 collector Mask lines 隐藏掉模型中所有显示出来的线条 Temp nodes 删除所有显示出来的临时节点 Macros off 关闭宏菜单 Files 面板 Files 面板包含下列子面板 : hm file 保存和提取 HyperMesh 二进制数据文件 除了受操作系统规定的限制以外, 对 HyperMesh 数据文件的扩展名没有任何限制 注意在 6.0 以下的版本中, 不能将一个 HyperMesh 数据文件提取到另一个 HyperMesh 数据文件的内部 import 导入由 CAD 生成的几何或者有限元模型信息 可以将一个由 CAD 生成的几何或者一个有限元信息文件导入到一个 HyperMesh 数据文件中 HyperMesh 导入编译器的路径是 /altair/hm/6.0/bin/feinput/, 默认情况下, 这个子面板中 translator = 后面的输入框中会载入此路径 export 将 CAD 几何或有限元信息编译成指定的分析代码 编译模板的路径名是 /altair/templates/6.0/feoutput/ 该路 径名通常被默认地指定在该子面板上 template = 后面的输入框中 command 执行一个 HyperMesh 命令文件 template 根据采用的分析软件, 指定 HyperMesh 数据的模板 - 21 -

编译模板的路径名是 /altair/templates/6.0/feoutput/ 该路 径名通常被默认地指定在该子面板上 template file = 后面的输入框中 results 指定结果文件 除了 Altair 的 OptiStruct 的结果文件以外, 其它类型的结果文件需要被编译成 HyperMesh 语言 才能用 HyperMesh 来处理 要编译这些结果文件需要使用 /altair/translators/6.0/ 目录里相应的编译器 要重新设置这些导入 导出或者模板的路径, 需要删除整个路径名, 然后离开再返回这 个面板 Collectors 面板 Collectors 面板的功能是 : 创建 察看和编辑 collectors card images 或者 dictionaries Collectors 的作用是储存和管理一些数据, 例如几何 单元 单元属性 单元材料 载荷 坐标系和向量等等 HyperMesh 有以下七种 collectors: component 只能储存单元 线条和曲面数据 注意 : 单元 线条和曲面不能单独存在, 它们只能存在于一个 component 中 如果事先没有创建一个 component,hypermesh 会自动为生成的操作对象创建一个, 其名称为 auto1 property 只储存在 component collector 中的单元的属性信息 Material 只储存在 component collector 中的单元的材料信息 load 只储存诸如集中力 压力和约束的载荷信息 注意 : 载荷不能单独存在, 它们只能存在于一个 load collector 中 如果你事先没有创建一个 load collector,hypermesh 会自动为生成的载荷创建一个, 其名称为 auto1 system 只储存坐标系 vector 只储存向量 beam section 储存梁截面数据 在 collectors 面板中, 如果在 files/template 子面板或者 global 面板中定义了模板, 就可以 为 collector 选择 card images 或者 dictionaries 了 Card images 和 dictionaries 根据所指定的 - 22 -

模板保存各种属性数据, 这样当输出 HyperMesh 数据时, 这些保存在 card images 或者 dictionaries 中的属性数据会被输出到批数据文件中 练习 1.4: 使用 Card 面板 在这个练习中, 使用 card 面板来察看保险杠模型的特性 首先必须知道这个保险杠模型所使用的模板是 HyperMesh 的 abaqus/standard.3d 模板 为察看此模型的属性, 需要载入这个模板 载入模板 1. 从任一菜单页中选择 files 2. 选择 template 子面板 3. 双击 template file = 4. 选择 abaqus/ 5. 选择 standard.3d. 6. 点击 return 退出 files 面板 察看单元的卡片格式 1. 在永久菜单上点击 card 2. 点击操作对象选择器开关并选择 elems 或者在模型上双击一个单元, 两种方法都可以将操作对象选择器改变为 elems 3. 在图形区中选中一个绿色的单元 4. 点击 edit 这个单元的 card image 以弹出菜单的形式显示出来 这个 card image 识别出所选定单元的类型是 Abaqus 的 S4 单元, 该单元属于 mid2 这个 component collector 同时还显示该单元的 ID 号 该信息在分析文件中的格式与其在这个 card image 中的格式是相同的 5. 单击 return 退出这个 card image 察看一个 component collector 1. 将操作对象类型设为 comps 2. 点击 comps 3. 点击 end1 4. 点击 select 5. 点击 edit end1 这个 component collector 的 card image 以弹出菜单的形式出现 从 card image 中可以看到这个 collector 中的单元厚度都是 2 个单位, 单元的材料都是一种名为 steel 的材料 该信息在分析文件中的格式与其在这个 card image 中的格式是相同的 6. 点击 return 退出这个 card image - 23 -

察看并编辑一个 material collector 1. 将操作对象类型设置为 mats 2. 点击 mats 3. 点击 steel 4. 点击 select 5. 点击 edit 显示出 steel 这个材料 collector 的 card image 从 card image 中可以看到 steel 材料是各向同性的和弹性的 同时也知道了该材料的弹性模量 E 和泊松比 NU 的值 该信息在分析文件中的格式与其在这个 card image 中的格式是相同的 6. 点击 NU 下面的输入框并将数值改为 0.28 7. 点击 return 退出这个 card image, 此时 HyperMesh 已经接受了对 steel 材料的更改 8. 点击 return 退出 card 面板 默认的 HyperMesh 文件 HyperMesh 包含或者自动生成一些默认文件, 它们包括 : hm.cfg 配置文件 command.cmf 命令文件 hmmenu.set 用户界面设置 [feinput translator name].hmx 不支持的有限元数据文件 [feinput translator name].msg 导入文件信息 hm.cfg hm.cfg 文件是在启动时被读取的默认配置文件 该文件控制 HyperMesh 在本地计算机上的运行 可以在该文件中根据要求来编辑命令 如果需要有关这个文件的更多信息, 请参考 HyperMesh 的在线帮助 User s Guide 中的 The HyperMesh Configuration File 以及 Altair HyperWorks Installation Guide 的介质 command.cmf command.cmf 文件是一个标准的 ASCII 文件, 它由 HyperMesh 来读取和写入 利用命令文件, 可以在程序有很多步骤时提取某一个工作段, 这样可以减小万一发生系统崩溃产生的损失 可以在包含很多重复步骤的应用程序中, 或者在希望创建示例时使用一个命令文件 HyperMesh 命令处理器执行过的所有命令都被写入 command.cmf 文件 该文件在启动 HyperMesh 的目录下自动生成 如果该文件已经存在, 新的命令会被附加到已存在文件的后面 如果需要有关这个文件的更多信息, 请参考 HyperMesh 的在线帮助或者 User s Guide 中的 Commands - 24 -

hmmenu.set hmmenu.set 文件是一个二进制文件, 当退出 HyperMesh 时该文件会自动更新 个人的 hmmenu.set 文件保存许多全局参数, 它位于启动 HyperMesh 的那个目录 如果该文件已经存在, 当又一次运行 HyperMesh 后会被覆盖掉 当退出 HyperMesh 程序时, 在当前的工作程序中最新的全局参数会被写入该文件 当下一次启动 HyperMesh 时, 它就会使用记录在 hmmenu.set 文件中的值 如果该文件不存在, 在调用 HyperMesh 时, 则使用默认的全局参数 [feinput translator name].hmx [feinput translator name].hmx 文件是一个 ASCII 码文件 当使用 HyperMesh 导入一个批数据文件, 而该文件含有 HyperMesh 不支持的 card 和注释行时, 就会生成这个 ASCII 码文件 所有不被 HyperMesh 支持的 card 和注释行都会被写入这个文件 [feinput translator name].msg [feinput translator name].msg 文件是一个 ASCII 码文件, 当 HyperMesh 导入一个批数据文件时就会生成该文件 它包含有限元导入过程的状态, 含有消息 错误和一般总结信息 - 25 -

第二章创建有限元分析模型 创建 求解和分析一个有限元模型 在这一章中, 建立一个螺旋形弹簧的模型, 其中使用了平面和实体单元, 并应用了边界条件 然后用 Altair 的 OptiStruct 求解器对模型进行计算 在本章的最后, 用后处理工具察看分析的结果 Altair 的 OptiStruct 求解器是一个基本的线性静态和特征值分析工具, 它可以对一个有限元分析 (FEA) 模型的结构完整性提供一个初步的评价 如果需要有关 OptiStruct 的更多信息, 点击永久菜单上的 help, 再点击 help topics 并依次选择 HyperWorks 和 OptiStruct 练习 2.1: 提取一个 HyperMesh 数据文件 在这个练习中, 提取一个 HyperMesh 二进制数据文件 此时在当前工作区中的模型会被清 除掉, 然后 HyperMesh 才开始提取该文件 - 26 -

提取 HyperMesh 数据文件并载入模板 1. 在任一页面中选择 files 面板 2. 选择 hm file 子面板 3. 然后使用文件浏览器选择文件 spring0.hm 4. 在浏览器窗口上点击 open 按钮 在 Confirmation 面板上提示说要删除以前的模型, 点击 yes 5. 选择 template 子面板 6. 点击 load, 然后使用文件浏览器选择 optistruct 文件夹下面的 optistruct 模板 选择 OptiStruct 模板后, 可以在使用 HyperMesh 处理模型时定义 OptiStuct 特有的属性 7. 点击 return 退出 files 面板 练习 2.2: 创建材料集 (Material Collectors) spring0.hm 这个模型只有一个 component collector, 而且没有材料 collector 在这一步中, 创建一个具有低碳钢属性的材料集 1. 在任何菜单页面上选择 collectors 面板 2. 选择 create 子面板 3. 将 collector 的类型设置为 mats 4. 点击 name = 并输入 steel 5. 将 creation method: 设置为 card image = 6. 点击 card image = 并选择 MAT1 OptiStruct 模板支持四种材料类型 MAT1 MAT2 MAT8 和 MAT9 这些材料 类型对应于相同的 NASTRAN 材料类型 如果需要更多信息, 请参考在线帮助 中的 OptiStruct/Data Formats 部分 7. 点击 create/edit - 27 -

这一步就将 MAT1 这个 card image 赋给了这个新材料 steel 如果某个输入域里没有值, 表示当前相应的项是关闭的 只要点击其标题就可以打开 如果要在这个 card image 中为 一个块输入一个值, 点击相应的数据区域, 然后输入数字 8. 点击 E, 单击数据输入区并输入 2.0e5 9. 点击 NU, 单击数据输入区并输入 0.30 10. 点击 return 因为只需要做一个静态分析, 所以没有必要定义一个密度值 但是, 在进行固 有模态分析时, 密度值就是必要的了 练习 2.3: 创建和编辑组件集 (Component Collectors) 在这个练习中, 要创建两个 component collector 一个只是为了建模的目的, 另一个则用来保存分析中用到的实体单元 通过将建模过程中使用的单元放到一个独立的 collector 中, 当模型建完以后, 可以很方便地删除这些单元 为二维单元创建一个 component collector 这些二维单元被用来构造这个管状模型的实体单元 1. 将 collector type: 设置为 comps 2. 点击 name = 并输入 shell_elems 3. 将 creation method: 设置为 no card image 在这个 collector 中的单元只是用来建模的 因为在分析中并不使用它们, 所以没有必要为 它们指定 OptiStruct 中 component 的 card image 4. 点击 material = 并选择 steel 当创建一个 component collector 时,HyperMesh 会要求指定一个材料 collector 如果这时没有指定, 则 HyperMesh 会自动创建一个与该 component 同名的 虚假的 材料 collector 为了避免随后不得不删除这个虚假的材料 collector, 现在就将材料指向现有的 steel 材料 5. 点击 color 并从互动菜单中选择一个颜色 6. 点击 create 完成对这个 component collector 的创建 - 28 -

为实体单元创建并编辑一个 component collector 1. 点击 name = 并输入 solid_elems 2. 将 creation method: 设置为 card image= 3. 点击 card image = 并从弹出菜单中选择 PSOLID 4. 点击 material = 并选择 steel 5. 点击 color 并从弹出菜单中选择一个颜色 6. 点击 create 来创建这个 collector 因为在 PSOLID 这个 card 中没有可以编辑的输入区域, 就不用使用 create/edit 选项了 7. 点击 return 退出 collectors 面板 将工作保存在 spring.ex2.03.hm 文件里, 参见下面的指导 将工作保存在一个 hm 数据文件里 1. 点击 files 2. 选择 hm file 子面板 3. 点击 save as 打开文件浏览器, 在 File 的输入框中原有的文件名将会高亮显示 输入 需要的文件名来取代它, 例如 spring.ex2.03.hm 4. 点击 save 5. 点击 return 退出 files 面板 练习 2.4: 用 Spline 面板创建二维单元 设置当前 component 并创建二维单元 1. 在 global 面板中点击 component = 并选择 shell_elems 2. 点击 return - 29 -

3. 从 2D 页面中, 选择 spline 面板 4. 将操作对象类型设置为 lines 5. 点击图中那个圆周的边 6. 将曲面创建方法设置为 mesh, dele surf 7. 点击 create 此时会出现一个信息 Lines appear planar, project to plane? 8. 点击 yes 9. 点击 set edge to 10. 点击 elem density = 并输入 14 11. 点击圆周上原有的网格密度值, 这个值变为 14 12. 选择 element type 子面板 13. 将单元类型设为 quads 14. 点击模型上蓝色的单元类型按钮, 这个按钮应该在圆的中心位置 现在, 当前的按钮 变成了正方形 此时应当点击绿色的 set all 按钮 15. 点击 mesh 圆周上的图形应当符合下图 16. 点击 return 接受画出的网格并退出 meshing 面板 17. 点击 return 退出 spline 面板 将工作保存到 spring.ex2.04.hm 文件中 要保存文件, 在任何主面板上点击 files 选择 hm 子面板 点击 save as 弹出文件浏览器 选择文件后点击 save 当保存完成后, 点击 return 继续工作 - 30 -

练习 2.5: 用 Line Drag 面板创建三维单元 在这个练习中, 将在前一个练习中创建的平面单元沿着那条螺旋线拖拽 通过这种方式, 可以创建三维的实体单元 设定当前的 component 并创建 3 维单元 1. 在 global 面板中点击 component = 并选择 solid_elems 2. 点击 return 3. 点击宏菜单中的 gfx per 打开 performance 图形模式 4. 在 3D 页面里选择 line drag 面板 5. 选择 drag elems 子面板 6. 点击 elems 并选择 displayed - 31 -

7. 点击 line list 将其激活 8. 在图形区中选择那条螺旋线 9. 点击切换按钮选择 use default vector 选项 10. 点击 on drag = 并输入 120 这个数字表示沿着螺旋线创建的单元层数 11. 点击 drag 12. 点击 return 接受画出的网格 13. 点击 return 返回主菜单 将工作保存为 spring.ex2.05.hm 要保存文件, 在任何主面板上点击 files 选择 hm 子面板 点击 save as 弹出文件浏览器 选择文件后点击 save 当保存完成后, 点击 return 继续工作 练习 2.6: 清理模型 此时壳单元和几何已经没用了, 我们可以从数据文件中删除这两个 component collectors 1. 按下 F2, 或者从 Tool 页面中选择 delete 面板 2. 将操作对象类型设置为 comps 3. 点击 comps 4. 选择 geometry 和 shell_elems 这两个 collectors 5. 点击 select 6. 点击 delete entity 7. 点击 return 练习 2.7: 创建载荷集 (Load Collectors) 在这一部分中, 创建边界条件的载荷集 对这个模型, 要建立两个载荷工况, 一个正压力 和一个侧向力 通过将这些力放到相应的载荷集里, 可以更方便地定义载荷步的组合并创 - 32 -

建载荷工况 1. 从任何菜单页面选择 collectors 面板 2. 选择 create 子面板 3. 将 collector type 设置为 loadcols 4. 点击 name = 并输入 constraints 5. 将 creation method 设置为 no card image 6. 点击 color 并选择一个颜色 7. 点击 create 8. 点击 name = 并输入 compression 9. 点击 color 并选择一个颜色 10. 点击 create 11. 重复上面 8-10 的步骤创建另一个名为 lateral 的载荷集 12. 点击 return 退出 collectors 面板 将工作保存为 spring.ex2.07.hm 练习 2.8: 对模型施加约束 在这个练习中, 在模型的一端创建约束 在每一个载荷工况下都会使用这些相同的约束 设置当前的载荷集和视角 1. 在 global 面板上将 load col = 设置为 constraints 2. 点击 return 3. 在永久菜单上选择 view 面板 - 33 -

4. 选择 rear 并将模型在 y 轴正方向的一端放大 记住放大功能可以通过使用 CTRL+ 鼠标中键来实现 5. 点击 return 创建约束 1. 在 BCs 页面上选择 constraints 面板 2. 选择 create 子面板 3. 点击 nodes 并选择 on plane 4. 在弹簧这一端面上任意点中三个节点 这些点将会被用于定义一个平面来寻找其它节点 (N1, N2 和 N3) ( 参见下图 ) 5. 点击 tolerance = 并输入.01 6. 切换到 plane 选项 7. 点击 select entities - 34 -

8. 点击 size = 并输入 30 9. 点击对应的复选框激活 label constraints 选项 10. 激活自由度 (dof)1 2 和 3 因为这些单元是实体单元, 所以自由度 4 5 和 6 是没有用的 11. 点击 create 就约束了选中的节点 12. 点击 return 退出 constraints 面板 将工作存为 spring.ex2.08.hm 练习 2.9: 创建力 在这个练习中, 将两个载荷组应用到弹簧的另一端 其中一组对弹簧施加正压力, 而另一 组对弹簧施加 放松的 横向力 设置当前 collector 和视角 1. 在 global 面板中将 load col = 设置为 compression - 35 -

2. 点击 return 3. 在永久菜单上选择 view 面板 4. 选择 front, 然后将弹簧在 y 轴负方向的一端放大 5. 在永久菜单上或者在键盘上点击向上箭头 3 次, 这样弹簧的这一端就差不多水平了 创建正压力 1. 在 BCs 页面上选择 forces 面板 2. 选择 create 子面板 3. 点击 nodes 并选择 by window 4. 环绕模型一端的节点画一个窗口, 见下图 要保证窗口选择项被设置为 interior Window used to select entities 5. 点击 select entities 6. 点击 nodes 并选择 save - 36 -

随后要在相同的节点上施加侧向力 这一步将当前的节点选择保存在一个缓存中, 这样在 接下来的步骤中调用这些节点 7. 点击最左端的切换键选中 global system 选项 8. 点击 magnitude = 并输入 10000.0 9. 将方向设置为 y-axis 10. 点击最右端的切换键选中 magnitude % = 选项 11. 点击 magnitude % = 并输入 1.0 12. 点击相应的复选框激活 label loads 选项 13. 点击 create 创建侧向力 1. 在 global 面板中将当前的 loadcol 设置为 lateral 2. 点击 return 3. 点击 nodes 并从扩展的选择菜单中选择 retrieve 这一步从剪切板缓存中提取先前选定的弹簧端面上的节点 4. 将方向设置为 N1, N2, N3 这一步可以将力的方向定义成垂直于弹簧端面 5. 在弹簧的这个端面上任意选择三个节点 6. 点击 create 定义垂直于该弹簧端面的载荷 这些新载荷的颜色与在 lateral 这个 load collector 中定义的 颜色是相同的 7. 点击 return 将工作保存为 spring.ex2.09.hm - 37 -

练习 2.10: 创建载荷步 确定边界条件的最后一步就是创建 OptiStruct 的子工况 (HyperMesh 中的 loadsteps) 要创建三个不同的子工况, 一个只承受压载荷, 一个只承受侧向载荷, 最后一个是两种载荷的组合工况 在每一种工况下, 约束都是有效的 要创建一个组合工况载荷, 需要另外创建一个 load collector, 其 card image 使用 LOAD 为压载荷和侧向载荷创建载荷步 1. 在 BCs 页面上选择 load steps 面板 2. 点击 name = 并输入 compression 3. 点击 loadcols 并从 collector 的列表中点击对应的复选框, 从中选择 constraints 和 compression 4. 点击 select 5. 点击 create 6. 点击 name = 并输入 lateral - 38 -

7. 点击 loadcols 并从 collector 列表中选择 constraints 和 lateral 8. 点击 select 9. 点击 create 10. 点击 return 退出 load steps 面板 创建一个组合载荷工况要组合侧向载荷和压载荷, 首先要创建另一个 load collector, 其 card image 使用 LOAD 当组合这两个 load collector 时, 用新的 load collector 可以为其指定加权因子 1. 选择 collectors 面板 2. 选择 create 子面板 3. 将 collector type 设置为 loadcols 4. 点击 name = 并输入 combination 5. 将 creation method 设为 card image 6. 点击 card image = 并从弹出菜单中选择 LOAD 7. 点击 create/edit 进入 card image 编辑器 8. 在 card image 编辑器中点击 LOAD_num_set 并将其设为 2 9. 双击黄色的 L1(1) 按钮并选择 compression 为第一个载荷 collector, 随后数字 2 就会出现 在 L1(1) 那一列 参见下面的注释框了解为什么 HyperMesh 将这个值输入到这个框中 点击 L1(1) 按钮之后, 出现了数据文件中载荷集的列表 点击 name 按钮旁边的开关将 collector 名称的显示模式设置为 name(id) 在显示列表中既显示 collector 的名称也显示其 ID 号, 这样就很容易知道在这个载荷 card 中指定的是哪个载荷集 载荷 card 只通过 ID 号来指向载荷集 - 39 -

10. 双击黄色的 L2 按钮并选择 lateral 为第二个载荷 collector 将所有的 S 区域设置为 1.0 载荷 collector 的加权因子是在对应于 Li 区域的 Si 区域中指定的 在这个练习中, 我们已经为组合的载荷设置了加权因子, 也就是说两个载荷 collector 在整个组合中的比例是 1:1 11. 点击 return 退出这个 card 编辑器, 随后点击 return 退出 collectors 面板 为这个组合载荷创建载荷步 1. 在 BCs 页面里选择 load steps 面板 2. 点击 name =, 输入 combination 后按下 ENTER 3. 点击 loadcols 并从 collector 列表中选择 constraints 和 combination 4. 点击 select 5. 点击 create 6. 点击 return 将工作保存为 spring.ex2.10.hm 练习 2.11: 使用 OptiStruct 求解器 无论对哪一种有限元求解器,HyperMesh 数据文件中定义的信息必须被写成一种求解器能够识别的格式 使用 files 页面中的 export 子面板来输出模型 在 BCs 页面上使用 OptiStruct 面板启动求解过程时,HyperMesh 和 OptiStruct 会在后台自动处理这个过程 - 40 -

运行求解器 1. 从 BC s 页面中选择 OptiStruct 面板 在 file = 后面的区域中会指定一个默认的路径和文件名 在这个练习中, 为 spring0.fem 如果愿意, 可以在 file = 后面输入别的文件名, 但是这个文件的扩展名必须是.fem 内存的切换器如果指定为默认, 则由求解器来管理内存 相反则会使用用户设定的内存量 输出的切换器可以用来选择输出整个模型或者仅输出当前显示的 component 2. 点击 optistruct 启动求解过程 出现另一个窗口, 启动 OptiStruct 求解器 几秒钟后出现这样的信息 : Processing complete 此时可以关闭 OptiStruct 窗口 OptiStruct 在 HyperMesh 的启动目录里生成了一些文件, 这些文件在下面的表中列出 : spring.res HyperMesh 二进制结果文件 spring.out OptiStruct 的输出文件, 它包含下列信息 : 文件的设置 ; 优化问题的设置 ; 对运行计算所需要的内存和硬盘空间的数量的估计 ; 每一步优化迭代的信息 ; 以及计算时间的信息 察看这个文件可以检查 spring.fem 文件处理时出现的警告和错误信息 spring.oslog OptiStruct 的日志文件, 它包含对每一步优化迭代的趋势和规模的计算 结果的后处理 OptiStruct 分析可以为线性静态计算提供位移和应力结果 它还可以直接生成 HyperMesh 格式的二进制结果文件 如果使用别的分析模块 ( 例如 NASTRAN LS-Dyna 和 ABAQUS 等等 ), 求解器的输出文件需要先被编译成 HyperMesh 的二进制结果文件 这个过程可以在 HyperMesh 外部用命令行来完成, 也可以用 solver 面板来完成 - 41 -

生成结果文件之后, 需要在进行后处理之前在 files/results 面板中指定结果文件 HyperMesh 的结果编译器可以从 UNIX 系统的命令行 ( 或者在 Windows 系统中的 MS-DOS prompt) 执行, 或者在 HyperMesh 内部用 BCs 页面的 solver 面板来执行 无论是哪种方式, 语法是一样的 下面是运行所有的编译器必需的语法 <HyperMesh translator> [arguments] <inputfile> <outputfile> <modelfile> 其中 : <HyperMesh translator> 要执行的 HyperMesh 编译器的名称 <arguments> 修改编译器执行参数的列表 每一个编译器的列表各 不相同 如果需要一个可行的参数列表, 在编译器名称 后面键入 -u 选项就可以了 <inputfile> 求解器得到的结果文件 <outputfile> HyperMesh 格式的结果文件 <modelfile> 在结果数据文件中找到的包含模型的文件 这个特征 在某些 HyperMesh 编译器中是可用的 如果要知道哪 些编译器有这个特征, 使用 -u 选项 如果没有指定输入和输出文件名, 编译器会假定用户希望将结果从标准输入编译到标准输 出 当要编译的结果文件被压缩工具压缩过时, 这个功能是很有用的 使用 UNIX 形式的 工具, 被压缩的结果文件可以被解压并传递到编译器中, 随后编译器的输出可被写入到一 个文件 下面是一个这样的命令的例子 : filepress run1.prs hmnast > run1.res 练习 2.12: 观看变形图 如果用 HyperMesh 中的 OptiStruct 面板启动 OptiStruct 求解器, 会产生一个 HyperMesh 二进制结果文件并将其载入 HyperMesh 如果使用其它求解器, 由结果编译器生成的结果文件需要用 files 面板中的 results 来载入 1. 从 Post 页面中选择 deformed 面板 - 42 -

2. 点击 simulation = 3. 选择 COMPRESSION 4. 点击 model units = 并输入 50 5. 点击 deform 模型的变形图会叠加在未变形的网格上 那么, 这个变形的状态与对模型施加的边界条件 相一致吗? 6. 点击 linear 生成结果的动画显示 7. 点击 return 8. 将仿真改变为 LATERAL 9. 点击 deform 现在出现的是侧向载荷工况生成的变形图 这与模型和边界条件相一致吗? 10. 点击 return 练习 2.13: 观看云图 1. 在 Post 页面中选择 contour 面板 2. 点击 simulation = 并选择 compression 3. 点击 data type = 并选择 Displacements 这一列数据类型取决于在计算时要求输出哪些类型的数据 默认情况下 OptiStruct 会输出 位移和应力结果 4. 点击 contour 最大位移值是多少? 模型中最大位移发生在哪里? 上述位移与施加在模型上的边界条件是一致的吗? 5. 点击 data type = 并选择 von Mises Stress 6. 点击 assign 最大 Von Mises 应力值是多少? - 43 -

模型中最大应力发生在哪里? 7. 点击 simulation = 并选择 lateral 8. 点击 assign 最大 Von Mises 应力值是多少? 模型中最大应力发生在哪里? 是否与边界条件一致? 9. 使用 Contour 面板开发其它的组合和数据类型 - 44 -

第三章几何清理和四面体网格划分 四面体单元是指具有四个三角形面的实体有限单元 通常被用于对复杂的几何实体构建有限元模型 在 HyperMesh 中自动的四面体网格划分器非常强大, 可以在任何三角形单元构成的封闭面网格中构建四面体单元 四面体网格划分器适用的前提是独立封闭的连续面网格 生成的体网格的质量取决于初始的面网格的质量 只有好的单元质量才能得到准确的分析结果, 这需要相邻单元的尺寸变化过渡的比较均匀 HyperMesh 的四面体网格划分过程 1. 导入 CAD 数据并进行几何清理 2. 使用三角形单元生成面网格 3. 检查三角形单元的质量和连续性 4. 生成四面体网格 5. 删除初始的三角形面单元 这个教程中会涉及上述过程中的每一步, 同时带有练习来演示这些步骤 几何清理 geometry cleanup 和 defeature 面板用于划分网格前的曲面几何清理 在进行有限元分析 计算时, 经常遇到的问题有以下几种 : 1. 导入曲面数据时, 有时存在缝隙 重叠 错位等缺陷, 这会影响网格质量 2. 因为生产的需要,CAD 模型中通常会包含某些细微特征, 例如曲面和边的倒圆 小孔, 进行分析时如果要准确模拟这些特征, 需要用到很多小单元, 导致求解时间不必要的 加长 3. 边界错位经常引起网格扭曲, 导致单元质量不高, 求解精度差 通过消除错位和小孔, 压缩相邻曲面之间的边界, 消除不必要的细节, 就能够提高整个划 分网格的速度和质量, 提高计算精度 edit surface 面板的 filler surface 子面板用于填充曲面之间较大的间隙和空缺 对任意由 - 45 -

三个或更多的线 节点或者点定义组成的有限区域, 都可以定义一个曲面 曲面边界的拓扑关系显示 在拓扑显示模式下 ( 这是在 geom cleanup 面板中默认的显示模式 ), 曲面边界的颜色显 示是由其与周围曲面边界的连接关系来确定的 红色的边表示单个曲面的自由边 自由边会导致网格的不连续, 即自由边上分布的节点不 会被相邻曲面上的单元所共享 绿色的边称为共享边, 表示这个边被两个相邻曲面所共享, 在共享边上的节点同属于相邻 的曲面 黄色的边称为非重合边 表示曲面的边界被三个或三个以上的曲面所共享, 这通常代表一 种 T 型连接或者重复曲面 深蓝色的短线段代表被压缩的边 自动网格生成器在划分网格时会忽略被压缩边, 不会在 上面布置节点 在压缩边上, 两个相邻的曲面实际上被缝合到一起形成一个较大的曲面 Geometry Cleanup 面板的功能 在 geom cleanup 面板内有三个子面板 edges,surfaces 和 fixed points 每个子面板都 有三到四个子菜单 所有面板上都有 cleanup tolerance 和 visual options 选项 其中前者用于判断两个曲面的边或两个曲面的顶点是否可以被视为重合 在几何清理操作中, 间距在容差 (tolerance) 范围内的任何两条曲面的边或两个曲面的顶点将被视为重合, 随后被合并 cleanup tol = 的值可以在两个地方设定 一个是对其全局值, 可以在 options/modeling 子面板中设定 另一个是局部值, 可以在 geom cleanup 面板中设定, 用于特定的几何清理操作 有时, 按局部清理容差进行的操作可以被全局清理容差覆盖 例如, 在一个用局部清理容差形成的曲面上进行分离操作之后, 因为 surface edit 面板仅 采用全局清理容差, 被分离曲面的所有的边都被用全局清理容差重新评估, 重新确定它们 的状态 - 46 -

设定的几何清理容差最大值的合理性与单元大小有关 例如, 单元尺寸为 30, 几何清理的 容差应为 0.3 (30/100) 或 0.15 (30/200) visual options 面板设定曲面的显示模式, 打开或关闭曲面的边和固定点的显示 曲面可 以用线框或阴影模式来察看 自由边 共享边 非重合边和被压缩边等不同类型的边的显 示可以分别打开或关闭 Edges 子面板 edges 子面板用于修改曲面边界的连接状态 子面板中有四个子菜单 toggle,replace, (un)suppress 和 equivalence toggle toggle 菜单可以通过在边界上单击鼠标左键将其从自由边变成共享边, 或者从共享边变成 压缩边 使用鼠标右键可以取消 toggle 操作, 并将压缩边变为共享边, 或将共享边变成自 由边 要将一条自由边变成共享边, 在这条自由边附近的容差范围内必须有一条对应的自 由边 replace replace 菜单可以将一对自由边合并成共享边, 但是合并后的共享边的位置是在设定的被 保留的边上, 而另一条边则被删除 这一功能实际上扩展了 toggle 的控制功能 任何与被 删除的边相关连的几何特征被关连到被保留的边上 (un)suppress (un)suppress 菜单允许同时压缩或释放多条边 在这个菜单可以使用扩展的线条选择菜 单, 可以使用多种线条选择方式 如果需要消除在由对称方式生成曲面时产生的缝隙, 该 功能非常有用 equivalence equivalence 菜单可以自动识别并合并多个自由边对 Surfaces 子面板 surfaces 子菜单用于查找和删除重合曲面并组织曲面 有三个子菜单 find duplicates, organize by feature 和 move faces find duplicates find duplicates 菜单用于识别和删除重合曲面 - 47 -

organize by feature organize by feature 菜单在一系列不同参数基础上识别和压缩曲面的共享边 最终结果是 对更大曲面的更合理地组合 move faces move faces 菜单可将多个面缝合到一个已有曲面上或缝合多个曲面形成一个新曲面 Fixed Points 子面板 fixed points 子面板用于控制与一个曲面相关联的固定点 有 Add,replace 和 suppress 三个下级子菜单 add add 菜单可以在一个曲面上从已有的自由点或节点上生成固定点 划分网格时, 自动划分 的解算器会在任何固定点上面放置单元节点 replace 使用 replace 菜单可以删除要被移动的点并将相关的几何数据重新定位到保留的点上 suppress suppress 菜单可压缩不必要的固定点或将他们转换成自由点 几何定义所需的点不能被压缩 Defeature 面板的功能 通常, 为了制造的目的, 设计者会保留一些分析并不需要的细节 defeature 面板有许多可以用于简化模型几何特征的功能 这些不必要的特征包括裁剪操作, 螺栓或铆钉孔, 位于不同平面的曲面之间用于圆滑过渡的倒圆, 边之间的倒圆 要精确地捕捉这些细节, 分析者通常不得不采用一个比需要的尺寸更小的单元 删除这些特征通常能使用较大的单元获得更好的网格质量, 而同时不影响求解的精度 该面板上有五个子面板 : trimlines trimlines 功能可以删除被剪切到曲面内的线 有两种模式可供选择 Remove interior trimlines 用于消除完全包含在 曲面边界内的 裁剪线 这些线在曲面 上通常显示成绿色的共享边 可以选择并删除单个的裁剪线 - 48 -

Remove all trim lines 将返回到最初的未被裁剪的曲面 根据不同的 CAD 系统和曲面定义 方法, 操作的结果也会不同 pinholes pinholes 功能用于查找和删除曲面内的孔 孔根据孔径来识别 一旦确定, 孔可以被删除 孔可以是任何形状 所给定的直径确定孔跨度的最大距离 surface fillets surface fillet 用于消除曲面倒圆或两个非共面曲面之间的过渡圆滑曲面 曲面倒圆将被一个 沿相邻曲面切向延伸的平面替代 通过选择倒圆的轮廓线, 或者指定曲面和倒圆半径的范 围来确定倒圆曲面 一旦确定了倒圆, 会出现一个二级面板, 在它上面能清楚地选择要删除的倒圆 相关联的 边和倒圆端部 Ignore edge association 可以用于确定或修改对边的选择, 当计算相切曲面时这些边的 相邻曲面几何会被忽略 通常如果相邻曲面与倒圆相比有较大的曲率, 或者问题中的边是 自由边, 就会用到这个功能 Fillet ends 用于确定或者修改倒圆端部 除非一连串的倒圆本身构成了一个复杂的封闭圆 环, 否则应该至少有两个倒圆端部 edge fillets edge fillet 用于删除曲面自由边上的任何倒圆 HyperMesh 能确定给定圆角半径和最小圆 弧角度范围内的倒圆 边的倒圆将被确定, 标明那些投影出方角的切点 一旦确定, 边的 倒圆在被删除前可以被解除选择 trim-intersect trim-intersect 的功能与 edge fillet 的功能相似, 只是需要通过点击边来确定切点 一旦两 个点确定, 功能会自动生效 Surface Edit / Filler Surface 子面板 surface edit / filler surface 子面板用于从线 节点或固定点生成曲面来填充 CAD 模型中的孔 通过选择环绕某个区域的三个或更多的线 节点或点, 可以创建一个曲面 大多数面板中, 曲面边界按线来处理 - 49 -

练习 3.1: 导入并观察模型 在这个练习中, 读取一个 HyperMesh 数据文件, 该文件包含一个万向节的铸件模型 该文 件用来演示一些几何导入过程中常见的问题, 后面的练习还讲述了如何处理这些问题 读取模型文件 1. 从任何页面中选择 files 面板 2. 选择 hm file 子面板 3. 点击 retrieve 按钮进入文件浏览器 4. 选择文件 ujoint.hm 5. 点击 open 6. 点击 return 退出 files 面板 - 50 -

察看模型做一些必要的旋转和缩放操作来察看这个模型 在拓扑显示模式下, 从 geom 页面中选择 geom cleanup 面板 还可以使用紫色的 vis opts 菜单对曲面进行渲染 这个 vis opts 菜单可以控制曲面的显示 (shaded 或者 wireframe), 还可以利用复选框来打开或关闭不同类型边界或几何点 ( 曲面顶点 ) 的显示 在弹出菜单的顶端点击切换开关将显示方式从 wireframe 变为 shaded 注意到模型中既有红色的边, 也有绿色和黄色的 因为这个模型是一个独立的铸件, 它本 身不应该存在自由边或 T 型连接, 所以几何清理的目标就是使模型上仅存在共享边 ( 绿色 ) 和被压缩边 ( 深蓝色 ) 确定要使用的单元尺寸通常根据经验, 单元尺寸设定的依据应当是在模型尺寸最窄的地方分布两到三个四面体单元 在这个模型中, 需要划分网格的几何最小细节是在万向节的四个接头部位 知道这几条边的长度后, 我们可以根据这个信息来确定适当的单元尺寸 1. 在永久菜单中点击 view 按钮 2. 点击 restore4 提取一个预先设定的模型视角 3. 点击 return 退出 geom cleanup 面板并返回 geom 页面 4. 选择 distance 面板 另一种进入 distance 面板的快捷方式是按下 F4 键 5. 选择 two points 功能 6. 点击最窄的边上的两点, 如下页的图所示 当第二个点选定后, 会给出两点间的距离 为 8.393 mm 由此, 为了让网格划分器在这条边上布置两个单元, 将单元尺寸设为 4mm - 51 -

设定总体的单元尺寸在 global 面板上设定单元尺寸的一个优点是这个尺寸会成为默认的网格尺寸 当模型很大, 需要多次划分网格的操作时, 一个全局的单元尺寸可以大大减少重新计算网格密度所需要的时间 1. 在永久菜单中点击 global 按钮 2. 点击 element size = 的输入框并输入 4.0 将其作为默认的单元尺寸 3. 点击 return 返回 distance 面板 4. 在键盘上按下字母 F, 在显示区观看整个模型 练习 3.2: 几何清理 在这个练习中, 将使用 HyperMesh 中的几何清理工具完成下列工作 :1) 合并自由边对 ;2) 创建填充曲面 ;3) 识别并删除重复曲面 - 52 -

使用 edges 功能合并自由边大多数几何清理操作都需要特定的清理容差 (cleanup tolerances) 这个容差指定了几何清理操作可以缝合的最大缝隙 通常, 容差不应该超过网格单元尺寸的 15-20%, 否则可能产生单元翘曲 在下图中显示了大于 20% 的容差如何造成了非常严重的扭曲 图中左边的翘曲网格单元发生在使用 replace 功能缝合曲面的过程中, 这个缝隙的尺寸超过了相邻曲面上单元尺寸的 20% 在 geom cleanup 面板上, 在 cleanup tol = 的输入框中可以设定几何清理容差 如果在模型中有非常多的自由边, 可以使用 equivalence 工具会非常有效 当自由边减少 了以后, 还可以使用 toggle 工具来合并剩下的自由边, 这样可以对操作施加更多的控制 1. 在 edges 子面板上选择 equivalance 工具 2. 点击 surfs 并在扩展的操作对象选择窗口中选择 all 3. 点击 cleanup tol = 并输入 0.1 4. 点击 equivalence 注意大多数 ( 并非全部的 ) 红色的边变成了绿色 任何公差在 0.1 个单位范围内的自由边 - 53 -

对都合并成一条共享边 使用 toggle 工具来合并剩余的自由边 合并剩余的自由边 1. 如果曲面显示状态为阴影模式, 使用 vis opts 工具将其切换到线框模式 (wireframe) 这样可以更方便地识别剩余的自由边 2. 选择 toggle 工具 3. 选择靠近模型中心的很长的红线 当这条线被选中, 会在标题栏中提示一条错误信息, 提示说最大缝隙是 0.4546 mm 4. 将 cleanup tolerance 设为 0.5 这个容差仍然在可以接受的范围内 单元尺寸的 15~20%, 此时的单元尺寸为 4.0 mm 5. 选择每一条长的曲线来合并自由边 模型中还有一些自由边也可以用当前的容差来进行合并, 但是, 如果缝隙超过了 0.5 mm, 则需要使用其它方法 6. 在 view 面板中按下 restore1 按钮调用视角 view 1-54 -

7. 使用 toggle 工具点击半圆形曲面的边界, 改变其拓扑连接关系 在选择自由边时, 要注 意, 所选择的第一条边是要被保留的, 它旁边最近的在容差范围内的自由边会被删除 8. 调用视角 view2 并进行 toggle 操作 为了提高选择线的准确性, 按下鼠标左键, 将鼠标在屏幕上拖动靠近目标, 当目标变成高亮显示后放开鼠标左键, 这样即可以选中高亮显示的线 同样, 在 performance 图形驱动模式下, 这样做非常方便 生成填充曲面模型中剩余的自由边中, 缝隙超过了最大的容差允许值 0.8 如果此时仍然使用几何清理操作, 会造成网格的扭曲 一个更好的解决方法是创建填充曲面, 然后将原始曲面和新曲面之间的曲面边界压缩掉 这样做可以很有效地扩展曲面 1. 调用视角 view3 自由边的缝隙为 2.33 mm 在 surface edit 面板中使用 filler surface 功能创建一个曲面来 填充这个缝隙, 然后将新曲面的底边压缩掉 2. 点击 return 退出 geom cleanup 面板 3. 进入 surface edit 面板并选择 filler surface 工具 在退出 geom cleanup 面板后, 几何的显示方式就不再是拓扑关系模式了 在宏菜单的 Disp 页面中, 可以使用 vis opts 控件来控制模型的显示方式 对曲面几何来说有四种模式可以选择 它们分别是 : 0 默认的模式, 在大多数面板下, 曲面以线框模式显示, 而曲面边界的颜色与其所在的 component 颜色一致 而在 geom cleanup automesh 或者 defeature 面板中, 曲面边界的颜色取决于其拓扑连接关系 1 component 颜色模式, 模型的边始终与其所属的 component 的颜色保持相同, 即使在 geom cleanup automesh 或者 defeature 面板中 2 拓扑模式, 曲面边界的颜色显示取决其连接特性 3 阴影模式在 geom cleanup automesh 或者 defeature 面板中, 在宏菜单中激活线框或者阴影显示方式会覆盖掉在紫色的 vis opts 面板中所做的设置 4. 在宏菜单中选择 disp 页面并点击 vis opts: 中的 2 按钮 - 55 -

5. 选择这个缝隙周围的四条红边 6. 点击 create 生成新的曲面来填充缝隙 7. 恢复到视角 view 4, 在这里创建一个填充曲面 8. 点击 return 返回主菜单 9. 再次回到 geom cleanup 面板 10. 恢复视角 view 3 并将新的填充曲面的较低的边压缩掉, 使用 toggle 功能将其由绿线压 缩成蓝线 - 56 -

修补由于顶点错位产生的自由边 模型中剩余的自由边是由于曲面顶点错位引起的 使用 replace fixed point 功能来修复顶点错位, 然后将自由边压缩掉 - 57 -

1. 调用视角 view 5 2. 选择 fixed points 功能, 并选择 replace 工具 3. 当 retained point: 的选择开关处于激活状态时, 选择缝隙右边的顶点 4. 然后选择缝隙左边的顶点, 将其作为 point to move 5. 点击 replace 6. 返回 edges / toggle 子面板, 然后合并自由边 删除重复曲面模型几何上剩下的唯一问题就是一个重复曲面, 它的边界是黄色的 因为这个铸件没有任何内部的筋, 所以这种黄色边界不是 T 型连接, 而是代表重复曲面 使用 surfaces 功能中的 find duplicates 工具可以识别并删除重复曲面 1. 进入 surfaces 子面板并选择 find duplicates 工具 2. 点击黄色的 faces 选择开关并选择 all 3. 点击 find 将重复曲面高亮显示 4. 点击 delete 删除重复曲面 现在所有的曲面边界都是绿色的, 几何清理操作完成了, 模型已经可以用来划分网格了 5. 保存 HM 文件 Automesh 面板中的 cleanup 面板也包含了一些修补几何的工具, 如 : splitting or unsplitting surfaces toggle edges edge fillet removal 以及一些 可以添加 删除和替代顶点的功能 练习 3.3: 曲面网格划分 HyperMesh 可以用四面体网格填充三角形单元所包围的封闭体积 最后得到的四面体网格的尺寸和质量直接取决于曲面网格 在这个练习中, 在经过几何清理的万向节上生成三角形单元的曲面网格 - 58 -

1. 在 global 面板中将当前的 component collector 设为 trias 2. 在 options 菜单中选择 graphics 并将图形显示模式从 standard 变为 performance 在 performance 的图形模式下, 在 automesh 过程中生成的单元都会以阴影模式显示 因为 这是一个实体模型, 阴影模式会为观察和修改网格提供方便 3. 使用 vis 面板并将所有的 component collector 设为 shaded with mesh lines 4. 在 2D 页面中选择 automesh 面板 5. 在 create mesh 子面板中点击 surfs 的选择开关, 然后从弹出菜单中选择 all 6. 选中 reset meshing parameters to: 旁边的复选框 7. 将单元类型的选择开关设为 trias 在这个例子中, 在划分网格之前选择三角形的单元类型会带来一些好处, 网格自动划分器 可以使用一个更好的算法来生成高质量 近似等边三角形的单元 8. 点击 mesh 进入第二级的 automesh 菜单 此时, 网格自动划分器会根据要求的单元尺寸标准计算出曲面边界的长度和每条边上的种 子点分布 9. 点击 mesh 来生成初始的三角形单元曲面网格 10. 点击 return 接受划分出来的网格 大约生成了 17,000 个 4mm 大小的曲面单元 使用这些曲面单元, 四面体网格划分器会生成大约 85,000 个四面体单元 当这些单元被转换为二阶单元时, 模型会具有大约 250,000 个自由度, 这需要相当大的计算资源才能求解 通过有选择地对部分曲面进行网格重新划分, 重新划分时采用较大的单元尺寸, 可以减少四面体单元的数量, 从而减少模型的总自由度数 11. 在 view 菜单中选择 rear 视角 12. 点击 surfs 的选择开关并选择 by window 13. 绘制一个如下页图所示的选择窗口 14. 去掉 reset meshing parameters to: 旁边的复选框 15. 点击 remesh - 59 -

这一步删除了所选择曲面上原有的网格, 并且重新进入了第二级 automesh 面板 16. 在 density 子面板中点击 element size = 并输入 8.0 17. 点击 recalc edge 的选择开关将其激活 18. 点击所有曲面边界上的网格密度数字, 但注意不要修改那些与未重新划分网格的曲面 相连的边上的网格密度 对那些与未重新划分网格的曲面相连的边来说, 重新计算网格密度会导致节点错位并破坏 网格的连续性 完成这一步工作后网格如下页图所示 19. 可以在任何时候点击 mesh 来预览生成的网格 - 60 -

20. 满意后点击 return 接受网格 如下图所示 21. 保存当前的 HyperMesh 文件 - 61 -

练习 3.4: 检查单元质量并划分四面体网格 四面体网格划分器使用面网格来决定体网格的尺寸 岐形或者非规则的三角形单元 相邻单元尺寸相差过大或者网格的不连续都会导致生成的体网格质量非常差, 甚至在网格生成过程中发生错误 要检查细长的三角形单元, 可以使用单元最小内角的检查工具 要修复不连续的问题, 可以使用 equivalence 功能恢复连续性 ( 例如在上面的练习中当对所选择的曲面进行网格重新划分后, 新生成的单元与其余的单元之间是不连续的 此时, 只要这些共享边上的网格密度没有被修改, 则使用节点的 equivalence 功能就可以很方便地纠正这种不连续的情况 ) 这个练习包含了检查单元最小内角 合并节点这些内容 解决了这些问题以后, 就可以使 用四面体网格自动划分功能来生成四面体网格 完成单元检查 1. 在 tool 页面上选择 check elems 面板 2. 在 2-D 子面板上的 trias 下面点击 min angle 这一步要求计算面单元的最小内角 在标题栏中会报告在检查中有 0 个单元不符合标准, 而且最小的内角为 25º 3. 点击 return 返回到 Tool 页面 4. 进入 edges 面板 恢复单元的连续性 edges 面板上的 equivalence 功能会识别和纠正曲面单元网格中的任何不连续情况 该功 能可以在指定的容差范围内检查两个或两个以上的重复节点 1. 激活 comps 的操作对象选择开关, 用鼠标点击模型中的任何一个单元, 这样就可以选 中整个的 component, 同时检查这个 component 中的所有单元 2. 点击 preview equivalence 在重新划分网格后的面单元和初始的单元之间会生成一些临时节点 3. 点击 equivalence 会删除重复的节点, 而相关的单元会被重新定义为使用初始的节点 - 62 -

4. 点击 find edges 这一步可以检查任何只与一个单元相连的节点 此时在这个模型中并不存在这样的节点, 标题栏中会提示 the selected elements may enclose a volume 5. 点击 return 返回主菜单 现在就可以使用自动网格生成器来生成四面体单元了 生成四面体网格 1. 使用 global 面板将当前的 current component 设为 tets 2. 在 3D 页面中进入 tetramesh 面板 3. 在 floatable trias 下面激活 comps 选择开关, 用鼠标选择模型上的任何一个单元 4. 点击 tetmesh 生成四面体单元 5. 保存当前的 HyperMesh 进程 练习 3.5: 清理并验证模型 建模过程中的下一步是清理并验证模型 这个练习中包括删除曲面单元和几何, 将四面体单元从一阶变为二阶, 并对四面体单元的质量进行一个符合检查 改变单元阶数 1. 在 1D 2D 或者 3D 页面中进入 order change 面板 2. 选择 change to 2nd 子面板 3. 点击 elements 的选择开关并从弹出菜单中选择 all 4. 将切换开关设为 midside nodes at exact midpoint 现有切换开关 midside nodes projected to surface, 可能会更好地反映几何, 但是也会 带来一些单元翘曲度的问题 5. 点击 change order, 然后 return - 63 -

清理模型此时不再需要壳单元和几何 删除几何可以在很大程度上减小 HyperMesh 文件的大小, 释放内存并提高性能 而如果在模型中存在壳单元, 会对模型的外表面增加额外的刚度, 导致计算结果不精确 1. 在 Tool 页面上进入 delete 面板 2. 将操作对象选择器切换到 comps 3. 点击 comps 的选择开关进入 component 的列表 4. 选中 new_geom 和 trias 这两个 component 旁边的复选框 然后点击 select 5. 点击 delete entity, 然后点击 return 对单元和节点重新编号 (Renumber) 在对单元和节点进行添加 删除或者编辑等操作时, 都会在单元和节点编号上产生不连续 对其进行重新编号可以统一节点和单元的编号顺序 1. 在 Tool 页面中选择 renumber 面板 2. 选择 all 子面板 3. 点击 renumber 然后点击 return 随后在 check elems / 3-d 面板中对生成的四面体单元进行三项质量检查,tetra collapse volumetric skew 和 tetra altitude ratio 如果需要这三种检查计算的信息, 请参考在线帮助 接下来的建模步骤是 : 载入 feoutput 模板 定义材料和 component 属性 施加边界条件 输出模型 小结 在本章中, 使用四面体单元对一个万向节的模型进行了网格划分 - 64 -

在划分网格时, 为了精确地捕捉模型的细节特征, 需要设定一个适当的单元尺寸 可以使用几何清理工具来纠正导入几何的错误 还使用曲面来填充超过清理容差的缝隙 随后使用三角形单元在模型的曲面上划分网格并为划分四面体网格做准备 最后生成四面体网格并进行最终的单元检查 - 65 -