number5wei 发表于 2013-1-1 17:08

关于“用有限元和边界元对同一个模型进行计算,结果不同”的问题

      在自由场下,有一矩形悬臂铝薄板,长*宽*厚分别为:300*215*2mm,已求出其振动模态。现在板正面一侧距板30cm的地方放置一个单极子声源。用声振耦合来计算板的振动位移和板表面的声压分布。
       我分别用有限元和边界元的声振耦合来计算,发现振动位移的结果相差是不大的,基本上相符,但是表面声压的分布结果就差很多,如下图所示,左图为边界元结果,右图为有限元结果。感觉边界元算出来的声压分布非常奇葩,斑斑点点的。后来我又算了一个不带声振耦合的边界元的声压分布结果,算出来后和下图中带声振耦合的结果类似,也是斑斑点点。不知道这个该如何解释?

superxjw 发表于 2013-1-1 17:37

图有点小,我没太看清,而且,你是查看的什么?边界元计算,如果需要查看表面位置声压,是需要在表面布置场点的。你查看的是?单层势?双层势?

number5wei 发表于 2013-1-2 09:05

本帖最后由 number5wei 于 2013-1-2 09:21 编辑

superxjw 发表于 2013-1-1 17:37 static/image/common/back.gif
图有点小,我没太看清,而且,你是查看的什么?边界元计算,如果需要查看表面位置声压,是需要在表面布置场 ...
我已经建了一个矩形的场点面网格了,就是在板的声源一测紧贴着板的那个面建的。算完声振后,再通过场点计算不是就应该能得到我建的那个场点面上的声压分布了吗?我查看的是Pressure Amplitude dB(RMS)。单层势和双层势是啥意思啊?


number5wei 发表于 2013-1-2 09:15

superxjw 发表于 2013-1-1 17:37 static/image/common/back.gif
图有点小,我没太看清,而且,你是查看的什么?边界元计算,如果需要查看表面位置声压,是需要在表面布置场 ...

C:\Users\wei\Desktop\bem1.jpg
C:\Users\wei\Desktop\fem1.jpg

superxjw 发表于 2013-1-2 09:50

number5wei 发表于 2013-1-2 09:15 static/image/common/back.gif


单层势、双层势是边界元计算的术语。我还有个小问题啊,你用有限元计算,外面有个声源,是吧?你是用的无限元、PML还是AML方法?

number5wei 发表于 2013-1-2 10:51

superxjw 发表于 2013-1-2 09:50 static/image/common/back.gif
单层势、双层势是边界元计算的术语。我还有个小问题啊,你用有限元计算,外面有个声源,是吧?你是用的无 ...

是啊,有个单极子声源。这个应该是非封闭环境,但是我没有用无限元或是PML和AML,而只是在空气网格边界上设置为空气的声阻抗。这样做是不是会有问题呢?

superxjw 发表于 2013-1-2 11:31

number5wei 发表于 2013-1-2 10:51 http://forum.chinavib.com/static/image/common/back.gif
是啊,有个单极子声源。这个应该是非封闭环境,但是我没有用无限元或是PML和AML,而只是在空气网格边界上 ...

我的意思是问,你做声学有限元计算的时候,是不是在模型外有一个声源?你用的什么方法来实现有限元的外场声学计算?

number5wei 发表于 2013-1-2 12:32

本帖最后由 number5wei 于 2013-1-2 12:41 编辑

superxjw 发表于 2013-1-2 11:31 static/image/common/back.gif
我的意思是问,你做声学有限元计算的时候,是不是在模型外有一个声源?你用的什么方法来实现有限元的外 ...
我的声源是建在模型内的。我的空气网格尺寸是1m*1m*1m;结构板位于空气介质中心,其尺寸是0.3m*0.215m*0.002m;单极子声源位于板子的一侧,距板0.3m,声源是位于空气网格内的。现在要求的是板表面的声压,应该不牵扯到外声场问题吧?

superxjw 发表于 2013-1-2 13:46

