4. 模型迁移前的完整性检查

模型迁移不是“把文件另存为另一种格式”这么简单。HyperMesh 中的模型往往同时承载几何、网格、材料、属性、载荷与求解器卡片信息,一旦跨求解器迁移,任何一处隐含缺陷都可能在目标求解器中被放大成致命错误。因此,在导出或转换之前,必须对模型做一次系统性的完整性检查。本节围绕四类检查展开:几何清理状态、网格质量指标、自由边与重复单元、单元法向与坐标系一致性。它们分别对应“几何是否干净”“网格是否可用”“拓扑是否封闭”“方向是否统一”四个层面。

一、几何清理状态:迁移前先确认“底子”是否干净

几何清理状态决定了后续网格与求解器对模型的接受程度。迁移前应重点检查以下几类问题:

  • 自由边与缝隙:相邻曲面之间未缝合,存在微小间隙。这类缺陷在 OptiStruct 中可能被容忍,但在 Abaqus 或 Nastran 中会导致网格不连续,进而产生自由边。
  • 重复面与重叠面:同一位置存在两个或多个面,容易在划分网格时生成重复单元,或在接触定义中产生歧义。
  • 小面与短边:尺寸远小于整体网格尺度的特征,会迫使局部网格过密,降低质量并增加计算量。
  • 缺失面与孔洞:曲面不完整,导致网格无法闭合,实体单元无法生成。
  • 曲面法向不一致:相邻曲面法向相反,影响壳单元法向与偏置方向。

在 HyperMesh 中,可使用 Geometry > Edge 或 Geom > Defeature 面板检查自由边与缝隙;用 Geometry > Check 中的 duplicates 查找重复面;用 autocleanup 批量处理小面、短边与缝隙。建议在迁移前将几何清理到“无自由边、无重复面、无零面积面”的状态,并记录清理前后的面数与边数变化,作为迁移日志的一部分。

二、网格质量指标:目标求解器的“及格线”不同

不同求解器对网格质量的容忍度不同。例如,Abaqus 对畸变单元的鲁棒性较强,而 Nastran 对翘曲和长宽比更敏感;CFD 求解器对边界层网格的正交性要求极高。因此,迁移前必须按目标求解器的标准重新评估网格质量。

常用质量指标包括:

指标含义典型关注值(示例)
Jacobian单元映射的雅可比行列式比值壳单元 ≥ 0.6,实体 ≥ 0.3
Aspect Ratio单元最长边与最短边之比一般 ≤ 5,边界层可放宽
Warpage四边形单元翘曲程度≤ 5°~10°
Skew单元角度偏离理想角度的程度≤ 45°~60°
Min/Max Angle三角形或四边形内角三角形 20°~120°
Length单元边长与目标网格尺寸偏差 ≤ 30%

在 HyperMesh 中,使用 Check Elements 面板(快捷键 F10)可一次性查看上述指标。建议先按目标求解器的推荐阈值设置 quality criteria,再执行检查,并将不合格单元按数量与位置排序。对于少量不合格单元,可局部重划;对于大面积不合格,应回到几何清理阶段重新处理。

迁移前建议保存一份“网格质量报告”,记录各指标的 min/max/平均值以及不合格单元数量。这份报告在目标求解器报错时,能快速定位是网格问题还是卡片问题。

三、自由边与重复单元检查:拓扑封闭性的底线

自由边是指只被一个单元共享的边。对于壳单元,自由边通常意味着模型存在裂缝或边界未连接;对于实体单元,自由边意味着表面网格不封闭。重复单元是指两个或多个单元占据同一位置、共享相同节点或几乎相同节点。重复单元会导致刚度矩阵奇异、质量重复计算或接触穿透。

检查方法:

  1. 使用 Edges 面板(快捷键 F3)或 Check Elements > Edges,设置 free edges 并选择全部单元,观察自由边数量与位置。
  2. 使用 Check Elements > Duplicates 查找重复单元,按 save failed 将重复单元存入单独组件。
  3. 对于自由边,若属于预期边界(如壳的自由边),可忽略;若属于非预期裂缝,需回到几何或网格连接阶段处理。
  4. 对于重复单元,直接删除或合并,并检查节点是否也需要合并。

