1 概述 优化设计是一种寻找确定最优设计方案的技术。所谓“最优设计”,指的是一种方案可以满足所有的设计要求,而且所需的支出(如重量,面积,体积,应力,费用等)最小。也就是说,最优设计方案就是一个最有效率的方案。 ANSYS程序提供了两种优化的方法,这两种方法可以处理绝大多数的优化问题。零阶方法是一个很完善的处理方法,可以很有效地处理大多数的工程问题。一阶方法基于目标函数对设计变量的敏感程度,因此更加适合于精确的优化分析。 2 关键词 设计变量:优化结果的取得就是通过改变设计变量的数值来实现的 状态变量:约束设计的数值 目标函数:设计变量的函数,也就是说,改变设计变量的数值将改变目标函数的数值。 设计变量,状态变量和目标函数总称为优化变量。 分析文件:命令流输入文件,包括一个完整的分析过程(前处理,求解,后处理)。它必须包含一个参数化的模型,用参数定义模型并指出设计变量,状态变量和目标函数。 一次循环:指一个分析周期,可以理解为执行一次分析文件。 优化数据库:优化数据库记录当前的优化环境,包括优化变量定义,参数,所有优化设定,和设计序列集合。 3 过程 (1)生成循环所用的分析文件 该文件必须包括整个分析的过程。可以对设计的任何方面进行优化:尺寸,形状,材料性质,支撑位置,所加载荷等,唯一要求就是将其参数化。设计变量可以在程序的任何部分初始化,一般是在PREP7中定义。这些变量的初值只是在设计计算的开始用得到,在优化循环过程中会被改变。 建模求解如下:
第一主应力结果如下: [attach]74140[/attach] 图1 (2)在ANSYS数据库里建立与分析文件中变量相对应的参数 提取结果并赋值给相应的参数。这些参数一般为状态变量和目标函数。提取数据的操作用*GET命令(Utility Menu>Parameters>Get Scalar Data)实现。通常用POST1来完成本步操作,特别是涉及到数据的存储,加减或其他操作。
LGWRITE将数据库内部的命令流写到文件Jobname.LGW中。内部命令流包含了生成当前模型所用的所有命令。 (3)进入OPT,指定分析文件 /OPT opanl,scratch,lgw !指定分析文件 (4)声明优化变量 允许有不超过60个设计变量和不超过100个状态变量,但只能有一个目标函数。对于设计变量和状态变量可以定义最大和最小值。目标函数不需要给定范围。每一个变量都有一个公差值,这个公差值可以由用户输入,也可以选择由程序计算得出,程序计算按照0.01x(max-min)。
(5)选择优化工具或优化方法 优化方法是使单个函数(目标函数)在控制条件下达到最小值的传统化的方法。有两种方法是可用的:零阶方法和一阶方法。 零阶方法(直接法):这是一个完善的零阶方法,使用所有因变量(状态变量和目标函数)的逼近。该方法是通用的方法,可以有效的处理绝大多数的工程问题。 一阶方法(间接法):本方法使用偏导数,即,使用因变量的一阶偏导数。此方法精度很高,尤其是在因变量变化很大,设计空间也相对较大时。但是,消耗的机时较多。 optype,SUBP !设置优化方式,子问题逼近算法,零阶算法 (6)指定优化循环控制方式 每种优化方法和工具都有相应的循环控制参数,比如最大迭代次数等。 OPSUBP,30 !指定迭代次数 (7)进行优化分析 在OPEXE执行时,优化循环文件(Jobname.LOOP)会根据分析文件生成。所有优化变量和其他参数在每次迭代后将存储在优化数据文件(Jobname.OPT)中。 opexe !执行优化 (8)看设计序列结果(OPT)和后处理(POST1/POST26)
部分优化序列如图2: [attach]74141[/attach] 图2 目标变量随迭代的变化如图3: [attach]74142[/attach] 图3 优化后的总位移分布如图4: [attach]74143[/attach] 图4 优化后的应力分布如图5: [attach]74144[/attach] 图5 |
GMT+8, 2024-5-10 09:45 , Processed in 0.030832 second(s), 16 queries , Gzip On.
Powered by Discuz! X3.4
Copyright © 2001-2021, Tencent Cloud.