本模型为声固耦合与两相流耦合多物理场模型,包含声流层流、相场、压力声学、固体力学模块,已设置并...

张开发
2026/4/12 3:11:22 15 分钟阅读

分享文章

本模型为声固耦合与两相流耦合多物理场模型,包含声流层流、相场、压力声学、固体力学模块,已设置并...
本模型采用声固耦合和两相流耦合多物理场使用的模块包括声流层流、相场、压力声学、固体力学模块 案例模型已经设置好仿真收敛且提供了三个变量参数调节最近在折腾一个挺有意思的耦合仿真模型把声场振动、固体形变和流体界面变化这几个看似不搭界的东西搅和到一块儿了。这玩意儿就像个交响乐团每个物理场模块各司其职又互相影响调参的时候简直像在指挥不同乐器声部。一、物理场全家桶配置模型里最核心的是这个四件套组合拳physics_modules [ AcousticStreamingLaminarFlow, # 声流层流 PhaseField, # 相场法追踪界面 PressureAcoustics, # 压力声学 SolidMechanics # 固体力学 ]声流模块负责处理声波引起的流体运动这里用了层流假设。相场模块的相分离参数设置得挺讲究防止数值震荡phaseField.alpha 0.1; // 界面厚度控制 phaseField.mobility 1e-5; // 迁移率参数二、耦合点踩坑实录声固耦合这块儿最容易翻车。固体力学模块的材料属性设置直接影响声场分布solidMaterial.youngsModulus 2e5; // 杨氏模量 solidMaterial.poissonsRatio 0.33; // 泊松比有个隐藏参数得特别注意——声压加载面的阻尼系数。之前设成默认值0.1时计算结果总像心电图似的上下乱跳后来发现要配合流体域的声阻抗来调整acousticBoundary.damping 0.05 * (rho_fluid * c_fluid); // 自适应阻尼设置三、三个调参旋钮的玩法模型留了三个神仙参数给用户折腾声源频率调节器50Hz-20kHz随便玩acousticSource.frequency Param(freq, 1000) # 默认1kHz这个参数一动流场里的声涡结构立马变脸。低频时能看到明显的声流漩涡高频就变成细密的条纹状。流体粘度开关fluid.mu ParamSwitch(viscosity, [1e-3, 1e-5]); // 水和空气的粘度切换调这个会发现个反直觉现象——粘度越大反而相界面越不稳定因为声流剪切力增强导致界面变形。固体刚度滑块solid.youngsModulus Slider(1e4, 1e6); // 橡胶到金属的刚度范围刚度调小时能看到固体像果冻一样跟着声波摇摆连带影响声场模态分布。有个骚操作是把刚度设成频率的函数实现动态调谐。本模型采用声固耦合和两相流耦合多物理场使用的模块包括声流层流、相场、压力声学、固体力学模块 案例模型已经设置好仿真收敛且提供了三个变量参数调节手痒的话可以试试这三个参数的排列组合比如同时降低刚度和频率可能会捕捉到有趣的共振现象。记得看日志里的耦合收敛情况当残差曲线开始画心电图的时候就该考虑加阻尼或者缩时间步了。

更多文章