2. 接触定义关键字体系

在 LS-DYNA 中,接触不是靠“点一下按钮”建立的,而是靠关键字卡片把两个(或多个)参与接触的实体、接触算法、摩擦参数和附加控制组装起来。理解 *CONTACT 系列关键字的分类逻辑,是后续排查穿透、能量异常、接触力振荡等问题的前提。本节围绕三条主线展开:关键字如何分类、自动接触与手动接触如何选择、段集与部件集在接触定义中扮演什么角色。

一、*CONTACT 系列关键字的分类逻辑

LS-DYNA 的接触关键字数量庞大,但命名本身携带了分类信息。可以把一个完整的接触关键字名拆成“主体 + 限定词”来读:

  • 主体:*CONTACT_AUTOMATIC、*CONTACT_SURFACE_TO_SURFACE、*CONTACT_NODES_TO_SURFACE、*CONTACT_SINGLE_SURFACE、*CONTACT_TIED_*、*CONTACT_ERODING_* 等,表示接触算法与拓扑类型。
  • 限定词:_MORTAR、_OFFSET、_SMOOTH、_THERMAL、_FORMING、_BEAM、_SHELL_EDGE_TO_SURFACE 等,表示附加算法或特殊工况。

按算法本质,常用的接触类型可归为几类:单面接触(SINGLE_SURFACE、AUTOMATIC_SINGLE_SURFACE)用于结构自身或未知接触区域的大范围自接触;面-面接触(SURFACE_TO_SURFACE、AUTOMATIC_SURFACE_TO_SURFACE)用于两个已知面之间的接触;点-面接触(NODES_TO_SURFACE)用于少量节点与目标面的接触;绑定接触(TIED_*)用于焊接、螺栓连接等不允许相对滑移的界面;侵蚀接触(ERODING_*)用于单元被删除后接触面需要重建的失效、切削、侵彻问题。此外还有针对梁、壳边、热-结构耦合的专用接触。

分类的意义在于:不同算法对主/从面方向、穿透处理、搜索方式的要求不同。例如 SURFACE_TO_SURFACE 需要明确主面和从面,而 SINGLE_SURFACE 不区分主从,靠自动搜索建立接触对。选错类别,往往不是参数调不好,而是算法本身不适用。

二、自动接触与手动接触的选择逻辑

“自动”与“手动”的核心区别在于接触搜索与穿透处理方式,而不是有没有关键字。自动接触(AUTOMATIC_*)在计算过程中动态搜索可能接触的段,允许从节点在初始时位于主面两侧,对壳厚、初始穿透的容忍度更高;手动接触(不带 AUTOMATIC 前缀,如 SURFACE_TO_SURFACE)依赖初始几何关系,通常要求从节点位于主面法向一侧,初始穿透需要靠 SOFT、IGNORE 或调整几何来处理。

选择逻辑可以按以下顺序判断:

  1. 接触区域是否事先已知?已知且几何干净,优先手动面-面接触,计算更省、方向更明确。
  2. 是否存在大变形、自接触、单元删除?优先自动单面或自动面-面接触。
  3. 是否存在初始穿透或壳厚不可忽略?优先自动接触,并配合 SOFT=1/2 或 DEPTH 控制。
  4. 是否需要绑定、热耦合、侵蚀等特殊行为?在对应专用关键字中选,不要用普通面-面接触硬凑。

需要强调的是,自动接触并非“万能且免费”。它每步都要做更多搜索,计算成本更高;如果接触对本来就很明确,用自动接触反而增加开销。工程上常见的做法是:关键界面用手动面-面接触保证方向与精度,可能发生自接触或大范围接触的区域用自动单面接触兜底。

三、段集与部件集在接触中的角色

接触关键字本身只描述“怎么接触”,真正决定“谁和谁接触”的是段集(*SET_SEGMENT)和部件集(*SET_PART)。在 *CONTACT 卡片中,SSID 和 MSID 分别指向从面和主面的集合,它们可以是段集、部件集,也可以是部件 ID 或节点集(视具体关键字而定)。

段集是几何面片级别的集合,直接列出参与接触的壳单元面或实体单元表面。它精确、可控,适合局部接触、需要排除某些区域或主从面方向必须明确的场合。部件集是部件级别的集合,把整个 PART 纳入接触,LS-DYNA 会自动提取该部件的外表面。它定义简单、便于随模型更新,适合整体部件之间的接触,但无法排除部件内部的个别面。

两者的典型配合是:用 *SET_PART 定义“哪些部件参与”,用 *SET_SEGMENT 在需要时精确指定“哪些面参与”。当接触出现异常时,第一件事往往是检查 SSID/MSID 指向的集合是否真的覆盖了预期区域——很多“接触没生效”的问题,根源是集合里漏了面或包含了不该参与的面。

*CONTACT 关键字体系与集合角色 *CONTACT 分类 单面接触 SINGLE_SURFACE / AUTOMATIC 面-面接触 SURFACE_TO_SURFACE 点-面接触 NODES_TO_SURFACE 绑定接触 TIED_* 侵蚀接触 ERODING_* 专用接触 THERMAL / FORMING / BEAM 自动 vs 手动选择 接触区域已知? 是 → 手动面-面接触 否 → 自动单面/自动面-面 有大变形/自接触? 是 → AUTOMATIC_SINGLE 否 → 手动接触更省算力 有初始穿透? 是 → 自动接触 + SOFT 否 → 检查主从方向 需要绑定/热/侵蚀? 是 → 选专用关键字 否 → 通用接触类型 集合角色 *SET_SEGMENT 几何面片级集合 精确指定参与面 可排除局部区域 适合局部/方向敏感接触 *SET_PART 部件级集合 自动提取外表面 定义简单、随模型更新 适合整体部件接触 SSID / MSID 指向集合 集合漏面 → 接触不生效 集合多面 → 非预期接触 关键字决定“怎么接触”,集合决定“谁和谁接触”;两者必须匹配才能得到正确接触行为

四、一个可复用的接触定义检查清单

把上述逻辑落到实际操作,可以在每次定义接触后按下面这份清单核对。它不是固定模板,而是针对接触关键字体系最容易出错的几个点:

检查项 判断依据 常见错误
接触类型是否匹配工况 自接触用 SINGLE,已知界面用 SURFACE_TO_SURFACE,失效用 ERODING 用普通面-面接触处理单元删除
自动/手动是否合理 初始穿透、大变形、壳厚明显时选 AUTOMATIC 几何干净却用自动接触,浪费算力
SSID/MSID 是否覆盖预期区域 在前后处理中高亮集合,确认面片完整 段集漏面,接触力为零
主从面方向是否正确 手动接触中从节点应位于主面法向一侧 主从颠倒导致穿透
摩擦与 SOFT 是否设置 根据材料与穿透情况设 FS/FD、SOFT 默认摩擦为零或 SOFT 未开
实用提示:当接触行为异常时,先不要急着改 SOFT 或摩擦系数。按“类型 → 自动/手动 → 集合覆盖 → 主从方向 → 附加参数”的顺序排查,绝大多数问题在前三步就能定位。段集和部件集的覆盖范围,是接触调试中最容易被忽略、也最容易验证的一环。