《优化分析ANSS》由会员分享,可在线阅读,更多相关《优化分析ANSS(225页珍藏版)》请在金锄头文库上搜索。
1、优化分析(优化分析(ANSYS) 第一章第一章 引言引言:ANSYS:ANSYS优化分析优化分析第二章第二章 参数化建模参数化建模第三章第三章 顺序耦合场分析顺序耦合场分析第四章第四章 顺序耦合场分析顺序耦合场分析第五章第五章 热热- -应力分析应力分析第六章第六章 APDL APDL 基础基础第七章第七章ANSYSANSYS常识常识目录优化分析优化分析ANSYS讲义讲义刘恒刘恒第第 一一 章章引言:引言:ANSYSANSYS优化分析优化分析优化分析优化分析ANSYS讲义讲义刘恒刘恒A. 什么是ANSYS优化分析?B. 基本概念C. 优化技术一、引言:ANSYS优化分析优化分析优化分析ANSY
2、S讲义讲义刘恒刘恒优化设计优化设计是一种寻找确定最优设计方案的技术。所谓“最优设计”,指的是一种方案可以满足所有的设计要求,而且所需的支出(如重量,面积,体积,应力,费用等)最小。也就是说,最优设计方案就是一个最有效率的方案。注意过普通的水杯吗?底面圆圆的,上面加盖的哪一种。仔细观察一下,你会发现比较老式的此类水杯有一个共同特点:底面直径水杯高度。因为只有满足这个条件,才能在原料耗费最少的情况下使杯子的容积最大。A.什么是ANSYS优化分析?优化分析优化分析ANSYS讲义讲义刘恒刘恒设计方案的任何方面都是可以优化的,比如说:尺寸(如厚度),形状(如过渡圆角的大小),支撑位置,制造费用,自然频率
3、,材料特性等。实际上,所有可以参数化的ANSYS选项都可以作优化设计。例子:齿轮在一定载荷下以最大应力不超过极限为约束例子:齿轮在一定载荷下以最大应力不超过极限为约束条件,进行重量最小优化,可将实心齿轮空心化,减重条件,进行重量最小优化,可将实心齿轮空心化,减重27%。粉末冶金齿轮粉末冶金齿轮优化分析优化分析ANSYS讲义讲义刘恒刘恒A.什么是ANSYS优化分析?ANSYS程序提供了两种优化的方法,这两种方法可以处理绝大多数的优化问题。零阶方法是一个很完善的处理方法,可以很有效地处理大多数的工程问题。一阶方法基于目标函数对设计变量的敏感程度,因此更加适合于精确的优化分析。对于这两种方法,ANS
4、YS程序提供了一系列的分析评估修正的循环过程。就是对于初始设计进行分析,对分析结果就设计要求进行评估,然后修正设计。这一循环过程重复进行直到所有的设计要求都满足为止。除了这两种优化方法,ANSYS程序还提供了一系列的优化工具以提高优化过程的效率。例如,随机优化分析的迭代次数是可以指定的。随机计算结果的初始值可以作为优化过程的起点数值。优化分析优化分析ANSYS讲义讲义刘恒刘恒A.什么是ANSYS优化分析?设计变量设计变量(DVs)为自变量,优化结果的取得就是通过改变设计变量的数值来实现的。每个设计变量都有上下限,它定义了设计变量的变化范围。在以上的问题里,设计变量很显然为梁的宽度b和高度h。b
5、和h都不可能为负值,因此其下限应为b,h0,而且,h有上限hmax。ANSYS优化程序允许定义不超过60个设计变量。状态变量状态变量(SVs)是约束设计的数值。它们是“因变量”,是设计变量的函数。状态变量可能会有上下限,也可能只有单方面的限制,即只有上限或只有下限。在上述梁问题中,有两个状态变量:(总应力)和(梁的位移)。在ANSYS优化程序中用户可以定义不超过100个状态变量。目标函数目标函数是要尽量减小的数值。它必须是设计变量的函数,也就是说,改变设计变量的数值将改变目标函数的数值。在以上的问题中,梁的总重量应该是目标函数。在ANSYS优化程序中,只能设定一个目标函数。设计变量,状态变量和
6、目标函数总称为优化变量。在ANSYS优化中,这些变量是由用户定义的参数来指定的。用户必须指出在参数集中哪些是设计变量,哪些是状态变量,哪是目标函数。B.基本概念优化分析优化分析ANSYS讲义讲义刘恒刘恒设计序列设计序列是指确定一个特定模型的参数的集合。一般来说,设计序列是由优化变量的数值来确定的,但所有的模型参数(包括不是优化变量的参数)组成了一个设计序列。一个合理的设计一个合理的设计是指满足所有给定的约束条件(设计变量的约束和状态变量的约束)的设计。如果其中任一约束条件不被满足,设计就被认为是不合理的。而最优设计是既满足所有的约束条件又能得到最小目标函数值的设计。(如果所有的设计序列都是不合
7、理的,那么最优设计是最接近于合理的设计,而不考虑目标函数的数值。)分析文件分析文件是一个ANSYS的命令流输入文件,包括一个完整的分析过程(前处理,求解,后处理)。它必须包含一个参数化的模型,用参数定义模型并指出设计变量,状态变量和目标函数。由这个文件可以自动生成优化循环文件(Jobname.LOOP),并在优化计算中循环处理。B.基本概念优化分析优化分析ANSYS讲义讲义刘恒刘恒一次循环一次循环指一个分析周期。(可以理解为执行一次分析文件。)最后一次循环的输出存储在文件Jobname.OPO中。优化迭代(或仅仅是迭代过程)是产生新的设计序列的一次或多次分析循环。一般来说,一次迭代等同于一次循
8、环。但对于一阶方法,一次迭代代表多次循环。优化数据库优化数据库记录当前的优化环境,包括优化变量定义,参数,所有优化设定,和设计序列集合。该数据库可以存储(在文件Jobname.OPT),也可以随时读入优化处理器中。上述的许多概念可以用图解帮助理解。右图给出了优化分析中的数据流向。分析文件必须作为一个单独的实体存在,优化数据库不是ANSYS模型数据库的一部分。B.基本概念优化分析优化分析ANSYS讲义讲义刘恒刘恒零阶方法:零阶方法:零阶方法之所以称为零阶方法是由于它只用到因变量而不用到它的偏导数。在零阶方法中有两个重要的概念:目标函数和状态变量的逼近方法,由约束的优化问题转换为非约束的优化问题。
9、逼近方法:逼近方法:本方法中,程序用曲线拟合来建立目标函数和设计变量之间的关系。这是通过用几个设计变量序列计算目标函数然后求得各数据点间最小平方实现的。该结果曲线(或平面)叫做逼近。每次优化循环生成一个新的数据点,目标函数就完成一次更新。实际上是逼近被求解最小值而并非目标函数。C.优化技术优化分析优化分析ANSYS讲义讲义刘恒刘恒随机搜索法:随机搜索法:对于随机搜索法OPTYPE,RAND,程序完成指定次数的分析循环,并在每次循环中使用随机搜索变量值。用户可以用OPRAND命令(MainMenuDesignOptMethod/Tool)指定最大迭代次数和最大合理设计数。如果给出了最大合理设计数
10、,在达到这个数值时循环将终止,而忽略最大迭代次数是否达到。随机搜索法往往作为零阶方法的先期处理。它也可以用来完成一些小的设计任务。例如可以做一系列的随机搜索,然后通过查看结果来判断当前设计空间是否合理。等步长搜索法:等步长搜索法:等步长搜索法OPTYPE,SWEEP用于在设计空间内完成扫描分析。将生成n*NSPS个设计序列,n是设计变量的个数,NSPS是每个扫描中评估点的数目(由OPSWEEP命令指定)。对于每个设计变量,变量范围将划分为NSPS-1个相等的步长,进行NSPS次循环。问题的设计变量在每次循环中以步长递增,其他的设计变量保持其参考值不变。设计序列中设计变量的参考值用OPSWEEP
11、命令的Dset指定(MainMenuDesignOptMethod/Tool)。C.优化技术优化分析优化分析ANSYS讲义讲义刘恒刘恒乘子计算法:乘子计算法:本工具OPTYPE,FACT用二阶技术生成设计空间上极值点上的设计序列数值。(这个二阶技术在每个设计变量的两个极值点上取值。)可以用OPFACT命令(MainMenuDesignOptMethod/Tool)指定是完成整体的还是部分子的评估。对于整体评估,程序进行2n次循环,n是设计变量的个数。1/2部分的评估进行2n/2次循环,依此类推。最优梯度法:最优梯度法:最优梯度法OPTYPE,GRAD计算设计空间中某一点的梯度。梯度结果用于研究
12、目标函数或状态变量的敏感性。用下列方式指定在哪个设计序列计算梯度:Command:OPGRADGUI:MainMenuDesignOptMethod/Tool本工具做的循环次数等于设计变量的数目。C.优化技术优化分析优化分析ANSYS讲义讲义刘恒刘恒第第 二二 章章参数化建模参数化建模优化分析优化分析ANSYS讲义讲义刘恒刘恒ANSYS优化的基本要求 (拓朴优化除外) 就是要将模型参数化。在此模型中, 我们要:A.定义参数化模型B.复习某些APDL语言基础C.按要求建立一个参数化模型并建立一个分析文件D.做一、二个课堂练习优化分析优化分析ANSYS讲义讲义刘恒刘恒参数化建模什么是参数化建模?用
13、参数 (变量) 而不是数字建立和分析的模型通过简单地改变模型中的某些参数值, 就可建立和分析一个新的模型。H1H2H1A1A1A2A2A2优化分析优化分析ANSYS讲义讲义刘恒刘恒A.定义和目的ANSYS不仅允许你对几何变量,而且还可对其他特征“参数化” ,即:材料特性载荷约束数最大纵向变形最低温度最大应力优化分析优化分析ANSYS讲义讲义刘恒刘恒A.定义和目的基本要求是用作 DV,SV,和OBJ的那些量必须参数化。例如:如要体积最小 (目标函数), 则总体积必须作为一个参数。如果高度 H1设为设计变量, 则模型的几何参数必须建立一个 H1项。 如果设计有一个压应力 (状态变量)的限制作为约束
14、条件, 则 最大压应力必须作为一个参数。优化分析优化分析ANSYS讲义讲义刘恒刘恒A.定义和目的每次进行优化都要从参数化建模开始。参数化建模的 “输出” 是分析文件, 该文件作为优化程序的“输入” 。分析文件分析文件搜寻设计域搜寻设计域进行优化设计进行优化设计初始设计初始设计参数化建模和加载参数化建模和加载求解求解参数化结果参数化结果优化分析优化分析ANSYS讲义讲义刘恒刘恒A.定义和目的该分析文件 包含完成参数化分析的 ANSYS命令 :建模加载求解查看结果优化分析优化分析ANSYS讲义讲义刘恒刘恒A.定义和目的在分析文件中要注意:犹如 .log文件一样要将非重要命令 (绘图, 列表, 图形
15、控制等) 移去。把分析文件想象成优化必须要“存储”的参数化模型的一种格式。优化程序多次执行分析文件, 每次都用新的参数值。因为参数化模型中的那些参数很重要, 我们将首先复习 一些 APDL语言的基本概念。优化分析优化分析ANSYS讲义讲义刘恒刘恒A.定义和目的什么是APDL语言?APDL是 ANSYS Parametric Design Language(ANSYS参数设计语言)的缩写, 一种脚本语言,可使模型参数化并使一般任务自动化。用 APDL语言, 可以:用参数而不是数字输入模型尺寸, 材料参数等。 从 ANSYS数据库提取信息, 如接点坐标或最大应力值。优化分析优化分析ANSYS讲义讲
16、义刘恒刘恒B.APDL语言用APDL语言还可以:在参数间进行数学运算。用数组参数创建向量和矩阵并对其操作。对最常用的命令或宏定义缩写字(快捷方式) 。创建一个带 if-then-else分支,do-loops循环和用户提示的宏来执行一系列的任务。优化分析优化分析ANSYS讲义讲义刘恒刘恒B.APDL语言本节, 将只集中介绍APDL语言的基本功能:如何定义参数如何使用参数如何从 ANSYS数据库提取信息及如何用此信息给参数赋值APDL语言的其他功能, 请参考“APDL Programmers Guide.”优化分析优化分析ANSYS讲义讲义刘恒刘恒B.APDL语言要定义参数, 用格式Name=V
17、alue可由输入窗键入或用标量参数对话框 (UtilityMenuParametersScalarParameters.)Name为参数名, 8个或更少字符Value可为一数, 一个预定义的参数, 一个数学函数, 一个参数化表达式, 或一个字符串。优化分析优化分析ANSYS讲义讲义刘恒刘恒B.APDL语言例如:inrad=2.5outrad=8.2numholes=4thick=outrad-inrade=2.7e6density=0.283bb=cos(30)pi=acos(-1)g=386massdens=density/gcircumf=2*pi*radarea=pi*r*2dist=s
18、qrt(y2-y1)*2+(x2-x1)*2)slope=(y2-y1)/(x2-x1)theta=atan(slope)jobname=proj1优化分析优化分析ANSYS讲义讲义刘恒刘恒B.APDL语言一些命名规则:参数名必须是由字母开头的8个或8个以下字符的组合。只允许字母, 数字, 和下划线“ _” 。避免下划线 _ 作为起始字符存给 ANSYS使用。参数名不分大小写, 即, “RAD”和 “Rad”是相同的。所有参数 内部都是以大写形式存储的。避免使用通用的 ANSYS标号, 诸如 STAT,DEFA,和ALL。优化分析优化分析ANSYS讲义讲义刘恒刘恒B.APDL语言要使用一个参数
19、,只要在对话框中或在命令中相应的域处输入他的名字。例如,要定义一个矩形可用参数w=10和h=5,可用菜单:PreprocessorCreateRectangleBy2Corners+或命令:/prep7blc4,w,h优化分析优化分析ANSYS讲义讲义刘恒刘恒B.APDL语言注意:当使用一个参数时, ANSYS 立即替换其值 。前例中的矩形是以 10x5的面积, 而不是作为 wxh保存的。也就是说, 当矩形产生后,如果要改变w或 h的值, 此面积不会被改变 。大多数参数是会被替换的,这也就是为什么要用命令文件 (即分析文件)的形式存贮参数化模型的理由。优化分析优化分析ANSYS讲义讲义刘恒刘恒
20、B.APDL语言使用参数的其他例子:jobname=proj1/filnam,jobname!作业名/prep7ex=30e6mp,ex,1,ex!杨氏模量force=500fk,2,fy,-force!作用在KP2点的力fk,6,fx,force/2!作用在KP6点的力优化分析优化分析ANSYS讲义讲义刘恒刘恒B.APDL语言数据库信息的获取和给参数赋值,可用*GET命令,或UtilityMenuParametersGetScalarData.有大量的信息,包括模型和结果数据。详见*GET命令的描述。优化分析优化分析ANSYS讲义讲义刘恒刘恒B.APDL语言例如:*get,x1,node,1
21、,loc,x!x1=Xcoordinateofnode1CSYS*/post1*get,sx25,node,25,s,x!sx25=Xstressatnode25RSYS*get,uz44,node,44,u,z!uz44=UZdisplacementatnode44RSYS*nsort,s,eqv!SortnodesbyvonMisesstress*get,smax,sort,max!smax=maximumoflastsortetable,vol,volu!Storeelementvolumesasvolssum!Sumallelementtablecolumns*get,totvol,s
22、sum,vol!totvol=sumofvolcolumn*CSYS=在激活的坐标系中 (CSYS)RSYS=在激活的结果坐标系中(RSYS)优化分析优化分析ANSYS讲义讲义刘恒刘恒B.APDL语言有些数据可用 get 函数获取 例如:x1=nx(1)!x1=接点1CSYS*处的X坐标nn=node(2.5,3,0)!nn=在(2.5,3,0)CSYS*或临近处的接点/post1ux25=ux(25)!ux25=接点25RSYS*处的UXtemp93=temp(93)!temp93=93接点的温度width=distnd(23,88)!width=23和88接点间的距离*CSYS=在激活的坐
23、标系中(CSYS)RSYS=在激活的结果坐标系中(RSYS)优化分析优化分析ANSYS讲义讲义刘恒刘恒B.APDL语言可在一个字段处直接用 get函数, 就象一个参数一样. 例如:k,10,kx(1),ky(3)!KP10用KP1处的X值,KP3处的Y值CSYS*k,11,kx(1)*2,ky(3)!CSYS*f,node(2,2,0),fx,100!接点(2,2,0)CSYS*处的力FX*CSYS=在激活的坐标系中(CSYS)优化分析优化分析ANSYS讲义讲义刘恒刘恒B.APDL语言APDL语言小结:定义参数可用格式: Name=Value.Value可以是一个数, 一个预先定义的参数, 一
24、个数学函数, 一个 参数表达式, 或一个字符串。可用 *GET命令 或 get函数从ANSYS数据库中获取数据.从 ANSYS存储数据的实际格式中获取数据 (数字或字串), 不用参数名的形式.优化分析优化分析ANSYS讲义讲义刘恒刘恒B.APDL语言一个参数化模型建立和分析的过程除在需要的地方使用参数之外 与通常的 ANSYS分析没有什么两样:1. 定义参数2. 在需要的地方用参数建立模型3. 加载并在需要的地方使用参数求解4. 查看结果和参数化要求的数据5. 建立分析文件优化分析优化分析ANSYS讲义讲义刘恒刘恒C.过程和指导第1步 - 定义参数用标准格式 Name=Value定义参数, 可
25、在输入窗中或在标量参数对话框中进行 (UtilityMenuParametersScalarParameters.)。在这一步中,无须定义所有的参数, 可将所有参数的定义放在以后的编辑中轻易地一起进行 (如有必要的话)。用作 DVs的参数,其值的定义只用于初始设计。优化分析优化分析ANSYS讲义讲义刘恒刘恒C.过程和指导第2,3步 - 用参数建模, 分网和加载在需要的地方用参数而不是数字建模。建模和加载要避免使用交互图形或实体号操作, 特别是在布尔操作后。要用选择逻辑,组件名,或 get函数。注意: 图形检出器总是要在命令中加入实体号, 即使用 “PickAll”命令或键入一个参数名也是如此。
26、 因为实体号在优化过程中会改变, 所以最好避免在参数化建模的时候使用图形检出的方法来选取实体。优化分析优化分析ANSYS讲义讲义刘恒刘恒C.过程和指导例如, 不推荐在参数化模型中使用以下方法 (除非是非常简单的情况):SFL,4,PRES,500!压力加在4号线上F,32,FY,-7500!力加在32节点处而要, 使用选择逻辑或 get函数:LSEL,S,LOC,!由位置选线SFL,ALL,PRES,500!在所有选择线上加压力LSEL,ALLF,NODE(1.5,3,0),FY,-7500!由get函数得到节点号优化分析优化分析ANSYS讲义讲义刘恒刘恒C.过程和指导H1H2A1, A2,
27、A3记住: 你可以用参数化表达式 和/或 if-then-else分支来修改参数。 例如:如直径diameter定义为一个参数, 在用 CYLIND或 CYL4命令时,可以用 diameter/2来定义一个圆柱体。如果构架桥用1/2对称法建模, 对称平面上的纵杆横截面积应为 A2/2.优化分析优化分析ANSYS讲义讲义刘恒刘恒C.过程和指导如果在一个壳模型中,厚度 thk定义为参数, 且只有三个壳厚可用 (即, 1/8”, 3/16”, 1/4”), 则可有如下 if-then-else结构:et,1,63!壳单元类型*if,thk,lt,2.5/16,thenthk=1/8!用1/8ifth
28、k3.5/16*elsethk=3/16!否则用3/16*endifr,1,thk!定义壳厚优化分析优化分析ANSYS讲义讲义刘恒刘恒C.过程和指导第4步 - 结果的参数化这就是说要获得结果数据并以参数化形式保存。 通常用通用前处理器 POST1来完成。结果数据, 如,最大变形, 最大冯-密塞斯应力, 和总体积, 是状态变量和目标函数的典型用例。用 *GET命令 (UtilityMenuParametersGetScalarData.)或 get函数来获取结果数据。优化分析优化分析ANSYS讲义讲义刘恒刘恒C.过程和指导第5步-创建分析文件分析文件包括用于建立和分析参数化模型的输入命令。优化程
29、序用其进行多个设计方案的循环。分析文件分析文件搜寻设计域搜寻设计域进行优化设计进行优化设计初始设计初始设计参数化建模和加载参数化建模和加载求解求解参数化结果参数化结果优化分析优化分析ANSYS讲义讲义刘恒刘恒C.过程和指导分析文件中的命令流紧跟在用以建立和分析参数化模型的过程之后:参数定义 (给初值)几何定义命令分网命令加载和加边界条件命令求解命令获取结果命令优化分析优化分析ANSYS讲义讲义刘恒刘恒C.过程和指导有两种方法建立分析文件:“倒出” 存于ANSYS 数据库中的log命令编辑一个 log文件 (jobname.log).本讲座将集中介绍其中的第一种方法优化分析优化分析ANSYS讲义
30、讲义刘恒刘恒C.过程和指导要“倒出”存于ANSYS数据库中的log命令,选择UtilityMenuFileWriteDBLogFile(LGWRITE命令).缺省文件名是:jobname.lgw.可以只写重要命令;也可以将非重要命令,如(plots,lists等)同时写入。优化分析优化分析ANSYS讲义讲义刘恒刘恒C.过程和指导可以用文字编辑程序来编辑分析文件,并:加入一些由 ! 字符开头的注解语句。 任何在 ! 之后的文字,ANSYS都作为注解而予以忽略。加入一些如 EPLOT的绘图命令和绘制云图的命令 (PLNSOL,)。这样, 当你交互运行优化程序时,可以看到模型由初始设计逐个改变的过程
31、。优化分析优化分析ANSYS讲义讲义刘恒刘恒C.过程和指导要 测试 分析文件,并确认该文件没有引起错误或产生不真实的模型。要测试该分析文件, 只要在ANSYS重新开始时输入并执行此文件用 /INPUT命令或 Utility Menu File Read Input from优化分析优化分析ANSYS讲义讲义刘恒刘恒C.过程和指导以分析文件形式保存的一个参数化模型, 是ANSYS设计优化所 必须的APDL语言参数是用来建立和分析该参数化模型的。分析文件一般包括这些命令:初始化参数值集合建模和分网施加边界条件和载荷,并求解查看结果和获得结果数据优化分析优化分析ANSYS讲义讲义刘恒刘恒D.小结第第
32、 三三 章章进行优化设计进行优化设计优化分析优化分析ANSYS讲义讲义刘恒刘恒本章, 将集中介绍如何对现有设计进行优化。将包括以下内容:A.优化设计的定义 总览B.过程 搜索一个优化目标的步骤C.重启动D.练习优化分析优化分析ANSYS讲义讲义刘恒刘恒进行优化设计一次快速复习一个优化设计是一次:执行目标函数,满足所有设计约束,并且 使用最少量的材料 (或成本或某种其他判据)的过程。优化分析优化分析ANSYS讲义讲义刘恒刘恒A.优化设计的定义要优化一个设计, 就必须有一个分析文件。分析文件包括参数模型的输入: 初始参数值几何模型和分网边界条件, 载荷, 和求解结果查看和检索优化分析优化分析ANS
33、YS讲义讲义刘恒刘恒A.优化设计的定义从创建一个参数化模型和建立一个分析文件开始。分析分析文件文件搜寻设计域搜寻设计域进行优化设计进行优化设计初始设计初始设计参数化建模和加载参数化建模和加载求解求解参数化结果参数化结果优化分析优化分析ANSYS讲义讲义刘恒刘恒B.优化设计的过程主要分四步 (假定已有分析文件存在):1.确认分析文件2.确认优化变量 - DV,SV,和目标函数3.进行优化4.查看结果这些步骤相应的菜单如右,可由主菜单Main Menu Design Opt得到优化分析优化分析ANSYS讲义讲义刘恒刘恒B.优化设计的过程以下将用一个转盘的例子来说明过程的各步:一个高速旋转的钢盘,在
34、15,000 rpm的转速下工作,要求按等 应力设计 。材料属性: E = 30E6 psi, r = 7.2E-4 lb-s2/in4, n = 0.3qrimymid10.0R4.0Rqhub0.60.41.60.5xmid优化分析优化分析ANSYS讲义讲义刘恒刘恒B.优化设计的过程qrimymid10.0R4.0Rqhub0.60.41.60.5xmid冯密塞斯应力应不超过 25,000 psi转盘最低自震频率应为 1000 Hz或更高。轮毂和轮缘的尺寸是固定的, 但允许改变中间部分的形状。优化分析优化分析ANSYS讲义讲义刘恒刘恒B.优化设计的过程4确认分析文件确认优化参数进行优化查看
35、结果调用分析文件,该文件中应包含执行一次优化完整循环所需的全部输入:参数化建模和加载求解参数化结果优化分析优化分析ANSYS讲义讲义刘恒刘恒B.优化设计的过程确认分析文件,只要简单地从如下的AssignAnalysisFile对话框中选择文件名:Design Opt -Analysis File- Assign或用OPANL命令优化分析优化分析ANSYS讲义讲义刘恒刘恒B.优化设计的过程3确认分析文件4确认优化变量进行优化查看结果这一步要选择适当的参数并将他们定义为:设计变量状态变量目标函数优化分析优化分析ANSYS讲义讲义刘恒刘恒B.优化设计的过程设计变量(DV)设计变量是为了使体积(或其他
36、任何目标函数)最小而允许改变的变量。qrimymidqhub对此转盘实例,DV为轮毂角,30-90轮缘角,45-135XMID,0.5-4.5inYMID,0.25-1.5inxmidqrimqhub优化分析优化分析ANSYS讲义讲义刘恒刘恒B.优化设计的过程确认DV,Design Opt Design Variables Add或用OPVAR命令:OPVAR,name,DV,min,max,toler优化分析优化分析ANSYS讲义讲义刘恒刘恒B.优化设计的过程需要的最大值 (MAX),必须 0.0。 最小值 (MIN),如果指定的话, 必须 0.0. 如果未指定, MIN的缺省值为 0.00
37、1*MAX.允差 (TOLER)是为收敛(停机)而确定的两次循环间DV可接受的改变量 。允差与 DV有相同的单位,并且,不是 一个百分比 或一个分数。 缺省值 = 0.01*当前值例如, 如果在第6次循环时,轮毂角 = 54.2 而第7次循环时为55.0, 停机条件 不 满足,因为 DV的改变量 |54.2-55.0| = 0.8, 大于 () 0.55。(但是有时会基于目标函数而停机 将在以后详细介绍)优化分析优化分析ANSYS讲义讲义刘恒刘恒B.优化设计的过程可以定义 60个 DV, 但最好不要超过 10-20个 DV。 DV太多, 很容易收敛于一个局部最小值。因为大多数 DV 是诸如厚度
38、、半径等几何参数, 所以 DV 应限为正值,这样的限制一般不会产生问题。优化分析优化分析ANSYS讲义讲义刘恒刘恒B.优化设计的过程状态变量(SV)设计约束,如最大应力和变形以此转盘为例,SV为:最大周向应力25000psi一阶自震频率1000Hzqrimymidqhubxmid优化分析优化分析ANSYS讲义讲义刘恒刘恒B.优化设计的过程要确认SV,Design Opt State Variables Add或用OPVAR命令:OPVAR,name,SV,min,max,toler优化分析优化分析ANSYS讲义讲义刘恒刘恒B.优化设计的过程SV可以是单边的或双边的。单边: 只指定 MIN或只指
39、定 MAX值双边: 同时指定 MIN和 MAX值。TOLER是可行域的允差 在被判定为不可行域之前,该设计离MAX和 MIN的范围有多远。允差与 DV有相同的单位,并且,不是 一个百分比 或一个分数。 缺省值 = 0.01*当前值。例如, 如果该转盘一阶自震频率为 FREQ1=991.3Hz,则该设计仍在 可行域,因为实际门槛值为 1000-(0.01*1000) = 990 Hz.Feasible RegionTOLERMAXMINTOLERInfeasibleInfeasible优化分析优化分析ANSYS讲义讲义刘恒刘恒B.优化设计的过程状态变量不是优化所要求的, 但通常还要指定,因为大多
40、数设计需要在某种形式的约束。可以定义 100 个 SV。优化分析优化分析ANSYS讲义讲义刘恒刘恒B.优化设计的过程目标函数(OBJ)目标函数是通过优化要被最小化的参数。例如体积,重量,和某处的温度。以此转盘为例,目标是应力变化最小。因此OBJ是冯密塞斯应力的标准差,SDEV。qrimymidqhubxmid优化分析优化分析ANSYS讲义讲义刘恒刘恒B.优化设计的过程确认目标函数,Design Opt Objective或用OPVAR命令:OPVAR,name,OBJ,toler优化分析优化分析ANSYS讲义讲义刘恒刘恒B.优化设计的过程允差 (TOLER)是为收敛(停机)而确定的两次循环间O
41、BJ可接受的改变量 。允差与 OBJ有相同的单位,并且,不是 一个百分比 或一个分数。 缺省值 = 0.01*当前值。例如, 如果第7次循环的标准差为 SDEV=3900,而第6次循环为 3850, OBJ的停机条件 没有 满足,因为 |3900-3850| = 50, 大于停机值 () 39.0.(但是有时会基于DV而停机 将在以后详细介绍) 优化分析优化分析ANSYS讲义讲义刘恒刘恒B.优化设计的过程你可以只指定一个目标函数 OBJ。ANSYS总是 极小化 此 OBJ.如果你想要极大化某值, 如参数 y,可指定 1/y或 A-y作为 OBJ(此间 Ay)。推荐 OBJ为正。 如要确保OBJ
42、为正,可对参数加上一个常数值。优化分析优化分析ANSYS讲义讲义刘恒刘恒B.优化设计的过程3确认分析文件3确认优化变量4进行优化查看结果这一步包括:A. 指定运行控制B. 选择优化方法C. 保存优化数据库D. 启动优化过程优化分析优化分析ANSYS讲义讲义刘恒刘恒B.优化设计的过程进行优化A.运行控制包括:指定优化数据库文件名 (OPDATA).缺省: jobname.opt。控制如何读取分析文件 (OPLOOP).缺省: 自第一行读入, 不管设计变量( DV)参数定义。打印输出控制 (OPPRNT)。缺省: 不打印输出。保存最佳设计选择 (OPKEEP)。缺省: OFF。优化分析优化分析AN
43、SYS讲义讲义刘恒刘恒B.优化设计的过程进行优化大多数控制选最左边的缺省值,除保存最佳设计选择也许是例外.此选择保存最佳设计发生日期:模型的几何参数, 网格, 载荷等, 保存于 jobname.bdb文件中。优化结果保存于 jobname.brst文件中。优化分析优化分析ANSYS讲义讲义刘恒刘恒B.优化设计的过程进行优化Design Opt Controls.优化分析优化分析ANSYS讲义讲义刘恒刘恒B.优化设计的过程进行优化保存最佳设计选择注意事项数据库用 SAVE操作保存到 jobname.bdb文件中。结果文件简单地将 jobname.rst文件复制到 jobname.brst(或 .
44、rth到 .brth,.rmg到 .brmg,.rfl到 .brfl)文件中。如果进行多项分析, 如先热后应力, 只复制最后的结果文件。如果想要拷贝其他结果文件,可考虑用 /ASSIGN函数 (Utility Menu File ANSYS File Options.)。优化分析优化分析ANSYS讲义讲义刘恒刘恒B.优化设计的过程进行优化B.优化方法ANSYS有两种优化方法:零阶方法一阶方法大多数应用推荐用零阶方法,因为方法通用和速度较快.选用一阶方法的细节将在以后叙述.优化分析优化分析ANSYS讲义讲义刘恒刘恒B.优化设计的过程进行优化用OPTYPE和OPSUBP命令。或Design Opt
45、 Method/Tool选择一种方法后,将引出进行附加选择的第二个对话框。这些选项(详见后述)是最左边的缺省值。优化分析优化分析ANSYS讲义讲义刘恒刘恒B.优化设计的过程进行优化C.保存优化结果数据库优化程序用其自身的数据库工作, 库中有如下内容:DV,SV,和 目标函数。分析文件名, 优化方法和控制, 迭代次数和完成日期等。每个设计参数值产生日期。每次迭代后, ANSYS自动将这些信息保存到由运行控制对话框中指定的优化数据库文件中 (缺省在 jobname.opt文件中)。优化分析优化分析ANSYS讲义讲义刘恒刘恒B.优化设计的过程进行优化可在任何时候用下述方法检查优化数据库的状态:Des
46、ign Opt -Opt Database- Status或用STATUS命令优化分析优化分析ANSYS讲义讲义刘恒刘恒B.优化设计的过程进行优化进行优化之前,保存优化数据库,这可使你在必要时,方便地从此处恢复原有数据。用OPSAVE命令。或Design Opt -Opt Database- Save.选择一个非缺省的文件名(因为缺省文件每次迭代后都会更新)。例如:jobname.opt0。优化分析优化分析ANSYS讲义讲义刘恒刘恒B.优化设计的过程进行优化D.启动优化过程用OPEXE命令。或Design Opt Run核对设定,然后按OK钮开始优化。优化分析优化分析ANSYS讲义讲义刘恒刘恒
47、B.优化设计的过程进行优化优化程序每次将以新的DV值对分析文件进行多次循环,直到设计收敛或达到迭代次数。优化分析优化分析ANSYS讲义讲义刘恒刘恒B.优化设计的过程进行优化什么是收敛?一个设计在可行域已逼近可能的优化解 和 如果满足以下四条件之一 :1. 当前设计与最佳可行设计目标函数的差小于允差。|OBJcurrent-OBJbest|TOLERobj2. 当前设计与前一设计目标函数的差小于允差。|OBJcurrent-OBJcurrent-1|TOLERobj优化分析优化分析ANSYS讲义讲义刘恒刘恒B.优化设计的过程进行优化3. 对每一个 DV,当前设计与最佳可行设计之差小于允差。|DV
48、current-DVbest|TOLERdv(对所有的 DV)4. 对每一个 DV,当前设计与前一设计之差小于允差。|DVcurrent-DVcurrent-1| -Opt Database- Resume其优化数据库文件名是在运行控制对话框中指定的 (缺省为 jobname.OPT)。优化分析优化分析ANSYS讲义讲义刘恒刘恒B.优化设计的过程查看结果列出设计参数集合允许查看要求的设计参数值或范围。可以选择只列出优化参数或列出全部参数。用OPLIST命令。或Design Opt -Design Sets- List优化分析优化分析ANSYS讲义讲义刘恒刘恒B.优化设计的过程查看结果注意,列出
49、的清单表明了一个设计是在可行域或不可行域,以及如在不可行域的理由。以转盘为例:初始设计在不可行域,因为SMAX超出范围两个可行设计也就是最优设计。优化分析优化分析ANSYS讲义讲义刘恒刘恒B.优化设计的过程查看结果优化分析优化分析ANSYS讲义讲义刘恒刘恒B.优化设计的过程查看结果创建图形用PLVAROPT命令。或Design Opt Graphs/Tables可用优化变量对参数集号(缺省),或对其他优化变量作图。优化分析优化分析ANSYS讲义讲义刘恒刘恒B.优化设计的过程查看结果这是目标函数SDEV对参数集号所作的图形PLVAROPT,SDEV优化分析优化分析ANSYS讲义讲义刘恒刘恒B.优
50、化设计的过程查看结果状态变量FREQ1对参数集号的图PLVAROPT,FREQ1优化分析优化分析ANSYS讲义讲义刘恒刘恒B.优化设计的过程查看结果SMAX(最大冯密塞斯应力)对参数集号图PLVAROPT,SMAX优化分析优化分析ANSYS讲义讲义刘恒刘恒B.优化设计的过程查看结果图形显示许多图形控制功能可以改变图形在屏幕上的显示方式:轴线控制: 改变轴线标注,轴线分割数, 数值范围等。曲线控制: 曲线宽度, 曲线下的面积是否填满等。栅格控制: 栅格on/off;只有X-栅格, 只有Y-栅格, 或两者都有等。Utility Menu PlotCtrls Style Graphs优化分析优化分析
51、ANSYS讲义讲义刘恒刘恒B.优化设计的过程查看结果以下示例, 将改变原有的图形:设定 Y-axis标注为 SMAXX-轴改为 8 等份 (9 个数据集, 因此 8 等份)增加曲线宽度优化分析优化分析ANSYS讲义讲义刘恒刘恒B.优化设计的过程查看结果Utility Menu PlotCtrls Style Graphs Modify Axes.Utility Menu PlotCtrls Style Graphs Modify Curve.B.优化设计的过程查看结果优化分析优化分析ANSYS讲义讲义刘恒刘恒B.优化设计的过程查看结果存贮优化设计几何模型和优化结果要存储结果, 只要退出优化程序
52、并恢复文件 jobname.bdb(最优db)。Main Menu FinishUtility Menu File Resume from Utility Menu Plot Elements或发出命令:FINISHRESUME,jobname,bdbEPLOT优化分析优化分析ANSYS讲义讲义刘恒刘恒B.优化设计的过程查看结果 在 jobname.brst文件中有结果:输入 POST1并 指定 jobname.brst作为结果文件 (用 FILE命令或 Main Menu General Postproc Data & File Opts.).然后用标准的 POST1函数来查看结果。注意:
53、如在优化控制对话框中激活save-best-design选项,则只输出 .bdb和 .brst文件。优化分析优化分析ANSYS讲义讲义刘恒刘恒B.优化设计的过程查看结果优化分析优化分析ANSYS讲义讲义刘恒刘恒B.优化设计的过程查看结果优化分析优化分析ANSYS讲义讲义刘恒刘恒B.优化设计的过程查看结果3Identifytheanalysisfile(确认分析文件)3Identifyoptimizationvariables(确认优化变量)3Runtheoptimization(进行优化)3Reviewresults(查看结果)以下将简短讨论,必要时,如何用优化数据库继续( -重启动) 此优化
54、过程。优化分析优化分析ANSYS讲义讲义刘恒刘恒B.优化设计的过程查看结果一次重启动是对先前的优化过程的一次继续执行。其目的通常是下述理由之一或两者兼而有之 :改变允差 和/或 DV 限制 进一步进行优化从不同的设计集开始,强制由不同的 “路径” 重启动优化过程DVOBJ当前优化解可能的新优化解OBJ当前优化解可能的新优化解优化分析优化分析ANSYS讲义讲义刘恒刘恒C.重启动一次典型的重启动包括四个步骤:1. 首先保存当前优化数据库为一个命名文件2. 如果需要,选择一个设计集的子集3. 修改优化变量 (允差和限定值)4. 进行优化优化分析优化分析ANSYS讲义讲义刘恒刘恒C.重启动1.保存当前
55、优化数据库允许用户在以后需要时重存。Design Opt -Opt Database- Save (或OPSAVE命令)注意,要指定为非缺省文件名优化分析优化分析ANSYS讲义讲义刘恒刘恒C.重启动2.选择一个设计集的子集Design Opt -Design Sets- Select/Delete (或OPSEL和OPDELE)允许用户保留一个要求的设计集(如所有可行设计)并丢弃其余的。小心:选择了一个子集,实际上已从数据库中清除了未选的设计集。(这就是为什么第一步要保存优化数据库!)优化分析优化分析ANSYS讲义讲义刘恒刘恒C.重启动在转盘例子中,选择所有的可行集,丢弃七个设计集而保留两个。
56、用List函数列出所有当前选择设计集。Design Opt -Design Sets- List All Sets注意,原先的集号保留。就是说,删除的集号是不重用的。优化分析优化分析ANSYS讲义讲义刘恒刘恒C.重启动3. 修改优化参数可以修改允差, 改变范围, 甚至删除一个 DV或 SV在重启动修改允差对 DV和 OBJ,允许用户改变收敛准则。 例如, 收紧 OBJ允差可能 会“强制” 收敛于 DV允差。对 SV,允许用户增加或减少 可行域的门槛值。优化分析优化分析ANSYS讲义讲义刘恒刘恒C.重启动在转盘例子中,我们将收紧OBJ允差(SDEV)到0.5。Design Opt Objecti
57、ve Modify优化分析优化分析ANSYS讲义讲义刘恒刘恒C.重启动改变限制值允许用户收紧或放松设计区域。Design Opt Design Variables EditDesign Opt State Variables Edit在转盘的例子中, 我们将改变 DV的限制如下:THETARIM:45-90XMID:2.0-3.0in优化分析优化分析ANSYS讲义讲义刘恒刘恒C.重启动优化分析优化分析ANSYS讲义讲义刘恒刘恒C.重启动4.进行优化首先保存新集数据到一个命名文件中:Design Opt -Opt Database- Save优化分析优化分析ANSYS讲义讲义刘恒刘恒C.重启动然
58、后初始化优化过程.。重新进行优化,大多数收敛于一个不同的设计。同样,这取决于用户(工程师),如何确认优化设计的有效性。Design Opt Run优化分析优化分析ANSYS讲义讲义刘恒刘恒C.重启动转盘例中,取12次迭代,因DV允差而收敛的结果。最优设计是参数集21。优化分析优化分析ANSYS讲义讲义刘恒刘恒C.重启动与原先的优化设计相比(参数集9,因为新的DV限制,现在是不可性设计),新的优化设计(参数集21)OBJ更低。优化分析优化分析ANSYS讲义讲义刘恒刘恒C.重启动优化分析优化分析ANSYS讲义讲义刘恒刘恒C.重启动第第 四四 章章搜索设计域搜索设计域优化分析优化分析ANSYS讲义讲
59、义刘恒刘恒搜寻设计域的意思很简单,就是对各种设计进行尝试。一旦建立了一个参数化模型和一个分析文件,搜寻设计域就变得简单易行。分析文件分析文件搜寻设计域搜寻设计域进行优化设计进行优化设计初始设计初始设计参数化建模和加载参数化建模和加载求解求解参数化结果参数化结果优化分析优化分析ANSYS讲义讲义刘恒刘恒搜索设计域ANSYS优化程序提供了多种 工具 以探测设计领域。单步循环法单步循环法随机法随机法扫描法扫描法梯度法梯度法乘子法乘子法优化分析优化分析ANSYS讲义讲义刘恒刘恒搜索设计域单步循环对整个分析文件执行一次循环。对what-if脚本非常有用,如:“假如(Whatif)消除此构架桥对角线元件(
60、设定其横截面积为一个很小值)将会怎样?”H1H2在一次优化运行后,若要恢复(从新产生)一个要求的设计也可用此单步循环法。A1A1A2A3优化分析优化分析ANSYS讲义讲义刘恒刘恒搜索设计域随机工具通过给定设计变量的随机值产生随机设计。对于只有几个“良好”设计的情况,要启动一个子序列设计优化过程,随机工具是很有用的。优化分析优化分析ANSYS讲义讲义刘恒刘恒搜索设计域扫描工具对每个DV,在整个设计变量域中扫描。对全局敏感性研究很有用 - 在某一DV值的整个范围内对给定设计有什么影响。DV2DV1优化分析优化分析ANSYS讲义讲义刘恒刘恒搜索设计域梯度工具对每个DV改变一小量,在相邻领域内,产生参
61、考设计的一些设计方案。对局部敏感性研究中很有用 - 了解DV的小小扰动,如何影响给定的设计。你可查对OBJ和 SV的斜率,察看每个DV对参考设计的影响。OBJDV优化分析优化分析ANSYS讲义讲义刘恒刘恒搜索设计域乘子工具一个表明设计域所有极点或“角落”示例的统计工具,即每个 DV最小或最大值时的结果。不仅对理解每个DV对设计的影响很有帮助,而且对理解两变量和三变量交互的影响也很有用。用于试验设计 (因为乘子法广泛用于试验结果的解释)。优化分析优化分析ANSYS讲义讲义刘恒刘恒搜索设计域一旦建立了分析文件, 所有优化工具都用如下同样的步骤 :1. 建立初始设计2. 进入优化程序并确认分析文件3
62、. 确认优化变量4. 执行优化工具5. 查看结果优化分析优化分析ANSYS讲义讲义刘恒刘恒搜索设计域过程为了说明执行步骤,用一个半对称构架桥模型的例子。目标是评价总体积,满足:最大纵向变形1.0in最大元件应力 File Read Input from或/INPUT命令:/input,trussbr,inp优化分析优化分析ANSYS讲义讲义刘恒刘恒搜索设计域过程步骤2.进入优化程序并确认分析文件本步很简单:告知优化程序分析文件的名称。用:Main Menu Design Opt -Analysis File- Assign或OPANL命令:/optopanl,trussbr,inp优化分析优化
63、分析ANSYS讲义讲义刘恒刘恒搜索设计域过程步骤3.确认优化变量本步定义合适的参数为DV,SV,和OBJ。用:设计优化菜单(如右).或OPVAR命令:opvar,a1,dv,1,10opvar,uymax,sv,-1.0opvar,totvol,objetc.优化分析优化分析ANSYS讲义讲义刘恒刘恒搜索设计域过程步骤 4. 运行优化工具步骤 5. 查看结果将分别描述应用每一工具时的这些步骤 ,因为对每种工具这些步骤都是相同的。 优化分析优化分析ANSYS讲义讲义刘恒刘恒搜索设计域过程3第1步. 建立初始设计3第2步. 进入优化程序并确认分析文件3第3步. 确认优化变量第4步. 选用优化工具本
64、步包括:选择单步循环工具指定要求的 DV值初始化运行优化分析优化分析ANSYS讲义讲义刘恒刘恒搜索设计域过程:单步循环工具选择单步循环工具Design Opt Method/Tool选择单步运行或用OPTYPE命令:optype,run优化分析优化分析ANSYS讲义讲义刘恒刘恒搜索设计域过程:单步循环工具确认要求的DV值用Name=Value(参数名=值)的格式,在输入窗或标量参数对话框中输入(Utility Menu Parameters Scalar Parameters.).这些值可假定表示为一种你想要解释的what-if(假如)脚本。a1=10a2=8a3=0.01(verysmall
65、value)h1=300h2=400例如,例如, 假如取消构架桥的对假如取消构架桥的对角线元件,将会怎样角线元件,将会怎样?优化分析优化分析ANSYS讲义讲义刘恒刘恒搜索设计域过程:单步循环工具初始化Design Opt Run或用OPEXE命令:opexe这就创建了一个新的设计集,和新的状态变量和目标函数值。优化分析优化分析ANSYS讲义讲义刘恒刘恒搜索设计域过程:单步循环工具优化分析优化分析ANSYS讲义讲义刘恒刘恒搜索设计域过程:单步循环工具步骤 5. 查看结果一种简单的办法就是列出设计集并检查状态变量和目标函数值: Design Opt -Design Sets- List或用 OPL
66、IST命令:oplist优化分析优化分析ANSYS讲义讲义刘恒刘恒搜索设计域过程:单步循环工具对构架桥的例子,OPLIST给出的该设计(第二设计集)因中间元件(SCMID)的高压应力和左边元件(STLEFT)的高拉应力而落入不可行域。优化分析优化分析ANSYS讲义讲义刘恒刘恒搜索设计域过程:单步循环工具查看结果的另一种方法是用POST1(通用后处理):变形形状应力云图等等。优化分析优化分析ANSYS讲义讲义刘恒刘恒搜索设计域过程:单步循环工具ANSYS允许执行任意步的单步循环。每一设计就是给出了一个新的集号,而所有的设计集存于优化数据库中 (缺省为jobname.opt)。可用 OPSEL或
67、Design Opt -Design Sets- Select/Delete命令来只保留可行设计 。单步循环的一种可能的应用是执行若干个单步循环并用这些设计集作为设计优化的初始点。或可用随机工具( Randomtool)来产生多个随机设计. 优化分析优化分析ANSYS讲义讲义刘恒刘恒搜索设计域过程:单步循环工具用给DV赋随机值的方法产生多个设计过程如下:3步骤 1. 建立初始设计3步骤2. 进入优化程序并确认分析文件3步骤3. 确认优化变量步骤 4. 运行优化工具步骤 5. 查看结果优化分析优化分析ANSYS讲义讲义刘恒刘恒搜索设计域过程:随机工具步骤 4. 运行优化工具本步包括:指定运行控制
68、选择随机工具保存优化数据库初始化运行优化分析优化分析ANSYS讲义讲义刘恒刘恒搜索设计域过程:随机工具运行控制给定优化数据库文件名(OPDATA命令),缺省为:jobname.opt。如何读取分析文件(OPLOOP)。缺省为从头读起,并忽略DV参数的定义。打印控制(OPPRNT)。缺省为删除细节。保存最优设计选项(OPKEEP)。允许一旦产生,就保留最优设计。缺省为OFF(不保留)。用上述命令或Design Opt Controls优化分析优化分析ANSYS讲义讲义刘恒刘恒搜索设计域过程:随机工具选择随机工具要求两项信息:要产生的随机设计数 (NITR)。可停机的可行设计数 (NFEAS)。这
69、对完成设计优化之前产生一定量的可行设计是很有用的。 缺省为执行全部 NITR次迭代。用 OPTYPE和 OPRAND命令:optype,randomoprand,nitr,nfeas优化分析优化分析ANSYS讲义讲义刘恒刘恒搜索设计域过程:随机工具或Design Opt Method/Tool.优化分析优化分析ANSYS讲义讲义刘恒刘恒搜索设计域过程:随机工具保存优化数据库允许在必要时恢复优化数据库的当前状态。指定一个不同于jobname.opt的文件名,因为缺省文件名每次迭代都会被更新。Design Opt -Opt Database- Save或OPSAVE命令:opsave,trussb
70、r,opt0优化分析优化分析ANSYS讲义讲义刘恒刘恒搜索设计域过程:随机工具初始化运行Design Opt Run或用OPEXE命令:opexe产生了最多NITR 个设计。NITR是OPRAND命令要求的设计随机数。优化分析优化分析ANSYS讲义讲义刘恒刘恒搜索设计域过程:随机工具步骤5.查看结果典型的方法是列出随机设计集:Design Opt -Design Sets- List或用OPLIST命令:oplist优化分析优化分析ANSYS讲义讲义刘恒刘恒搜索设计域过程:随机工具随机工具作为一个设计优化过程的先行步骤是很有用的:可以产生随机设计,只选择其中的可行解, 将其作为优化过程的起点。
71、下一步,我们来看看如何应用扫描工具。优化分析优化分析ANSYS讲义讲义刘恒刘恒搜索设计域过程:随机工具扫描工具用于指定设计,和保持其他常数不变,对每个DV在整个范围内的增量的一个参考点。给出一个设计变量全局敏感性定量影响的概念。其过程如下:3步骤步骤 1. 1. 建立初始设计建立初始设计3步骤步骤 2. 2. 进入优化程序并确认分析文件进入优化程序并确认分析文件3步骤步骤 3. 3. 确认优化变量确认优化变量步骤 4. 运行优化工具步骤 5. 查看结果优化分析优化分析ANSYS讲义讲义刘恒刘恒搜索设计域过程:随机工具步骤 4. 运行优化工具本步包括:指定运行控制选择扫描工具保存优化数据库初始化
72、运行优化分析优化分析ANSYS讲义讲义刘恒刘恒搜索设计域过程:随机工具运行控制给定优化数据库文件名 (OPDATA命令),缺省为 jobname.opt。如何读取数据库文件 (OPLOOP),缺省为从头读起,并且忽略 DV参数的定义。打印输出控制 (OPPRNT),缺省为删除细节。保存最优设计选项 (OPKEEP)。允许一旦产生,就保留最优设计。 缺省为 OFF(不保留)。 用上述命令或 Design Opt Controls优化分析优化分析ANSYS讲义讲义刘恒刘恒搜索设计域过程:扫描工具选择扫描工具要求两项信息:参考设计集数 DSET。当对每个 DV扫描时, 其他的 DV保持由DSET指定
73、的值。如果只有一个设计 (如初始设计), 则该设计被用作参考点。每个DV的扫描点数 (NSPS)。如 NSPS=2则每个DV产生两个设计,在最小和最大值处。优化分析优化分析ANSYS讲义讲义刘恒刘恒搜索设计域过程:扫描工具用Design Opt Method/Tool.或OPTYPE和OPSWEEP命令:optype,sweepopsweep,dset,nsps优化分析优化分析ANSYS讲义讲义刘恒刘恒搜索设计域过程:扫描工具保存优化数据库用 OPSAVE命令 或 Design Opt -Opt Database- Save初始化运行用 OPEXE或 Design Opt Run建立 NSPS
74、*N个设计, 这里 NSPS是每个设计变量的扫描点数 ,N是设计变量数。优化分析优化分析ANSYS讲义讲义刘恒刘恒搜索设计域过程:扫描工具步骤 5. 查看结果由扫描工具所得的结果可知,每个 DV如何影响设计 -全局敏感性例如,如果A3(对角线元件的面积)由 MIN增加到 MAX ,UYMAX(纵向变形)将如何变化?要查看结果,可用图形和列表方式。优化分析优化分析ANSYS讲义讲义刘恒刘恒搜索设计域过程:扫描工具图形方式:Design Opt Tool Results -Graph- Sweeps.或OPLSW命令:oplsw,uymax,a1,a2,a3优化分析优化分析ANSYS讲义讲义刘恒刘
75、恒搜索设计域过程:扫描工具列表方式:Design Opt Tool Results Print.或OPRSW命令:oprsw,all打印一个规格化的响应变量值对规格化的DV值的关系。优化分析优化分析ANSYS讲义讲义刘恒刘恒搜索设计域过程:扫描工具梯度工具用一个指定设计为参考点,并且稍稍改变每个DV,以决定局部敏感性。测试优化设计对DV微小变化的敏感性,对下续的设计优化是很有用的。过程如下:3步骤 1. 建立初始设计3步骤 2. 进入优化程序,并确认分析文件3步骤 3. 确认优化变量步骤 4. 运行优化工具步骤 5. 查看结果优化分析优化分析ANSYS讲义讲义刘恒刘恒搜索设计域过程:梯度工具步
76、骤 4. 运行优化工具本步包括:指定运行控制选择梯度工具保存优化数据库初始化运行优化分析优化分析ANSYS讲义讲义刘恒刘恒搜索设计域过程:梯度工具运行控制给定优化数据库文件名 (OPDATA命令),缺省为: jobname.opt。如何读取分析文件 (OPLOOP)。缺省为从头读起,并忽略 DV参数的定义。打印输出控制 (OPPRNT),缺省为删除细节。保存最优设计选项 (OPKEEP)。允许一旦产生,就保留最优设计。 缺省为 OFF(不保留)。 用上述命令,或 Design Opt Controls优化分析优化分析ANSYS讲义讲义刘恒刘恒搜索设计域过程:梯度工具选择梯度工具要求两项信息:参
77、考设计集数 DSET。本设计集中的DV 值对梯度的测量有一点点的影响。如果只有一个设计 (如初始设计), 则该设计被用作参考点。变化量 DELTA,指定为差额的百分数。 每个 DV的改变量为 DELTA*(MAX-MIN)/100DELTAdefaultsto0.5.优化分析优化分析ANSYS讲义讲义刘恒刘恒搜索设计域过程:梯度工具用Design Opt Method/Tool.或OPTYPE和OPGRAD命令:optype,sweepopgrad,dset,delta优化分析优化分析ANSYS讲义讲义刘恒刘恒搜索设计域过程:梯度工具保存数据库用 OPSAVE或 Design Opt -Opt
78、 Database- Save初始化运行用 OPEXE或 Design Opt Run创建 N个设计, 这里 N设计变量数。优化分析优化分析ANSYS讲义讲义刘恒刘恒搜索设计域过程:梯度工具步骤 5. 查看结果由梯度工具的结果可知, DV的一个微小改变如何影响设计-亦即局部敏感性。例如, 如果中跨高度H2波动1% ,UYMAX如是中间跨将如何改变?为此,可用图形或列表方式查看。 两个输出均基于DV的 1% 改变。优化分析优化分析ANSYS讲义讲义刘恒刘恒搜索设计域过程:梯度工具图形方式Design Opt Tool Results -Graph- Gradient.或OPLGR命令:oplsw
79、,uymax,a1,a2,a3优化分析优化分析ANSYS讲义讲义刘恒刘恒搜索设计域过程:梯度工具列表方式:Design Opt Tool Results Print.或OPRSW命令:oprgr,all优化分析优化分析ANSYS讲义讲义刘恒刘恒搜索设计域过程:梯度工具本工具给出设计域的极端值实例-所有DV的最小和最大值。有完全乘子和分数乘子法可用。完全乘子产生2n个设计,这里n是DV数。分数乘子产生乘子*2n个设计,这里乘子可以是1/2,1/4,1/8,1/16,1/32,或1/64.AminBminAminBmaxAmaxBminAmaxBmax例如,现有两个设计变量例如,现有两个设计变量
80、A 和和 B,完全的乘子法会产生四组设计。完全的乘子法会产生四组设计。优化分析优化分析ANSYS讲义讲义刘恒刘恒搜索设计域过程:乘子工具其过程如下:3步骤 1. 建立初始设计3步骤 2. 进入优化程序并确认分析文件3步骤 3. 确认优化变量步骤 4. 运行优化工具步骤 5. 查看结果优化分析优化分析ANSYS讲义讲义刘恒刘恒搜索设计域过程:乘子工具步骤 4. 运行优化工具本步包括:指定运行控制选择乘子工具保存优化数据库初始化运行优化分析优化分析ANSYS讲义讲义刘恒刘恒搜索设计域过程:乘子工具运行控制给定优化数据库文件名 (OPDATA命令),缺省为 jobname.opt。如何读取数据库文件
81、 (OPLOOP),缺省为从头读起,并且忽略 DV参数的定义。打印输出控制 (OPPRNT),缺省为删除细节。保存最优设计选项 (OPKEEP)。允许一旦产生,就保留最优设计。 缺省为 OFF(不保留)。用上述命令或 Design Opt Controls优化分析优化分析ANSYS讲义讲义刘恒刘恒搜索设计域过程:乘子工具选择乘子工具指定完全或分数乘子:full,1/2,1/4等等。用Design Opt Method/Tool.或OPTYPE和OPFACT命令:optype,factopfact,type优化分析优化分析ANSYS讲义讲义刘恒刘恒搜索设计域过程:乘子工具保存优化数据库用 OPS
82、AVE或 Design Opt -Opt Database- Save初始化运行用 OPEXE或 Design Opt Run优化分析优化分析ANSYS讲义讲义刘恒刘恒搜索设计域过程:乘子工具步骤 5. 查看结果由乘子工具结果,可以看到: 主影响,即每个DV对设计的全面影响。两变量交叉的影响, 即一个DV对设计的影响,与另一个DV值的关系如何。三变量交叉的影响。可用直方图或列表方式来查看。优化分析优化分析ANSYS讲义讲义刘恒刘恒搜索设计域过程:乘子工具直方图:Design Opt Tool Results -Graph- Factorial.或OPLFA命令:oplfa,name,effec
83、t优化分析优化分析ANSYS讲义讲义刘恒刘恒搜索设计域过程:乘子工具此直方图表明了SCLEFT的主影响(构架桥左区的最大压应力)。A1和H1(1号和4号DV)的影响最大,而H2(5号DV)事实上对SCLEFT没有影响。优化分析优化分析ANSYS讲义讲义刘恒刘恒搜索设计域过程:乘子工具2-因素DV交互作用对SCLEFT的影响:优化分析优化分析ANSYS讲义讲义刘恒刘恒搜索设计域过程:乘子工具列表方式:Design Opt Tool Results Print.或OPRFA命令:oprfa,all优化分析优化分析ANSYS讲义讲义刘恒刘恒搜索设计域过程:乘子工具第五章第五章设计优化(设计优化(II
84、 II)优化分析优化分析ANSYS讲义讲义刘恒刘恒本章将学习更多的优化设计知识。 内容涵盖:A.使用两种设计优化的方法以及他们是如何工作的B.如何选择设计变量,状态变量和目标函数的指导C.做 1-2 个练习优化分析优化分析ANSYS讲义讲义刘恒刘恒优化设计(II)ANSYS提供了两中种优化设计方法(或称算法):零阶(Subproblem)近似方法一阶方法第三种方法,用户优化,允许加入自己的优化算法。 详见ANSYSGuide to User Programmable Features优化分析优化分析ANSYS讲义讲义刘恒刘恒A.设计优化方法零阶近似法零阶方法只要求因变量(SV和 OBJ)值,而
85、不用他们的导数。用因变量的近似值工作,而不用实际函数。目标函数近似为最小值,而不是实际的目标函数。状态变量近似为使用设计约束,而不用实际状态变量。优化分析优化分析ANSYS讲义讲义刘恒刘恒A.设计优化方法至少要适应所用的全部现有的设计集,以形成近似式:H =目标函数或状态变量的近似值Xn=设计变量na, b, c=系数N=设计变量总数优化分析优化分析ANSYS讲义讲义刘恒刘恒A.设计优化方法可用OPEQN(或DesignOptMethod/ToolSub-problem)控制近似式的形成:二次项+交叉项(缺省为OBJ)仅有二次项(缺省为SV)线形项线形项线形项 二次项二次项 二次项二次项 +
86、交叉项交叉项 优化分析优化分析ANSYS讲义讲义刘恒刘恒A.设计优化方法开始时, 需要几个设计集,以形成近似式。ANSYS产生随机设计 (缺省为7个) ,或用优化数据库中的现成设计可提供已知的“好的”设计来改进近似精度。提示: 由随机法或单步循环法 (或任何其他方法)开始,以产生一些设计方案,然后只保留可行域内的或最好的n个设计。优化分析优化分析ANSYS讲义讲义刘恒刘恒A.设计优化方法对大多数应用推荐用零阶近似法,这是因为:采用通用方法。迅速获得优化结果。优化分析优化分析ANSYS讲义讲义刘恒刘恒A.设计优化方法一阶方法用因变量的导数 - OBJ和 SV-来决定搜索方向并获得优化结果。没有近
87、似,所以这种方法更精确。每次迭代涉及多次分析 (对分析文件的多次循环),以确定适当的搜索方向。优化分析优化分析ANSYS讲义讲义刘恒刘恒A.设计优化方法要选择一阶方法:Design Opt Method/Tool.或用OPTYPE和OPFRST:optype,firstopfrst,nitr,size,deltaSIZE 和 DELTA 用缺省值,通常已足够。优化分析优化分析ANSYS讲义讲义刘恒刘恒A.设计优化方法如这两个条件均能满足,就说是已收敛了:改变目标函数,使当前设计和最优可行设计的目标函数之间的差值 小于允差。|OBJcurrent-OBJbest|TOLERobj和改变目标函数,
88、使当前设计和前一设计的目标函数之间的差值小于允差。|OBJcurrent-OBJcurrent-1|TOLERobj优化分析优化分析ANSYS讲义讲义刘恒刘恒A.设计优化方法关于收敛还有一个要求就是,最后迭代必须用最陡下降搜索,否则,还要执行额外的迭代。优化分析优化分析ANSYS讲义讲义刘恒刘恒A.设计优化方法什么时候要用一阶方法?当精度很重要时。当零阶方法不够精确时。当速度很重要时,不推荐用一阶方法。优化分析优化分析ANSYS讲义讲义刘恒刘恒A.设计优化方法将有:总的指导关于 DV的指导关于 SV的指导关于 OBJ的指导优化分析优化分析ANSYS讲义讲义刘恒刘恒B.指导无论什么时候,只要可能
89、,就应利用对称性。记住:优化程序执行多次分析,所以模型规模愈小愈好。优化分析优化分析ANSYS讲义讲义刘恒刘恒B.指导如果不是分析必须,要避免指定密度。这将节省计算质量矩阵所需的时间。确认参数化模型对DV的所有可能值都要有效。 对每个DV,最好扫描两次(最小和最大值)。每次运行后,以一 “安全”文件名保存优化数据库。保留此数据库将给你未来设计提供一个很大的数组,这是你不久可能要用的。优化分析优化分析ANSYS讲义讲义刘恒刘恒B.指导有时优化问题可能收敛于一个局部最小值。可以进行检查,而先用扫描工具(或其它工具)有可能获得全局最优。选择合适的初始设计。OBJDV局部最小局部最小全局最小全局最小优
90、化分析优化分析ANSYS讲义讲义刘恒刘恒B.指导关于设计变量的指导设计变量数要少:推荐不超过20个;最好小于10个。一种删除一些DV的方法是,将其表示为其他参数的函数。例如,删除R3可将其表示为R1和T1的函数。R4也同样。R1R2R4R3T1T2优化分析优化分析ANSYS讲义讲义刘恒刘恒B.指导选择DV,允许几种设计结构,但要排除不现实的和不要求的设计。考虑,例如,悬臂梁的重量优化。一个DV,x1,也能工作,但是,这就不能是带锥度的或曲线的设计。x1优化分析优化分析ANSYS讲义讲义刘恒刘恒B.指导选择4个DV,x1-x4,就更灵活但是,也允许局部最小值(除非其他约束)。x1x2x3x4x1
91、x2x3x4优化分析优化分析ANSYS讲义讲义刘恒刘恒B.指导一个较好的办法是选择高度增量作为DV:x1dx2dx3dx4优化分析优化分析ANSYS讲义讲义刘恒刘恒B.指导指定离散的 DV,如肋数或孔数,建模时用 NINT函数(最接近的整数)。例如,如果 NRIBS表示肋数,用 NINT(NRIBS)一根一根去复制肋,则将 NRIBS说明为 DV,并带有适当的限定值。优化分析优化分析ANSYS讲义讲义刘恒刘恒B.指导或者,也可用 if-then-else结构。 例如,如果壳厚 thk是一个 DV,只允许三种可能的壳厚 et,1,63!壳单元类型*if,thk,lt,2.5/16,thenthk
92、=1/8!如thk3.5/16用1/4*elsethk=3/16!否则用3/16*endifr,1,thk!定义壳厚优化分析优化分析ANSYS讲义讲义刘恒刘恒B.指导关于状态变量的指导肯定要用正确的数据,例如:如果一阶自震频率最小是一个状态变量,要肯定得到非零的一阶频率。 一阶频率可能是一个刚体模式。如果结构变形是 Y方向, 且最大 Y变形是一个状态变量, 要清楚是要得到绝对值最大,还是实际值最小。优化分析优化分析ANSYS讲义讲义刘恒刘恒B.指导典型的状态变量,如最大应力 (或变形或温度或 .) 每次循环可能发生在不同的位置。在这种情况下,对整个结构,不要只选择一个最大(或最小)值 ,这样做
93、,可能会得到较差的近似结果。另一方面,每一单元选择一个最大值,可能会得到一个局部最小值。优化分析优化分析ANSYS讲义讲义刘恒刘恒B.指导H2一种折中的办法是选择几个关键区域,用这些区域中的最大应力作为状态变量。例如,用下面的构架桥的每一“分跨”的最大应力,要比只用整个结构的一个最大应力的结果要好。H1A1A2A3SMX1SMX2SMX3SMX4优化分析优化分析ANSYS讲义讲义刘恒刘恒B.指导避免状态变量两端边界的限制太严。例如,一个状态变量限定 500 到 1000 比 990 到 1000好。如果存在奇异,如一点载荷或一凹角(re-entrantcorner),则最大应力总是在此位置处。
94、可考虑在得到最大应力之前,不选(unselect)此区。优化分析优化分析ANSYS讲义讲义刘恒刘恒B.指导可用等价约束,如一阶自震频率 = 256 Hz,用加括号技术: 定义 freqA为 SV带 上限 257 Hz定义 freqB为 SV带 下限 255 Hz用freqA和 freqB两者表示一阶自震频率, 而其限制值括起要求的值。在这种情况下,可能会增加连续的不可行设计数,因为频率值 257 将使设计不可行。优化分析优化分析ANSYS讲义讲义刘恒刘恒B.指导如果有太多的不可行设计,多半是因为状态变量的近似值不适当地表现实际的 SV函数。加入交叉项到 SV近似值 (OPEQN)可能会解决这个
95、问题。或者,也可以用一阶方法。优化分析优化分析ANSYS讲义讲义刘恒刘恒B.指导关于目标函数的指导记住, ANSYS总是将目标函数最小化。要想最大化,如热流率Q,可指定 1/Q或 CC-Q作为目标函数( 这里 CC是一个大于预期的Q值最大值的常数)。 OBJ应为正。 为此,如有必要可加上一个正常数。优化分析优化分析ANSYS讲义讲义刘恒刘恒B.指导第六章第六章健壮设计健壮设计优化分析优化分析ANSYS讲义讲义刘恒刘恒本章,将介绍优化工具的一次实际应用 - 将健壮设计的概念用于大量生产将包括如下的内容:A.定义健壮设计B.用优化工具获得一个健壮设计C.练习演示 和/或 自己做练习优化分析优化分析
96、ANSYS讲义讲义刘恒刘恒健壮设计什么是健壮设计?一个对噪声参数的改变不敏感的设计,噪声参数如:制造公差材料属性环境条件 - 温度,湿度等等。例如,这样的设计就是健壮的!即如, 铺路材料的设计考虑到卡车过载,次等混凝土,和冬天解冻时的种种情况。优化分析优化分析ANSYS讲义讲义刘恒刘恒A.定义健壮设计的概念对大量生产特别有用,因为这时生产特性变化最小就和得到优化设计一样重要。一项研究表明*,在美国和日本制造的电视机有同样的设计和公差。美国工厂用微小缺陷判据。日本工厂用健壮设计的概念。日本生产的电视机色彩密度更接近设计要求,也更能得到美国消费者的偏爱。*Quality Engineering U
97、sing Robust Design,MadhavS.Phadke,PrenticeHall,1989优化分析优化分析ANSYS讲义讲义刘恒刘恒A.定义ANSYS优化工具 - 梯度,乘子,和扫描法 - 可以有效地应用健壮设计的概念。一种办法是:1. 区分噪声参数和控制参数。2. 创建一个噪声和控制参数的参数化模型。3. 确定哪一个噪声参数对设计影响最大。4. 确定改变哪一个控制参数可以减低噪声参数的影响。优化分析优化分析ANSYS讲义讲义刘恒刘恒B.如何进行1. 确定噪声参数和控制参数噪声参数 是非常随机的,并且不在设计师的控制范围之内的一些因数,即:材料属性制造公差环境,即 温度和湿度随时间
98、而下降的因素控制参数 是设计师可以改变,以减低噪声参数影响的一些因数。优化分析优化分析ANSYS讲义讲义刘恒刘恒B.如何进行2. 创建参数化模型用两个噪声参数和两个控制参数建立参数化模型 。指定噪声参数和控制参数为 DV。记住,DV只能取正值。例如,如果一个尺寸 thk=2.5有制造公差 thktol=0.001,可用 thk+thktol作为厚度尺寸来建模:thk=2.499tol=0.002优化分析优化分析ANSYS讲义讲义刘恒刘恒B.如何进行3. 确定影响最大的噪声参数显然要采用梯度工具,这可表明每个DV的1%改变,对一个给定设计(参考设计)的影响。在这种情况下,参考设计就是当前的可以接
99、受的设计。斜率最陡的曲线表明,该噪声参数对设计影响最大。优化分析优化分析ANSYS讲义讲义刘恒刘恒B.如何进行这里, 一种选择可一定程度地降低关键噪声参数的影响。例如,如果一项公差认为是重要的,则可收紧此项制造公差。但是,根据定义,大多数噪声参数,不在设计师的控制之下。另一种选择就是移到第四步, 去考察这些噪声参数的影响是否可通过控制参数来降低。优化分析优化分析ANSYS讲义讲义刘恒刘恒B.如何进行4. 确定哪个控制参数可以改变为此显然应选择乘子工具可用于确定噪声参数和控制参数间两者和三者之间的交互影响。例如,什么样的 THK值将对 THKTOL影响最小?另一种方法是用扫描工具,对一个给定的噪
100、声参数,扫描全部若干个控制参数值。优化分析优化分析ANSYS讲义讲义刘恒刘恒B.如何进行如你确定了一个控制变量,如 THK的不同的值,真的降低一个噪声参数的影响,你就需要确定,新的设计还要执行要求的标准。这只是关于健壮设计概念和 ANSYS优化工具如何用来解决问题的一个简单介绍。要获得更多的信息,请参看练习附录,题为:通过健壮设计达到世界级质量。优化分析优化分析ANSYS讲义讲义刘恒刘恒B.如何进行1 1、时间:、时间:18-2218-22日;日;2 2、地点:待定。、地点:待定。3 3、分数:笔试占、分数:笔试占60%60%(填空、选择、问答)。(填空、选择、问答)。关于考试优化分析优化分析ANSYS讲义讲义刘恒刘恒谢谢!谢谢!优化分析优化分析ANSYS讲义讲义刘恒刘恒