使用abaqus进行结构优化

前言

使用Abaqus进行结构优化是一个帮助您完善设计的迭代过程,良好的结构优化的结果是重量轻、刚性强、耐用的部件。
Abaqus提供了以下结构优化方法:拓扑优化、形状优化、尺寸优化和加强筋优化,他们由一系列目标函数和约束条件控制。

  • 拓扑优化从初始模型开始,通过修改选定单元的材料特性来确定最佳设计,从而有效地从分析中删除单元。
  • 形状和尺寸优化进一步完善了模型,形状优化通过移动表面节点来修改零件的表面,以减少局部应力集中。
  • 尺寸优化修改了钣金零件的板材厚度,通常用于增加刚度或减少振动。
  • 加强筋优化用于在壳模型中创建加强筋。

本页讨论

  • 前言
  • 一、术语
    • 设计区域
    • 设计变量
    • 设计循环
    • 优化任务
    • 设计响应
    • 目标函数
    • 约束
    • 停止条件
  • 二、利用Abaqus/CAE进行结构优化
  • 三、拓扑优化
  • 四、通用的和基于条件的拓扑优化对比
    • 算法
    • 具有中等密度的单元
    • 优化设计循环次数
    • 分析类型
    • 目标函数和约束
  • 五、形状优化
  • 六、尺寸优化
  • 七、加强筋优化
  • 八、一般的和基于条件的加强筋优化对比


一、术语

结构优化引入了自己的术语,Abaqus文档和Abaqus/CAE用户界面中使用了以下术语:

设计区域

设计区域是结构优化修改的模型区域。设计区域可以是整个模型,也可以是仅包含选定区域的模型的子集。在给定的条件下(例如边界条件、载荷和制造约束),

  • 拓扑优化过程在他试图达到最优设计的过程中,从设计区域的单元中移除和添加材料。
  • 形状优化通过移动表面节点来修改设计区域的表面。
  • 尺寸优化通过改变壳体单元的厚度来修改设计区域的厚度。
  • 加强筋优化沿着壳法线的方向移动设计区域中壳单元的节点。

设计变量

对于优化问题,设计变量代表在优化过程中需要更改的参数。

  • 对于拓扑优化,设计区域中单元的密度是设计变量。优化模块在每次优化迭代过程中改变密度,并将每个单元的刚度与密度耦合。实际上,优化通过赋予单元足够小的质量和刚度来确保它们不再参与结构的整体响应,从而从模型中删除单元。然后通过Abaqus对具有修正材料特性的模型进行分析。
  • 对于形状优化,设计区域中曲面节点的位移是设计变量。在优化过程中,优化模块会向外(扩张)或向内(收缩)移动节点,或者保持位置不变(中性)。约束会影响可以移动的曲面节点数量和方向。优优仅直接修改单元角节点的位置,优化模块根据角节点的移动对中间节点的位移进行插值。
  • 对于尺寸优化,设计区域中的壳体元件的厚度是设计变量,优化模块可以调整单个壳元件的厚度,也可以同时修改特定区域的外壳厚度。
  • 对于加强筋优化,在设计区域中形成加强筋的壳体单元的节点位移是设计变量。约束限制了节点移动的数量方向。

设计循环

优化是一个更新设计变量的迭代设计过程,对修改后的模型进行Abaqus分析,并检查结果以确定是否达到了最优解决方案。每个优化迭代称为一个设计循环。

优化任务

优化任务包含优化的定义,例如设计响应、目标函数、约束条件和几何限制。要运行优化,您需要执行一个优化进程。一个优化进程是指一个优化任务。

设计响应

优化的输入称为设计响应。设计响应可以直接从Abaqus输出数据库(.odb)文件中读取;例如,刚度、应力、固有频率和位移。或者,优化模块可以从输出数据库文件中读取数据,并从模型中计算设计响应;例如:重量、质心或相对位移。
设计响应与模型的某个区域相关联;然而,它由单个标量值组成,例如区域内的最大应力或模型的总体积。此外,设计响应可以与特定的分析步或负载情况相关联。

目标函数

目标函数定义了优化的目标。目标函数是从设计响应中提取的单个标量值,例如最大位移或最大应力。一个目标函数可以根据多个设计响应进行计算。如果指定目标函数最小化或最大化设计响应,则优化模块将通过添加根据设计响应确定的每个值来计算目标函数。此外,如果有多个目标函数,可以使用权重来缩放它们对优化的影响。

约束

约束也是从设计响应中提取的单个标量值;然而,约束不能从设计响应的组合中得出。约束限制了设计响应的值;例如,您可以指定体积必须减少45%,或者区域中的绝对位移不得超过1 mm。您还可以应用独立于优化的制造和几何约束;例如,一个结构必须能够铸造或冲压,或者轴承表面的直径不能改变。

停止条件

