2. COMSOL界面与声学模块入门

COMSOL Multiphysics 的建模流程与多数 CAE 软件不同:它不把“前处理—求解—后处理”拆成独立模块,而是把几何、材料、物理场、网格、求解、结果全部组织在一棵模型开发器(Model Builder)树里。理解这棵树的结构,是后续所有声学结构耦合仿真的前提。本节围绕模型开发器、物理场接口选择、声学模块调用方式、材料库与几何建模基础操作展开,目标是让你能独立搭起一个可求解的声学模型骨架。

一、模型开发器:一棵自上而下的建模树

打开 COMSOL 后,新建模型时选择“模型向导”,随后进入主界面。左侧的模型开发器按固定顺序排列节点,其典型层级为:

  • 全局定义:参数(Parameters)、变量、函数、材料库引用等,用于集中管理可复用的数值。
  • 组件 1:包含几何、材料、物理场接口、网格、求解器与结果,是建模的主体容器。
  • 几何:定义仿真域的空间形状。
  • 材料:为域指定密度、声速、弹性模量等属性。
  • 物理场接口:选择并配置控制方程,如压力声学、固体力学、声-结构相互作用。
  • 网格:离散化几何,决定求解精度与规模。
  • 研究:定义求解类型(频域、瞬态、特征频率等)并执行计算。
  • 结果:查看声压、位移、声压级等派生量。

这棵树的顺序不是装饰,而是依赖顺序:几何必须先于材料,材料必须先于物理场,物理场必须先于网格与求解。节点右侧的“设置”窗口随选中节点变化,右键节点可添加子特征。一个常见误区是跳过“全局定义”直接写死数值,导致后续改参数时需逐处修改;建议把频率、尺寸、材料参数统一放入参数表。

二、物理场接口的选择逻辑

声学仿真中,物理场接口的选择取决于声波传播介质与是否涉及固体振动。COMSOL 的声学模块主要提供以下接口:

接口适用介质典型场景
压力声学,频域流体(空气、水)管道声传播、消声器、房间声学
压力声学,瞬态流体脉冲声、爆炸波、时域响应
声-结构相互作用,频域流体 + 固体扬声器、水听器、壳体声辐射
热黏性声学流体(含边界层损耗)微穿孔板、小型换能器

选择原则可归纳为:若只有流体且关心稳态频率响应,选“压力声学,频域”;若固体振动会显著影响声场,必须选“声-结构相互作用”,它内部同时包含压力声学与固体力学两个物理场,并自动在流固边界上耦合。若声波波长与结构尺寸相当且结构为薄壁,还需考虑壳接口。

三、声学模块的调用方式

在“模型向导”中选择“声学”分支,或在已有模型中通过“添加物理场”按钮调用。以“声-结构相互作用,频域”为例,添加后模型树中会出现两个耦合的物理场节点,并自动生成“声-结构边界”多物理场耦合节点。此时需注意:

  • 流体域需指定“压力声学”域特征,固体域需指定“线弹性材料”或“固体力学”域特征。
  • 流固交界面由软件自动识别,也可手动指定“声-结构边界”节点。
  • 外部边界需设置“平面波辐射”或“阻抗”条件,否则默认刚性壁面会全反射。
提示:若添加接口后模型树出现黄色警告,通常是材料未指定或边界条件缺失,按节点顺序逐项检查即可。

四、材料库与几何建模基础操作

材料可从内置材料库直接调用,如“Air”给出密度 1.2 kg/m³、声速 343 m/s;“Water, liquid”给出密度 1000 kg/m³、声速 1500 m/s;“Structural steel”给出弹性模量 200 GPa、泊松比 0.30、密度 7850 kg/m³。这些数值是材料库默认值,实际使用时可根据工况修改。材料属性可指定到域、边界或全局,声学中通常按域指定。

几何建模常用操作包括:

  1. 基本体:长方体、圆柱、球、锥体,用于构建规则域。
  2. 布尔运算:并集、差集、交集,用于挖孔、合并域。
  3. 变换:平移、旋转、镜像、阵列,用于重复结构。
  4. 工作平面:在二维平面上绘制草图后拉伸成三维,适合复杂截面。
  5. 虚拟操作:忽略边、忽略顶点,用于简化网格。

以“圆柱形水听器”为例:先建一个半径 20 mm、高 40 mm 的圆柱作为流体域,再建一个半径 10 mm 的同心圆柱作为压电或弹性固体域,用差集得到环形流体域。几何完成后建议执行“形成联合体”,确保各域共形,避免网格不连续。

COMSOL 声学建模树与接口调用关系 模型开发器 全局定义(参数/变量) 组件 1 几何 材料 物理场接口 网格 研究 / 求解 结果 物理场接口选择 压力声学,频域 流体介质 · 稳态响应 压力声学,瞬态 流体介质 · 时域脉冲 声-结构相互作用 流体 + 固体 · 双向耦合 热黏性声学 含边界层损耗 固体力学 结构振动 · 弹性波 壳 / 膜 薄壁结构 · 弯曲波 声-结构耦合关系 流体域 压力声学 固体域 固体力学 声-结构边界 法向加速度连续 外部边界 辐射 / 阻抗 材料库示例:Air(ρ=1.2 kg/m³, c=343 m/s) · Water(ρ=1000 kg/m³, c=1500 m/s) · Structural steel(E=200 GPa, ν=0.30, ρ=7850 kg/m³)

五、一个最小可运行示例

下面给出一个二维管道声传播的配置骨架,用于验证接口调用是否正确。几何为 0.5 m × 0.05 m 矩形,材料为 Air,物理场选“压力声学,频域”,左端设“平面波辐射”入射压力 1 Pa,右端设“阻抗”条件模拟开口,频率扫描 100–2000 Hz,步长 50 Hz。网格用自由三角形,最大单元尺寸取 0.01 m(约对应 2000 Hz 时波长的 1/17)。求解后查看“声压级”云图,若左端到右端声压级逐渐衰减且无异常驻波,说明边界条件与网格基本合理。

参数设置示例:
L = 0.5 [m]        // 管道长度
H = 0.05 [m]       // 管道高度
f0 = 100 [Hz]      // 起始频率
f1 = 2000 [Hz]     // 终止频率
df = 50 [Hz]       // 频率步长
c_air = 343 [m/s]  // 空气声速
rho_air = 1.2 [kg/m^3]
注意:声学仿真中网格尺寸通常需满足“每波长至少 6 个单元”。若频率上限为 2000 Hz,空气中波长约 0.17 m,则最大单元尺寸应小于 0.028 m;上例取 0.01 m 是偏保守的设置,可保证精度。