首页/文章/ 详情

如何在ANSYS中实现完美匹配层(PML)

1年前浏览10072

完美匹配层:在1994年,Berenger J. P. 从求解电磁场的麦克斯韦方程组出发,提出了另一个吸收边界的策略,叫做完美匹配层(perfect matched layer, PML)他的想法是基于有限电导率的介质中的电磁波存在的衰减行为。若在求解域边界上放置这样一层损耗层,并想办法抑制掉损耗层交界处的反射,那么就能够达到吸收掉出射波的目的。在声波和弹性波中完美也具有类似的完美匹配层的概念。关于完美匹配层的详细解释可以参考这篇引用过万的文章:Berenger, J.-P. (1994). A perfectly matched layer for the absorption of electromagnetic waves. J. Comput. Phys. 114, 185–200.

计算模型:本文模型是一个具有声平面波的管道,如下图1所示,采用声学单元FLUID30进行网格划分。两端为PML层设置。这里PML层的设置是通过FLUID30单元的KETOPT(4)进行设置的,即:et,2,30,,1,,1。相应KETOPT如图2所示。

(完整的APDL命令流在文后,读者可自行提取进行练习。)

技能掌握:

  • 基本网格划分模型建立

  • PML层的设置

  • 结果提取路径设置

  • 声学单元使用

  • 节点耦合

  • 谐响应求解分析

图1:计算模型及声压提取路径

图2:FLUID30单元的KEYOPT设置详情

计算结果:若设置PML层,波在管道中传播时是没有幅度损失,我们沿着管道路径提取了相应的声压幅值,如图3,表面声压无损失,表明了PML在这种情况下的应用。

图3:沿管道路径的声压幅值提取

完成的APDL命令流:









































































finish/clear
MAT_SONC = 343MAT_DENS = 1.2
VAL_FREQ = 10000VAL_WAVE = MAT_SONC/VAL_FREQ
DIM_RADIUS = 0.01DIM_LENGTH = 0.05DIM_MESH = VAL_WAVE/20
VAL_KR   = 2*acos(-1)*DIM_RADIUS/VAL_WAVEVAL_IMP  = MAT_DENS*MAT_SONC
/view,1,1,1,1/pnum,type,1/num,1
/prep7et,1,30,,1
! *** PMLet,2,30,,1,,1 !通过keyopt4进行PML层设置r,1r,2mp,sonc,1,MAT_SONC !声速度mp,dens,1,MAT_DENSmpcopy,,1,2
cylind,,DIM_RADIUS,,DIM_LENGTH,,90cylind,,DIM_RADIUS,DIM_LENGTH,DIM_LENGTH+VAL_WAVE,,90cylind,,DIM_RADIUS,,-VAL_WAVE,,90nummrg,kp
vsel,u,loc,z,0,DIM_LENGTHvatt,2,2,2vsel,allesize,DIM_MESHvmesh,all
! *** PMLasel,s,loc,z,-VAL_WAVEasel,a,loc,z,DIM_LENGTH+VAL_WAVEnsla,s,1d,all,pres,0
asel,s,loc,z,0nsla,s,1cp,next,pres,allf,ndnext(0),flow,1finish
/soluantype,harmicharfrq,0,VAL_FREQnsubst,1kbc,1allsel,allsolvefinish
/post1set,last,,,amplpath,AXIAL,2,,100ppath,1,,0,0,0ppath,2,,0,0,DIM_LENGTHpdef,PRES,pres/yrange,0,40 !Y轴坐标范围/title,Should be constant valueplpath,PRES

来源:芷行说
声学AVEVAANSYS
著作权归作者所有,欢迎分享,未经许可,不得转载
首次发布时间:2023-09-12
最近编辑:1年前
芷行说
本科 | 固体力学博士... 芷行说,致力精品,专注于有限元...
获赞 29粉丝 30文章 39课程 0
点赞
收藏
未登录
还没有评论
课程
培训
服务
行家
VIP会员 学习 福利任务 兑换礼品
下载APP
联系我们
帮助与反馈