number5wei 发表于 2013-1-2 12:32 static/image/common/back.gif
我的声源是建在模型内的。我的空气网格尺寸是1m*1m*1m;结构板位于空气介质中心,其尺寸是0.3m*0.215m*0. ...

哦,你这样就不存在外场问题。在空气网格边界上设定特性阻抗,按照道理是没有问题的。要说声振耦合计算的振动位移都差不多,声场就不应该有太大差距的。

number5wei 发表于 2013-1-2 14:45

superxjw 发表于 2013-1-2 13:46 static/image/common/back.gif
哦,你这样就不存在外场问题。在空气网格边界上设定特性阻抗,按照道理是没有问题的。要说声振耦合计算的 ...

那么会不会是我的边界元的模型建得有问题呢?算边界元时我先导入了板子的架构体网格,然后又导入了边界元网格,这个边界元网格是紧贴着板子的六个面网格。这样设置有问题吗?

superxjw 发表于 2013-1-2 14:54

number5wei 发表于 2013-1-2 14:45 static/image/common/back.gif
那么会不会是我的边界元的模型建得有问题呢?算边界元时我先导入了板子的架构体网格,然后又导入了边界元 ...

没有问题,你做的应该是对的。耦合面设置了么?

number5wei 发表于 2013-1-2 15:16

superxjw 发表于 2013-1-2 14:54 static/image/common/back.gif
没有问题,你做的应该是对的。耦合面设置了么?

设置了,结构表面和与之接触的边界元网格面。
我始终觉得在这一计算中,边界元算出来声压分布是特别奇怪的,而且声压值也偏小了很多,如果和自由场声衰减规律算出的声压值相比,要小了一半以上。这是不是就可以认为在这一算例中,边界元算出的结果是不正确的?

superxjw 发表于 2013-1-2 15:39

number5wei 发表于 2013-1-2 15:16 static/image/common/back.gif
设置了,结构表面和与之接触的边界元网格面。
我始终觉得在这一计算中,边界元算出来声压分布是特别奇怪 ...

按照道理不会的,你有时间把你边界元的分析文件发一份给我吧,具体看看。superxjw@163.com

number5wei 发表于 2013-1-2 16:22

superxjw 发表于 2013-1-2 15:39 static/image/common/back.gif
按照道理不会的,你有时间把你边界元的分析文件发一份给我吧,具体看看。

好的,太感谢了~~{:{39}:}我会用这个邮箱给你发:number5wei@126.com

superxjw 发表于 2013-1-2 20:07

number5wei 发表于 2013-1-2 16:22 static/image/common/back.gif
好的,太感谢了~~我会用这个邮箱给你发:

我把你模型的声学有限元和边界元都做了,计算出来结果是一模一样的啦!有限元结果(338Hz):


边界元结果(338Hz):


有几个地方你要注意:①你的结构模态是ANSYS计算的,导入VL没有问题。但是你注意到没有,你的声学边界元网格/声学有限元网格与结构网格有节点和单元编号冲突,VL在计算前会提示,也许你直接点了“是”,VL能自动修复,但是当你有结果数据导入的时候,特别要注意修复是否出问题。比如,你1-100号节点是结构网格的,对应这100个节点,每个节点都有结构模态的振型信息,而你声学网格是50-150,相互重复了51个节点,如果自动修复,VL可能把结构网格的节点编号改变,这样的话,模态振型信息就无法正确反映到结构网格上了。所以,遇到这种情况,建议你手动修复,用Details按钮,或者Renumber工具,手动修复。
②关于场点网格。边界元算法的场点网格,如果直接放到和模型网格同一位置,确实可能出问题。这可能是因为将模型上的结果渲染到场点时由于两网格间距离太近,导致积分计算的一些问题。我在计算的时候,都把你的场点网格向Z轴正方向稍微移动开了一些,结果一下就正确了。
③这个问题,适合边界元法解决。通过这个例子,你也看到了,采用边界元法,不仅建模简单,而且计算速度比有限元还快很多。所以,通过这个例子可以发现,对于不同的问题,采用合理的方法很重要。






页: [1] 2 3
查看完整版本: 关于“用有限元和边界元对同一个模型进行计算,结果不同”的问题