一个常见的迁移陷阱是:在 HyperMesh 中使用了 equivalence 合并节点,但目标求解器对节点合并的容差不同,导致原本合并的节点在导出后重新分离,产生自由边。因此,迁移前应确认节点合并容差与目标求解器的默认容差一致,或在导出后再次检查自由边。

四、单元法向与坐标系一致性验证

壳单元的法向决定了压力方向、接触面方向以及偏置方向。如果法向不一致,目标求解器可能将压力施加到错误一侧,或使接触定义失效。实体单元虽然没有法向,但其节点编号顺序决定了单元体积的正负,若出现负体积,求解器会直接报错。

检查与修正方法:

  • 壳单元法向:使用 Normals 面板(快捷键 F6)显示法向箭头,或使用 Check Elements > Normals 查找法向不一致的单元。可使用 Orient 功能统一法向。
  • 实体单元体积:使用 Check Elements > Volume 检查负体积单元,若存在,需调整节点顺序或重新划分。
  • 坐标系一致性:检查材料方向、铺层方向、局部坐标系是否与目标求解器定义一致。例如,HyperMesh 中的 system 卡片在导出到 Nastran 时可能转换为 CORD2R,需确认原点、轴向与旋转顺序一致。
  • 单元偏置:壳单元的偏置方向与法向相关,迁移前应确认偏置值是否被目标求解器正确识别。

下面用一张关系图概括四类检查之间的依赖关系与迁移决策路径。图中左侧为检查项,右侧为对应的处理动作与迁移判断。

模型迁移前完整性检查关系图 几何 → 网格 → 拓扑 → 方向,逐层收敛后方可导出 几何清理状态 自由边 / 重复面 / 小面 网格质量指标 Jacobian / 长宽比 / 翘曲 自由边 / 重复单元 拓扑封闭性检查 法向与坐标系 壳法向 / 实体体积 / 局部系 缝合 / 删除重复面 / 去特征 autocleanup + Edge 检查 按目标求解器阈值重检 局部重划 / 调整网格尺寸 删除重复单元 / 合并节点 确认 equivalence 容差 统一法向 / 修正体积 核对坐标系与偏置方向 迁移放行判断 几何无自由边、无重复面 网格质量满足目标求解器阈值 无意外自由边、无重复单元 法向统一、坐标系一致 全部通过 → 导出目标求解器文件 任一不通过 → 返回对应处理动作,禁止带病迁移 不通过则回退修正

五、检查顺序与迁移放行准则

四类检查并非孤立,而是存在依赖关系:几何不干净会导致网格质量差;网格质量差会掩盖自由边与重复单元;自由边未处理会导致法向与坐标系检查失去意义。因此建议按“几何 → 网格 → 拓扑 → 方向”的顺序逐层推进,每层通过后再进入下一层。

迁移放行准则可归纳为:

  • 几何层:无自由边、无重复面、无零面积面,小面与短边已按目标网格尺寸处理。
  • 网格层:所有质量指标满足目标求解器阈值,不合格单元数量为零或已记录并评估影响。
  • 拓扑层:无意外自由边,无重复单元,节点合并容差与目标求解器一致。
  • 方向层:壳单元法向统一,实体单元无负体积,局部坐标系与偏置方向与目标求解器定义一致。
不要跳过检查直接导出。迁移后才发现问题,往往需要回到 HyperMesh 重新处理,而目标求解器中的报错信息可能指向不明确,排查成本远高于迁移前的一次系统检查。

完成上述检查后,建议将检查结果整理为一份迁移检查记录,至少包含:检查日期、模型版本、目标求解器、各检查项通过状态、不合格项处理方式、处理前后关键指标对比。这份记录既是迁移质量的凭证,也是后续复盘与问题追溯的依据。