*SECTION CONTROLS, NAME=VISCO_upper, VISCOSITY=0.011. 它在做什么?
*SECTION CONTROLS, NAME=VISCO_upper
定义了一个叫VISCO_upper的“截面控制”对象。
之后在*COHESIVE SECTION或*CONNECTOR SECTION里用CONTROLS=VISCO_upper调用它,那么这些单元就会使用下面的设置。abaqus.uclouvain.be+1VISCOSITY=0.01
给这些单元的牵引–分离(traction–separation)或连接本构加上一个黏性项,
把原来“瞬间降刚度”的损伤软化,变成一个一阶黏弹过程:损伤 / 牵引不会在某一步骤里一下子跳变,而是随时间平滑变化;
等效上,好像在 cohesive 弹簧旁边串了一个很小的阻尼器。classes.engineering.wustl.edu+1
Abaqus 文档里说明,这个 μ(也就是你填的 0.01)就是正则化用的黏性系数,
专门给cohesive 元、connector 元的损伤/失效过程使用。classes.engineering.wustl.edu+1
2. 模型上有什么意义?
数值上:
大幅提高收敛性,尤其是有强软化(SDEG 很快从 0 跑到 1)、多裂缝起裂的情况;
减少“刚一起裂就完全卸载”,导致残差剧烈振荡、迭代失败的问题。
物理上:
引入了一点“粘–滞”效果,损伤发展带有时间尺度:
裂缝真正完全开裂会略微“拖一下”;μ 的单位是时间,和你分析的时间单位一致(秒、毫秒等)。
μ 越大:界面越“黏”,软化越慢,数值越稳、但力–位移曲线会更平滑、更耗能;
μ 越小:更接近理想准静态的无黏性损伤,但收敛会困难。
教材示例里一般用1e-5 ~ 1e-3量级的黏性系数,你填的 0.01 属于偏大的黏性:
如果单个压裂 step 的总时间是几百~几千秒,那 0.01 还是“比较小”的时间尺度,
主要是数值平滑;如果总时间只有 1 秒左右,那 0.01 就已经占到 1% 的时间尺度,
会明显拖慢 SDEG 的演化,需要注意对结果的影响。
3. 和 *DAMAGE STABILIZATION、Step 级 stabilize 的区别
VISCOSITY(section controls)
→ 作用在cohesive/connector 本构内部,只影响这些界面单元的损伤软化过程。*DAMAGE STABILIZATION
→ 针对surface-based cohesive的粘性正则化,概念类似。*SOILS, STABILIZE=...、*STATIC, STABILIZE=...
→ 是全局数值稳定项(人工粘性),对整个模型的惯性/残差都有影响。
简单说:
*SECTION CONTROLS ... VISCOSITY=0.01= 给指定的 cohesive 元加一个“小粘性弹簧”,
让裂缝开合与损伤演化更平滑、收敛更好,但会引入少量的“伪耗能”。
声明:本部分内容结合了GPT生成的结果,但是经过了自己的实测,效果不错,这样的操作对收敛性的提升很大。