在COMSOL中,有一个经常被忽略的关键函数,就是Heaviside 函数。它将“有/无”的逻辑引入连续场中,在涉及相变、界面追踪等问题中常常会被用到。

一、定义
Heaviside函数,又称单位阶跃函数,在数学上通常定义为

当t为负时,函数值为0,t为正时,函数值为1,函数的变化在0点处发生。
关于t=0的取值,在数学上有不同约定,常见取0、0.5、1。

二、物理意义
Heaviside常用于表示一个状态的激活,也被称为开关函数,t=0时就是函数的开关。
开关也可以定义在任意阈值c,即用 来定义开关位置。

此外,也可以通过组合或缩放变换开关的类型,或使其在打开时具有任意值。
![]()
Heaviside 函数可以用于表示电流的通断,物质是否存在,以及区间物理性质的突变。
它也常常用于Level Set方法中,描述两相区域间材料属性的分界。
三、平滑函数
在有限元求解中,如果模型材料属性中定义了阶跃函数,可能会影响模型的收敛性。因此,在COMSOL中,可以将其替换为平滑的Heaviside 近似函数,以保证连续性。
flsmhs(x, scale):平滑阶跃,在阶跃的两侧具有连续的一阶导数,并带有过冲。
flc1hs(x, scale):平滑阶跃,具有连续一阶导数,无过冲。
flc2hs(x, scale):平滑阶跃,具有连续二阶导数,无过冲。
函数通过scale控制,使函数在区间 −scale < x < scale 内平滑过渡。
497