全局停止条件定义了优化可以执行的最大迭代次数。局部停止条件指定优化应在达到局部最小值(或最大值)时结束。

二、利用Abaqus/CAE进行结构优化

将结构优化纳入Abaqus/CAE模型需要以下步骤:

  • 创建一个可以优化的Abaqus模型。
  • 创建一个优化任务
  • 创建设计响应
  • 使用设计响应创建目标函数和约束
  • 创建优化进程
    基于定义的优化任务和优化进程,优化模块迭代地:
  • 准备设计变量(单元密度或表面节点位置)并更新Abaqus有限元模型。
  • 执行Abaqus/标准分析。
    这些迭代或设计周期持续到:
  • 达到最大设计循环数
  • 达到指定的停止条件
    图1 显示了Abaqus和优化进程的相互作用。
    使用abaqus进行结构优化_第1张图片

三、拓扑优化

拓扑优化从一个包含任何预定条件(如边界条件和载荷)的初步设计开始。优化进程在满足优化约束(例如区域的最小体积或最大位移)的条件下,通过改变初始设计中的单元密度和刚度来确定新的材料分布。此外,您可以应用一些制造约束,来确保设计的零件可以使用标准生产工艺(如铸造和冲压)制造出来。也可以冻结选定的区域,施加单元大小、对称性和耦合约束。
图2显示了汽车控制臂在17个设计循环内的拓扑优化过程。优化目标函数试图最小化从控制臂所有单元计算的最大应变能,实际上最大化控制臂的结构刚度。
约束条件是迫使优化将体积减少至初始值的57%。在优化过程中,控制臂中间的单元密度和刚度减少,从而实际上从分析中去除了这些单元。然而,这些单元仍然存在,如果随着优化的继续,它们的密度和刚度增加,它们可以在分析中发挥作用。几何限制迫使优化创建一个可以铸造并且从模具中脱模的模型——优化模块不能创建空腔和底切。
使用abaqus进行结构优化_第2张图片

在汽车控制臂的拓扑优化中提供了使用拓扑优化的示例。该示例包括一个Python脚本,您可以从Abaqus/CAE运行该脚本来创建模型并配置优化。

四、通用的和基于条件的拓扑优化对比

拓扑优化支持两种算法—通用算法:更灵活,可以应用于大多数问题;基于条件的算法:更高效,但能力有限。默认情况下,优化模块使用通用算法;但是,您可以在创建优化任务时选择使用哪种算法。每种算法都有不同的方法来确定最优解。

算法

通用拓扑优化使用一种算法来调整设计变量的密度和刚度,同时试图满足目标函数和约束条件。相反,基于条件的拓扑优化使用更有效的算法,该算法使用节点处的应变能和应力作为输入数据,并且不需要计算设计变量的局部刚度。基于条件的算法是在德国卡尔斯鲁厄大学开发的,并在Bakhtiary中进行了描述。

具有中等密度的单元

通用算法在最终设计中生成中间单元(它们的相对密度在0到1之间)。相反,基于条件的优化算法在最终设计中生成的单元要么是空的(它们的相对密度非常接近0),要么是实心的(它们相对密度等于1)。

优化设计循环次数

在优化开始之前,通用优化算法使用的设计循环次数是未知的,但是,通常设计循环的次数在30到45之间。基于条件的优化算法更有效,并搜索答案,直到达到优化循环次数的最大值(默认为15)。

分析类型

通用算法支持线性、非线性静态和线性固有频率有限元分析。这两种算法都支持几何非线性和接触,并且还支持许多非线性材料。
此外,在用于静态拓扑优化的Abaqus模型中允许规定的位移。然而,规定的位移不允许用于模态分析。可以对使用复合材料的结构使用拓扑优化;然而,不能使用拓扑优化来修改复合材料的单个层压板。例如,不能更改纤维的方向。

目标函数和约束

通用拓扑优化算法可以使用一个目标函数和几个约束条件,其中约束都是不等式约束。可以使用各种设计响应来定义目标和约束,例如应变能、位移和旋转、反作用力和内力、固有频率以及材料体积和重量。基于条件的拓扑优化算法效率更高;然而,它的灵活性较低,仅支持应变能(刚度的一种度量)作为目标函数,材料体积作为等式约束。
每种优化类型可用的设计响应中的表列出了基于条件和通用拓扑优化的可用设计响应,并描述了哪些设计响应可以用作目标和/或约束。

五、形状优化

形状优化使用一种与基于条件的拓扑优化所使用的算法相似的算法。当零部件的总体布局固定,并且通过重新定位选定区域中的曲面节点只允许进行微小更改时,可以在设计过程结束时使用形状优化。

六、尺寸优化

七、加强筋优化

八、一般的和基于条件的加强筋优化对比

你可能感兴趣的:(网络,算法,机器学习)