3. 参数化建模基础

参数化优化能否顺利跑通,往往不取决于求解器设置,而取决于建模阶段是否把“可变的量”正确地暴露成了设计变量。OptiStruct 的尺寸优化、形状优化和自由形状优化都建立在参数化模型之上:求解器只认识设计变量,而设计变量必须通过某种机制与有限元模型中的几何、网格或属性建立可追踪的关联。本节围绕这条主线,讲清设计变量定义、参数与模型的关联方式、HyperMesh 中的实现手段、几何与网格两种参数化策略的取舍,以及参数命名与组织规范。

设计变量:优化的输入维度

设计变量是优化过程中被允许改变的独立量,每个变量有初值、下限和上限。在 OptiStruct 中,设计变量通过 DESVAR 卡片定义,其基本形式为:

DESVAR, dv_thk_rail, 2.0, 1.2, 3.0
DESVAR, dv_rad_hole, 8.0, 5.0, 12.0

第一行表示变量 dv_thk_rail 初值 2.0 mm,允许在 1.2~3.0 mm 之间变化;第二行表示圆孔半径变量初值 8.0 mm,范围 5.0~12.0 mm。设计变量本身只是数值容器,它必须被“绑定”到具体对象上才会产生物理意义。绑定关系由 DVPREL1(属性关联)或 DVPREL2(方程关联)等卡片描述,例如把 dv_thk_rail 关联到某组壳单元的 PSHELL 厚度字段。若变量没有关联到任何属性或形状,求解时会报无有效设计变量,优化无法启动。

参数与有限元模型的关联方式

参数与模型的关联可分为三类。第一类是属性关联:设计变量直接驱动单元属性,如壳厚、梁截面尺寸、材料密度,适用于尺寸优化。第二类是形状关联:设计变量驱动网格节点的坐标扰动,通过形状基向量(shape basis vector)线性组合实现,适用于形状优化。第三类是拓扑/自由形状关联:变量控制单元密度或表面节点法向移动,用于拓扑优化与自由形状优化。三者的共同点是:变量变化后,模型必须能被重新求解,且变量与响应之间保持连续、可微的关系,否则梯度类算法会失效。

关联检查的实用判据:在 HyperMesh 中提交一次 optimization > check,若提示某设计变量“not linked”,说明该变量未绑定到任何 DVPREL 或形状基,需要回到关联步骤补齐。

HyperMesh 中的参数化建模方法

HyperMesh 提供两条主要路径。其一是 HyperMorph:通过域(domain)、手柄(handle)和形状(shape)建立形状变量。操作时先创建 morph volume 包裹目标区域,再在 volume 上布置 handle,拖动 handle 生成 shape,最后把 shape 注册为 design variable。其二是 Optimization 面板:在 Optimization > size 中直接选取属性并创建 DESVAR,或在 Optimization > shape 中把已生成的 shape 转为设计变量。两条路径最终都写入 OptiStruct 的 .fem 文件,区别在于形状变量依赖 HyperMorph 的网格变形能力,而尺寸变量只改属性数值。

一个可复现的操作顺序是:导入几何 → 划分网格 → 建立属性 → 进入 HyperMorph 创建 domain 与 handle → 生成 shape → 在 Optimization 面板注册变量 → 设置上下限 → 提交 check。若使用脚本,可用 Tcl 命令批量创建,例如 *createmorphvolume、*createshape、*createdesvar,便于参数化模板复用。

几何参数化与网格参数化的策略取舍

几何参数化以 CAD 尺寸为变量,通过几何驱动网格重划,优点是变量物理意义明确、便于与设计部门沟通;缺点是每次迭代都要重新划分网格,计算开销大,且网格质量波动可能引入噪声。网格参数化直接在已有网格上变形或改属性,优点是迭代快、无重划网格,缺点是变量与几何尺寸的对应关系较弱,大变形时网格可能畸变。

工程上常见的折中策略是:尺寸优化用网格参数化(改属性,零重划网格),形状优化用 HyperMorph 网格变形(小变形范围内质量可控),需要大幅改变构型时再回到几何参数化。选择依据可归纳为:变量是否改变拓扑、变形量是否超过单元尺寸的 30%、是否要求与 CAD 双向同步。若变形量超过阈值,应优先几何参数化或分步形状优化。

参数化建模关联链与策略选择 设计变量 DESVAR dv_thk_rail 2.0 [1.2,3.0] dv_rad_hole 8.0 [5.0,12.0] 初值 / 下限 / 上限 关联卡片 DVPREL1 属性关联 DVPREL2 方程关联 shape basis 形状基 有限元模型 PSHELL 厚度 PBAR 截面 节点坐标 / 单元密度 几何参数化 vs 网格参数化:选择依据 几何参数化 • 变量 = CAD 尺寸,物理意义明确 • 每次迭代重划网格,开销大 • 适合拓扑改变 / 大变形 / CAD 同步 网格参数化 • 改属性或节点坐标,迭代快 • 无重划网格,质量稳定 • 适合尺寸优化 / 小变形形状优化

参数命名与组织规范

当模型包含几十甚至上百个设计变量时,命名混乱会直接导致关联错误和结果误读。建议采用“类型_对象_序号”的结构,例如 dv_thk_rail_01、dv_rad_hole_02、shp_flange_03,其中 thk 表示厚度、rad 表示半径、shp 表示形状。变量名应避免空格和中文,长度控制在 32 字符以内,且同一模型内不得重名。组织上建议按子系统分组:在 HyperMesh 中用 Organize > Design Variable 把变量归入不同集合,或在 .fem 中用注释块分隔,例如:

$ --- DV GROUP: front_rail ---
DESVAR, dv_thk_rail_01, 2.0, 1.2, 3.0
DESVAR, dv_thk_rail_02, 2.5, 1.5, 3.5
$ --- DV GROUP: hole_radius ---
DESVAR, dv_rad_hole_01, 8.0, 5.0, 12.0

这样在查看优化结果、做 DOE 或参数敏感性分析时,可以按组筛选变量,快速定位贡献最大的参数。命名规范还应在团队内形成文档,与 CAD 参数名、试验编号保持一致,避免同一物理量在不同环节出现多个别名。

常见错误:设计变量上下限设置过窄,导致优化在边界处停滞;或变量初值落在限值之外,OptiStruct 会直接报错。提交前务必检查每个 DESVAR 的初值是否在 [lower, upper] 区间内。

把以上环节串起来看,参数化建模的本质是建立一条从“设计变量”到“模型对象”的可追踪链路:变量定义决定搜索空间,关联卡片决定变量如何作用于模型,HyperMesh 提供创建与检查手段,几何/网格策略决定迭代成本,命名规范决定团队协作效率。这条链路中任何一环断裂,优化都无法得到可信结果。实际项目中,建议在正式优化前先用少量变量做一次试算,确认变量能正常驱动模型、响应能正常返回,再扩展到完整变量集。