
如何利用ANSYS进行拓扑优化.docx
21页如何利用 ANSYS 进行拓扑优化前言就目前而言,利用有限元进行优化主要分成两个阶段:(1) ) 进行拓扑优化, 明确零件正确的外形、 刚度、体积,或者合理的固有频率,主要目的是确定优化的方向;(2) ) 进行尺寸优化, 主要目的是确定优化后的的零件具体尺寸值, 通常是在完成拓扑优化之后,再执行尺寸优化;在 ANSYS 中,利用拓扑优化,可以完成以下两个目的:(1) ) 在特定载荷和约束的条件下, 确定零件的正确外形, 或者最小的体积 (或者质量);(2) ) 利用拓扑优化, 使零件达到需要的固有频率, 防止在使用过程中产生共振等不利影响;本文主要就在 ANSYS 环境中如何执行拓扑优化进行说明;1、利用 ANSYS 进行拓扑优化的过程在 ANSYS 中,执行优化,通常分为以下 6 个步骤:定义需要求解的结构问题挑选合理的优化单元类型设定优化和非优化的区域定义载荷步或者需要提取的频率对优化过程进行定义和掌握运算并查看结果1.1 、定义需要求解的结构问题对于结构进行优化分析,定义结构的物理特性必不行少,例如,需要定义 结构的杨氏模量、泊松比(其值在 0.1~0.4 之间)、密度等相关的结构特性方面的信息,以供结构运算能够正常执行下去;1.2 、挑选合理的优化单元类型在 ANSYS 中,不是全部的单元类型都可以执行优化的,必需满意如下的规定:( 1)2D 平面单元: PLANE82 单元和 PLANE183 单元;( 2)3D 实体单元: SOLID92 单元和 SOLID95 单元;( 3)壳单元: SHELL93 单元;上述单元的特性在帮忙文件中有具体的说明, 同时对于 2D 单元,应使用平面应力或者轴对称的单元选项;1.3 、指定优化和非优化的区域在 ANSYS 中规定,单元类型编号为 1 的单元,才执行优化运算;否就,就不执行优化运算; 例如,对于结构分析中, 对于不能去除的部分区域将单元类型编号设定为≥ 2,就可以不执行优化运算,请见下面的代码片段:Et,1,solid92 Et,2,solid92Type,1 Vsel,s,num,,1,2Vmesh,allType,2 Vsel,s,num,,3 Vmesh,all说明:上述代码片段定义相同的单元类型( solid92),但编号分别为 1 和 2,并将单元类型编号 1 利用网格划分安排给了 1#体和 2#体,从而对其进行优化 运算;而单元编号为 2 利用网格划分安排给了 3#体,从而不执行优化运算;1.4 、定义载荷步或者需要提取的频率1.4.1 线性结构静态分析对于结构优化而言,其总是在特定的载荷(或者载荷步) ,约束和目标下进行的,在优化分析的过程中, 必需执行线性结构静态分析, 才能获得需要的优化之后的外形; 在 ANSYS 中,可以对单步载荷或者多步载荷执行优化分析, 当然,单步载荷是最简洁的了;然而,对于某个特定载荷步,必需使用 LSWRITE 载荷步储备命令将载荷步预存起来,再用 LSSOLVE 命令进行求解;先看看下面的代码片段:D,10,all,0,,20,1Nsel,s,loc,y,0 Sf,Allsel Lswrite,1 Ddel, Sfdel,Nsel,s,loc,x,0,1 D,all,all,0 F,212,fx,Lswrite,2Lswrite,3FinishTocomp,mcomp,multiple,3 Tovar,mcomp,obj Tovar,volume,con,,10 TodefToloop,20说明:该代码片段第一定义了 3 个载荷步, 并利用 LSWRITE 命令将载荷步预存;之后利用 Tocomp 命令定义优化任务目标名称 mcomp,并将体积削减 10% 作为优化的约束条件,之后用 Todef 初始化优化过程,最终利用 Toloop 命令执行优化运算,最大运算次数 20 次;相关命令: TOCOMP 、TOVAR 、TODEF 、TOEXE 、TOLOOP 和简要说明;(1) TOCOMP : 定 义 结 构 优 化 任 务 目 标 ;( 如 何 理 解COMPLIANCE :Compliance本意是一样性,统一性,在结构优化分析中, 特殊是对于多个载荷步, 需要在多个载荷步之间取得一样性的结果, 才能满意结构优化分析的目标)(2) TOVAR :定义优化变量,可以是目标变量,也可以是约束变量等;(3) TODEF :定义优化的初始化条件或者收敛准就;(4) TOEXE :执行单次优化运算;(5) TOLOOP :批量执行多次优化分析运算;说说 TOEXE 和 TOLOOP 之间的区分: TOEXE 执行单次优化分析运算,其本身不执行结构分析过程,因此,在利用 TOEXE 命令执行优化运算之前,需要利用 SOLVE 或者 LSSOLVE 命令先执行结构静态分析运算; 而 TOLOOP 是一个执行优化运算的宏命令,其中包含了 SOLVE 和 LSSOLVE 等命令,因此在上述代码片段中没有显现 SOLVE 或者 LSSOLVE 命令;就使用的便利性而言,利用 TOLOOP 命令可能更便利,但是利用 TOEXE 命令用户可以创建自己的优化宏命令,各有所长,主要是看用户如何使用这两个命令了;1.4.2 模态优化分析在执行模态优化分析之前,需要使用 TOFREQ 和 TOVAR 定义模态分析任务名称和优化分析变量,这点和上述的结构优化分析过程类似;值得留意的是,在利用 MXPAND 指定模态频率分析运算中, 需要将单元运算设定为 “YES”,这样才能利用 TOEXE 命令正常执行优化运算过程,当然在 MXPAND 之前仍要使用 modopt 命令设定模态运算的选项;而利用 TOLOOP 命令执行模态优化分析运算过程中, 由于 TOLOOP 是编制好的宏命令, 不需要使用 MXPAND 等命令,请见下面的代码片段:/solution Antype,modal FinishTofreq,mfreq,reciprocal,3 Tovar,mfreq,obj Tovar,volume,con,,50 Todef,1.0d-4Toloop,20说明:第一定义模态求解作为分析类型,之后利用 tofreq 设定频率优化作为优化任务,名称为 mfreq(其中 reciprocal表示多阶模态频率,本例中为前 3 阶模态),并利用命令 tovar 设定了体积削减 50%作为优化的约束条件,之后设定 优化的收敛准就, 最终利用 toloop 命令执行最多 20 次优化迭代运算; 在本例中, 由于 toloop 是一个宏命令,所以并没有显式的使用 modopt 和 mxpand 命令,假如使用 toexe命令,就用户必需显式的使用 modopt 和 mxpand 命令;1.5 、对优化过程进行定义和掌握在 ANSYS 中执行优化过程有 2 种方式:(1) ) 采纳 solve和 toexe 命令相结合的机制,一步一步的执行优化运算,直到满意用户的优化目标和约束条件为止;(2) ) 采纳 toloop 宏命令执行优化运算,可执行多次优化分析运算;说明:采纳其次种方式操作更简洁,举荐采纳;总体上来说,执行优化运算过程大致上分为 4 个步骤:(1) ) 定义优化函数(或者方式和任务) ;(2) ) 定义优化目标或者约束条件;(3) ) 初始化优化过程;(4) ) 执行优化运算(可以是单次运算,也可以自动批量运算) ;以下分别进行描述:1.5.1 、定义优化函数在 ANSYS 中,主要采纳以下两种方式定义优化函数:(1) 利用 TOCOMP 定义结构优化;(2) 利用 TOFREQ 定义频率优化;说明:可以利用 TOLIST 命令例举出全部定义了的优化函数;1.5.2 、定义优化目标或者约束条件定义优化目标或者约束条件主要是利用 TOVAR 命令设定,看看下面的代码片段:Tocomp,comp,single,1 Tovar, comp,obj Tovar, Volume,con, 25 Todef, 1.0d-4 Toloop,10,1说明:第一利用 tocomp 命令定义了一个单步 (single)的结果优化分析任务, 并将任务名称( comp)作为优化任务,并设定体积削减 25%作为优化约束条件,之后初始化优化过程, 并利用 toloop 命令批量执行优化运算, 当然,可以使用 tostat 命令查询 tovar、todef 和 totype 命令的设定状态( totype 命令设定优化类型,具体说明可以参见帮忙文件) ;同样,也可以利用如下的命令格式删除已经定义好的优化任务名称或者约束条件:Tovar, Reference_Nam,e DEL可以定义的优化目标和约束条件的组合方式见下表:序号1优化类型结构优化优化目标单步优化约束条件体积2(TOCOMP)(single)多步优化( VOLUME体积)(Multiple )( VOLUME)3频率优化单阶频率优化体积4(TOFREQ)(Single)加权平均频率优化(Weighted Mean)( VOLUME体积( VOLUME))5一样平均频率优化体积6(Reciprocal Mean) 欧几里德范数频率优化(Euclidean norm )( VOLUME体积( VOLUME))7体积( VOLUME )单步结构载荷8体积( VOLUME )多部结构载荷1.5.3 、初始化优化过程初始化优化过程主要是利用 TOTYPE 和 TODEF 命令分别设定优化运算执行的方式和终止运算(或者运算收敛的精度) ,具体说明如下:(1) ) TOTYPE :设定优化运算执行方式,主要有优化准就方式( Optimality Criteria) 和 顺 序 凸 状 程 序 方 式 ( Sequential Convex Programmin)g,OC 方式可以定义仅将体积作为约束条件,而 SCP方式必需定义优化运算的目标;(2) ) TODEF :设定优化运算的终止方式或者收敛精度;说明:优化运算的设定参数并不储存到数据库中,假如用户利用 RESUME 复原数据库, 就需要重新利用 TOCOMP 、TOFREQ 、TOVAR 、TOTYPE 、TODEF 等命令进行重新设定;1.5.4 、执行优化运算执行优化运算分为单次优化运算和批量多次自动优化运算两种方式,以下分别说明:(1) ) 利用 SOLVE TOEXE 方式,看看下面。
